Index: format/utility.format
===================================================================
--- /branch/USB/dongle/format/utility.format	(revision 1236)
+++ /branch/USB/dongle/format/utility.format	(working copy)
@@ -150,6 +150,7 @@
 1 mem_dongle_kb_bind_flag
 200 mem_hidreportdesc_kb_temp
 200 mem_hidreportdesc_m_temp
+100 mem_hidreportdesc_kb_new_temp
 )
 
 
Index: output/eeprom.dat
===================================================================
--- /branch/USB/dongle/output/eeprom.dat	(revision 1236)
+++ /branch/USB/dongle/output/eeprom.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-66
+72
 10
 c2
 84
@@ -11,15 +11,15 @@
 c0
 42
 83
-5d
+60
 c0
 44
 83
-38
+3b
 c0
 00
 03
-58
+5b
 c0
 47
 00
@@ -27,7 +27,7 @@
 c0
 62
 00
-51
+54
 c0
 7b
 80
@@ -35,7 +35,7 @@
 c0
 7c
 00
-29
+2c
 20
 20
 2a
@@ -136,10 +136,10 @@
 00
 91
 c7
-c1
+c0
 2d
 00
-00
+29
 58
 00
 11
@@ -168,6 +168,18 @@
 60
 00
 00
+58
+00
+13
+58
+60
+01
+0b
+7c
+20
+60
+00
+00
 70
 8a
 26
@@ -219,7 +231,7 @@
 c0
 00
 00
-37
+3a
 20
 20
 49
@@ -243,7 +255,7 @@
 c0
 00
 80
-3d
+40
 20
 20
 49
@@ -255,7 +267,7 @@
 c0
 04
 80
-40
+43
 20
 20
 49
@@ -275,7 +287,7 @@
 24
 5a
 00
-4d
+50
 68
 01
 0c
@@ -295,7 +307,7 @@
 24
 5a
 00
-4a
+4d
 20
 20
 4a
@@ -355,15 +367,15 @@
 20
 40
 00
-66
+69
 20
 40
 01
-22
+25
 20
 40
 00
-5f
+62
 68
 00
 c8
@@ -371,15 +383,15 @@
 c0
 00
 01
-76
+79
 c0
 00
 80
-70
+73
 c0
 07
 80
-6c
+6f
 20
 60
 00
@@ -391,7 +403,7 @@
 20
 40
 00
-62
+65
 20
 20
 65
@@ -439,39 +451,39 @@
 20
 40
 00
-75
+78
 20
 40
 00
-79
+7c
 20
 40
 01
-40
+43
 20
 20
 00
-6d
+70
 20
 40
 00
-75
+78
 20
 40
 00
-79
+7c
 20
 40
 00
-c4
+c7
 20
 40
 01
-40
+43
 20
 20
 00
-71
+74
 70
 48
 b8
@@ -499,19 +511,19 @@
 20
 40
 00
-7f
+82
 20
 40
 00
-8d
+90
 20
 40
 02
-94
+97
 20
 20
 00
-ac
+af
 68
 00
 c8
@@ -559,15 +571,15 @@
 20
 40
 03
-72
+75
 20
 40
 03
-92
+95
 20
 20
 00
-e0
+e3
 68
 00
 c8
@@ -575,7 +587,7 @@
 c0
 00
 80
-a6
+a9
 68
 00
 c8
@@ -583,7 +595,7 @@
 c0
 00
 80
-a0
+a3
 68
 0a
 48
@@ -643,7 +655,7 @@
 20
 20
 03
-92
+95
 70
 48
 b9
@@ -651,7 +663,7 @@
 20
 20
 03
-92
+95
 1c
 42
 7e
@@ -675,7 +687,7 @@
 20
 40
 03
-6d
+70
 60
 08
 c8
@@ -691,19 +703,19 @@
 20
 20
 03
-92
+95
 20
 40
 00
-af
+b2
 20
 40
 00
-b6
+b9
 20
 20
 00
-bd
+c0
 68
 00
 c8
@@ -799,11 +811,11 @@
 20
 40
 00
-c8
+cb
 20
 20
 00
-d4
+d7
 68
 00
 c8
@@ -851,15 +863,15 @@
 20
 20
 03
-72
+75
 20
 40
 01
-ce
+d1
 24
 37
 80
-e0
+e3
 70
 49
 7a
@@ -887,19 +899,19 @@
 c0
 55
 00
-e3
+e6
 c0
 2a
 80
-f0
+f3
 c0
 11
 01
-00
+03
 c0
 7f
 81
-18
+1b
 d8
 a0
 47
@@ -919,11 +931,11 @@
 c0
 00
 80
-e7
+ea
 c0
 01
 00
-ed
+f0
 20
 60
 00
@@ -963,7 +975,7 @@
 20
 20
 00
-e9
+ec
 68
 00
 c8
@@ -971,11 +983,11 @@
 c0
 00
 80
-f4
+f7
 c0
 01
 00
-fa
+fd
 20
 60
 00
@@ -983,7 +995,7 @@
 20
 40
 00
-e8
+eb
 68
 00
 c8
@@ -991,7 +1003,7 @@
 c0
 00
 80
-f8
+fb
 20
 60
 00
@@ -1007,15 +1019,15 @@
 20
 40
 00
-ee
+f1
 68
 00
 c8
 a6
 c0
 00
-80
-fe
+81
+01
 20
 60
 00
@@ -1035,11 +1047,11 @@
 c0
 00
 81
-04
+07
 c0
 01
 01
-0d
+10
 20
 60
 00
@@ -1051,7 +1063,7 @@
 c0
 01
 01
-07
+0a
 20
 60
 00
@@ -1079,7 +1091,7 @@
 20
 20
 00
-e0
+e3
 68
 00
 c8
@@ -1087,7 +1099,7 @@
 c0
 80
 01
-10
+13
 20
 60
 00
@@ -1107,7 +1119,7 @@
 20
 40
 01
-0a
+0d
 70
 11
 c7
@@ -1115,7 +1127,7 @@
 20
 40
 00
-62
+65
 20
 40
 65
@@ -1131,11 +1143,11 @@
 c0
 00
 81
-1c
+1f
 c0
 01
 01
-1f
+22
 20
 60
 00
@@ -1247,7 +1259,7 @@
 24
 21
 01
-38
+3b
 58
 00
 49
@@ -1335,11 +1347,11 @@
 c0
 50
 01
-5d
+60
 c0
 50
 81
-53
+56
 c0
 53
 30
@@ -1347,15 +1359,15 @@
 c0
 53
 81
-62
+65
 c0
 54
 81
-68
+6b
 c0
 58
 01
-6a
+6d
 20
 20
 30
@@ -1367,11 +1379,11 @@
 c0
 00
 81
-58
+5b
 c0
 42
 01
-5b
+5e
 c0
 53
 b0
@@ -1395,11 +1407,11 @@
 20
 40
 00
-76
+79
 20
 20
 01
-58
+5b
 68
 00
 8c
@@ -1407,7 +1419,7 @@
 c0
 40
 81
-60
+63
 20
 20
 30
@@ -1415,7 +1427,7 @@
 20
 40
 01
-bc
+bf
 20
 20
 30
@@ -1427,7 +1439,7 @@
 c0
 00
 01
-66
+69
 c0
 00
 b0
@@ -1471,11 +1483,11 @@
 c0
 01
 81
-74
+77
 20
 40
 01
-27
+2a
 68
 00
 c9
@@ -1483,7 +1495,7 @@
 c0
 01
 81
-74
+77
 70
 0c
 f7
@@ -1503,31 +1515,31 @@
 20
 40
 01
-9a
+9d
 20
 40
 01
-a0
+a3
 20
 40
 01
-7d
+80
 20
 40
 01
-81
+84
 20
 40
 01
-d2
+d5
 20
 40
 01
-40
+43
 20
 20
 01
-77
+7a
 68
 00
 c8
@@ -1539,11 +1551,11 @@
 20
 40
 00
-7b
+7e
 20
 20
 01
-c1
+c4
 68
 00
 c8
@@ -1555,11 +1567,11 @@
 20
 40
 00
-c8
+cb
 20
 40
 00
-d4
+d7
 68
 00
 c8
@@ -1575,15 +1587,15 @@
 20
 40
 00
-75
+78
 20
 40
 01
-bf
+c2
 20
 20
 01
-9d
+a0
 20
 40
 7f
@@ -1679,7 +1691,7 @@
 20
 40
 01
-8b
+8e
 24
 74
 00
@@ -1687,11 +1699,11 @@
 20
 40
 01
-b5
+b8
 20
 40
 01
-ad
+b0
 68
 00
 c8
@@ -1711,11 +1723,11 @@
 c0
 00
 01
-b2
+b5
 c0
 00
 81
-ba
+bd
 20
 60
 00
@@ -1747,11 +1759,11 @@
 24
 3a
 01
-bc
+bf
 20
 20
 00
-75
+78
 68
 00
 c9
@@ -1779,7 +1791,7 @@
 24
 3a
 00
-75
+78
 70
 48
 a4
@@ -1851,15 +1863,15 @@
 20
 20
 00
-e0
+e3
 20
 40
 00
-e0
+e3
 20
 40
 03
-ac
+af
 24
 77
 80
@@ -1867,7 +1879,7 @@
 20
 20
 02
-6d
+70
 68
 00
 c8
@@ -1879,27 +1891,27 @@
 20
 40
 01
-f7
+fa
 20
 40
 02
-0b
+0e
 20
 40
 01
-ce
+d1
 24
 37
 80
-e0
+e3
 20
 40
 02
-07
+0a
 20
 42
 82
-97
+9a
 70
 48
 a4
@@ -1927,23 +1939,23 @@
 24
 42
 81
-ee
+f1
 20
 40
 00
-e0
+e3
 20
 40
 01
-bf
+c2
 20
 40
 02
-07
+0a
 20
 22
 81
-f0
+f3
 68
 02
 48
@@ -1959,7 +1971,7 @@
 20
 22
 81
-f3
+f6
 68
 02
 48
@@ -1975,7 +1987,7 @@
 20
 22
 81
-f5
+f8
 20
 60
 00
@@ -2007,7 +2019,7 @@
 20
 20
 01
-f1
+f4
 68
 00
 c8
@@ -2015,7 +2027,7 @@
 20
 20
 01
-f1
+f4
 68
 00
 c8
@@ -2055,7 +2067,7 @@
 20
 40
 02
-07
+0a
 24
 62
 80
@@ -2115,19 +2127,19 @@
 c0
 00
 02
-2e
+31
 c0
 00
 82
-48
+4b
 c0
 01
 02
-14
+17
 c0
 01
 82
-48
+4b
 20
 60
 00
@@ -2135,7 +2147,7 @@
 20
 40
 00
-e8
+eb
 68
 02
 48
@@ -2143,11 +2155,11 @@
 20
 3a
 02
-0b
+0e
 20
 40
 03
-72
+75
 68
 00
 c8
@@ -2155,7 +2167,7 @@
 20
 5a
 02
-29
+2c
 68
 00
 c8
@@ -2175,7 +2187,7 @@
 20
 40
 03
-66
+69
 60
 08
 c8
@@ -2183,7 +2195,7 @@
 20
 40
 03
-6d
+70
 60
 08
 c8
@@ -2203,7 +2215,7 @@
 20
 40
 03
-96
+99
 60
 08
 c8
@@ -2227,7 +2239,7 @@
 20
 40
 03
-9a
+9d
 60
 00
 c8
@@ -2239,7 +2251,7 @@
 20
 40
 00
-ee
+f1
 68
 02
 48
@@ -2247,11 +2259,11 @@
 20
 3a
 02
-0b
+0e
 20
 40
 03
-72
+75
 68
 00
 c8
@@ -2259,7 +2271,7 @@
 20
 5a
 02
-43
+46
 68
 00
 c8
@@ -2279,7 +2291,7 @@
 20
 40
 03
-66
+69
 60
 08
 c8
@@ -2287,7 +2299,7 @@
 20
 40
 03
-6d
+70
 60
 08
 c8
@@ -2307,7 +2319,7 @@
 20
 40
 03
-96
+99
 60
 08
 c8
@@ -2331,7 +2343,7 @@
 20
 40
 03
-9a
+9d
 60
 00
 c8
@@ -2343,7 +2355,7 @@
 20
 40
 00
-e8
+eb
 68
 02
 48
@@ -2351,7 +2363,7 @@
 20
 40
 03
-72
+75
 68
 00
 c8
@@ -2359,7 +2371,7 @@
 20
 5a
 02
-5c
+5f
 68
 00
 c8
@@ -2379,7 +2391,7 @@
 20
 40
 03
-66
+69
 60
 08
 c8
@@ -2387,7 +2399,7 @@
 20
 40
 03
-6d
+70
 60
 08
 c8
@@ -2407,7 +2419,7 @@
 20
 40
 03
-96
+99
 60
 08
 c8
@@ -2499,7 +2511,7 @@
 20
 40
 02
-60
+63
 68
 00
 c7
@@ -2511,23 +2523,23 @@
 20
 20
 82
-76
+79
 20
 40
 02
-77
+7a
 20
 40
 03
-80
+83
 20
 40
 03
-f6
+f9
 20
 20
 03
-ee
+f1
 70
 48
 36
@@ -2543,15 +2555,15 @@
 c0
 00
 82
-7e
+81
 c0
 01
 02
-83
+86
 c0
 01
 82
-8d
+90
 20
 60
 00
@@ -2579,7 +2591,7 @@
 20
 40
 01
-3a
+3d
 24
 74
 00
@@ -2647,23 +2659,23 @@
 20
 40
 01
-ce
+d1
 24
 37
 80
-e0
+e3
 20
 20
 02
-97
+9a
 20
 40
 02
-a8
+ab
 24
 34
 00
-e0
+e3
 68
 00
 c8
@@ -2671,7 +2683,7 @@
 20
 3a
 00
-e0
+e3
 1f
 e0
 fe
@@ -2703,7 +2715,7 @@
 20
 5a
 01
-bf
+c2
 68
 00
 c8
@@ -2711,19 +2723,19 @@
 c0
 00
 82
-b6
+b9
 c0
 01
 02
-d5
+d8
 c0
 7f
 83
-0e
+11
 20
 20
 00
-e0
+e3
 20
 40
 7f
@@ -2783,7 +2795,7 @@
 20
 40
 00
-a2
+a5
 68
 00
 c8
@@ -2807,7 +2819,7 @@
 c0
 00
 83
-16
+19
 68
 00
 c8
@@ -2835,7 +2847,7 @@
 c0
 67
 83
-1a
+1d
 58
 00
 00
@@ -2859,7 +2871,7 @@
 24
 5a
 02
-cd
+d0
 68
 00
 c8
@@ -2867,7 +2879,7 @@
 20
 5a
 02
-d1
+d4
 20
 20
 31
@@ -2915,7 +2927,7 @@
 20
 20
 83
-18
+1b
 68
 00
 c8
@@ -2923,15 +2935,15 @@
 c0
 00
 02
-dc
+df
 c0
 01
 82
-f5
+f8
 20
 20
 00
-e0
+e3
 d8
 a0
 0d
@@ -2939,7 +2951,7 @@
 20
 40
 02
-ea
+ed
 68
 04
 0d
@@ -2947,7 +2959,7 @@
 24
 5a
 02
-ed
+f0
 68
 04
 0d
@@ -2955,7 +2967,7 @@
 20
 5a
 02
-f1
+f4
 68
 04
 0d
@@ -2987,7 +2999,7 @@
 20
 20
 00
-e0
+e3
 d8
 c0
 48
@@ -3039,7 +3051,7 @@
 20
 40
 03
-03
+06
 68
 01
 0d
@@ -3047,7 +3059,7 @@
 24
 5a
 03
-06
+09
 68
 01
 0d
@@ -3055,7 +3067,7 @@
 20
 5a
 03
-0a
+0d
 68
 01
 8d
@@ -3087,7 +3099,7 @@
 20
 20
 00
-e0
+e3
 d8
 c0
 48
@@ -3139,11 +3151,11 @@
 c0
 00
 83
-12
+15
 c0
 01
 03
-14
+17
 20
 60
 00
@@ -3155,7 +3167,7 @@
 20
 20
 01
-1d
+20
 68
 02
 48
@@ -3163,7 +3175,7 @@
 20
 20
 01
-20
+23
 68
 02
 48
@@ -3171,7 +3183,7 @@
 20
 20
 01
-1d
+20
 68
 02
 48
@@ -3179,7 +3191,7 @@
 20
 20
 01
-20
+23
 68
 01
 48
@@ -3195,7 +3207,7 @@
 20
 22
 83
-1f
+22
 20
 60
 00
@@ -3207,7 +3219,7 @@
 c0
 61
 03
-2c
+2f
 68
 00
 c9
@@ -3223,7 +3235,7 @@
 20
 40
 01
-31
+34
 68
 00
 c9
@@ -3243,11 +3255,11 @@
 c0
 60
 81
-72
+75
 c0
 61
 03
-2c
+2f
 20
 60
 00
@@ -3267,7 +3279,7 @@
 20
 40
 01
-22
+25
 68
 00
 c8
@@ -3275,11 +3287,11 @@
 c0
 2a
 83
-34
+37
 c0
 55
 03
-36
+39
 20
 60
 00
@@ -3367,11 +3379,11 @@
 c0
 02
 03
-51
+54
 20
 20
 03
-4a
+4d
 70
 89
 4b
@@ -3475,7 +3487,7 @@
 20
 40
 03
-66
+69
 60
 08
 c8
@@ -3559,7 +3571,7 @@
 c2
 00
 03
-76
+79
 1a
 22
 7e
@@ -3667,7 +3679,7 @@
 20
 40
 03
-96
+99
 60
 08
 c8
@@ -3679,7 +3691,7 @@
 20
 40
 03
-9a
+9d
 18
 40
 84
@@ -3803,7 +3815,7 @@
 20
 40
 03
-a3
+a6
 78
 57
 fc
@@ -3839,7 +3851,7 @@
 24
 2c
 03
-f1
+f4
 78
 46
 fc
@@ -3879,7 +3891,7 @@
 24
 22
 83
-ee
+f1
 09
 80
 00
@@ -3903,7 +3915,7 @@
 20
 22
 83
-d3
+d6
 68
 00
 c7
@@ -3919,7 +3931,7 @@
 24
 20
 83
-ee
+f1
 09
 80
 00
@@ -3943,7 +3955,7 @@
 20
 22
 83
-dd
+e0
 09
 80
 00
@@ -3959,7 +3971,7 @@
 c2
 00
 03
-d9
+dc
 09
 80
 00
@@ -3995,7 +4007,7 @@
 20
 23
 03
-ee
+f1
 78
 37
 fc
@@ -4043,11 +4055,11 @@
 20
 40
 03
-5f
+62
 20
 20
 03
-ee
+f1
 20
 40
 29
@@ -4075,11 +4087,11 @@
 20
 40
 03
-a3
+a6
 20
 40
 03
-f3
+f6
 79
 20
 2a
@@ -4159,7 +4171,7 @@
 c2
 00
 04
-0c
+0f
 68
 00
 c8
@@ -4200,8 +4212,8 @@
 60
 00
 00
-97
-03
+e4
+b1
 aa
 55
 01
@@ -4372,6 +4384,76 @@
 c0
 aa
 55
+40
+00
+58
+13
+3f
+05
+01
+09
+06
+a1
+01
+75
+01
+95
+08
+05
+07
+19
+e0
+29
+e7
+15
+00
+25
+01
+81
+02
+95
+01
+75
+08
+81
+03
+95
+05
+75
+01
+05
+08
+19
+01
+29
+05
+91
+02
+95
+01
+75
+03
+91
+03
+95
+06
+75
+08
+15
+00
+25
+ff
+05
+07
+19
+00
+29
+ff
+81
+00
+c0
+aa
+55
 aa
 00
 90
@@ -4706,90 +4788,8 @@
 42
 00
 84
-1c
-21
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
+61
+09
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-09
-9c
+26
+6e
Index: output/memmap.format
===================================================================
--- /branch/USB/dongle/output/memmap.format	(revision 1236)
+++ /branch/USB/dongle/output/memmap.format	(working copy)
@@ -603,6 +603,7 @@
 0x11c7 mem_dongle_kb_bind_flag
 0x11c8 mem_hidreportdesc_kb_temp
 0x1290 mem_hidreportdesc_m_temp
+0x1358 mem_hidreportdesc_kb_new_temp
 0x4000 mem_patch00
 0x4001 mem_patch01
 0x4002 mem_patch02
Index: output/program.lis
===================================================================
--- /branch/USB/dongle/output/program.lis	(revision 1236)
+++ /branch/USB/dongle/output/program.lis	(working copy)
@@ -1,13 +1,13 @@
 include "bt_format "
 org 0x0000
 0000 c2840009 bbit1 8 ,pf_patch_ext 
-0001 c042835d beq patch10_5 ,p_shutdown_radio 
-0002 c0448338 beq patch11_1 ,p_set_freq_tx 
-0003 c0000358 beq patch00_0 ,p_soft_reset 
+0001 c0428360 beq patch10_5 ,p_shutdown_radio 
+0002 c044833b beq patch11_1 ,p_set_freq_tx 
+0003 c000035b beq patch00_0 ,p_soft_reset 
 0004 c047000a beq patch11_6 ,p_save_rssi 
-0005 c0620051 beq patch18_4 ,p_app_init 
+0005 c0620054 beq patch18_4 ,p_app_init 
 0006 c07b8011 beq patch1e_7 ,p_usb_init 
-0007 c07c0029 beq patch1f_0 ,p_usb_status1 
+0007 c07c002c beq patch1f_0 ,p_usb_status1 
 0008 20202a8e branch loop 
 
 pf_patch_ext:
@@ -47,7 +47,7 @@
 
 p_usb_hid_icon:
 0020 680091c7 fetch 1 ,mem_dongle_kb_bind_flag 
-0021 c12d0000 rtneq dongle_kb_bind_success 
+0021 c02d0029 beq dongle_kb_bind_success ,p_new_kb_hidreportdesc 
 0022 580011c8 setarg mem_hidreportdesc_kb_temp 
 0023 60010b7c store 2 ,mem_hidreportdesc_kb 
 0024 58001290 setarg mem_hidreportdesc_m_temp 
@@ -56,1339 +56,1344 @@
 0027 700bb3a9 jam 0xa9 ,mem_confdesc + 51 
 0028 20600000 rtn 
 
+p_new_kb_hidreportdesc:
+0029 58001358 setarg mem_hidreportdesc_kb_new_temp 
+002a 60010b7c store 2 ,mem_hidreportdesc_kb 
+002b 20600000 rtn 
+
 p_usb_status1:
-0029 708a2611 jam 0x11 ,core_usb_status 
-002a 68108a20 hfetch 1 ,core_usb_ep_len 
-002b 60008b24 store 1 ,mem_usb_read_len 
-002c 1fe27200 copy pdata ,loopcnt 
-002d 203a4943 branch usb_rx_no_data ,blank 
-002e d8a00c6e arg mem_usb_setup ,contw 
-002f 20404946 call usb_rx_read 
-0030 68008b24 fetch 1 ,mem_usb_read_len 
-0031 1fe67c07 sub pdata ,7 ,null 
-0032 20610000 rtn positive 
-0033 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
-0034 1fe17e80 and_into 0x80 ,pdata 
-0035 c0000037 beq out_device ,p_usb_out_device 
-0036 20204957 branch usb_class_type + 2 
+002c 708a2611 jam 0x11 ,core_usb_status 
+002d 68108a20 hfetch 1 ,core_usb_ep_len 
+002e 60008b24 store 1 ,mem_usb_read_len 
+002f 1fe27200 copy pdata ,loopcnt 
+0030 203a4943 branch usb_rx_no_data ,blank 
+0031 d8a00c6e arg mem_usb_setup ,contw 
+0032 20404946 call usb_rx_read 
+0033 68008b24 fetch 1 ,mem_usb_read_len 
+0034 1fe67c07 sub pdata ,7 ,null 
+0035 20610000 rtn positive 
+0036 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
+0037 1fe17e80 and_into 0x80 ,pdata 
+0038 c000003a beq out_device ,p_usb_out_device 
+0039 20204957 branch usb_class_type + 2 
 
 p_usb_out_device:
-0037 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
-0038 1ff1fe00 rshift4 pdata ,pdata 
-0039 1fe37e00 rshift pdata ,pdata 
-003a 1fe17e03 and_into 0x03 ,pdata 
-003b c000803d beq class_req ,p_usb_out_class_req 
-003c 20204966 branch usb_out_device + 4 
+003a 68008c6e fetch 1 ,mem_usb_setup_bmrequesttype 
+003b 1ff1fe00 rshift4 pdata ,pdata 
+003c 1fe37e00 rshift pdata ,pdata 
+003d 1fe17e03 and_into 0x03 ,pdata 
+003e c0008040 beq class_req ,p_usb_out_class_req 
+003f 20204966 branch usb_out_device + 4 
 
 p_usb_out_class_req:
-003d 68008c6f fetch 1 ,mem_usb_setup_brequest 
-003e c0048040 beq set_report ,p_usb_set_report 
-003f 2020497f branch usb_out_class_req + 1 
+0040 68008c6f fetch 1 ,mem_usb_setup_brequest 
+0041 c0048043 beq set_report ,p_usb_set_report 
+0042 2020497f branch usb_out_class_req + 1 
 
 p_usb_set_report:
-0040 700d5001 jam 1 ,mem_usb0_get_set_report 
-0041 20404b03 call usb_set_report_resume_judge 
-0042 68008d43 fetch 1 ,mem_usb_tx_win_enable 
-0043 245a004d ncall p_usb_get_output_data ,blank 
-0044 68010c70 fetch 2 ,mem_usb_setup_bvalue 
-0045 60010d4e store 2 ,mem_usb_setup_bvalue_temp 
-0046 20003a98 nop 15000 
-0047 68108a20 hfetch 1 ,core_usb_ep_len 
-0048 245a004a ncall p_usb_set_report_rxdata ,blank 
-0049 20204afd branch usb_set_report + 4 
+0043 700d5001 jam 1 ,mem_usb0_get_set_report 
+0044 20404b03 call usb_set_report_resume_judge 
+0045 68008d43 fetch 1 ,mem_usb_tx_win_enable 
+0046 245a0050 ncall p_usb_get_output_data ,blank 
+0047 68010c70 fetch 2 ,mem_usb_setup_bvalue 
+0048 60010d4e store 2 ,mem_usb_setup_bvalue_temp 
+0049 20003a98 nop 15000 
+004a 68108a20 hfetch 1 ,core_usb_ep_len 
+004b 245a004d ncall p_usb_set_report_rxdata ,blank 
+004c 20204afd branch usb_set_report + 4 
 
 p_usb_set_report_rxdata:
-004a 1fe27200 copy pdata ,loopcnt 
-004b d8a00c76 arg mem_usb0_setup ,contw 
-004c 20204946 branch usb_rx_read 
+004d 1fe27200 copy pdata ,loopcnt 
+004e d8a00c76 arg mem_usb0_setup ,contw 
+004f 20204946 branch usb_rx_read 
 
 p_usb_get_output_data:
-004d 68008c76 fetch 1 ,mem_usb0_setup 
-004e 6000c978 store 1 ,mem_24g_led_status 
-004f 7048b803 jam kb_led_ackpayload ,mem_24g_ackpayload_enable 
-0050 20600000 rtn 
+0050 68008c76 fetch 1 ,mem_usb0_setup 
+0051 6000c978 store 1 ,mem_24g_led_status 
+0052 7048b803 jam kb_led_ackpayload ,mem_24g_ackpayload_enable 
+0053 20600000 rtn 
 
 p_app_init:
-0051 70497907 jam g24_bind_mode_delay ,mem_24g_bind_delay_count 
-0052 204074b9 call enable_authrom 
-0053 680240a0 fetch 4 ,mem_lap 
-0054 6002489f store 4 ,mem_24g_rx_addr 
-0055 6808c23a fetcht 1 ,mem_eeprom_wp_gpio 
-0056 2040680e call gpio_config_output 
-0057 20400066 call p_dongle_init 
-0058 20400122 call p_g24_queue_init 
-0059 2040005f call p_dongle_iic_init 
-005a 6800c8ba fetch 1 ,mem_24g_pair_mode 
-005b c0000176 beq 0x00 ,p_dongle_auto_bind 
-005c c0008070 beq 0x01 ,p_dongle_pc_bind 
-005d c007806c beq 0x0f ,p_dongle_all_powerful 
-005e 20600000 rtn 
+0054 70497907 jam g24_bind_mode_delay ,mem_24g_bind_delay_count 
+0055 204074b9 call enable_authrom 
+0056 680240a0 fetch 4 ,mem_lap 
+0057 6002489f store 4 ,mem_24g_rx_addr 
+0058 6808c23a fetcht 1 ,mem_eeprom_wp_gpio 
+0059 2040680e call gpio_config_output 
+005a 20400069 call p_dongle_init 
+005b 20400125 call p_g24_queue_init 
+005c 20400062 call p_dongle_iic_init 
+005d 6800c8ba fetch 1 ,mem_24g_pair_mode 
+005e c0000179 beq 0x00 ,p_dongle_auto_bind 
+005f c0008073 beq 0x01 ,p_dongle_pc_bind 
+0060 c007806f beq 0x0f ,p_dongle_all_powerful 
+0061 20600000 rtn 
 
 p_dongle_iic_init:
-005f 2040659c call iic_init_390k 
-0060 20400062 call p_dongle_set_kb_bind_eeprom 
-0061 202065df branch iicd_read_eep_data 
+0062 2040659c call iic_init_390k 
+0063 20400065 call p_dongle_set_kb_bind_eeprom 
+0064 202065df branch iicd_read_eep_data 
 
 p_dongle_set_kb_bind_eeprom:
-0062 da2011c7 arg mem_dongle_kb_bind_flag ,rega 
-0063 da400000 arg dongle_kb_bind_eeprom_offect ,regb 
-0064 d8400001 arg 1 ,temp 
-0065 20600000 rtn 
+0065 da2011c7 arg mem_dongle_kb_bind_flag ,rega 
+0066 da400000 arg dongle_kb_bind_eeprom_offect ,regb 
+0067 d8400001 arg 1 ,temp 
+0068 20600000 rtn 
 
 p_dongle_init:
-0066 6800c1de fetch 1 ,mem_tx_power 
-0067 6000c8ed store 1 ,mem_tx_power_temp 
-0068 df200080 arg 0x80 ,loopcnt 
-0069 d8a00d9e arg mem_rssi_noise_buffer ,contw 
-006a 20407ec6 call memset0 
-006b 202048ea branch usb_init 
+0069 6800c1de fetch 1 ,mem_tx_power 
+006a 6000c8ed store 1 ,mem_tx_power_temp 
+006b df200080 arg 0x80 ,loopcnt 
+006c d8a00d9e arg mem_rssi_noise_buffer ,contw 
+006d 20407ec6 call memset0 
+006e 202048ea branch usb_init 
 
 p_dongle_all_powerful:
-006c 20400075 call p_dongle_check_mode 
+006f 20400078 call p_dongle_check_mode 
 
 p_dongle_all_powerful_loop:
-006d 20400079 call p_g24_dongle_work_mode 
-006e 20400140 call p_dongle_usb_dispatch 
-006f 2020006d branch p_dongle_all_powerful_loop 
+0070 2040007c call p_g24_dongle_work_mode 
+0071 20400143 call p_dongle_usb_dispatch 
+0072 20200070 branch p_dongle_all_powerful_loop 
 
 p_dongle_pc_bind:
-0070 20400075 call p_dongle_check_mode 
+0073 20400078 call p_dongle_check_mode 
 
 p_dongle_pc_bind_loop:
-0071 20400079 call p_g24_dongle_work_mode 
-0072 204000c4 call p_g24_dongle_bind_mode 
-0073 20400140 call p_dongle_usb_dispatch 
-0074 20200071 branch p_dongle_pc_bind_loop 
+0074 2040007c call p_g24_dongle_work_mode 
+0075 204000c7 call p_g24_dongle_bind_mode 
+0076 20400143 call p_dongle_usb_dispatch 
+0077 20200074 branch p_dongle_pc_bind_loop 
 
 p_dongle_check_mode:
-0075 7048b800 jam 0 ,mem_24g_ackpayload_enable 
+0078 7048b800 jam 0 ,mem_24g_ackpayload_enable 
 
 p_dongle_work_mode_enable:
-0076 7048a400 jam dongle_work ,mem_dongle_work_mode 
-0077 7048a300 jam clear_init ,mem_dongle_mode_init 
-0078 20600000 rtn 
+0079 7048a400 jam dongle_work ,mem_dongle_work_mode 
+007a 7048a300 jam clear_init ,mem_dongle_mode_init 
+007b 20600000 rtn 
 
 p_g24_dongle_work_mode:
-0079 6800c8a4 fetch 1 ,mem_dongle_work_mode 
-007a c1800000 rtnne dongle_work 
+007c 6800c8a4 fetch 1 ,mem_dongle_work_mode 
+007d c1800000 rtnne dongle_work 
 
 p_g24_dongle_work_mode_start:
-007b 2040007f call p_g24_dongle_work_init 
-007c 2040008d call p_g24_ch_process 
-007d 20400294 call p_g24_receive_packet_start 
-007e 202000ac branch p_g24_blank_data_process 
+007e 20400082 call p_g24_dongle_work_init 
+007f 20400090 call p_g24_ch_process 
+0080 20400297 call p_g24_receive_packet_start 
+0081 202000af branch p_g24_blank_data_process 
 
 p_g24_dongle_work_init:
-007f 6800c8a3 fetch 1 ,mem_dongle_mode_init 
-0080 c3800000 rtnbit1 dongle_work 
-0081 79207e00 set1 dongle_work ,pdata 
-0082 6000c8a3 store 1 ,mem_dongle_mode_init 
-0083 6800c8ed fetch 1 ,mem_tx_power_temp 
-0084 6000c1de store 1 ,mem_tx_power 
-0085 7048b800 jam 0 ,mem_24g_ackpayload_enable 
-0086 700d3800 jam 0 ,mem_usb_tx_enable 
-0087 7048b001 jam 1 ,mem_24g_abort_packet 
-0088 70483500 jam 0 ,mem_24g_pid 
-0089 6802489f fetch 4 ,mem_24g_rx_addr 
-008a 20400372 call p_g24_update_addr_and_synccrc8 
-008b 20400392 call p_g24_ch 
-008c 202000e0 branch p_g24_rx_interrupt_clear 
+0082 6800c8a3 fetch 1 ,mem_dongle_mode_init 
+0083 c3800000 rtnbit1 dongle_work 
+0084 79207e00 set1 dongle_work ,pdata 
+0085 6000c8a3 store 1 ,mem_dongle_mode_init 
+0086 6800c8ed fetch 1 ,mem_tx_power_temp 
+0087 6000c1de store 1 ,mem_tx_power 
+0088 7048b800 jam 0 ,mem_24g_ackpayload_enable 
+0089 700d3800 jam 0 ,mem_usb_tx_enable 
+008a 7048b001 jam 1 ,mem_24g_abort_packet 
+008b 70483500 jam 0 ,mem_24g_pid 
+008c 6802489f fetch 4 ,mem_24g_rx_addr 
+008d 20400375 call p_g24_update_addr_and_synccrc8 
+008e 20400395 call p_g24_ch 
+008f 202000e3 branch p_g24_rx_interrupt_clear 
 
 p_g24_ch_process:
-008d 6800c8b0 fetch 1 ,mem_24g_abort_packet 
-008e c00080a6 beq 1 ,p_g24_noise_rssi 
-008f 6800c8b9 fetch 1 ,mem_24g_hop_packet 
-0090 c00080a0 beq 1 ,p_g24_ch_receive_hop_pac 
-0091 680a48b2 fetcht 4 ,mem_24g_hop_btclk 
-0092 1c427e00 copy clkn_bt ,pdata 
-0093 98467c00 isub temp ,null 
-0094 24412d18 ncall g24_timer_timeout ,positive 
-0095 1fe22400 copy pdata ,regb 
-0096 680248b2 fetch 4 ,mem_24g_hop_btclk 
-0097 6808c8b6 fetcht 1 ,mem_24g_hop_interval 
-0098 98408400 iadd temp ,temp 
-0099 1a427e00 copy regb ,pdata 
-009a 98467c00 isub temp ,null 
-009b 24610000 nrtn positive 
-009c 793ffe1c set0 28 ,pdata 
-009d 600248b2 store 4 ,mem_24g_hop_btclk 
-009e 7048b001 jam 1 ,mem_24g_abort_packet 
-009f 20200392 branch p_g24_ch 
+0090 6800c8b0 fetch 1 ,mem_24g_abort_packet 
+0091 c00080a9 beq 1 ,p_g24_noise_rssi 
+0092 6800c8b9 fetch 1 ,mem_24g_hop_packet 
+0093 c00080a3 beq 1 ,p_g24_ch_receive_hop_pac 
+0094 680a48b2 fetcht 4 ,mem_24g_hop_btclk 
+0095 1c427e00 copy clkn_bt ,pdata 
+0096 98467c00 isub temp ,null 
+0097 24412d18 ncall g24_timer_timeout ,positive 
+0098 1fe22400 copy pdata ,regb 
+0099 680248b2 fetch 4 ,mem_24g_hop_btclk 
+009a 6808c8b6 fetcht 1 ,mem_24g_hop_interval 
+009b 98408400 iadd temp ,temp 
+009c 1a427e00 copy regb ,pdata 
+009d 98467c00 isub temp ,null 
+009e 24610000 nrtn positive 
+009f 793ffe1c set0 28 ,pdata 
+00a0 600248b2 store 4 ,mem_24g_hop_btclk 
+00a1 7048b001 jam 1 ,mem_24g_abort_packet 
+00a2 20200395 branch p_g24_ch 
 
 p_g24_ch_receive_hop_pac:
-00a0 7048b900 jam 0 ,mem_24g_hop_packet 
-00a1 20200392 branch p_g24_ch 
+00a3 7048b900 jam 0 ,mem_24g_hop_packet 
+00a4 20200395 branch p_g24_ch 
 
 p_g24_ch_timer_reinit:
-00a2 1c427e00 copy clkn_bt ,pdata 
-00a3 600248b2 store 4 ,mem_24g_hop_btclk 
-00a4 7048b100 jam 0 ,mem_24g_rf_laststa 
-00a5 20600000 rtn 
+00a5 1c427e00 copy clkn_bt ,pdata 
+00a6 600248b2 store 4 ,mem_24g_hop_btclk 
+00a7 7048b100 jam 0 ,mem_24g_rf_laststa 
+00a8 20600000 rtn 
 
 p_g24_noise_rssi:
-00a6 da200d9e arg mem_rssi_noise_buffer ,rega 
-00a7 2040036d call p_rssi_average 
-00a8 6008c8ef storet 1 ,mem_rssi_noise_avg 
-00a9 18467c50 sub temp ,rssi_thresh_noise ,null 
-00aa 24610000 nrtn positive 
-00ab 20200392 branch p_g24_ch 
+00a9 da200d9e arg mem_rssi_noise_buffer ,rega 
+00aa 20400370 call p_rssi_average 
+00ab 6008c8ef storet 1 ,mem_rssi_noise_avg 
+00ac 18467c50 sub temp ,rssi_thresh_noise ,null 
+00ad 24610000 nrtn positive 
+00ae 20200395 branch p_g24_ch 
 
 p_g24_blank_data_process:
-00ac 204000af call p_g24_ms_blank_data 
-00ad 204000b6 call p_g24_kb_blank_data 
-00ae 202000bd branch p_g24_kb_mul_blank_data 
+00af 204000b2 call p_g24_ms_blank_data 
+00b0 204000b9 call p_g24_kb_blank_data 
+00b1 202000c0 branch p_g24_kb_mul_blank_data 
 
 p_g24_ms_blank_data:
-00af 6800c8d5 fetch 1 ,mem_24g_ms_blank_data_enable 
-00b0 207a0000 rtn blank 
-00b1 d8e0000b arg timer_new_ms_blank ,queue 
-00b2 20407f16 call timer_check 
-00b3 247a0000 nrtn blank 
-00b4 7048d500 jam 0 ,mem_24g_ms_blank_data_enable 
-00b5 20202fa0 branch g24_ms_blank_data_2usb 
+00b2 6800c8d5 fetch 1 ,mem_24g_ms_blank_data_enable 
+00b3 207a0000 rtn blank 
+00b4 d8e0000b arg timer_new_ms_blank ,queue 
+00b5 20407f16 call timer_check 
+00b6 247a0000 nrtn blank 
+00b7 7048d500 jam 0 ,mem_24g_ms_blank_data_enable 
+00b8 20202fa0 branch g24_ms_blank_data_2usb 
 
 p_g24_kb_blank_data:
-00b6 6800c8d3 fetch 1 ,mem_24g_kb_blank_data_enable 
-00b7 207a0000 rtn blank 
-00b8 d8e0000e arg timer_new_kb_blank ,queue 
-00b9 20407f16 call timer_check 
-00ba 247a0000 nrtn blank 
-00bb 7048d300 jam 0 ,mem_24g_kb_blank_data_enable 
-00bc 20202fac branch g24_kb_blank_data_2usb 
+00b9 6800c8d3 fetch 1 ,mem_24g_kb_blank_data_enable 
+00ba 207a0000 rtn blank 
+00bb d8e0000e arg timer_new_kb_blank ,queue 
+00bc 20407f16 call timer_check 
+00bd 247a0000 nrtn blank 
+00be 7048d300 jam 0 ,mem_24g_kb_blank_data_enable 
+00bf 20202fac branch g24_kb_blank_data_2usb 
 
 p_g24_kb_mul_blank_data:
-00bd 6800c8d4 fetch 1 ,mem_24g_kb_mul_blank_data_enable 
-00be 207a0000 rtn blank 
-00bf d8e0000c arg timer_new_kb_mul_blank ,queue 
-00c0 20407f16 call timer_check 
-00c1 247a0000 nrtn blank 
-00c2 7048d400 jam 0 ,mem_24g_kb_mul_blank_data_enable 
-00c3 20202fb8 branch g24_kb_mul_blank_data_2usb 
+00c0 6800c8d4 fetch 1 ,mem_24g_kb_mul_blank_data_enable 
+00c1 207a0000 rtn blank 
+00c2 d8e0000c arg timer_new_kb_mul_blank ,queue 
+00c3 20407f16 call timer_check 
+00c4 247a0000 nrtn blank 
+00c5 7048d400 jam 0 ,mem_24g_kb_mul_blank_data_enable 
+00c6 20202fb8 branch g24_kb_mul_blank_data_2usb 
 
 p_g24_dongle_bind_mode:
-00c4 6800c8a4 fetch 1 ,mem_dongle_work_mode 
-00c5 c1808000 rtnne dongle_bind 
-00c6 204000c8 call p_g24_dongle_bind_init 
-00c7 202000d4 branch p_g24_dongle_bind_data_process 
+00c7 6800c8a4 fetch 1 ,mem_dongle_work_mode 
+00c8 c1808000 rtnne dongle_bind 
+00c9 204000cb call p_g24_dongle_bind_init 
+00ca 202000d7 branch p_g24_dongle_bind_data_process 
 
 p_g24_dongle_bind_init:
-00c8 6800c8a3 fetch 1 ,mem_dongle_mode_init 
-00c9 c3808000 rtnbit1 dongle_bind 
-00ca 79207e01 set1 dongle_bind ,pdata 
-00cb 6000c8a3 store 1 ,mem_dongle_mode_init 
-00cc 58000000 setarg 0 
-00cd 6001c8a5 store 3 ,mem_dongle_ms_bind_step 
-00ce 7041de04 jam tx_power_f5db ,mem_tx_power 
-00cf 7048b801 jam 1 ,mem_24g_ackpayload_enable 
-00d0 70483500 jam 0 ,mem_24g_pid 
-00d1 7048404e jam g24_pair_ch ,mem_24g_ch 
-00d2 68024842 fetch 4 ,mem_24g_paring_addr 
-00d3 20200372 branch p_g24_update_addr_and_synccrc8 
+00cb 6800c8a3 fetch 1 ,mem_dongle_mode_init 
+00cc c3808000 rtnbit1 dongle_bind 
+00cd 79207e01 set1 dongle_bind ,pdata 
+00ce 6000c8a3 store 1 ,mem_dongle_mode_init 
+00cf 58000000 setarg 0 
+00d0 6001c8a5 store 3 ,mem_dongle_ms_bind_step 
+00d1 7041de04 jam tx_power_f5db ,mem_tx_power 
+00d2 7048b801 jam 1 ,mem_24g_ackpayload_enable 
+00d3 70483500 jam 0 ,mem_24g_pid 
+00d4 7048404e jam g24_pair_ch ,mem_24g_ch 
+00d5 68024842 fetch 4 ,mem_24g_paring_addr 
+00d6 20200375 branch p_g24_update_addr_and_synccrc8 
 
 p_g24_dongle_bind_data_process:
-00d4 204001ce call p_g24_receive_transmit_ack 
-00d5 243780e0 nbranch p_g24_rx_interrupt_clear ,user3 
-00d6 70497a05 jam g24_work_mode_delay ,mem_24g_work_delay_count 
-00d7 d8c047b0 arg mem_24g_rxbuf ,contr 
-00d8 d8a0487d arg mem_24g_rxdata_temp ,contw 
-00d9 df200008 arg 8 ,loopcnt 
-00da 20407f01 call memcpy 
-00db 6800c87f fetch 1 ,mem_24g_rxdata_temp + 2 
-00dc c05500e3 beq datatype_bind ,p_g24_dongle_bind_first_step 
-00dd c02a80f0 beq datatype_config ,p_g24_dongle_bind_second_step 
-00de c0110100 beq datatype_ok ,p_g24_dongle_bind_third_step 
-00df c07f8118 beq 0xff ,p_g24_data_attemp_bind 
+00d7 204001d1 call p_g24_receive_transmit_ack 
+00d8 243780e3 nbranch p_g24_rx_interrupt_clear ,user3 
+00d9 70497a05 jam g24_work_mode_delay ,mem_24g_work_delay_count 
+00da d8c047b0 arg mem_24g_rxbuf ,contr 
+00db d8a0487d arg mem_24g_rxdata_temp ,contw 
+00dc df200008 arg 8 ,loopcnt 
+00dd 20407f01 call memcpy 
+00de 6800c87f fetch 1 ,mem_24g_rxdata_temp + 2 
+00df c05500e6 beq datatype_bind ,p_g24_dongle_bind_first_step 
+00e0 c02a80f3 beq datatype_config ,p_g24_dongle_bind_second_step 
+00e1 c0110103 beq datatype_ok ,p_g24_dongle_bind_third_step 
+00e2 c07f811b beq 0xff ,p_g24_data_attemp_bind 
 
 p_g24_rx_interrupt_clear:
-00e0 d8a047b0 arg mem_24g_rxbuf ,contw 
-00e1 df200042 arg 66 ,loopcnt 
-00e2 20207ed4 branch clear_mem 
+00e3 d8a047b0 arg mem_24g_rxbuf ,contw 
+00e4 df200042 arg 66 ,loopcnt 
+00e5 20207ed4 branch clear_mem 
 
 p_g24_dongle_bind_first_step:
-00e3 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-00e4 c00080e7 beq bind_mouse ,p_g24_dongle_bind_first_step_mouse 
-00e5 c00100ed beq bind_keyboard ,p_g24_dongle_bind_first_step_keyboard 
-00e6 20600000 rtn 
+00e6 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+00e7 c00080ea beq bind_mouse ,p_g24_dongle_bind_first_step_mouse 
+00e8 c00100f0 beq bind_keyboard ,p_g24_dongle_bind_first_step_keyboard 
+00e9 20600000 rtn 
 
 p_g24_dongle_bind_first_step_mouse:
-00e7 7048a501 jam 1 ,mem_dongle_ms_bind_step 
+00ea 7048a501 jam 1 ,mem_dongle_ms_bind_step 
 
 p_g24_dongle_bind_ms_payload_cfg:
-00e8 7048a801 jam datatype_mouse ,mem_24g_bind_payload 
+00eb 7048a801 jam datatype_mouse ,mem_24g_bind_payload 
 
 p_g24_dongle_bind_payload_cfg:
-00e9 7048a980 jam 0x80 ,mem_24g_bind_payload + 1 
-00ea 6803489f fetch 6 ,mem_24g_rx_addr 
-00eb 600348aa store 6 ,mem_24g_bind_payload + 2 
-00ec 20600000 rtn 
+00ec 7048a980 jam 0x80 ,mem_24g_bind_payload + 1 
+00ed 6803489f fetch 6 ,mem_24g_rx_addr 
+00ee 600348aa store 6 ,mem_24g_bind_payload + 2 
+00ef 20600000 rtn 
 
 p_g24_dongle_bind_first_step_keyboard:
-00ed 7048a601 jam 1 ,mem_dongle_kb_bind_step 
+00f0 7048a601 jam 1 ,mem_dongle_kb_bind_step 
 
 p_g24_dongle_bind_kb_payload_cfg:
-00ee 7048a802 jam datatype_keyboard ,mem_24g_bind_payload 
-00ef 202000e9 branch p_g24_dongle_bind_payload_cfg 
+00f1 7048a802 jam datatype_keyboard ,mem_24g_bind_payload 
+00f2 202000ec branch p_g24_dongle_bind_payload_cfg 
 
 p_g24_dongle_bind_second_step:
-00f0 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-00f1 c00080f4 beq bind_mouse ,p_g24_dongle_bind_second_step_mouse 
-00f2 c00100fa beq bind_keyboard ,p_g24_dongle_bind_second_step_keyboard 
-00f3 20600000 rtn 
+00f3 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+00f4 c00080f7 beq bind_mouse ,p_g24_dongle_bind_second_step_mouse 
+00f5 c00100fd beq bind_keyboard ,p_g24_dongle_bind_second_step_keyboard 
+00f6 20600000 rtn 
 
 p_g24_dongle_bind_second_step_mouse:
-00f4 204000e8 call p_g24_dongle_bind_ms_payload_cfg 
-00f5 6800c8a5 fetch 1 ,mem_dongle_ms_bind_step 
-00f6 c00080f8 beq 1 ,p_g24_dongle_ms_bind_step_set2 
-00f7 20600000 rtn 
+00f7 204000eb call p_g24_dongle_bind_ms_payload_cfg 
+00f8 6800c8a5 fetch 1 ,mem_dongle_ms_bind_step 
+00f9 c00080fb beq 1 ,p_g24_dongle_ms_bind_step_set2 
+00fa 20600000 rtn 
 
 p_g24_dongle_ms_bind_step_set2:
-00f8 7048a502 jam 2 ,mem_dongle_ms_bind_step 
-00f9 20600000 rtn 
+00fb 7048a502 jam 2 ,mem_dongle_ms_bind_step 
+00fc 20600000 rtn 
 
 p_g24_dongle_bind_second_step_keyboard:
-00fa 204000ee call p_g24_dongle_bind_kb_payload_cfg 
-00fb 6800c8a6 fetch 1 ,mem_dongle_kb_bind_step 
-00fc c00080fe beq 1 ,p_g24_dongle_kb_bind_step_set2 
-00fd 20600000 rtn 
+00fd 204000f1 call p_g24_dongle_bind_kb_payload_cfg 
+00fe 6800c8a6 fetch 1 ,mem_dongle_kb_bind_step 
+00ff c0008101 beq 1 ,p_g24_dongle_kb_bind_step_set2 
+0100 20600000 rtn 
 
 p_g24_dongle_kb_bind_step_set2:
-00fe 7048a602 jam 2 ,mem_dongle_kb_bind_step 
-00ff 20600000 rtn 
+0101 7048a602 jam 2 ,mem_dongle_kb_bind_step 
+0102 20600000 rtn 
 
 p_g24_dongle_bind_third_step:
-0100 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-0101 c0008104 beq bind_mouse ,p_g24_dongle_bind_third_step_mouse 
-0102 c001010d beq bind_keyboard ,p_g24_dongle_bind_third_step_keyboard 
-0103 20600000 rtn 
+0103 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+0104 c0008107 beq bind_mouse ,p_g24_dongle_bind_third_step_mouse 
+0105 c0010110 beq bind_keyboard ,p_g24_dongle_bind_third_step_keyboard 
+0106 20600000 rtn 
 
 p_g24_dongle_bind_third_step_mouse:
-0104 6800c8a5 fetch 1 ,mem_dongle_ms_bind_step 
-0105 c0010107 beq 2 ,p_g24_dongle_ms_bind_step_success 
-0106 20600000 rtn 
+0107 6800c8a5 fetch 1 ,mem_dongle_ms_bind_step 
+0108 c001010a beq 2 ,p_g24_dongle_ms_bind_step_success 
+0109 20600000 rtn 
 
 p_g24_dongle_ms_bind_step_success:
-0107 6800c8a7 fetch 1 ,mem_dongle_bind_device_status 
-0108 1fe1fe01 or_into 0x01 ,pdata 
-0109 6000c8a7 store 1 ,mem_dongle_bind_device_status 
+010a 6800c8a7 fetch 1 ,mem_dongle_bind_device_status 
+010b 1fe1fe01 or_into 0x01 ,pdata 
+010c 6000c8a7 store 1 ,mem_dongle_bind_device_status 
 
 p_g24_dongle_bind_exit:
-010a 58000000 setarg 0 
-010b 600148a5 store 2 ,mem_dongle_ms_bind_step 
-010c 202000e0 branch p_g24_rx_interrupt_clear 
+010d 58000000 setarg 0 
+010e 600148a5 store 2 ,mem_dongle_ms_bind_step 
+010f 202000e3 branch p_g24_rx_interrupt_clear 
 
 p_g24_dongle_bind_third_step_keyboard:
-010d 6800c8a6 fetch 1 ,mem_dongle_kb_bind_step 
-010e c0800110 bne 0 ,p_g24_dongle_kb_bind_step_success 
-010f 20600000 rtn 
+0110 6800c8a6 fetch 1 ,mem_dongle_kb_bind_step 
+0111 c0800113 bne 0 ,p_g24_dongle_kb_bind_step_success 
+0112 20600000 rtn 
 
 p_g24_dongle_kb_bind_step_success:
-0110 6800c8a7 fetch 1 ,mem_dongle_bind_device_status 
-0111 1fe1fe02 or_into 0x02 ,pdata 
-0112 6000c8a7 store 1 ,mem_dongle_bind_device_status 
-0113 2040010a call p_g24_dongle_bind_exit 
+0113 6800c8a7 fetch 1 ,mem_dongle_bind_device_status 
+0114 1fe1fe02 or_into 0x02 ,pdata 
+0115 6000c8a7 store 1 ,mem_dongle_bind_device_status 
+0116 2040010d call p_g24_dongle_bind_exit 
 
 p_g24_dongle_store_kb_bind_flag:
-0114 7011c75a jam dongle_kb_bind_success ,mem_dongle_kb_bind_flag 
-0115 20400062 call p_dongle_set_kb_bind_eeprom 
-0116 204065d1 call iicd_write_protect_eep_data 
-0117 2020659a branch soft_reset_chip 
+0117 7011c75a jam dongle_kb_bind_success ,mem_dongle_kb_bind_flag 
+0118 20400065 call p_dongle_set_kb_bind_eeprom 
+0119 204065d1 call iicd_write_protect_eep_data 
+011a 2020659a branch soft_reset_chip 
 
 p_g24_data_attemp_bind:
-0118 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-0119 c000811c beq datatype_mouse ,p_g24_data_attemp_mouse_bind 
-011a c001011f beq datatype_keyboard ,p_g24_data_attemp_kbd_bind 
-011b 20600000 rtn 
+011b 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+011c c000811f beq datatype_mouse ,p_g24_data_attemp_mouse_bind 
+011d c0010122 beq datatype_keyboard ,p_g24_data_attemp_kbd_bind 
+011e 20600000 rtn 
 
 p_g24_data_attemp_mouse_bind:
-011c 68024881 fetch 4 ,mem_24g_rxdata_temp + 4 
+011f 68024881 fetch 4 ,mem_24g_rxdata_temp + 4 
 
 p_g24_store_mouse_addr:
-011d 600248da store 4 ,mem_24g_ms_addr 
-011e 20600000 rtn 
+0120 600248da store 4 ,mem_24g_ms_addr 
+0121 20600000 rtn 
 
 p_g24_data_attemp_kbd_bind:
-011f 68024881 fetch 4 ,mem_24g_rxdata_temp + 4 
+0122 68024881 fetch 4 ,mem_24g_rxdata_temp + 4 
 
 p_g24_store_kbd_addr:
-0120 600248d6 store 4 ,mem_24g_kb_addr 
-0121 20600000 rtn 
+0123 600248d6 store 4 ,mem_24g_kb_addr 
+0124 20600000 rtn 
 
 p_g24_queue_init:
-0122 70490000 jam 0 ,mem_queue_ele_num 
-0123 58004905 setarg mem_queue_start 
-0124 60014901 store 2 ,mem_queue_read 
-0125 60014903 store 2 ,mem_queue_write 
-0126 20600000 rtn 
+0125 70490000 jam 0 ,mem_queue_ele_num 
+0126 58004905 setarg mem_queue_start 
+0127 60014901 store 2 ,mem_queue_read 
+0128 60014903 store 2 ,mem_queue_write 
+0129 20600000 rtn 
 
 p_g24_queue_put:
-0127 df20001f arg 0x1f ,loopcnt 
-0128 d8400cb6 arg mem_usb0_set_report_data ,temp 
-0129 68014903 fetch 2 ,mem_queue_write 
-012a 1fe20a00 copy pdata ,contw 
-012b 18420c00 copy temp ,contr 
-012c 20407f01 call memcpy 
-012d 6800c900 fetch 1 ,mem_queue_ele_num 
-012e 1fe0fe01 increase 1 ,pdata 
-012f 6000c900 store 1 ,mem_queue_ele_num 
-0130 58004903 setarg mem_queue_write 
+012a df20001f arg 0x1f ,loopcnt 
+012b d8400cb6 arg mem_usb0_set_report_data ,temp 
+012c 68014903 fetch 2 ,mem_queue_write 
+012d 1fe20a00 copy pdata ,contw 
+012e 18420c00 copy temp ,contr 
+012f 20407f01 call memcpy 
+0130 6800c900 fetch 1 ,mem_queue_ele_num 
+0131 1fe0fe01 increase 1 ,pdata 
+0132 6000c900 store 1 ,mem_queue_ele_num 
+0133 58004903 setarg mem_queue_write 
 
 p_g24_queue_increase:
-0131 1fe22200 copy pdata ,rega 
-0132 d8404965 arg mem_queue_end ,temp 
-0133 ea210000 ifetch 2 ,rega 
-0134 1fe0fe20 increase queue_ele_length ,pdata 
-0135 98467c00 isub temp ,null 
-0136 24210138 nbranch p_g24_queue_put_end ,positive 
-0137 58004905 setarg mem_queue_start 
+0134 1fe22200 copy pdata ,rega 
+0135 d8404965 arg mem_queue_end ,temp 
+0136 ea210000 ifetch 2 ,rega 
+0137 1fe0fe20 increase queue_ele_length ,pdata 
+0138 98467c00 isub temp ,null 
+0139 2421013b nbranch p_g24_queue_put_end ,positive 
+013a 58004905 setarg mem_queue_start 
 
 p_g24_queue_put_end:
-0138 e2210000 istore 2 ,rega 
-0139 20600000 rtn 
+013b e2210000 istore 2 ,rega 
+013c 20600000 rtn 
 
 p_g24_queue_read_point:
-013a 78547c00 disable user 
-013b 6800c900 fetch 1 ,mem_queue_ele_num 
-013c 207a0000 rtn blank 
-013d 78347c00 enable user 
-013e 68014901 fetch 2 ,mem_queue_read 
-013f 20600000 rtn 
+013d 78547c00 disable user 
+013e 6800c900 fetch 1 ,mem_queue_ele_num 
+013f 207a0000 rtn blank 
+0140 78347c00 enable user 
+0141 68014901 fetch 2 ,mem_queue_read 
+0142 20600000 rtn 
 
 p_dongle_usb_dispatch:
-0140 708004ff jam 0xff ,core_write_watchdog 
-0141 204048d3 call usb_isr 
-0142 68008d50 fetch 1 ,mem_usb0_get_set_report 
-0143 207a0000 rtn blank 
-0144 700d5000 jam 0 ,mem_usb0_get_set_report 
-0145 68010d4e fetch 2 ,mem_usb_setup_bvalue_temp 
-0146 d84002ba arg pc_set_report ,temp 
-0147 98467c00 isub temp ,null 
-0148 24628000 nrtn zero 
-0149 68008cb6 fetch 1 ,mem_usb0_set_report_data 
-014a c1dd0000 rtnne pc_report_id 
-014b 68008cb7 fetch 1 ,mem_usb0_set_report_data + 1 
-014c c050015d beq command_mode ,p_dongle_dispose_cmd_mode 
-014d c0508153 beq command_bind ,p_dongle_dispose_cmd_bind 
-014e c0533041 beq command_current_project ,dongle_dispose_cmd_current_project 
-014f c0538162 beq command_current_mode ,p_dongle_dispose_cmd_current_mode 
-0150 c0548168 beq command_current_fw_version ,p_dongle_dispose_cmd_current_fw_version 
-0151 c058016a beq command_user_defined ,p_dongle_dispose_cmd_user_defined 
-0152 2020302a branch usb0_data_ready_report_set0 
+0143 708004ff jam 0xff ,core_write_watchdog 
+0144 204048d3 call usb_isr 
+0145 68008d50 fetch 1 ,mem_usb0_get_set_report 
+0146 207a0000 rtn blank 
+0147 700d5000 jam 0 ,mem_usb0_get_set_report 
+0148 68010d4e fetch 2 ,mem_usb_setup_bvalue_temp 
+0149 d84002ba arg pc_set_report ,temp 
+014a 98467c00 isub temp ,null 
+014b 24628000 nrtn zero 
+014c 68008cb6 fetch 1 ,mem_usb0_set_report_data 
+014d c1dd0000 rtnne pc_report_id 
+014e 68008cb7 fetch 1 ,mem_usb0_set_report_data + 1 
+014f c0500160 beq command_mode ,p_dongle_dispose_cmd_mode 
+0150 c0508156 beq command_bind ,p_dongle_dispose_cmd_bind 
+0151 c0533041 beq command_current_project ,dongle_dispose_cmd_current_project 
+0152 c0538165 beq command_current_mode ,p_dongle_dispose_cmd_current_mode 
+0153 c054816b beq command_current_fw_version ,p_dongle_dispose_cmd_current_fw_version 
+0154 c058016d beq command_user_defined ,p_dongle_dispose_cmd_user_defined 
+0155 2020302a branch usb0_data_ready_report_set0 
 
 p_dongle_dispose_cmd_bind:
-0153 68008cb8 fetch 1 ,mem_usb0_set_report_data + 2 
-0154 c0008158 beq com_bind_get ,p_dongle_dispose_cmd_get_bind 
-0155 c042015b beq com_bind_exit ,p_dongle_dispose_cmd_exit_bind 
-0156 c053b039 beq com_read_mode ,dongle_dispose_cmd_read_mode 
-0157 2020302a branch usb0_data_ready_report_set0 
+0156 68008cb8 fetch 1 ,mem_usb0_set_report_data + 2 
+0157 c000815b beq com_bind_get ,p_dongle_dispose_cmd_get_bind 
+0158 c042015e beq com_bind_exit ,p_dongle_dispose_cmd_exit_bind 
+0159 c053b039 beq com_read_mode ,dongle_dispose_cmd_read_mode 
+015a 2020302a branch usb0_data_ready_report_set0 
 
 p_dongle_dispose_cmd_get_bind:
-0158 6800c8a7 fetch 1 ,mem_dongle_bind_device_status 
-0159 60008cf7 store 1 ,mem_usb0_get_report_data + 1 
-015a 2020303f branch usb0_data_ready_report_set1 
+015b 6800c8a7 fetch 1 ,mem_dongle_bind_device_status 
+015c 60008cf7 store 1 ,mem_usb0_get_report_data + 1 
+015d 2020303f branch usb0_data_ready_report_set1 
 
 p_dongle_dispose_cmd_exit_bind:
-015b 20400076 call p_dongle_work_mode_enable 
-015c 20200158 branch p_dongle_dispose_cmd_get_bind 
+015e 20400079 call p_dongle_work_mode_enable 
+015f 2020015b branch p_dongle_dispose_cmd_get_bind 
 
 p_dongle_dispose_cmd_mode:
-015d 68008cb8 fetch 1 ,mem_usb0_set_report_data + 2 
-015e c0408160 beq com_mode_bind ,p_dongle_enter_bind_mode 
-015f 2020302a branch usb0_data_ready_report_set0 
+0160 68008cb8 fetch 1 ,mem_usb0_set_report_data + 2 
+0161 c0408163 beq com_mode_bind ,p_dongle_enter_bind_mode 
+0162 2020302a branch usb0_data_ready_report_set0 
 
 p_dongle_enter_bind_mode:
-0160 204001bc call p_g24_bind_mode_enable 
-0161 2020303f branch usb0_data_ready_report_set1 
+0163 204001bf call p_g24_bind_mode_enable 
+0164 2020303f branch usb0_data_ready_report_set1 
 
 p_dongle_dispose_cmd_current_mode:
-0162 6800c8a4 fetch 1 ,mem_dongle_work_mode 
-0163 c0000166 beq dongle_work ,p_dongle_dispose_in_work_mode 
-0164 c000b039 beq dongle_bind ,dongle_dispose_in_bind_mode 
-0165 20600000 rtn 
+0165 6800c8a4 fetch 1 ,mem_dongle_work_mode 
+0166 c0000169 beq dongle_work ,p_dongle_dispose_in_work_mode 
+0167 c000b039 beq dongle_bind ,dongle_dispose_in_bind_mode 
+0168 20600000 rtn 
 
 p_dongle_dispose_in_work_mode:
-0166 700cf7a0 jam command_mode ,mem_usb0_get_report_data + 1 
-0167 2020303f branch usb0_data_ready_report_set1 
+0169 700cf7a0 jam command_mode ,mem_usb0_get_report_data + 1 
+016a 2020303f branch usb0_data_ready_report_set1 
 
 p_dongle_dispose_cmd_current_fw_version:
-0168 700cfa07 jam fw_version3 ,mem_usb0_get_report_data + 4 
-0169 20203049 branch dongle_dispose_cmd_current_fw_version 
+016b 700cfa07 jam fw_version3 ,mem_usb0_get_report_data + 4 
+016c 20203049 branch dongle_dispose_cmd_current_fw_version 
 
 p_dongle_dispose_cmd_user_defined:
-016a 68008cb8 fetch 1 ,mem_usb0_set_report_data + 2 
-016b c07fe59a beq 0xff ,soft_reset_chip 
+016d 68008cb8 fetch 1 ,mem_usb0_set_report_data + 2 
+016e c07fe59a beq 0xff ,soft_reset_chip 
 
 p_dongle_dispose_cmd_ota:
-016c 7048b802 jam 2 ,mem_24g_ackpayload_enable 
-016d 6800c900 fetch 1 ,mem_queue_ele_num 
-016e c0018174 beq queue_ele_count ,p_user_defined_queue_buff_full 
-016f 20400127 call p_g24_queue_put 
+016f 7048b802 jam 2 ,mem_24g_ackpayload_enable 
 0170 6800c900 fetch 1 ,mem_queue_ele_num 
-0171 c0018174 beq queue_ele_count ,p_user_defined_queue_buff_full 
+0171 c0018177 beq queue_ele_count ,p_user_defined_queue_buff_full 
+0172 2040012a call p_g24_queue_put 
+0173 6800c900 fetch 1 ,mem_queue_ele_num 
+0174 c0018177 beq queue_ele_count ,p_user_defined_queue_buff_full 
 
 p_user_defined_queue_buff_free:
-0172 700cf700 jam 0 ,mem_usb0_get_report_data + 1 
-0173 2020303f branch usb0_data_ready_report_set1 
+0175 700cf700 jam 0 ,mem_usb0_get_report_data + 1 
+0176 2020303f branch usb0_data_ready_report_set1 
 
 p_user_defined_queue_buff_full:
-0174 700cf701 jam 1 ,mem_usb0_get_report_data + 1 
-0175 2020303f branch usb0_data_ready_report_set1 
+0177 700cf701 jam 1 ,mem_usb0_get_report_data + 1 
+0178 2020303f branch usb0_data_ready_report_set1 
 
 p_dongle_auto_bind:
-0176 2040019a call p_g24_mode_switch_init 
+0179 2040019d call p_g24_mode_switch_init 
 
 p_dongle_auto_bind_loop:
-0177 204001a0 call p_g24_mode_switch 
-0178 2040017d call p_g24_dongle_work_mode_auto 
-0179 20400181 call p_g24_dongle_bind_mode_auto 
-017a 204001d2 call p_g24_dongle_search_mode_auto 
-017b 20400140 call p_dongle_usb_dispatch 
-017c 20200177 branch p_dongle_auto_bind_loop 
+017a 204001a3 call p_g24_mode_switch 
+017b 20400180 call p_g24_dongle_work_mode_auto 
+017c 20400184 call p_g24_dongle_bind_mode_auto 
+017d 204001d5 call p_g24_dongle_search_mode_auto 
+017e 20400143 call p_dongle_usb_dispatch 
+017f 2020017a branch p_dongle_auto_bind_loop 
 
 p_g24_dongle_work_mode_auto:
-017d 6800c8a4 fetch 1 ,mem_dongle_work_mode 
-017e c1800000 rtnne dongle_work 
-017f 2040007b call p_g24_dongle_work_mode_start 
-0180 202001c1 branch p_g24_rx_nodata_process 
+0180 6800c8a4 fetch 1 ,mem_dongle_work_mode 
+0181 c1800000 rtnne dongle_work 
+0182 2040007e call p_g24_dongle_work_mode_start 
+0183 202001c4 branch p_g24_rx_nodata_process 
 
 p_g24_dongle_bind_mode_auto:
-0181 6800c8a4 fetch 1 ,mem_dongle_work_mode 
-0182 c1808000 rtnne dongle_bind 
-0183 204000c8 call p_g24_dongle_bind_init 
-0184 204000d4 call p_g24_dongle_bind_data_process 
-0185 6800c8a7 fetch 1 ,mem_dongle_bind_device_status 
-0186 207a0000 rtn blank 
-0187 7048b700 jam 0 ,mem_24g_mode_switch 
-0188 20400075 call p_dongle_check_mode 
-0189 204001bf call p_g24_enable_nodata_timer 
-018a 2020019d branch p_g24_timer_init 
+0184 6800c8a4 fetch 1 ,mem_dongle_work_mode 
+0185 c1808000 rtnne dongle_bind 
+0186 204000cb call p_g24_dongle_bind_init 
+0187 204000d7 call p_g24_dongle_bind_data_process 
+0188 6800c8a7 fetch 1 ,mem_dongle_bind_device_status 
+0189 207a0000 rtn blank 
+018a 7048b700 jam 0 ,mem_24g_mode_switch 
+018b 20400078 call p_dongle_check_mode 
+018c 204001c2 call p_g24_enable_nodata_timer 
+018d 202001a0 branch p_g24_timer_init 
 
 p_g24_timer_check:
-018b 20407fe9 call disable_user 
-018c 680a4857 fetcht 4 ,mem_24g_tx_btclk 
-018d 1c427e00 copy clkn_bt ,pdata 
-018e 98467c00 isub temp ,null 
-018f 24412d18 ncall g24_timer_timeout ,positive 
-0190 1fe22400 copy pdata ,regb 
-0191 68024857 fetch 4 ,mem_24g_tx_btclk 
-0192 6808c85b fetcht 1 ,mem_24g_interval 
-0193 98408400 iadd temp ,temp 
-0194 1a427e00 copy regb ,pdata 
-0195 98467c00 isub temp ,null 
-0196 24610000 nrtn positive 
-0197 793ffe1c set0 28 ,pdata 
-0198 60024857 store 4 ,mem_24g_tx_btclk 
-0199 20207fe7 branch enable_user 
+018e 20407fe9 call disable_user 
+018f 680a4857 fetcht 4 ,mem_24g_tx_btclk 
+0190 1c427e00 copy clkn_bt ,pdata 
+0191 98467c00 isub temp ,null 
+0192 24412d18 ncall g24_timer_timeout ,positive 
+0193 1fe22400 copy pdata ,regb 
+0194 68024857 fetch 4 ,mem_24g_tx_btclk 
+0195 6808c85b fetcht 1 ,mem_24g_interval 
+0196 98408400 iadd temp ,temp 
+0197 1a427e00 copy regb ,pdata 
+0198 98467c00 isub temp ,null 
+0199 24610000 nrtn positive 
+019a 793ffe1c set0 28 ,pdata 
+019b 60024857 store 4 ,mem_24g_tx_btclk 
+019c 20207fe7 branch enable_user 
 
 p_g24_mode_switch_init:
-019a 7048b701 jam 1 ,mem_24g_mode_switch 
-019b 7048bc00 jam 0 ,mem_24g_time_slice 
-019c 70485bff jam 0xff ,mem_24g_interval 
+019d 7048b701 jam 1 ,mem_24g_mode_switch 
+019e 7048bc00 jam 0 ,mem_24g_time_slice 
+019f 70485bff jam 0xff ,mem_24g_interval 
 
 p_g24_timer_init:
-019d 58000000 setarg 0 
-019e 60024857 store 4 ,mem_24g_tx_btclk 
-019f 20600000 rtn 
+01a0 58000000 setarg 0 
+01a1 60024857 store 4 ,mem_24g_tx_btclk 
+01a2 20600000 rtn 
 
 p_g24_mode_switch:
-01a0 6800c8b7 fetch 1 ,mem_24g_mode_switch 
-01a1 207a0000 rtn blank 
-01a2 2040018b call p_g24_timer_check 
-01a3 24740000 nrtn user 
-01a4 204001b5 call p_g24_bind_mode_delay 
-01a5 204001ad call p_g24_work_mode_delay 
-01a6 6800c8bc fetch 1 ,mem_24g_time_slice 
-01a7 1fe0fe01 increase 1 ,pdata 
-01a8 1fe17e01 and_into 1 ,pdata 
-01a9 6000c8bc store 1 ,mem_24g_time_slice 
-01aa c00001b2 beq 0 ,p_g24_mode_switch_work 
-01ab c00081ba beq 1 ,p_g24_mode_switch_bind 
-01ac 20600000 rtn 
+01a3 6800c8b7 fetch 1 ,mem_24g_mode_switch 
+01a4 207a0000 rtn blank 
+01a5 2040018e call p_g24_timer_check 
+01a6 24740000 nrtn user 
+01a7 204001b8 call p_g24_bind_mode_delay 
+01a8 204001b0 call p_g24_work_mode_delay 
+01a9 6800c8bc fetch 1 ,mem_24g_time_slice 
+01aa 1fe0fe01 increase 1 ,pdata 
+01ab 1fe17e01 and_into 1 ,pdata 
+01ac 6000c8bc store 1 ,mem_24g_time_slice 
+01ad c00001b5 beq 0 ,p_g24_mode_switch_work 
+01ae c00081bd beq 1 ,p_g24_mode_switch_bind 
+01af 20600000 rtn 
 
 p_g24_work_mode_delay:
-01ad 6800c97a fetch 1 ,mem_24g_work_delay_count 
-01ae 207a0000 rtn blank 
-01af 1fe0ffff increase -1 ,pdata 
-01b0 6000c97a store 1 ,mem_24g_work_delay_count 
-01b1 20600000 rtn 
+01b0 6800c97a fetch 1 ,mem_24g_work_delay_count 
+01b1 207a0000 rtn blank 
+01b2 1fe0ffff increase -1 ,pdata 
+01b3 6000c97a store 1 ,mem_24g_work_delay_count 
+01b4 20600000 rtn 
 
 p_g24_mode_switch_work:
-01b2 6800c97a fetch 1 ,mem_24g_work_delay_count 
-01b3 243a01bc nbranch p_g24_bind_mode_enable ,blank 
-01b4 20200075 branch p_dongle_check_mode 
+01b5 6800c97a fetch 1 ,mem_24g_work_delay_count 
+01b6 243a01bf nbranch p_g24_bind_mode_enable ,blank 
+01b7 20200078 branch p_dongle_check_mode 
 
 p_g24_bind_mode_delay:
-01b5 6800c979 fetch 1 ,mem_24g_bind_delay_count 
-01b6 207a0000 rtn blank 
-01b7 1fe0ffff increase -1 ,pdata 
-01b8 6000c979 store 1 ,mem_24g_bind_delay_count 
-01b9 20600000 rtn 
+01b8 6800c979 fetch 1 ,mem_24g_bind_delay_count 
+01b9 207a0000 rtn blank 
+01ba 1fe0ffff increase -1 ,pdata 
+01bb 6000c979 store 1 ,mem_24g_bind_delay_count 
+01bc 20600000 rtn 
 
 p_g24_mode_switch_bind:
-01ba 6800c979 fetch 1 ,mem_24g_bind_delay_count 
-01bb 243a0075 nbranch p_dongle_check_mode ,blank 
+01bd 6800c979 fetch 1 ,mem_24g_bind_delay_count 
+01be 243a0078 nbranch p_dongle_check_mode ,blank 
 
 p_g24_bind_mode_enable:
-01bc 7048a401 jam dongle_bind ,mem_dongle_work_mode 
-01bd 7048a300 jam clear_init ,mem_dongle_mode_init 
-01be 20600000 rtn 
+01bf 7048a401 jam dongle_bind ,mem_dongle_work_mode 
+01c0 7048a300 jam clear_init ,mem_dongle_mode_init 
+01c1 20600000 rtn 
 
 p_g24_enable_nodata_timer:
-01bf 7048bb01 jam 1 ,mem_24g_nodata_timer_enable 
-01c0 20203095 branch g24_enable_nodata_timer_init 
+01c2 7048bb01 jam 1 ,mem_24g_nodata_timer_enable 
+01c3 20203095 branch g24_enable_nodata_timer_init 
 
 p_g24_rx_nodata_process:
-01c1 6800c8b8 fetch 1 ,mem_24g_ackpayload_enable 
-01c2 c1010000 rtneq 2 
-01c3 6800c8bb fetch 1 ,mem_24g_nodata_timer_enable 
-01c4 207a0000 rtn blank 
-01c5 d8e00008 arg timer_nodata ,queue 
-01c6 20407f16 call timer_check 
-01c7 247a0000 nrtn blank 
-01c8 7048bb00 jam 0 ,mem_24g_nodata_timer_enable 
-01c9 70497900 jam 0 ,mem_24g_bind_delay_count 
-01ca 70497a00 jam 0 ,mem_24g_work_delay_count 
-01cb 7048a407 jam dongle_search ,mem_dongle_work_mode 
-01cc 7048a300 jam clear_init ,mem_dongle_mode_init 
-01cd 202000e0 branch p_g24_rx_interrupt_clear 
+01c4 6800c8b8 fetch 1 ,mem_24g_ackpayload_enable 
+01c5 c1010000 rtneq 2 
+01c6 6800c8bb fetch 1 ,mem_24g_nodata_timer_enable 
+01c7 207a0000 rtn blank 
+01c8 d8e00008 arg timer_nodata ,queue 
+01c9 20407f16 call timer_check 
+01ca 247a0000 nrtn blank 
+01cb 7048bb00 jam 0 ,mem_24g_nodata_timer_enable 
+01cc 70497900 jam 0 ,mem_24g_bind_delay_count 
+01cd 70497a00 jam 0 ,mem_24g_work_delay_count 
+01ce 7048a407 jam dongle_search ,mem_dongle_work_mode 
+01cf 7048a300 jam clear_init ,mem_dongle_mode_init 
+01d0 202000e3 branch p_g24_rx_interrupt_clear 
 
 p_g24_receive_transmit_ack:
-01ce 204000e0 call p_g24_rx_interrupt_clear 
-01cf 204003ac call p_g24_receive_packet 
-01d0 24778000 nrtn user3 
-01d1 2020026d branch p_g24_transmit_ack 
+01d1 204000e3 call p_g24_rx_interrupt_clear 
+01d2 204003af call p_g24_receive_packet 
+01d3 24778000 nrtn user3 
+01d4 20200270 branch p_g24_transmit_ack 
 
 p_g24_dongle_search_mode_auto:
-01d2 6800c8a4 fetch 1 ,mem_dongle_work_mode 
-01d3 c1838000 rtnne dongle_search 
-01d4 204001f7 call p_g24_dongle_search_mode_init 
-01d5 2040020b call p_g24_rx_auto_addr_ch_search 
-01d6 204001ce call p_g24_receive_transmit_ack 
-01d7 243780e0 nbranch p_g24_rx_interrupt_clear ,user3 
-01d8 20400207 call p_g24_rx_addr_check 
-01d9 20428297 call p_g24_receive_packet_parse ,zero 
-01da 7048a400 jam dongle_work ,mem_dongle_work_mode 
-01db 6800c8a3 fetch 1 ,mem_dongle_mode_init 
-01dc 79207e00 set1 dongle_work ,pdata 
-01dd 6000c8a3 store 1 ,mem_dongle_mode_init 
-01de 6800c8b8 fetch 1 ,mem_24g_ackpayload_enable 
-01df 1fe67c02 sub pdata ,2 ,null 
-01e0 244281ee ncall p_g24_ackpayload_disable ,zero 
-01e1 204000e0 call p_g24_rx_interrupt_clear 
-01e2 204001bf call p_g24_enable_nodata_timer 
-01e3 20400207 call p_g24_rx_addr_check 
-01e4 202281f0 branch p_g24_dg_ch_num_reinit ,zero 
-01e5 6802485e fetch 4 ,mem_24g_addr 
-01e6 680a48d6 fetcht 4 ,mem_24g_kb_addr 
-01e7 98467c00 isub temp ,null 
-01e8 202281f3 branch p_g24_kb_ch_num_reinit ,zero 
-01e9 6802485e fetch 4 ,mem_24g_addr 
-01ea 680a48da fetcht 4 ,mem_24g_ms_addr 
-01eb 98467c00 isub temp ,null 
-01ec 202281f5 branch p_g24_ms_ch_num_reinit ,zero 
-01ed 20600000 rtn 
+01d5 6800c8a4 fetch 1 ,mem_dongle_work_mode 
+01d6 c1838000 rtnne dongle_search 
+01d7 204001fa call p_g24_dongle_search_mode_init 
+01d8 2040020e call p_g24_rx_auto_addr_ch_search 
+01d9 204001d1 call p_g24_receive_transmit_ack 
+01da 243780e3 nbranch p_g24_rx_interrupt_clear ,user3 
+01db 2040020a call p_g24_rx_addr_check 
+01dc 2042829a call p_g24_receive_packet_parse ,zero 
+01dd 7048a400 jam dongle_work ,mem_dongle_work_mode 
+01de 6800c8a3 fetch 1 ,mem_dongle_mode_init 
+01df 79207e00 set1 dongle_work ,pdata 
+01e0 6000c8a3 store 1 ,mem_dongle_mode_init 
+01e1 6800c8b8 fetch 1 ,mem_24g_ackpayload_enable 
+01e2 1fe67c02 sub pdata ,2 ,null 
+01e3 244281f1 ncall p_g24_ackpayload_disable ,zero 
+01e4 204000e3 call p_g24_rx_interrupt_clear 
+01e5 204001c2 call p_g24_enable_nodata_timer 
+01e6 2040020a call p_g24_rx_addr_check 
+01e7 202281f3 branch p_g24_dg_ch_num_reinit ,zero 
+01e8 6802485e fetch 4 ,mem_24g_addr 
+01e9 680a48d6 fetcht 4 ,mem_24g_kb_addr 
+01ea 98467c00 isub temp ,null 
+01eb 202281f6 branch p_g24_kb_ch_num_reinit ,zero 
+01ec 6802485e fetch 4 ,mem_24g_addr 
+01ed 680a48da fetcht 4 ,mem_24g_ms_addr 
+01ee 98467c00 isub temp ,null 
+01ef 202281f8 branch p_g24_ms_ch_num_reinit ,zero 
+01f0 20600000 rtn 
 
 p_g24_ackpayload_disable:
-01ee 7048b800 jam 0 ,mem_24g_ackpayload_enable 
-01ef 20600000 rtn 
+01f1 7048b800 jam 0 ,mem_24g_ackpayload_enable 
+01f2 20600000 rtn 
 
 p_g24_dg_ch_num_reinit:
-01f0 6800c8df fetch 1 ,mem_24g_dg_ch_number 
+01f3 6800c8df fetch 1 ,mem_24g_dg_ch_number 
 
 p_g24_current_ch_num_reinit:
-01f1 6000c841 store 1 ,mem_24g_current_ch_number 
-01f2 20600000 rtn 
+01f4 6000c841 store 1 ,mem_24g_current_ch_number 
+01f5 20600000 rtn 
 
 p_g24_kb_ch_num_reinit:
-01f3 6800c8e2 fetch 1 ,mem_24g_kb_ch_number 
-01f4 202001f1 branch p_g24_current_ch_num_reinit 
+01f6 6800c8e2 fetch 1 ,mem_24g_kb_ch_number 
+01f7 202001f4 branch p_g24_current_ch_num_reinit 
 
 p_g24_ms_ch_num_reinit:
-01f5 6800c8e5 fetch 1 ,mem_24g_ms_ch_number 
-01f6 202001f1 branch p_g24_current_ch_num_reinit 
+01f8 6800c8e5 fetch 1 ,mem_24g_ms_ch_number 
+01f9 202001f4 branch p_g24_current_ch_num_reinit 
 
 p_g24_dongle_search_mode_init:
-01f7 6800c8a3 fetch 1 ,mem_dongle_mode_init 
-01f8 c3838000 rtnbit1 dongle_search 
-01f9 79207e07 set1 dongle_search ,pdata 
-01fa 6000c8a3 store 1 ,mem_dongle_mode_init 
-01fb 7048bc00 jam 0 ,mem_24g_time_slice 
-01fc 7048b801 jam 1 ,mem_24g_ackpayload_enable 
-01fd 58000000 setarg 0 
-01fe 6001c8f5 store 3 ,mem_rssi_noise_dg_index 
-01ff 6003c8e0 store 7 ,mem_24g_dg_config_ch_once 
-0200 20400207 call p_g24_rx_addr_check 
-0201 24628000 nrtn zero 
-0202 6800c841 fetch 1 ,mem_24g_current_ch_number 
-0203 6000c8df store 1 ,mem_24g_dg_ch_number 
-0204 6800c840 fetch 1 ,mem_24g_ch 
-0205 6000c8de store 1 ,mem_24g_dg_last_ch 
-0206 20600000 rtn 
+01fa 6800c8a3 fetch 1 ,mem_dongle_mode_init 
+01fb c3838000 rtnbit1 dongle_search 
+01fc 79207e07 set1 dongle_search ,pdata 
+01fd 6000c8a3 store 1 ,mem_dongle_mode_init 
+01fe 7048bc00 jam 0 ,mem_24g_time_slice 
+01ff 7048b801 jam 1 ,mem_24g_ackpayload_enable 
+0200 58000000 setarg 0 
+0201 6001c8f5 store 3 ,mem_rssi_noise_dg_index 
+0202 6003c8e0 store 7 ,mem_24g_dg_config_ch_once 
+0203 2040020a call p_g24_rx_addr_check 
+0204 24628000 nrtn zero 
+0205 6800c841 fetch 1 ,mem_24g_current_ch_number 
+0206 6000c8df store 1 ,mem_24g_dg_ch_number 
+0207 6800c840 fetch 1 ,mem_24g_ch 
+0208 6000c8de store 1 ,mem_24g_dg_last_ch 
+0209 20600000 rtn 
 
 p_g24_rx_addr_check:
-0207 6802485e fetch 4 ,mem_24g_addr 
-0208 680a489f fetcht 4 ,mem_24g_rx_addr 
-0209 98467c00 isub temp ,null 
-020a 20600000 rtn 
+020a 6802485e fetch 4 ,mem_24g_addr 
+020b 680a489f fetcht 4 ,mem_24g_rx_addr 
+020c 98467c00 isub temp ,null 
+020d 20600000 rtn 
 
 p_g24_rx_auto_addr_ch_search:
-020b 6800c8bc fetch 1 ,mem_24g_time_slice 
-020c 1fe0fe01 increase 1 ,pdata 
-020d 1fe17e03 and_into 3 ,pdata 
-020e 6000c8bc store 1 ,mem_24g_time_slice 
-020f c000022e beq 0 ,p_g24_rx_auto_bind_config_kb 
-0210 c0008248 beq 1 ,p_g24_rx_auto_bind_config_dongle 
-0211 c0010214 beq 2 ,p_g24_rx_auto_bind_config_mouse 
-0212 c0018248 beq 3 ,p_g24_rx_auto_bind_config_dongle 
-0213 20600000 rtn 
+020e 6800c8bc fetch 1 ,mem_24g_time_slice 
+020f 1fe0fe01 increase 1 ,pdata 
+0210 1fe17e03 and_into 3 ,pdata 
+0211 6000c8bc store 1 ,mem_24g_time_slice 
+0212 c0000231 beq 0 ,p_g24_rx_auto_bind_config_kb 
+0213 c000824b beq 1 ,p_g24_rx_auto_bind_config_dongle 
+0214 c0010217 beq 2 ,p_g24_rx_auto_bind_config_mouse 
+0215 c001824b beq 3 ,p_g24_rx_auto_bind_config_dongle 
+0216 20600000 rtn 
 
 p_g24_rx_auto_bind_config_mouse:
-0214 204000e8 call p_g24_dongle_bind_ms_payload_cfg 
-0215 680248da fetch 4 ,mem_24g_ms_addr 
-0216 203a020b branch p_g24_rx_auto_addr_ch_search ,blank 
-0217 20400372 call p_g24_update_addr_and_synccrc8 
-0218 6800c8e6 fetch 1 ,mem_24g_ms_config_ch_once 
-0219 205a0229 call p_g24_ms_config_ch_once ,blank 
-021a 6800c8e4 fetch 1 ,mem_24g_ms_last_ch 
-021b 6000c840 store 1 ,mem_24g_ch 
-021c 6808c8f7 fetcht 1 ,mem_rssi_noise_ms_index 
-021d da200f9e arg mem_rssi_noise_ms_buffer ,rega 
-021e 20400366 call p_rssi_store 
-021f 6008c8f7 storet 1 ,mem_rssi_noise_ms_index 
-0220 2040036d call p_rssi_average 
-0221 6008c8f4 storet 1 ,mem_rssi_noise_ms_avg 
-0222 18467c50 sub temp ,rssi_thresh_noise ,null 
-0223 24610000 nrtn positive 
-0224 6808c8e5 fetcht 1 ,mem_24g_ms_ch_number 
-0225 20400396 call p_g24_ch_map_size 
-0226 6008c8e5 storet 1 ,mem_24g_ms_ch_number 
-0227 6000c8e4 store 1 ,mem_24g_ms_last_ch 
-0228 20600000 rtn 
+0217 204000eb call p_g24_dongle_bind_ms_payload_cfg 
+0218 680248da fetch 4 ,mem_24g_ms_addr 
+0219 203a020e branch p_g24_rx_auto_addr_ch_search ,blank 
+021a 20400375 call p_g24_update_addr_and_synccrc8 
+021b 6800c8e6 fetch 1 ,mem_24g_ms_config_ch_once 
+021c 205a022c call p_g24_ms_config_ch_once ,blank 
+021d 6800c8e4 fetch 1 ,mem_24g_ms_last_ch 
+021e 6000c840 store 1 ,mem_24g_ch 
+021f 6808c8f7 fetcht 1 ,mem_rssi_noise_ms_index 
+0220 da200f9e arg mem_rssi_noise_ms_buffer ,rega 
+0221 20400369 call p_rssi_store 
+0222 6008c8f7 storet 1 ,mem_rssi_noise_ms_index 
+0223 20400370 call p_rssi_average 
+0224 6008c8f4 storet 1 ,mem_rssi_noise_ms_avg 
+0225 18467c50 sub temp ,rssi_thresh_noise ,null 
+0226 24610000 nrtn positive 
+0227 6808c8e5 fetcht 1 ,mem_24g_ms_ch_number 
+0228 20400399 call p_g24_ch_map_size 
+0229 6008c8e5 storet 1 ,mem_24g_ms_ch_number 
+022a 6000c8e4 store 1 ,mem_24g_ms_last_ch 
+022b 20600000 rtn 
 
 p_g24_ms_config_ch_once:
-0229 7048e601 jam 1 ,mem_24g_ms_config_ch_once 
-022a d8400000 arg 0 ,temp 
-022b 2040039a call p_g24_ch_calc 
-022c 6000c8e4 store 1 ,mem_24g_ms_last_ch 
-022d 20600000 rtn 
+022c 7048e601 jam 1 ,mem_24g_ms_config_ch_once 
+022d d8400000 arg 0 ,temp 
+022e 2040039d call p_g24_ch_calc 
+022f 6000c8e4 store 1 ,mem_24g_ms_last_ch 
+0230 20600000 rtn 
 
 p_g24_rx_auto_bind_config_kb:
-022e 204000ee call p_g24_dongle_bind_kb_payload_cfg 
-022f 680248d6 fetch 4 ,mem_24g_kb_addr 
-0230 203a020b branch p_g24_rx_auto_addr_ch_search ,blank 
-0231 20400372 call p_g24_update_addr_and_synccrc8 
-0232 6800c8e3 fetch 1 ,mem_24g_kb_config_ch_once 
-0233 205a0243 call p_g24_kb_config_ch_once ,blank 
-0234 6800c8e1 fetch 1 ,mem_24g_kb_last_ch 
-0235 6000c840 store 1 ,mem_24g_ch 
-0236 6808c8f6 fetcht 1 ,mem_rssi_noise_kb_index 
-0237 da20109e arg mem_rssi_noise_kb_buffer ,rega 
-0238 20400366 call p_rssi_store 
-0239 6008c8f6 storet 1 ,mem_rssi_noise_kb_index 
-023a 2040036d call p_rssi_average 
-023b 6008c8f3 storet 1 ,mem_rssi_noise_kb_avg 
-023c 18467c50 sub temp ,rssi_thresh_noise ,null 
-023d 24610000 nrtn positive 
-023e 6808c8e2 fetcht 1 ,mem_24g_kb_ch_number 
-023f 20400396 call p_g24_ch_map_size 
-0240 6008c8e2 storet 1 ,mem_24g_kb_ch_number 
-0241 6000c8e1 store 1 ,mem_24g_kb_last_ch 
-0242 20600000 rtn 
+0231 204000f1 call p_g24_dongle_bind_kb_payload_cfg 
+0232 680248d6 fetch 4 ,mem_24g_kb_addr 
+0233 203a020e branch p_g24_rx_auto_addr_ch_search ,blank 
+0234 20400375 call p_g24_update_addr_and_synccrc8 
+0235 6800c8e3 fetch 1 ,mem_24g_kb_config_ch_once 
+0236 205a0246 call p_g24_kb_config_ch_once ,blank 
+0237 6800c8e1 fetch 1 ,mem_24g_kb_last_ch 
+0238 6000c840 store 1 ,mem_24g_ch 
+0239 6808c8f6 fetcht 1 ,mem_rssi_noise_kb_index 
+023a da20109e arg mem_rssi_noise_kb_buffer ,rega 
+023b 20400369 call p_rssi_store 
+023c 6008c8f6 storet 1 ,mem_rssi_noise_kb_index 
+023d 20400370 call p_rssi_average 
+023e 6008c8f3 storet 1 ,mem_rssi_noise_kb_avg 
+023f 18467c50 sub temp ,rssi_thresh_noise ,null 
+0240 24610000 nrtn positive 
+0241 6808c8e2 fetcht 1 ,mem_24g_kb_ch_number 
+0242 20400399 call p_g24_ch_map_size 
+0243 6008c8e2 storet 1 ,mem_24g_kb_ch_number 
+0244 6000c8e1 store 1 ,mem_24g_kb_last_ch 
+0245 20600000 rtn 
 
 p_g24_kb_config_ch_once:
-0243 7048e301 jam 1 ,mem_24g_kb_config_ch_once 
-0244 d8400000 arg 0 ,temp 
-0245 2040039a call p_g24_ch_calc 
-0246 6000c8e1 store 1 ,mem_24g_kb_last_ch 
-0247 20600000 rtn 
+0246 7048e301 jam 1 ,mem_24g_kb_config_ch_once 
+0247 d8400000 arg 0 ,temp 
+0248 2040039d call p_g24_ch_calc 
+0249 6000c8e1 store 1 ,mem_24g_kb_last_ch 
+024a 20600000 rtn 
 
 p_g24_rx_auto_bind_config_dongle:
-0248 204000e8 call p_g24_dongle_bind_ms_payload_cfg 
-0249 6802489f fetch 4 ,mem_24g_rx_addr 
-024a 20400372 call p_g24_update_addr_and_synccrc8 
-024b 6800c8e0 fetch 1 ,mem_24g_dg_config_ch_once 
-024c 205a025c call p_g24_dg_config_ch_once ,blank 
-024d 6800c8de fetch 1 ,mem_24g_dg_last_ch 
-024e 6000c840 store 1 ,mem_24g_ch 
-024f 6808c8f5 fetcht 1 ,mem_rssi_noise_dg_index 
-0250 da200e9e arg mem_rssi_noise_dg_buffer ,rega 
-0251 20400366 call p_rssi_store 
-0252 6008c8f5 storet 1 ,mem_rssi_noise_dg_index 
-0253 2040036d call p_rssi_average 
-0254 6008c8f2 storet 1 ,mem_rssi_noise_dg_avg 
-0255 18467c50 sub temp ,rssi_thresh_noise ,null 
-0256 24610000 nrtn positive 
-0257 6808c8df fetcht 1 ,mem_24g_dg_ch_number 
-0258 20400396 call p_g24_ch_map_size 
-0259 6008c8df storet 1 ,mem_24g_dg_ch_number 
-025a 6000c8de store 1 ,mem_24g_dg_last_ch 
-025b 20600000 rtn 
+024b 204000eb call p_g24_dongle_bind_ms_payload_cfg 
+024c 6802489f fetch 4 ,mem_24g_rx_addr 
+024d 20400375 call p_g24_update_addr_and_synccrc8 
+024e 6800c8e0 fetch 1 ,mem_24g_dg_config_ch_once 
+024f 205a025f call p_g24_dg_config_ch_once ,blank 
+0250 6800c8de fetch 1 ,mem_24g_dg_last_ch 
+0251 6000c840 store 1 ,mem_24g_ch 
+0252 6808c8f5 fetcht 1 ,mem_rssi_noise_dg_index 
+0253 da200e9e arg mem_rssi_noise_dg_buffer ,rega 
+0254 20400369 call p_rssi_store 
+0255 6008c8f5 storet 1 ,mem_rssi_noise_dg_index 
+0256 20400370 call p_rssi_average 
+0257 6008c8f2 storet 1 ,mem_rssi_noise_dg_avg 
+0258 18467c50 sub temp ,rssi_thresh_noise ,null 
+0259 24610000 nrtn positive 
+025a 6808c8df fetcht 1 ,mem_24g_dg_ch_number 
+025b 20400399 call p_g24_ch_map_size 
+025c 6008c8df storet 1 ,mem_24g_dg_ch_number 
+025d 6000c8de store 1 ,mem_24g_dg_last_ch 
+025e 20600000 rtn 
 
 p_g24_dg_config_ch_once:
-025c 7048e001 jam 1 ,mem_24g_dg_config_ch_once 
-025d 6800c8de fetch 1 ,mem_24g_dg_last_ch 
-025e 6000c840 store 1 ,mem_24g_ch 
-025f 20600000 rtn 
+025f 7048e001 jam 1 ,mem_24g_dg_config_ch_once 
+0260 6800c8de fetch 1 ,mem_24g_dg_last_ch 
+0261 6000c840 store 1 ,mem_24g_ch 
+0262 20600000 rtn 
 
 p_g24_read_len_pid_crc:
-0260 6800c7b1 fetch 1 ,mem_24g_rxbuf + 1 
-0261 1fe97e00 rshift3 pdata ,pdata 
-0262 6000c834 store 1 ,mem_24g_rxdata_length 
-0263 1fe0fe01 increase 1 ,pdata 
-0264 d8c047b1 arg mem_24g_rxbuf + 1 ,contr 
-0265 98c08c00 iadd contr ,contr 
-0266 e8c18000 ifetch 3 ,contr 
-0267 6001c873 store 3 ,mem_24g_sta_crc 
-0268 6800c7b1 fetch 1 ,mem_24g_rxbuf + 1 
-0269 1fe37e00 rshift pdata ,pdata 
-026a 1fe17e03 and pdata ,0x03 ,pdata 
-026b 6000c879 store 1 ,mem_24g_sta_pid 
-026c 20600000 rtn 
+0263 6800c7b1 fetch 1 ,mem_24g_rxbuf + 1 
+0264 1fe97e00 rshift3 pdata ,pdata 
+0265 6000c834 store 1 ,mem_24g_rxdata_length 
+0266 1fe0fe01 increase 1 ,pdata 
+0267 d8c047b1 arg mem_24g_rxbuf + 1 ,contr 
+0268 98c08c00 iadd contr ,contr 
+0269 e8c18000 ifetch 3 ,contr 
+026a 6001c873 store 3 ,mem_24g_sta_crc 
+026b 6800c7b1 fetch 1 ,mem_24g_rxbuf + 1 
+026c 1fe37e00 rshift pdata ,pdata 
+026d 1fe17e03 and pdata ,0x03 ,pdata 
+026e 6000c879 store 1 ,mem_24g_sta_pid 
+026f 20600000 rtn 
 
 p_g24_transmit_ack:
-026d 6800c7b0 fetch 1 ,mem_24g_rxbuf 
-026e 6000c837 store 1 ,mem_24g_data_type 
-026f 20400260 call p_g24_read_len_pid_crc 
-0270 6800c7b1 fetch 1 ,mem_24g_rxbuf + 1 
-0271 2feffe00 isolate1 bit_ack_24g ,pdata 
-0272 20208276 branch p_g24tx_no_ack ,true 
+0270 6800c7b0 fetch 1 ,mem_24g_rxbuf 
+0271 6000c837 store 1 ,mem_24g_data_type 
+0272 20400263 call p_g24_read_len_pid_crc 
+0273 6800c7b1 fetch 1 ,mem_24g_rxbuf + 1 
+0274 2feffe00 isolate1 bit_ack_24g ,pdata 
+0275 20208279 branch p_g24tx_no_ack ,true 
 
 p_g24tx_with_ack:
-0273 20400277 call p_g24_ackpayload_prep 
-0274 20400380 call p_g24_transmit_prep 
-0275 204003f6 call p_g24_transmit 
+0276 2040027a call p_g24_ackpayload_prep 
+0277 20400383 call p_g24_transmit_prep 
+0278 204003f9 call p_g24_transmit 
 
 p_g24tx_no_ack:
-0276 202003ee branch p_g24_end_of_packet 
+0279 202003f1 branch p_g24_end_of_packet 
 
 p_g24_ackpayload_prep:
-0277 70483600 jam 0 ,mem_24g_datalen 
-0278 6800c8b8 fetch 1 ,mem_24g_ackpayload_enable 
-0279 207a0000 rtn blank 
-027a c000827e beq bind_ackpayload ,p_g24_bind_ackpayload_prep 
-027b c0010283 beq user_ackpayload ,p_g24_user_ackpayload_prep 
-027c c001828d beq kb_led_ackpayload ,p_g24_kb_led_ackpayload_prep 
-027d 20600000 rtn 
+027a 70483600 jam 0 ,mem_24g_datalen 
+027b 6800c8b8 fetch 1 ,mem_24g_ackpayload_enable 
+027c 207a0000 rtn blank 
+027d c0008281 beq bind_ackpayload ,p_g24_bind_ackpayload_prep 
+027e c0010286 beq user_ackpayload ,p_g24_user_ackpayload_prep 
+027f c0018290 beq kb_led_ackpayload ,p_g24_kb_led_ackpayload_prep 
+0280 20600000 rtn 
 
 p_g24_bind_ackpayload_prep:
-027e 70483608 jam 0x08 ,mem_24g_datalen 
-027f df200008 arg 0x08 ,loopcnt 
-0280 d8c048a8 arg mem_24g_bind_payload ,contr 
-0281 d8a047d2 arg mem_24g_txbuf ,contw 
-0282 20207f01 branch memcpy 
+0281 70483608 jam 0x08 ,mem_24g_datalen 
+0282 df200008 arg 0x08 ,loopcnt 
+0283 d8c048a8 arg mem_24g_bind_payload ,contr 
+0284 d8a047d2 arg mem_24g_txbuf ,contw 
+0285 20207f01 branch memcpy 
 
 p_g24_user_ackpayload_prep:
-0283 2040013a call p_g24_queue_read_point 
-0284 24740000 nrtn user 
-0285 7048361f jam 0x1f ,mem_24g_datalen 
-0286 df20001f arg 0x1f ,loopcnt 
-0287 1fe20c00 copy pdata ,contr 
-0288 d8a047d2 arg mem_24g_txbuf ,contw 
-0289 20407f01 call memcpy 
-028a 680147d5 fetch 2 ,mem_24g_txbuf + 3 
-028b 600148eb store 2 ,mem_24g_ota_sta_pid 
-028c 20600000 rtn 
+0286 2040013d call p_g24_queue_read_point 
+0287 24740000 nrtn user 
+0288 7048361f jam 0x1f ,mem_24g_datalen 
+0289 df20001f arg 0x1f ,loopcnt 
+028a 1fe20c00 copy pdata ,contr 
+028b d8a047d2 arg mem_24g_txbuf ,contw 
+028c 20407f01 call memcpy 
+028d 680147d5 fetch 2 ,mem_24g_txbuf + 3 
+028e 600148eb store 2 ,mem_24g_ota_sta_pid 
+028f 20600000 rtn 
 
 p_g24_kb_led_ackpayload_prep:
-028d 7048b800 jam 0 ,mem_24g_ackpayload_enable 
-028e 700d4300 jam 0 ,mem_usb_tx_win_enable 
-028f 70483601 jam 0x01 ,mem_24g_datalen 
-0290 df200001 arg 0x01 ,loopcnt 
-0291 d8c04978 arg mem_24g_led_status ,contr 
-0292 d8a047d2 arg mem_24g_txbuf ,contw 
-0293 20207f01 branch memcpy 
+0290 7048b800 jam 0 ,mem_24g_ackpayload_enable 
+0291 700d4300 jam 0 ,mem_usb_tx_win_enable 
+0292 70483601 jam 0x01 ,mem_24g_datalen 
+0293 df200001 arg 0x01 ,loopcnt 
+0294 d8c04978 arg mem_24g_led_status ,contr 
+0295 d8a047d2 arg mem_24g_txbuf ,contw 
+0296 20207f01 branch memcpy 
 
 p_g24_receive_packet_start:
-0294 204001ce call p_g24_receive_transmit_ack 
-0295 243780e0 nbranch p_g24_rx_interrupt_clear ,user3 
-0296 20200297 branch p_g24_receive_packet_parse 
+0297 204001d1 call p_g24_receive_transmit_ack 
+0298 243780e3 nbranch p_g24_rx_interrupt_clear ,user3 
+0299 2020029a branch p_g24_receive_packet_parse 
 
 p_g24_receive_packet_parse:
-0297 204002a8 call p_g24_receive_packet_parse_pid_crc 
-0298 243400e0 nbranch p_g24_rx_interrupt_clear ,user 
-0299 6800c834 fetch 1 ,mem_24g_rxdata_length 
-029a 203a00e0 branch p_g24_rx_interrupt_clear ,blank 
-029b 1fe0fe02 increase 2 ,pdata 
-029c 98007200 iforce loopcnt 
-029d d8c047b0 arg mem_24g_rxbuf ,contr 
-029e d8a0487d arg mem_24g_rxdata_temp ,contw 
-029f 20407f01 call memcpy 
-02a0 7048b700 jam 0 ,mem_24g_mode_switch 
-02a1 6800c8ba fetch 1 ,mem_24g_pair_mode 
-02a2 205a01bf call p_g24_enable_nodata_timer ,blank 
-02a3 6800c87f fetch 1 ,mem_24g_rxdata_temp + 2 
-02a4 c00082b6 beq 0x01 ,p_g24_data_type1 
-02a5 c00102d5 beq 0x02 ,p_g24_data_type2 
-02a6 c07f830e beq 0xff ,p_g24_data_attemp 
-02a7 202000e0 branch p_g24_rx_interrupt_clear 
+029a 204002ab call p_g24_receive_packet_parse_pid_crc 
+029b 243400e3 nbranch p_g24_rx_interrupt_clear ,user 
+029c 6800c834 fetch 1 ,mem_24g_rxdata_length 
+029d 203a00e3 branch p_g24_rx_interrupt_clear ,blank 
+029e 1fe0fe02 increase 2 ,pdata 
+029f 98007200 iforce loopcnt 
+02a0 d8c047b0 arg mem_24g_rxbuf ,contr 
+02a1 d8a0487d arg mem_24g_rxdata_temp ,contw 
+02a2 20407f01 call memcpy 
+02a3 7048b700 jam 0 ,mem_24g_mode_switch 
+02a4 6800c8ba fetch 1 ,mem_24g_pair_mode 
+02a5 205a01c2 call p_g24_enable_nodata_timer ,blank 
+02a6 6800c87f fetch 1 ,mem_24g_rxdata_temp + 2 
+02a7 c00082b9 beq 0x01 ,p_g24_data_type1 
+02a8 c00102d8 beq 0x02 ,p_g24_data_type2 
+02a9 c07f8311 beq 0xff ,p_g24_data_attemp 
+02aa 202000e3 branch p_g24_rx_interrupt_clear 
 
 p_g24_receive_packet_parse_pid_crc:
-02a8 20407fe9 call disable_user 
-02a9 6800c879 fetch 1 ,mem_24g_sta_pid 
-02aa 6808c87a fetcht 1 ,mem_24g_last_pid 
-02ab 98467c00 isub temp ,null 
-02ac 2442ffe7 ncall enable_user ,zero 
-02ad 6800c879 fetch 1 ,mem_24g_sta_pid 
-02ae 6000c87a store 1 ,mem_24g_last_pid 
-02af 6801c873 fetch 3 ,mem_24g_sta_crc 
-02b0 6809c876 fetcht 3 ,mem_24g_last_crc 
-02b1 98467c00 isub temp ,null 
-02b2 2442ffe7 ncall enable_user ,zero 
-02b3 6801c873 fetch 3 ,mem_24g_sta_crc 
-02b4 6001c876 store 3 ,mem_24g_last_crc 
-02b5 20600000 rtn 
+02ab 20407fe9 call disable_user 
+02ac 6800c879 fetch 1 ,mem_24g_sta_pid 
+02ad 6808c87a fetcht 1 ,mem_24g_last_pid 
+02ae 98467c00 isub temp ,null 
+02af 2442ffe7 ncall enable_user ,zero 
+02b0 6800c879 fetch 1 ,mem_24g_sta_pid 
+02b1 6000c87a store 1 ,mem_24g_last_pid 
+02b2 6801c873 fetch 3 ,mem_24g_sta_crc 
+02b3 6809c876 fetcht 3 ,mem_24g_last_crc 
+02b4 98467c00 isub temp ,null 
+02b5 2442ffe7 ncall enable_user ,zero 
+02b6 6801c873 fetch 3 ,mem_24g_sta_crc 
+02b7 6001c876 store 3 ,mem_24g_last_crc 
+02b8 20600000 rtn 
 
 p_g24_data_type1:
-02b6 204000a2 call p_g24_ch_timer_reinit 
-02b7 6800c8b0 fetch 1 ,mem_24g_abort_packet 
-02b8 6808c87d fetcht 1 ,mem_24g_rxdata_temp 
-02b9 284ffe03 isolate1 bit_abort ,temp 
-02ba 7920fe00 setflag true ,0 ,pdata 
-02bb 6000c8b0 store 1 ,mem_24g_abort_packet 
-02bc c0008316 beq 1 ,p_g24_data_attemp_mouse_abort 
-02bd 6800c8b9 fetch 1 ,mem_24g_hop_packet 
-02be 6808c87d fetcht 1 ,mem_24g_rxdata_temp 
-02bf 284ffe04 isolate1 bit_hop ,temp 
-02c0 7920fe00 setflag true ,0 ,pdata 
-02c1 6000c8b9 store 1 ,mem_24g_hop_packet 
-02c2 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-02c3 c067831a beq cmd_ota ,p_g24_ota_process 
-02c4 58000001 setarg ms_report_id 
-02c5 60008d54 store 1 ,mem_usb_mouse_data 
-02c6 6803c880 fetch 7 ,mem_24g_rxdata_temp + 3 
-02c7 e0a38000 istore 7 ,contw 
-02c8 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-02c9 245a02cd ncall p_g24_ms_enable_blank_data_forcibly ,blank 
-02ca 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-02cb 205a02d1 call p_g24_ms_disable_blank_data_forcibly ,blank 
-02cc 202031b8 branch g24_data_type1_usbtx_enable 
+02b9 204000a5 call p_g24_ch_timer_reinit 
+02ba 6800c8b0 fetch 1 ,mem_24g_abort_packet 
+02bb 6808c87d fetcht 1 ,mem_24g_rxdata_temp 
+02bc 284ffe03 isolate1 bit_abort ,temp 
+02bd 7920fe00 setflag true ,0 ,pdata 
+02be 6000c8b0 store 1 ,mem_24g_abort_packet 
+02bf c0008319 beq 1 ,p_g24_data_attemp_mouse_abort 
+02c0 6800c8b9 fetch 1 ,mem_24g_hop_packet 
+02c1 6808c87d fetcht 1 ,mem_24g_rxdata_temp 
+02c2 284ffe04 isolate1 bit_hop ,temp 
+02c3 7920fe00 setflag true ,0 ,pdata 
+02c4 6000c8b9 store 1 ,mem_24g_hop_packet 
+02c5 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+02c6 c067831d beq cmd_ota ,p_g24_ota_process 
+02c7 58000001 setarg ms_report_id 
+02c8 60008d54 store 1 ,mem_usb_mouse_data 
+02c9 6803c880 fetch 7 ,mem_24g_rxdata_temp + 3 
+02ca e0a38000 istore 7 ,contw 
+02cb 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+02cc 245a02d0 ncall p_g24_ms_enable_blank_data_forcibly ,blank 
+02cd 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+02ce 205a02d4 call p_g24_ms_disable_blank_data_forcibly ,blank 
+02cf 202031b8 branch g24_data_type1_usbtx_enable 
 
 p_g24_ms_enable_blank_data_forcibly:
-02cd 7048d501 jam 1 ,mem_24g_ms_blank_data_enable 
-02ce 58000180 setarg timer_new_ms_blank_delay 
-02cf d8e0000b arg timer_new_ms_blank ,queue 
-02d0 20207f08 branch timer_init 
+02d0 7048d501 jam 1 ,mem_24g_ms_blank_data_enable 
+02d1 58000180 setarg timer_new_ms_blank_delay 
+02d2 d8e0000b arg timer_new_ms_blank ,queue 
+02d3 20207f08 branch timer_init 
 
 p_g24_ms_disable_blank_data_forcibly:
-02d1 7048d500 jam 0 ,mem_24g_ms_blank_data_enable 
-02d2 58000000 setarg 0 
-02d3 d8e0000b arg timer_new_ms_blank ,queue 
-02d4 20207f08 branch timer_init 
+02d4 7048d500 jam 0 ,mem_24g_ms_blank_data_enable 
+02d5 58000000 setarg 0 
+02d6 d8e0000b arg timer_new_ms_blank ,queue 
+02d7 20207f08 branch timer_init 
 
 p_g24_data_type2:
-02d5 6808c87d fetcht 1 ,mem_24g_rxdata_temp 
-02d6 284ffe03 isolate1 bit_abort ,temp 
-02d7 20208318 branch p_g24_data_attemp_kbd_abort ,true 
-02d8 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-02d9 c00002dc beq 0 ,p_g24_data_type2_data1 
-02da c00182f5 beq 3 ,p_g24_data_type2_data2 
-02db 202000e0 branch p_g24_rx_interrupt_clear 
+02d8 6808c87d fetcht 1 ,mem_24g_rxdata_temp 
+02d9 284ffe03 isolate1 bit_abort ,temp 
+02da 2020831b branch p_g24_data_attemp_kbd_abort ,true 
+02db 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+02dc c00002df beq 0 ,p_g24_data_type2_data1 
+02dd c00182f8 beq 3 ,p_g24_data_type2_data2 
+02de 202000e3 branch p_g24_rx_interrupt_clear 
 
 p_g24_data_type2_data1:
-02dc d8a00d64 arg mem_usb_kb_data ,contw 
-02dd 204002ea call p_g24_data_type2_copy_data1 
-02de 68040d64 fetch 8 ,mem_usb_kb_data 
-02df 245a02ed ncall p_g24_kb_enable_blank_data_forcibly ,blank 
-02e0 68040d64 fetch 8 ,mem_usb_kb_data 
-02e1 205a02f1 call p_g24_kb_disable_blank_data_forcibly ,blank 
-02e2 68040d64 fetch 8 ,mem_usb_kb_data 
-02e3 600448bd store 8 ,mem_24g_kb_data_sta_data 
-02e4 680c48c5 fetcht 8 ,mem_24g_kb_data_last_data 
-02e5 98467c00 isub temp ,null 
-02e6 2442b1ed ncall g24_kb_data_into_ep1_fifo ,zero 
-02e7 680448bd fetch 8 ,mem_24g_kb_data_sta_data 
-02e8 600448c5 store 8 ,mem_24g_kb_data_last_data 
-02e9 202000e0 branch p_g24_rx_interrupt_clear 
+02df d8a00d64 arg mem_usb_kb_data ,contw 
+02e0 204002ed call p_g24_data_type2_copy_data1 
+02e1 68040d64 fetch 8 ,mem_usb_kb_data 
+02e2 245a02f0 ncall p_g24_kb_enable_blank_data_forcibly ,blank 
+02e3 68040d64 fetch 8 ,mem_usb_kb_data 
+02e4 205a02f4 call p_g24_kb_disable_blank_data_forcibly ,blank 
+02e5 68040d64 fetch 8 ,mem_usb_kb_data 
+02e6 600448bd store 8 ,mem_24g_kb_data_sta_data 
+02e7 680c48c5 fetcht 8 ,mem_24g_kb_data_last_data 
+02e8 98467c00 isub temp ,null 
+02e9 2442b1ed ncall g24_kb_data_into_ep1_fifo ,zero 
+02ea 680448bd fetch 8 ,mem_24g_kb_data_sta_data 
+02eb 600448c5 store 8 ,mem_24g_kb_data_last_data 
+02ec 202000e3 branch p_g24_rx_interrupt_clear 
 
 p_g24_data_type2_copy_data1:
-02ea d8c04881 arg mem_24g_rxdata_temp + 4 ,contr 
-02eb df200008 arg 8 ,loopcnt 
-02ec 20207f01 branch memcpy 
+02ed d8c04881 arg mem_24g_rxdata_temp + 4 ,contr 
+02ee df200008 arg 8 ,loopcnt 
+02ef 20207f01 branch memcpy 
 
 p_g24_kb_enable_blank_data_forcibly:
-02ed 7048d301 jam 1 ,mem_24g_kb_blank_data_enable 
-02ee 58000180 setarg timer_new_kb_blank_delay 
-02ef d8e0000e arg timer_new_kb_blank ,queue 
-02f0 20207f08 branch timer_init 
+02f0 7048d301 jam 1 ,mem_24g_kb_blank_data_enable 
+02f1 58000180 setarg timer_new_kb_blank_delay 
+02f2 d8e0000e arg timer_new_kb_blank ,queue 
+02f3 20207f08 branch timer_init 
 
 p_g24_kb_disable_blank_data_forcibly:
-02f1 7048d300 jam 0 ,mem_24g_kb_blank_data_enable 
-02f2 58000000 setarg 0 
-02f3 d8e0000e arg timer_new_kb_blank ,queue 
-02f4 20207f08 branch timer_init 
+02f4 7048d300 jam 0 ,mem_24g_kb_blank_data_enable 
+02f5 58000000 setarg 0 
+02f6 d8e0000e arg timer_new_kb_blank ,queue 
+02f7 20207f08 branch timer_init 
 
 p_g24_data_type2_data2:
-02f5 d8a00d74 arg mem_usb_kb_multikey ,contw 
-02f6 20400303 call p_g24_data_type2_copy_data2 
-02f7 68010d75 fetch 2 ,mem_usb_kb_multikey + 1 
-02f8 245a0306 ncall p_g24_kb_mul_enable_blank_data_forcibly ,blank 
-02f9 68010d75 fetch 2 ,mem_usb_kb_multikey + 1 
-02fa 205a030a call p_g24_kb_mul_disable_blank_data_forcibly ,blank 
-02fb 68018d74 fetch 3 ,mem_usb_kb_multikey 
-02fc 6001c8cd store 3 ,mem_24g_kb_multikey_sta_data 
-02fd 6809c8d0 fetcht 3 ,mem_24g_kb_multikey_last_data 
-02fe 98467c00 isub temp ,null 
-02ff 2442b207 ncall g24_kb_mul_data_into_ep2_fifo ,zero 
-0300 6801c8cd fetch 3 ,mem_24g_kb_multikey_sta_data 
-0301 6001c8d0 store 3 ,mem_24g_kb_multikey_last_data 
-0302 202000e0 branch p_g24_rx_interrupt_clear 
+02f8 d8a00d74 arg mem_usb_kb_multikey ,contw 
+02f9 20400306 call p_g24_data_type2_copy_data2 
+02fa 68010d75 fetch 2 ,mem_usb_kb_multikey + 1 
+02fb 245a0309 ncall p_g24_kb_mul_enable_blank_data_forcibly ,blank 
+02fc 68010d75 fetch 2 ,mem_usb_kb_multikey + 1 
+02fd 205a030d call p_g24_kb_mul_disable_blank_data_forcibly ,blank 
+02fe 68018d74 fetch 3 ,mem_usb_kb_multikey 
+02ff 6001c8cd store 3 ,mem_24g_kb_multikey_sta_data 
+0300 6809c8d0 fetcht 3 ,mem_24g_kb_multikey_last_data 
+0301 98467c00 isub temp ,null 
+0302 2442b207 ncall g24_kb_mul_data_into_ep2_fifo ,zero 
+0303 6801c8cd fetch 3 ,mem_24g_kb_multikey_sta_data 
+0304 6001c8d0 store 3 ,mem_24g_kb_multikey_last_data 
+0305 202000e3 branch p_g24_rx_interrupt_clear 
 
 p_g24_data_type2_copy_data2:
-0303 d8c04880 arg mem_24g_rxdata_temp + 3 ,contr 
-0304 df200003 arg 3 ,loopcnt 
-0305 20207f01 branch memcpy 
+0306 d8c04880 arg mem_24g_rxdata_temp + 3 ,contr 
+0307 df200003 arg 3 ,loopcnt 
+0308 20207f01 branch memcpy 
 
 p_g24_kb_mul_enable_blank_data_forcibly:
-0306 7048d401 jam 1 ,mem_24g_kb_mul_blank_data_enable 
-0307 58000180 setarg timer_new_kb_mul_blank_delay 
-0308 d8e0000c arg timer_new_kb_mul_blank ,queue 
-0309 20207f08 branch timer_init 
+0309 7048d401 jam 1 ,mem_24g_kb_mul_blank_data_enable 
+030a 58000180 setarg timer_new_kb_mul_blank_delay 
+030b d8e0000c arg timer_new_kb_mul_blank ,queue 
+030c 20207f08 branch timer_init 
 
 p_g24_kb_mul_disable_blank_data_forcibly:
-030a 7048d400 jam 0 ,mem_24g_kb_mul_blank_data_enable 
-030b 58000000 setarg 0 
-030c d8e0000c arg timer_new_kb_mul_blank ,queue 
-030d 20207f08 branch timer_init 
+030d 7048d400 jam 0 ,mem_24g_kb_mul_blank_data_enable 
+030e 58000000 setarg 0 
+030f d8e0000c arg timer_new_kb_mul_blank ,queue 
+0310 20207f08 branch timer_init 
 
 p_g24_data_attemp:
-030e 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
-030f c0008312 beq datatype_mouse ,p_g24_data_attemp_mouse 
-0310 c0010314 beq datatype_keyboard ,p_g24_data_attemp_kbd 
-0311 20600000 rtn 
+0311 6800c880 fetch 1 ,mem_24g_rxdata_temp + 3 
+0312 c0008315 beq datatype_mouse ,p_g24_data_attemp_mouse 
+0313 c0010317 beq datatype_keyboard ,p_g24_data_attemp_kbd 
+0314 20600000 rtn 
 
 p_g24_data_attemp_mouse:
-0312 68024881 fetch 4 ,mem_24g_rxdata_temp + 4 
-0313 2020011d branch p_g24_store_mouse_addr 
+0315 68024881 fetch 4 ,mem_24g_rxdata_temp + 4 
+0316 20200120 branch p_g24_store_mouse_addr 
 
 p_g24_data_attemp_kbd:
-0314 68024881 fetch 4 ,mem_24g_rxdata_temp + 4 
-0315 20200120 branch p_g24_store_kbd_addr 
+0317 68024881 fetch 4 ,mem_24g_rxdata_temp + 4 
+0318 20200123 branch p_g24_store_kbd_addr 
 
 p_g24_data_attemp_mouse_abort:
-0316 68024887 fetch 4 ,mem_24g_rxdata_temp + 10 
-0317 2020011d branch p_g24_store_mouse_addr 
+0319 68024887 fetch 4 ,mem_24g_rxdata_temp + 10 
+031a 20200120 branch p_g24_store_mouse_addr 
 
 p_g24_data_attemp_kbd_abort:
-0318 68024887 fetch 4 ,mem_24g_rxdata_temp + 10 
-0319 20200120 branch p_g24_store_kbd_addr 
+031b 68024887 fetch 4 ,mem_24g_rxdata_temp + 10 
+031c 20200123 branch p_g24_store_kbd_addr 
 
 p_g24_ota_process:
-031a 68014882 fetch 2 ,mem_24g_rxdata_temp + 5 
-031b 680948eb fetcht 2 ,mem_24g_ota_sta_pid 
-031c 98467c00 isub temp ,null 
-031d 2022831f branch p_g24_ota_next_pac ,zero 
-031e 20600000 rtn 
+031d 68014882 fetch 2 ,mem_24g_rxdata_temp + 5 
+031e 680948eb fetcht 2 ,mem_24g_ota_sta_pid 
+031f 98467c00 isub temp ,null 
+0320 20228322 branch p_g24_ota_next_pac ,zero 
+0321 20600000 rtn 
 
 p_g24_ota_next_pac:
-031f 6800c881 fetch 1 ,mem_24g_rxdata_temp + 4 
-0320 c061032c beq cmd_ota_exit ,p_g24_ota_exit_process 
-0321 6800c900 fetch 1 ,mem_queue_ele_num 
-0322 207a0000 rtn blank 
-0323 58004901 setarg mem_queue_read 
-0324 20400131 call p_g24_queue_increase 
-0325 6800c900 fetch 1 ,mem_queue_ele_num 
-0326 1fe0ffff increase -1 ,pdata 
-0327 6000c900 store 1 ,mem_queue_ele_num 
-0328 6800c881 fetch 1 ,mem_24g_rxdata_temp + 4 
-0329 c0608172 beq cmd_ota_data ,p_user_defined_queue_buff_free 
-032a c061032c beq cmd_ota_exit ,p_g24_ota_exit_process 
-032b 20600000 rtn 
+0322 6800c881 fetch 1 ,mem_24g_rxdata_temp + 4 
+0323 c061032f beq cmd_ota_exit ,p_g24_ota_exit_process 
+0324 6800c900 fetch 1 ,mem_queue_ele_num 
+0325 207a0000 rtn blank 
+0326 58004901 setarg mem_queue_read 
+0327 20400134 call p_g24_queue_increase 
+0328 6800c900 fetch 1 ,mem_queue_ele_num 
+0329 1fe0ffff increase -1 ,pdata 
+032a 6000c900 store 1 ,mem_queue_ele_num 
+032b 6800c881 fetch 1 ,mem_24g_rxdata_temp + 4 
+032c c0608175 beq cmd_ota_data ,p_user_defined_queue_buff_free 
+032d c061032f beq cmd_ota_exit ,p_g24_ota_exit_process 
+032e 20600000 rtn 
 
 p_g24_ota_exit_process:
-032c 58000000 setarg 0 
-032d 600148eb store 2 ,mem_24g_ota_sta_pid 
-032e 6000c8b8 store 1 ,mem_24g_ackpayload_enable 
-032f 20400122 call p_g24_queue_init 
-0330 6800c884 fetch 1 ,mem_24g_rxdata_temp + 7 
-0331 c02a8334 beq ota_sta_success ,p_g24_ota_exit_success 
-0332 c0550336 beq ota_sta_fail ,p_g24_ota_exit_fail 
-0333 20600000 rtn 
+032f 58000000 setarg 0 
+0330 600148eb store 2 ,mem_24g_ota_sta_pid 
+0331 6000c8b8 store 1 ,mem_24g_ackpayload_enable 
+0332 20400125 call p_g24_queue_init 
+0333 6800c884 fetch 1 ,mem_24g_rxdata_temp + 7 
+0334 c02a8337 beq ota_sta_success ,p_g24_ota_exit_success 
+0335 c0550339 beq ota_sta_fail ,p_g24_ota_exit_fail 
+0336 20600000 rtn 
 
 p_g24_ota_exit_success:
-0334 700cf702 jam 2 ,mem_usb0_get_report_data + 1 
-0335 2020303f branch usb0_data_ready_report_set1 
+0337 700cf702 jam 2 ,mem_usb0_get_report_data + 1 
+0338 2020303f branch usb0_data_ready_report_set1 
 
 p_g24_ota_exit_fail:
-0336 700cf703 jam 3 ,mem_usb0_get_report_data + 1 
-0337 2020303f branch usb0_data_ready_report_set1 
+0339 700cf703 jam 3 ,mem_usb0_get_report_data + 1 
+033a 2020303f branch usb0_data_ready_report_set1 
 
 p_set_freq_tx:
-0338 60088017 storet 1 ,mem_last_freq 
-0339 1840a200 add temp ,0 ,rega 
-033a 20402981 call rf_write_freq 
-033b 58000500 setarg param_pll_setup 
-033c 20402a8f call sleep 
+033b 60088017 storet 1 ,mem_last_freq 
+033c 1840a200 add temp ,0 ,rega 
+033d 20402981 call rf_write_freq 
+033e 58000500 setarg param_pll_setup 
+033f 20402a8f call sleep 
 
 p_rf_tx_enable:
-033d 70890601 jam 0x1 ,rfen_adc 
-033e 7089003c jam 0x3c ,rfen_rx 
-033f 708901e0 jam 0xe0 ,rfen_tx 
-0340 2000000a nop 10 
-0341 70890201 jam 0x01 ,rfen_mdm 
-0342 7089023d jam 0x3d ,rfen_mdm 
+0340 70890601 jam 0x1 ,rfen_adc 
+0341 7089003c jam 0x3c ,rfen_rx 
+0342 708901e0 jam 0xe0 ,rfen_tx 
 0343 2000000a nop 10 
-0344 708903b7 jam 0xb7 ,rfen_sn 
-0345 2000000a nop 10 
-0346 7089027d jam 0x7d ,rfen_mdm 
-0347 6800c1de fetch 1 ,mem_tx_power 
-0348 c0020351 beq tx_power_f5db ,p_set_tx_power_f5db 
-0349 2020034a branch p_set_tx_power_5db 
+0344 70890201 jam 0x01 ,rfen_mdm 
+0345 7089023d jam 0x3d ,rfen_mdm 
+0346 2000000a nop 10 
+0347 708903b7 jam 0xb7 ,rfen_sn 
+0348 2000000a nop 10 
+0349 7089027d jam 0x7d ,rfen_mdm 
+034a 6800c1de fetch 1 ,mem_tx_power 
+034b c0020354 beq tx_power_f5db ,p_set_tx_power_f5db 
+034c 2020034d branch p_set_tx_power_5db 
 
 p_set_tx_power_5db:
-034a 70894bba jam 0xba ,0x894b 
-034b 708955d0 jam 0xd0 ,0x8955 
-034c 708956e0 jam 0xe0 ,0x8956 
-034d 70895788 jam 0x88 ,0x8957 
-034e 7089583c jam 0x3c ,0x8958 
-034f 70895910 jam 0x10 ,0x8959 
-0350 20202953 branch set_tx_power_5db 
+034d 70894bba jam 0xba ,0x894b 
+034e 708955d0 jam 0xd0 ,0x8955 
+034f 708956e0 jam 0xe0 ,0x8956 
+0350 70895788 jam 0x88 ,0x8957 
+0351 7089583c jam 0x3c ,0x8958 
+0352 70895910 jam 0x10 ,0x8959 
+0353 20202953 branch set_tx_power_5db 
 
 p_set_tx_power_f5db:
-0351 70894bba jam 0xba ,0x894b 
-0352 708955d0 jam 0xd0 ,0x8955 
-0353 708956c0 jam 0xc0 ,0x8956 
-0354 70895788 jam 0x88 ,0x8957 
-0355 7089586c jam 0x6c ,0x8958 
-0356 70895910 jam 0x10 ,0x8959 
-0357 2020295b branch set_tx_power_f5db 
+0354 70894bba jam 0xba ,0x894b 
+0355 708955d0 jam 0xd0 ,0x8955 
+0356 708956c0 jam 0xc0 ,0x8956 
+0357 70895788 jam 0x88 ,0x8957 
+0358 7089586c jam 0x6c ,0x8958 
+0359 70895910 jam 0x10 ,0x8959 
+035a 2020295b branch set_tx_power_f5db 
 
 p_soft_reset:
-0358 20800000 clear_stack 
-0359 68108043 hfetch 1 ,core_config 
-035a 79207e03 set1 watchdog_bit ,pdata 
-035b 60108043 hstore 1 ,core_config 
-035c 20202003 branch soft_reset + 2 
+035b 20800000 clear_stack 
+035c 68108043 hfetch 1 ,core_config 
+035d 79207e03 set1 watchdog_bit ,pdata 
+035e 60108043 hstore 1 ,core_config 
+035f 20202003 branch soft_reset + 2 
 
 p_shutdown_radio:
-035d 18002a08 force 8 ,radio_ctrl 
-035e 202028fa branch shutdown_radio + 1 
+0360 18002a08 force 8 ,radio_ctrl 
+0361 202028fa branch shutdown_radio + 1 
 
 p_rssi_noise:
-035f 204029bb call save_rssi 
-0360 207a0000 rtn blank 
-0361 6808c8f0 fetcht 1 ,mem_rssi_noise_index 
-0362 da200d9e arg mem_rssi_noise_buffer ,rega 
-0363 20400366 call p_rssi_store 
-0364 6008c8f0 storet 1 ,mem_rssi_noise_index 
-0365 20600000 rtn 
+0362 204029bb call save_rssi 
+0363 207a0000 rtn blank 
+0364 6808c8f0 fetcht 1 ,mem_rssi_noise_index 
+0365 da200d9e arg mem_rssi_noise_buffer ,rega 
+0366 20400369 call p_rssi_store 
+0367 6008c8f0 storet 1 ,mem_rssi_noise_index 
+0368 20600000 rtn 
 
 p_rssi_store:
-0366 1a227e00 copy rega ,pdata 
-0367 98408a00 iadd temp ,contw 
-0368 68008018 fetch 1 ,mem_rssi 
-0369 e0a08000 istore 1 ,contw 
-036a 18408401 increase 1 ,temp 
-036b 184104ff and_into rssi_buf_len_noise ,temp 
-036c 20600000 rtn 
+0369 1a227e00 copy rega ,pdata 
+036a 98408a00 iadd temp ,contw 
+036b 68008018 fetch 1 ,mem_rssi 
+036c e0a08000 istore 1 ,contw 
+036d 18408401 increase 1 ,temp 
+036e 184104ff and_into rssi_buf_len_noise ,temp 
+036f 20600000 rtn 
 
 p_rssi_average:
-036d d8400000 arg 0 ,temp 
-036e df200100 arg rssi_buf_len_noise + 1 ,loopcnt 
-036f 1a220c00 copy rega ,contr 
-0370 20202e64 branch rssi_average_loop 
-0371 20600000 rtn 
+0370 d8400000 arg 0 ,temp 
+0371 df200100 arg rssi_buf_len_noise + 1 ,loopcnt 
+0372 1a220c00 copy rega ,contr 
+0373 20202e64 branch rssi_average_loop 
+0374 20600000 rtn 
 
 p_g24_update_addr_and_synccrc8:
-0372 6002485e store 4 ,mem_24g_addr 
+0375 6002485e store 4 ,mem_24g_addr 
 
 p_g24_syncword_crc8:
-0373 da200000 arg 0 ,rega 
-0374 df200004 arg 4 ,loopcnt 
-0375 d8c0485e arg mem_24g_addr ,contr 
+0376 da200000 arg 0 ,rega 
+0377 df200004 arg 4 ,loopcnt 
+0378 d8c0485e arg mem_24g_addr ,contr 
 
 p_g24_syncword_crc8_loop:
-0376 e8c08000 ifetch 1 ,contr 
-0377 9a20a200 iadd rega ,rega 
-0378 c2000376 loop p_g24_syncword_crc8_loop 
-0379 1a227e00 copy rega ,pdata 
-037a 600148e7 store 2 ,mem_24g_syncword 
-037b 6800c8e7 fetch 1 ,mem_24g_syncword 
-037c 6808c8e8 fetcht 1 ,mem_24g_syncword + 1 
-037d 9840fe00 iadd temp ,pdata 
-037e 6000c8e9 store 1 ,mem_24g_syncword_crc8 
-037f 20600000 rtn 
+0379 e8c08000 ifetch 1 ,contr 
+037a 9a20a200 iadd rega ,rega 
+037b c2000379 loop p_g24_syncword_crc8_loop 
+037c 1a227e00 copy rega ,pdata 
+037d 600148e7 store 2 ,mem_24g_syncword 
+037e 6800c8e7 fetch 1 ,mem_24g_syncword 
+037f 6808c8e8 fetcht 1 ,mem_24g_syncword + 1 
+0380 9840fe00 iadd temp ,pdata 
+0381 6000c8e9 store 1 ,mem_24g_syncword_crc8 
+0382 20600000 rtn 
 
 p_g24_transmit_prep:
-0380 6800c836 fetch 1 ,mem_24g_datalen 
-0381 1fe0fe02 increase 2 ,pdata 
-0382 6000c838 store 1 ,mem_24g_txlen 
-0383 6800c837 fetch 1 ,mem_24g_data_type 
-0384 6000c7f2 store 1 ,mem_24g_txpayload 
-0385 6800c836 fetch 1 ,mem_24g_datalen 
-0386 1fe9fe00 lshift3 pdata ,pdata 
-0387 6808c835 fetcht 1 ,mem_24g_pid 
-0388 18410403 and temp ,0x03 ,temp 
-0389 18438400 lshift temp ,temp 
-038a 9841fe00 ior temp ,pdata 
-038b 6808c872 fetcht 1 ,mem_24g_no_ack 
-038c 9840fe00 iadd temp ,pdata 
-038d e0a08000 istore 1 ,contw 
-038e 6800c836 fetch 1 ,mem_24g_datalen 
-038f 98007200 iforce loopcnt 
-0390 d8c047d2 arg mem_24g_txbuf ,contr 
-0391 20207f01 branch memcpy 
+0383 6800c836 fetch 1 ,mem_24g_datalen 
+0384 1fe0fe02 increase 2 ,pdata 
+0385 6000c838 store 1 ,mem_24g_txlen 
+0386 6800c837 fetch 1 ,mem_24g_data_type 
+0387 6000c7f2 store 1 ,mem_24g_txpayload 
+0388 6800c836 fetch 1 ,mem_24g_datalen 
+0389 1fe9fe00 lshift3 pdata ,pdata 
+038a 6808c835 fetcht 1 ,mem_24g_pid 
+038b 18410403 and temp ,0x03 ,temp 
+038c 18438400 lshift temp ,temp 
+038d 9841fe00 ior temp ,pdata 
+038e 6808c872 fetcht 1 ,mem_24g_no_ack 
+038f 9840fe00 iadd temp ,pdata 
+0390 e0a08000 istore 1 ,contw 
+0391 6800c836 fetch 1 ,mem_24g_datalen 
+0392 98007200 iforce loopcnt 
+0393 d8c047d2 arg mem_24g_txbuf ,contr 
+0394 20207f01 branch memcpy 
 
 p_g24_ch:
-0392 6808c841 fetcht 1 ,mem_24g_current_ch_number 
-0393 20400396 call p_g24_ch_map_size 
-0394 6008c841 storet 1 ,mem_24g_current_ch_number 
-0395 20600000 rtn 
+0395 6808c841 fetcht 1 ,mem_24g_current_ch_number 
+0396 20400399 call p_g24_ch_map_size 
+0397 6008c841 storet 1 ,mem_24g_current_ch_number 
+0398 20600000 rtn 
 
 p_g24_ch_map_size:
-0396 2040039a call p_g24_ch_calc 
-0397 18408401 increase 1 ,temp 
-0398 18410403 and_into 3 ,temp 
-0399 20600000 rtn 
+0399 2040039d call p_g24_ch_calc 
+039a 18408401 increase 1 ,temp 
+039b 18410403 and_into 3 ,temp 
+039c 20600000 rtn 
 
 p_g24_ch_calc:
-039a 6800c85e fetch 1 ,mem_24g_addr 
-039b 1fe17e03 and_into 0x03 ,pdata 
-039c 1fefa204 mul32 pdata ,4 ,rega 
-039d 58004847 setarg mem_24g_ch_map1 
-039e 9a20fe00 iadd rega ,pdata 
-039f 98408c00 iadd temp ,contr 
-03a0 e8c08000 ifetch 1 ,contr 
-03a1 6000c840 store 1 ,mem_24g_ch 
-03a2 20600000 rtn 
+039d 6800c85e fetch 1 ,mem_24g_addr 
+039e 1fe17e03 and_into 0x03 ,pdata 
+039f 1fefa204 mul32 pdata ,4 ,rega 
+03a0 58004847 setarg mem_24g_ch_map1 
+03a1 9a20fe00 iadd rega ,pdata 
+03a2 98408c00 iadd temp ,contr 
+03a3 e8c08000 ifetch 1 ,contr 
+03a4 6000c840 store 1 ,mem_24g_ch 
+03a5 20600000 rtn 
 
 p_g24_prep:
-03a3 7844fc00 disable enable_crc 
-03a4 7843fc00 disable enable_white 
-03a5 58555555 setarg 0x555555 
-03a6 98001e00 iforce crc24_init 
-03a7 6800c840 fetch 1 ,mem_24g_ch 
-03a8 1fed8400 reverse pdata ,temp 
-03a9 79200401 set1 1 ,temp 
-03aa 18431c00 rshift temp ,white_init 
-03ab 20600000 rtn 
+03a6 7844fc00 disable enable_crc 
+03a7 7843fc00 disable enable_white 
+03a8 58555555 setarg 0x555555 
+03a9 98001e00 iforce crc24_init 
+03aa 6800c840 fetch 1 ,mem_24g_ch 
+03ab 1fed8400 reverse pdata ,temp 
+03ac 79200401 set1 1 ,temp 
+03ad 18431c00 rshift temp ,white_init 
+03ae 20600000 rtn 
 
 p_g24_receive_packet:
-03ac 204053c4 call le_enable 
-03ad 6802485e fetch 4 ,mem_24g_addr 
-03ae 98001200 iforce access 
-03af 20402918 call set_sync_on 
-03b0 6808c840 fetcht 1 ,mem_24g_ch 
-03b1 2040291f call set_freq_rx 
-03b2 58000500 setarg param_pll_setup 
-03b3 20402a8f call sleep 
-03b4 20402924 call rf_rx_enable 
+03af 204053c4 call le_enable 
+03b0 6802485e fetch 4 ,mem_24g_addr 
+03b1 98001200 iforce access 
+03b2 20402918 call set_sync_on 
+03b3 6808c840 fetcht 1 ,mem_24g_ch 
+03b4 2040291f call set_freq_rx 
+03b5 58000500 setarg param_pll_setup 
+03b6 20402a8f call sleep 
+03b7 20402924 call rf_rx_enable 
 
 p_g24_receive_rxon:
-03b5 204003a3 call p_g24_prep 
-03b6 7857fc00 disable user3 
-03b7 7826fc00 enable decode_fec0 
-03b8 7830fc00 enable is_rx 
-03b9 78507c00 disable is_tx 
-03ba 78287c00 enable swfine 
-03bb 68014839 fetch 2 ,mem_24g_rx_window 
-03bc 98003600 iforce stop_watch 
-03bd 37c18400 correlate null ,timeout 
-03be 242c03f1 nbranch p_g24_sync_timeout ,sync 
-03bf 7846fc00 disable decode_fec0 
-03c0 7825fc00 enable decode_fec1 
-03c1 7823fc00 enable enable_white 
-03c2 7824fc00 enable enable_crc 
-03c3 09800008 parse demod ,bucket ,8 
-03c4 19897e00 rshift3 pwindow ,pdata 
-03c5 6000c8ea store 1 ,mem_24g_get_syncword_crc8 
-03c6 6808c8e9 fetcht 1 ,mem_24g_syncword_crc8 
-03c7 98467c00 isub temp ,null 
-03c8 242283ee nbranch p_g24_end_of_packet ,zero 
-03c9 09800008 parse demod ,bucket ,8 
-03ca 19897e00 rshift3 pwindow ,pdata 
-03cb 6000c7b0 store 1 ,mem_24g_rxbuf 
-03cc 6800c87c fetch 1 ,mem_24g_mode 
-03cd 1fe67c02 sub pdata ,rx_24g ,null 
-03ce 202283d3 branch p_g24_receive_skip ,zero 
-03cf 6800c7b0 fetch 1 ,mem_24g_rxbuf 
-03d0 6808c837 fetcht 1 ,mem_24g_data_type 
-03d1 a8400e00 icompare bits_data ,temp 
-03d2 242083ee nbranch p_g24_end_of_packet ,true 
+03b8 204003a6 call p_g24_prep 
+03b9 7857fc00 disable user3 
+03ba 7826fc00 enable decode_fec0 
+03bb 7830fc00 enable is_rx 
+03bc 78507c00 disable is_tx 
+03bd 78287c00 enable swfine 
+03be 68014839 fetch 2 ,mem_24g_rx_window 
+03bf 98003600 iforce stop_watch 
+03c0 37c18400 correlate null ,timeout 
+03c1 242c03f4 nbranch p_g24_sync_timeout ,sync 
+03c2 7846fc00 disable decode_fec0 
+03c3 7825fc00 enable decode_fec1 
+03c4 7823fc00 enable enable_white 
+03c5 7824fc00 enable enable_crc 
+03c6 09800008 parse demod ,bucket ,8 
+03c7 19897e00 rshift3 pwindow ,pdata 
+03c8 6000c8ea store 1 ,mem_24g_get_syncword_crc8 
+03c9 6808c8e9 fetcht 1 ,mem_24g_syncword_crc8 
+03ca 98467c00 isub temp ,null 
+03cb 242283f1 nbranch p_g24_end_of_packet ,zero 
+03cc 09800008 parse demod ,bucket ,8 
+03cd 19897e00 rshift3 pwindow ,pdata 
+03ce 6000c7b0 store 1 ,mem_24g_rxbuf 
+03cf 6800c87c fetch 1 ,mem_24g_mode 
+03d0 1fe67c02 sub pdata ,rx_24g ,null 
+03d1 202283d6 branch p_g24_receive_skip ,zero 
+03d2 6800c7b0 fetch 1 ,mem_24g_rxbuf 
+03d3 6808c837 fetcht 1 ,mem_24g_data_type 
+03d4 a8400e00 icompare bits_data ,temp 
+03d5 242083f1 nbranch p_g24_end_of_packet ,true 
 
 p_g24_receive_skip:
-03d3 09800008 parse demod ,bucket ,8 
-03d4 19897e00 rshift3 pwindow ,pdata 
-03d5 e0a08000 istore 1 ,contw 
-03d6 1fe97e00 rshift3 pdata ,pdata 
-03d7 1fe1721f and pdata ,0x1f ,loopcnt 
-03d8 202283dd branch p_g24rx_nopayload ,zero 
+03d6 09800008 parse demod ,bucket ,8 
+03d7 19897e00 rshift3 pwindow ,pdata 
+03d8 e0a08000 istore 1 ,contw 
+03d9 1fe97e00 rshift3 pdata ,pdata 
+03da 1fe1721f and pdata ,0x1f ,loopcnt 
+03db 202283e0 branch p_g24rx_nopayload ,zero 
 
 p_g24rx_loop:
-03d9 09800008 parse demod ,bucket ,8 
-03da 19897e00 rshift3 pwindow ,pdata 
-03db e0a08000 istore 1 ,contw 
-03dc c20003d9 loop p_g24rx_loop 
+03dc 09800008 parse demod ,bucket ,8 
+03dd 19897e00 rshift3 pwindow ,pdata 
+03de e0a08000 istore 1 ,contw 
+03df c20003dc loop p_g24rx_loop 
 
 p_g24rx_nopayload:
-03dd 09800018 parse demod ,bucket ,24 
-03de 78287c00 enable swfine 
-03df db600664 arg param_sifs ,stop_watch 
-03e0 1fef7e00 rshift32 pdata ,pdata 
-03e1 1ff17e00 rshift16 pdata ,pdata 
-03e2 e0a18000 istore 3 ,contw 
-03e3 7845fc00 disable decode_fec1 
-03e4 204029bb call save_rssi 
-03e5 202303ee branch p_g24_end_of_packet ,crc_failed 
-03e6 7837fc00 enable user3 
-03e7 68008017 fetch 1 ,mem_last_freq 
-03e8 1fe0a200 add pdata ,0 ,rega 
-03e9 20402981 call rf_write_freq 
-03ea 7846fc00 disable decode_fec0 
-03eb 20402918 call set_sync_on 
-03ec 20600000 rtn 
-03ed 20600000 rtn 
+03e0 09800018 parse demod ,bucket ,24 
+03e1 78287c00 enable swfine 
+03e2 db600664 arg param_sifs ,stop_watch 
+03e3 1fef7e00 rshift32 pdata ,pdata 
+03e4 1ff17e00 rshift16 pdata ,pdata 
+03e5 e0a18000 istore 3 ,contw 
+03e6 7845fc00 disable decode_fec1 
+03e7 204029bb call save_rssi 
+03e8 202303f1 branch p_g24_end_of_packet ,crc_failed 
+03e9 7837fc00 enable user3 
+03ea 68008017 fetch 1 ,mem_last_freq 
+03eb 1fe0a200 add pdata ,0 ,rega 
+03ec 20402981 call rf_write_freq 
+03ed 7846fc00 disable decode_fec0 
+03ee 20402918 call set_sync_on 
+03ef 20600000 rtn 
+03f0 20600000 rtn 
 
 p_g24_end_of_packet:
-03ee 784dfc00 disable encode_fec1 
-03ef 7845fc00 disable decode_fec1 
-03f0 2020264d branch end_of_packet 
+03f1 784dfc00 disable encode_fec1 
+03f2 7845fc00 disable decode_fec1 
+03f3 2020264d branch end_of_packet 
 
 p_g24_sync_timeout:
-03f1 2040035f call p_rssi_noise 
-03f2 202003ee branch p_g24_end_of_packet 
+03f4 20400362 call p_rssi_noise 
+03f5 202003f1 branch p_g24_end_of_packet 
 
 p_g24_set_freq_tx:
-03f3 20402918 call set_sync_on 
-03f4 6808c840 fetcht 1 ,mem_24g_ch 
-03f5 20202933 branch set_freq_tx 
+03f6 20402918 call set_sync_on 
+03f7 6808c840 fetcht 1 ,mem_24g_ch 
+03f8 20202933 branch set_freq_tx 
 
 p_g24_transmit:
-03f6 204053c4 call le_enable 
-03f7 6802485e fetch 4 ,mem_24g_addr 
-03f8 98001200 iforce access 
-03f9 204003a3 call p_g24_prep 
-03fa 204003f3 call p_g24_set_freq_tx 
-03fb 79202a00 set1 txgfsk ,radio_ctrl 
-03fc 782efc00 enable encode_fec0 
-03fd 78307c00 enable is_tx 
-03fe 7850fc00 disable is_rx 
-03ff 19317e00 rshift16 access ,pdata 
-0400 1fecfe00 rshift8 pdata ,pdata 
-0401 1ff1fe00 rshift4 pdata ,pdata 
-0402 08008628 inject mod ,40 
-0403 784efc00 disable encode_fec0 
-0404 782dfc00 enable encode_fec1 
-0405 7823fc00 enable enable_white 
-0406 7824fc00 enable enable_crc 
-0407 6800c8e9 fetch 1 ,mem_24g_syncword_crc8 
-0408 08008608 inject mod ,8 
-0409 6800c838 fetch 1 ,mem_24g_txlen 
-040a 98007200 iforce loopcnt 
-040b d8c047f2 arg mem_24g_txpayload ,contr 
+03f9 204053c4 call le_enable 
+03fa 6802485e fetch 4 ,mem_24g_addr 
+03fb 98001200 iforce access 
+03fc 204003a6 call p_g24_prep 
+03fd 204003f6 call p_g24_set_freq_tx 
+03fe 79202a00 set1 txgfsk ,radio_ctrl 
+03ff 782efc00 enable encode_fec0 
+0400 78307c00 enable is_tx 
+0401 7850fc00 disable is_rx 
+0402 19317e00 rshift16 access ,pdata 
+0403 1fecfe00 rshift8 pdata ,pdata 
+0404 1ff1fe00 rshift4 pdata ,pdata 
+0405 08008628 inject mod ,40 
+0406 784efc00 disable encode_fec0 
+0407 782dfc00 enable encode_fec1 
+0408 7823fc00 enable enable_white 
+0409 7824fc00 enable enable_crc 
+040a 6800c8e9 fetch 1 ,mem_24g_syncword_crc8 
+040b 08008608 inject mod ,8 
+040c 6800c838 fetch 1 ,mem_24g_txlen 
+040d 98007200 iforce loopcnt 
+040e d8c047f2 arg mem_24g_txpayload ,contr 
 
 p_g24tr_loop:
-040c e8c08000 ifetch 1 ,contr 
-040d 08008608 inject mod ,8 
-040e c200040c loop p_g24tr_loop 
-040f 6800c8ee fetch 1 ,mem_rssi_hex 
+040f e8c08000 ifetch 1 ,contr 
 0410 08008608 inject mod ,8 
-0411 78247c00 enable enable_parity 
-0412 08008618 inject mod ,24 
-0413 78447c00 disable enable_parity 
-0414 37d38200 until null ,tx_clear 
-0415 20000064 nop 100 
-0416 784efc00 disable encode_fec0 
-0417 784dfc00 disable encode_fec1 
-0418 20600000 rtn 
+0411 c200040f loop p_g24tr_loop 
+0412 6800c8ee fetch 1 ,mem_rssi_hex 
+0413 08008608 inject mod ,8 
+0414 78247c00 enable enable_parity 
+0415 08008618 inject mod ,24 
+0416 78447c00 disable enable_parity 
+0417 37d38200 until null ,tx_clear 
+0418 20000064 nop 100 
+0419 784efc00 disable encode_fec0 
+041a 784dfc00 disable encode_fec1 
+041b 20600000 rtn 
 org 0x2000
 
 start:
Index: program/patch.prog
===================================================================
--- /branch/USB/dongle/program/patch.prog	(revision 1236)
+++ /branch/USB/dongle/program/patch.prog	(working copy)
@@ -50,7 +50,7 @@
 
 p_usb_hid_icon:
 	fetch 1,mem_dongle_kb_bind_flag
-	rtneq DONGLE_KB_BIND_SUCCESS
+	beq DONGLE_KB_BIND_SUCCESS,p_new_kb_hidreportdesc
 	//hid report map
 	setarg mem_hidreportdesc_kb_temp
 	store 2,mem_hidreportdesc_kb
@@ -61,6 +61,11 @@
 	jam 0xa9,mem_confdesc+51//hid_descriptor--mouse length
 	rtn
 
+p_new_kb_hidreportdesc:
+	setarg mem_hidreportdesc_kb_new_temp
+	store 2,mem_hidreportdesc_kb
+	rtn
+
 p_usb_status1:
 	jam 0x11,core_usb_status
 	hfetch 1,core_usb_ep_len
Index: sched/usb.dat
===================================================================
--- /branch/USB/dongle/sched/usb.dat	(revision 1236)
+++ /branch/USB/dongle/sched/usb.dat	(working copy)
@@ -56,6 +56,44 @@
 81 00  	#Input (Data,Ary,Abs)
 c0 	 	#END_COLLECTION
 
+mem_hidreportdesc_kb_new_temp:
+#===============new keyboard desc====================
+3f
+05 01
+09 06
+a1 01
+75 01 
+95 08
+05 07
+19 e0 
+29 e7 
+15 00
+25 01
+81 02
+95 01 
+75 08
+81 03 
+95 05
+75 01
+05 08
+19 01
+29 05  
+91 02 
+95 01  
+75 03  
+91 03
+95 06 
+75 08 
+15 00 
+25 ff
+05 07
+19 00
+29 ff 
+81 00
+c0
+
+
+
 mem_hidreportdesc_m_temp:
 #mouse hid
 a9				# total length
