Index: format/app_dongle.format
===================================================================
--- /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/format/app_dongle.format	(revision 3555)
+++ /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/format/app_dongle.format	(working copy)
@@ -34,9 +34,9 @@
 1 mem_setreport_count
 
 //http
-1 mem_usb_http_data_flag
+// 1 mem_usb_http_data_flag
 1 mem_usb_http_data_step
-1 mem_usb_tx_data_flag
+// 1 mem_usb_tx_data_flag
 3 mem_usb_win_cmd
 3 mem_usb_mac_cmd
 3 mem_usb_kb_enter
@@ -48,12 +48,15 @@
 22 mem_usb_website_info_sign
 )
 (
-1 WEBSITE_WIN
-2 WEBSITE_WIN_RELEASE
-3 WEBSITE_DATA
-4 WEBSITE_ENTER
-5 WEBSITE_ENTER_RELEASE
-6 WEBSITE_DONE
+0 WEBSITE_DONE
+1 release_ms_data
+2 WEBSITE_WIN
+3 WEBSITE_WIN_RELEASE
+30 WEBSITE_DATA
+31 WEBSITE_ENTER
+32 WEBSITE_ENTER_RELEASE
+33 WEBSITE_ENTER2
+34 WEBSITE_ENTER_RELEASE2
 )
 
 
Index: output/eeprom.dat
===================================================================
--- /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/output/eeprom.dat	(revision 3555)
+++ /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/output/eeprom.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-56
+92
 0a
 c2
 84
@@ -23,7 +23,7 @@
 c0
 0a
 02
-01
+10
 c0
 0a
 80
@@ -43,7 +43,7 @@
 c0
 1b
 82
-80
+90
 c0
 1c
 00
@@ -55,11 +55,11 @@
 c0
 1e
 82
-69
+77
 c0
 1f
 02
-6e
+7c
 c0
 62
 80
@@ -67,11 +67,11 @@
 c0
 6d
 01
-d2
+e1
 c0
 6e
 01
-e2
+f1
 c0
 7f
 00
@@ -79,7 +79,7 @@
 c0
 7f
 80
-e7
+e8
 20
 20
 23
@@ -87,39 +87,39 @@
 c0
 00
 01
-04
+05
 c0
 03
 01
-23
+24
 c0
 1c
 82
-1d
+2c
 c0
 26
 82
-21
+30
 c0
 37
 82
-8b
+9a
 c0
 41
 02
-23
+32
 c0
 42
 02
-43
+52
 c0
 44
 02
-51
+5f
 c0
 45
 02
-5e
+6c
 c1
 7f
 80
@@ -363,11 +363,11 @@
 20
 40
 01
-a4
+b3
 20
 40
 01
-cf
+de
 20
 40
 00
@@ -383,7 +383,7 @@
 20
 20
 01
-d1
+e0
 20
 75
 80
@@ -916,10 +916,14 @@
 40
 79
 32
+70
+80
+43
+00
 58
 00
 02
-4a
+58
 67
 e1
 45
@@ -955,7 +959,7 @@
 c0
 00
 80
-f6
+f7
 d8
 a0
 08
@@ -987,7 +991,7 @@
 20
 20
 01
-04
+05
 d8
 a0
 08
@@ -1007,7 +1011,7 @@
 c0
 00
 80
-fe
+ff
 70
 08
 f7
@@ -1063,7 +1067,7 @@
 c0
 00
 01
-0a
+0b
 20
 20
 23
@@ -1091,7 +1095,7 @@
 c0
 00
 81
-12
+13
 c0
 01
 79
@@ -1111,7 +1115,7 @@
 c0
 04
 81
-17
+18
 c0
 05
 fb
@@ -1219,19 +1223,27 @@
 20
 40
 01
-33
+36
 6f
 e0
 c6
-98
+a1
 24
-7a
-00
-00
+5a
+01
+34
 20
 20
 01
-40
+43
+70
+09
+14
+00
+20
+60
+00
+00
 6f
 f0
 8c
@@ -1279,7 +1291,7 @@
 c0
 08
 81
-44
+47
 20
 20
 23
@@ -1303,31 +1315,59 @@
 6f
 e0
 c6
-a3
+a1
+1f
+e0
+fe
+01
+67
+e0
+c6
+a1
 c0
 00
-81
-4b
+c8
+32
 c0
 01
 01
-61
+53
 c0
 01
 81
-5b
+6b
 c0
-02
+0f
 01
-57
+62
 c0
-02
+0f
 81
 5f
+c0
+10
+01
+6a
+c0
+10
+81
+5f
+c0
+11
+01
+69
 20
 60
 00
 00
+df
+e0
+46
+a7
+67
+e1
+46
+a4
 6f
 e0
 88
@@ -1335,23 +1375,19 @@
 c0
 00
 01
-4f
+59
 c0
 00
 81
-53
+5c
 20
 60
 00
 00
-70
-46
-a3
-02
 6f
 e1
 c6
-9a
+98
 67
 e1
 89
@@ -1360,14 +1396,10 @@
 20
 7c
 28
-70
-46
-a3
-02
 6f
 e1
 c6
-9d
+9b
 67
 e1
 89
@@ -1376,14 +1408,10 @@
 20
 7c
 28
-70
-46
-a3
-05
 6f
 e1
 c6
-a0
+9e
 67
 e1
 89
@@ -1395,31 +1423,39 @@
 6f
 e0
 c6
-a5
+a1
+1f
+e0
+ff
+ff
+67
+e0
+c6
+a1
+6f
+e0
+c6
+a3
 c0
 00
 81
-62
+6b
 c0
 00
 01
-69
+74
 20
 60
 00
 00
 70
 46
-a3
-06
+a1
+00
 20
 20
 01
-62
-70
-46
-a3
-03
+6b
 d8
 a0
 09
@@ -1434,16 +1470,24 @@
 a3
 70
 46
-a5
+a3
 00
 20
 20
 7c
 28
-70
-46
-a3
-04
+6f
+e0
+c6
+a1
+1f
+e0
+fe
+01
+67
+e0
+c6
+a1
 20
 60
 00
@@ -1451,11 +1495,11 @@
 d8
 40
 46
-a9
+a7
 6f
 e0
 c6
-a8
+a6
 98
 40
 84
@@ -1463,7 +1507,7 @@
 6f
 e1
 46
-a6
+a4
 98
 46
 7c
@@ -1471,19 +1515,19 @@
 20
 22
 81
-67
+70
 20
 40
 01
-79
+84
 20
 40
 01
-97
+a6
 6f
 e0
 c6
-a4
+a2
 67
 e0
 89
@@ -1491,11 +1535,11 @@
 62
 20
 89
-26
+25
 6f
 e1
 46
-a6
+a4
 1f
 e0
 fe
@@ -1503,10 +1547,10 @@
 67
 e1
 46
-a6
+a4
 70
 46
-a5
+a3
 01
 20
 20
@@ -1515,7 +1559,7 @@
 68
 49
 46
-a6
+a4
 ef
 e0
 80
@@ -1527,7 +1571,7 @@
 24
 21
 01
-80
+8b
 da
 40
 00
@@ -1539,7 +1583,7 @@
 20
 21
 01
-93
+a2
 ef
 e0
 80
@@ -1551,7 +1595,7 @@
 24
 21
 01
-86
+91
 da
 40
 00
@@ -1563,7 +1607,7 @@
 20
 21
 01
-95
+a4
 1f
 e6
 7c
@@ -1571,7 +1615,7 @@
 20
 22
 81
-8d
+9a
 1f
 e6
 7c
@@ -1579,7 +1623,7 @@
 20
 22
 81
-8f
+9c
 1f
 e6
 7c
@@ -1587,7 +1631,15 @@
 20
 22
 81
-91
+9e
+1f
+e6
+7c
+2d
+20
+22
+81
+a0
 20
 60
 00
@@ -1616,6 +1668,14 @@
 60
 00
 00
+da
+20
+00
+2d
+20
+60
+00
+00
 1a
 20
 a2
@@ -1634,12 +1694,12 @@
 00
 70
 46
-a4
+a2
 00
 6f
 e1
 46
-a6
+a4
 ef
 e0
 80
@@ -1647,11 +1707,11 @@
 d8
 c0
 46
-d1
+cf
 68
 48
 c6
-d0
+ce
 18
 42
 72
@@ -1667,18 +1727,18 @@
 20
 22
 81
-a2
+b1
 c2
 00
 01
-9d
+ac
 20
 60
 00
 00
 70
 46
-a4
+a2
 02
 20
 60
@@ -1735,7 +1795,7 @@
 20
 40
 01
-c1
+d0
 2a
 2f
 fe
@@ -1767,7 +1827,7 @@
 20
 40
 01
-c1
+d0
 d8
 a0
 8a
@@ -1795,7 +1855,7 @@
 20
 21
 01
-b6
+c5
 20
 20
 21
@@ -1898,8 +1958,8 @@
 b8
 20
 40
-01
-fa
+02
+09
 70
 8a
 08
@@ -1935,7 +1995,7 @@
 20
 40
 01
-f0
+ff
 6f
 f0
 8a
@@ -1978,8 +2038,8 @@
 b8
 20
 40
-01
-fa
+02
+09
 70
 80
 cd
@@ -2038,8 +2098,8 @@
 29
 c3
 02
-81
-fb
+82
+0a
 68
 59
 01
@@ -2075,7 +2135,7 @@
 c0
 08
 02
-1a
+29
 58
 00
 57
@@ -2119,7 +2179,7 @@
 c0
 08
 02
-17
+26
 58
 00
 2b
@@ -2155,7 +2215,7 @@
 20
 20
 02
-13
+22
 58
 00
 83
@@ -2167,7 +2227,7 @@
 20
 20
 02
-08
+17
 6f
 e0
 c3
@@ -2207,7 +2267,7 @@
 c0
 11
 02
-29
+38
 c0
 7f
 b5
@@ -2223,7 +2283,7 @@
 20
 3a
 02
-2f
+3e
 6f
 e2
 45
@@ -2247,11 +2307,11 @@
 c0
 00
 82
-33
+42
 c0
 01
 02
-3b
+4a
 20
 60
 00
@@ -2271,7 +2331,7 @@
 c0
 01
 02
-38
+47
 20
 60
 00
@@ -2303,7 +2363,7 @@
 c0
 80
 02
-40
+4f
 20
 60
 00
@@ -2320,10 +2380,6 @@
 20
 33
 78
-70
-80
-43
-00
 6f
 e0
 c5
@@ -2355,7 +2411,7 @@
 c2
 81
 82
-4d
+5b
 20
 20
 48
@@ -2439,7 +2495,7 @@
 20
 40
 02
-62
+70
 20
 20
 34
@@ -2475,11 +2531,11 @@
 20
 40
 02
-6c
+7a
 20
 40
 02
-78
+86
 20
 20
 48
@@ -2503,7 +2559,7 @@
 20
 40
 02
-72
+80
 20
 20
 48
@@ -2523,7 +2579,7 @@
 20
 40
 02
-78
+86
 20
 40
 35
@@ -2547,7 +2603,7 @@
 20
 40
 02
-7f
+8d
 d8
 e0
 00
@@ -2555,15 +2611,23 @@
 58
 00
 00
-50
+28
 20
 20
 7c
 e1
+6f
+e0
+c6
+a1
+20
+7a
+00
+00
 20
 20
 02
-4d
+5b
 20
 40
 47
@@ -2578,11 +2642,7 @@
 d1
 70
 46
-98
-00
-70
-46
-99
+a1
 00
 70
 45
@@ -2648,8 +2708,8 @@
 20
 31
 95
-da
-41
+60
+0d
 aa
 55
 40
@@ -2824,7 +2884,7 @@
 55
 09
 00
-9a
+98
 46
 08
 00
@@ -2837,13 +2897,11 @@
 28
 aa
 55
-17
+1c
 00
 a6
 46
-a9
-46
-14
+1b
 68
 74
 74
@@ -2851,24 +2909,31 @@
 3a
 2f
 2f
-77
-77
-77
-2e
-7a
-78
-68
 79
+6c
+62
+2e
+71
+64
+2d
+64
+61
+74
 61
-69
 2e
 63
-6e
+6f
+6d
+2f
+67
+7a
+67
+61
 aa
 55
 16
 00
-d0
+ce
 46
 15
 7e
@@ -3084,75 +3149,10 @@
 aa
 aa
 55
+a2
 62
-61
-00
-69
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
+7d
+43
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-5b
-5d
+93
+1e
Index: output/memmap.format
===================================================================
--- /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/output/memmap.format	(revision 3555)
+++ /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/output/memmap.format	(working copy)
@@ -1483,18 +1483,16 @@
 0x4694 mem_dg_24g_tx_power_default
 0x4695 mem_24g_pair_tx_power_init
 0x4696 mem_setreport_count
-0x4697 mem_usb_http_data_flag
-0x4698 mem_usb_http_data_step
-0x4699 mem_usb_tx_data_flag
-0x469a mem_usb_win_cmd
-0x469d mem_usb_mac_cmd
-0x46a0 mem_usb_kb_enter
-0x46a3 mem_usb_website_step
-0x46a4 mem_usb_website_shift_flag
-0x46a5 mem_usb_website_release_flag
-0x46a6 mem_usb_website_ptr
-0x46a8 mem_usb_website_info
-0x46d0 mem_usb_website_info_sign
+0x4697 mem_usb_http_data_step
+0x4698 mem_usb_win_cmd
+0x469b mem_usb_mac_cmd
+0x469e mem_usb_kb_enter
+0x46a1 mem_usb_website_step
+0x46a2 mem_usb_website_shift_flag
+0x46a3 mem_usb_website_release_flag
+0x46a4 mem_usb_website_ptr
+0x46a6 mem_usb_website_info
+0x46ce mem_usb_website_info_sign
 0x45d3 mem_rssi_hex_received
 0x45d4 mem_24g_pair_sm
 0x45d5 mem_24g_pair_no_ack
Index: output/program.lis
===================================================================
--- /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/output/program.lis	(revision 3555)
+++ /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/output/program.lis	(working copy)
@@ -4,33 +4,33 @@
 0001 c000001f beq patch00_0 ,p_soft_reset 
 0002 c0010025 beq patch00_2 ,p_main_loop 
 0003 c008802e beq patch02_1 ,p_set_sync_on 
-0004 c00a0201 beq patch02_4 ,p_set_lemode 
+0004 c00a0210 beq patch02_4 ,p_set_lemode 
 0005 c00a80ca beq patch02_5 ,p_rf_rx_enable 
 0006 c00c00d8 beq patch03_0 ,p_txon 
 0007 c00c807e beq patch03_1 ,p_set_tx_power 
 0008 c00d003c beq patch03_2 ,p_initialize_radio_cont 
-0009 c01b8280 beq patch06_7 ,p_dongle_default_init 
+0009 c01b8290 beq patch06_7 ,p_dongle_default_init 
 000a c01c009d beq patch07_0 ,p_dongle_read_kb_bind_status 
 000b c01c8099 beq patch07_1 ,p_dongle_write_kb_bind_status 
-000c c01e8269 beq patch07_5 ,p_dongle_usb_dispatch 
-000d c01f026e beq patch07_6 ,p_dongle_work_mode_auto 
+000c c01e8277 beq patch07_5 ,p_dongle_usb_dispatch 
+000d c01f027c beq patch07_6 ,p_dongle_work_mode_auto 
 000e c0628096 beq patch18_5 ,p_otp_read_data 
-000f c06d01d2 beq patch1b_2 ,p_sadc_calibration 
-0010 c06e01e2 beq patch1b_4 ,p_enable_adc 
+000f c06d01e1 beq patch1b_2 ,p_sadc_calibration 
+0010 c06e01f1 beq patch1b_4 ,p_enable_adc 
 0011 c07f00e2 beq patch1f_6 ,p_usb_init 
-0012 c07f80e7 beq patch1f_7 ,p_usb_rx 
+0012 c07f80e8 beq patch1f_7 ,p_usb_rx 
 0013 2020235a branch assert 
 
 pf_patch_ext:
-0014 c0000104 beq patch20_0 ,p_usb_class_type 
-0015 c0030123 beq patch20_6 ,p_usb_tx 
-0016 c01c821d beq patch27_1 ,p_le_parse 
-0017 c0268221 beq patch29_5 ,p_le_init_adv 
-0018 c037828b beq patch2d_7 ,p_g24_receive_skip_end 
-0019 c0410223 beq patch30_2 ,p_g24_bind_data_parse_next 
-001a c0420243 beq patch30_4 ,p_g24_receive_packet_start1 
-001b c0440251 beq patch31_0 ,p_g24_mode_switch_bind_search 
-001c c045025e beq patch31_2 ,p_g24_bind_mode_auto 
+0014 c0000105 beq patch20_0 ,p_usb_class_type 
+0015 c0030124 beq patch20_6 ,p_usb_tx 
+0016 c01c822c beq patch27_1 ,p_le_parse 
+0017 c0268230 beq patch29_5 ,p_le_init_adv 
+0018 c037829a beq patch2d_7 ,p_g24_receive_skip_end 
+0019 c0410232 beq patch30_2 ,p_g24_bind_data_parse_next 
+001a c0420252 beq patch30_4 ,p_g24_receive_packet_start1 
+001b c044025f beq patch31_0 ,p_g24_mode_switch_bind_search 
+001c c045026c beq patch31_2 ,p_g24_bind_mode_auto 
 001d c17f8000 rtneq patch3f_7 
 001e 2020235a branch assert 
 
@@ -101,12 +101,12 @@
 0056 58557474 setarg 0x557474 
 0057 67f18968 store 3 ,0x8968 
 0058 7089606e jam 0x6e ,0x8960 
-0059 204001a4 call p_rx_dcoc 
-005a 204001cf call p_rfpll_aac_ghpc 
+0059 204001b3 call p_rx_dcoc 
+005a 204001de call p_rfpll_aac_ghpc 
 005b 2040005f call p_set_xtal_cap 
 005c 7041480c jam system_clk_12m ,mem_system_clk 
 005d 20406f4e call sadc_calibration 
-005e 202001d1 branch p_dpll_ring_ibias_calc 
+005e 202001e0 branch p_dpll_ring_ibias_calc 
 
 p_set_xtal_cap:
 005f 20758000 rtn wake 
@@ -278,583 +278,602 @@
 p_usb_init:
 00e2 20407396 call enable_authrom 
 00e3 20407932 call usb_init_param 
-00e4 5800024a setarg p_dongle_g24_mouse 
-00e5 67e145e4 store 2 ,mem_cb_24g_data_device1 
-00e6 20207915 branch usb_init_restart 
+00e4 70804300 jam 0x00 ,0x8043 
+00e5 58000258 setarg p_dongle_g24_mouse 
+00e6 67e145e4 store 2 ,mem_cb_24g_data_device1 
+00e7 20207915 branch usb_init_restart 
 
 p_usb_rx:
-00e7 6fe08709 fetch 1 ,mem_usb_status 
-00e8 c4028000 rtnbit0 usb_status_rxready 
-00e9 20407989 call usb_rx_len 
-00ea 2841fe0d compare 13 ,temp ,0xff 
-00eb 2020f999 branch usb_rx_ep13 ,true 
-00ec 6fe0c696 fetch 1 ,mem_setreport_count 
-00ed c00080f6 beq 1 ,p_setreport_next_page_data 
-00ee d8a0086d arg mem_usb_setup ,contw 
-00ef 20407994 call usb_rx_read 
+00e8 6fe08709 fetch 1 ,mem_usb_status 
+00e9 c4028000 rtnbit0 usb_status_rxready 
+00ea 20407989 call usb_rx_len 
+00eb 2841fe0d compare 13 ,temp ,0xff 
+00ec 2020f999 branch usb_rx_ep13 ,true 
+00ed 6fe0c696 fetch 1 ,mem_setreport_count 
+00ee c00080f7 beq 1 ,p_setreport_next_page_data 
+00ef d8a0086d arg mem_usb_setup ,contw 
+00f0 20407994 call usb_rx_read 
 
 p_usb_rx_next:
-00f0 6fe0870c fetch 1 ,mem_usb_read_len 
-00f1 c0007986 beq 0x00 ,usb_rx_no_data 
-00f2 c000f9b6 beq 0x01 ,usb_out_one_byte 
-00f3 1fe67c07 sub pdata ,7 ,null 
-00f4 20610000 rtn positive 
-00f5 20200104 branch p_usb_class_type 
+00f1 6fe0870c fetch 1 ,mem_usb_read_len 
+00f2 c0007986 beq 0x00 ,usb_rx_no_data 
+00f3 c000f9b6 beq 0x01 ,usb_out_one_byte 
+00f4 1fe67c07 sub pdata ,7 ,null 
+00f5 20610000 rtn positive 
+00f6 20200105 branch p_usb_class_type 
 
 p_setreport_next_page_data:
-00f6 d8a00875 arg mem_usb0_set_report_data ,contw 
-00f7 20407994 call usb_rx_read 
-00f8 70469600 jam 0 ,mem_setreport_count 
-00f9 6fe0870c fetch 1 ,mem_usb_read_len 
-00fa c00080fe beq 0x01 ,p_usb_out_one_byte 
-00fb 7008f701 jam 1 ,mem_usb0_get_set_report 
-00fc 708c1b03 jam 0x03 ,core_usb_clear_nak 
-00fd 20600000 rtn 
+00f7 d8a00875 arg mem_usb0_set_report_data ,contw 
+00f8 20407994 call usb_rx_read 
+00f9 70469600 jam 0 ,mem_setreport_count 
+00fa 6fe0870c fetch 1 ,mem_usb_read_len 
+00fb c00080ff beq 0x01 ,p_usb_out_one_byte 
+00fc 7008f701 jam 1 ,mem_usb0_get_set_report 
+00fd 708c1b03 jam 0x03 ,core_usb_clear_nak 
+00fe 20600000 rtn 
 
 p_usb_out_one_byte:
-00fe 6fe0886d fetch 1 ,mem_usb_setup 
-00ff c3838000 rtnbit1 7 
-0100 6fe08875 fetch 1 ,mem_usb0_set_report_data 
-0101 20407b6a call usb_get_led_status 
-0102 708c1b01 jam 0x1 ,core_usb_clear_nak 
-0103 20600000 rtn 
+00ff 6fe0886d fetch 1 ,mem_usb_setup 
+0100 c3838000 rtnbit1 7 
+0101 6fe08875 fetch 1 ,mem_usb0_set_report_data 
+0102 20407b6a call usb_get_led_status 
+0103 708c1b01 jam 0x1 ,core_usb_clear_nak 
+0104 20600000 rtn 
 
 p_usb_class_type:
-0104 793f8023 set0 mark_isstr ,mark 
-0105 6fe0886d fetch 1 ,mem_usb_setup_bmrequesttype 
-0106 1fe17e80 and_into 0x80 ,pdata 
-0107 c04079ba beq in_device ,usb_in_device 
-0108 c000010a beq out_device ,p_usb_out_device 
-0109 2020235a branch assert 
+0105 793f8023 set0 mark_isstr ,mark 
+0106 6fe0886d fetch 1 ,mem_usb_setup_bmrequesttype 
+0107 1fe17e80 and_into 0x80 ,pdata 
+0108 c04079ba beq in_device ,usb_in_device 
+0109 c000010b beq out_device ,p_usb_out_device 
+010a 2020235a branch assert 
 
 p_usb_out_device:
-010a 6fe0886d fetch 1 ,mem_usb_setup_bmrequesttype 
-010b 1ff1fe00 rshift4 pdata ,pdata 
-010c 1fe37e00 rshift pdata ,pdata 
-010d 1fe17e03 and_into 0x03 ,pdata 
-010e c00079d6 beq standard_req ,usb_out_standard_req 
-010f c0008112 beq class_req ,p_usb_out_class_req 
-0110 c00179e3 beq manufacturer_req ,usb_out_manufacturer_req 
-0111 2020235a branch assert 
+010b 6fe0886d fetch 1 ,mem_usb_setup_bmrequesttype 
+010c 1ff1fe00 rshift4 pdata ,pdata 
+010d 1fe37e00 rshift pdata ,pdata 
+010e 1fe17e03 and_into 0x03 ,pdata 
+010f c00079d6 beq standard_req ,usb_out_standard_req 
+0110 c0008113 beq class_req ,p_usb_out_class_req 
+0111 c00179e3 beq manufacturer_req ,usb_out_manufacturer_req 
+0112 2020235a branch assert 
 
 p_usb_out_class_req:
-0112 6fe0886e fetch 1 ,mem_usb_setup_brequest 
-0113 c0057b4b beq set_idle ,usb_set_idle 
-0114 c0048117 beq set_report ,p_usb_set_report 
-0115 c005fb7c beq set_protocol ,usb_set_protocol_req 
-0116 202079e4 branch usb0_force_stall 
+0113 6fe0886e fetch 1 ,mem_usb_setup_brequest 
+0114 c0057b4b beq set_idle ,usb_set_idle 
+0115 c0048118 beq set_report ,p_usb_set_report 
+0116 c005fb7c beq set_protocol ,usb_set_protocol_req 
+0117 202079e4 branch usb0_force_stall 
 
 p_usb_set_report:
-0117 20003a98 nop 15000 
-0118 d8a00875 arg mem_usb0_set_report_data ,contw 
-0119 204000df call p_usb_rx_data 
-011a 7008f701 jam 1 ,mem_usb0_get_set_report 
-011b 20407b6e call usb_set_report_resume_judge 
-011c 6fe0c696 fetch 1 ,mem_setreport_count 
-011d 1fe0fe01 pincrease 1 
-011e 67e0c696 store 1 ,mem_setreport_count 
-011f 6fe1086f fetch 2 ,mem_usb_setup_bvalue 
-0120 67e108f5 store 2 ,mem_usb_setup_bvalue_temp 
-0121 708c1b02 jam 0x2 ,core_usb_clear_nak 
-0122 20207b65 branch usb_set_report_next 
+0118 20003a98 nop 15000 
+0119 d8a00875 arg mem_usb0_set_report_data ,contw 
+011a 204000df call p_usb_rx_data 
+011b 7008f701 jam 1 ,mem_usb0_get_set_report 
+011c 20407b6e call usb_set_report_resume_judge 
+011d 6fe0c696 fetch 1 ,mem_setreport_count 
+011e 1fe0fe01 pincrease 1 
+011f 67e0c696 store 1 ,mem_setreport_count 
+0120 6fe1086f fetch 2 ,mem_usb_setup_bvalue 
+0121 67e108f5 store 2 ,mem_usb_setup_bvalue_temp 
+0122 708c1b02 jam 0x2 ,core_usb_clear_nak 
+0123 20207b65 branch usb_set_report_next 
 
 p_usb_tx:
-0123 6fe0890d fetch 1 ,mem_usb_tx_enable 
-0124 207a0000 rtn blank 
-0125 6ff08c25 fetch 1 ,core_usb_txbusy 
-0126 1fe17e0f and_into 0x0f ,pdata 
-0127 243a7c30 nbranch usb_inwake_state_tx_dispose ,blank 
-0128 6fe0890e fetch 1 ,mem_usb_device_enumeration_endflag 
-0129 203a7c06 branch usb_tx_fifo_release ,blank 
-012a 6fe08900 fetch 1 ,mem_usb_state 
-012b c001fc40 beq usb_sleep ,usb_windows_wakeup 
-012c c0817c06 bne usb_connected ,usb_tx_fifo_release 
-012d 6fe08902 fetch 1 ,mem_usb_clear_remote_wakeup 
-012e 243a7c06 nbranch usb_tx_fifo_release ,blank 
-012f 20400133 call p_usb_tx_data_ep1 
-0130 6fe0c698 fetch 1 ,mem_usb_http_data_step 
-0131 247a0000 nrtn blank 
-0132 20200140 branch p_usb_tx_data_ep2 
+0124 6fe0890d fetch 1 ,mem_usb_tx_enable 
+0125 207a0000 rtn blank 
+0126 6ff08c25 fetch 1 ,core_usb_txbusy 
+0127 1fe17e0f and_into 0x0f ,pdata 
+0128 243a7c30 nbranch usb_inwake_state_tx_dispose ,blank 
+0129 6fe0890e fetch 1 ,mem_usb_device_enumeration_endflag 
+012a 203a7c06 branch usb_tx_fifo_release ,blank 
+012b 6fe08900 fetch 1 ,mem_usb_state 
+012c c001fc40 beq usb_sleep ,usb_windows_wakeup 
+012d c0817c06 bne usb_connected ,usb_tx_fifo_release 
+012e 6fe08902 fetch 1 ,mem_usb_clear_remote_wakeup 
+012f 243a7c06 nbranch usb_tx_fifo_release ,blank 
+0130 20400136 call p_usb_tx_data_ep1 
+0131 6fe0c6a1 fetch 1 ,mem_usb_website_step 
+0132 245a0134 ncall p_mouse_key_clr ,blank 
+0133 20200143 branch p_usb_tx_data_ep2 
+
+p_mouse_key_clr:
+0134 70091400 jam 0x00 ,mem_usb_mouse_data + 1 
+0135 20600000 rtn 
 
 p_usb_tx_data_ep1:
-0133 6ff08c25 fetch 1 ,core_usb_txbusy 
-0134 1fe17e0f and_into 0x0f ,pdata 
-0135 247a0000 nrtn blank 
-0136 6fe0890d fetch 1 ,mem_usb_tx_enable 
-0137 c4008000 rtnbit0 1 
-0138 6fe0890d fetch 1 ,mem_usb_tx_enable 
-0139 793ffe01 set0 1 ,pdata 
-013a 67e0890d store 1 ,mem_usb_tx_enable 
-013b 6fe0890b fetch 1 ,mem_usb_ep1_data 
-013c 207a0000 rtn blank 
-013d c0087c28 beq usb_ep1_kb ,usb_tx_kb_normal_data 
-013e c0088144 beq usb_ep1_kb_http ,p_usb_tx_http_data_set 
-013f 2020235a branch assert 
+0136 6ff08c25 fetch 1 ,core_usb_txbusy 
+0137 1fe17e0f and_into 0x0f ,pdata 
+0138 247a0000 nrtn blank 
+0139 6fe0890d fetch 1 ,mem_usb_tx_enable 
+013a c4008000 rtnbit0 1 
+013b 6fe0890d fetch 1 ,mem_usb_tx_enable 
+013c 793ffe01 set0 1 ,pdata 
+013d 67e0890d store 1 ,mem_usb_tx_enable 
+013e 6fe0890b fetch 1 ,mem_usb_ep1_data 
+013f 207a0000 rtn blank 
+0140 c0087c28 beq usb_ep1_kb ,usb_tx_kb_normal_data 
+0141 c0088147 beq usb_ep1_kb_http ,p_usb_tx_http_data_set 
+0142 2020235a branch assert 
 
 p_usb_tx_data_ep2:
-0140 6ff08c25 fetch 1 ,core_usb_txbusy 
-0141 1fe17e0f and_into 0x0f ,pdata 
-0142 247a0000 nrtn blank 
-0143 20207bfb branch usb_tx_data_ep2 + 2 
+0143 6ff08c25 fetch 1 ,core_usb_txbusy 
+0144 1fe17e0f and_into 0x0f ,pdata 
+0145 247a0000 nrtn blank 
+0146 20207bfb branch usb_tx_data_ep2 + 2 
 
 p_usb_tx_http_data_set:
-0144 6fe0c6a3 fetch 1 ,mem_usb_website_step 
-0145 c000814b beq website_win ,p_usb_website_winr_data 
-0146 c0010161 beq website_win_release ,p_usb_website_winr_release_data 
-0147 c001815b beq website_data ,p_usb_website_data 
-0148 c0020157 beq website_enter ,p_usb_website_enter_data 
-0149 c002815f beq website_enter_release ,p_usb_website_enter_release_data 
-014a 20600000 rtn 
+0147 6fe0c6a1 fetch 1 ,mem_usb_website_step 
+0148 1fe0fe01 increase 1 ,pdata 
+0149 67e0c6a1 store 1 ,mem_usb_website_step 
+014a c000c832 beq release_ms_data ,dongle_g24_ms_blank_data_next 
+014b c0010153 beq website_win ,p_usb_website_winr_data 
+014c c001816b beq website_win_release ,p_usb_website_winr_release_data 
+014d c00f0162 beq website_data ,p_usb_website_data 
+014e c00f815f beq website_enter ,p_usb_website_enter_data 
+014f c010016a beq website_enter_release ,p_usb_website_enter_release_data + 1 
+0150 c010815f beq website_enter2 ,p_usb_website_enter_data 
+0151 c0110169 beq website_enter_release2 ,p_usb_website_enter_release_data 
+0152 20600000 rtn 
 
 p_usb_website_winr_data:
-014b 6fe088fa fetch 1 ,mem_usb_tx_mac_enable 
-014c c000014f beq 0 ,p_usb_tx_winos_winr_data 
-014d c0008153 beq 1 ,p_usb_tx_macos_winr_data 
-014e 20600000 rtn 
+0153 dfe046a7 arg mem_usb_website_info + 1 ,pdata 
+0154 67e146a4 store 2 ,mem_usb_website_ptr 
+0155 6fe088fa fetch 1 ,mem_usb_tx_mac_enable 
+0156 c0000159 beq 0 ,p_usb_tx_winos_winr_data 
+0157 c000815c beq 1 ,p_usb_tx_macos_winr_data 
+0158 20600000 rtn 
 
 p_usb_tx_winos_winr_data:
-014f 7046a302 jam website_win_release ,mem_usb_website_step 
-0150 6fe1c69a fetch 3 ,mem_usb_win_cmd 
-0151 67e18923 store 3 ,mem_usb_kb_data 
-0152 20207c28 branch usb_tx_kb_normal_data 
+0159 6fe1c698 fetch 3 ,mem_usb_win_cmd 
+015a 67e18923 store 3 ,mem_usb_kb_data 
+015b 20207c28 branch usb_tx_kb_normal_data 
 
 p_usb_tx_macos_winr_data:
-0153 7046a302 jam website_win_release ,mem_usb_website_step 
-0154 6fe1c69d fetch 3 ,mem_usb_mac_cmd 
-0155 67e18923 store 3 ,mem_usb_kb_data 
-0156 20207c28 branch usb_tx_kb_normal_data 
+015c 6fe1c69b fetch 3 ,mem_usb_mac_cmd 
+015d 67e18923 store 3 ,mem_usb_kb_data 
+015e 20207c28 branch usb_tx_kb_normal_data 
 
 p_usb_website_enter_data:
-0157 7046a305 jam website_enter_release ,mem_usb_website_step 
-0158 6fe1c6a0 fetch 3 ,mem_usb_kb_enter 
-0159 67e18923 store 3 ,mem_usb_kb_data 
-015a 20207c28 branch usb_tx_kb_normal_data 
+015f 6fe1c69e fetch 3 ,mem_usb_kb_enter 
+0160 67e18923 store 3 ,mem_usb_kb_data 
+0161 20207c28 branch usb_tx_kb_normal_data 
 
 p_usb_website_data:
-015b 6fe0c6a5 fetch 1 ,mem_usb_website_release_flag 
-015c c0008162 beq 1 ,p_usb_webstie_release_data 
-015d c0000169 beq 0 ,p_usb_website_info_data 
-015e 20600000 rtn 
+0162 6fe0c6a1 fetch 1 ,mem_usb_website_step 
+0163 1fe0ffff increase -1 ,pdata 
+0164 67e0c6a1 store 1 ,mem_usb_website_step 
+0165 6fe0c6a3 fetch 1 ,mem_usb_website_release_flag 
+0166 c000816b beq 1 ,p_usb_webstie_release_data 
+0167 c0000174 beq 0 ,p_usb_website_info_data 
+0168 20600000 rtn 
 
 p_usb_website_enter_release_data:
-015f 7046a306 jam website_done ,mem_usb_website_step 
-0160 20200162 branch p_usb_webstie_release_data 
+0169 7046a100 jam website_done ,mem_usb_website_step 
+016a 2020016b branch p_usb_webstie_release_data 
 
 p_usb_website_winr_release_data:
-0161 7046a303 jam website_data ,mem_usb_website_step 
 
 p_usb_webstie_release_data:
-0162 d8a00923 arg mem_usb_kb_data ,contw 
-0163 df200008 arg 8 ,loopcnt 
-0164 20407ca3 call memset0 
-0165 7046a500 jam 0 ,mem_usb_website_release_flag 
-0166 20207c28 branch usb_tx_kb_normal_data 
+016b d8a00923 arg mem_usb_kb_data ,contw 
+016c df200008 arg 8 ,loopcnt 
+016d 20407ca3 call memset0 
+016e 7046a300 jam 0 ,mem_usb_website_release_flag 
+016f 20207c28 branch usb_tx_kb_normal_data 
 
 p_usb_webstie_info_data_done:
-0167 7046a304 jam website_enter ,mem_usb_website_step 
-0168 20600000 rtn 
+0170 6fe0c6a1 fetch 1 ,mem_usb_website_step 
+0171 1fe0fe01 increase 1 ,pdata 
+0172 67e0c6a1 store 1 ,mem_usb_website_step 
+0173 20600000 rtn 
 
 p_usb_website_info_data:
-0169 d84046a9 arg mem_usb_website_info + 1 ,temp 
-016a 6fe0c6a8 fetch 1 ,mem_usb_website_info 
-016b 98408400 iadd temp ,temp 
-016c 6fe146a6 fetch 2 ,mem_usb_website_ptr 
-016d 98467c00 isub temp ,null 
-016e 20228167 branch p_usb_webstie_info_data_done ,zero 
-016f 20400179 call p_usb_tx_website_acii2hidkey 
-0170 20400197 call p_usb_tx_website_need_shift 
-0171 6fe0c6a4 fetch 1 ,mem_usb_website_shift_flag 
-0172 67e08923 store 1 ,mem_usb_kb_data 
-0173 62208926 storer rega ,1 ,mem_usb_kb_data + 3 
-0174 6fe146a6 fetch 2 ,mem_usb_website_ptr 
-0175 1fe0fe01 increase 1 ,pdata 
-0176 67e146a6 store 2 ,mem_usb_website_ptr 
-0177 7046a501 jam 1 ,mem_usb_website_release_flag 
-0178 20207c28 branch usb_tx_kb_normal_data 
+0174 d84046a7 arg mem_usb_website_info + 1 ,temp 
+0175 6fe0c6a6 fetch 1 ,mem_usb_website_info 
+0176 98408400 iadd temp ,temp 
+0177 6fe146a4 fetch 2 ,mem_usb_website_ptr 
+0178 98467c00 isub temp ,null 
+0179 20228170 branch p_usb_webstie_info_data_done ,zero 
+017a 20400184 call p_usb_tx_website_acii2hidkey 
+017b 204001a6 call p_usb_tx_website_need_shift 
+017c 6fe0c6a2 fetch 1 ,mem_usb_website_shift_flag 
+017d 67e08923 store 1 ,mem_usb_kb_data 
+017e 62208925 storer rega ,1 ,mem_usb_kb_data + 2 
+017f 6fe146a4 fetch 2 ,mem_usb_website_ptr 
+0180 1fe0fe01 increase 1 ,pdata 
+0181 67e146a4 store 2 ,mem_usb_website_ptr 
+0182 7046a301 jam 1 ,mem_usb_website_release_flag 
+0183 20207c28 branch usb_tx_kb_normal_data 
 
 p_usb_tx_website_acii2hidkey:
-0179 684946a6 fetcht 2 ,mem_usb_website_ptr 
-017a efe08002 ifetch 1 ,temp 
-017b 1fe67c7a sub pdata ,0x7a ,null 
-017c 24210180 nbranch p_usb_tx_website_acii2hidkey1 ,positive 
-017d da400061 arg 0x61 ,regb 
-017e 9a462200 isub regb ,rega 
-017f 20210193 branch p_usb_tx_website_acii2keycode_a2z ,positive 
+0184 684946a4 fetcht 2 ,mem_usb_website_ptr 
+0185 efe08002 ifetch 1 ,temp 
+0186 1fe67c7a sub pdata ,0x7a ,null 
+0187 2421018b nbranch p_usb_tx_website_acii2hidkey1 ,positive 
+0188 da400061 arg 0x61 ,regb 
+0189 9a462200 isub regb ,rega 
+018a 202101a2 branch p_usb_tx_website_acii2keycode_a2z ,positive 
 
 p_usb_tx_website_acii2hidkey1:
-0180 efe08002 ifetch 1 ,temp 
-0181 1fe67c39 sub pdata ,0x39 ,null 
-0182 24210186 nbranch p_usb_tx_website_acii2keycode_sign ,positive 
-0183 da400030 arg 0x30 ,regb 
-0184 9a462200 isub regb ,rega 
-0185 20210195 branch p_usb_tx_website_acii2keycode_029 ,positive 
+018b efe08002 ifetch 1 ,temp 
+018c 1fe67c39 sub pdata ,0x39 ,null 
+018d 24210191 nbranch p_usb_tx_website_acii2keycode_sign ,positive 
+018e da400030 arg 0x30 ,regb 
+018f 9a462200 isub regb ,rega 
+0190 202101a4 branch p_usb_tx_website_acii2keycode_029 ,positive 
 
 p_usb_tx_website_acii2keycode_sign:
-0186 1fe67c3a sub pdata ,0x3a ,null 
-0187 2022818d branch p_usb_tx_website_acii2keycode_sign_3a ,zero 
-0188 1fe67c2f sub pdata ,0x2f ,null 
-0189 2022818f branch p_usb_tx_website_acii2keycode_sign_2f ,zero 
-018a 1fe67c2e sub pdata ,0x2e ,null 
-018b 20228191 branch p_usb_tx_website_acii2keycode_sign_2e ,zero 
-018c 20600000 rtn 
+0191 1fe67c3a sub pdata ,0x3a ,null 
+0192 2022819a branch p_usb_tx_website_acii2keycode_sign_3a ,zero 
+0193 1fe67c2f sub pdata ,0x2f ,null 
+0194 2022819c branch p_usb_tx_website_acii2keycode_sign_2f ,zero 
+0195 1fe67c2e sub pdata ,0x2e ,null 
+0196 2022819e branch p_usb_tx_website_acii2keycode_sign_2e ,zero 
+0197 1fe67c2d sub pdata ,0x2d ,null 
+0198 202281a0 branch p_usb_tx_website_acii2keycode_sign_2d ,zero 
+0199 20600000 rtn 
 
 p_usb_tx_website_acii2keycode_sign_3a:
-018d da200033 arg 0x33 ,rega 
-018e 20600000 rtn 
+019a da200033 arg 0x33 ,rega 
+019b 20600000 rtn 
 
 p_usb_tx_website_acii2keycode_sign_2f:
-018f da200038 arg 0x38 ,rega 
-0190 20600000 rtn 
+019c da200038 arg 0x38 ,rega 
+019d 20600000 rtn 
 
 p_usb_tx_website_acii2keycode_sign_2e:
-0191 da200037 arg 0x37 ,rega 
-0192 20600000 rtn 
+019e da200037 arg 0x37 ,rega 
+019f 20600000 rtn 
+
+p_usb_tx_website_acii2keycode_sign_2d:
+01a0 da20002d arg 0x2d ,rega 
+01a1 20600000 rtn 
 
 p_usb_tx_website_acii2keycode_a2z:
-0193 1a20a204 add rega ,4 ,rega 
-0194 20600000 rtn 
+01a2 1a20a204 add rega ,4 ,rega 
+01a3 20600000 rtn 
 
 p_usb_tx_website_acii2keycode_029:
-0195 1a20a227 add rega ,0x27 ,rega 
-0196 20600000 rtn 
+01a4 1a20a227 add rega ,0x27 ,rega 
+01a5 20600000 rtn 
 
 p_usb_tx_website_need_shift:
-0197 7046a400 jam 0 ,mem_usb_website_shift_flag 
-0198 6fe146a6 fetch 2 ,mem_usb_website_ptr 
-0199 efe0803f ifetch 1 ,pdata 
-019a d8c046d1 arg mem_usb_website_info_sign + 1 ,contr 
-019b 6848c6d0 fetcht 1 ,mem_usb_website_info_sign 
-019c 18427200 copy temp ,loopcnt 
+01a6 7046a200 jam 0 ,mem_usb_website_shift_flag 
+01a7 6fe146a4 fetch 2 ,mem_usb_website_ptr 
+01a8 efe0803f ifetch 1 ,pdata 
+01a9 d8c046cf arg mem_usb_website_info_sign + 1 ,contr 
+01aa 6848c6ce fetcht 1 ,mem_usb_website_info_sign 
+01ab 18427200 copy temp ,loopcnt 
 
 p_usb_tx_website_need_shift_check_loop:
-019d e8408006 ifetcht 1 ,contr 
-019e 98467c00 isub temp ,null 
-019f 202281a2 branch p_usb_tx_website_need_shift_setflag ,zero 
-01a0 c200019d loop p_usb_tx_website_need_shift_check_loop 
-01a1 20600000 rtn 
+01ac e8408006 ifetcht 1 ,contr 
+01ad 98467c00 isub temp ,null 
+01ae 202281b1 branch p_usb_tx_website_need_shift_setflag ,zero 
+01af c20001ac loop p_usb_tx_website_need_shift_check_loop 
+01b0 20600000 rtn 
 
 p_usb_tx_website_need_shift_setflag:
-01a2 7046a402 jam 2 ,mem_usb_website_shift_flag 
-01a3 20600000 rtn 
+01b1 7046a202 jam 2 ,mem_usb_website_shift_flag 
+01b2 20600000 rtn 
 
 p_rx_dcoc:
-01a4 20758000 rtn wake 
-01a5 20402160 call set_sync_on 
-01a6 d8400027 arg 39 ,temp 
-01a7 2040216f call set_freq_rx 
-01a8 204021a6 call rf_rx_enable 
-01a9 708a257f jam 0x7f ,0x8a25 
-01aa 708a301a jam 0x1a ,0x8a30 
-01ab 708a3178 jam 0x78 ,0x8a31 
-01ac 708a8fb2 jam 0xb2 ,0x8a8f 
-01ad 708ac200 jam 0 ,0x8ac2 
-01ae 708ac300 jam 0 ,0x8ac3 
-01af d8e00006 arg 6 ,queue 
-01b0 204001c1 call p_rx_dcoc_avg 
-01b1 2a2ffe0d isolate1 13 ,rega 
-01b2 2040211d call qset_start 
-01b3 2a4ffe0d isolate1 13 ,regb 
-01b4 2040211e call qset_p 
-01b5 d8e00005 arg 5 ,queue 
+01b3 20758000 rtn wake 
+01b4 20402160 call set_sync_on 
+01b5 d8400027 arg 39 ,temp 
+01b6 2040216f call set_freq_rx 
+01b7 204021a6 call rf_rx_enable 
+01b8 708a257f jam 0x7f ,0x8a25 
+01b9 708a301a jam 0x1a ,0x8a30 
+01ba 708a3178 jam 0x78 ,0x8a31 
+01bb 708a8fb2 jam 0xb2 ,0x8a8f 
+01bc 708ac200 jam 0 ,0x8ac2 
+01bd 708ac300 jam 0 ,0x8ac3 
+01be d8e00006 arg 6 ,queue 
+01bf 204001d0 call p_rx_dcoc_avg 
+01c0 2a2ffe0d isolate1 13 ,rega 
+01c1 2040211d call qset_start 
+01c2 2a4ffe0d isolate1 13 ,regb 
+01c3 2040211e call qset_p 
+01c4 d8e00005 arg 5 ,queue 
 
 p_rx_dcoc_loop2:
-01b6 2040211c call qset1_p 
-01b7 2040211e call qset_p 
-01b8 204001c1 call p_rx_dcoc_avg 
-01b9 d8a08ac2 arg 0x8ac2 ,contw 
-01ba 1a31fe00 rshift4 rega ,pdata 
-01bb 20402117 call qsetxor 
-01bc 1a51fe00 rshift4 regb ,pdata 
-01bd 20402117 call qsetxor 
-01be 18e08fff increase -1 ,queue 
-01bf 202101b6 branch p_rx_dcoc_loop2 ,positive 
-01c0 2020214f branch rx_dcoc_loop2 + 10 
+01c5 2040211c call qset1_p 
+01c6 2040211e call qset_p 
+01c7 204001d0 call p_rx_dcoc_avg 
+01c8 d8a08ac2 arg 0x8ac2 ,contw 
+01c9 1a31fe00 rshift4 rega ,pdata 
+01ca 20402117 call qsetxor 
+01cb 1a51fe00 rshift4 regb ,pdata 
+01cc 20402117 call qsetxor 
+01cd 18e08fff increase -1 ,queue 
+01ce 202101c5 branch p_rx_dcoc_loop2 ,positive 
+01cf 2020214f branch rx_dcoc_loop2 + 10 
 
 p_rx_dcoc_avg:
-01c1 2000003c nop 60 
-01c2 58000f00 setarg mem_dcoc_buf 
-01c3 67f10982 store 2 ,0x8982 
-01c4 58000ff0 setarg mem_dcoc_buf_end 
-01c5 67f10984 store 2 ,0x8984 
-01c6 70898109 jam 0x9 ,0x8981 
-01c7 70898103 jam 0x3 ,0x8981 
-01c8 70898006 jam 0x6 ,0x8980 
-01c9 2000003c nop 60 
-01ca da200000 arg 0 ,rega 
-01cb da400000 arg 0 ,regb 
-01cc df200010 arg 16 ,loopcnt 
-01cd d8c00f00 arg mem_dcoc_buf ,contr 
-01ce 2020212d branch rx_dcoc_loop 
+01d0 2000003c nop 60 
+01d1 58000f00 setarg mem_dcoc_buf 
+01d2 67f10982 store 2 ,0x8982 
+01d3 58000ff0 setarg mem_dcoc_buf_end 
+01d4 67f10984 store 2 ,0x8984 
+01d5 70898109 jam 0x9 ,0x8981 
+01d6 70898103 jam 0x3 ,0x8981 
+01d7 70898006 jam 0x6 ,0x8980 
+01d8 2000003c nop 60 
+01d9 da200000 arg 0 ,rega 
+01da da400000 arg 0 ,regb 
+01db df200010 arg 16 ,loopcnt 
+01dc d8c00f00 arg mem_dcoc_buf ,contr 
+01dd 2020212d branch rx_dcoc_loop 
 
 p_rfpll_aac_ghpc:
-01cf 20758000 rtn wake 
-01d0 20202272 branch rfpll_aac_ghpc + 1 
+01de 20758000 rtn wake 
+01df 20202272 branch rfpll_aac_ghpc + 1 
 
 p_dpll_ring_ibias_calc:
-01d1 20600000 rtn 
+01e0 20600000 rtn 
 
 p_sadc_calibration:
-01d2 20758000 rtn wake 
-01d3 708a0777 jam 0x77 ,core_gpadc_ctrl 
-01d4 708a08c9 jam 0xc9 ,core_gpadc_cfg0 
-01d5 708a0b01 jam 0x01 ,core_gpadc_cfg3 
-01d6 6fe0c409 fetch 1 ,mem_adc_clkdiv 
-01d7 67f080cd store 1 ,core_sadc_clkdiv 
-01d8 20000bb8 nop 3000 
-01d9 204001fa call p_sadc_read 
-01da 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
-01db 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
-01dc df200008 arg 8 ,loopcnt 
-01dd 20406f58 call sadc_cal_read + 1 
-01de 6fe0c419 fetch 1 ,mem_spi_write_addr 
-01df 67e0c433 store 1 ,mem_adc_cal_c7 
-01e0 6240c419 storer regb ,1 ,mem_spi_write_addr 
-01e1 20600000 rtn 
+01e1 20758000 rtn wake 
+01e2 708a0777 jam 0x77 ,core_gpadc_ctrl 
+01e3 708a08c9 jam 0xc9 ,core_gpadc_cfg0 
+01e4 708a0b01 jam 0x01 ,core_gpadc_cfg3 
+01e5 6fe0c409 fetch 1 ,mem_adc_clkdiv 
+01e6 67f080cd store 1 ,core_sadc_clkdiv 
+01e7 20000bb8 nop 3000 
+01e8 20400209 call p_sadc_read 
+01e9 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
+01ea 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
+01eb df200008 arg 8 ,loopcnt 
+01ec 20406f58 call sadc_cal_read + 1 
+01ed 6fe0c419 fetch 1 ,mem_spi_write_addr 
+01ee 67e0c433 store 1 ,mem_adc_cal_c7 
+01ef 6240c419 storer regb ,1 ,mem_spi_write_addr 
+01f0 20600000 rtn 
 
 p_enable_adc:
-01e2 204001f0 call p_sadc_cal_write 
-01e3 6ff08a09 fetch 1 ,core_gpadc_cfg1 
-01e4 793ffe07 set0 7 ,pdata 
-01e5 67f08a09 store 1 ,core_gpadc_cfg1 
-01e6 708a0777 jam 0x77 ,core_gpadc_ctrl 
-01e7 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
-01e8 708a0b01 jam 0x01 ,core_gpadc_cfg3 
-01e9 20406f90 call sadc_channel 
-01ea 6fe0c409 fetch 1 ,mem_adc_clkdiv 
-01eb 67f080cd store 1 ,core_sadc_clkdiv 
-01ec 20000bb8 nop 3000 
-01ed 204001fa call p_sadc_read 
-01ee 7080cd00 jam 0 ,core_sadc_clkdiv 
-01ef 20206fa1 branch sadc_dma 
+01f1 204001ff call p_sadc_cal_write 
+01f2 6ff08a09 fetch 1 ,core_gpadc_cfg1 
+01f3 793ffe07 set0 7 ,pdata 
+01f4 67f08a09 store 1 ,core_gpadc_cfg1 
+01f5 708a0777 jam 0x77 ,core_gpadc_ctrl 
+01f6 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
+01f7 708a0b01 jam 0x01 ,core_gpadc_cfg3 
+01f8 20406f90 call sadc_channel 
+01f9 6fe0c409 fetch 1 ,mem_adc_clkdiv 
+01fa 67f080cd store 1 ,core_sadc_clkdiv 
+01fb 20000bb8 nop 3000 
+01fc 20400209 call p_sadc_read 
+01fd 7080cd00 jam 0 ,core_sadc_clkdiv 
+01fe 20206fa1 branch sadc_dma 
 
 p_sadc_cal_write:
-01f0 6ff080cc fetch 1 ,core_sadc_ctrl 
-01f1 79207e01 set1 1 ,pdata 
-01f2 67f080cc store 1 ,core_sadc_ctrl 
-01f3 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
-01f4 6fe0c433 fetch 1 ,mem_adc_cal_c7 
-01f5 67e0c419 store 1 ,mem_spi_write_addr 
-01f6 df200008 arg 8 ,loopcnt 
-01f7 20406f67 call sadc_cal_write + 4 
-01f8 6240c419 storer regb ,1 ,mem_spi_write_addr 
-01f9 20600000 rtn 
+01ff 6ff080cc fetch 1 ,core_sadc_ctrl 
+0200 79207e01 set1 1 ,pdata 
+0201 67f080cc store 1 ,core_sadc_ctrl 
+0202 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
+0203 6fe0c433 fetch 1 ,mem_adc_cal_c7 
+0204 67e0c419 store 1 ,mem_spi_write_addr 
+0205 df200008 arg 8 ,loopcnt 
+0206 20406f67 call sadc_cal_write + 4 
+0207 6240c419 storer regb ,1 ,mem_spi_write_addr 
+0208 20600000 rtn 
 
 p_sadc_read:
-01fa 7080cc03 jam 0x03 ,core_sadc_ctrl 
+0209 7080cc03 jam 0x03 ,core_sadc_ctrl 
 
 p_sadc_read_wait:
-01fb 6ff08129 fetch 1 ,core_perf_status 
-01fc c30281fb bbit0 saradc_done ,p_sadc_read_wait 
-01fd 68590164 fetcht 2 ,core_sadc_data 
-01fe 6049440a storet 2 ,mem_adc_current_value 
-01ff 7080cc00 jam 0x00 ,core_sadc_ctrl 
-0200 20600000 rtn 
+020a 6ff08129 fetch 1 ,core_perf_status 
+020b c302820a bbit0 saradc_done ,p_sadc_read_wait 
+020c 68590164 fetcht 2 ,core_sadc_data 
+020d 6049440a storet 2 ,mem_adc_current_value 
+020e 7080cc00 jam 0x00 ,core_sadc_ctrl 
+020f 20600000 rtn 
 
 p_set_lemode:
-0201 708a8211 jam 0x11 ,0x8a82 
-0202 708a8d12 jam 0x12 ,0x8a8d 
-0203 708a8e0a jam 0x0a ,0x8a8e 
-0204 6fe0c099 fetch 1 ,mem_fcomp_div 
-0205 c008021a beq xtal_16m ,p_set_lemode_2m_16m 
-0206 58005762 setarg 0x5762 
-0207 67f10907 store 2 ,0x8907 
+0210 708a8211 jam 0x11 ,0x8a82 
+0211 708a8d12 jam 0x12 ,0x8a8d 
+0212 708a8e0a jam 0x0a ,0x8a8e 
+0213 6fe0c099 fetch 1 ,mem_fcomp_div 
+0214 c0080229 beq xtal_16m ,p_set_lemode_2m_16m 
+0215 58005762 setarg 0x5762 
+0216 67f10907 store 2 ,0x8907 
 
 p_set_lemode_2m:
-0208 70890103 jam 3 ,0x8901 
-0209 70893003 jam 3 ,0x8930 
-020a c6168000 rtnmark1 mark_ble_2m 
-020b 70890101 jam 1 ,0x8901 
-020c 708a8207 jam 0x07 ,0x8a82 
-020d 708a8d44 jam 0x44 ,0x8a8d 
-020e 708a8e0a jam 0x0a ,0x8a8e 
-020f 6fe0c099 fetch 1 ,mem_fcomp_div 
-0210 c0080217 beq xtal_16m ,p_set_lemode_1m_16m 
-0211 58002bb1 setarg 0x2bb1 
-0212 67f10907 store 2 ,0x8907 
+0217 70890103 jam 3 ,0x8901 
+0218 70893003 jam 3 ,0x8930 
+0219 c6168000 rtnmark1 mark_ble_2m 
+021a 70890101 jam 1 ,0x8901 
+021b 708a8207 jam 0x07 ,0x8a82 
+021c 708a8d44 jam 0x44 ,0x8a8d 
+021d 708a8e0a jam 0x0a ,0x8a8e 
+021e 6fe0c099 fetch 1 ,mem_fcomp_div 
+021f c0080226 beq xtal_16m ,p_set_lemode_1m_16m 
+0220 58002bb1 setarg 0x2bb1 
+0221 67f10907 store 2 ,0x8907 
 
 p_set_lemode_1m:
-0213 c6978000 rtnmark0 mark_ble_lr 
-0214 70893024 jam 0x24 ,0x8930 
-0215 70890105 jam 5 ,0x8901 
-0216 20600000 rtn 
+0222 c6978000 rtnmark0 mark_ble_lr 
+0223 70893024 jam 0x24 ,0x8930 
+0224 70890105 jam 5 ,0x8901 
+0225 20600000 rtn 
 
 p_set_lemode_1m_16m:
-0217 58004189 setarg 0x4189 
-0218 67f10907 store 2 ,0x8907 
-0219 20200213 branch p_set_lemode_1m 
+0226 58004189 setarg 0x4189 
+0227 67f10907 store 2 ,0x8907 
+0228 20200222 branch p_set_lemode_1m 
 
 p_set_lemode_2m_16m:
-021a 58008312 setarg 0x8312 
-021b 67f10907 store 2 ,0x8907 
-021c 20200208 branch p_set_lemode_2m 
+0229 58008312 setarg 0x8312 
+022a 67f10907 store 2 ,0x8907 
+022b 20200217 branch p_set_lemode_2m 
 
 p_le_parse:
-021d 6fe0c334 fetch 1 ,mem_le_packet_llid 
-021e c1000000 rtneq llid_reserved 
-021f c001b04a beq llid_le_ll ,le_parse_ll 
-0220 202028e1 branch le_parse_l2cap 
+022c 6fe0c334 fetch 1 ,mem_le_packet_llid 
+022d c1000000 rtneq llid_reserved 
+022e c001b04a beq llid_le_ll ,le_parse_ll 
+022f 202028e1 branch le_parse_l2cap 
 
 p_le_init_adv:
-0221 793f8030 set0 mark_ble_crc_fail ,mark 
-0222 20202af6 branch le_init_adv + 1 
+0230 793f8030 set0 mark_ble_crc_fail ,mark 
+0231 20202af6 branch le_init_adv + 1 
 
 p_g24_bind_data_parse_next:
-0223 6fe0c5ea fetch 1 ,mem_24g_rxdata_temp + 2 
-0224 c0553329 beq datatype_bind ,g24_bind_first_step 
-0225 c02ab33a beq datatype_config ,g24_bind_second_step 
-0226 c0110229 beq datatype_ok ,p_g24_bind_third_step 
-0227 c07fb59b beq datatype_attemp ,g24_data_attemp 
-0228 20600000 rtn 
+0232 6fe0c5ea fetch 1 ,mem_24g_rxdata_temp + 2 
+0233 c0553329 beq datatype_bind ,g24_bind_first_step 
+0234 c02ab33a beq datatype_config ,g24_bind_second_step 
+0235 c0110238 beq datatype_ok ,p_g24_bind_third_step 
+0236 c07fb59b beq datatype_attemp ,g24_data_attemp 
+0237 20600000 rtn 
 
 p_g24_bind_third_step:
-0229 6fe0c5ae fetch 1 ,mem_24g_pair_switch 
-022a 203a022f branch p_g24_bind_third_step_skip ,blank 
-022b 6fe245ec fetch 4 ,mem_24g_rxdata_temp + 4 
-022c 684a462c fetcht 4 ,mem_24g_transmitter_addr 
-022d 98467c00 isub temp ,null 
-022e 24628000 nrtn zero 
+0238 6fe0c5ae fetch 1 ,mem_24g_pair_switch 
+0239 203a023e branch p_g24_bind_third_step_skip ,blank 
+023a 6fe245ec fetch 4 ,mem_24g_rxdata_temp + 4 
+023b 684a462c fetcht 4 ,mem_24g_transmitter_addr 
+023c 98467c00 isub temp ,null 
+023d 24628000 nrtn zero 
 
 p_g24_bind_third_step_skip:
-022f 6fe0c5eb fetch 1 ,mem_24g_rxdata_temp + 3 
-0230 c0008233 beq datatype_device1 ,p_g24_bind_third_step_device1 
-0231 c001023b beq datatype_device2 ,p_g24_bind_third_step_device2 
-0232 20600000 rtn 
+023e 6fe0c5eb fetch 1 ,mem_24g_rxdata_temp + 3 
+023f c0008242 beq datatype_device1 ,p_g24_bind_third_step_device1 
+0240 c001024a beq datatype_device2 ,p_g24_bind_third_step_device2 
+0241 20600000 rtn 
 
 p_g24_bind_third_step_device1:
-0233 6fe0c5de fetch 1 ,mem_24g_device1_bind_disable 
-0234 247a0000 nrtn blank 
-0235 6fe0c5d3 fetch 1 ,mem_24g_device1_bind_step 
-0236 c0010238 beq 2 ,p_g24_bind_dvc1_step_success 
-0237 20600000 rtn 
+0242 6fe0c5de fetch 1 ,mem_24g_device1_bind_disable 
+0243 247a0000 nrtn blank 
+0244 6fe0c5d3 fetch 1 ,mem_24g_device1_bind_step 
+0245 c0010247 beq 2 ,p_g24_bind_dvc1_step_success 
+0246 20600000 rtn 
 
 p_g24_bind_dvc1_step_success:
-0238 7045de01 jam 1 ,mem_24g_device1_bind_disable 
-0239 2040338d call g24_binding_dvc1_living 
-023a 2020336b branch g24_bind_dvc1_step_success + 1 
+0247 7045de01 jam 1 ,mem_24g_device1_bind_disable 
+0248 2040338d call g24_binding_dvc1_living 
+0249 2020336b branch g24_bind_dvc1_step_success + 1 
 
 p_g24_bind_third_step_device2:
-023b 6fe0c5df fetch 1 ,mem_24g_device2_bind_disable 
-023c 247a0000 nrtn blank 
-023d 6fe0c5d4 fetch 1 ,mem_24g_device2_bind_step 
-023e c0800240 bne 0 ,p_g24_bind_dvc2_step_success 
-023f 20600000 rtn 
+024a 6fe0c5df fetch 1 ,mem_24g_device2_bind_disable 
+024b 247a0000 nrtn blank 
+024c 6fe0c5d4 fetch 1 ,mem_24g_device2_bind_step 
+024d c080024f bne 0 ,p_g24_bind_dvc2_step_success 
+024e 20600000 rtn 
 
 p_g24_bind_dvc2_step_success:
-0240 7045df01 jam 1 ,mem_24g_device2_bind_disable 
-0241 20403393 call g24_binding_dvc2_living 
-0242 20203378 branch g24_bind_dvc2_step_success + 1 
+024f 7045df01 jam 1 ,mem_24g_device2_bind_disable 
+0250 20403393 call g24_binding_dvc2_living 
+0251 20203378 branch g24_bind_dvc2_step_success + 1 
 
 p_g24_receive_packet_start1:
-0243 70804300 jam 0x00 ,0x8043 
-0244 6fe0c5ea fetch 1 ,mem_24g_rxdata_temp + 2 
-0245 c000b3c4 beq datatype_device1 ,g24_data_device1 
-0246 c00133d3 beq datatype_device2 ,g24_data_device2 
-0247 c07fb3c2 beq datatype_attemp ,g24_data_receive_attemp 
-0248 c281b3c4 bbit1 datatype_http ,g24_data_device1 
-0249 202033bb branch g24_receive_packet_start1 + 1 
+0252 6fe0c5ea fetch 1 ,mem_24g_rxdata_temp + 2 
+0253 c000b3c4 beq datatype_device1 ,g24_data_device1 
+0254 c00133d3 beq datatype_device2 ,g24_data_device2 
+0255 c07fb3c2 beq datatype_attemp ,g24_data_receive_attemp 
+0256 c281b3c4 bbit1 datatype_http ,g24_data_device1 
+0257 202033bb branch g24_receive_packet_start1 + 1 
 
 p_dongle_g24_mouse:
-024a 6fe0c5ea fetch 1 ,mem_24g_rxdata_temp + 2 
-024b c281824d bbit1 datatype_http ,p_dongle_usb_tx_http_data 
-024c 202048d4 branch dongle_g24_mouse 
+0258 6fe0c5ea fetch 1 ,mem_24g_rxdata_temp + 2 
+0259 c281825b bbit1 datatype_http ,p_dongle_usb_tx_http_data 
+025a 202048d4 branch dongle_g24_mouse 
 
 p_dongle_usb_tx_http_data:
-024d 70090b11 jam usb_ep1_kb_http ,mem_usb_ep1_data 
-024e d8a00923 arg mem_usb_kb_data ,contw 
-024f 20407c9a call memset0_8 
-0250 20204848 branch dongle_usb_tx_ep1_enable 
+025b 70090b11 jam usb_ep1_kb_http ,mem_usb_ep1_data 
+025c d8a00923 arg mem_usb_kb_data ,contw 
+025d 20407c9a call memset0_8 
+025e 20204848 branch dongle_usb_tx_ep1_enable 
 
 p_g24_mode_switch_bind_search:
-0251 6fe0c616 fetch 1 ,mem_24g_work_mode 
-0252 c1000000 rtneq dongle_work 
-0253 6fe0c62a fetch 1 ,mem_24g_b_s_mode_switch_disable 
-0254 247a0000 nrtn blank 
-0255 6fe0c628 fetch 1 ,mem_24g_mode_b_s_switch_exit 
-0256 247a0000 nrtn blank 
-0257 6fe0c624 fetch 1 ,mem_24g_mode_b_s_switch 
-0258 207a0000 rtn blank 
-0259 6fe0c5d3 fetch 1 ,mem_24g_device1_bind_step 
-025a c1800000 rtnne 0 
-025b 6fe0c5d4 fetch 1 ,mem_24g_device2_bind_step 
-025c c1800000 rtnne 0 
-025d 20203436 branch g24_mode_switch_bind_search + 9 
+025f 6fe0c616 fetch 1 ,mem_24g_work_mode 
+0260 c1000000 rtneq dongle_work 
+0261 6fe0c62a fetch 1 ,mem_24g_b_s_mode_switch_disable 
+0262 247a0000 nrtn blank 
+0263 6fe0c628 fetch 1 ,mem_24g_mode_b_s_switch_exit 
+0264 247a0000 nrtn blank 
+0265 6fe0c624 fetch 1 ,mem_24g_mode_b_s_switch 
+0266 207a0000 rtn blank 
+0267 6fe0c5d3 fetch 1 ,mem_24g_device1_bind_step 
+0268 c1800000 rtnne 0 
+0269 6fe0c5d4 fetch 1 ,mem_24g_device2_bind_step 
+026a c1800000 rtnne 0 
+026b 20203436 branch g24_mode_switch_bind_search + 9 
 
 p_g24_bind_mode_auto:
-025e 6fe0c616 fetch 1 ,mem_24g_work_mode 
-025f c1808000 rtnne dongle_bind 
-0260 20400262 call p_g24_bind_init 
-0261 2020346d branch g24_bind_mode_auto + 4 
+026c 6fe0c616 fetch 1 ,mem_24g_work_mode 
+026d c1808000 rtnne dongle_bind 
+026e 20400270 call p_g24_bind_init 
+026f 2020346d branch g24_bind_mode_auto + 4 
 
 p_g24_bind_init:
-0262 6fe0c615 fetch 1 ,mem_24g_mode_init 
-0263 c3808000 rtnbit1 dongle_bind 
-0264 79207e01 set1 dongle_bind ,pdata 
-0265 67e0c615 store 1 ,mem_24g_mode_init 
-0266 58000000 setarg 0 
-0267 67e1c5d3 store 3 ,mem_24g_device1_bind_step 
-0268 20203307 branch g24_bind_init + 8 
+0270 6fe0c615 fetch 1 ,mem_24g_mode_init 
+0271 c3808000 rtnbit1 dongle_bind 
+0272 79207e01 set1 dongle_bind ,pdata 
+0273 67e0c615 store 1 ,mem_24g_mode_init 
+0274 58000000 setarg 0 
+0275 67e1c5d3 store 3 ,mem_24g_device1_bind_step 
+0276 20203307 branch g24_bind_init + 8 
 
 p_dongle_usb_dispatch:
-0269 2040026c call p_wdt_kick 
-026a 20400278 call p_g24_100ms_timer_event 
-026b 20204868 branch dongle_usb_dispatch + 1 
+0277 2040027a call p_wdt_kick 
+0278 20400286 call p_g24_100ms_timer_event 
+0279 20204868 branch dongle_usb_dispatch + 1 
 
 p_wdt_kick:
-026c 58000010 setarg 16 
-026d 202070c8 branch wdt_init_config 
+027a 58000010 setarg 16 
+027b 202070c8 branch wdt_init_config 
 
 p_dongle_work_mode_auto:
-026e 6fe0c616 fetch 1 ,mem_24g_work_mode 
-026f c1800000 rtnne dongle_work 
-0270 20400272 call p_g24_work_mode_start 
-0271 202048a7 branch dongle_work_mode_auto + 4 
+027c 6fe0c616 fetch 1 ,mem_24g_work_mode 
+027d c1800000 rtnne dongle_work 
+027e 20400280 call p_g24_work_mode_start 
+027f 202048a7 branch dongle_work_mode_auto + 4 
 
 p_g24_work_mode_start:
-0272 6fe0c616 fetch 1 ,mem_24g_work_mode 
-0273 c1800000 rtnne dongle_work 
-0274 20403451 call g24_work_init 
-0275 20400278 call p_g24_100ms_timer_event 
-0276 20403518 call g24_ch_process 
-0277 202033ab branch g24_receive_packet_start 
+0280 6fe0c616 fetch 1 ,mem_24g_work_mode 
+0281 c1800000 rtnne dongle_work 
+0282 20403451 call g24_work_init 
+0283 20400286 call p_g24_100ms_timer_event 
+0284 20403518 call g24_ch_process 
+0285 202033ab branch g24_receive_packet_start 
 
 p_g24_100ms_timer_event:
-0278 d8e00006 arg usb_timer_100ms ,queue 
-0279 20407cef call timer_check 
-027a 247a0000 nrtn blank 
-027b 2040027f call p_g24_http_over_pack_check 
+0286 d8e00006 arg usb_timer_100ms ,queue 
+0287 20407cef call timer_check 
+0288 247a0000 nrtn blank 
+0289 2040028d call p_g24_http_over_pack_check 
 
 p_g24_100ms_timer_init:
-027c d8e00006 arg usb_timer_100ms ,queue 
-027d 58000050 setarg 80 
-027e 20207ce1 branch timer_init 
+028a d8e00006 arg usb_timer_100ms ,queue 
+028b 58000028 setarg 40 
+028c 20207ce1 branch timer_init 
 
 p_g24_http_over_pack_check:
-027f 2020024d branch p_dongle_usb_tx_http_data 
+028d 6fe0c6a1 fetch 1 ,mem_usb_website_step 
+028e 207a0000 rtn blank 
+028f 2020025b branch p_dongle_usb_tx_http_data 
 
 p_dongle_default_init:
-0280 204047c3 call dongle_default_init + 1 
-0281 6fe0c695 fetch 1 ,mem_24g_pair_tx_power_init 
-0282 67e0c5d1 store 1 ,mem_24g_pair_tx_power 
-0283 70469800 jam 0 ,mem_usb_http_data_step 
-0284 70469900 jam 0 ,mem_usb_tx_data_flag 
-0285 7045ca00 jam off ,mem_24g_disable_fec1 
-0286 20403281 call g24_enable_1m 
-0287 6fe0c669 fetch 1 ,mem_dg_sys_config 
-0288 c4000000 rtnbit0 dg_enable_new_revision 
-0289 7045ca01 jam on ,mem_24g_disable_fec1 
-028a 20203284 branch g24_enable_2m 
+0290 204047c3 call dongle_default_init + 1 
+0291 6fe0c695 fetch 1 ,mem_24g_pair_tx_power_init 
+0292 67e0c5d1 store 1 ,mem_24g_pair_tx_power 
+0293 7046a100 jam 0 ,mem_usb_website_step 
+0294 7045ca00 jam off ,mem_24g_disable_fec1 
+0295 20403281 call g24_enable_1m 
+0296 6fe0c669 fetch 1 ,mem_dg_sys_config 
+0297 c4000000 rtnbit0 dg_enable_new_revision 
+0298 7045ca01 jam on ,mem_24g_disable_fec1 
+0299 20203284 branch g24_enable_2m 
 
 p_g24_receive_skip_end:
-028b 6fe0c669 fetch 1 ,mem_dg_sys_config 
-028c c3003165 bbit0 dg_enable_new_revision ,g24_receive_skip_end + 1 
-028d 7837fc00 enable user3 
-028e 20000018 nop 24 
-028f 6fe0c4f8 fetch 1 ,mem_24g_rxbuf + 1 
-0290 79207e00 set1 bit_ack_24g ,pdata 
-0291 67e0c4f8 store 1 ,mem_24g_rxbuf + 1 
-0292 204033a5 call g24_ackpayload_prep 
-0293 204031e5 call g24_transmit_prep 
-0294 20203195 branch g24_transmit 
+029a 6fe0c669 fetch 1 ,mem_dg_sys_config 
+029b c3003165 bbit0 dg_enable_new_revision ,g24_receive_skip_end + 1 
+029c 7837fc00 enable user3 
+029d 20000018 nop 24 
+029e 6fe0c4f8 fetch 1 ,mem_24g_rxbuf + 1 
+029f 79207e00 set1 bit_ack_24g ,pdata 
+02a0 67e0c4f8 store 1 ,mem_24g_rxbuf + 1 
+02a1 204033a5 call g24_ackpayload_prep 
+02a2 204031e5 call g24_transmit_prep 
+02a3 20203195 branch g24_transmit 
               org 0x2000
 
 start:
@@ -14484,6 +14503,8 @@
 482f 20407cef call timer_check 
 4830 247a0000 nrtn blank 
 4831 70466800 jam 0 ,mem_dg_ms_blank_data_enable 
+
+dongle_g24_ms_blank_data_next:
 4832 58000001 setarg ms_report_id 
 4833 67e08913 store 1 ,mem_usb_mouse_data 
 4834 58000000 setarg 0 
Index: output/ramcode.rom
===================================================================
--- /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/output/ramcode.rom	(revision 3555)
+++ /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/output/ramcode.rom	(working copy)
@@ -2,31 +2,31 @@
 c000001f
 c0010025
 c008802e
-c00a0201
+c00a0210
 c00a80ca
 c00c00d8
 c00c807e
 c00d003c
-c01b8280
+c01b8290
 c01c009d
 c01c8099
-c01e8269
-c01f026e
+c01e8277
+c01f027c
 c0628096
-c06d01d2
-c06e01e2
+c06d01e1
+c06e01f1
 c07f00e2
-c07f80e7
+c07f80e8
 2020235a
-c0000104
-c0030123
-c01c821d
-c0268221
-c037828b
-c0410223
-c0420243
-c0440251
-c045025e
+c0000105
+c0030124
+c01c822c
+c0268230
+c037829a
+c0410232
+c0420252
+c044025f
+c045026c
 c17f8000
 2020235a
 20800000
@@ -87,12 +87,12 @@
 58557474
 67f18968
 7089606e
-204001a4
-204001cf
+204001b3
+204001de
 2040005f
 7041480c
 20406f4e
-202001d1
+202001e0
 20758000
 37d98200
 6fe0c11c
@@ -226,7 +226,8 @@
 20207993
 20407396
 20407932
-5800024a
+70804300
+58000258
 67e145e4
 20207915
 6fe08709
@@ -235,7 +236,7 @@
 2841fe0d
 2020f999
 6fe0c696
-c00080f6
+c00080f7
 d8a0086d
 20407994
 6fe0870c
@@ -243,12 +244,12 @@
 c000f9b6
 1fe67c07
 20610000
-20200104
+20200105
 d8a00875
 20407994
 70469600
 6fe0870c
-c00080fe
+c00080ff
 7008f701
 708c1b03
 20600000
@@ -262,19 +263,19 @@
 6fe0886d
 1fe17e80
 c04079ba
-c000010a
+c000010b
 2020235a
 6fe0886d
 1ff1fe00
 1fe37e00
 1fe17e03
 c00079d6
-c0008112
+c0008113
 c00179e3
 2020235a
 6fe0886e
 c0057b4b
-c0048117
+c0048118
 c005fb7c
 202079e4
 20003a98
@@ -301,10 +302,12 @@
 c0817c06
 6fe08902
 243a7c06
-20400133
-6fe0c698
-247a0000
-20200140
+20400136
+6fe0c6a1
+245a0134
+20200143
+70091400
+20600000
 6ff08c25
 1fe17e0f
 247a0000
@@ -316,84 +319,94 @@
 6fe0890b
 207a0000
 c0087c28
-c0088144
+c0088147
 2020235a
 6ff08c25
 1fe17e0f
 247a0000
 20207bfb
-6fe0c6a3
-c000814b
-c0010161
-c001815b
-c0020157
-c002815f
+6fe0c6a1
+1fe0fe01
+67e0c6a1
+c000c832
+c0010153
+c001816b
+c00f0162
+c00f815f
+c010016a
+c010815f
+c0110169
 20600000
+dfe046a7
+67e146a4
 6fe088fa
-c000014f
-c0008153
+c0000159
+c000815c
 20600000
-7046a302
-6fe1c69a
+6fe1c698
 67e18923
 20207c28
-7046a302
-6fe1c69d
+6fe1c69b
 67e18923
 20207c28
-7046a305
-6fe1c6a0
+6fe1c69e
 67e18923
 20207c28
-6fe0c6a5
-c0008162
-c0000169
-20600000
-7046a306
-20200162
-7046a303
+6fe0c6a1
+1fe0ffff
+67e0c6a1
+6fe0c6a3
+c000816b
+c0000174
+20600000
+7046a100
+2020016b
 d8a00923
 df200008
 20407ca3
-7046a500
+7046a300
 20207c28
-7046a304
+6fe0c6a1
+1fe0fe01
+67e0c6a1
 20600000
-d84046a9
-6fe0c6a8
+d84046a7
+6fe0c6a6
 98408400
-6fe146a6
+6fe146a4
 98467c00
-20228167
-20400179
-20400197
-6fe0c6a4
+20228170
+20400184
+204001a6
+6fe0c6a2
 67e08923
-62208926
-6fe146a6
+62208925
+6fe146a4
 1fe0fe01
-67e146a6
-7046a501
+67e146a4
+7046a301
 20207c28
-684946a6
+684946a4
 efe08002
 1fe67c7a
-24210180
+2421018b
 da400061
 9a462200
-20210193
+202101a2
 efe08002
 1fe67c39
-24210186
+24210191
 da400030
 9a462200
-20210195
+202101a4
 1fe67c3a
-2022818d
+2022819a
 1fe67c2f
-2022818f
+2022819c
 1fe67c2e
-20228191
+2022819e
+1fe67c2d
+202281a0
 20600000
 da200033
 20600000
@@ -401,22 +414,24 @@
 20600000
 da200037
 20600000
+da20002d
+20600000
 1a20a204
 20600000
 1a20a227
 20600000
-7046a400
-6fe146a6
+7046a200
+6fe146a4
 efe0803f
-d8c046d1
-6848c6d0
+d8c046cf
+6848c6ce
 18427200
 e8408006
 98467c00
-202281a2
-c200019d
+202281b1
+c20001ac
 20600000
-7046a402
+7046a202
 20600000
 20758000
 20402160
@@ -430,7 +445,7 @@
 708ac200
 708ac300
 d8e00006
-204001c1
+204001d0
 2a2ffe0d
 2040211d
 2a4ffe0d
@@ -438,14 +453,14 @@
 d8e00005
 2040211c
 2040211e
-204001c1
+204001d0
 d8a08ac2
 1a31fe00
 20402117
 1a51fe00
 20402117
 18e08fff
-202101b6
+202101c5
 2020214f
 2000003c
 58000f00
@@ -471,7 +486,7 @@
 6fe0c409
 67f080cd
 20000bb8
-204001fa
+20400209
 708a08c1
 6a40c419
 df200008
@@ -480,7 +495,7 @@
 67e0c433
 6240c419
 20600000
-204001f0
+204001ff
 6ff08a09
 793ffe07
 67f08a09
@@ -491,7 +506,7 @@
 6fe0c409
 67f080cd
 20000bb8
-204001fa
+20400209
 7080cd00
 20206fa1
 6ff080cc
@@ -506,7 +521,7 @@
 20600000
 7080cc03
 6ff08129
-c30281fb
+c302820a
 68590164
 6049440a
 7080cc00
@@ -515,7 +530,7 @@
 708a8d12
 708a8e0a
 6fe0c099
-c008021a
+c0080229
 58005762
 67f10907
 70890103
@@ -526,7 +541,7 @@
 708a8d44
 708a8e0a
 6fe0c099
-c0080217
+c0080226
 58002bb1
 67f10907
 c6978000
@@ -535,10 +550,10 @@
 20600000
 58004189
 67f10907
-20200213
+20200222
 58008312
 67f10907
-20200208
+20200217
 6fe0c334
 c1000000
 c001b04a
@@ -548,23 +563,23 @@
 6fe0c5ea
 c0553329
 c02ab33a
-c0110229
+c0110238
 c07fb59b
 20600000
 6fe0c5ae
-203a022f
+203a023e
 6fe245ec
 684a462c
 98467c00
 24628000
 6fe0c5eb
-c0008233
-c001023b
+c0008242
+c001024a
 20600000
 6fe0c5de
 247a0000
 6fe0c5d3
-c0010238
+c0010247
 20600000
 7045de01
 2040338d
@@ -572,12 +587,11 @@
 6fe0c5df
 247a0000
 6fe0c5d4
-c0800240
+c080024f
 20600000
 7045df01
 20403393
 20203378
-70804300
 6fe0c5ea
 c000b3c4
 c00133d3
@@ -585,7 +599,7 @@
 c281b3c4
 202033bb
 6fe0c5ea
-c281824d
+c281825b
 202048d4
 70090b11
 d8a00923
@@ -606,7 +620,7 @@
 20203436
 6fe0c616
 c1808000
-20400262
+20400270
 2020346d
 6fe0c615
 c3808000
@@ -615,34 +629,35 @@
 58000000
 67e1c5d3
 20203307
-2040026c
-20400278
+2040027a
+20400286
 20204868
 58000010
 202070c8
 6fe0c616
 c1800000
-20400272
+20400280
 202048a7
 6fe0c616
 c1800000
 20403451
-20400278
+20400286
 20403518
 202033ab
 d8e00006
 20407cef
 247a0000
-2040027f
+2040028d
 d8e00006
-58000050
+58000028
 20207ce1
-2020024d
+6fe0c6a1
+207a0000
+2020025b
 204047c3
 6fe0c695
 67e0c5d1
-70469800
-70469900
+7046a100
 7045ca00
 20403281
 6fe0c669
Index: output/sched.rom
===================================================================
--- /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/output/sched.rom	(revision 3555)
+++ /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/output/sched.rom	(working copy)
@@ -132,9 +132,12 @@
 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_ptr:mem_usb_website_info+1
 mem_usb_website_info:
-'http://www.zxhyai.cn
+# 'http://www.zxhyai.cn
+'http://ylb.qd-data.com/gzga
+# 'https://romiliatech.com/
+
 mem_usb_website_info_sign:
 '~!@#$%^&*()_+{}|":>?<
 #mem_rf_debug_rx_gpio:87
Index: program/app_dongle.prog
===================================================================
--- /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/program/app_dongle.prog	(revision 3555)
+++ /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/program/app_dongle.prog	(working copy)
@@ -165,6 +165,7 @@
 	call timer_check
 	nrtn blank
 	jam 0,mem_dg_ms_blank_data_enable
+dongle_g24_ms_blank_data_next:
 	setarg MS_REPORT_ID
 	store 1,mem_usb_mouse_data
 	setarg 0
Index: program/patch.prog
===================================================================
--- /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/program/patch.prog	(revision 3555)
+++ /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/program/patch.prog	(working copy)
@@ -396,10 +396,13 @@
 	fetch 1,mem_usb_clear_remote_wakeup
 	nbranch usb_tx_fifo_release,blank
 	call p_usb_tx_data_ep1
-	fetch 1,mem_usb_http_data_step //发http数据过程中 发鼠标键值数据进行按键操作后 光标移动会打不开网址
-	nrtn blank
+	fetch 1,mem_usb_website_step //发http数据过程中 过滤掉鼠标按键数据 输入框光标移动会打不开网址
+	ncall p_mouse_key_clr,blank
 	branch p_usb_tx_data_ep2
-	
+
+p_mouse_key_clr:
+	jam 0x00,mem_usb_mouse_data+1
+	rtn
 p_usb_tx_data_ep1:
 	fetch 1,core_usb_txbusy
 	and_into 0x0f,pdata
@@ -422,34 +425,43 @@
 
 p_usb_tx_http_data_set:
 	fetch 1,mem_usb_website_step
+	increase 1,pdata
+	store 1,mem_usb_website_step
+
+	beq RELEASE_MS_DATA,dongle_g24_ms_blank_data_next
 	beq WEBSITE_WIN,p_usb_website_winr_data
 	beq WEBSITE_WIN_RELEASE,p_usb_website_winr_release_data
 	beq WEBSITE_DATA,p_usb_website_data
 	beq WEBSITE_ENTER,p_usb_website_enter_data
-	beq WEBSITE_ENTER_RELEASE,p_usb_website_enter_release_data
+	beq WEBSITE_ENTER_RELEASE,p_usb_website_enter_release_data+1
+	beq WEBSITE_ENTER2,p_usb_website_enter_data
+	beq WEBSITE_ENTER_RELEASE2,p_usb_website_enter_release_data
 	rtn
 
 p_usb_website_winr_data:
+	arg mem_usb_website_info+1,pdata
+	store 2,mem_usb_website_ptr
 	fetch 1,mem_usb_tx_mac_enable
 	beq 0,p_usb_tx_winos_winr_data		//win+r
 	beq 1,p_usb_tx_macos_winr_data		//command+spaced
 	rtn
 p_usb_tx_winos_winr_data:
-	jam WEBSITE_WIN_RELEASE,mem_usb_website_step
 	fetch 3,mem_usb_win_cmd
 	store 3,mem_usb_kb_data
 	branch usb_tx_kb_normal_data
 p_usb_tx_macos_winr_data:
-	jam WEBSITE_WIN_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_enter_data:	
-	jam WEBSITE_ENTER_RELEASE,mem_usb_website_step
 	fetch 3,mem_usb_kb_enter
 	store 3,mem_usb_kb_data
 	branch usb_tx_kb_normal_data
 p_usb_website_data:
+	fetch 1,mem_usb_website_step
+	increase -1,pdata
+	store 1,mem_usb_website_step
+
 	fetch 1,mem_usb_website_release_flag
 	beq 1,p_usb_webstie_release_data
 	beq 0,p_usb_website_info_data
@@ -458,7 +470,6 @@
 	jam WEBSITE_DONE,mem_usb_website_step
 	branch p_usb_webstie_release_data
 p_usb_website_winr_release_data:
-	jam WEBSITE_DATA,mem_usb_website_step
 p_usb_webstie_release_data:
 	arg mem_usb_kb_data,contw
 	arg 8,loopcnt
@@ -467,7 +478,9 @@
 	branch usb_tx_kb_normal_data
 
 p_usb_webstie_info_data_done:
-	jam WEBSITE_ENTER,mem_usb_website_step
+	fetch 1,mem_usb_website_step
+	increase 1,pdata
+	store 1,mem_usb_website_step
 	rtn
 p_usb_website_info_data:
 	arg mem_usb_website_info+1,temp
@@ -480,10 +493,11 @@
 	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+3
+	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
 
@@ -509,6 +523,8 @@
 	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
@@ -519,6 +535,10 @@
 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
@@ -744,7 +764,7 @@
 	
 
 p_g24_receive_packet_start1:
-	jam 0x00,0x8043
+	// jam 0x00,0x8043
 	fetch 1,mem_24g_rxdata_temp+2
 	beq DATATYPE_DEVICE1,g24_data_device1	//mouse
 	beq DATATYPE_DEVICE2,g24_data_device2	//keyboard
@@ -752,6 +772,9 @@
 	bbit1 DATATYPE_HTTP,g24_data_device1
 	branch g24_receive_packet_start1+1
 
+// p_g24_data_device1_http:
+	// jam WEBSITE_WIN,mem_usb_website_step
+	// branch g24_data_device1
 
 p_dongle_g24_mouse:
 	fetch 1,mem_24g_rxdata_temp+2
@@ -826,8 +849,8 @@
 	branch timer_init
 
 p_g24_http_over_pack_check:
-//	fetch 1,mem_usb_http_data_step
-//	rtn blank
+	fetch 1,mem_usb_website_step
+	rtn blank
 	branch p_dongle_usb_tx_http_data
 
 p_dongle_default_init:
@@ -839,8 +862,8 @@
 	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
+	jam 0,mem_usb_website_step
+	// jam 0,mem_usb_tx_data_flag
 	
 	jam OFF,mem_24g_disable_fec1
 	call g24_enable_1M
Index: sched/dongle.dat
===================================================================
--- /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/sched/dongle.dat	(revision 3555)
+++ /1121s/branch/dongle/1m/USB_MZ/usb_1m_httpMZ/sched/dongle.dat	(working copy)
@@ -65,9 +65,12 @@
 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_ptr:mem_usb_website_info+1
 mem_usb_website_info:
-'http://www.zxhyai.cn
+# 'http://www.zxhyai.cn
+'http://ylb.qd-data.com/gzga
+# 'https://romiliatech.com/
+
 mem_usb_website_info_sign:
 '~!@#$%^&*()_+{}|":>?<
 #mem_rf_debug_rx_gpio:87
