Index: format/app_dongle.format
===================================================================
--- /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/format/app_dongle.format	(revision 3583)
+++ /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/format/app_dongle.format	(working copy)
@@ -45,21 +45,39 @@
 220 mem_usb_ep2_config
 1 mem_24g_ackpayload_enable_temp
 65 mem_usb_device_info_data
-65 mem_usb_http_data
 65 mem_usb_dpi_data
 65 mem_usb_rf_state_data
 1 mem_usb_rf_state_report_flag
 1 mem_usb_rf_state_report_flag1
-
 8 mem_usb_ep2_fifo
 1 mem_dongle_freq_hop_flag
-1 mem_usb_http_data_step
-1 mem_usb_tx_data_flag
+//http
 3 mem_usb_win_cmd
 3 mem_usb_mac_cmd
-3 mem_usb_kb_shift
+3 mem_usb_kb_enter
+1 mem_usb_website_wait_count
+1 mem_usb_website_step
+1 mem_usb_website_shift_flag
+1 mem_usb_website_release_flag
+2 mem_usb_website_ptr
+40 mem_usb_website_info
+22 mem_usb_website_info_sign
+)
 
+(
+0 WEBSITE_WIN
+1 WEBSITE_R_SPACE_RELEASE
+2 WEBSITE_WIN_RELEASE
+3 WEBSITE_WAIT
+4 WEBSITE_DATA
+5 WEBSITE_ENTER_1
+6 WEBSITE_ENTER_RELEASE_1
+7 WEBSITE_ENTER_2
+8 WEBSITE_ENTER_RELEASE_2
+0 WEBSITE_DONE
+15 WEBSITE_WAIT_COUNT
 )
+
 (
 0xA0 REPORT_ID_AUDIO_DATA_IN
 0xA1 REPORT_ID_DATA_IN
Index: output/eeprom.dat
===================================================================
--- /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/output/eeprom.dat	(revision 3583)
+++ /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/output/eeprom.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-26
+66
 10
 c2
 84
@@ -15,47 +15,47 @@
 c0
 01
 00
-6e
+6d
 c0
 08
 80
-77
+76
 c0
 0a
 03
-8b
+9c
 c0
 0a
 81
-11
+10
 c0
 0c
 01
-1f
+1e
 c0
 0c
 80
-c5
+c4
 c0
 0d
 00
-85
+84
 c0
 1b
-83
-f5
+84
+07
 c0
 1c
 00
-e4
+e3
 c0
 1c
 80
-e0
+df
 c0
 1e
 83
-e4
+f5
 c0
 1f
 00
@@ -63,27 +63,27 @@
 c0
 62
 80
-dd
+dc
 c0
 6d
 03
-5c
+6d
 c0
 6e
 03
-6c
+7d
 c0
 7f
 01
-2a
+29
 c0
 7f
 81
-99
+98
 c0
 7e
 81
-26
+25
 20
 20
 23
@@ -91,43 +91,43 @@
 c0
 00
 01
-c0
+bf
 c0
 01
 01
-ff
+fe
 c0
 03
 02
-1f
+1e
 c0
 1c
 83
-a7
+b8
 c0
 26
 83
-ab
+bc
 c0
 37
-83
-ff
+84
+0f
 c0
 41
 03
-ad
+be
 c0
 42
 02
-30
+2f
 c0
 44
 03
-cc
+dd
 c0
 45
 03
-d9
+ea
 c1
 46
 80
@@ -175,7 +175,7 @@
 20
 40
 00
-6b
+6a
 20
 40
 00
@@ -223,46 +223,46 @@
 6f
 e0
 c9
-46
+05
 c1
 00
 80
 00
 70
 49
-46
+05
 01
 70
 49
-45
+04
 00
 20
 20
 00
 3b
 70
-49
-04
+48
+c3
 40
 70
-49
-05
+48
+c4
 a1
 70
-49
-06
+48
+c5
 02
 70
-49
-07
+48
+c6
 04
 70
-49
-08
+48
+c7
 01
 70
-49
-09
+48
+c8
 00
 70
 06
@@ -271,34 +271,34 @@
 da
 20
 49
-47
+06
 20
 20
 7d
 8b
 70
-49
-04
+48
+c3
 40
 70
-49
-05
+48
+c4
 a1
 70
-49
-06
+48
+c5
 02
 70
-49
-07
+48
+c6
 04
 70
-49
-08
+48
+c7
 01
 70
-49
-09
+48
+c8
 01
 70
 06
@@ -307,7 +307,7 @@
 da
 20
 49
-47
+06
 20
 20
 7d
@@ -326,16 +326,12 @@
 51
 20
 40
-02
-82
-20
-40
 00
-53
+52
 20
 20
 00
-58
+57
 6f
 e0
 c6
@@ -411,11 +407,11 @@
 20
 5a
 00
-67
+66
 20
 20
 02
-30
+2f
 70
 46
 14
@@ -479,7 +475,7 @@
 20
 20
 00
-6e
+6d
 70
 8a
 0f
@@ -563,7 +559,7 @@
 20
 40
 00
-e6
+e5
 37
 d9
 82
@@ -579,7 +575,7 @@
 c0
 08
 00
-ba
+b9
 6f
 e0
 c4
@@ -623,7 +619,7 @@
 20
 40
 00
-ac
+ab
 70
 80
 43
@@ -647,15 +643,15 @@
 20
 40
 03
-2e
+3f
 20
 40
 03
-59
+6a
 20
 40
 00
-a6
+a5
 70
 41
 48
@@ -667,7 +663,7 @@
 20
 20
 03
-5b
+6c
 20
 75
 80
@@ -699,7 +695,7 @@
 c0
 0c
 00
-b2
+b1
 6f
 e0
 c4
@@ -791,7 +787,7 @@
 20
 20
 00
-98
+97
 6f
 e0
 c1
@@ -803,19 +799,19 @@
 c0
 05
 00
-cc
+cb
 c0
 4f
 00
-d1
+d0
 c0
 4f
 80
-d5
+d4
 c0
 50
 00
-d9
+d8
 20
 20
 22
@@ -927,7 +923,7 @@
 20
 35
 81
-0d
+0c
 6f
 e2
 02
@@ -1095,7 +1091,7 @@
 20
 20
 00
-f7
+f6
 20
 40
 68
@@ -1191,7 +1187,7 @@
 20
 40
 81
-32
+31
 20
 20
 79
@@ -1223,7 +1219,7 @@
 58
 00
 02
-44
+43
 67
 e1
 45
@@ -1351,7 +1347,7 @@
 20
 21
 01
-63
+62
 6f
 e0
 88
@@ -1359,7 +1355,7 @@
 c0
 80
 81
-63
+62
 ef
 e0
 80
@@ -1383,7 +1379,7 @@
 20
 20
 01
-59
+58
 6f
 e0
 c6
@@ -1391,7 +1387,7 @@
 20
 3a
 01
-63
+62
 6f
 e0
 c6
@@ -1399,23 +1395,23 @@
 c0
 02
 81
-61
+60
 c0
 01
 01
-61
+60
 c0
 01
 81
-61
+60
 c0
 02
 01
-61
+60
 20
 20
 01
-63
+62
 70
 46
 e1
@@ -1423,14 +1419,14 @@
 20
 20
 01
-7e
+7d
 70
-49
-04
+48
+c3
 40
 70
-49
-05
+48
+c4
 a1
 d8
 40
@@ -1478,8 +1474,8 @@
 78
 d8
 a0
-49
-06
+48
+c5
 6f
 e1
 c6
@@ -1519,7 +1515,7 @@
 da
 20
 49
-47
+06
 20
 20
 7d
@@ -1531,11 +1527,11 @@
 20
 20
 01
-7e
+7d
 20
 40
 01
-87
+86
 70
 46
 11
@@ -1627,7 +1623,7 @@
 20
 42
 81
-8a
+89
 1f
 26
 7c
@@ -1651,7 +1647,7 @@
 20
 40
 01
-8a
+89
 60
 48
 c6
@@ -1671,7 +1667,7 @@
 c0
 00
 81
-b0
+af
 1f
 26
 7c
@@ -1691,7 +1687,7 @@
 20
 20
 01
-a6
+a5
 6f
 e0
 87
@@ -1715,7 +1711,7 @@
 20
 20
 01
-c0
+bf
 6f
 e0
 88
@@ -1723,11 +1719,11 @@
 c0
 51
 01
-4e
+4d
 c0
 52
 01
-7c
+7b
 20
 60
 00
@@ -1751,7 +1747,7 @@
 c0
 00
 81
-ba
+b9
 70
 08
 f7
@@ -1815,7 +1811,7 @@
 c0
 00
 01
-c6
+c5
 20
 20
 23
@@ -1839,11 +1835,11 @@
 c0
 00
 01
-ce
+cd
 c0
 00
 82
-09
+08
 c0
 01
 79
@@ -1859,7 +1855,7 @@
 c0
 00
 81
-d6
+d5
 c0
 01
 fa
@@ -1875,7 +1871,7 @@
 c0
 05
 81
-f0
+ef
 c0
 03
 f9
@@ -1931,7 +1927,7 @@
 c0
 00
 01
-e5
+e4
 c0
 00
 fa
@@ -2059,7 +2055,7 @@
 c0
 01
 02
-06
+05
 c0
 01
 fa
@@ -2099,7 +2095,7 @@
 c0
 04
 82
-0e
+0d
 c0
 05
 fb
@@ -2123,11 +2119,11 @@
 20
 40
 01
-47
+46
 20
 34
 02
-1b
+1a
 6f
 f1
 0c
@@ -2219,26 +2215,26 @@
 20
 40
 02
-8c
+81
 20
 20
-02
-fe
+03
+0f
 6f
 e0
 c9
-45
+04
 c1
 00
 80
 00
 70
 49
-46
+05
 00
 70
 49
-45
+04
 01
 20
 20
@@ -2247,7 +2243,7 @@
 20
 40
 02
-2b
+2a
 70
 48
 40
@@ -2275,15 +2271,15 @@
 c2
 82
 02
-3b
+3a
 c2
 82
 82
-3b
+3a
 c2
 83
 02
-3b
+3a
 20
 20
 33
@@ -2331,19 +2327,19 @@
 c2
 82
 02
-40
+3f
 c2
 82
 82
-63
+62
 c2
 83
 02
-6e
+6d
 20
 20
 02
-49
+48
 6f
 e0
 c5
@@ -2355,11 +2351,11 @@
 20
 22
 82
-59
+58
 20
 40
 02
-59
+58
 6f
 e0
 c5
@@ -2395,15 +2391,15 @@
 c2
 82
 02
-40
+3f
 c2
 82
 82
-63
+62
 c2
 83
 02
-6e
+6d
 20
 60
 00
@@ -2447,7 +2443,7 @@
 20
 20
 02
-79
+78
 58
 00
 00
@@ -2455,10 +2451,10 @@
 67
 e0
 c8
-c3
+82
 70
 48
-c4
+83
 a1
 6f
 e0
@@ -2479,7 +2475,7 @@
 d8
 a0
 48
-c5
+84
 20
 40
 7c
@@ -2491,7 +2487,7 @@
 20
 20
 02
-79
+78
 58
 00
 00
@@ -2535,7 +2531,7 @@
 20
 20
 02
-79
+78
 6f
 e0
 89
@@ -2547,7 +2543,7 @@
 da
 20
 49
-47
+06
 20
 40
 7d
@@ -2567,51 +2563,11 @@
 da
 20
 49
-47
+06
 20
 20
 7d
 8b
-d8
-e0
-00
-06
-20
-40
-7c
-ef
-24
-7a
-00
-00
-20
-40
-02
-89
-d8
-e0
-00
-06
-58
-00
-00
-18
-20
-20
-7c
-e1
-6f
-e0
-c9
-50
-20
-7a
-00
-00
-20
-20
-02
-40
 6f
 f0
 8c
@@ -2659,7 +2615,7 @@
 c0
 08
 82
-99
+8e
 20
 20
 23
@@ -2667,411 +2623,523 @@
 6f
 e0
 c9
-50
-1f
-e0
-fe
-01
-67
-e0
-c9
-50
-20
-40
-02
-a1
-6f
-e0
-c9
-51
-20
-7a
-00
-00
-70
-49
-51
+19
+c0
 00
-20
-20
-7c
-28
-6f
-e0
-c9
-50
+02
+99
 c0
 00
 82
-d4
+a5
 c0
 01
 02
-e0
+a9
 c0
 01
 82
-da
-c0
-02
-02
-da
+b9
 c0
 02
-82
-da
-c0
-0a
 02
-e2
 c0
-0a
-82
-da
 c0
-0b
 02
-e4
-c0
-0b
 82
-da
+af
 c0
-0c
+03
 02
-e4
+b3
 c0
-0c
+03
 82
-da
+b5
 c0
-0d
+04
 02
-e6
-c0
-0d
-82
-da
+b7
+20
+60
+00
+00
+6f
+e0
+88
+fa
 c0
-0e
+00
 02
-e8
+9d
 c0
-0e
+00
 82
-da
-c0
-0f
-02
-de
-c0
+a1
+20
+60
+00
+00
+70
+49
+19
+01
+6f
+e1
+c9
 0f
-82
-da
-c0
-10
-02
-ea
-c0
-10
-82
-da
-c0
-11
-02
-ea
-c0
-11
-82
-da
-c0
-12
-02
-ec
-c0
+67
+e1
+89
+23
+20
+20
+7c
+28
+70
+49
+19
+01
+6f
+e1
+c9
 12
-82
-da
-c0
-13
-02
-ee
-c0
-13
-82
-da
-c0
-14
-02
-f0
-c0
-14
-82
-da
-c0
-15
-02
-f2
-c0
-15
-82
-da
-c0
-16
+67
+e1
+89
+23
+20
+20
+7c
+28
+70
+49
+19
 02
-f2
-c0
-16
-82
-da
-c0
-17
-02
-f4
-c0
-17
-82
-da
-c0
-18
-02
-f6
-c0
-18
-82
-da
-c0
-19
-02
-ee
-c0
+6f
+e0
+c9
+0f
+67
+e0
+89
+23
+20
+20
+7c
+28
+70
+49
 19
-82
-da
-c0
-1a
-02
-ec
-c0
-1a
-82
-da
-c0
-1b
-02
-ea
-c0
+03
+d8
+a0
+09
+23
+df
+20
+00
+08
+20
+40
+7c
+a3
+70
+49
 1b
-82
-da
-c0
-1c
-02
-f8
-c0
-1c
-82
-da
-c0
-1d
-02
-f2
-c0
-1d
-82
-da
-c0
+00
+20
+20
+7c
+28
+70
+49
+19
+06
+6f
+e1
+c9
+15
+67
+e1
+89
 23
+20
+20
+7c
+28
+70
+49
+19
+07
+20
+20
 02
-fa
-c0
-24
-02
-da
-c0
-25
+aa
+70
+49
+19
+08
+20
+20
 02
-fa
-c0
-26
+b0
+70
+49
+19
+00
+20
+20
 02
-fc
+aa
+6f
+e0
+c9
+18
+1f
+e0
+fe
+01
+67
+e0
+c9
+18
+c1
+87
+80
+00
+70
+49
+18
+00
+70
+49
+19
+04
 20
 60
 00
 00
 6f
 e0
-88
-fa
+c9
+1b
 c0
 00
-02
-d8
+82
+aa
 c0
 00
-82
-dc
+02
+c6
 20
 60
 00
 00
-6f
-e1
-c9
-52
-67
-e1
-89
-23
 70
 49
-51
-01
+19
+05
 20
 60
 00
 00
+d8
+40
+49
+1f
+6f
+e0
+c9
+1e
+98
+40
+84
+00
 6f
 e1
-c9
-55
+49
+1c
+98
+46
+7c
+00
 20
+22
+82
+c4
 20
+40
 02
-d9
+d6
+20
+40
+02
+f8
 6f
-e1
+e0
 c9
-58
-20
+1a
+67
+e0
+89
+23
+62
 20
-02
-d9
+89
+25
+6f
+e1
+49
+1c
+1f
+e0
+fe
+01
+67
+e1
+49
+1c
 70
-09
-23
-08
+49
+1b
+01
 20
 20
+7c
+28
+68
+49
+49
+1c
+ef
+e0
+80
 02
+1f
+e6
+7c
+7a
+24
+21
+02
+dd
 da
-70
-09
-26
-0b
-20
+40
+00
+61
+9a
+46
+22
+00
 20
+21
 02
+f4
+ef
+e0
+80
+02
+1f
+e6
+7c
+39
+24
+21
+02
+e3
 da
-70
-09
-26
-17
-20
+40
+00
+30
+9a
+46
+22
+00
 20
+21
 02
-da
-70
-09
-26
-13
+f6
+1f
+e6
+7c
+3a
 20
+22
+82
+ec
+1f
+e6
+7c
+2f
 20
-02
-da
-70
-09
-26
-16
+22
+82
+ee
+1f
+e6
+7c
+2e
+20
+22
+82
+f0
+1f
+e6
+7c
+2d
 20
+22
+82
+f2
 20
-02
+60
+00
+00
 da
-70
-09
-26
-38
 20
+00
+33
 20
-02
+60
+00
+00
 da
-70
-09
-26
-10
 20
+00
+38
 20
-02
+60
+00
+00
 da
-70
-09
-26
-12
 20
+00
+37
 20
-02
+60
+00
+00
 da
-70
-09
-26
-09
 20
+00
+2d
+20
+60
+00
+00
+1a
+20
+a2
+04
+20
+60
+00
+00
+1a
+20
+a2
+27
+20
+60
+00
+00
+70
+49
+1a
+00
+6f
+e1
+49
+1c
+ef
+e0
+80
+3f
+d8
+c0
+49
+47
+68
+48
+c9
+46
+18
+42
+72
+00
+e8
+40
+80
+06
+98
+46
+7c
+00
 20
+22
+83
+03
+c2
+00
 02
-da
-70
-09
-26
-0c
-20
+fe
 20
-02
-da
+60
+00
+00
 70
-09
-26
-37
-20
-20
+49
+1a
 02
-da
-70
-09
-26
-06
 20
+60
+00
+00
+d8
+e0
+00
+06
 20
-02
-da
-70
-09
-26
-04
-20
+40
+7c
+ef
+24
+7a
+00
+00
 20
-02
-da
-70
-09
-26
+40
+03
+0c
+d8
+e0
+00
+06
+58
+00
+00
 28
 20
 20
-02
-da
-70
-49
-50
+7c
+e1
+6f
+e0
+c9
+19
+20
+7a
+00
 00
 20
 20
 02
-da
+3f
 da
 20
 49
-47
+06
 20
 40
 7d
@@ -3095,7 +3163,7 @@
 da
 20
 49
-47
+06
 20
 40
 7d
@@ -3111,11 +3179,11 @@
 c0
 12
 03
-16
+27
 c0
 11
 83
-22
+33
 c0
 10
 fc
@@ -3127,19 +3195,19 @@
 c0
 12
 83
-0e
+1f
 20
 20
 23
 5a
 6f
 20
-c9
-04
+c8
+c3
 d8
 c0
-49
-05
+48
+c4
 d8
 e0
 00
@@ -3158,12 +3226,12 @@
 d2
 d8
 a0
-49
-04
+48
+c3
 20
 20
 03
-20
+31
 70
 09
 0c
@@ -3171,7 +3239,7 @@
 6f
 e0
 c8
-c3
+82
 1f
 e2
 72
@@ -3183,7 +3251,7 @@
 d8
 c0
 48
-c4
+83
 d8
 e0
 00
@@ -3203,7 +3271,7 @@
 d8
 a0
 48
-c3
+82
 df
 20
 00
@@ -3311,7 +3379,7 @@
 20
 40
 03
-4b
+5c
 2a
 2f
 fe
@@ -3343,7 +3411,7 @@
 20
 40
 03
-4b
+5c
 d8
 a0
 8a
@@ -3371,7 +3439,7 @@
 20
 21
 03
-40
+51
 20
 20
 21
@@ -3475,7 +3543,7 @@
 20
 40
 03
-84
+95
 70
 8a
 08
@@ -3511,7 +3579,7 @@
 20
 40
 03
-7a
+8b
 6f
 f0
 8a
@@ -3555,7 +3623,7 @@
 20
 40
 03
-84
+95
 70
 80
 cd
@@ -3615,7 +3683,7 @@
 c3
 02
 83
-85
+96
 68
 59
 01
@@ -3651,7 +3719,7 @@
 c0
 08
 03
-a4
+b5
 58
 00
 57
@@ -3695,7 +3763,7 @@
 c0
 08
 03
-a1
+b2
 58
 00
 2b
@@ -3731,7 +3799,7 @@
 20
 20
 03
-9d
+ae
 58
 00
 83
@@ -3743,7 +3811,7 @@
 20
 20
 03
-92
+a3
 6f
 e0
 c3
@@ -3783,7 +3851,7 @@
 c0
 11
 03
-b3
+c4
 c0
 7f
 b5
@@ -3799,7 +3867,7 @@
 20
 3a
 03
-b9
+ca
 6f
 e2
 45
@@ -3823,11 +3891,11 @@
 c0
 00
 83
-bd
+ce
 c0
 01
 03
-c4
+d5
 20
 60
 00
@@ -3847,7 +3915,7 @@
 c0
 01
 03
-c2
+d3
 20
 60
 00
@@ -3875,7 +3943,7 @@
 c0
 80
 03
-c9
+da
 20
 60
 00
@@ -3955,7 +4023,7 @@
 20
 40
 03
-dd
+ee
 20
 20
 34
@@ -3990,8 +4058,12 @@
 07
 20
 40
+04
+05
+20
+40
 03
-f3
+05
 6f
 e0
 89
@@ -4031,7 +4103,7 @@
 20
 22
 81
-ac
+ab
 d8
 40
 02
@@ -4047,7 +4119,7 @@
 20
 20
 01
-ac
+ab
 58
 00
 00
@@ -4068,14 +4140,6 @@
 e0
 c5
 d1
-70
-49
-50
-00
-70
-49
-51
-00
 20
 40
 32
@@ -4136,8 +4200,8 @@
 20
 31
 95
-99
-ac
+45
+0f
 aa
 55
 40
@@ -4286,8 +4350,8 @@
 00
 f1
 44
+10
 12
-02
 23
 74
 12
@@ -4310,21 +4374,6 @@
 00
 aa
 55
-09
-00
-52
-49
-08
-00
-15
-08
-00
-2c
-02
-00
-33
-aa
-55
 43
 00
 98
@@ -4624,6 +4673,72 @@
 c0
 aa
 55
+09
+00
+0f
+49
+08
+00
+15
+08
+00
+2c
+00
+00
+28
+aa
+55
+11
+00
+1c
+49
+1f
+49
+0e
+77
+77
+77
+2e
+76
+64
+2d
+6d
+6b
+73
+2e
+63
+6f
+6d
+aa
+55
+16
+00
+46
+49
+15
+7e
+21
+40
+23
+24
+25
+5e
+26
+2a
+28
+29
+5f
+2b
+7b
+7d
+7c
+22
+3a
+3e
+3f
+3c
+aa
+55
 02
 00
 3f
@@ -4822,7 +4937,7 @@
 aa
 aa
 55
-45
-95
-31
-1e
+56
+a3
+f7
+a6
Index: output/memmap.format
===================================================================
--- /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/output/memmap.format	(revision 3583)
+++ /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/output/memmap.format	(working copy)
@@ -1499,18 +1499,22 @@
 0x4764 mem_usb_ep2_config
 0x4840 mem_24g_ackpayload_enable_temp
 0x4841 mem_usb_device_info_data
-0x4882 mem_usb_http_data
-0x48c3 mem_usb_dpi_data
-0x4904 mem_usb_rf_state_data
-0x4945 mem_usb_rf_state_report_flag
-0x4946 mem_usb_rf_state_report_flag1
-0x4947 mem_usb_ep2_fifo
-0x494f mem_dongle_freq_hop_flag
-0x4950 mem_usb_http_data_step
-0x4951 mem_usb_tx_data_flag
-0x4952 mem_usb_win_cmd
-0x4955 mem_usb_mac_cmd
-0x4958 mem_usb_kb_shift
+0x4882 mem_usb_dpi_data
+0x48c3 mem_usb_rf_state_data
+0x4904 mem_usb_rf_state_report_flag
+0x4905 mem_usb_rf_state_report_flag1
+0x4906 mem_usb_ep2_fifo
+0x490e mem_dongle_freq_hop_flag
+0x490f mem_usb_win_cmd
+0x4912 mem_usb_mac_cmd
+0x4915 mem_usb_kb_enter
+0x4918 mem_usb_website_wait_count
+0x4919 mem_usb_website_step
+0x491a mem_usb_website_shift_flag
+0x491b mem_usb_website_release_flag
+0x491c mem_usb_website_ptr
+0x491e mem_usb_website_info
+0x4946 mem_usb_website_info_sign
 0x45d3 mem_rssi_hex_received
 0x45d4 mem_24g_pair_sm
 0x45d5 mem_24g_pair_no_ack
Index: output/otp.dat
===================================================================
--- /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/output/otp.dat	(revision 3583)
+++ /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/output/otp.dat	(working copy)
@@ -11,7 +11,7 @@
 00
 aa
 55
-26
+66
 10
 c2
 84
@@ -24,47 +24,47 @@
 c0
 01
 00
-6e
+6d
 c0
 08
 80
-77
+76
 c0
 0a
 03
-8b
+9c
 c0
 0a
 81
-11
+10
 c0
 0c
 01
-1f
+1e
 c0
 0c
 80
-c5
+c4
 c0
 0d
 00
-85
+84
 c0
 1b
-83
-f5
+84
+07
 c0
 1c
 00
-e4
+e3
 c0
 1c
 80
-e0
+df
 c0
 1e
 83
-e4
+f5
 c0
 1f
 00
@@ -72,27 +72,27 @@
 c0
 62
 80
-dd
+dc
 c0
 6d
 03
-5c
+6d
 c0
 6e
 03
-6c
+7d
 c0
 7f
 01
-2a
+29
 c0
 7f
 81
-99
+98
 c0
 7e
 81
-26
+25
 20
 20
 23
@@ -100,43 +100,43 @@
 c0
 00
 01
-c0
+bf
 c0
 01
 01
-ff
+fe
 c0
 03
 02
-1f
+1e
 c0
 1c
 83
-a7
+b8
 c0
 26
 83
-ab
+bc
 c0
 37
-83
-ff
+84
+0f
 c0
 41
 03
-ad
+be
 c0
 42
 02
-30
+2f
 c0
 44
 03
-cc
+dd
 c0
 45
 03
-d9
+ea
 c1
 46
 80
@@ -184,7 +184,7 @@
 20
 40
 00
-6b
+6a
 20
 40
 00
@@ -232,46 +232,46 @@
 6f
 e0
 c9
-46
+05
 c1
 00
 80
 00
 70
 49
-46
+05
 01
 70
 49
-45
+04
 00
 20
 20
 00
 3b
 70
-49
-04
+48
+c3
 40
 70
-49
-05
+48
+c4
 a1
 70
-49
-06
+48
+c5
 02
 70
-49
-07
+48
+c6
 04
 70
-49
-08
+48
+c7
 01
 70
-49
-09
+48
+c8
 00
 70
 06
@@ -280,34 +280,34 @@
 da
 20
 49
-47
+06
 20
 20
 7d
 8b
 70
-49
-04
+48
+c3
 40
 70
-49
-05
+48
+c4
 a1
 70
-49
-06
+48
+c5
 02
 70
-49
-07
+48
+c6
 04
 70
-49
-08
+48
+c7
 01
 70
-49
-09
+48
+c8
 01
 70
 06
@@ -316,7 +316,7 @@
 da
 20
 49
-47
+06
 20
 20
 7d
@@ -335,16 +335,12 @@
 51
 20
 40
-02
-82
-20
-40
 00
-53
+52
 20
 20
 00
-58
+57
 6f
 e0
 c6
@@ -420,11 +416,11 @@
 20
 5a
 00
-67
+66
 20
 20
 02
-30
+2f
 70
 46
 14
@@ -488,7 +484,7 @@
 20
 20
 00
-6e
+6d
 70
 8a
 0f
@@ -572,7 +568,7 @@
 20
 40
 00
-e6
+e5
 37
 d9
 82
@@ -588,7 +584,7 @@
 c0
 08
 00
-ba
+b9
 6f
 e0
 c4
@@ -632,7 +628,7 @@
 20
 40
 00
-ac
+ab
 70
 80
 43
@@ -656,15 +652,15 @@
 20
 40
 03
-2e
+3f
 20
 40
 03
-59
+6a
 20
 40
 00
-a6
+a5
 70
 41
 48
@@ -676,7 +672,7 @@
 20
 20
 03
-5b
+6c
 20
 75
 80
@@ -708,7 +704,7 @@
 c0
 0c
 00
-b2
+b1
 6f
 e0
 c4
@@ -800,7 +796,7 @@
 20
 20
 00
-98
+97
 6f
 e0
 c1
@@ -812,19 +808,19 @@
 c0
 05
 00
-cc
+cb
 c0
 4f
 00
-d1
+d0
 c0
 4f
 80
-d5
+d4
 c0
 50
 00
-d9
+d8
 20
 20
 22
@@ -936,7 +932,7 @@
 20
 35
 81
-0d
+0c
 6f
 e2
 02
@@ -1104,7 +1100,7 @@
 20
 20
 00
-f7
+f6
 20
 40
 68
@@ -1200,7 +1196,7 @@
 20
 40
 81
-32
+31
 20
 20
 79
@@ -1232,7 +1228,7 @@
 58
 00
 02
-44
+43
 67
 e1
 45
@@ -1360,7 +1356,7 @@
 20
 21
 01
-63
+62
 6f
 e0
 88
@@ -1368,7 +1364,7 @@
 c0
 80
 81
-63
+62
 ef
 e0
 80
@@ -1392,7 +1388,7 @@
 20
 20
 01
-59
+58
 6f
 e0
 c6
@@ -1400,7 +1396,7 @@
 20
 3a
 01
-63
+62
 6f
 e0
 c6
@@ -1408,23 +1404,23 @@
 c0
 02
 81
-61
+60
 c0
 01
 01
-61
+60
 c0
 01
 81
-61
+60
 c0
 02
 01
-61
+60
 20
 20
 01
-63
+62
 70
 46
 e1
@@ -1432,14 +1428,14 @@
 20
 20
 01
-7e
+7d
 70
-49
-04
+48
+c3
 40
 70
-49
-05
+48
+c4
 a1
 d8
 40
@@ -1487,8 +1483,8 @@
 78
 d8
 a0
-49
-06
+48
+c5
 6f
 e1
 c6
@@ -1528,7 +1524,7 @@
 da
 20
 49
-47
+06
 20
 20
 7d
@@ -1540,11 +1536,11 @@
 20
 20
 01
-7e
+7d
 20
 40
 01
-87
+86
 70
 46
 11
@@ -1636,7 +1632,7 @@
 20
 42
 81
-8a
+89
 1f
 26
 7c
@@ -1660,7 +1656,7 @@
 20
 40
 01
-8a
+89
 60
 48
 c6
@@ -1680,7 +1676,7 @@
 c0
 00
 81
-b0
+af
 1f
 26
 7c
@@ -1700,7 +1696,7 @@
 20
 20
 01
-a6
+a5
 6f
 e0
 87
@@ -1724,7 +1720,7 @@
 20
 20
 01
-c0
+bf
 6f
 e0
 88
@@ -1732,11 +1728,11 @@
 c0
 51
 01
-4e
+4d
 c0
 52
 01
-7c
+7b
 20
 60
 00
@@ -1760,7 +1756,7 @@
 c0
 00
 81
-ba
+b9
 70
 08
 f7
@@ -1824,7 +1820,7 @@
 c0
 00
 01
-c6
+c5
 20
 20
 23
@@ -1848,11 +1844,11 @@
 c0
 00
 01
-ce
+cd
 c0
 00
 82
-09
+08
 c0
 01
 79
@@ -1868,7 +1864,7 @@
 c0
 00
 81
-d6
+d5
 c0
 01
 fa
@@ -1884,7 +1880,7 @@
 c0
 05
 81
-f0
+ef
 c0
 03
 f9
@@ -1940,7 +1936,7 @@
 c0
 00
 01
-e5
+e4
 c0
 00
 fa
@@ -2068,7 +2064,7 @@
 c0
 01
 02
-06
+05
 c0
 01
 fa
@@ -2108,7 +2104,7 @@
 c0
 04
 82
-0e
+0d
 c0
 05
 fb
@@ -2132,11 +2128,11 @@
 20
 40
 01
-47
+46
 20
 34
 02
-1b
+1a
 6f
 f1
 0c
@@ -2228,26 +2224,26 @@
 20
 40
 02
-8c
+81
 20
 20
-02
-fe
+03
+0f
 6f
 e0
 c9
-45
+04
 c1
 00
 80
 00
 70
 49
-46
+05
 00
 70
 49
-45
+04
 01
 20
 20
@@ -2256,7 +2252,7 @@
 20
 40
 02
-2b
+2a
 70
 48
 40
@@ -2284,15 +2280,15 @@
 c2
 82
 02
-3b
+3a
 c2
 82
 82
-3b
+3a
 c2
 83
 02
-3b
+3a
 20
 20
 33
@@ -2340,19 +2336,19 @@
 c2
 82
 02
-40
+3f
 c2
 82
 82
-63
+62
 c2
 83
 02
-6e
+6d
 20
 20
 02
-49
+48
 6f
 e0
 c5
@@ -2364,11 +2360,11 @@
 20
 22
 82
-59
+58
 20
 40
 02
-59
+58
 6f
 e0
 c5
@@ -2404,15 +2400,15 @@
 c2
 82
 02
-40
+3f
 c2
 82
 82
-63
+62
 c2
 83
 02
-6e
+6d
 20
 60
 00
@@ -2456,7 +2452,7 @@
 20
 20
 02
-79
+78
 58
 00
 00
@@ -2464,10 +2460,10 @@
 67
 e0
 c8
-c3
+82
 70
 48
-c4
+83
 a1
 6f
 e0
@@ -2488,7 +2484,7 @@
 d8
 a0
 48
-c5
+84
 20
 40
 7c
@@ -2500,7 +2496,7 @@
 20
 20
 02
-79
+78
 58
 00
 00
@@ -2544,7 +2540,7 @@
 20
 20
 02
-79
+78
 6f
 e0
 89
@@ -2556,7 +2552,7 @@
 da
 20
 49
-47
+06
 20
 40
 7d
@@ -2576,51 +2572,11 @@
 da
 20
 49
-47
+06
 20
 20
 7d
 8b
-d8
-e0
-00
-06
-20
-40
-7c
-ef
-24
-7a
-00
-00
-20
-40
-02
-89
-d8
-e0
-00
-06
-58
-00
-00
-18
-20
-20
-7c
-e1
-6f
-e0
-c9
-50
-20
-7a
-00
-00
-20
-20
-02
-40
 6f
 f0
 8c
@@ -2668,7 +2624,7 @@
 c0
 08
 82
-99
+8e
 20
 20
 23
@@ -2676,411 +2632,523 @@
 6f
 e0
 c9
-50
-1f
-e0
-fe
-01
-67
-e0
-c9
-50
-20
-40
-02
-a1
-6f
-e0
-c9
-51
-20
-7a
-00
-00
-70
-49
-51
+19
+c0
 00
-20
-20
-7c
-28
-6f
-e0
-c9
-50
+02
+99
 c0
 00
 82
-d4
+a5
 c0
 01
 02
-e0
+a9
 c0
 01
 82
-da
-c0
-02
-02
-da
+b9
 c0
 02
-82
-da
-c0
-0a
 02
-e2
 c0
-0a
-82
-da
 c0
-0b
 02
-e4
-c0
-0b
 82
-da
+af
 c0
-0c
+03
 02
-e4
+b3
 c0
-0c
+03
 82
-da
+b5
 c0
-0d
+04
 02
-e6
-c0
-0d
-82
-da
+b7
+20
+60
+00
+00
+6f
+e0
+88
+fa
 c0
-0e
+00
 02
-e8
+9d
 c0
-0e
+00
 82
-da
-c0
-0f
-02
-de
-c0
+a1
+20
+60
+00
+00
+70
+49
+19
+01
+6f
+e1
+c9
 0f
-82
-da
-c0
-10
-02
-ea
-c0
-10
-82
-da
-c0
-11
-02
-ea
-c0
-11
-82
-da
-c0
-12
-02
-ec
-c0
+67
+e1
+89
+23
+20
+20
+7c
+28
+70
+49
+19
+01
+6f
+e1
+c9
 12
-82
-da
-c0
-13
-02
-ee
-c0
-13
-82
-da
-c0
-14
-02
-f0
-c0
-14
-82
-da
-c0
-15
-02
-f2
-c0
-15
-82
-da
-c0
-16
+67
+e1
+89
+23
+20
+20
+7c
+28
+70
+49
+19
 02
-f2
-c0
-16
-82
-da
-c0
-17
-02
-f4
-c0
-17
-82
-da
-c0
-18
-02
-f6
-c0
-18
-82
-da
-c0
-19
-02
-ee
-c0
+6f
+e0
+c9
+0f
+67
+e0
+89
+23
+20
+20
+7c
+28
+70
+49
 19
-82
-da
-c0
-1a
-02
-ec
-c0
-1a
-82
-da
-c0
-1b
-02
-ea
-c0
+03
+d8
+a0
+09
+23
+df
+20
+00
+08
+20
+40
+7c
+a3
+70
+49
 1b
-82
-da
-c0
-1c
-02
-f8
-c0
-1c
-82
-da
-c0
-1d
-02
-f2
-c0
-1d
-82
-da
-c0
+00
+20
+20
+7c
+28
+70
+49
+19
+06
+6f
+e1
+c9
+15
+67
+e1
+89
 23
+20
+20
+7c
+28
+70
+49
+19
+07
+20
+20
 02
-fa
-c0
-24
-02
-da
-c0
-25
+aa
+70
+49
+19
+08
+20
+20
 02
-fa
-c0
-26
+b0
+70
+49
+19
+00
+20
+20
 02
-fc
+aa
+6f
+e0
+c9
+18
+1f
+e0
+fe
+01
+67
+e0
+c9
+18
+c1
+87
+80
+00
+70
+49
+18
+00
+70
+49
+19
+04
 20
 60
 00
 00
 6f
 e0
-88
-fa
+c9
+1b
 c0
 00
-02
-d8
+82
+aa
 c0
 00
-82
-dc
+02
+c6
 20
 60
 00
 00
-6f
-e1
-c9
-52
-67
-e1
-89
-23
 70
 49
-51
-01
+19
+05
 20
 60
 00
 00
+d8
+40
+49
+1f
+6f
+e0
+c9
+1e
+98
+40
+84
+00
 6f
 e1
-c9
-55
+49
+1c
+98
+46
+7c
+00
 20
+22
+82
+c4
 20
+40
 02
-d9
+d6
+20
+40
+02
+f8
 6f
-e1
+e0
 c9
-58
-20
+1a
+67
+e0
+89
+23
+62
 20
-02
-d9
+89
+25
+6f
+e1
+49
+1c
+1f
+e0
+fe
+01
+67
+e1
+49
+1c
 70
-09
-23
-08
+49
+1b
+01
 20
 20
+7c
+28
+68
+49
+49
+1c
+ef
+e0
+80
 02
+1f
+e6
+7c
+7a
+24
+21
+02
+dd
 da
-70
-09
-26
-0b
-20
+40
+00
+61
+9a
+46
+22
+00
 20
+21
 02
+f4
+ef
+e0
+80
+02
+1f
+e6
+7c
+39
+24
+21
+02
+e3
 da
-70
-09
-26
-17
-20
+40
+00
+30
+9a
+46
+22
+00
 20
+21
 02
-da
-70
-09
-26
-13
+f6
+1f
+e6
+7c
+3a
 20
+22
+82
+ec
+1f
+e6
+7c
+2f
 20
-02
-da
-70
-09
-26
-16
+22
+82
+ee
+1f
+e6
+7c
+2e
+20
+22
+82
+f0
+1f
+e6
+7c
+2d
 20
+22
+82
+f2
 20
-02
+60
+00
+00
 da
-70
-09
-26
-38
 20
+00
+33
 20
-02
+60
+00
+00
 da
-70
-09
-26
-10
 20
+00
+38
 20
-02
+60
+00
+00
 da
-70
-09
-26
-12
 20
+00
+37
 20
-02
+60
+00
+00
 da
-70
-09
-26
-09
 20
+00
+2d
+20
+60
+00
+00
+1a
+20
+a2
+04
+20
+60
+00
+00
+1a
+20
+a2
+27
+20
+60
+00
+00
+70
+49
+1a
+00
+6f
+e1
+49
+1c
+ef
+e0
+80
+3f
+d8
+c0
+49
+47
+68
+48
+c9
+46
+18
+42
+72
+00
+e8
+40
+80
+06
+98
+46
+7c
+00
 20
+22
+83
+03
+c2
+00
 02
-da
-70
-09
-26
-0c
-20
+fe
 20
-02
-da
+60
+00
+00
 70
-09
-26
-37
-20
-20
+49
+1a
 02
-da
-70
-09
-26
-06
 20
+60
+00
+00
+d8
+e0
+00
+06
 20
-02
-da
-70
-09
-26
-04
-20
+40
+7c
+ef
+24
+7a
+00
+00
 20
-02
-da
-70
-09
-26
+40
+03
+0c
+d8
+e0
+00
+06
+58
+00
+00
 28
 20
 20
-02
-da
-70
-49
-50
+7c
+e1
+6f
+e0
+c9
+19
+20
+7a
+00
 00
 20
 20
 02
-da
+3f
 da
 20
 49
-47
+06
 20
 40
 7d
@@ -3104,7 +3172,7 @@
 da
 20
 49
-47
+06
 20
 40
 7d
@@ -3120,11 +3188,11 @@
 c0
 12
 03
-16
+27
 c0
 11
 83
-22
+33
 c0
 10
 fc
@@ -3136,19 +3204,19 @@
 c0
 12
 83
-0e
+1f
 20
 20
 23
 5a
 6f
 20
-c9
-04
+c8
+c3
 d8
 c0
-49
-05
+48
+c4
 d8
 e0
 00
@@ -3167,12 +3235,12 @@
 d2
 d8
 a0
-49
-04
+48
+c3
 20
 20
 03
-20
+31
 70
 09
 0c
@@ -3180,7 +3248,7 @@
 6f
 e0
 c8
-c3
+82
 1f
 e2
 72
@@ -3192,7 +3260,7 @@
 d8
 c0
 48
-c4
+83
 d8
 e0
 00
@@ -3212,7 +3280,7 @@
 d8
 a0
 48
-c3
+82
 df
 20
 00
@@ -3320,7 +3388,7 @@
 20
 40
 03
-4b
+5c
 2a
 2f
 fe
@@ -3352,7 +3420,7 @@
 20
 40
 03
-4b
+5c
 d8
 a0
 8a
@@ -3380,7 +3448,7 @@
 20
 21
 03
-40
+51
 20
 20
 21
@@ -3484,7 +3552,7 @@
 20
 40
 03
-84
+95
 70
 8a
 08
@@ -3520,7 +3588,7 @@
 20
 40
 03
-7a
+8b
 6f
 f0
 8a
@@ -3564,7 +3632,7 @@
 20
 40
 03
-84
+95
 70
 80
 cd
@@ -3624,7 +3692,7 @@
 c3
 02
 83
-85
+96
 68
 59
 01
@@ -3660,7 +3728,7 @@
 c0
 08
 03
-a4
+b5
 58
 00
 57
@@ -3704,7 +3772,7 @@
 c0
 08
 03
-a1
+b2
 58
 00
 2b
@@ -3740,7 +3808,7 @@
 20
 20
 03
-9d
+ae
 58
 00
 83
@@ -3752,7 +3820,7 @@
 20
 20
 03
-92
+a3
 6f
 e0
 c3
@@ -3792,7 +3860,7 @@
 c0
 11
 03
-b3
+c4
 c0
 7f
 b5
@@ -3808,7 +3876,7 @@
 20
 3a
 03
-b9
+ca
 6f
 e2
 45
@@ -3832,11 +3900,11 @@
 c0
 00
 83
-bd
+ce
 c0
 01
 03
-c4
+d5
 20
 60
 00
@@ -3856,7 +3924,7 @@
 c0
 01
 03
-c2
+d3
 20
 60
 00
@@ -3884,7 +3952,7 @@
 c0
 80
 03
-c9
+da
 20
 60
 00
@@ -3964,7 +4032,7 @@
 20
 40
 03
-dd
+ee
 20
 20
 34
@@ -3999,8 +4067,12 @@
 07
 20
 40
+04
+05
+20
+40
 03
-f3
+05
 6f
 e0
 89
@@ -4040,7 +4112,7 @@
 20
 22
 81
-ac
+ab
 d8
 40
 02
@@ -4056,7 +4128,7 @@
 20
 20
 01
-ac
+ab
 58
 00
 00
@@ -4077,14 +4149,6 @@
 e0
 c5
 d1
-70
-49
-50
-00
-70
-49
-51
-00
 20
 40
 32
@@ -4145,8 +4209,8 @@
 20
 31
 95
-99
-ac
+45
+0f
 aa
 55
 40
@@ -4295,8 +4359,8 @@
 00
 f1
 44
+10
 12
-02
 23
 74
 12
@@ -4319,21 +4383,6 @@
 00
 aa
 55
-09
-00
-52
-49
-08
-00
-15
-08
-00
-2c
-02
-00
-33
-aa
-55
 43
 00
 98
@@ -4633,6 +4682,72 @@
 c0
 aa
 55
+09
+00
+0f
+49
+08
+00
+15
+08
+00
+2c
+00
+00
+28
+aa
+55
+11
+00
+1c
+49
+1f
+49
+0e
+77
+77
+77
+2e
+76
+64
+2d
+6d
+6b
+73
+2e
+63
+6f
+6d
+aa
+55
+16
+00
+46
+49
+15
+7e
+21
+40
+23
+24
+25
+5e
+26
+2a
+28
+29
+5f
+2b
+7b
+7d
+7c
+22
+3a
+3e
+3f
+3c
+aa
+55
 02
 00
 3f
@@ -4831,8 +4946,8 @@
 aa
 aa
 55
-45
-95
-31
-1e
+56
+a3
+f7
+a6
 f0
Index: output/program.lis
===================================================================
--- /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/output/program.lis	(revision 3583)
+++ /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/output/program.lis	(working copy)
@@ -2,37 +2,37 @@
               org 0x0000
 0000 c2840015 bbit1 8 ,pf_patch_ext 
 0001 c0000022 beq patch00_0 ,p_soft_reset 
-0002 c001006e beq patch00_2 ,p_main_loop 
-0003 c0088077 beq patch02_1 ,p_set_sync_on 
-0004 c00a038b beq patch02_4 ,p_set_lemode 
-0005 c00a8111 beq patch02_5 ,p_rf_rx_enable 
-0006 c00c011f beq patch03_0 ,p_txon 
-0007 c00c80c5 beq patch03_1 ,p_set_tx_power 
-0008 c00d0085 beq patch03_2 ,p_initialize_radio_cont 
-0009 c01b83f5 beq patch06_7 ,p_dongle_default_init 
-000a c01c00e4 beq patch07_0 ,p_dongle_read_kb_bind_status 
-000b c01c80e0 beq patch07_1 ,p_dongle_write_kb_bind_status 
-000c c01e83e4 beq patch07_5 ,p_dongle_usb_dispatch 
+0002 c001006d beq patch00_2 ,p_main_loop 
+0003 c0088076 beq patch02_1 ,p_set_sync_on 
+0004 c00a039c beq patch02_4 ,p_set_lemode 
+0005 c00a8110 beq patch02_5 ,p_rf_rx_enable 
+0006 c00c011e beq patch03_0 ,p_txon 
+0007 c00c80c4 beq patch03_1 ,p_set_tx_power 
+0008 c00d0084 beq patch03_2 ,p_initialize_radio_cont 
+0009 c01b8407 beq patch06_7 ,p_dongle_default_init 
+000a c01c00e3 beq patch07_0 ,p_dongle_read_kb_bind_status 
+000b c01c80df beq patch07_1 ,p_dongle_write_kb_bind_status 
+000c c01e83f5 beq patch07_5 ,p_dongle_usb_dispatch 
 000d c01f0028 beq patch07_6 ,p_dongle_work_mode_auto 
-000e c06280dd beq patch18_5 ,p_otp_read_data 
-000f c06d035c beq patch1b_2 ,p_sadc_calibration 
-0010 c06e036c beq patch1b_4 ,p_enable_adc 
-0011 c07f012a beq patch1f_6 ,p_usb_init 
-0012 c07f8199 beq patch1f_7 ,p_usb_rx 
-0013 c07e8126 beq patch1f_5 ,p_usb_isr 
+000e c06280dc beq patch18_5 ,p_otp_read_data 
+000f c06d036d beq patch1b_2 ,p_sadc_calibration 
+0010 c06e037d beq patch1b_4 ,p_enable_adc 
+0011 c07f0129 beq patch1f_6 ,p_usb_init 
+0012 c07f8198 beq patch1f_7 ,p_usb_rx 
+0013 c07e8125 beq patch1f_5 ,p_usb_isr 
 0014 2020235a branch assert 
 
 pf_patch_ext:
-0015 c00001c0 beq patch20_0 ,p_usb_class_type 
-0016 c00101ff beq patch20_2 ,p_usb0_request_get_descriptor 
-0017 c003021f beq patch20_6 ,p_usb_tx 
-0018 c01c83a7 beq patch27_1 ,p_le_parse 
-0019 c02683ab beq patch29_5 ,p_le_init_adv 
-001a c03783ff beq patch2d_7 ,p_g24_receive_skip_end 
-001b c04103ad beq patch30_2 ,p_g24_bind_data_parse_next 
-001c c0420230 beq patch30_4 ,p_g24_receive_packet_start1 
-001d c04403cc beq patch31_0 ,p_g24_mode_switch_bind_search 
-001e c04503d9 beq patch31_2 ,p_g24_bind_mode_auto 
+0015 c00001bf beq patch20_0 ,p_usb_class_type 
+0016 c00101fe beq patch20_2 ,p_usb0_request_get_descriptor 
+0017 c003021e beq patch20_6 ,p_usb_tx 
+0018 c01c83b8 beq patch27_1 ,p_le_parse 
+0019 c02683bc beq patch29_5 ,p_le_init_adv 
+001a c037840f beq patch2d_7 ,p_g24_receive_skip_end 
+001b c04103be beq patch30_2 ,p_g24_bind_data_parse_next 
+001c c042022f beq patch30_4 ,p_g24_receive_packet_start1 
+001d c04403dd beq patch31_0 ,p_g24_mode_switch_bind_search 
+001e c04503ea beq patch31_2 ,p_g24_bind_mode_auto 
 001f c1468000 rtneq patch31_5 
 0020 c17f8000 rtneq patch3f_7 
 0021 2020235a branch assert 
@@ -48,7 +48,7 @@
 p_dongle_work_mode_auto:
 0028 6fe0c616 fetch 1 ,mem_24g_work_mode 
 0029 c1800000 rtnne dongle_work 
-002a 2040006b call p_mouse_ackpayload_set 
+002a 2040006a call p_mouse_ackpayload_set 
 002b 2040004d call p_g24_work_mode_start 
 002c 2040002e call p_g24_nodata_process 
 002d 20204827 branch dongle_g24_blank_data_process 
@@ -62,1259 +62,1285 @@
 0033 20407cef call timer_check 
 0034 247a0000 nrtn blank 
 0035 2040351b call g24_ch_process + 3 
-0036 6fe0c946 fetch 1 ,mem_usb_rf_state_report_flag1 
+0036 6fe0c905 fetch 1 ,mem_usb_rf_state_report_flag1 
 0037 c1008000 rtneq 0x1 
-0038 70494601 jam 0x1 ,mem_usb_rf_state_report_flag1 
-0039 70494500 jam 0x0 ,mem_usb_rf_state_report_flag 
+0038 70490501 jam 0x1 ,mem_usb_rf_state_report_flag1 
+0039 70490400 jam 0x0 ,mem_usb_rf_state_report_flag 
 003a 2020003b branch p_dongle_usb_ep2_disconnect_report 
 
 p_dongle_usb_ep2_disconnect_report:
-003b 70490440 jam 0x40 ,mem_usb_rf_state_data 
-003c 704905a1 jam 0xa1 ,mem_usb_rf_state_data + 1 
-003d 70490602 jam 0x2 ,mem_usb_rf_state_data + 2 
-003e 70490704 jam 0x4 ,mem_usb_rf_state_data + 3 
-003f 70490801 jam 0x1 ,mem_usb_rf_state_data + 4 
-0040 70490900 jam 0x0 ,mem_usb_rf_state_data + 5 
+003b 7048c340 jam 0x40 ,mem_usb_rf_state_data 
+003c 7048c4a1 jam 0xa1 ,mem_usb_rf_state_data + 1 
+003d 7048c502 jam 0x2 ,mem_usb_rf_state_data + 2 
+003e 7048c604 jam 0x4 ,mem_usb_rf_state_data + 3 
+003f 7048c701 jam 0x1 ,mem_usb_rf_state_data + 4 
+0040 7048c800 jam 0x0 ,mem_usb_rf_state_data + 5 
 0041 70066f25 jam usb_ep2_mskb_state ,mem_fifo_temp 
-0042 da204947 arg mem_usb_ep2_fifo ,rega 
+0042 da204906 arg mem_usb_ep2_fifo ,rega 
 0043 20207d8b branch fifo_in 
 
 p_dongle_usb_ep2_connect_report:
-0044 70490440 jam 0x40 ,mem_usb_rf_state_data 
-0045 704905a1 jam 0xa1 ,mem_usb_rf_state_data + 1 
-0046 70490602 jam 0x2 ,mem_usb_rf_state_data + 2 
-0047 70490704 jam 0x4 ,mem_usb_rf_state_data + 3 
-0048 70490801 jam 0x1 ,mem_usb_rf_state_data + 4 
-0049 70490901 jam 0x1 ,mem_usb_rf_state_data + 5 
+0044 7048c340 jam 0x40 ,mem_usb_rf_state_data 
+0045 7048c4a1 jam 0xa1 ,mem_usb_rf_state_data + 1 
+0046 7048c502 jam 0x2 ,mem_usb_rf_state_data + 2 
+0047 7048c604 jam 0x4 ,mem_usb_rf_state_data + 3 
+0048 7048c701 jam 0x1 ,mem_usb_rf_state_data + 4 
+0049 7048c801 jam 0x1 ,mem_usb_rf_state_data + 5 
 004a 70066f25 jam usb_ep2_mskb_state ,mem_fifo_temp 
-004b da204947 arg mem_usb_ep2_fifo ,rega 
+004b da204906 arg mem_usb_ep2_fifo ,rega 
 004c 20207d8b branch fifo_in 
 
 p_g24_work_mode_start:
 004d 6fe0c616 fetch 1 ,mem_24g_work_mode 
 004e c1800000 rtnne dongle_work 
 004f 20403451 call g24_work_init 
-0050 20400282 call p_g24_100ms_timer_event 
-0051 20400053 call p_g24_ch_process_check 
-0052 20200058 branch p_g24_receive_packet_start 
+0050 20400052 call p_g24_ch_process_check 
+0051 20200057 branch p_g24_receive_packet_start 
 
 p_g24_ch_process_check:
 
 p_g24_ch_process:
-0053 6fe0c60a fetch 1 ,mem_24g_abort_packet 
-0054 c000b5ea beq 1 ,rssi_noise_monitor 
-0055 6fe0c612 fetch 1 ,mem_24g_hop_packet 
-0056 c000b52c beq 1 ,g24_ch_receive_hop_pac 
-0057 20600000 rtn 
+0052 6fe0c60a fetch 1 ,mem_24g_abort_packet 
+0053 c000b5ea beq 1 ,rssi_noise_monitor 
+0054 6fe0c612 fetch 1 ,mem_24g_hop_packet 
+0055 c000b52c beq 1 ,g24_ch_receive_hop_pac 
+0056 20600000 rtn 
 
 p_g24_receive_packet_start:
-0058 204033f1 call g24_receive_transmit_ack 
-0059 2437b3be nbranch g24_rx_interrupt_clear ,user3 
+0057 204033f1 call g24_receive_transmit_ack 
+0058 2437b3be nbranch g24_rx_interrupt_clear ,user3 
 
 p_g24_receive_packet_parse2:
-005a 204033e3 call g24_receive_packet_parse_pid_crc 
-005b 243433be nbranch g24_rx_interrupt_clear ,user 
-005c 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
-005d 203a33be branch g24_rx_interrupt_clear ,blank 
-005e 1fe0fe02 increase 2 ,pdata 
-005f 98007200 iforce loopcnt 
-0060 d8c044f7 arg mem_24g_rxbuf ,contr 
-0061 d8a045e8 arg mem_24g_rxdata_temp ,contw 
-0062 20407cda call memcpy 
-0063 70461300 jam 0 ,mem_24g_mode_switch 
-0064 6fe0c610 fetch 1 ,mem_24g_pair_mode 
-0065 205a0067 call p_g24_enable_nodata_timer ,blank 
-0066 20200230 branch p_g24_receive_packet_start1 
+0059 204033e3 call g24_receive_packet_parse_pid_crc 
+005a 243433be nbranch g24_rx_interrupt_clear ,user 
+005b 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
+005c 203a33be branch g24_rx_interrupt_clear ,blank 
+005d 1fe0fe02 increase 2 ,pdata 
+005e 98007200 iforce loopcnt 
+005f d8c044f7 arg mem_24g_rxbuf ,contr 
+0060 d8a045e8 arg mem_24g_rxdata_temp ,contw 
+0061 20407cda call memcpy 
+0062 70461300 jam 0 ,mem_24g_mode_switch 
+0063 6fe0c610 fetch 1 ,mem_24g_pair_mode 
+0064 205a0066 call p_g24_enable_nodata_timer ,blank 
+0065 2020022f branch p_g24_receive_packet_start1 
 
 p_g24_enable_nodata_timer:
-0067 70461401 jam 1 ,mem_24g_nodata_timer_enable 
-0068 58000640 setarg 1600 
-0069 d8e00008 arg g24_timer_nodata ,queue 
-006a 20207ce1 branch timer_init 
+0066 70461401 jam 1 ,mem_24g_nodata_timer_enable 
+0067 58000640 setarg 1600 
+0068 d8e00008 arg g24_timer_nodata ,queue 
+0069 20207ce1 branch timer_init 
 
 p_mouse_ackpayload_set:
-006b 6fe0c840 fetch 1 ,mem_24g_ackpayload_enable_temp 
-006c 67e0c611 store 1 ,mem_24g_ackpayload_enable 
-006d 20600000 rtn 
+006a 6fe0c840 fetch 1 ,mem_24g_ackpayload_enable_temp 
+006b 67e0c611 store 1 ,mem_24g_ackpayload_enable 
+006c 20600000 rtn 
 
 p_main_loop:
-006e 20407552 call sp_calc_sequence_256 
-006f 20407448 call sp_calc_sequence_256_check 
-0070 20402a45 call le_advertising_dispatch 
-0071 2040202a call idle_dispatch 
-0072 204042ad call app_process_idle 
-0073 20402018 call connection_dispatch 
-0074 2040310f call g24_dispatch 
-0075 2040248c call lpm_dispatch 
-0076 2020006e branch p_main_loop 
+006d 20407552 call sp_calc_sequence_256 
+006e 20407448 call sp_calc_sequence_256_check 
+006f 20402a45 call le_advertising_dispatch 
+0070 2040202a call idle_dispatch 
+0071 204042ad call app_process_idle 
+0072 20402018 call connection_dispatch 
+0073 2040310f call g24_dispatch 
+0074 2040248c call lpm_dispatch 
+0075 2020006d branch p_main_loop 
 
 p_set_sync_on:
-0077 708a0f60 jam 0x60 ,0x8a0f 
-0078 708a10aa jam 0xaa ,0x8a10 
-0079 708a127a jam 0x7a ,0x8a12 
-007a 708a2500 jam 0x00 ,0x8a25 
-007b 708a2600 jam 0x00 ,0x8a26 
-007c 2000003c nop 60 
-007d 708a2020 jam 0x20 ,0x8a20 
-007e 708a23f5 jam 0xf5 ,0x8a23 
-007f 708a2412 jam 0x12 ,0x8a24 
-0080 708a2410 jam 0x10 ,0x8a24 
-0081 2000003c nop 60 
-0082 708a1260 jam 0x60 ,0x8a12 
-0083 708a23dd jam 0xdd ,0x8a23 
-0084 20600000 rtn 
+0076 708a0f60 jam 0x60 ,0x8a0f 
+0077 708a10aa jam 0xaa ,0x8a10 
+0078 708a127a jam 0x7a ,0x8a12 
+0079 708a2500 jam 0x00 ,0x8a25 
+007a 708a2600 jam 0x00 ,0x8a26 
+007b 2000003c nop 60 
+007c 708a2020 jam 0x20 ,0x8a20 
+007d 708a23f5 jam 0xf5 ,0x8a23 
+007e 708a2412 jam 0x12 ,0x8a24 
+007f 708a2410 jam 0x10 ,0x8a24 
+0080 2000003c nop 60 
+0081 708a1260 jam 0x60 ,0x8a12 
+0082 708a23dd jam 0xdd ,0x8a23 
+0083 20600000 rtn 
 
 p_initialize_radio_cont:
-0085 7089460d jam 0x0d ,0x8946 
-0086 70896f10 jam 0x10 ,0x896f 
-0087 708a0610 jam 0x10 ,0x8a06 
-0088 708a844a jam 0x4a ,0x8a84 
-0089 708a8540 jam 0x40 ,0x8a85 
-008a 708a16fe jam 0xfe ,0x8a16 
-008b 204000e6 call p_set_otp_config 
-008c 37d98200 until null ,lpo_edge 
-008d 70813b5f jam 0x5f ,0x813b 
-008e 6fe0c099 fetch 1 ,mem_fcomp_div 
-008f c00800ba beq xtal_16m ,p_initialize_radio_16m 
-0090 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
-0091 1fe1fe04 or_into 0x04 ,pdata 
-0092 67f08a02 store 1 ,0x8a02 
-0093 70890f01 jam 0x01 ,0x890f 
-0094 708a8024 jam 0x24 ,0x8a80 
-0095 708a8162 jam 0x62 ,0x8a81 
-0096 58e61212 setarg 0xe61212 
-0097 67f18a73 store 3 ,0x8a73 
+0084 7089460d jam 0x0d ,0x8946 
+0085 70896f10 jam 0x10 ,0x896f 
+0086 708a0610 jam 0x10 ,0x8a06 
+0087 708a844a jam 0x4a ,0x8a84 
+0088 708a8540 jam 0x40 ,0x8a85 
+0089 708a16fe jam 0xfe ,0x8a16 
+008a 204000e5 call p_set_otp_config 
+008b 37d98200 until null ,lpo_edge 
+008c 70813b5f jam 0x5f ,0x813b 
+008d 6fe0c099 fetch 1 ,mem_fcomp_div 
+008e c00800b9 beq xtal_16m ,p_initialize_radio_16m 
+008f 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
+0090 1fe1fe04 or_into 0x04 ,pdata 
+0091 67f08a02 store 1 ,0x8a02 
+0092 70890f01 jam 0x01 ,0x890f 
+0093 708a8024 jam 0x24 ,0x8a80 
+0094 708a8162 jam 0x62 ,0x8a81 
+0095 58e61212 setarg 0xe61212 
+0096 67f18a73 store 3 ,0x8a73 
 
 p_initialize_radio2:
-0098 708a8660 jam 0x60 ,0x8a86 
-0099 708a8b3b jam 0x3b ,0x8a8b 
-009a 204000ac call p_dpll_on 
-009b 70804300 jam 0 ,core_config 
-009c 70804205 jam clksel_dpll ,core_clksel 
-009d 58557474 setarg 0x557474 
-009e 67f18968 store 3 ,0x8968 
-009f 7089606e jam 0x6e ,0x8960 
-00a0 2040032e call p_rx_dcoc 
-00a1 20400359 call p_rfpll_aac_ghpc 
-00a2 204000a6 call p_set_xtal_cap 
-00a3 7041480c jam system_clk_12m ,mem_system_clk 
-00a4 20406f4e call sadc_calibration 
-00a5 2020035b branch p_dpll_ring_ibias_calc 
+0097 708a8660 jam 0x60 ,0x8a86 
+0098 708a8b3b jam 0x3b ,0x8a8b 
+0099 204000ab call p_dpll_on 
+009a 70804300 jam 0 ,core_config 
+009b 70804205 jam clksel_dpll ,core_clksel 
+009c 58557474 setarg 0x557474 
+009d 67f18968 store 3 ,0x8968 
+009e 7089606e jam 0x6e ,0x8960 
+009f 2040033f call p_rx_dcoc 
+00a0 2040036a call p_rfpll_aac_ghpc 
+00a1 204000a5 call p_set_xtal_cap 
+00a2 7041480c jam system_clk_12m ,mem_system_clk 
+00a3 20406f4e call sadc_calibration 
+00a4 2020036c branch p_dpll_ring_ibias_calc 
 
 p_set_xtal_cap:
-00a6 20758000 rtn wake 
-00a7 37d98200 until null ,lpo_edge 
-00a8 6fe0c11c fetch 1 ,mem_xtal_c_sel 
-00a9 67f0813a store 1 ,core_xtal_cap 
-00aa 37d98200 until null ,lpo_edge 
-00ab 20600000 rtn 
+00a5 20758000 rtn wake 
+00a6 37d98200 until null ,lpo_edge 
+00a7 6fe0c11c fetch 1 ,mem_xtal_c_sel 
+00a8 67f0813a store 1 ,core_xtal_cap 
+00a9 37d98200 until null ,lpo_edge 
+00aa 20600000 rtn 
 
 p_dpll_on:
-00ac 6fe0c099 fetch 1 ,mem_fcomp_div 
-00ad c00c00b2 beq xtal_24m ,p_dpll_on_24m 
-00ae 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
-00af 1fe1fe06 or_into 0x06 ,pdata 
-00b0 67f08a02 store 1 ,0x8a02 
-00b1 708a05e0 jam 0xe0 ,0x8a05 
+00ab 6fe0c099 fetch 1 ,mem_fcomp_div 
+00ac c00c00b1 beq xtal_24m ,p_dpll_on_24m 
+00ad 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
+00ae 1fe1fe06 or_into 0x06 ,pdata 
+00af 67f08a02 store 1 ,0x8a02 
+00b0 708a05e0 jam 0xe0 ,0x8a05 
 
 p_dpll_on_24m:
-00b2 708a00d8 jam 0xd8 ,0x8a00 
-00b3 2000003c nop 60 
-00b4 708a01a0 jam 0xa0 ,0x8a01 
-00b5 708a00df jam 0xdf ,0x8a00 
-00b6 708a01fa jam 0xfa ,0x8a01 
-00b7 20000014 nop 20 
-00b8 708a009f jam 0x9f ,0x8a00 
-00b9 20600000 rtn 
+00b1 708a00d8 jam 0xd8 ,0x8a00 
+00b2 2000003c nop 60 
+00b3 708a01a0 jam 0xa0 ,0x8a01 
+00b4 708a00df jam 0xdf ,0x8a00 
+00b5 708a01fa jam 0xfa ,0x8a01 
+00b6 20000014 nop 20 
+00b7 708a009f jam 0x9f ,0x8a00 
+00b8 20600000 rtn 
 
 p_initialize_radio_16m:
-00ba 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
-00bb 1fe1fe06 or_into 0x06 ,pdata 
-00bc 67f08a02 store 1 ,0x8a02 
-00bd 70890f00 jam 0x00 ,0x890f 
-00be 708a8023 jam 0x23 ,0x8a80 
-00bf 708a81b0 jam 0xb0 ,0x8a81 
-00c0 58e40909 setarg 0xe40909 
-00c1 67f18a73 store 3 ,0x8a73 
-00c2 708a762a jam 0x2a ,0x8a76 
-00c3 70890204 jam 0x04 ,0x8902 
-00c4 20200098 branch p_initialize_radio2 
+00b9 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
+00ba 1fe1fe06 or_into 0x06 ,pdata 
+00bb 67f08a02 store 1 ,0x8a02 
+00bc 70890f00 jam 0x00 ,0x890f 
+00bd 708a8023 jam 0x23 ,0x8a80 
+00be 708a81b0 jam 0xb0 ,0x8a81 
+00bf 58e40909 setarg 0xe40909 
+00c0 67f18a73 store 3 ,0x8a73 
+00c1 708a762a jam 0x2a ,0x8a76 
+00c2 70890204 jam 0x04 ,0x8902 
+00c3 20200097 branch p_initialize_radio2 
 
 p_set_tx_power:
-00c5 6fe0c141 fetch 1 ,mem_tx_power 
-00c6 c0032225 beq tx_power_6db ,set_tx_power_7db 
-00c7 c00500cc beq tx_power_10db ,p_set_tx_power_10db 
-00c8 c04f00d1 beq tx_power_f30db ,p_set_tx_power_f30db 
-00c9 c04f80d5 beq tx_power_f35db ,p_set_tx_power_f35db 
-00ca c05000d9 beq tx_power_f40db ,p_set_tx_power_f40db 
-00cb 2020220e branch set_tx_power + 2 
+00c4 6fe0c141 fetch 1 ,mem_tx_power 
+00c5 c0032225 beq tx_power_6db ,set_tx_power_7db 
+00c6 c00500cb beq tx_power_10db ,p_set_tx_power_10db 
+00c7 c04f00d0 beq tx_power_f30db ,p_set_tx_power_f30db 
+00c8 c04f80d4 beq tx_power_f35db ,p_set_tx_power_f35db 
+00c9 c05000d8 beq tx_power_f40db ,p_set_tx_power_f40db 
+00ca 2020220e branch set_tx_power + 2 
 
 p_set_tx_power_10db:
-00cc 708a1425 jam 0x25 ,0x8a14 
-00cd 58a93f3f setarg 0xa93f3f 
-00ce 67f18a60 store 3 ,0x8a60 
-00cf 708a631f jam 0x1f ,0x8a63 
-00d0 20600000 rtn 
+00cb 708a1425 jam 0x25 ,0x8a14 
+00cc 58a93f3f setarg 0xa93f3f 
+00cd 67f18a60 store 3 ,0x8a60 
+00ce 708a631f jam 0x1f ,0x8a63 
+00cf 20600000 rtn 
 
 p_set_tx_power_f30db:
-00d1 708a1417 jam 0x17 ,0x8a14 
-00d2 58250300 setarg 0x250300 
-00d3 67f18a60 store 3 ,0x8a60 
-00d4 2020221a branch set_tx_power_8a63_28 
+00d0 708a1417 jam 0x17 ,0x8a14 
+00d1 58250300 setarg 0x250300 
+00d2 67f18a60 store 3 ,0x8a60 
+00d3 2020221a branch set_tx_power_8a63_28 
 
 p_set_tx_power_f35db:
-00d5 708a1417 jam 0x17 ,0x8a14 
-00d6 58250100 setarg 0x250100 
-00d7 67f18a60 store 3 ,0x8a60 
-00d8 2020221a branch set_tx_power_8a63_28 
+00d4 708a1417 jam 0x17 ,0x8a14 
+00d5 58250100 setarg 0x250100 
+00d6 67f18a60 store 3 ,0x8a60 
+00d7 2020221a branch set_tx_power_8a63_28 
 
 p_set_tx_power_f40db:
-00d9 708a1417 jam 0x17 ,0x8a14 
-00da 58250000 setarg 0x250000 
-00db 67f18a60 store 3 ,0x8a60 
-00dc 2020221a branch set_tx_power_8a63_28 
+00d8 708a1417 jam 0x17 ,0x8a14 
+00d9 58250000 setarg 0x250000 
+00da 67f18a60 store 3 ,0x8a60 
+00db 2020221a branch set_tx_power_8a63_28 
 
 p_otp_read_data:
-00dd 20406b3a call enable_otp_read 
-00de 20406b75 call otp_read_data + 1 
-00df 20206b38 branch otp_disable_chgpump 
+00dc 20406b3a call enable_otp_read 
+00dd 20406b75 call otp_read_data + 1 
+00de 20206b38 branch otp_disable_chgpump 
 
 p_dongle_write_kb_bind_status:
-00e0 df200001 arg 1 ,loopcnt 
-00e1 da204648 arg mem_dg_kb_bind_flag ,rega 
-00e2 da401f00 arg dongle_kb_bind_otp_offect ,regb 
-00e3 20206b45 branch otp_write 
+00df df200001 arg 1 ,loopcnt 
+00e0 da204648 arg mem_dg_kb_bind_flag ,rega 
+00e1 da401f00 arg dongle_kb_bind_otp_offect ,regb 
+00e2 20206b45 branch otp_write 
 
 p_dongle_read_kb_bind_status:
-00e4 da401f00 arg dongle_kb_bind_otp_offect ,regb 
-00e5 202047f1 branch dongle_read_kb_bind_status + 2 
+00e3 da401f00 arg dongle_kb_bind_otp_offect ,regb 
+00e4 202047f1 branch dongle_read_kb_bind_status + 2 
 
 p_set_otp_config:
-00e6 2035810d branch p_set_otp_config_wake ,wake 
-00e7 6fe2020d fetch 4 ,mem_otp_core_ldo 
-00e8 207a0000 rtn blank 
-00e9 37d98200 until null ,lpo_edge 
-00ea 6ff08136 fetch 1 ,0x8136 
-00eb 1fe17ef0 and pdata ,0xf0 ,pdata 
-00ec 6848820d fetcht 1 ,mem_otp_core_ldo 
-00ed 9841fe00 ior temp ,pdata 
-00ee 67f08136 store 1 ,0x8136 
-00ef 37d98200 until null ,lpo_edge 
-00f0 6ff08138 fetch 1 ,0x8138 
-00f1 1fe17e07 and pdata ,0x7 ,pdata 
-00f2 6848820e fetcht 1 ,mem_otp_verf_bg 
-00f3 18498400 lshift3 temp ,temp 
-00f4 9841fe00 ior temp ,pdata 
-00f5 67f08138 store 1 ,0x8138 
-00f6 37d98200 until null ,lpo_edge 
+00e5 2035810c branch p_set_otp_config_wake ,wake 
+00e6 6fe2020d fetch 4 ,mem_otp_core_ldo 
+00e7 207a0000 rtn blank 
+00e8 37d98200 until null ,lpo_edge 
+00e9 6ff08136 fetch 1 ,0x8136 
+00ea 1fe17ef0 and pdata ,0xf0 ,pdata 
+00eb 6848820d fetcht 1 ,mem_otp_core_ldo 
+00ec 9841fe00 ior temp ,pdata 
+00ed 67f08136 store 1 ,0x8136 
+00ee 37d98200 until null ,lpo_edge 
+00ef 6ff08138 fetch 1 ,0x8138 
+00f0 1fe17e07 and pdata ,0x7 ,pdata 
+00f1 6848820e fetcht 1 ,mem_otp_verf_bg 
+00f2 18498400 lshift3 temp ,temp 
+00f3 9841fe00 ior temp ,pdata 
+00f4 67f08138 store 1 ,0x8138 
+00f5 37d98200 until null ,lpo_edge 
 
 p_set_otp_config2:
-00f7 6ff08acb fetch 1 ,0x8acb 
-00f8 1fe17ef0 and pdata ,0xf0 ,pdata 
-00f9 6848820f fetcht 1 ,mem_otp_charge_pump 
-00fa 6048c15b storet 1 ,mem_otp_charge_pump_x 
-00fb 9841fe00 ior temp ,pdata 
-00fc 67f08acb store 1 ,0x8acb 
-00fd 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
-00fe 67e0c15c store 1 ,mem_otp_dpll_ibais_x 
-00ff 2feffe03 isolate1 3 ,pdata 
-0100 6ff08a06 fetch 1 ,0x8a06 
-0101 7920fe07 setflag true ,7 ,pdata 
-0102 67f08a06 store 1 ,0x8a06 
-0103 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
-0104 1fe10407 and pdata ,7 ,temp 
-0105 18520400 lshift4 temp ,temp 
-0106 18438400 lshift temp ,temp 
-0107 6048c438 storet 1 ,mem_ring_ibias_trim 
-0108 6ff08a02 fetch 1 ,0x8a02 
-0109 1fe17e1f and pdata ,0x1f ,pdata 
-010a 9841fe00 ior temp ,pdata 
-010b 67f08a02 store 1 ,0x8a02 
-010c 20600000 rtn 
+00f6 6ff08acb fetch 1 ,0x8acb 
+00f7 1fe17ef0 and pdata ,0xf0 ,pdata 
+00f8 6848820f fetcht 1 ,mem_otp_charge_pump 
+00f9 6048c15b storet 1 ,mem_otp_charge_pump_x 
+00fa 9841fe00 ior temp ,pdata 
+00fb 67f08acb store 1 ,0x8acb 
+00fc 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
+00fd 67e0c15c store 1 ,mem_otp_dpll_ibais_x 
+00fe 2feffe03 isolate1 3 ,pdata 
+00ff 6ff08a06 fetch 1 ,0x8a06 
+0100 7920fe07 setflag true ,7 ,pdata 
+0101 67f08a06 store 1 ,0x8a06 
+0102 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
+0103 1fe10407 and pdata ,7 ,temp 
+0104 18520400 lshift4 temp ,temp 
+0105 18438400 lshift temp ,temp 
+0106 6048c438 storet 1 ,mem_ring_ibias_trim 
+0107 6ff08a02 fetch 1 ,0x8a02 
+0108 1fe17e1f and pdata ,0x1f ,pdata 
+0109 9841fe00 ior temp ,pdata 
+010a 67f08a02 store 1 ,0x8a02 
+010b 20600000 rtn 
 
 p_set_otp_config_wake:
-010d 6fe1415b fetch 2 ,mem_otp_charge_pump_x 
-010e 207a0000 rtn blank 
-010f 67e1020f store 2 ,mem_otp_charge_pump 
-0110 202000f7 branch p_set_otp_config2 
+010c 6fe1415b fetch 2 ,mem_otp_charge_pump_x 
+010d 207a0000 rtn blank 
+010e 67e1020f store 2 ,mem_otp_charge_pump 
+010f 202000f6 branch p_set_otp_config2 
 
 p_rf_rx_enable:
-0111 2040686f call rf_debug_rx_gpio_high 
-0112 204021ba call rf_rx_agc_set 
-0113 18002a08 force 8 ,radio_ctrl 
-0114 18002a00 force 0 ,radio_ctrl 
-0115 580aaada setarg 0x0aaada 
-0116 67f18a0f store 3 ,0x8a0f 
-0117 708a2540 jam 0x40 ,0x8a25 
-0118 708a2610 jam 0x10 ,0x8a26 
-0119 2000003c nop 60 
-011a 708a01fb jam 0xfb ,0x8a01 
-011b 708a25ff jam 0xff ,0x8a25 
-011c 708a2630 jam 0x30 ,0x8a26 
-011d 708a16fe jam 0xfe ,0x8a16 
-011e 202021b4 branch rf_rx_enable + 14 
+0110 2040686f call rf_debug_rx_gpio_high 
+0111 204021ba call rf_rx_agc_set 
+0112 18002a08 force 8 ,radio_ctrl 
+0113 18002a00 force 0 ,radio_ctrl 
+0114 580aaada setarg 0x0aaada 
+0115 67f18a0f store 3 ,0x8a0f 
+0116 708a2540 jam 0x40 ,0x8a25 
+0117 708a2610 jam 0x10 ,0x8a26 
+0118 2000003c nop 60 
+0119 708a01fb jam 0xfb ,0x8a01 
+011a 708a25ff jam 0xff ,0x8a25 
+011b 708a2630 jam 0x30 ,0x8a26 
+011c 708a16fe jam 0xfe ,0x8a16 
+011d 202021b4 branch rf_rx_enable + 14 
 
 p_txon:
-011f 580aaa7e setarg 0x0aaa7e 
-0120 67f18a0f store 3 ,0x8a0f 
-0121 2000003c nop 60 
-0122 708a2500 jam 0x00 ,0x8a25 
-0123 708a260d jam 0x0d ,0x8a26 
-0124 708a16f6 jam 0xf6 ,0x8a16 
-0125 20202203 branch txon + 7 
+011e 580aaa7e setarg 0x0aaa7e 
+011f 67f18a0f store 3 ,0x8a0f 
+0120 2000003c nop 60 
+0121 708a2500 jam 0x00 ,0x8a25 
+0122 708a260d jam 0x0d ,0x8a26 
+0123 708a16f6 jam 0xf6 ,0x8a16 
+0124 20202203 branch txon + 7 
 
 p_usb_isr:
-0126 6ff08c22 fetch 1 ,core_usb_status 
-0127 2feffe03 isolate1 usb_status_reset ,pdata 
-0128 20408132 call p_usb_init_restart ,true 
-0129 2020790a branch usb_isr + 4 
+0125 6ff08c22 fetch 1 ,core_usb_status 
+0126 2feffe03 isolate1 usb_status_reset ,pdata 
+0127 20408131 call p_usb_init_restart ,true 
+0128 2020790a branch usb_isr + 4 
 
 p_usb_init:
-012a 58000aa0 setarg mem_dg_rssi_noise_dg_buffer 
-012b 20407d88 call ice_set_write_bp 
-012c 20407396 call enable_authrom 
-012d 20407932 call usb_init_param 
-012e 58004764 setarg mem_usb_ep2_config 
-012f 67e107a9 store 2 ,mem_hidreportdesc_m 
-0130 58000244 setarg p_dongle_g24_mouse 
-0131 67e145e4 store 2 ,mem_cb_24g_data_device1 
+0129 58000aa0 setarg mem_dg_rssi_noise_dg_buffer 
+012a 20407d88 call ice_set_write_bp 
+012b 20407396 call enable_authrom 
+012c 20407932 call usb_init_param 
+012d 58004764 setarg mem_usb_ep2_config 
+012e 67e107a9 store 2 ,mem_hidreportdesc_m 
+012f 58000243 setarg p_dongle_g24_mouse 
+0130 67e145e4 store 2 ,mem_cb_24g_data_device1 
 
 p_usb_init_restart:
-0132 708c0000 jam 0x00 ,core_usb_config 
-0133 20002710 nop 10000 
-0134 708c1200 jam 0x0 ,core_usb_hmode 
-0135 6ff10050 fetch 2 ,core_clkoff 
-0136 793ffe0a set0 clock_off_usb ,pdata 
-0137 67f10050 store 2 ,core_clkoff 
-0138 708c1021 jam 0x21 ,core_usb_epmap 
-0139 708c119d jam 0x9d ,core_usb_pupd 
-013a 708c003c jam 0x3c ,core_usb_config 
-013b 58000da0 setarg mem_usb_buff_new 
-013c 67f10c02 store 2 ,core_usb_rx_saddr 
-013d 67f10c06 store 2 ,core_usb_rxptr 
-013e 58000ea0 setarg mem_usb_buff_new_end 
-013f 67f10c04 store 2 ,core_usb_rx_eaddr 
-0140 708c1280 jam 0x80 ,core_usb_hmode 
-0141 708c0100 jam 0 ,core_usb_addr 
-0142 708c22ff jam 0xff ,core_usb_status 
-0143 5800095f setarg mem_usb_clear_mem_end 
-0144 d8a0086d arg mem_usb_clear_mem_start ,contw 
-0145 98a67200 isub contw ,loopcnt 
-0146 20207ca1 branch clear_mem 
+0131 708c0000 jam 0x00 ,core_usb_config 
+0132 20002710 nop 10000 
+0133 708c1200 jam 0x0 ,core_usb_hmode 
+0134 6ff10050 fetch 2 ,core_clkoff 
+0135 793ffe0a set0 clock_off_usb ,pdata 
+0136 67f10050 store 2 ,core_clkoff 
+0137 708c1021 jam 0x21 ,core_usb_epmap 
+0138 708c119d jam 0x9d ,core_usb_pupd 
+0139 708c003c jam 0x3c ,core_usb_config 
+013a 58000da0 setarg mem_usb_buff_new 
+013b 67f10c02 store 2 ,core_usb_rx_saddr 
+013c 67f10c06 store 2 ,core_usb_rxptr 
+013d 58000ea0 setarg mem_usb_buff_new_end 
+013e 67f10c04 store 2 ,core_usb_rx_eaddr 
+013f 708c1280 jam 0x80 ,core_usb_hmode 
+0140 708c0100 jam 0 ,core_usb_addr 
+0141 708c22ff jam 0xff ,core_usb_status 
+0142 5800095f setarg mem_usb_clear_mem_end 
+0143 d8a0086d arg mem_usb_clear_mem_start ,contw 
+0144 98a67200 isub contw ,loopcnt 
+0145 20207ca1 branch clear_mem 
 
 p_usb_rx_data:
-0147 78547c00 disable user 
-0148 6ff08c25 fetch 1 ,core_usb_txbusy 
-0149 c2837dba bbit1 usb_status_rxfull ,enable_user 
-014a 18a22200 copy contw ,rega 
-014b 20407989 call usb_rx_len 
-014c 1a220a00 copy rega ,contw 
-014d 20207994 branch usb_rx_read 
+0146 78547c00 disable user 
+0147 6ff08c25 fetch 1 ,core_usb_txbusy 
+0148 c2837dba bbit1 usb_status_rxfull ,enable_user 
+0149 18a22200 copy contw ,rega 
+014a 20407989 call usb_rx_len 
+014b 1a220a00 copy rega ,contw 
+014c 20207994 branch usb_rx_read 
 
 p_usb_rx_data_out:
-014e 6fe0870c fetch 1 ,mem_usb_read_len 
-014f 1fe67c02 sub pdata ,2 ,null 
-0150 20210163 branch p_dongle_hci_event_invalid_packet ,positive 
-0151 6fe08877 fetch 1 ,mem_usb0_set_report_data + 2 
-0152 c0808163 bne 0x01 ,p_dongle_hci_event_invalid_packet 
-0153 efe08006 ifetch 1 ,contr 
-0154 67e0c6df store 1 ,mem_dongle_usb_opcode 
-0155 e8408006 ifetcht 1 ,contr 
-0156 18c22200 copy contr ,rega 
-0157 6048c6e0 storet 1 ,mem_dongle_usb_len 
-0158 20200159 branch p_dongle_usb_hci_cmd_control 
+014d 6fe0870c fetch 1 ,mem_usb_read_len 
+014e 1fe67c02 sub pdata ,2 ,null 
+014f 20210162 branch p_dongle_hci_event_invalid_packet ,positive 
+0150 6fe08877 fetch 1 ,mem_usb0_set_report_data + 2 
+0151 c0808162 bne 0x01 ,p_dongle_hci_event_invalid_packet 
+0152 efe08006 ifetch 1 ,contr 
+0153 67e0c6df store 1 ,mem_dongle_usb_opcode 
+0154 e8408006 ifetcht 1 ,contr 
+0155 18c22200 copy contr ,rega 
+0156 6048c6e0 storet 1 ,mem_dongle_usb_len 
+0157 20200158 branch p_dongle_usb_hci_cmd_control 
 
 p_dongle_usb_hci_cmd_control:
-0159 6fe0c62b fetch 1 ,mem_24g_bind_device_living 
-015a 203a0163 branch p_dongle_hci_event_invalid_packet ,blank 
-015b 6fe0c6df fetch 1 ,mem_dongle_usb_opcode 
-015c c0028161 beq hci_cmd_get_device_info ,p_dongle_usb_hci_cmd_get_deivce_info 
-015d c0010161 beq hci_cmd_auth_enable ,p_dongle_usb_hci_cmd_get_deivce_info 
-015e c0018161 beq hci_cmd_voice_contral ,p_dongle_usb_hci_cmd_get_deivce_info 
-015f c0020161 beq hci_cmd_dpi_contral ,p_dongle_usb_hci_cmd_get_deivce_info 
-0160 20200163 branch p_dongle_hci_event_invalid_packet 
+0158 6fe0c62b fetch 1 ,mem_24g_bind_device_living 
+0159 203a0162 branch p_dongle_hci_event_invalid_packet ,blank 
+015a 6fe0c6df fetch 1 ,mem_dongle_usb_opcode 
+015b c0028160 beq hci_cmd_get_device_info ,p_dongle_usb_hci_cmd_get_deivce_info 
+015c c0010160 beq hci_cmd_auth_enable ,p_dongle_usb_hci_cmd_get_deivce_info 
+015d c0018160 beq hci_cmd_voice_contral ,p_dongle_usb_hci_cmd_get_deivce_info 
+015e c0020160 beq hci_cmd_dpi_contral ,p_dongle_usb_hci_cmd_get_deivce_info 
+015f 20200162 branch p_dongle_hci_event_invalid_packet 
 
 p_dongle_usb_hci_cmd_get_deivce_info:
-0161 7046e1a2 jam report_id_data_out ,mem_dongle_usb_ep2_data_flag 
-0162 2020017e branch p_dongle_usb_ack_prep 
+0160 7046e1a2 jam report_id_data_out ,mem_dongle_usb_ep2_data_flag 
+0161 2020017d branch p_dongle_usb_ack_prep 
 
 p_dongle_hci_event_invalid_packet:
-0163 70490440 jam 0x40 ,mem_usb_rf_state_data 
-0164 704905a1 jam 0xA1 ,mem_usb_rf_state_data + 1 
-0165 d8400001 arg 1 ,temp 
+0162 7048c340 jam 0x40 ,mem_usb_rf_state_data 
+0163 7048c4a1 jam 0xA1 ,mem_usb_rf_state_data + 1 
+0164 d8400001 arg 1 ,temp 
 
 p_dongle_hci_event_ack_packet:
-0166 da200000 arg 0 ,rega 
-0167 6fe0c6df fetch 1 ,mem_dongle_usb_opcode 
-0168 1fe22600 copy pdata ,regc 
+0165 da200000 arg 0 ,rega 
+0166 6fe0c6df fetch 1 ,mem_dongle_usb_opcode 
+0167 1fe22600 copy pdata ,regc 
 
 p_dongle_hci_event_packet:
-0169 7046df06 jam hci_event_cmd_res ,mem_dongle_usb_opcode 
-016a 58000002 setarg 2 
-016b 9a20fe00 iadd rega ,pdata 
-016c 7046de02 jam 0x02 ,mem_dongle_usb_header 
-016d 67e0c6e0 store 1 ,mem_dongle_usb_len 
-016e 604c0678 storet 8 ,mem_temp 
-016f 684c0678 fetcht 8 ,mem_temp 
-0170 d8a04906 arg mem_usb_rf_state_data + 2 ,contw 
-0171 6fe1c6de fetch 3 ,mem_dongle_usb_header 
-0172 e7e18005 istore 3 ,contw 
-0173 1a627e00 copy regc ,pdata 
-0174 e7e08005 istore 1 ,contw 
-0175 e0408005 istoret 1 ,contw 
-0176 1a227200 copy rega ,loopcnt 
-0177 1a420c00 copy regb ,contr 
-0178 20407cda call memcpy 
-0179 70066f25 jam usb_ep2_mskb_state ,mem_fifo_temp 
-017a da204947 arg mem_usb_ep2_fifo ,rega 
-017b 20207d8b branch fifo_in 
+0168 7046df06 jam hci_event_cmd_res ,mem_dongle_usb_opcode 
+0169 58000002 setarg 2 
+016a 9a20fe00 iadd rega ,pdata 
+016b 7046de02 jam 0x02 ,mem_dongle_usb_header 
+016c 67e0c6e0 store 1 ,mem_dongle_usb_len 
+016d 604c0678 storet 8 ,mem_temp 
+016e 684c0678 fetcht 8 ,mem_temp 
+016f d8a048c5 arg mem_usb_rf_state_data + 2 ,contw 
+0170 6fe1c6de fetch 3 ,mem_dongle_usb_header 
+0171 e7e18005 istore 3 ,contw 
+0172 1a627e00 copy regc ,pdata 
+0173 e7e08005 istore 1 ,contw 
+0174 e0408005 istoret 1 ,contw 
+0175 1a227200 copy rega ,loopcnt 
+0176 1a420c00 copy regb ,contr 
+0177 20407cda call memcpy 
+0178 70066f25 jam usb_ep2_mskb_state ,mem_fifo_temp 
+0179 da204906 arg mem_usb_ep2_fifo ,rega 
+017a 20207d8b branch fifo_in 
 
 p_usb_rx_data_authca_out:
-017c 7046e1a4 jam report_id_authca_data_out ,mem_dongle_usb_ep2_data_flag 
-017d 2020017e branch p_dongle_usb_ack_prep 
+017b 7046e1a4 jam report_id_authca_data_out ,mem_dongle_usb_ep2_data_flag 
+017c 2020017d branch p_dongle_usb_ack_prep 
 
 p_dongle_usb_ack_prep:
-017e 20400187 call p_dongle_g24_usb_ep2_ack_data_clr 
-017f 704611a2 jam report_id_data_out ,mem_24g_ackpayload_enable 
-0180 704840a2 jam report_id_data_out ,mem_24g_ackpayload_enable_temp 
-0181 6f208876 fetchr loopcnt ,1 ,mem_usb0_set_report_data + 1 
-0182 1f20f202 increase 2 ,loopcnt 
-0183 6720c6e2 storer loopcnt ,1 ,mem_dongle_usb_ep2_data_len 
-0184 d8c00875 arg mem_usb0_set_report_data ,contr 
-0185 d8a046e3 arg mem_dongle_g24_usb_ep2_ack_data ,contw 
-0186 20207cda branch memcpy 
+017d 20400186 call p_dongle_g24_usb_ep2_ack_data_clr 
+017e 704611a2 jam report_id_data_out ,mem_24g_ackpayload_enable 
+017f 704840a2 jam report_id_data_out ,mem_24g_ackpayload_enable_temp 
+0180 6f208876 fetchr loopcnt ,1 ,mem_usb0_set_report_data + 1 
+0181 1f20f202 increase 2 ,loopcnt 
+0182 6720c6e2 storer loopcnt ,1 ,mem_dongle_usb_ep2_data_len 
+0183 d8c00875 arg mem_usb0_set_report_data ,contr 
+0184 d8a046e3 arg mem_dongle_g24_usb_ep2_ack_data ,contw 
+0185 20207cda branch memcpy 
 
 p_dongle_g24_usb_ep2_ack_data_clr:
-0187 df200040 arg 64 ,loopcnt 
-0188 d8a046e3 arg mem_dongle_g24_usb_ep2_ack_data ,contw 
-0189 20207ca1 branch clear_mem 
+0186 df200040 arg 64 ,loopcnt 
+0187 d8a046e3 arg mem_dongle_g24_usb_ep2_ack_data ,contw 
+0188 20207ca1 branch clear_mem 
 
 p_usb_rx_len:
-018a 69510c02 fetchr contus ,2 ,core_usb_rx_saddr 
-018b 6a110c04 fetchr contue ,2 ,core_usb_rx_eaddr 
-018c 68710c06 fetchr contu ,2 ,core_usb_rxptr 
-018d 18627e00 copy contu ,pdata 
-018e efe10003 ifetch 2 ,contu 
-018f 1fec8400 rshift8 pdata ,temp 
-0190 18518400 rshift4 temp ,temp 
-0191 d8c00fff arg 0xfff ,contr 
-0192 98c17200 iand contr ,loopcnt 
-0193 6721070c storer loopcnt ,2 ,mem_usb_read_len 
-0194 1f267c00 sub loopcnt ,0 ,null 
-0195 2042818a call p_usb_rx_len ,zero 
-0196 1f267c00 sub loopcnt ,0 ,null 
-0197 2042fd7c call ice_break ,zero 
-0198 20600000 rtn 
+0189 69510c02 fetchr contus ,2 ,core_usb_rx_saddr 
+018a 6a110c04 fetchr contue ,2 ,core_usb_rx_eaddr 
+018b 68710c06 fetchr contu ,2 ,core_usb_rxptr 
+018c 18627e00 copy contu ,pdata 
+018d efe10003 ifetch 2 ,contu 
+018e 1fec8400 rshift8 pdata ,temp 
+018f 18518400 rshift4 temp ,temp 
+0190 d8c00fff arg 0xfff ,contr 
+0191 98c17200 iand contr ,loopcnt 
+0192 6721070c storer loopcnt ,2 ,mem_usb_read_len 
+0193 1f267c00 sub loopcnt ,0 ,null 
+0194 20428189 call p_usb_rx_len ,zero 
+0195 1f267c00 sub loopcnt ,0 ,null 
+0196 2042fd7c call ice_break ,zero 
+0197 20600000 rtn 
 
 p_usb_rx:
-0199 6fe08709 fetch 1 ,mem_usb_status 
-019a c4028000 rtnbit0 usb_status_rxready 
-019b 2040018a call p_usb_rx_len 
-019c 6048c697 storet 1 ,mem_usb_rx_endpoint 
-019d 2841fe0d compare 13 ,temp ,0xff 
-019e 2020f999 branch usb_rx_ep13 ,true 
-019f 6fe0c696 fetch 1 ,mem_setreport_count 
-01a0 c00081b0 beq 1 ,p_setreport_next_page_data 
-01a1 1f267c00 sub loopcnt ,0 ,null 
-01a2 2042fd7c call ice_break ,zero 
-01a3 d8a0086d arg mem_usb_setup ,contw 
-01a4 20407994 call usb_rx_read 
-01a5 202001a6 branch p_usb_rx_next 
+0198 6fe08709 fetch 1 ,mem_usb_status 
+0199 c4028000 rtnbit0 usb_status_rxready 
+019a 20400189 call p_usb_rx_len 
+019b 6048c697 storet 1 ,mem_usb_rx_endpoint 
+019c 2841fe0d compare 13 ,temp ,0xff 
+019d 2020f999 branch usb_rx_ep13 ,true 
+019e 6fe0c696 fetch 1 ,mem_setreport_count 
+019f c00081af beq 1 ,p_setreport_next_page_data 
+01a0 1f267c00 sub loopcnt ,0 ,null 
+01a1 2042fd7c call ice_break ,zero 
+01a2 d8a0086d arg mem_usb_setup ,contw 
+01a3 20407994 call usb_rx_read 
+01a4 202001a5 branch p_usb_rx_next 
 
 p_usb_rx_next:
-01a6 6fe0870c fetch 1 ,mem_usb_read_len 
-01a7 c0007986 beq 0x00 ,usb_rx_no_data 
-01a8 c000f9b6 beq 0x01 ,usb_out_one_byte 
-01a9 1fe67c07 sub pdata ,7 ,null 
-01aa 20610000 rtn positive 
-01ab 202001c0 branch p_usb_class_type 
+01a5 6fe0870c fetch 1 ,mem_usb_read_len 
+01a6 c0007986 beq 0x00 ,usb_rx_no_data 
+01a7 c000f9b6 beq 0x01 ,usb_out_one_byte 
+01a8 1fe67c07 sub pdata ,7 ,null 
+01a9 20610000 rtn positive 
+01aa 202001bf branch p_usb_class_type 
 
 p_dongle_usb_data_received_analysis:
-01ac 6fe08875 fetch 1 ,mem_usb0_set_report_data 
-01ad c051014e beq report_id_data_out ,p_usb_rx_data_out 
-01ae c052017c beq report_id_authca_data_out ,p_usb_rx_data_authca_out 
-01af 20600000 rtn 
+01ab 6fe08875 fetch 1 ,mem_usb0_set_report_data 
+01ac c051014d beq report_id_data_out ,p_usb_rx_data_out 
+01ad c052017b beq report_id_authca_data_out ,p_usb_rx_data_authca_out 
+01ae 20600000 rtn 
 
 p_setreport_next_page_data:
-01b0 d8a00875 arg mem_usb0_set_report_data ,contw 
-01b1 20407994 call usb_rx_read 
-01b2 70469600 jam 0 ,mem_setreport_count 
-01b3 6fe0870c fetch 1 ,mem_usb_read_len 
-01b4 c00081ba beq 0x01 ,p_usb_out_one_byte 
-01b5 7008f701 jam 1 ,mem_usb0_get_set_report 
-01b6 6fe1086f fetch 2 ,mem_usb_setup_bvalue 
-01b7 67e108f5 store 2 ,mem_usb_setup_bvalue_temp 
-01b8 708c1b03 jam 0x03 ,core_usb_clear_nak 
-01b9 20600000 rtn 
+01af d8a00875 arg mem_usb0_set_report_data ,contw 
+01b0 20407994 call usb_rx_read 
+01b1 70469600 jam 0 ,mem_setreport_count 
+01b2 6fe0870c fetch 1 ,mem_usb_read_len 
+01b3 c00081b9 beq 0x01 ,p_usb_out_one_byte 
+01b4 7008f701 jam 1 ,mem_usb0_get_set_report 
+01b5 6fe1086f fetch 2 ,mem_usb_setup_bvalue 
+01b6 67e108f5 store 2 ,mem_usb_setup_bvalue_temp 
+01b7 708c1b03 jam 0x03 ,core_usb_clear_nak 
+01b8 20600000 rtn 
 
 p_usb_out_one_byte:
-01ba 6fe0886d fetch 1 ,mem_usb_setup 
-01bb c3838000 rtnbit1 7 
-01bc 6fe08875 fetch 1 ,mem_usb0_set_report_data 
-01bd 20407b6a call usb_get_led_status 
-01be 708c1b01 jam 0x1 ,core_usb_clear_nak 
-01bf 20600000 rtn 
+01b9 6fe0886d fetch 1 ,mem_usb_setup 
+01ba c3838000 rtnbit1 7 
+01bb 6fe08875 fetch 1 ,mem_usb0_set_report_data 
+01bc 20407b6a call usb_get_led_status 
+01bd 708c1b01 jam 0x1 ,core_usb_clear_nak 
+01be 20600000 rtn 
 
 p_usb_class_type:
-01c0 793f8023 set0 mark_isstr ,mark 
-01c1 6fe0886d fetch 1 ,mem_usb_setup_bmrequesttype 
-01c2 1fe17e80 and_into 0x80 ,pdata 
-01c3 c04079ba beq in_device ,usb_in_device 
-01c4 c00001c6 beq out_device ,p_usb_out_device 
-01c5 2020235a branch assert 
+01bf 793f8023 set0 mark_isstr ,mark 
+01c0 6fe0886d fetch 1 ,mem_usb_setup_bmrequesttype 
+01c1 1fe17e80 and_into 0x80 ,pdata 
+01c2 c04079ba beq in_device ,usb_in_device 
+01c3 c00001c5 beq out_device ,p_usb_out_device 
+01c4 2020235a branch assert 
 
 p_usb_out_device:
-01c6 6fe0886d fetch 1 ,mem_usb_setup_bmrequesttype 
-01c7 1ff1fe00 rshift4 pdata ,pdata 
-01c8 1fe37e00 rshift pdata ,pdata 
-01c9 1fe17e03 and_into 0x03 ,pdata 
-01ca c00001ce beq standard_req ,p_usb_out_standard_req 
-01cb c0008209 beq class_req ,p_usb_out_class_req 
-01cc c00179e3 beq manufacturer_req ,usb_out_manufacturer_req 
-01cd 2020235a branch assert 
+01c5 6fe0886d fetch 1 ,mem_usb_setup_bmrequesttype 
+01c6 1ff1fe00 rshift4 pdata ,pdata 
+01c7 1fe37e00 rshift pdata ,pdata 
+01c8 1fe17e03 and_into 0x03 ,pdata 
+01c9 c00001cd beq standard_req ,p_usb_out_standard_req 
+01ca c0008208 beq class_req ,p_usb_out_class_req 
+01cb c00179e3 beq manufacturer_req ,usb_out_manufacturer_req 
+01cc 2020235a branch assert 
 
 p_usb_out_standard_req:
-01ce 6fe0886e fetch 1 ,mem_usb_setup_brequest 
-01cf c00081d6 beq clear_feature ,p_usb0_request_clear_feature 
-01d0 c001fadb beq set_feature ,usb0_request_set_feature 
-01d1 c002fb06 beq set_address ,usb0_request_set_address 
-01d2 c004fb1f beq set_configuration ,usb0_request_set_configuration 
-01d3 c00581f0 beq set_interface ,p_usb0_request_set_interface 
-01d4 c003f9e4 beq set_descriptor ,usb0_force_stall 
-01d5 202079e4 branch usb0_force_stall 
+01cd 6fe0886e fetch 1 ,mem_usb_setup_brequest 
+01ce c00081d5 beq clear_feature ,p_usb0_request_clear_feature 
+01cf c001fadb beq set_feature ,usb0_request_set_feature 
+01d0 c002fb06 beq set_address ,usb0_request_set_address 
+01d1 c004fb1f beq set_configuration ,usb0_request_set_configuration 
+01d2 c00581ef beq set_interface ,p_usb0_request_set_interface 
+01d3 c003f9e4 beq set_descriptor ,usb0_force_stall 
+01d4 202079e4 branch usb0_force_stall 
 
 p_usb0_request_clear_feature:
-01d6 6fe0886b fetch 1 ,mem_usb0_state 
-01d7 c08279e4 bne dev_configured ,usb0_force_stall 
-01d8 6fe08873 fetch 1 ,mem_usb_setup_blength 
-01d9 c08079e4 bne 0 ,usb0_force_stall 
-01da 6fe08874 fetch 1 ,mem_usb_setup_blengthh 
-01db c08079e4 bne 0 ,usb0_force_stall 
-01dc 6fe08870 fetch 1 ,mem_usb_setup_bvalueh 
-01dd c08079e4 bne 0 ,usb0_force_stall 
-01de 6fe08872 fetch 1 ,mem_usb_setup_windex + 1 
-01df c08079e4 bne 0 ,usb0_force_stall 
-01e0 6fe0886d fetch 1 ,mem_usb_setup_bmrequesttype 
-01e1 c00001e5 beq out_device ,p_usb0_request_clear_feature_out_device 
-01e2 c000fac8 beq out_interface ,usb0_request_clear_feature_out_interface 
-01e3 c0017ac9 beq out_endpoint ,usb0_request_clear_feature_out_endpoint 
-01e4 202079e4 branch usb0_force_stall 
+01d5 6fe0886b fetch 1 ,mem_usb0_state 
+01d6 c08279e4 bne dev_configured ,usb0_force_stall 
+01d7 6fe08873 fetch 1 ,mem_usb_setup_blength 
+01d8 c08079e4 bne 0 ,usb0_force_stall 
+01d9 6fe08874 fetch 1 ,mem_usb_setup_blengthh 
+01da c08079e4 bne 0 ,usb0_force_stall 
+01db 6fe08870 fetch 1 ,mem_usb_setup_bvalueh 
+01dc c08079e4 bne 0 ,usb0_force_stall 
+01dd 6fe08872 fetch 1 ,mem_usb_setup_windex + 1 
+01de c08079e4 bne 0 ,usb0_force_stall 
+01df 6fe0886d fetch 1 ,mem_usb_setup_bmrequesttype 
+01e0 c00001e4 beq out_device ,p_usb0_request_clear_feature_out_device 
+01e1 c000fac8 beq out_interface ,usb0_request_clear_feature_out_interface 
+01e2 c0017ac9 beq out_endpoint ,usb0_request_clear_feature_out_endpoint 
+01e3 202079e4 branch usb0_force_stall 
 
 p_usb0_request_clear_feature_out_device:
-01e5 6fe0886f fetch 1 ,mem_usb_setup_bvalue 
-01e6 c080f9e4 bne device_remote_wakeup ,usb0_force_stall 
-01e7 6ff08c00 fetch 1 ,core_usb_config 
-01e8 793ffe07 set0 7 ,pdata 
-01e9 67f08c00 store 1 ,core_usb_config 
-01ea 70090100 jam 0 ,mem_usb_remote_wakeup 
-01eb 70090201 jam 1 ,mem_usb_clear_remote_wakeup 
-01ec 6fe08903 fetch 1 ,mem_sdsystem_wakeup_flag 
-01ed 203a79e9 branch usb0_reply_zerolen ,blank 
-01ee 70090300 jam 0 ,mem_sdsystem_wakeup_flag 
-01ef 202079e9 branch usb0_reply_zerolen 
+01e4 6fe0886f fetch 1 ,mem_usb_setup_bvalue 
+01e5 c080f9e4 bne device_remote_wakeup ,usb0_force_stall 
+01e6 6ff08c00 fetch 1 ,core_usb_config 
+01e7 793ffe07 set0 7 ,pdata 
+01e8 67f08c00 store 1 ,core_usb_config 
+01e9 70090100 jam 0 ,mem_usb_remote_wakeup 
+01ea 70090201 jam 1 ,mem_usb_clear_remote_wakeup 
+01eb 6fe08903 fetch 1 ,mem_sdsystem_wakeup_flag 
+01ec 203a79e9 branch usb0_reply_zerolen ,blank 
+01ed 70090300 jam 0 ,mem_sdsystem_wakeup_flag 
+01ee 202079e9 branch usb0_reply_zerolen 
 
 p_usb0_request_set_interface:
-01f0 6fe0886b fetch 1 ,mem_usb0_state 
-01f1 c08279e4 bne dev_configured ,usb0_force_stall 
-01f2 6fe0886d fetch 1 ,mem_usb_setup_bmrequesttype 
-01f3 c080f9e4 bne out_interface ,usb0_force_stall 
-01f4 6fe0886f fetch 1 ,mem_usb_setup_bvalue 
-01f5 c08079e4 bne 0 ,usb0_force_stall 
-01f6 6fe08870 fetch 1 ,mem_usb_setup_bvalueh 
-01f7 c08079e4 bne 0 ,usb0_force_stall 
-01f8 6fe08873 fetch 1 ,mem_usb_setup_blength 
-01f9 c08079e4 bne 0 ,usb0_force_stall 
-01fa 6fe08874 fetch 1 ,mem_usb_setup_blengthh 
-01fb c08079e4 bne 0 ,usb0_force_stall 
-01fc 6fe08872 fetch 1 ,mem_usb_setup_windex + 1 
-01fd c08079e4 bne 0 ,usb0_force_stall 
-01fe 202079e9 branch usb0_reply_zerolen 
+01ef 6fe0886b fetch 1 ,mem_usb0_state 
+01f0 c08279e4 bne dev_configured ,usb0_force_stall 
+01f1 6fe0886d fetch 1 ,mem_usb_setup_bmrequesttype 
+01f2 c080f9e4 bne out_interface ,usb0_force_stall 
+01f3 6fe0886f fetch 1 ,mem_usb_setup_bvalue 
+01f4 c08079e4 bne 0 ,usb0_force_stall 
+01f5 6fe08870 fetch 1 ,mem_usb_setup_bvalueh 
+01f6 c08079e4 bne 0 ,usb0_force_stall 
+01f7 6fe08873 fetch 1 ,mem_usb_setup_blength 
+01f8 c08079e4 bne 0 ,usb0_force_stall 
+01f9 6fe08874 fetch 1 ,mem_usb_setup_blengthh 
+01fa c08079e4 bne 0 ,usb0_force_stall 
+01fb 6fe08872 fetch 1 ,mem_usb_setup_windex + 1 
+01fc c08079e4 bne 0 ,usb0_force_stall 
+01fd 202079e9 branch usb0_reply_zerolen 
 
 p_usb0_request_get_descriptor:
-01ff 6fe08870 fetch 1 ,mem_usb_setup_bvalueh 
-0200 c000fa14 beq dsc_device ,dsc_device_info 
-0201 c0010206 beq dsc_config ,p_dsc_config_info 
-0202 c001fa30 beq dsc_string ,dsc_string_info 
-0203 c010fa09 beq dsc_hid ,dsc_hid_info 
-0204 c0117a3e beq dsc_hid_report ,dsc_hid_report_info 
-0205 202079e4 branch usb0_force_stall 
+01fe 6fe08870 fetch 1 ,mem_usb_setup_bvalueh 
+01ff c000fa14 beq dsc_device ,dsc_device_info 
+0200 c0010205 beq dsc_config ,p_dsc_config_info 
+0201 c001fa30 beq dsc_string ,dsc_string_info 
+0202 c010fa09 beq dsc_hid ,dsc_hid_info 
+0203 c0117a3e beq dsc_hid_report ,dsc_hid_report_info 
+0204 202079e4 branch usb0_force_stall 
 
 p_dsc_config_info:
-0206 58004698 setarg mem_config_new 
-0207 6848c698 fetcht 1 ,mem_config_new 
-0208 20207a18 branch dsc_info_set_data_len 
+0205 58004698 setarg mem_config_new 
+0206 6848c698 fetcht 1 ,mem_config_new 
+0207 20207a18 branch dsc_info_set_data_len 
 
 p_usb_out_class_req:
-0209 6fe0886e fetch 1 ,mem_usb_setup_brequest 
-020a c0057b4b beq set_idle ,usb_set_idle 
-020b c004820e beq set_report ,p_usb_set_report 
-020c c005fb7c beq set_protocol ,usb_set_protocol_req 
-020d 202079e4 branch usb0_force_stall 
+0208 6fe0886e fetch 1 ,mem_usb_setup_brequest 
+0209 c0057b4b beq set_idle ,usb_set_idle 
+020a c004820d beq set_report ,p_usb_set_report 
+020b c005fb7c beq set_protocol ,usb_set_protocol_req 
+020c 202079e4 branch usb0_force_stall 
 
 p_usb_set_report:
-020e 708c1b02 jam 0x2 ,core_usb_clear_nak 
-020f 20003a98 nop 15000 
-0210 d8a00875 arg mem_usb0_set_report_data ,contw 
-0211 20400147 call p_usb_rx_data 
-0212 2034021b branch p_usb_set_report_delay ,user 
-0213 6ff10c22 fetch 2 ,core_usb_status 
-0214 67f10c22 store 2 ,core_usb_status 
-0215 7008f701 jam 1 ,mem_usb0_get_set_report 
-0216 20407b6e call usb_set_report_resume_judge 
-0217 6fe1086f fetch 2 ,mem_usb_setup_bvalue 
-0218 67e108f5 store 2 ,mem_usb_setup_bvalue_temp 
-0219 708c1b03 jam 0x3 ,core_usb_clear_nak 
-021a 20207b65 branch usb_set_report_next 
+020d 708c1b02 jam 0x2 ,core_usb_clear_nak 
+020e 20003a98 nop 15000 
+020f d8a00875 arg mem_usb0_set_report_data ,contw 
+0210 20400146 call p_usb_rx_data 
+0211 2034021a branch p_usb_set_report_delay ,user 
+0212 6ff10c22 fetch 2 ,core_usb_status 
+0213 67f10c22 store 2 ,core_usb_status 
+0214 7008f701 jam 1 ,mem_usb0_get_set_report 
+0215 20407b6e call usb_set_report_resume_judge 
+0216 6fe1086f fetch 2 ,mem_usb_setup_bvalue 
+0217 67e108f5 store 2 ,mem_usb_setup_bvalue_temp 
+0218 708c1b03 jam 0x3 ,core_usb_clear_nak 
+0219 20207b65 branch usb_set_report_next 
 
 p_usb_set_report_delay:
-021b 6fe0c696 fetch 1 ,mem_setreport_count 
-021c 1fe0fe01 pincrease 1 
-021d 67e0c696 store 1 ,mem_setreport_count 
-021e 20600000 rtn 
+021a 6fe0c696 fetch 1 ,mem_setreport_count 
+021b 1fe0fe01 pincrease 1 
+021c 67e0c696 store 1 ,mem_setreport_count 
+021d 20600000 rtn 
 
 p_usb_tx:
-021f 6ff08c25 fetch 1 ,core_usb_txbusy 
-0220 1fe17e0f and_into 0x0f ,pdata 
-0221 243a7c30 nbranch usb_inwake_state_tx_dispose ,blank 
-0222 6fe0890e fetch 1 ,mem_usb_device_enumeration_endflag 
-0223 203a7c06 branch usb_tx_fifo_release ,blank 
-0224 6fe08900 fetch 1 ,mem_usb_state 
-0225 c001fc40 beq usb_sleep ,usb_windows_wakeup 
-0226 c0817c06 bne usb_connected ,usb_tx_fifo_release 
-0227 6fe08902 fetch 1 ,mem_usb_clear_remote_wakeup 
-0228 243a7c06 nbranch usb_tx_fifo_release ,blank 
-0229 2040028c call p_usb_tx_data_ep1 
-022a 202002fe branch p_usb_tx_data_ep2 
+021e 6ff08c25 fetch 1 ,core_usb_txbusy 
+021f 1fe17e0f and_into 0x0f ,pdata 
+0220 243a7c30 nbranch usb_inwake_state_tx_dispose ,blank 
+0221 6fe0890e fetch 1 ,mem_usb_device_enumeration_endflag 
+0222 203a7c06 branch usb_tx_fifo_release ,blank 
+0223 6fe08900 fetch 1 ,mem_usb_state 
+0224 c001fc40 beq usb_sleep ,usb_windows_wakeup 
+0225 c0817c06 bne usb_connected ,usb_tx_fifo_release 
+0226 6fe08902 fetch 1 ,mem_usb_clear_remote_wakeup 
+0227 243a7c06 nbranch usb_tx_fifo_release ,blank 
+0228 20400281 call p_usb_tx_data_ep1 
+0229 2020030f branch p_usb_tx_data_ep2 
 
 p_dongle_usb_ep2_connect_report_send:
-022b 6fe0c945 fetch 1 ,mem_usb_rf_state_report_flag 
-022c c1008000 rtneq 0x1 
-022d 70494600 jam 0x0 ,mem_usb_rf_state_report_flag1 
-022e 70494501 jam 0x1 ,mem_usb_rf_state_report_flag 
-022f 20200044 branch p_dongle_usb_ep2_connect_report 
+022a 6fe0c904 fetch 1 ,mem_usb_rf_state_report_flag 
+022b c1008000 rtneq 0x1 
+022c 70490500 jam 0x0 ,mem_usb_rf_state_report_flag1 
+022d 70490401 jam 0x1 ,mem_usb_rf_state_report_flag 
+022e 20200044 branch p_dongle_usb_ep2_connect_report 
 
 p_g24_receive_packet_start1:
-0230 2040022b call p_dongle_usb_ep2_connect_report_send 
-0231 70484000 jam 0 ,mem_24g_ackpayload_enable_temp 
-0232 70461100 jam 0 ,mem_24g_ackpayload_enable 
-0233 6fe0c5ea fetch 1 ,mem_24g_rxdata_temp + 2 
-0234 c000b3c4 beq datatype_device1 ,g24_data_device1 
-0235 c00133d3 beq datatype_device2 ,g24_data_device2 
-0236 c07fb3c2 beq datatype_attemp ,g24_data_receive_attemp 
-0237 c282023b bbit1 data_http ,p_g24_data_receive_device_http_dpi 
-0238 c282823b bbit1 data_dpi ,p_g24_data_receive_device_http_dpi 
-0239 c283023b bbit1 data_device_info ,p_g24_data_receive_device_http_dpi 
-023a 202033be branch g24_rx_interrupt_clear 
+022f 2040022a call p_dongle_usb_ep2_connect_report_send 
+0230 70484000 jam 0 ,mem_24g_ackpayload_enable_temp 
+0231 70461100 jam 0 ,mem_24g_ackpayload_enable 
+0232 6fe0c5ea fetch 1 ,mem_24g_rxdata_temp + 2 
+0233 c000b3c4 beq datatype_device1 ,g24_data_device1 
+0234 c00133d3 beq datatype_device2 ,g24_data_device2 
+0235 c07fb3c2 beq datatype_attemp ,g24_data_receive_attemp 
+0236 c282023a bbit1 data_http ,p_g24_data_receive_device_http_dpi 
+0237 c282823a bbit1 data_dpi ,p_g24_data_receive_device_http_dpi 
+0238 c283023a bbit1 data_device_info ,p_g24_data_receive_device_http_dpi 
+0239 202033be branch g24_rx_interrupt_clear 
 
 p_g24_data_receive_device_http_dpi:
-023b 6fe0c5ea fetch 1 ,mem_24g_rxdata_temp + 2 
-023c 1fe17e0f and pdata ,0x0f ,pdata 
-023d c000b3c4 beq datatype_device1 ,g24_data_device1 
-023e c00133d3 beq datatype_device2 ,g24_data_device2 
-023f 202033be branch g24_rx_interrupt_clear 
+023a 6fe0c5ea fetch 1 ,mem_24g_rxdata_temp + 2 
+023b 1fe17e0f and pdata ,0x0f ,pdata 
+023c c000b3c4 beq datatype_device1 ,g24_data_device1 
+023d c00133d3 beq datatype_device2 ,g24_data_device2 
+023e 202033be branch g24_rx_interrupt_clear 
 
 p_dongle_usb_tx_http_data:
-0240 70090b11 jam usb_ep1_kb_http ,mem_usb_ep1_data 
-0241 d8a00923 arg mem_usb_kb_data ,contw 
-0242 20407c9a call memset0_8 
-0243 20204848 branch dongle_usb_tx_ep1_enable 
+023f 70090b11 jam usb_ep1_kb_http ,mem_usb_ep1_data 
+0240 d8a00923 arg mem_usb_kb_data ,contw 
+0241 20407c9a call memset0_8 
+0242 20204848 branch dongle_usb_tx_ep1_enable 
 
 p_dongle_g24_mouse:
-0244 6fe0c5ea fetch 1 ,mem_24g_rxdata_temp + 2 
-0245 c2820240 bbit1 data_http ,p_dongle_usb_tx_http_data 
-0246 c2828263 bbit1 data_dpi ,p_dongle_receive_dpi_data 
-0247 c283026e bbit1 data_device_info ,p_dongle_receive_device_info_data 
-0248 20200249 branch p_dongle_g24_mouse_next 
+0243 6fe0c5ea fetch 1 ,mem_24g_rxdata_temp + 2 
+0244 c282023f bbit1 data_http ,p_dongle_usb_tx_http_data 
+0245 c2828262 bbit1 data_dpi ,p_dongle_receive_dpi_data 
+0246 c283026d bbit1 data_device_info ,p_dongle_receive_device_info_data 
+0247 20200248 branch p_dongle_g24_mouse_next 
 
 p_dongle_g24_mouse_next:
-0249 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
-024a 1fe67c09 sub pdata ,0x09 ,null 
-024b 20228259 branch p_dongle_g24_mouse_data ,zero 
-024c 20400259 call p_dongle_g24_mouse_data 
-024d 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
-024e 1fe0fff8 add pdata ,-8 ,pdata 
-024f 67e0c57d store 1 ,mem_24g_rxdata_length 
-0250 1fe27200 copy pdata ,loopcnt 
-0251 d8a045ea arg mem_24g_rxdata_temp + 2 ,contw 
-0252 d8c045f2 arg mem_24g_rxdata_temp + 10 ,contr 
-0253 20407cda call memcpy 
-0254 6fe0c5ea fetch 1 ,mem_24g_rxdata_temp + 2 
-0255 c2820240 bbit1 data_http ,p_dongle_usb_tx_http_data 
-0256 c2828263 bbit1 data_dpi ,p_dongle_receive_dpi_data 
-0257 c283026e bbit1 data_device_info ,p_dongle_receive_device_info_data 
-0258 20600000 rtn 
+0248 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
+0249 1fe67c09 sub pdata ,0x09 ,null 
+024a 20228258 branch p_dongle_g24_mouse_data ,zero 
+024b 20400258 call p_dongle_g24_mouse_data 
+024c 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
+024d 1fe0fff8 add pdata ,-8 ,pdata 
+024e 67e0c57d store 1 ,mem_24g_rxdata_length 
+024f 1fe27200 copy pdata ,loopcnt 
+0250 d8a045ea arg mem_24g_rxdata_temp + 2 ,contw 
+0251 d8c045f2 arg mem_24g_rxdata_temp + 10 ,contr 
+0252 20407cda call memcpy 
+0253 6fe0c5ea fetch 1 ,mem_24g_rxdata_temp + 2 
+0254 c282023f bbit1 data_http ,p_dongle_usb_tx_http_data 
+0255 c2828262 bbit1 data_dpi ,p_dongle_receive_dpi_data 
+0256 c283026d bbit1 data_device_info ,p_dongle_receive_device_info_data 
+0257 20600000 rtn 
 
 p_dongle_g24_mouse_data:
-0259 58000001 setarg ms_report_id 
-025a 67e08913 store 1 ,mem_usb_mouse_data 
-025b 6fe3c5eb fetch 7 ,mem_24g_rxdata_temp + 3 
-025c e7e38005 istore 7 ,contw 
-025d 6fe0c5eb fetch 1 ,mem_24g_rxdata_temp + 3 
-025e 245a48dd ncall dongle_g24_ms_enable_blank_data_forcibly ,blank 
-025f 6fe0c5eb fetch 1 ,mem_24g_rxdata_temp + 3 
-0260 205a48e1 call dongle_g24_ms_disable_blank_data_forcibly ,blank 
-0261 70090c20 jam usb_ep2_ms ,mem_usb_ep2_data 
-0262 20200279 branch p_dongle_usb_tx_enable_ep2 
+0258 58000001 setarg ms_report_id 
+0259 67e08913 store 1 ,mem_usb_mouse_data 
+025a 6fe3c5eb fetch 7 ,mem_24g_rxdata_temp + 3 
+025b e7e38005 istore 7 ,contw 
+025c 6fe0c5eb fetch 1 ,mem_24g_rxdata_temp + 3 
+025d 245a48dd ncall dongle_g24_ms_enable_blank_data_forcibly ,blank 
+025e 6fe0c5eb fetch 1 ,mem_24g_rxdata_temp + 3 
+025f 205a48e1 call dongle_g24_ms_disable_blank_data_forcibly ,blank 
+0260 70090c20 jam usb_ep2_ms ,mem_usb_ep2_data 
+0261 20200278 branch p_dongle_usb_tx_enable_ep2 
 
 p_dongle_receive_dpi_data:
-0263 58000040 setarg 0x40 
-0264 67e0c8c3 store 1 ,mem_usb_dpi_data 
-0265 7048c4a1 jam report_id_data_in ,mem_usb_dpi_data + 1 
-0266 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
-0267 1fe0ffff increase -1 ,pdata 
-0268 1fe27200 copy pdata ,loopcnt 
-0269 d8c045eb arg mem_24g_rxdata_temp + 3 ,contr 
-026a d8a048c5 arg mem_usb_dpi_data + 2 ,contw 
-026b 20407cda call memcpy 
-026c 70090c24 jam usb_ep2_dpi ,mem_usb_ep2_data 
-026d 20200279 branch p_dongle_usb_tx_enable_ep2 
+0262 58000040 setarg 0x40 
+0263 67e0c882 store 1 ,mem_usb_dpi_data 
+0264 704883a1 jam report_id_data_in ,mem_usb_dpi_data + 1 
+0265 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
+0266 1fe0ffff increase -1 ,pdata 
+0267 1fe27200 copy pdata ,loopcnt 
+0268 d8c045eb arg mem_24g_rxdata_temp + 3 ,contr 
+0269 d8a04884 arg mem_usb_dpi_data + 2 ,contw 
+026a 20407cda call memcpy 
+026b 70090c24 jam usb_ep2_dpi ,mem_usb_ep2_data 
+026c 20200278 branch p_dongle_usb_tx_enable_ep2 
 
 p_dongle_receive_device_info_data:
-026e 58000040 setarg 0x40 
-026f 67e0c841 store 1 ,mem_usb_device_info_data 
-0270 704842a1 jam report_id_data_in ,mem_usb_device_info_data + 1 
-0271 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
-0272 1fe0ffff increase -1 ,pdata 
-0273 1fe27200 copy pdata ,loopcnt 
-0274 d8c045eb arg mem_24g_rxdata_temp + 3 ,contr 
-0275 d8a04843 arg mem_usb_device_info_data + 2 ,contw 
-0276 20407cda call memcpy 
-0277 70090c23 jam usb_ep2_device_info ,mem_usb_ep2_data 
-0278 20200279 branch p_dongle_usb_tx_enable_ep2 
+026d 58000040 setarg 0x40 
+026e 67e0c841 store 1 ,mem_usb_device_info_data 
+026f 704842a1 jam report_id_data_in ,mem_usb_device_info_data + 1 
+0270 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
+0271 1fe0ffff increase -1 ,pdata 
+0272 1fe27200 copy pdata ,loopcnt 
+0273 d8c045eb arg mem_24g_rxdata_temp + 3 ,contr 
+0274 d8a04843 arg mem_usb_device_info_data + 2 ,contw 
+0275 20407cda call memcpy 
+0276 70090c23 jam usb_ep2_device_info ,mem_usb_ep2_data 
+0277 20200278 branch p_dongle_usb_tx_enable_ep2 
 
 p_dongle_usb_tx_enable_ep2:
-0279 6fe0890e fetch 1 ,mem_usb_device_enumeration_endflag 
-027a 207a0000 rtn blank 
-027b da204947 arg mem_usb_ep2_fifo ,rega 
-027c 20407da5 call fifo_is_full 
-027d 247a0000 nrtn blank 
-027e 6fe0890c fetch 1 ,mem_usb_ep2_data 
-027f 67e0866f store 1 ,mem_fifo_temp 
-0280 da204947 arg mem_usb_ep2_fifo ,rega 
-0281 20207d8b branch fifo_in 
-
-p_g24_100ms_timer_event:
-0282 d8e00006 arg usb_timer_100ms ,queue 
-0283 20407cef call timer_check 
-0284 247a0000 nrtn blank 
-0285 20400289 call p_g24_http_over_pack_check 
-
-p_g24_100ms_timer_init:
-0286 d8e00006 arg usb_timer_100ms ,queue 
-0287 58000018 setarg 24 
-0288 20207ce1 branch timer_init 
-
-p_g24_http_over_pack_check:
-0289 6fe0c950 fetch 1 ,mem_usb_http_data_step 
-028a 207a0000 rtn blank 
-028b 20200240 branch p_dongle_usb_tx_http_data 
+0278 6fe0890e fetch 1 ,mem_usb_device_enumeration_endflag 
+0279 207a0000 rtn blank 
+027a da204906 arg mem_usb_ep2_fifo ,rega 
+027b 20407da5 call fifo_is_full 
+027c 247a0000 nrtn blank 
+027d 6fe0890c fetch 1 ,mem_usb_ep2_data 
+027e 67e0866f store 1 ,mem_fifo_temp 
+027f da204906 arg mem_usb_ep2_fifo ,rega 
+0280 20207d8b branch fifo_in 
 
 p_usb_tx_data_ep1:
-028c 6ff08c25 fetch 1 ,core_usb_txbusy 
-028d 1fe17e0f and_into 0x0f ,pdata 
-028e 247a0000 nrtn blank 
-028f 6fe0890d fetch 1 ,mem_usb_tx_enable 
-0290 c4008000 rtnbit0 1 
-0291 6fe0890d fetch 1 ,mem_usb_tx_enable 
-0292 793ffe01 set0 1 ,pdata 
-0293 67e0890d store 1 ,mem_usb_tx_enable 
-0294 6fe0890b fetch 1 ,mem_usb_ep1_data 
-0295 207a0000 rtn blank 
-0296 c0087c28 beq usb_ep1_kb ,usb_tx_kb_normal_data 
-0297 c0088299 beq usb_ep1_kb_http ,p_usb_tx_http_data_set 
-0298 2020235a branch assert 
+0281 6ff08c25 fetch 1 ,core_usb_txbusy 
+0282 1fe17e0f and_into 0x0f ,pdata 
+0283 247a0000 nrtn blank 
+0284 6fe0890d fetch 1 ,mem_usb_tx_enable 
+0285 c4008000 rtnbit0 1 
+0286 6fe0890d fetch 1 ,mem_usb_tx_enable 
+0287 793ffe01 set0 1 ,pdata 
+0288 67e0890d store 1 ,mem_usb_tx_enable 
+0289 6fe0890b fetch 1 ,mem_usb_ep1_data 
+028a 207a0000 rtn blank 
+028b c0087c28 beq usb_ep1_kb ,usb_tx_kb_normal_data 
+028c c008828e beq usb_ep1_kb_http ,p_usb_tx_http_data_set 
+028d 2020235a branch assert 
 
 p_usb_tx_http_data_set:
-0299 6fe0c950 fetch 1 ,mem_usb_http_data_step 
-029a 1fe0fe01 increase 1 ,pdata 
-029b 67e0c950 store 1 ,mem_usb_http_data_step 
-029c 204002a1 call p_usb_tx_http_data_check 
-029d 6fe0c951 fetch 1 ,mem_usb_tx_data_flag 
-029e 207a0000 rtn blank 
-029f 70495100 jam 0 ,mem_usb_tx_data_flag 
+028e 6fe0c919 fetch 1 ,mem_usb_website_step 
+028f c0000299 beq website_win ,p_usb_website_winr_data 
+0290 c00082a5 beq website_r_space_release ,p_usb_website_r_space_release_data 
+0291 c00102a9 beq website_win_release ,p_usb_website_win_release_data 
+0292 c00182b9 beq website_wait ,p_usb_website_wait_tx_data 
+0293 c00202c0 beq website_data ,p_usb_website_data 
+0294 c00282af beq website_enter_1 ,p_usb_website_enter_data1 
+0295 c00302b3 beq website_enter_release_1 ,p_usb_website_enter_release_data1 
+0296 c00382b5 beq website_enter_2 ,p_usb_website_enter_data2 
+0297 c00402b7 beq website_enter_release_2 ,p_usb_website_enter_release_data2 
+0298 20600000 rtn 
+
+p_usb_website_winr_data:
+0299 6fe088fa fetch 1 ,mem_usb_tx_mac_enable 
+029a c000029d beq 0 ,p_usb_tx_winos_winr_data 
+029b c00082a1 beq 1 ,p_usb_tx_macos_winr_data 
+029c 20600000 rtn 
+
+p_usb_tx_winos_winr_data:
+029d 70491901 jam website_r_space_release ,mem_usb_website_step 
+029e 6fe1c90f fetch 3 ,mem_usb_win_cmd 
+029f 67e18923 store 3 ,mem_usb_kb_data 
 02a0 20207c28 branch usb_tx_kb_normal_data 
 
-p_usb_tx_http_data_check:
-02a1 6fe0c950 fetch 1 ,mem_usb_http_data_step 
-02a2 c00082d4 beq 1 ,p_usb_tx_win_or_mac_check 
-02a3 c00102e0 beq 2 ,p_usb_tx_cmd_release 
-02a4 c00182da beq 3 ,p_usb_tx_ep1_data_enable 
-02a5 c00202da beq 4 ,p_usb_tx_ep1_data_enable 
-02a6 c00282da beq 5 ,p_usb_tx_ep1_data_enable 
-02a7 c00a02e2 beq 20 ,p_usb_tx_data_h 
-02a8 c00a82da beq 21 ,p_usb_tx_ep1_data_enable 
-02a9 c00b02e4 beq 22 ,p_usb_tx_data_t 
-02aa c00b82da beq 23 ,p_usb_tx_ep1_data_enable 
-02ab c00c02e4 beq 24 ,p_usb_tx_data_t 
-02ac c00c82da beq 25 ,p_usb_tx_ep1_data_enable 
-02ad c00d02e6 beq 26 ,p_usb_tx_data_p 
-02ae c00d82da beq 27 ,p_usb_tx_ep1_data_enable 
-02af c00e02e8 beq 28 ,p_usb_tx_data_s 
-02b0 c00e82da beq 29 ,p_usb_tx_ep1_data_enable 
-02b1 c00f02de beq 30 ,p_usb_tx_shift_data_set 
-02b2 c00f82da beq 31 ,p_usb_tx_ep1_data_enable 
-02b3 c01002ea beq 32 ,p_usb_tx_data_spec1 
-02b4 c01082da beq 33 ,p_usb_tx_ep1_data_enable 
-02b5 c01102ea beq 34 ,p_usb_tx_data_spec1 
-02b6 c01182da beq 35 ,p_usb_tx_ep1_data_enable 
-02b7 c01202ec beq 36 ,p_usb_tx_data_m 
-02b8 c01282da beq 37 ,p_usb_tx_ep1_data_enable 
-02b9 c01302ee beq 38 ,p_usb_tx_data_o 
-02ba c01382da beq 39 ,p_usb_tx_ep1_data_enable 
-02bb c01402f0 beq 40 ,p_usb_tx_data_f 
-02bc c01482da beq 41 ,p_usb_tx_ep1_data_enable 
-02bd c01502f2 beq 42 ,p_usb_tx_data_i 
-02be c01582da beq 43 ,p_usb_tx_ep1_data_enable 
-02bf c01602f2 beq 44 ,p_usb_tx_data_i 
-02c0 c01682da beq 45 ,p_usb_tx_ep1_data_enable 
-02c1 c01702f4 beq 46 ,p_usb_tx_data_spec2 
-02c2 c01782da beq 47 ,p_usb_tx_ep1_data_enable 
-02c3 c01802f6 beq 48 ,p_usb_tx_data_c 
-02c4 c01882da beq 49 ,p_usb_tx_ep1_data_enable 
-02c5 c01902ee beq 50 ,p_usb_tx_data_o 
-02c6 c01982da beq 51 ,p_usb_tx_ep1_data_enable 
-02c7 c01a02ec beq 52 ,p_usb_tx_data_m 
-02c8 c01a82da beq 53 ,p_usb_tx_ep1_data_enable 
-02c9 c01b02ea beq 54 ,p_usb_tx_data_spec1 
-02ca c01b82da beq 55 ,p_usb_tx_ep1_data_enable 
-02cb c01c02f8 beq 56 ,p_usb_tx_data_a 
-02cc c01c82da beq 57 ,p_usb_tx_ep1_data_enable 
-02cd c01d02f2 beq 58 ,p_usb_tx_data_i 
-02ce c01d82da beq 59 ,p_usb_tx_ep1_data_enable 
-02cf c02302fa beq 70 ,p_usb_tx_data_enter 
-02d0 c02402da beq 72 ,p_usb_tx_ep1_data_enable 
-02d1 c02502fa beq 74 ,p_usb_tx_data_enter 
-02d2 c02602fc beq 76 ,p_usb_tx_ep1_end 
-02d3 20600000 rtn 
-
-p_usb_tx_win_or_mac_check:
-02d4 6fe088fa fetch 1 ,mem_usb_tx_mac_enable 
-02d5 c00002d8 beq 0 ,p_usb_tx_win_http_data 
-02d6 c00082dc beq 1 ,p_usb_tx_mac_http_data 
-02d7 20600000 rtn 
-
-p_usb_tx_win_http_data:
-02d8 6fe1c952 fetch 3 ,mem_usb_win_cmd 
-
-p_usb_kb_spec_data_store:
-02d9 67e18923 store 3 ,mem_usb_kb_data 
-
-p_usb_tx_ep1_data_enable:
-02da 70495101 jam 1 ,mem_usb_tx_data_flag 
-02db 20600000 rtn 
-
-p_usb_tx_mac_http_data:
-02dc 6fe1c955 fetch 3 ,mem_usb_mac_cmd 
-02dd 202002d9 branch p_usb_kb_spec_data_store 
-
-p_usb_tx_shift_data_set:
-02de 6fe1c958 fetch 3 ,mem_usb_kb_shift 
-02df 202002d9 branch p_usb_kb_spec_data_store 
-
-p_usb_tx_cmd_release:
-02e0 70092308 jam 0x08 ,mem_usb_kb_data 
-02e1 202002da branch p_usb_tx_ep1_data_enable 
-
-p_usb_tx_data_h:
-02e2 7009260b jam 0x0b ,mem_usb_kb_data + 3 
-02e3 202002da branch p_usb_tx_ep1_data_enable 
-
-p_usb_tx_data_t:
-02e4 70092617 jam 0x17 ,mem_usb_kb_data + 3 
-02e5 202002da branch p_usb_tx_ep1_data_enable 
-
-p_usb_tx_data_p:
-02e6 70092613 jam 0x13 ,mem_usb_kb_data + 3 
-02e7 202002da branch p_usb_tx_ep1_data_enable 
-
-p_usb_tx_data_s:
-02e8 70092616 jam 0x16 ,mem_usb_kb_data + 3 
-02e9 202002da branch p_usb_tx_ep1_data_enable 
-
-p_usb_tx_data_spec1:
-02ea 70092638 jam 0x38 ,mem_usb_kb_data + 3 
-02eb 202002da branch p_usb_tx_ep1_data_enable 
-
-p_usb_tx_data_m:
-02ec 70092610 jam 0x10 ,mem_usb_kb_data + 3 
-02ed 202002da branch p_usb_tx_ep1_data_enable 
-
-p_usb_tx_data_o:
-02ee 70092612 jam 0x12 ,mem_usb_kb_data + 3 
-02ef 202002da branch p_usb_tx_ep1_data_enable 
-
-p_usb_tx_data_f:
-02f0 70092609 jam 0x09 ,mem_usb_kb_data + 3 
-02f1 202002da branch p_usb_tx_ep1_data_enable 
-
-p_usb_tx_data_i:
-02f2 7009260c jam 0x0c ,mem_usb_kb_data + 3 
-02f3 202002da branch p_usb_tx_ep1_data_enable 
-
-p_usb_tx_data_spec2:
-02f4 70092637 jam 0x37 ,mem_usb_kb_data + 3 
-02f5 202002da branch p_usb_tx_ep1_data_enable 
-
-p_usb_tx_data_c:
-02f6 70092606 jam 0x06 ,mem_usb_kb_data + 3 
-02f7 202002da branch p_usb_tx_ep1_data_enable 
-
-p_usb_tx_data_a:
-02f8 70092604 jam 0x04 ,mem_usb_kb_data + 3 
-02f9 202002da branch p_usb_tx_ep1_data_enable 
-
-p_usb_tx_data_enter:
-02fa 70092628 jam 0x28 ,mem_usb_kb_data + 3 
-02fb 202002da branch p_usb_tx_ep1_data_enable 
-
-p_usb_tx_ep1_end:
-02fc 70495000 jam 0 ,mem_usb_http_data_step 
-02fd 202002da branch p_usb_tx_ep1_data_enable 
+p_usb_tx_macos_winr_data:
+02a1 70491901 jam website_r_space_release ,mem_usb_website_step 
+02a2 6fe1c912 fetch 3 ,mem_usb_mac_cmd 
+02a3 67e18923 store 3 ,mem_usb_kb_data 
+02a4 20207c28 branch usb_tx_kb_normal_data 
+
+p_usb_website_r_space_release_data:
+02a5 70491902 jam website_win_release ,mem_usb_website_step 
+02a6 6fe0c90f fetch 1 ,mem_usb_win_cmd 
+02a7 67e08923 store 1 ,mem_usb_kb_data 
+02a8 20207c28 branch usb_tx_kb_normal_data 
+
+p_usb_website_win_release_data:
+02a9 70491903 jam website_wait ,mem_usb_website_step 
+
+p_usb_webstie_release_data:
+02aa d8a00923 arg mem_usb_kb_data ,contw 
+02ab df200008 arg 8 ,loopcnt 
+02ac 20407ca3 call memset0 
+02ad 70491b00 jam 0 ,mem_usb_website_release_flag 
+02ae 20207c28 branch usb_tx_kb_normal_data 
+
+p_usb_website_enter_data1:
+02af 70491906 jam website_enter_release_1 ,mem_usb_website_step 
+
+p_usb_webstie_enter_data:
+02b0 6fe1c915 fetch 3 ,mem_usb_kb_enter 
+02b1 67e18923 store 3 ,mem_usb_kb_data 
+02b2 20207c28 branch usb_tx_kb_normal_data 
+
+p_usb_website_enter_release_data1:
+02b3 70491907 jam website_enter_2 ,mem_usb_website_step 
+02b4 202002aa branch p_usb_webstie_release_data 
+
+p_usb_website_enter_data2:
+02b5 70491908 jam website_enter_release_2 ,mem_usb_website_step 
+02b6 202002b0 branch p_usb_webstie_enter_data 
+
+p_usb_website_enter_release_data2:
+02b7 70491900 jam website_done ,mem_usb_website_step 
+02b8 202002aa branch p_usb_webstie_release_data 
+
+p_usb_website_wait_tx_data:
+02b9 6fe0c918 fetch 1 ,mem_usb_website_wait_count 
+02ba 1fe0fe01 increase 1 ,pdata 
+02bb 67e0c918 store 1 ,mem_usb_website_wait_count 
+02bc c1878000 rtnne website_wait_count 
+02bd 70491800 jam 0 ,mem_usb_website_wait_count 
+02be 70491904 jam website_data ,mem_usb_website_step 
+02bf 20600000 rtn 
+
+p_usb_website_data:
+02c0 6fe0c91b fetch 1 ,mem_usb_website_release_flag 
+02c1 c00082aa beq 1 ,p_usb_webstie_release_data 
+02c2 c00002c6 beq 0 ,p_usb_website_info_data 
+02c3 20600000 rtn 
+
+p_usb_webstie_info_data_done:
+02c4 70491905 jam website_enter_1 ,mem_usb_website_step 
+02c5 20600000 rtn 
+
+p_usb_website_info_data:
+02c6 d840491f arg mem_usb_website_info + 1 ,temp 
+02c7 6fe0c91e fetch 1 ,mem_usb_website_info 
+02c8 98408400 iadd temp ,temp 
+02c9 6fe1491c fetch 2 ,mem_usb_website_ptr 
+02ca 98467c00 isub temp ,null 
+02cb 202282c4 branch p_usb_webstie_info_data_done ,zero 
+02cc 204002d6 call p_usb_tx_website_acii2hidkey 
+02cd 204002f8 call p_usb_tx_website_need_shift 
+02ce 6fe0c91a fetch 1 ,mem_usb_website_shift_flag 
+02cf 67e08923 store 1 ,mem_usb_kb_data 
+02d0 62208925 storer rega ,1 ,mem_usb_kb_data + 2 
+02d1 6fe1491c fetch 2 ,mem_usb_website_ptr 
+02d2 1fe0fe01 increase 1 ,pdata 
+02d3 67e1491c store 2 ,mem_usb_website_ptr 
+02d4 70491b01 jam 1 ,mem_usb_website_release_flag 
+02d5 20207c28 branch usb_tx_kb_normal_data 
+
+p_usb_tx_website_acii2hidkey:
+02d6 6849491c fetcht 2 ,mem_usb_website_ptr 
+02d7 efe08002 ifetch 1 ,temp 
+02d8 1fe67c7a sub pdata ,0x7a ,null 
+02d9 242102dd nbranch p_usb_tx_website_acii2hidkey1 ,positive 
+02da da400061 arg 0x61 ,regb 
+02db 9a462200 isub regb ,rega 
+02dc 202102f4 branch p_usb_tx_website_acii2keycode_a2z ,positive 
+
+p_usb_tx_website_acii2hidkey1:
+02dd efe08002 ifetch 1 ,temp 
+02de 1fe67c39 sub pdata ,0x39 ,null 
+02df 242102e3 nbranch p_usb_tx_website_acii2keycode_sign ,positive 
+02e0 da400030 arg 0x30 ,regb 
+02e1 9a462200 isub regb ,rega 
+02e2 202102f6 branch p_usb_tx_website_acii2keycode_029 ,positive 
+
+p_usb_tx_website_acii2keycode_sign:
+02e3 1fe67c3a sub pdata ,0x3a ,null 
+02e4 202282ec branch p_usb_tx_website_acii2keycode_sign_3a ,zero 
+02e5 1fe67c2f sub pdata ,0x2f ,null 
+02e6 202282ee branch p_usb_tx_website_acii2keycode_sign_2f ,zero 
+02e7 1fe67c2e sub pdata ,0x2e ,null 
+02e8 202282f0 branch p_usb_tx_website_acii2keycode_sign_2e ,zero 
+02e9 1fe67c2d sub pdata ,0x2d ,null 
+02ea 202282f2 branch p_usb_tx_website_acii2keycode_sign_2d ,zero 
+02eb 20600000 rtn 
+
+p_usb_tx_website_acii2keycode_sign_3a:
+02ec da200033 arg 0x33 ,rega 
+02ed 20600000 rtn 
+
+p_usb_tx_website_acii2keycode_sign_2f:
+02ee da200038 arg 0x38 ,rega 
+02ef 20600000 rtn 
+
+p_usb_tx_website_acii2keycode_sign_2e:
+02f0 da200037 arg 0x37 ,rega 
+02f1 20600000 rtn 
+
+p_usb_tx_website_acii2keycode_sign_2d:
+02f2 da20002d arg 0x2d ,rega 
+02f3 20600000 rtn 
+
+p_usb_tx_website_acii2keycode_a2z:
+02f4 1a20a204 add rega ,4 ,rega 
+02f5 20600000 rtn 
+
+p_usb_tx_website_acii2keycode_029:
+02f6 1a20a227 add rega ,0x27 ,rega 
+02f7 20600000 rtn 
+
+p_usb_tx_website_need_shift:
+02f8 70491a00 jam 0 ,mem_usb_website_shift_flag 
+02f9 6fe1491c fetch 2 ,mem_usb_website_ptr 
+02fa efe0803f ifetch 1 ,pdata 
+02fb d8c04947 arg mem_usb_website_info_sign + 1 ,contr 
+02fc 6848c946 fetcht 1 ,mem_usb_website_info_sign 
+02fd 18427200 copy temp ,loopcnt 
+
+p_usb_tx_website_need_shift_check_loop:
+02fe e8408006 ifetcht 1 ,contr 
+02ff 98467c00 isub temp ,null 
+0300 20228303 branch p_usb_tx_website_need_shift_setflag ,zero 
+0301 c20002fe loop p_usb_tx_website_need_shift_check_loop 
+0302 20600000 rtn 
+
+p_usb_tx_website_need_shift_setflag:
+0303 70491a02 jam 2 ,mem_usb_website_shift_flag 
+0304 20600000 rtn 
+
+p_g24_100ms_timer_event:
+0305 d8e00006 arg usb_timer_100ms ,queue 
+0306 20407cef call timer_check 
+0307 247a0000 nrtn blank 
+0308 2040030c call p_g24_http_over_pack_check 
+
+p_g24_100ms_timer_init:
+0309 d8e00006 arg usb_timer_100ms ,queue 
+030a 58000028 setarg 40 
+030b 20207ce1 branch timer_init 
+
+p_g24_http_over_pack_check:
+030c 6fe0c919 fetch 1 ,mem_usb_website_step 
+030d 207a0000 rtn blank 
+030e 2020023f branch p_dongle_usb_tx_http_data 
 
 p_usb_tx_data_ep2:
-02fe da204947 arg mem_usb_ep2_fifo ,rega 
-02ff 20407da3 call fifo_is_empty 
-0300 207a0000 rtn blank 
-0301 6ff08c25 fetch 1 ,core_usb_txbusy 
-0302 1fe17e0f and_into 0x0f ,pdata 
-0303 247a0000 nrtn blank 
-0304 da204947 arg mem_usb_ep2_fifo ,rega 
-0305 20407d97 call fifo_out 
-0306 207a0000 rtn blank 
-0307 c0107c09 beq usb_ep2_ms ,usb_tx_ms_data 
-0308 c0120316 beq usb_ep2_dpi ,p_usb_tx_dpi_data 
-0309 c0118322 beq usb_ep2_device_info ,p_usb_tx_device_info_data 
-030a c010fc24 beq usb_ep2_multikey ,usb_tx_kb_multikey_data 
-030b c0117c2c beq usb_ep2_systemkey ,usb_tx_kb_systemkey_data 
-030c c012830e beq usb_ep2_mskb_state ,p_usb_tx_rf_state_data 
-030d 2020235a branch assert 
+030f da204906 arg mem_usb_ep2_fifo ,rega 
+0310 20407da3 call fifo_is_empty 
+0311 207a0000 rtn blank 
+0312 6ff08c25 fetch 1 ,core_usb_txbusy 
+0313 1fe17e0f and_into 0x0f ,pdata 
+0314 247a0000 nrtn blank 
+0315 da204906 arg mem_usb_ep2_fifo ,rega 
+0316 20407d97 call fifo_out 
+0317 207a0000 rtn blank 
+0318 c0107c09 beq usb_ep2_ms ,usb_tx_ms_data 
+0319 c0120327 beq usb_ep2_dpi ,p_usb_tx_dpi_data 
+031a c0118333 beq usb_ep2_device_info ,p_usb_tx_device_info_data 
+031b c010fc24 beq usb_ep2_multikey ,usb_tx_kb_multikey_data 
+031c c0117c2c beq usb_ep2_systemkey ,usb_tx_kb_systemkey_data 
+031d c012831f beq usb_ep2_mskb_state ,p_usb_tx_rf_state_data 
+031e 2020235a branch assert 
 
 p_usb_tx_rf_state_data:
-030e 6f20c904 fetchr loopcnt ,1 ,mem_usb_rf_state_data 
-030f d8c04905 arg mem_usb_rf_state_data + 1 ,contr 
-0310 d8e00002 arg 2 ,queue 
-0311 da200759 arg mem_usb_txbuf2 ,rega 
-0312 62310c0c storer rega ,2 ,core_usb_tx_saddr2 
-0313 20407bd2 call usb_tx_buf 
-0314 d8a04904 arg mem_usb_rf_state_data ,contw 
-0315 20200320 branch p_usb_release_dpi_buf + 1 
+031f 6f20c8c3 fetchr loopcnt ,1 ,mem_usb_rf_state_data 
+0320 d8c048c4 arg mem_usb_rf_state_data + 1 ,contr 
+0321 d8e00002 arg 2 ,queue 
+0322 da200759 arg mem_usb_txbuf2 ,rega 
+0323 62310c0c storer rega ,2 ,core_usb_tx_saddr2 
+0324 20407bd2 call usb_tx_buf 
+0325 d8a048c3 arg mem_usb_rf_state_data ,contw 
+0326 20200331 branch p_usb_release_dpi_buf + 1 
 
 p_usb_tx_dpi_data:
-0316 70090c00 jam 0 ,mem_usb_ep2_data 
-0317 6fe0c8c3 fetch 1 ,mem_usb_dpi_data 
-0318 1fe27200 copy pdata ,loopcnt 
-0319 207a0000 rtn blank 
-031a d8c048c4 arg mem_usb_dpi_data + 1 ,contr 
+0327 70090c00 jam 0 ,mem_usb_ep2_data 
+0328 6fe0c882 fetch 1 ,mem_usb_dpi_data 
+0329 1fe27200 copy pdata ,loopcnt 
+032a 207a0000 rtn blank 
+032b d8c04883 arg mem_usb_dpi_data + 1 ,contr 
 
 p_usb_tx_dpi_ep2:
-031b d8e00002 arg 2 ,queue 
-031c da200759 arg mem_usb_txbuf2 ,rega 
-031d 62310c0c storer rega ,2 ,core_usb_tx_saddr2 
-031e 20407bd2 call usb_tx_buf 
+032c d8e00002 arg 2 ,queue 
+032d da200759 arg mem_usb_txbuf2 ,rega 
+032e 62310c0c storer rega ,2 ,core_usb_tx_saddr2 
+032f 20407bd2 call usb_tx_buf 
 
 p_usb_release_dpi_buf:
-031f d8a048c3 arg mem_usb_dpi_data ,contw 
-0320 df200041 arg 65 ,loopcnt 
-0321 20207ca1 branch clear_mem 
+0330 d8a04882 arg mem_usb_dpi_data ,contw 
+0331 df200041 arg 65 ,loopcnt 
+0332 20207ca1 branch clear_mem 
 
 p_usb_tx_device_info_data:
-0322 70090c00 jam 0 ,mem_usb_ep2_data 
-0323 6fe0c841 fetch 1 ,mem_usb_device_info_data 
-0324 1fe27200 copy pdata ,loopcnt 
-0325 207a0000 rtn blank 
-0326 d8c04842 arg mem_usb_device_info_data + 1 ,contr 
+0333 70090c00 jam 0 ,mem_usb_ep2_data 
+0334 6fe0c841 fetch 1 ,mem_usb_device_info_data 
+0335 1fe27200 copy pdata ,loopcnt 
+0336 207a0000 rtn blank 
+0337 d8c04842 arg mem_usb_device_info_data + 1 ,contr 
 
 p_usb_tx_device_info_ep2:
-0327 d8e00002 arg 2 ,queue 
-0328 da200759 arg mem_usb_txbuf2 ,rega 
-0329 62310c0c storer rega ,2 ,core_usb_tx_saddr2 
-032a 20407bd2 call usb_tx_buf 
+0338 d8e00002 arg 2 ,queue 
+0339 da200759 arg mem_usb_txbuf2 ,rega 
+033a 62310c0c storer rega ,2 ,core_usb_tx_saddr2 
+033b 20407bd2 call usb_tx_buf 
 
 p_usb_release_device_info_buf:
-032b d8a04841 arg mem_usb_device_info_data ,contw 
-032c df200041 arg 65 ,loopcnt 
-032d 20207ca1 branch clear_mem 
+033c d8a04841 arg mem_usb_device_info_data ,contw 
+033d df200041 arg 65 ,loopcnt 
+033e 20207ca1 branch clear_mem 
 
 p_rx_dcoc:
-032e 20758000 rtn wake 
-032f 20402160 call set_sync_on 
-0330 d8400027 arg 39 ,temp 
-0331 2040216f call set_freq_rx 
-0332 204021a6 call rf_rx_enable 
-0333 708a257f jam 0x7f ,0x8a25 
-0334 708a301a jam 0x1a ,0x8a30 
-0335 708a3178 jam 0x78 ,0x8a31 
-0336 708a8fb2 jam 0xb2 ,0x8a8f 
-0337 708ac200 jam 0 ,0x8ac2 
-0338 708ac300 jam 0 ,0x8ac3 
-0339 d8e00006 arg 6 ,queue 
-033a 2040034b call p_rx_dcoc_avg 
-033b 2a2ffe0d isolate1 13 ,rega 
-033c 2040211d call qset_start 
-033d 2a4ffe0d isolate1 13 ,regb 
-033e 2040211e call qset_p 
-033f d8e00005 arg 5 ,queue 
+033f 20758000 rtn wake 
+0340 20402160 call set_sync_on 
+0341 d8400027 arg 39 ,temp 
+0342 2040216f call set_freq_rx 
+0343 204021a6 call rf_rx_enable 
+0344 708a257f jam 0x7f ,0x8a25 
+0345 708a301a jam 0x1a ,0x8a30 
+0346 708a3178 jam 0x78 ,0x8a31 
+0347 708a8fb2 jam 0xb2 ,0x8a8f 
+0348 708ac200 jam 0 ,0x8ac2 
+0349 708ac300 jam 0 ,0x8ac3 
+034a d8e00006 arg 6 ,queue 
+034b 2040035c call p_rx_dcoc_avg 
+034c 2a2ffe0d isolate1 13 ,rega 
+034d 2040211d call qset_start 
+034e 2a4ffe0d isolate1 13 ,regb 
+034f 2040211e call qset_p 
+0350 d8e00005 arg 5 ,queue 
 
 p_rx_dcoc_loop2:
-0340 2040211c call qset1_p 
-0341 2040211e call qset_p 
-0342 2040034b call p_rx_dcoc_avg 
-0343 d8a08ac2 arg 0x8ac2 ,contw 
-0344 1a31fe00 rshift4 rega ,pdata 
-0345 20402117 call qsetxor 
-0346 1a51fe00 rshift4 regb ,pdata 
-0347 20402117 call qsetxor 
-0348 18e08fff increase -1 ,queue 
-0349 20210340 branch p_rx_dcoc_loop2 ,positive 
-034a 2020214f branch rx_dcoc_loop2 + 10 
+0351 2040211c call qset1_p 
+0352 2040211e call qset_p 
+0353 2040035c call p_rx_dcoc_avg 
+0354 d8a08ac2 arg 0x8ac2 ,contw 
+0355 1a31fe00 rshift4 rega ,pdata 
+0356 20402117 call qsetxor 
+0357 1a51fe00 rshift4 regb ,pdata 
+0358 20402117 call qsetxor 
+0359 18e08fff increase -1 ,queue 
+035a 20210351 branch p_rx_dcoc_loop2 ,positive 
+035b 2020214f branch rx_dcoc_loop2 + 10 
 
 p_rx_dcoc_avg:
-034b 2000003c nop 60 
-034c 58000f00 setarg mem_dcoc_buf 
-034d 67f10982 store 2 ,0x8982 
-034e 58000ff0 setarg mem_dcoc_buf_end 
-034f 67f10984 store 2 ,0x8984 
-0350 70898109 jam 0x9 ,0x8981 
-0351 70898103 jam 0x3 ,0x8981 
-0352 70898006 jam 0x6 ,0x8980 
-0353 2000003c nop 60 
-0354 da200000 arg 0 ,rega 
-0355 da400000 arg 0 ,regb 
-0356 df200010 arg 16 ,loopcnt 
-0357 d8c00f00 arg mem_dcoc_buf ,contr 
-0358 2020212d branch rx_dcoc_loop 
+035c 2000003c nop 60 
+035d 58000f00 setarg mem_dcoc_buf 
+035e 67f10982 store 2 ,0x8982 
+035f 58000ff0 setarg mem_dcoc_buf_end 
+0360 67f10984 store 2 ,0x8984 
+0361 70898109 jam 0x9 ,0x8981 
+0362 70898103 jam 0x3 ,0x8981 
+0363 70898006 jam 0x6 ,0x8980 
+0364 2000003c nop 60 
+0365 da200000 arg 0 ,rega 
+0366 da400000 arg 0 ,regb 
+0367 df200010 arg 16 ,loopcnt 
+0368 d8c00f00 arg mem_dcoc_buf ,contr 
+0369 2020212d branch rx_dcoc_loop 
 
 p_rfpll_aac_ghpc:
-0359 20758000 rtn wake 
-035a 20202272 branch rfpll_aac_ghpc + 1 
+036a 20758000 rtn wake 
+036b 20202272 branch rfpll_aac_ghpc + 1 
 
 p_dpll_ring_ibias_calc:
-035b 20600000 rtn 
+036c 20600000 rtn 
 
 p_sadc_calibration:
-035c 20758000 rtn wake 
-035d 708a0777 jam 0x77 ,core_gpadc_ctrl 
-035e 708a08c9 jam 0xc9 ,core_gpadc_cfg0 
-035f 708a0b01 jam 0x01 ,core_gpadc_cfg3 
-0360 6fe0c409 fetch 1 ,mem_adc_clkdiv 
-0361 67f080cd store 1 ,core_sadc_clkdiv 
-0362 20000bb8 nop 3000 
-0363 20400384 call p_sadc_read 
-0364 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
-0365 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
-0366 df200008 arg 8 ,loopcnt 
-0367 20406f58 call sadc_cal_read + 1 
-0368 6fe0c419 fetch 1 ,mem_spi_write_addr 
-0369 67e0c433 store 1 ,mem_adc_cal_c7 
-036a 6240c419 storer regb ,1 ,mem_spi_write_addr 
-036b 20600000 rtn 
+036d 20758000 rtn wake 
+036e 708a0777 jam 0x77 ,core_gpadc_ctrl 
+036f 708a08c9 jam 0xc9 ,core_gpadc_cfg0 
+0370 708a0b01 jam 0x01 ,core_gpadc_cfg3 
+0371 6fe0c409 fetch 1 ,mem_adc_clkdiv 
+0372 67f080cd store 1 ,core_sadc_clkdiv 
+0373 20000bb8 nop 3000 
+0374 20400395 call p_sadc_read 
+0375 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
+0376 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
+0377 df200008 arg 8 ,loopcnt 
+0378 20406f58 call sadc_cal_read + 1 
+0379 6fe0c419 fetch 1 ,mem_spi_write_addr 
+037a 67e0c433 store 1 ,mem_adc_cal_c7 
+037b 6240c419 storer regb ,1 ,mem_spi_write_addr 
+037c 20600000 rtn 
 
 p_enable_adc:
-036c 2040037a call p_sadc_cal_write 
-036d 6ff08a09 fetch 1 ,core_gpadc_cfg1 
-036e 793ffe07 set0 7 ,pdata 
-036f 67f08a09 store 1 ,core_gpadc_cfg1 
-0370 708a0777 jam 0x77 ,core_gpadc_ctrl 
-0371 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
-0372 708a0b01 jam 0x01 ,core_gpadc_cfg3 
-0373 20406f90 call sadc_channel 
-0374 6fe0c409 fetch 1 ,mem_adc_clkdiv 
-0375 67f080cd store 1 ,core_sadc_clkdiv 
-0376 20000bb8 nop 3000 
-0377 20400384 call p_sadc_read 
-0378 7080cd00 jam 0 ,core_sadc_clkdiv 
-0379 20206fa1 branch sadc_dma 
+037d 2040038b call p_sadc_cal_write 
+037e 6ff08a09 fetch 1 ,core_gpadc_cfg1 
+037f 793ffe07 set0 7 ,pdata 
+0380 67f08a09 store 1 ,core_gpadc_cfg1 
+0381 708a0777 jam 0x77 ,core_gpadc_ctrl 
+0382 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
+0383 708a0b01 jam 0x01 ,core_gpadc_cfg3 
+0384 20406f90 call sadc_channel 
+0385 6fe0c409 fetch 1 ,mem_adc_clkdiv 
+0386 67f080cd store 1 ,core_sadc_clkdiv 
+0387 20000bb8 nop 3000 
+0388 20400395 call p_sadc_read 
+0389 7080cd00 jam 0 ,core_sadc_clkdiv 
+038a 20206fa1 branch sadc_dma 
 
 p_sadc_cal_write:
-037a 6ff080cc fetch 1 ,core_sadc_ctrl 
-037b 79207e01 set1 1 ,pdata 
-037c 67f080cc store 1 ,core_sadc_ctrl 
-037d 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
-037e 6fe0c433 fetch 1 ,mem_adc_cal_c7 
-037f 67e0c419 store 1 ,mem_spi_write_addr 
-0380 df200008 arg 8 ,loopcnt 
-0381 20406f67 call sadc_cal_write + 4 
-0382 6240c419 storer regb ,1 ,mem_spi_write_addr 
-0383 20600000 rtn 
+038b 6ff080cc fetch 1 ,core_sadc_ctrl 
+038c 79207e01 set1 1 ,pdata 
+038d 67f080cc store 1 ,core_sadc_ctrl 
+038e 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
+038f 6fe0c433 fetch 1 ,mem_adc_cal_c7 
+0390 67e0c419 store 1 ,mem_spi_write_addr 
+0391 df200008 arg 8 ,loopcnt 
+0392 20406f67 call sadc_cal_write + 4 
+0393 6240c419 storer regb ,1 ,mem_spi_write_addr 
+0394 20600000 rtn 
 
 p_sadc_read:
-0384 7080cc03 jam 0x03 ,core_sadc_ctrl 
+0395 7080cc03 jam 0x03 ,core_sadc_ctrl 
 
 p_sadc_read_wait:
-0385 6ff08129 fetch 1 ,core_perf_status 
-0386 c3028385 bbit0 saradc_done ,p_sadc_read_wait 
-0387 68590164 fetcht 2 ,core_sadc_data 
-0388 6049440a storet 2 ,mem_adc_current_value 
-0389 7080cc00 jam 0x00 ,core_sadc_ctrl 
-038a 20600000 rtn 
+0396 6ff08129 fetch 1 ,core_perf_status 
+0397 c3028396 bbit0 saradc_done ,p_sadc_read_wait 
+0398 68590164 fetcht 2 ,core_sadc_data 
+0399 6049440a storet 2 ,mem_adc_current_value 
+039a 7080cc00 jam 0x00 ,core_sadc_ctrl 
+039b 20600000 rtn 
 
 p_set_lemode:
-038b 708a8211 jam 0x11 ,0x8a82 
-038c 708a8d12 jam 0x12 ,0x8a8d 
-038d 708a8e0a jam 0x0a ,0x8a8e 
-038e 6fe0c099 fetch 1 ,mem_fcomp_div 
-038f c00803a4 beq xtal_16m ,p_set_lemode_2m_16m 
-0390 58005762 setarg 0x5762 
-0391 67f10907 store 2 ,0x8907 
+039c 708a8211 jam 0x11 ,0x8a82 
+039d 708a8d12 jam 0x12 ,0x8a8d 
+039e 708a8e0a jam 0x0a ,0x8a8e 
+039f 6fe0c099 fetch 1 ,mem_fcomp_div 
+03a0 c00803b5 beq xtal_16m ,p_set_lemode_2m_16m 
+03a1 58005762 setarg 0x5762 
+03a2 67f10907 store 2 ,0x8907 
 
 p_set_lemode_2m:
-0392 70890103 jam 3 ,0x8901 
-0393 70893003 jam 3 ,0x8930 
-0394 c6168000 rtnmark1 mark_ble_2m 
-0395 70890101 jam 1 ,0x8901 
-0396 708a8207 jam 0x07 ,0x8a82 
-0397 708a8d44 jam 0x44 ,0x8a8d 
-0398 708a8e0a jam 0x0a ,0x8a8e 
-0399 6fe0c099 fetch 1 ,mem_fcomp_div 
-039a c00803a1 beq xtal_16m ,p_set_lemode_1m_16m 
-039b 58002bb1 setarg 0x2bb1 
-039c 67f10907 store 2 ,0x8907 
+03a3 70890103 jam 3 ,0x8901 
+03a4 70893003 jam 3 ,0x8930 
+03a5 c6168000 rtnmark1 mark_ble_2m 
+03a6 70890101 jam 1 ,0x8901 
+03a7 708a8207 jam 0x07 ,0x8a82 
+03a8 708a8d44 jam 0x44 ,0x8a8d 
+03a9 708a8e0a jam 0x0a ,0x8a8e 
+03aa 6fe0c099 fetch 1 ,mem_fcomp_div 
+03ab c00803b2 beq xtal_16m ,p_set_lemode_1m_16m 
+03ac 58002bb1 setarg 0x2bb1 
+03ad 67f10907 store 2 ,0x8907 
 
 p_set_lemode_1m:
-039d c6978000 rtnmark0 mark_ble_lr 
-039e 70893024 jam 0x24 ,0x8930 
-039f 70890105 jam 5 ,0x8901 
-03a0 20600000 rtn 
+03ae c6978000 rtnmark0 mark_ble_lr 
+03af 70893024 jam 0x24 ,0x8930 
+03b0 70890105 jam 5 ,0x8901 
+03b1 20600000 rtn 
 
 p_set_lemode_1m_16m:
-03a1 58004189 setarg 0x4189 
-03a2 67f10907 store 2 ,0x8907 
-03a3 2020039d branch p_set_lemode_1m 
+03b2 58004189 setarg 0x4189 
+03b3 67f10907 store 2 ,0x8907 
+03b4 202003ae branch p_set_lemode_1m 
 
 p_set_lemode_2m_16m:
-03a4 58008312 setarg 0x8312 
-03a5 67f10907 store 2 ,0x8907 
-03a6 20200392 branch p_set_lemode_2m 
+03b5 58008312 setarg 0x8312 
+03b6 67f10907 store 2 ,0x8907 
+03b7 202003a3 branch p_set_lemode_2m 
 
 p_le_parse:
-03a7 6fe0c334 fetch 1 ,mem_le_packet_llid 
-03a8 c1000000 rtneq llid_reserved 
-03a9 c001b04a beq llid_le_ll ,le_parse_ll 
-03aa 202028e1 branch le_parse_l2cap 
+03b8 6fe0c334 fetch 1 ,mem_le_packet_llid 
+03b9 c1000000 rtneq llid_reserved 
+03ba c001b04a beq llid_le_ll ,le_parse_ll 
+03bb 202028e1 branch le_parse_l2cap 
 
 p_le_init_adv:
-03ab 793f8030 set0 mark_ble_crc_fail ,mark 
-03ac 20202af6 branch le_init_adv + 1 
+03bc 793f8030 set0 mark_ble_crc_fail ,mark 
+03bd 20202af6 branch le_init_adv + 1 
 
 p_g24_bind_data_parse_next:
-03ad 6fe0c5ea fetch 1 ,mem_24g_rxdata_temp + 2 
-03ae c0553329 beq datatype_bind ,g24_bind_first_step 
-03af c02ab33a beq datatype_config ,g24_bind_second_step 
-03b0 c01103b3 beq datatype_ok ,p_g24_bind_third_step 
-03b1 c07fb59b beq datatype_attemp ,g24_data_attemp 
-03b2 20600000 rtn 
+03be 6fe0c5ea fetch 1 ,mem_24g_rxdata_temp + 2 
+03bf c0553329 beq datatype_bind ,g24_bind_first_step 
+03c0 c02ab33a beq datatype_config ,g24_bind_second_step 
+03c1 c01103c4 beq datatype_ok ,p_g24_bind_third_step 
+03c2 c07fb59b beq datatype_attemp ,g24_data_attemp 
+03c3 20600000 rtn 
 
 p_g24_bind_third_step:
-03b3 6fe0c5ae fetch 1 ,mem_24g_pair_switch 
-03b4 203a03b9 branch p_g24_bind_third_step_skip ,blank 
-03b5 6fe245ec fetch 4 ,mem_24g_rxdata_temp + 4 
-03b6 684a462c fetcht 4 ,mem_24g_transmitter_addr 
-03b7 98467c00 isub temp ,null 
-03b8 24628000 nrtn zero 
+03c4 6fe0c5ae fetch 1 ,mem_24g_pair_switch 
+03c5 203a03ca branch p_g24_bind_third_step_skip ,blank 
+03c6 6fe245ec fetch 4 ,mem_24g_rxdata_temp + 4 
+03c7 684a462c fetcht 4 ,mem_24g_transmitter_addr 
+03c8 98467c00 isub temp ,null 
+03c9 24628000 nrtn zero 
 
 p_g24_bind_third_step_skip:
-03b9 6fe0c5eb fetch 1 ,mem_24g_rxdata_temp + 3 
-03ba c00083bd beq datatype_device1 ,p_g24_bind_third_step_device1 
-03bb c00103c4 beq datatype_device2 ,p_g24_bind_third_step_device2 
-03bc 20600000 rtn 
+03ca 6fe0c5eb fetch 1 ,mem_24g_rxdata_temp + 3 
+03cb c00083ce beq datatype_device1 ,p_g24_bind_third_step_device1 
+03cc c00103d5 beq datatype_device2 ,p_g24_bind_third_step_device2 
+03cd 20600000 rtn 
 
 p_g24_bind_third_step_device1:
-03bd 6fe0c5de fetch 1 ,mem_24g_device1_bind_disable 
-03be 247a0000 nrtn blank 
-03bf 6fe0c5d3 fetch 1 ,mem_24g_device1_bind_step 
-03c0 c00103c2 beq 2 ,p_g24_bind_dvc1_step_success 
-03c1 20600000 rtn 
+03ce 6fe0c5de fetch 1 ,mem_24g_device1_bind_disable 
+03cf 247a0000 nrtn blank 
+03d0 6fe0c5d3 fetch 1 ,mem_24g_device1_bind_step 
+03d1 c00103d3 beq 2 ,p_g24_bind_dvc1_step_success 
+03d2 20600000 rtn 
 
 p_g24_bind_dvc1_step_success:
-03c2 7045de01 jam 1 ,mem_24g_device1_bind_disable 
-03c3 2020336b branch g24_bind_dvc1_step_success + 1 
+03d3 7045de01 jam 1 ,mem_24g_device1_bind_disable 
+03d4 2020336b branch g24_bind_dvc1_step_success + 1 
 
 p_g24_bind_third_step_device2:
-03c4 6fe0c5df fetch 1 ,mem_24g_device2_bind_disable 
-03c5 247a0000 nrtn blank 
-03c6 6fe0c5d4 fetch 1 ,mem_24g_device2_bind_step 
-03c7 c08003c9 bne 0 ,p_g24_bind_dvc2_step_success 
-03c8 20600000 rtn 
+03d5 6fe0c5df fetch 1 ,mem_24g_device2_bind_disable 
+03d6 247a0000 nrtn blank 
+03d7 6fe0c5d4 fetch 1 ,mem_24g_device2_bind_step 
+03d8 c08003da bne 0 ,p_g24_bind_dvc2_step_success 
+03d9 20600000 rtn 
 
 p_g24_bind_dvc2_step_success:
-03c9 7045df01 jam 1 ,mem_24g_device2_bind_disable 
-03ca 20403393 call g24_binding_dvc2_living 
-03cb 20203378 branch g24_bind_dvc2_step_success + 1 
+03da 7045df01 jam 1 ,mem_24g_device2_bind_disable 
+03db 20403393 call g24_binding_dvc2_living 
+03dc 20203378 branch g24_bind_dvc2_step_success + 1 
 
 p_g24_mode_switch_bind_search:
-03cc 6fe0c616 fetch 1 ,mem_24g_work_mode 
-03cd c1000000 rtneq dongle_work 
-03ce 6fe0c62a fetch 1 ,mem_24g_b_s_mode_switch_disable 
-03cf 247a0000 nrtn blank 
-03d0 6fe0c628 fetch 1 ,mem_24g_mode_b_s_switch_exit 
-03d1 247a0000 nrtn blank 
-03d2 6fe0c624 fetch 1 ,mem_24g_mode_b_s_switch 
-03d3 207a0000 rtn blank 
-03d4 6fe0c5d3 fetch 1 ,mem_24g_device1_bind_step 
-03d5 c1800000 rtnne 0 
-03d6 6fe0c5d4 fetch 1 ,mem_24g_device2_bind_step 
-03d7 c1800000 rtnne 0 
-03d8 20203436 branch g24_mode_switch_bind_search + 9 
+03dd 6fe0c616 fetch 1 ,mem_24g_work_mode 
+03de c1000000 rtneq dongle_work 
+03df 6fe0c62a fetch 1 ,mem_24g_b_s_mode_switch_disable 
+03e0 247a0000 nrtn blank 
+03e1 6fe0c628 fetch 1 ,mem_24g_mode_b_s_switch_exit 
+03e2 247a0000 nrtn blank 
+03e3 6fe0c624 fetch 1 ,mem_24g_mode_b_s_switch 
+03e4 207a0000 rtn blank 
+03e5 6fe0c5d3 fetch 1 ,mem_24g_device1_bind_step 
+03e6 c1800000 rtnne 0 
+03e7 6fe0c5d4 fetch 1 ,mem_24g_device2_bind_step 
+03e8 c1800000 rtnne 0 
+03e9 20203436 branch g24_mode_switch_bind_search + 9 
 
 p_g24_bind_mode_auto:
-03d9 6fe0c616 fetch 1 ,mem_24g_work_mode 
-03da c1808000 rtnne dongle_bind 
-03db 204003dd call p_g24_bind_init 
-03dc 2020346d branch g24_bind_mode_auto + 4 
+03ea 6fe0c616 fetch 1 ,mem_24g_work_mode 
+03eb c1808000 rtnne dongle_bind 
+03ec 204003ee call p_g24_bind_init 
+03ed 2020346d branch g24_bind_mode_auto + 4 
 
 p_g24_bind_init:
-03dd 6fe0c615 fetch 1 ,mem_24g_mode_init 
-03de c3808000 rtnbit1 dongle_bind 
-03df 79207e01 set1 dongle_bind ,pdata 
-03e0 67e0c615 store 1 ,mem_24g_mode_init 
-03e1 58000000 setarg 0 
-03e2 67e1c5d3 store 3 ,mem_24g_device1_bind_step 
-03e3 20203307 branch g24_bind_init + 8 
+03ee 6fe0c615 fetch 1 ,mem_24g_mode_init 
+03ef c3808000 rtnbit1 dongle_bind 
+03f0 79207e01 set1 dongle_bind ,pdata 
+03f1 67e0c615 store 1 ,mem_24g_mode_init 
+03f2 58000000 setarg 0 
+03f3 67e1c5d3 store 3 ,mem_24g_device1_bind_step 
+03f4 20203307 branch g24_bind_init + 8 
 
 p_dongle_usb_dispatch:
-03e4 204003f3 call p_wdt_kick 
-03e5 6fe08901 fetch 1 ,mem_usb_remote_wakeup 
-03e6 205a48b5 call dongle_clear_pc_sleep_flag ,blank 
-03e7 20407906 call usb_isr 
-03e8 6fe088f7 fetch 1 ,mem_usb0_get_set_report 
-03e9 207a0000 rtn blank 
-03ea 7008f700 jam 0 ,mem_usb0_get_set_report 
-03eb 6fe108f5 fetch 2 ,mem_usb_setup_bvalue_temp 
-03ec d84002a4 arg pc_set_report ,temp 
-03ed 98467c00 isub temp ,null 
-03ee 202281ac branch p_dongle_usb_data_received_analysis ,zero 
-03ef d84002a2 arg pc_set_report_prolotol ,temp 
-03f0 98467c00 isub temp ,null 
-03f1 24628000 nrtn zero 
-03f2 202001ac branch p_dongle_usb_data_received_analysis 
+03f5 20400405 call p_wdt_kick 
+03f6 20400305 call p_g24_100ms_timer_event 
+03f7 6fe08901 fetch 1 ,mem_usb_remote_wakeup 
+03f8 205a48b5 call dongle_clear_pc_sleep_flag ,blank 
+03f9 20407906 call usb_isr 
+03fa 6fe088f7 fetch 1 ,mem_usb0_get_set_report 
+03fb 207a0000 rtn blank 
+03fc 7008f700 jam 0 ,mem_usb0_get_set_report 
+03fd 6fe108f5 fetch 2 ,mem_usb_setup_bvalue_temp 
+03fe d84002a4 arg pc_set_report ,temp 
+03ff 98467c00 isub temp ,null 
+0400 202281ab branch p_dongle_usb_data_received_analysis ,zero 
+0401 d84002a2 arg pc_set_report_prolotol ,temp 
+0402 98467c00 isub temp ,null 
+0403 24628000 nrtn zero 
+0404 202001ab branch p_dongle_usb_data_received_analysis 
 
 p_wdt_kick:
-03f3 58000010 setarg 16 
-03f4 202070c8 branch wdt_init_config 
+0405 58000010 setarg 16 
+0406 202070c8 branch wdt_init_config 
 
 p_dongle_default_init:
-03f5 204047c3 call dongle_default_init + 1 
-03f6 6fe0c695 fetch 1 ,mem_24g_pair_tx_power_init 
-03f7 67e0c5d1 store 1 ,mem_24g_pair_tx_power 
-03f8 70495000 jam 0 ,mem_usb_http_data_step 
-03f9 70495100 jam 0 ,mem_usb_tx_data_flag 
-03fa 20403281 call g24_enable_1m 
-03fb 6fe0c669 fetch 1 ,mem_dg_sys_config 
-03fc c4000000 rtnbit0 dg_enable_new_revision 
-03fd 7045ca01 jam on ,mem_24g_disable_fec1 
-03fe 20203284 branch g24_enable_2m 
+0407 204047c3 call dongle_default_init + 1 
+0408 6fe0c695 fetch 1 ,mem_24g_pair_tx_power_init 
+0409 67e0c5d1 store 1 ,mem_24g_pair_tx_power 
+040a 20403281 call g24_enable_1m 
+040b 6fe0c669 fetch 1 ,mem_dg_sys_config 
+040c c4000000 rtnbit0 dg_enable_new_revision 
+040d 7045ca01 jam on ,mem_24g_disable_fec1 
+040e 20203284 branch g24_enable_2m 
 
 p_g24_receive_skip_end:
-03ff 6fe0c669 fetch 1 ,mem_dg_sys_config 
-0400 c3003165 bbit0 dg_enable_new_revision ,g24_receive_skip_end + 1 
-0401 7837fc00 enable user3 
-0402 20000018 nop 24 
-0403 6fe0c4f8 fetch 1 ,mem_24g_rxbuf + 1 
-0404 79207e00 set1 bit_ack_24g ,pdata 
-0405 67e0c4f8 store 1 ,mem_24g_rxbuf + 1 
-0406 204033a5 call g24_ackpayload_prep 
-0407 204031e5 call g24_transmit_prep 
-0408 20203195 branch g24_transmit 
+040f 6fe0c669 fetch 1 ,mem_dg_sys_config 
+0410 c3003165 bbit0 dg_enable_new_revision ,g24_receive_skip_end + 1 
+0411 7837fc00 enable user3 
+0412 20000018 nop 24 
+0413 6fe0c4f8 fetch 1 ,mem_24g_rxbuf + 1 
+0414 79207e00 set1 bit_ack_24g ,pdata 
+0415 67e0c4f8 store 1 ,mem_24g_rxbuf + 1 
+0416 204033a5 call g24_ackpayload_prep 
+0417 204031e5 call g24_transmit_prep 
+0418 20203195 branch g24_transmit 
               org 0x2000
 
 start:
Index: program/patch.prog
===================================================================
--- /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/program/patch.prog	(revision 3583)
+++ /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/program/patch.prog	(working copy)
@@ -92,7 +92,6 @@
 	fetch 1,mem_24g_work_mode
 	rtnne DONGLE_WORK
 	call g24_work_init
-	call p_g24_100ms_timer_event
 	call p_g24_ch_process_check
 	branch p_g24_receive_packet_start
 
@@ -807,22 +806,6 @@
 	arg mem_usb_ep2_fifo,rega
 	branch fifo_in
 
-
-p_g24_100ms_timer_event:
-	arg USB_TIMER_100MS,queue
-	call timer_check
-	nrtn blank
-	call p_g24_http_over_pack_check
-p_g24_100ms_timer_init:
-	arg USB_TIMER_100MS,queue
-	setarg 24		//10ms
-	branch timer_init
-
-p_g24_http_over_pack_check:
-	fetch 1,mem_usb_http_data_step
-	rtn blank
-	branch p_dongle_usb_tx_http_data
-
 p_usb_tx_data_ep1:
 	fetch 1,core_usb_txbusy
 	and_into 0x0f,pdata
@@ -838,140 +821,179 @@
 	beq USB_EP1_KB_HTTP,p_usb_tx_http_data_set
 	branch assert
 
-p_usb_tx_http_data_set:
-	fetch 1,mem_usb_http_data_step
-	increase 1,pdata
-	store 1,mem_usb_http_data_step
-	
-	call p_usb_tx_http_data_check
-	fetch 1,mem_usb_tx_data_flag
-	rtn blank
-	jam 0,mem_usb_tx_data_flag
-	branch usb_tx_kb_normal_data	
+//=========================HTTP START======================//
 
-p_usb_tx_http_data_check:
-	fetch 1,mem_usb_http_data_step
-	beq 1,p_usb_tx_win_or_mac_check
-	beq 2,p_usb_tx_cmd_release
-	beq 3,p_usb_tx_ep1_data_enable
-	beq 4,p_usb_tx_ep1_data_enable
-	beq 5,p_usb_tx_ep1_data_enable
-	beq 20,p_usb_tx_data_h
-	beq 21,p_usb_tx_ep1_data_enable
-	beq 22,p_usb_tx_data_t
-	beq 23,p_usb_tx_ep1_data_enable
-	beq 24,p_usb_tx_data_t
-	beq 25,p_usb_tx_ep1_data_enable
-	beq 26,p_usb_tx_data_p
-	beq 27,p_usb_tx_ep1_data_enable
-	beq 28,p_usb_tx_data_s
-	beq 29,p_usb_tx_ep1_data_enable
-	beq 30,p_usb_tx_shift_data_set
-	beq 31,p_usb_tx_ep1_data_enable
-	beq 32,p_usb_tx_data_spec1
-	beq 33,p_usb_tx_ep1_data_enable
-	beq 34,p_usb_tx_data_spec1
-	beq 35,p_usb_tx_ep1_data_enable
-	beq 36,p_usb_tx_data_m
-	beq 37,p_usb_tx_ep1_data_enable
-	beq 38,p_usb_tx_data_o
-	beq 39,p_usb_tx_ep1_data_enable
-	beq 40,p_usb_tx_data_f
-	beq 41,p_usb_tx_ep1_data_enable
-	beq 42,p_usb_tx_data_i
-	beq 43,p_usb_tx_ep1_data_enable
-	beq 44,p_usb_tx_data_i
-	beq 45,p_usb_tx_ep1_data_enable
-	beq 46,p_usb_tx_data_spec2
-	beq 47,p_usb_tx_ep1_data_enable
-	beq 48,p_usb_tx_data_c
-	beq 49,p_usb_tx_ep1_data_enable
-	beq 50,p_usb_tx_data_o
-	beq 51,p_usb_tx_ep1_data_enable
-	beq 52,p_usb_tx_data_m
-	beq 53,p_usb_tx_ep1_data_enable
-	beq 54,p_usb_tx_data_spec1
-	beq 55,p_usb_tx_ep1_data_enable
-	beq 56,p_usb_tx_data_a
-	beq 57,p_usb_tx_ep1_data_enable
-	beq 58,p_usb_tx_data_i
-	beq 59,p_usb_tx_ep1_data_enable
-	beq 70,p_usb_tx_data_enter
-	beq 72,p_usb_tx_ep1_data_enable
-	beq 74,p_usb_tx_data_enter
-	beq 76,p_usb_tx_ep1_end
+p_usb_tx_http_data_set:
+	fetch 1,mem_usb_website_step
+	beq WEBSITE_WIN,p_usb_website_winr_data
+	beq WEBSITE_R_SPACE_RELEASE,p_usb_website_r_space_release_data
+	beq WEBSITE_WIN_RELEASE,p_usb_website_win_release_data
+	beq WEBSITE_WAIT,p_usb_website_wait_tx_data
+	beq WEBSITE_DATA,p_usb_website_data
+	beq WEBSITE_ENTER_1,p_usb_website_enter_data1
+	beq WEBSITE_ENTER_RELEASE_1,p_usb_website_enter_release_data1
+	beq WEBSITE_ENTER_2,p_usb_website_enter_data2
+	beq WEBSITE_ENTER_RELEASE_2,p_usb_website_enter_release_data2
 	rtn
 
-p_usb_tx_win_or_mac_check:
+p_usb_website_winr_data:
 	fetch 1,mem_usb_tx_mac_enable
-	beq 0,p_usb_tx_win_http_data		//win+r
-	beq 1,p_usb_tx_mac_http_data		//command+spaced
+	beq 0,p_usb_tx_winos_winr_data		//win+r
+	beq 1,p_usb_tx_macos_winr_data		//command+spaced
 	rtn
-
-p_usb_tx_win_http_data:
+p_usb_tx_winos_winr_data:
+	jam WEBSITE_R_SPACE_RELEASE,mem_usb_website_step
 	fetch 3,mem_usb_win_cmd
-p_usb_kb_spec_data_store:
 	store 3,mem_usb_kb_data
-p_usb_tx_ep1_data_enable:
-	jam 1,mem_usb_tx_data_flag
+	branch usb_tx_kb_normal_data
+p_usb_tx_macos_winr_data:
+	jam WEBSITE_R_SPACE_RELEASE,mem_usb_website_step
+	fetch 3,mem_usb_mac_cmd
+	store 3,mem_usb_kb_data
+	branch usb_tx_kb_normal_data
+p_usb_website_r_space_release_data:
+	jam WEBSITE_WIN_RELEASE,mem_usb_website_step
+	fetch 1,mem_usb_win_cmd
+	store 1,mem_usb_kb_data
+	branch usb_tx_kb_normal_data
+
+p_usb_website_win_release_data:
+	jam WEBSITE_WAIT,mem_usb_website_step
+p_usb_webstie_release_data:
+	arg mem_usb_kb_data,contw
+	arg 8,loopcnt
+	call memset0
+	jam 0,mem_usb_website_release_flag
+	branch usb_tx_kb_normal_data
+p_usb_website_enter_data1:	
+	jam WEBSITE_ENTER_RELEASE_1,mem_usb_website_step
+p_usb_webstie_enter_data:
+	fetch 3,mem_usb_kb_enter
+	store 3,mem_usb_kb_data
+	branch usb_tx_kb_normal_data
+p_usb_website_enter_release_data1:
+	jam WEBSITE_ENTER_2,mem_usb_website_step
+	branch p_usb_webstie_release_data
+p_usb_website_enter_data2:
+	jam WEBSITE_ENTER_RELEASE_2,mem_usb_website_step
+	branch p_usb_webstie_enter_data
+p_usb_website_enter_release_data2:
+	jam WEBSITE_DONE,mem_usb_website_step
+	branch p_usb_webstie_release_data
+
+p_usb_website_wait_tx_data:
+	fetch 1,mem_usb_website_wait_count
+	increase 1,pdata
+	store 1,mem_usb_website_wait_count
+	rtnne WEBSITE_WAIT_COUNT
+	jam 0,mem_usb_website_wait_count
+	jam WEBSITE_DATA,mem_usb_website_step
+	rtn
+	
+p_usb_website_data:
+	fetch 1,mem_usb_website_release_flag
+	beq 1,p_usb_webstie_release_data
+	beq 0,p_usb_website_info_data
 	rtn
 
-p_usb_tx_mac_http_data:
-	fetch 3,mem_usb_mac_cmd
-	branch p_usb_kb_spec_data_store
+p_usb_webstie_info_data_done:
+	jam WEBSITE_ENTER_1,mem_usb_website_step
+	rtn
+p_usb_website_info_data:
+	arg mem_usb_website_info+1,temp
+	fetch 1,mem_usb_website_info
+	iadd temp,temp
+	fetch 2,mem_usb_website_ptr
+	isub temp,null
+	branch p_usb_webstie_info_data_done,zero
+	call p_usb_tx_website_acii2hidkey
+	call p_usb_tx_website_need_shift
+	fetch 1,mem_usb_website_shift_flag
+	store 1,mem_usb_kb_data
+	storer rega,1,mem_usb_kb_data+2
+	fetch 2,mem_usb_website_ptr
+	increase 1,pdata
+	store 2,mem_usb_website_ptr
+	jam 1,mem_usb_website_release_flag
+	branch usb_tx_kb_normal_data
+
+p_usb_tx_website_acii2hidkey:
+	fetcht 2,mem_usb_website_ptr
+	ifetch 1,temp
+	sub pdata,0x7a,null
+	nbranch p_usb_tx_website_acii2hidkey1,positive
+	arg 0x61,regb
+	isub regb,rega
+	branch p_usb_tx_website_acii2keycode_a2z,positive
+p_usb_tx_website_acii2hidkey1:
+	ifetch 1,temp
+	sub pdata,0x39,null
+	nbranch p_usb_tx_website_acii2keycode_sign,positive
+	arg 0x30,regb
+	isub regb,rega
+	branch p_usb_tx_website_acii2keycode_029,positive
+p_usb_tx_website_acii2keycode_sign:
+	sub pdata,0x3a,null
+	branch p_usb_tx_website_acii2keycode_sign_3a,zero
+	sub pdata,0x2f,null
+	branch p_usb_tx_website_acii2keycode_sign_2f,zero
+	sub pdata,0x2e,null
+	branch p_usb_tx_website_acii2keycode_sign_2e,zero
+	sub pdata,0x2d,null
+	branch p_usb_tx_website_acii2keycode_sign_2d,zero
+	rtn
+p_usb_tx_website_acii2keycode_sign_3a:	//':'
+	arg 0x33,rega
+	rtn
+p_usb_tx_website_acii2keycode_sign_2f:	//'/'
+	arg 0x38,rega
+	rtn
+p_usb_tx_website_acii2keycode_sign_2e:	//'.'
+	arg 0x37,rega
+	rtn
+p_usb_tx_website_acii2keycode_sign_2d:	//'-'
+	arg 0x2d,rega
+	rtn
+p_usb_tx_website_acii2keycode_a2z:
+	add rega,4,rega
+	rtn
+p_usb_tx_website_acii2keycode_029:
+	add rega,0x27,rega
+	rtn
+
+p_usb_tx_website_need_shift:
+	jam 0,mem_usb_website_shift_flag
+	fetch 2,mem_usb_website_ptr
+	ifetch 1,pdata
+	arg mem_usb_website_info_sign+1,contr
+	fetcht 1,mem_usb_website_info_sign
+	copy temp,loopcnt
+p_usb_tx_website_need_shift_check_loop:
+	ifetcht 1,contr
+	isub temp,null
+	branch p_usb_tx_website_need_shift_setflag,zero
+	loop p_usb_tx_website_need_shift_check_loop
+	rtn
+p_usb_tx_website_need_shift_setflag:
+	jam 2,mem_usb_website_shift_flag
+	rtn
 
-p_usb_tx_shift_data_set:		//":"
-	fetch 3,mem_usb_kb_shift
-	branch p_usb_kb_spec_data_store
-
-p_usb_tx_cmd_release:
-	jam 0x08,mem_usb_kb_data
-	branch p_usb_tx_ep1_data_enable
-
-p_usb_tx_data_h:
-	jam 0x0b,mem_usb_kb_data+3
-	branch p_usb_tx_ep1_data_enable
-p_usb_tx_data_t:
-	jam 0x17,mem_usb_kb_data+3
-	branch p_usb_tx_ep1_data_enable
-p_usb_tx_data_p:
-	jam 0x13,mem_usb_kb_data+3
-	branch p_usb_tx_ep1_data_enable
-p_usb_tx_data_s:
-	jam 0x16,mem_usb_kb_data+3
-	branch p_usb_tx_ep1_data_enable
-p_usb_tx_data_spec1:			//"//"
-	jam 0x38,mem_usb_kb_data+3
-	branch p_usb_tx_ep1_data_enable
-p_usb_tx_data_m:
-	jam 0x10,mem_usb_kb_data+3
-	branch p_usb_tx_ep1_data_enable
-p_usb_tx_data_o:
-	jam 0x12,mem_usb_kb_data+3
-	branch p_usb_tx_ep1_data_enable
-p_usb_tx_data_f:
-	jam 0x09,mem_usb_kb_data+3
-	branch p_usb_tx_ep1_data_enable
-p_usb_tx_data_i:
-	jam 0x0c,mem_usb_kb_data+3
-	branch p_usb_tx_ep1_data_enable
-p_usb_tx_data_spec2:			//"."
-	jam 0x37,mem_usb_kb_data+3
-	branch p_usb_tx_ep1_data_enable
-p_usb_tx_data_c:
-	jam 0x06,mem_usb_kb_data+3
-	branch p_usb_tx_ep1_data_enable
-p_usb_tx_data_a:
-	jam 0x04,mem_usb_kb_data+3
-	branch p_usb_tx_ep1_data_enable
-p_usb_tx_data_enter:
-	jam 0x28,mem_usb_kb_data+3
-	branch p_usb_tx_ep1_data_enable
-
-p_usb_tx_ep1_end:
-	jam 0,mem_usb_http_data_step
-	branch p_usb_tx_ep1_data_enable
+p_g24_100ms_timer_event:
+	arg USB_TIMER_100MS,queue
+	call timer_check
+	nrtn blank
+	call p_g24_http_over_pack_check
+p_g24_100ms_timer_init:
+	arg USB_TIMER_100MS,queue
+	setarg 40		//10ms
+	branch timer_init
 
+p_g24_http_over_pack_check:
+	fetch 1,mem_usb_website_step
+	rtn blank
+	branch p_dongle_usb_tx_http_data
+	
+//=========================HTTP END======================//
 
 p_usb_tx_data_ep2:
 	arg mem_usb_ep2_fifo,rega
@@ -1264,6 +1286,8 @@
 
 p_dongle_usb_dispatch:
 	call p_wdt_kick
+	call p_g24_100ms_timer_event
+	
 	fetch 1,mem_usb_remote_wakeup
 	call dongle_clear_pc_sleep_flag,blank
 	call usb_isr
@@ -1291,8 +1315,6 @@
 
 	fetch 1,mem_24g_pair_tx_power_init
 	store 1,mem_24g_pair_tx_power
-	jam 0,mem_usb_http_data_step
-	jam 0,mem_usb_tx_data_flag
 	call g24_enable_1M
 	fetch 1,mem_dg_sys_config
 	rtnbit0 DG_ENABLE_NEW_REVISION
Index: sched/dongle.dat
===================================================================
--- /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/sched/dongle.dat	(revision 3558)
+++ /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/sched/dongle.dat	(working copy)
@@ -34,7 +34,7 @@
 mem_24g_pair_tx_power_init:94 #94: -20dBm  9e: -30dBm  9f: -35dBm a0: -40dBm 
 
 #rf config
-mem_24g_lap:12 02 23 74 12 23#low 4B used for 24g rxaddr
+mem_24g_lap:10 12 23 74 12 23#low 4B used for 24g rxaddr
 #mem_24g_tx_phy:01#0x01:1M/0x02:2M/0x04:S2/0x84:S8
 #mem_24g_rx_phy:01#0x01:1M/0x02:2M/0x04:S2/0x84:S8
 #mem_24g_no_ack:00#no ack
@@ -62,11 +62,6 @@
 #mem_rssi_noise_device1_buffer_ptr:mem_dg_rssi_noise_ms_buffer
 #mem_rssi_noise_device2_buffer_ptr:mem_dg_rssi_noise_kb_buffer
 
-
-mem_usb_win_cmd:08 00 15 	#win+r
-mem_usb_mac_cmd:08 00 2c 	#command+space
-mem_usb_kb_shift:02 00 33	#shift
-
 mem_config_new:
 42 09 02 42 00 02 01 00 A0 32 
 09 04 00 00 01 03 01 01 00 
@@ -146,6 +141,15 @@
 81 02 
 C0
 
+mem_usb_win_cmd:08 00 15 	#win+r
+mem_usb_mac_cmd:08 00 2c 	#command+space
+mem_usb_kb_enter:00 00 28	#shift
+mem_usb_website_ptr:mem_usb_website_info+1
+mem_usb_website_info:
+'www.vd-mks.com
+mem_usb_website_info_sign:
+'~!@#$%^&*()_+{}|":>?<
+
 mem_rf_debug_rx_gpio:87
 mem_rf_debug_tx_gpio:88
 #uart config
