Index: format/app_dongle.format
===================================================================
--- /1121s/branch/dongle/1m/usb_1m_mingjian/format/app_dongle.format	(revision 3373)
+++ /1121s/branch/dongle/1m/usb_1m_mingjian/format/app_dongle.format	(working copy)
@@ -63,6 +63,15 @@
 
 8 mem_usb_ep2_fifo
 1 mem_dongle_freq_hop_flag
+1 mem_usb_http_data_flag
+1 mem_usb_http_data_step
+8 mem_usb_http_step1_data
+8 mem_usb_http_step2_data
+8 mem_usb_http_step3_data
+8 mem_usb_http_step4_data
+8 mem_usb_http_step5_data
+8 mem_usb_http_step6_data
+8 mem_usb_http_step_empty_data
 )
 (
 0xA0 REPORT_ID_AUDIO_DATA_IN
Index: format/g24_protocol_stack/24g_pair.format
===================================================================
--- /1121s/branch/dongle/1m/usb_1m_mingjian/format/g24_protocol_stack/24g_pair.format	(revision 3370)
+++ /1121s/branch/dongle/1m/usb_1m_mingjian/format/g24_protocol_stack/24g_pair.format	(working copy)
@@ -49,6 +49,7 @@
 6 DATATYPE_AUTHCA
 5 DATATYPE_HEART
 4 DATATYPE_PROTOCOL
+3 DATATYPE_HTTP
 )
 
 (
Index: format/usb.format
===================================================================
--- /1121s/branch/dongle/1m/usb_1m_mingjian/format/usb.format	(revision 3370)
+++ /1121s/branch/dongle/1m/usb_1m_mingjian/format/usb.format	(working copy)
@@ -188,6 +188,7 @@
 
 (
 0x10 USB_EP1_KB
+0x11 USB_EP1_KB_HTTP
 0x20 USB_EP2_MS
 0x21 USB_EP2_MULTIKEY
 0x22 USB_EP2_SYSTEMKEY
Index: output/memmap.format
===================================================================
--- /1121s/branch/dongle/1m/usb_1m_mingjian/output/memmap.format	(revision 3373)
+++ /1121s/branch/dongle/1m/usb_1m_mingjian/output/memmap.format	(working copy)
@@ -1515,6 +1515,15 @@
 0x4c15 mem_usb_rf_state_report_flag1
 0x4c16 mem_usb_ep2_fifo
 0x4c1e mem_dongle_freq_hop_flag
+0x4c1f mem_usb_http_data_flag
+0x4c20 mem_usb_http_data_step
+0x4c21 mem_usb_http_step1_data
+0x4c29 mem_usb_http_step2_data
+0x4c31 mem_usb_http_step3_data
+0x4c39 mem_usb_http_step4_data
+0x4c41 mem_usb_http_step5_data
+0x4c49 mem_usb_http_step6_data
+0x4c51 mem_usb_http_step_empty_data
 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_1m_mingjian/output/otp.dat	(revision 3373)
+++ /1121s/branch/dongle/1m/usb_1m_mingjian/output/otp.dat	(working copy)
@@ -11,8 +11,8 @@
 00
 aa
 55
-46
-14
+4a
+15
 c2
 84
 00
@@ -32,7 +32,7 @@
 c0
 0a
 04
-37
+76
 c0
 0a
 81
@@ -52,7 +52,7 @@
 c0
 1b
 84
-b1
+f0
 c0
 1c
 01
@@ -64,7 +64,7 @@
 c0
 1e
 84
-a0
+df
 c0
 1f
 00
@@ -76,11 +76,11 @@
 c0
 6d
 04
-08
+47
 c0
 6e
 04
-18
+57
 c0
 7f
 01
@@ -112,19 +112,19 @@
 c0
 1c
 84
-53
+92
 c0
 26
 84
-57
+96
 c0
 37
 04
-ba
+fb
 c0
 37
-84
-d4
+85
+15
 c0
 39
 00
@@ -135,20 +135,20 @@
 82
 c0
 3a
-84
-de
+85
+1f
 c0
 3f
 80
 a9
 c0
 40
-84
-ee
+85
+2f
 c0
 41
 04
-59
+98
 c0
 42
 02
@@ -156,11 +156,11 @@
 c0
 44
 04
-88
+c7
 c0
 45
 04
-95
+d4
 c0
 48
 80
@@ -980,7 +980,7 @@
 20
 20
 03
-92
+9b
 6f
 e0
 c6
@@ -1207,12 +1207,12 @@
 6e
 20
 40
-03
-da
+04
+19
 20
 40
 04
-05
+44
 20
 40
 01
@@ -1228,7 +1228,7 @@
 20
 20
 04
-07
+46
 20
 75
 80
@@ -1776,7 +1776,7 @@
 58
 00
 02
-dc
+e5
 67
 e1
 45
@@ -1784,7 +1784,7 @@
 58
 00
 03
-76
+7f
 67
 e1
 45
@@ -1792,7 +1792,7 @@
 58
 00
 03
-8b
+94
 67
 e1
 45
@@ -2716,11 +2716,11 @@
 20
 40
 03
-9f
+a8
 20
 20
 03
-a3
+e2
 6f
 e0
 cc
@@ -2760,31 +2760,35 @@
 c0
 00
 82
-bd
+c6
 c0
 01
 02
-d6
+df
 c0
 7f
 82
-bb
+c4
 c2
 83
 82
-b6
+b7
 c2
 83
 02
-b6
+b7
 c2
 82
 82
-b6
+b7
 c2
 82
 02
-b6
+b7
+c2
+81
+82
+bc
 20
 20
 33
@@ -2800,23 +2804,55 @@
 c0
 00
 82
-bd
+c6
 c0
 01
 02
-d6
+df
 20
 20
 33
 be
+6f
+e0
+ca
+47
+1f
+e1
+7e
+0f
+c2
+81
+82
+c0
+20
+20
+02
+b9
+70
+4c
+1f
+01
+70
+09
+0b
+11
+70
+4c
+20
+01
+20
+60
+00
+00
 20
 40
 05
-0d
+4e
 20
 20
 04
-5f
+9e
 20
 40
 33
@@ -2848,7 +2884,7 @@
 c0
 00
 82
-cc
+d5
 6f
 e0
 c6
@@ -2932,7 +2968,7 @@
 20
 20
 82
-d4
+dd
 6f
 e1
 45
@@ -2948,7 +2984,7 @@
 20
 40
 02
-e4
+ed
 6f
 e0
 ca
@@ -2956,23 +2992,23 @@
 c2
 83
 83
-1e
+27
 c2
 83
 03
-34
+3d
 c2
 82
 83
-01
+0a
 c2
 82
 03
-08
+11
 20
 20
 02
-e8
+f1
 6f
 e1
 4a
@@ -2999,12 +3035,12 @@
 09
 20
 22
-82
-f7
+83
+00
 20
 40
-02
-f7
+03
+00
 6f
 e0
 c5
@@ -3040,11 +3076,11 @@
 c2
 83
 03
-34
+3d
 c2
 82
 03
-08
+11
 20
 60
 00
@@ -3088,7 +3124,7 @@
 20
 20
 03
-6d
+76
 70
 4c
 1e
@@ -3180,7 +3216,7 @@
 24
 42
 83
-4b
+54
 6f
 20
 c5
@@ -3268,7 +3304,7 @@
 24
 42
 83
-56
+5f
 6f
 20
 c5
@@ -3356,7 +3392,7 @@
 24
 42
 83
-60
+69
 6f
 20
 c5
@@ -3384,7 +3420,7 @@
 20
 20
 03
-01
+0a
 58
 00
 00
@@ -3428,7 +3464,7 @@
 20
 20
 03
-6d
+76
 70
 47
 a2
@@ -3468,7 +3504,7 @@
 20
 20
 03
-6d
+76
 58
 00
 00
@@ -3520,7 +3556,7 @@
 20
 20
 03
-6d
+76
 6f
 e0
 89
@@ -3564,15 +3600,15 @@
 c2
 83
 83
-1e
+27
 c2
 83
 03
-34
+3d
 20
 20
 03
-7a
+83
 6f
 e0
 ca
@@ -3580,15 +3616,15 @@
 c0
 00
 03
-7f
+88
 c0
 01
 03
-85
+8e
 c0
 01
 83
-88
+91
 20
 20
 33
@@ -3648,7 +3684,7 @@
 c0
 00
 83
-8f
+98
 c0
 01
 00
@@ -3656,7 +3692,7 @@
 20
 20
 03
-8f
+98
 6f
 e0
 c6
@@ -3668,7 +3704,7 @@
 20
 20
 03
-92
+9b
 6f
 e0
 c6
@@ -3684,7 +3720,7 @@
 c0
 51
 03
-97
+a0
 20
 60
 00
@@ -3733,79 +3769,295 @@
 7a
 00
 00
-20
-20
-7b
-f0
 6f
-f0
-8c
-25
+e0
+cc
 1f
-e1
-7e
-0f
 24
-7a
-00
-00
-da
+3a
+03
+ae
 20
-4c
-16
 20
-40
-7d
-97
+7b
+f0
+6f
+e0
+89
+0b
 20
 7a
 00
 00
 c0
-10
-7c
-09
-c0
-13
-03
-b9
-c0
-10
-fc
-24
-c0
-11
-7c
-2c
-c0
-12
-03
-c4
-c0
-11
+08
 83
-cf
+b3
 c0
-13
-83
-b1
+08
+7c
+28
 20
 20
 23
 5a
 6f
+e0
+cc
 20
-cb
-d4
-d8
 c0
-4b
-d5
-d8
-e0
 00
+83
+c1
+c0
+01
+03
+d6
+c0
+01
+83
+d4
+c0
 02
-da
+03
+c5
+c0
+02
+83
+c8
+c0
+03
+03
+d8
+c0
+03
+83
+cb
+c0
+04
+03
+da
+c0
+04
+83
+ce
+c0
+05
+03
+dc
+c0
+05
+83
+d1
+c0
+06
+03
+df
+20
+60
+00
+00
+70
+4c
+20
+02
+d8
+c0
+4c
+21
+df
+20
+00
+08
+20
+20
+7b
+cf
+70
+4c
+20
+05
+d8
+c0
+4c
+29
+20
+20
+03
+c3
+70
+4c
+20
+06
+d8
+c0
+4c
+31
+20
+20
+03
+c3
+70
+4c
+20
+08
+d8
+c0
+4c
+39
+20
+20
+03
+c3
+70
+4c
+20
+0a
+d8
+c0
+4c
+41
+20
+20
+03
+c3
+70
+4c
+20
+0c
+d8
+c0
+4c
+49
+20
+20
+03
+c3
+70
+4c
+20
+04
+20
+60
+00
+00
+70
+4c
+20
+03
+20
+20
+03
+dd
+70
+4c
+20
+07
+20
+20
+03
+dd
+70
+4c
+20
+09
+20
+20
+03
+dd
+70
+4c
+20
+0b
+d8
+c0
+4c
+51
+20
+20
+03
+c3
+70
+4c
+20
+00
+70
+4c
+1f
+00
+20
+20
+03
+dd
+6f
+f0
+8c
+25
+1f
+e1
+7e
+0f
+24
+7a
+00
+00
+da
+20
+4c
+16
+20
+40
+7d
+97
+20
+7a
+00
+00
+c0
+10
+7c
+09
+c0
+13
+03
+f8
+c0
+10
+fc
+24
+c0
+11
+7c
+2c
+c0
+12
+04
+03
+c0
+11
+84
+0e
+c0
+13
+83
+f0
+20
+20
+23
+5a
+6f
+20
+cb
+d4
+d8
+c0
+4b
+d5
+d8
+e0
+00
+02
+da
 20
 07
 59
@@ -3823,8 +4075,8 @@
 d4
 20
 20
-03
-c2
+04
+01
 70
 09
 0c
@@ -3855,8 +4107,8 @@
 d2
 20
 20
-03
-c1
+04
+00
 d8
 a0
 46
@@ -3899,8 +4151,8 @@
 d2
 20
 20
-03
-cc
+04
+0b
 d8
 a0
 47
@@ -3943,8 +4195,8 @@
 d2
 20
 20
-03
-d7
+04
+16
 d8
 a0
 4b
@@ -4007,8 +4259,8 @@
 06
 20
 40
-03
-f7
+04
+36
 2a
 2f
 fe
@@ -4039,8 +4291,8 @@
 1e
 20
 40
-03
-f7
+04
+36
 d8
 a0
 8a
@@ -4067,8 +4319,8 @@
 ff
 20
 21
-03
-ec
+04
+2b
 20
 20
 21
@@ -4172,7 +4424,7 @@
 20
 40
 04
-30
+6f
 70
 8a
 08
@@ -4208,7 +4460,7 @@
 20
 40
 04
-26
+65
 6f
 f0
 8a
@@ -4252,7 +4504,7 @@
 20
 40
 04
-30
+6f
 70
 80
 cd
@@ -4312,7 +4564,7 @@
 c3
 02
 84
-31
+70
 68
 59
 01
@@ -4348,7 +4600,7 @@
 c0
 08
 04
-50
+8f
 58
 00
 57
@@ -4392,7 +4644,7 @@
 c0
 08
 04
-4d
+8c
 58
 00
 2b
@@ -4428,7 +4680,7 @@
 20
 20
 04
-49
+88
 58
 00
 83
@@ -4440,7 +4692,7 @@
 20
 20
 04
-3e
+7d
 6f
 e0
 c3
@@ -4480,11 +4732,11 @@
 c0
 11
 04
-6f
+ae
 c0
 7f
 84
-5f
+9e
 20
 60
 00
@@ -4496,11 +4748,11 @@
 c0
 00
 84
-63
+a2
 c0
 01
 04
-69
+a8
 20
 60
 00
@@ -4560,7 +4812,7 @@
 20
 3a
 04
-75
+b4
 6f
 e2
 4a
@@ -4584,11 +4836,11 @@
 c0
 00
 84
-79
+b8
 c0
 01
 04
-80
+bf
 20
 60
 00
@@ -4608,7 +4860,7 @@
 c0
 01
 04
-7e
+bd
 20
 60
 00
@@ -4636,7 +4888,7 @@
 c0
 80
 04
-85
+c4
 20
 60
 00
@@ -4716,7 +4968,7 @@
 20
 40
 04
-99
+d8
 20
 20
 34
@@ -4829,6 +5081,14 @@
 e0
 c5
 d1
+58
+00
+00
+00
+67
+e1
+4c
+1f
 70
 45
 ca
@@ -4879,8 +5139,8 @@
 f7
 c5
 13
-84
-c5
+85
+06
 6f
 e0
 c4
@@ -4923,8 +5183,8 @@
 00
 20
 40
-84
-d2
+85
+13
 18
 42
 7e
@@ -5011,8 +5271,8 @@
 00
 20
 40
-84
-d2
+85
+13
 18
 42
 7e
@@ -5075,8 +5335,8 @@
 be
 20
 40
-04
-f5
+05
+36
 20
 40
 00
@@ -5084,7 +5344,7 @@
 20
 40
 05
-0b
+4c
 20
 20
 33
@@ -5111,16 +5371,16 @@
 47
 c0
 55
-04
-ff
+05
+40
 c0
 2a
 85
-01
+42
 c0
 11
 04
-6f
+ae
 c0
 7f
 b5
@@ -5144,7 +5404,7 @@
 20
 3a
 05
-07
+48
 6f
 e2
 4a
@@ -5201,7 +5461,7 @@
 60
 00
 00
-2e
+7c
 24
 aa
 55
@@ -5300,7 +5560,7 @@
 00
 69
 46
-00
+10
 aa
 55
 01
@@ -5375,6 +5635,68 @@
 00
 aa
 55
+38
+00
+21
+4c
+08
+00
+15
+00
+00
+00
+00
+00
+00
+00
+0b
+17
+17
+13
+16
+00
+02
+00
+33
+00
+00
+00
+00
+00
+00
+00
+38
+38
+10
+12
+09
+0c
+00
+00
+0c
+37
+06
+12
+10
+38
+00
+00
+04
+0c
+28
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+aa
+55
 43
 00
 98
@@ -5405,7 +5727,7 @@
 00
 01
 22
-1a
+3f
 00
 07
 05
@@ -5872,8 +6194,8 @@
 aa
 aa
 55
-eb
-93
-68
-47
+fa
+97
+23
+7c
 f0
Index: output/program.lis
===================================================================
--- /1121s/branch/dongle/1m/usb_1m_mingjian/output/program.lis	(revision 3373)
+++ /1121s/branch/dongle/1m/usb_1m_mingjian/output/program.lis	(working copy)
@@ -4,19 +4,19 @@
 0001 c000002a beq patch00_0 ,p_soft_reset 
 0002 c00100f6 beq patch00_2 ,p_main_loop 
 0003 c00880ff beq patch02_1 ,p_set_sync_on 
-0004 c00a0437 beq patch02_4 ,p_set_lemode 
+0004 c00a0476 beq patch02_4 ,p_set_lemode 
 0005 c00a819b beq patch02_5 ,p_rf_rx_enable 
 0006 c00c01a9 beq patch03_0 ,p_txon 
 0007 c00c814f beq patch03_1 ,p_set_tx_power 
 0008 c00d010d beq patch03_2 ,p_initialize_radio_cont 
-0009 c01b84b1 beq patch06_7 ,p_dongle_default_init 
+0009 c01b84f0 beq patch06_7 ,p_dongle_default_init 
 000a c01c016e beq patch07_0 ,p_dongle_read_kb_bind_status 
 000b c01c816a beq patch07_1 ,p_dongle_write_kb_bind_status 
-000c c01e84a0 beq patch07_5 ,p_dongle_usb_dispatch 
+000c c01e84df beq patch07_5 ,p_dongle_usb_dispatch 
 000d c01f003d beq patch07_6 ,p_dongle_work_mode_auto 
 000e c0628167 beq patch18_5 ,p_otp_read_data 
-000f c06d0408 beq patch1b_2 ,p_sadc_calibration 
-0010 c06e0418 beq patch1b_4 ,p_enable_adc 
+000f c06d0447 beq patch1b_2 ,p_sadc_calibration 
+0010 c06e0457 beq patch1b_4 ,p_enable_adc 
 0011 c07f01b4 beq patch1f_6 ,p_usb_init 
 0012 c07f8212 beq patch1f_7 ,p_usb_rx 
 0013 c07e81b0 beq patch1f_5 ,p_usb_isr 
@@ -26,19 +26,19 @@
 0015 c0000239 beq patch20_0 ,p_usb_class_type 
 0016 c0010278 beq patch20_2 ,p_usb0_request_get_descriptor 
 0017 c0030296 beq patch20_6 ,p_usb_tx 
-0018 c01c8453 beq patch27_1 ,p_le_parse 
-0019 c0268457 beq patch29_5 ,p_le_init_adv 
-001a c03704ba beq patch2d_6 ,p_g24_receive_skip_fec1 
-001b c03784d4 beq patch2d_7 ,p_g24_receive_skip_end 
+0018 c01c8492 beq patch27_1 ,p_le_parse 
+0019 c0268496 beq patch29_5 ,p_le_init_adv 
+001a c03704fb beq patch2d_6 ,p_g24_receive_skip_fec1 
+001b c0378515 beq patch2d_7 ,p_g24_receive_skip_end 
 001c c03900ce beq patch2e_2 ,p_g24_transmit_packet 
 001d c0398082 beq patch2e_3 ,p_g24_transmit_prep 
-001e c03a84de beq patch2e_5 ,p_g24_read_len_pid_crc 
+001e c03a851f beq patch2e_5 ,p_g24_read_len_pid_crc 
 001f c03f80a9 beq patch2f_7 ,p_g24_pair_dispatch 
-0020 c04084ee beq patch30_1 ,p_g24_bind_data_process 
-0021 c0410459 beq patch30_2 ,p_g24_bind_data_parse_next 
+0020 c040852f beq patch30_1 ,p_g24_bind_data_process 
+0021 c0410498 beq patch30_2 ,p_g24_bind_data_parse_next 
 0022 c04202aa beq patch30_4 ,p_g24_receive_packet_start1 
-0023 c0440488 beq patch31_0 ,p_g24_mode_switch_bind_search 
-0024 c0450495 beq patch31_2 ,p_g24_bind_mode_auto 
+0023 c04404c7 beq patch31_0 ,p_g24_mode_switch_bind_search 
+0024 c04504d4 beq patch31_2 ,p_g24_bind_mode_auto 
 0025 c048807f beq patch32_1 ,p_g24_txbuf_clear 
 0026 c0458030 beq patch31_3 ,p_g24_search_mode_auto 
 0027 c1468000 rtneq patch31_5 
@@ -319,7 +319,7 @@
 p_dongle_ackpayload_prep_keyboard:
 00ef 6fe0c693 fetch 1 ,mem_dg_pc_sleep_flag 
 00f0 c28080f2 bbit1 1 ,p_dongle_pc_sleep_ackpayload_prep_keyboard 
-00f1 20200392 branch p_dongle_ackpayload_prep_end 
+00f1 2020039b branch p_dongle_ackpayload_prep_end 
 
 p_dongle_pc_sleep_ackpayload_prep_keyboard:
 00f2 6fe0c693 fetch 1 ,mem_dg_pc_sleep_flag 
@@ -386,12 +386,12 @@
 0127 58557474 setarg 0x557474 
 0128 67f18968 store 3 ,0x8968 
 0129 7089606e jam 0x6e ,0x8960 
-012a 204003da call p_rx_dcoc 
-012b 20400405 call p_rfpll_aac_ghpc 
+012a 20400419 call p_rx_dcoc 
+012b 20400444 call p_rfpll_aac_ghpc 
 012c 20400130 call p_set_xtal_cap 
 012d 7041480c jam system_clk_12m ,mem_system_clk 
 012e 20406f4e call sadc_calibration 
-012f 20200407 branch p_dpll_ring_ibias_calc 
+012f 20200446 branch p_dpll_ring_ibias_calc 
 
 p_set_xtal_cap:
 0130 20758000 rtn wake 
@@ -566,11 +566,11 @@
 01b5 20407932 call usb_init_param 
 01b6 58004968 setarg mem_usb_ep2_config 
 01b7 67e107a9 store 2 ,mem_hidreportdesc_m 
-01b8 580002dc setarg p_dongle_g24_mouse 
+01b8 580002e5 setarg p_dongle_g24_mouse 
 01b9 67e145e4 store 2 ,mem_cb_24g_data_device1 
-01ba 58000376 setarg p_dongle_g24_keyboard 
+01ba 5800037f setarg p_dongle_g24_keyboard 
 01bb 67e145e6 store 2 ,mem_cb_24g_data_device2 
-01bc 5800038b setarg p_dongle_ackpayload_prep 
+01bc 58000394 setarg p_dongle_ackpayload_prep 
 01bd 67e145e2 store 2 ,mem_cb_24g_ackpayload 
 
 p_usb_init_restart:
@@ -857,8 +857,8 @@
 02a0 c0817c06 bne usb_connected ,usb_tx_fifo_release 
 02a1 6fe08902 fetch 1 ,mem_usb_clear_remote_wakeup 
 02a2 243a7c06 nbranch usb_tx_fifo_release ,blank 
-02a3 2040039f call p_usb_tx_data_ep1 
-02a4 202003a3 branch p_usb_tx_data_ep2 
+02a3 204003a8 call p_usb_tx_data_ep1 
+02a4 202003e2 branch p_usb_tx_data_ep2 
 
 p_dongle_usb_ep2_connect_report_send:
 02a5 6fe0cc14 fetch 1 ,mem_usb_rf_state_report_flag 
@@ -872,791 +872,894 @@
 02ab 704a4400 jam 0 ,mem_24g_ackpayload_enable_temp 
 02ac 70461100 jam 0 ,mem_24g_ackpayload_enable 
 02ad 6fe0ca47 fetch 1 ,mem_24g_rxdata_temp_new + 2 
-02ae c00082bd beq datatype_device1 ,p_g24_data_device1 
-02af c00102d6 beq datatype_device2 ,p_g24_data_device2 
-02b0 c07f82bb beq datatype_attemp ,p_g24_data_receive_attemp 
-02b1 c28382b6 bbit1 datatype_audio ,p_g24_data_receive_heart_authca_audio 
-02b2 c28302b6 bbit1 datatype_authca ,p_g24_data_receive_heart_authca_audio 
-02b3 c28282b6 bbit1 datatype_heart ,p_g24_data_receive_heart_authca_audio 
-02b4 c28202b6 bbit1 datatype_protocol ,p_g24_data_receive_heart_authca_audio 
-02b5 202033be branch g24_rx_interrupt_clear 
+02ae c00082c6 beq datatype_device1 ,p_g24_data_device1 
+02af c00102df beq datatype_device2 ,p_g24_data_device2 
+02b0 c07f82c4 beq datatype_attemp ,p_g24_data_receive_attemp 
+02b1 c28382b7 bbit1 datatype_audio ,p_g24_data_receive_heart_authca_audio 
+02b2 c28302b7 bbit1 datatype_authca ,p_g24_data_receive_heart_authca_audio 
+02b3 c28282b7 bbit1 datatype_heart ,p_g24_data_receive_heart_authca_audio 
+02b4 c28202b7 bbit1 datatype_protocol ,p_g24_data_receive_heart_authca_audio 
+02b5 c28182bc bbit1 datatype_http ,p_g24_data_receive_http 
+02b6 202033be branch g24_rx_interrupt_clear 
 
 p_g24_data_receive_heart_authca_audio:
-02b6 6fe0ca47 fetch 1 ,mem_24g_rxdata_temp_new + 2 
-02b7 1fe17e0f and pdata ,0x0f ,pdata 
-02b8 c00082bd beq datatype_device1 ,p_g24_data_device1 
-02b9 c00102d6 beq datatype_device2 ,p_g24_data_device2 
-02ba 202033be branch g24_rx_interrupt_clear 
+02b7 6fe0ca47 fetch 1 ,mem_24g_rxdata_temp_new + 2 
+02b8 1fe17e0f and pdata ,0x0f ,pdata 
+
+p_g24_data_receive_check:
+02b9 c00082c6 beq datatype_device1 ,p_g24_data_device1 
+02ba c00102df beq datatype_device2 ,p_g24_data_device2 
+02bb 202033be branch g24_rx_interrupt_clear 
+
+p_g24_data_receive_http:
+02bc 6fe0ca47 fetch 1 ,mem_24g_rxdata_temp_new + 2 
+02bd 1fe17e0f and pdata ,0x0f ,pdata 
+02be c28182c0 bbit1 datatype_http ,p_usb_http_enable 
+02bf 202002b9 branch p_g24_data_receive_check 
+
+p_usb_http_enable:
+02c0 704c1f01 jam 1 ,mem_usb_http_data_flag 
+02c1 70090b11 jam usb_ep1_kb_http ,mem_usb_ep1_data 
+02c2 704c2001 jam 1 ,mem_usb_http_data_step 
+02c3 20600000 rtn 
 
 p_g24_data_receive_attemp:
-02bb 2040050d call p_g24_bind_device_status 
-02bc 2020045f branch p_g24_data_attemp 
+02c4 2040054e call p_g24_bind_device_status 
+02c5 2020049e branch p_g24_data_attemp 
 
 p_g24_data_device1:
-02bd 2040338d call g24_binding_dvc1_living 
-02be 2040352e call g24_ch_timer_reinit 
-02bf 6fe0c60a fetch 1 ,mem_24g_abort_packet 
-02c0 6848ca45 fetcht 1 ,mem_24g_rxdata_temp_new 
-02c1 284ffe03 isolate1 bit_abort ,temp 
-02c2 7920fe00 setflag true ,0 ,pdata 
-02c3 67e0c60a store 1 ,mem_24g_abort_packet 
-02c4 c00082cc beq 1 ,p_g24_data_attemp_device1_abort 
-02c5 6fe0c612 fetch 1 ,mem_24g_hop_packet 
-02c6 6848ca45 fetcht 1 ,mem_24g_rxdata_temp_new 
-02c7 284ffe04 isolate1 bit_hop ,temp 
-02c8 7920fe00 setflag true ,0 ,pdata 
-02c9 67e0c612 store 1 ,mem_24g_hop_packet 
-02ca 6fe145e4 fetch 2 ,mem_cb_24g_data_device1 
-02cb 20207d79 branch callback_func 
+02c6 2040338d call g24_binding_dvc1_living 
+02c7 2040352e call g24_ch_timer_reinit 
+02c8 6fe0c60a fetch 1 ,mem_24g_abort_packet 
+02c9 6848ca45 fetcht 1 ,mem_24g_rxdata_temp_new 
+02ca 284ffe03 isolate1 bit_abort ,temp 
+02cb 7920fe00 setflag true ,0 ,pdata 
+02cc 67e0c60a store 1 ,mem_24g_abort_packet 
+02cd c00082d5 beq 1 ,p_g24_data_attemp_device1_abort 
+02ce 6fe0c612 fetch 1 ,mem_24g_hop_packet 
+02cf 6848ca45 fetcht 1 ,mem_24g_rxdata_temp_new 
+02d0 284ffe04 isolate1 bit_hop ,temp 
+02d1 7920fe00 setflag true ,0 ,pdata 
+02d2 67e0c612 store 1 ,mem_24g_hop_packet 
+02d3 6fe145e4 fetch 2 ,mem_cb_24g_data_device1 
+02d4 20207d79 branch callback_func 
 
 p_g24_data_attemp_device1_abort:
-02cc 6fe0c3cb fetch 1 ,mem_device_option 
-02cd 1fe67c0e sub pdata ,dvc_op_car ,null 
-02ce 2042c469 call car_stop_blink ,zero 
-02cf 6fe0c5de fetch 1 ,mem_24g_device1_bind_disable 
-02d0 247a0000 nrtn blank 
-02d1 7045de01 jam 1 ,mem_24g_device1_bind_disable 
-02d2 6fe24a4f fetch 4 ,mem_24g_rxdata_temp_new + 10 
-02d3 202035a3 branch g24_store_device1_addr 
+02d5 6fe0c3cb fetch 1 ,mem_device_option 
+02d6 1fe67c0e sub pdata ,dvc_op_car ,null 
+02d7 2042c469 call car_stop_blink ,zero 
+02d8 6fe0c5de fetch 1 ,mem_24g_device1_bind_disable 
+02d9 247a0000 nrtn blank 
+02da 7045de01 jam 1 ,mem_24g_device1_bind_disable 
+02db 6fe24a4f fetch 4 ,mem_24g_rxdata_temp_new + 10 
+02dc 202035a3 branch g24_store_device1_addr 
 
 p_g24_data_attemp_device2_abort:
-02d4 6fe24a4f fetch 4 ,mem_24g_rxdata_temp_new + 10 
-02d5 202035a9 branch g24_store_device2_addr 
+02dd 6fe24a4f fetch 4 ,mem_24g_rxdata_temp_new + 10 
+02de 202035a9 branch g24_store_device2_addr 
 
 p_g24_data_device2:
-02d6 20403393 call g24_binding_dvc2_living 
-02d7 6848ca45 fetcht 1 ,mem_24g_rxdata_temp_new 
-02d8 284ffe03 isolate1 bit_abort ,temp 
-02d9 202082d4 branch p_g24_data_attemp_device2_abort ,true 
-02da 6fe145e6 fetch 2 ,mem_cb_24g_data_device2 
-02db 20207d79 branch callback_func 
+02df 20403393 call g24_binding_dvc2_living 
+02e0 6848ca45 fetcht 1 ,mem_24g_rxdata_temp_new 
+02e1 284ffe03 isolate1 bit_abort ,temp 
+02e2 202082dd branch p_g24_data_attemp_device2_abort ,true 
+02e3 6fe145e6 fetch 2 ,mem_cb_24g_data_device2 
+02e4 20207d79 branch callback_func 
 
 p_dongle_g24_mouse:
-02dc 704c1e00 jam 0 ,mem_dongle_freq_hop_flag 
-02dd 204002e4 call p_dongle_24g_mouse_wheel_data_check 
-02de 6fe0ca47 fetch 1 ,mem_24g_rxdata_temp_new + 2 
-02df c283831e bbit1 datatype_audio ,p_dongle_g24_mouse_audio_data 
-02e0 c2830334 bbit1 datatype_authca ,p_dongle_g24_mouse_authca_data 
-02e1 c2828301 bbit1 datatype_heart ,p_dongle_g24_mouse_heart_data 
-02e2 c2820308 bbit1 datatype_protocol ,p_g24_data_receive_protocol_data 
-02e3 202002e8 branch p_dongle_g24_mouse_next 
+02e5 704c1e00 jam 0 ,mem_dongle_freq_hop_flag 
+02e6 204002ed call p_dongle_24g_mouse_wheel_data_check 
+02e7 6fe0ca47 fetch 1 ,mem_24g_rxdata_temp_new + 2 
+02e8 c2838327 bbit1 datatype_audio ,p_dongle_g24_mouse_audio_data 
+02e9 c283033d bbit1 datatype_authca ,p_dongle_g24_mouse_authca_data 
+02ea c282830a bbit1 datatype_heart ,p_dongle_g24_mouse_heart_data 
+02eb c2820311 bbit1 datatype_protocol ,p_g24_data_receive_protocol_data 
+02ec 202002f1 branch p_dongle_g24_mouse_next 
 
 p_dongle_24g_mouse_wheel_data_check:
-02e4 6fe14a4d fetch 2 ,mem_24g_rxdata_temp_new + 8 
-02e5 207a0000 rtn blank 
-02e6 704c1e01 jam 1 ,mem_dongle_freq_hop_flag 
-02e7 20600000 rtn 
+02ed 6fe14a4d fetch 2 ,mem_24g_rxdata_temp_new + 8 
+02ee 207a0000 rtn blank 
+02ef 704c1e01 jam 1 ,mem_dongle_freq_hop_flag 
+02f0 20600000 rtn 
 
 p_dongle_g24_mouse_next:
-02e8 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
-02e9 1fe67c09 sub pdata ,0x09 ,null 
-02ea 202282f7 branch p_dongle_g24_mouse_data ,zero 
-02eb 204002f7 call p_dongle_g24_mouse_data 
-02ec 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
-02ed 1fe0fff8 add pdata ,-8 ,pdata 
-02ee 67e0c57d store 1 ,mem_24g_rxdata_length 
-02ef 1fe27200 copy pdata ,loopcnt 
-02f0 d8a04a47 arg mem_24g_rxdata_temp_new + 2 ,contw 
-02f1 d8c04a4f arg mem_24g_rxdata_temp_new + 10 ,contr 
-02f2 20407cda call memcpy 
-02f3 6fe0ca47 fetch 1 ,mem_24g_rxdata_temp_new + 2 
-02f4 c2830334 bbit1 datatype_authca ,p_dongle_g24_mouse_authca_data 
-02f5 c2820308 bbit1 datatype_protocol ,p_g24_data_receive_protocol_data 
-02f6 20600000 rtn 
+02f1 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
+02f2 1fe67c09 sub pdata ,0x09 ,null 
+02f3 20228300 branch p_dongle_g24_mouse_data ,zero 
+02f4 20400300 call p_dongle_g24_mouse_data 
+02f5 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
+02f6 1fe0fff8 add pdata ,-8 ,pdata 
+02f7 67e0c57d store 1 ,mem_24g_rxdata_length 
+02f8 1fe27200 copy pdata ,loopcnt 
+02f9 d8a04a47 arg mem_24g_rxdata_temp_new + 2 ,contw 
+02fa d8c04a4f arg mem_24g_rxdata_temp_new + 10 ,contr 
+02fb 20407cda call memcpy 
+02fc 6fe0ca47 fetch 1 ,mem_24g_rxdata_temp_new + 2 
+02fd c283033d bbit1 datatype_authca ,p_dongle_g24_mouse_authca_data 
+02fe c2820311 bbit1 datatype_protocol ,p_g24_data_receive_protocol_data 
+02ff 20600000 rtn 
 
 p_dongle_g24_mouse_data:
-02f7 58000001 setarg ms_report_id 
-02f8 67e08913 store 1 ,mem_usb_mouse_data 
-02f9 6fe3ca48 fetch 7 ,mem_24g_rxdata_temp_new + 3 
-02fa e7e38005 istore 7 ,contw 
-02fb 6fe0ca48 fetch 1 ,mem_24g_rxdata_temp_new + 3 
-02fc 245a48dd ncall dongle_g24_ms_enable_blank_data_forcibly ,blank 
-02fd 6fe0ca48 fetch 1 ,mem_24g_rxdata_temp_new + 3 
-02fe 205a48e1 call dongle_g24_ms_disable_blank_data_forcibly ,blank 
-02ff 70090c20 jam usb_ep2_ms ,mem_usb_ep2_data 
-0300 2020036d branch p_dongle_usb_tx_enable_ep2 
+0300 58000001 setarg ms_report_id 
+0301 67e08913 store 1 ,mem_usb_mouse_data 
+0302 6fe3ca48 fetch 7 ,mem_24g_rxdata_temp_new + 3 
+0303 e7e38005 istore 7 ,contw 
+0304 6fe0ca48 fetch 1 ,mem_24g_rxdata_temp_new + 3 
+0305 245a48dd ncall dongle_g24_ms_enable_blank_data_forcibly ,blank 
+0306 6fe0ca48 fetch 1 ,mem_24g_rxdata_temp_new + 3 
+0307 205a48e1 call dongle_g24_ms_disable_blank_data_forcibly ,blank 
+0308 70090c20 jam usb_ep2_ms ,mem_usb_ep2_data 
+0309 20200376 branch p_dongle_usb_tx_enable_ep2 
 
 p_dongle_g24_mouse_heart_data:
-0301 704c1e01 jam 1 ,mem_dongle_freq_hop_flag 
-0302 6fe0c864 fetch 1 ,mem_dongle_usb_ep2_data_flag 
-0303 207a0000 rtn blank 
-0304 70486400 jam 0 ,mem_dongle_usb_ep2_data_flag 
+030a 704c1e01 jam 1 ,mem_dongle_freq_hop_flag 
+030b 6fe0c864 fetch 1 ,mem_dongle_usb_ep2_data_flag 
+030c 207a0000 rtn blank 
+030d 70486400 jam 0 ,mem_dongle_usb_ep2_data_flag 
 
 p_24g_ackpayload_enable_set:
-0305 704611a2 jam report_id_data_out ,mem_24g_ackpayload_enable 
-0306 704a44a2 jam report_id_data_out ,mem_24g_ackpayload_enable_temp 
-0307 20600000 rtn 
+030e 704611a2 jam report_id_data_out ,mem_24g_ackpayload_enable 
+030f 704a44a2 jam report_id_data_out ,mem_24g_ackpayload_enable_temp 
+0310 20600000 rtn 
 
 p_g24_data_receive_protocol_data:
-0308 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
-0309 1f20f3ff increase -1 ,loopcnt 
-030a d8a04b13 arg mem_usb_protocol_data + 2 ,contw 
-030b d8c04a48 arg mem_24g_rxdata_temp_new + 3 ,contr 
-030c 20407cda call memcpy 
-030d 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
-030e 1fe0ffff increase -1 ,pdata 
-030f d8a04b52 arg mem_usb_protocol_data_sta ,contw 
-0310 d8c04b13 arg mem_usb_protocol_data + 2 ,contr 
-0311 20407cda call memcpy 
-0312 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
-0313 1fe0ffff increase -1 ,pdata 
-0314 da404b52 arg mem_usb_protocol_data_sta ,regb 
-0315 da204b93 arg mem_usb_protocol_data_last ,rega 
-0316 20407d64 call compare_loop 
-0317 2442834b ncall p_dongle_usb_tx_protocol_data ,zero 
-0318 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
-0319 1fe0ffff increase -1 ,pdata 
-031a d8c04b52 arg mem_usb_protocol_data_sta ,contr 
-031b d8a04b93 arg mem_usb_protocol_data_last ,contw 
-031c 20407cda call memcpy 
-031d 202033be branch g24_rx_interrupt_clear 
+0311 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
+0312 1f20f3ff increase -1 ,loopcnt 
+0313 d8a04b13 arg mem_usb_protocol_data + 2 ,contw 
+0314 d8c04a48 arg mem_24g_rxdata_temp_new + 3 ,contr 
+0315 20407cda call memcpy 
+0316 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
+0317 1fe0ffff increase -1 ,pdata 
+0318 d8a04b52 arg mem_usb_protocol_data_sta ,contw 
+0319 d8c04b13 arg mem_usb_protocol_data + 2 ,contr 
+031a 20407cda call memcpy 
+031b 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
+031c 1fe0ffff increase -1 ,pdata 
+031d da404b52 arg mem_usb_protocol_data_sta ,regb 
+031e da204b93 arg mem_usb_protocol_data_last ,rega 
+031f 20407d64 call compare_loop 
+0320 24428354 ncall p_dongle_usb_tx_protocol_data ,zero 
+0321 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
+0322 1fe0ffff increase -1 ,pdata 
+0323 d8c04b52 arg mem_usb_protocol_data_sta ,contr 
+0324 d8a04b93 arg mem_usb_protocol_data_last ,contw 
+0325 20407cda call memcpy 
+0326 202033be branch g24_rx_interrupt_clear 
 
 p_dongle_g24_mouse_audio_data:
-031e 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
-031f 1f20f3ff increase -1 ,loopcnt 
-0320 d8a047a3 arg mem_usb_audio_data + 2 ,contw 
-0321 d8c04a48 arg mem_24g_rxdata_temp_new + 3 ,contr 
-0322 20407cda call memcpy 
-0323 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
-0324 1fe0ffff increase -1 ,pdata 
-0325 d8a047e1 arg mem_usb_audio_data_sta ,contw 
-0326 d8c047a3 arg mem_usb_audio_data + 2 ,contr 
-0327 20407cda call memcpy 
-0328 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
-0329 1fe0ffff increase -1 ,pdata 
-032a da4047e1 arg mem_usb_audio_data_sta ,regb 
-032b da204821 arg mem_usb_audio_data_last ,rega 
-032c 20407d64 call compare_loop 
-032d 24428356 ncall p_dongle_usb_tx_audio_data ,zero 
-032e 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
-032f 1fe0ffff increase -1 ,pdata 
-0330 d8c047e1 arg mem_usb_audio_data_sta ,contr 
-0331 d8a04821 arg mem_usb_audio_data_last ,contw 
-0332 20407cda call memcpy 
-0333 202033be branch g24_rx_interrupt_clear 
+0327 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
+0328 1f20f3ff increase -1 ,loopcnt 
+0329 d8a047a3 arg mem_usb_audio_data + 2 ,contw 
+032a d8c04a48 arg mem_24g_rxdata_temp_new + 3 ,contr 
+032b 20407cda call memcpy 
+032c 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
+032d 1fe0ffff increase -1 ,pdata 
+032e d8a047e1 arg mem_usb_audio_data_sta ,contw 
+032f d8c047a3 arg mem_usb_audio_data + 2 ,contr 
+0330 20407cda call memcpy 
+0331 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
+0332 1fe0ffff increase -1 ,pdata 
+0333 da4047e1 arg mem_usb_audio_data_sta ,regb 
+0334 da204821 arg mem_usb_audio_data_last ,rega 
+0335 20407d64 call compare_loop 
+0336 2442835f ncall p_dongle_usb_tx_audio_data ,zero 
+0337 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
+0338 1fe0ffff increase -1 ,pdata 
+0339 d8c047e1 arg mem_usb_audio_data_sta ,contr 
+033a d8a04821 arg mem_usb_audio_data_last ,contw 
+033b 20407cda call memcpy 
+033c 202033be branch g24_rx_interrupt_clear 
 
 p_dongle_g24_mouse_authca_data:
-0334 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
-0335 1f20f3ff increase -1 ,loopcnt 
-0336 d8a046e0 arg mem_usb_authca_data + 2 ,contw 
-0337 d8c04a48 arg mem_24g_rxdata_temp_new + 3 ,contr 
-0338 20407cda call memcpy 
-0339 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
-033a 1fe0ffff increase -1 ,pdata 
-033b d8a0471f arg mem_usb_authca_data_sta ,contw 
-033c d8c046e0 arg mem_usb_authca_data + 2 ,contr 
-033d 20407cda call memcpy 
-033e 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
-033f 1fe0ffff increase -1 ,pdata 
-0340 da40471f arg mem_usb_authca_data_sta ,regb 
-0341 da204760 arg mem_usb_authca_data_last ,rega 
-0342 20407d64 call compare_loop 
-0343 24428360 ncall p_dongle_usb_tx_authca_data ,zero 
-0344 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
-0345 1fe0ffff increase -1 ,pdata 
-0346 d8c0471f arg mem_usb_authca_data_sta ,contr 
-0347 d8a04760 arg mem_usb_authca_data_last ,contw 
-0348 20407cda call memcpy 
-0349 204033be call g24_rx_interrupt_clear 
-034a 20200301 branch p_dongle_g24_mouse_heart_data 
+033d 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
+033e 1f20f3ff increase -1 ,loopcnt 
+033f d8a046e0 arg mem_usb_authca_data + 2 ,contw 
+0340 d8c04a48 arg mem_24g_rxdata_temp_new + 3 ,contr 
+0341 20407cda call memcpy 
+0342 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
+0343 1fe0ffff increase -1 ,pdata 
+0344 d8a0471f arg mem_usb_authca_data_sta ,contw 
+0345 d8c046e0 arg mem_usb_authca_data + 2 ,contr 
+0346 20407cda call memcpy 
+0347 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
+0348 1fe0ffff increase -1 ,pdata 
+0349 da40471f arg mem_usb_authca_data_sta ,regb 
+034a da204760 arg mem_usb_authca_data_last ,rega 
+034b 20407d64 call compare_loop 
+034c 24428369 ncall p_dongle_usb_tx_authca_data ,zero 
+034d 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
+034e 1fe0ffff increase -1 ,pdata 
+034f d8c0471f arg mem_usb_authca_data_sta ,contr 
+0350 d8a04760 arg mem_usb_authca_data_last ,contw 
+0351 20407cda call memcpy 
+0352 204033be call g24_rx_interrupt_clear 
+0353 2020030a branch p_dongle_g24_mouse_heart_data 
 
 p_dongle_usb_tx_protocol_data:
-034b 58000040 setarg 0x40 
-034c 67e0cb11 store 1 ,mem_usb_protocol_data 
-034d 704b12a1 jam report_id_data_in ,mem_usb_protocol_data + 1 
-034e 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
-034f 1fe0ffff increase -1 ,pdata 
-0350 1fe27200 copy pdata ,loopcnt 
-0351 d8c04b13 arg mem_usb_protocol_data + 2 ,contr 
-0352 d8a04b52 arg mem_usb_protocol_data_sta ,contw 
-0353 20407cda call memcpy 
-0354 70090c23 jam usb_ep2_protocol ,mem_usb_ep2_data 
-0355 2020036d branch p_dongle_usb_tx_enable_ep2 
-
-p_dongle_usb_tx_audio_data:
-0356 7047a2a0 jam report_id_audio_data_in ,mem_usb_audio_data + 1 
+0354 58000040 setarg 0x40 
+0355 67e0cb11 store 1 ,mem_usb_protocol_data 
+0356 704b12a1 jam report_id_data_in ,mem_usb_protocol_data + 1 
 0357 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
 0358 1fe0ffff increase -1 ,pdata 
-0359 67e0c7a1 store 1 ,mem_usb_audio_data 
-035a 1fe27200 copy pdata ,loopcnt 
-035b d8c047a4 arg mem_usb_audio_data + 3 ,contr 
-035c d8a047e1 arg mem_usb_audio_data_sta ,contw 
-035d 20407cda call memcpy 
-035e 70090c24 jam usb_ep2_audio ,mem_usb_ep2_data 
-035f 2020036d branch p_dongle_usb_tx_enable_ep2 
+0359 1fe27200 copy pdata ,loopcnt 
+035a d8c04b13 arg mem_usb_protocol_data + 2 ,contr 
+035b d8a04b52 arg mem_usb_protocol_data_sta ,contw 
+035c 20407cda call memcpy 
+035d 70090c23 jam usb_ep2_protocol ,mem_usb_ep2_data 
+035e 20200376 branch p_dongle_usb_tx_enable_ep2 
+
+p_dongle_usb_tx_audio_data:
+035f 7047a2a0 jam report_id_audio_data_in ,mem_usb_audio_data + 1 
+0360 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
+0361 1fe0ffff increase -1 ,pdata 
+0362 67e0c7a1 store 1 ,mem_usb_audio_data 
+0363 1fe27200 copy pdata ,loopcnt 
+0364 d8c047a4 arg mem_usb_audio_data + 3 ,contr 
+0365 d8a047e1 arg mem_usb_audio_data_sta ,contw 
+0366 20407cda call memcpy 
+0367 70090c24 jam usb_ep2_audio ,mem_usb_ep2_data 
+0368 20200376 branch p_dongle_usb_tx_enable_ep2 
 
 p_dongle_usb_tx_authca_data:
-0360 58000040 setarg 0x40 
-0361 67e0c6de store 1 ,mem_usb_authca_data 
-0362 7046dfa3 jam report_id_authca_data_in ,mem_usb_authca_data + 1 
-0363 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
-0364 1fe0ffff increase -1 ,pdata 
-0365 67e0c6e0 store 1 ,mem_usb_authca_data + 2 
-0366 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
-0367 1fe0ffff increase -1 ,pdata 
-0368 d8a046e1 arg mem_usb_authca_data + 3 ,contw 
-0369 d8c0471f arg mem_usb_authca_data_sta ,contr 
-036a 20407cda call memcpy 
-036b 70090c26 jam usb_ep2_authca ,mem_usb_ep2_data 
-036c 2020036d branch p_dongle_usb_tx_enable_ep2 
+0369 58000040 setarg 0x40 
+036a 67e0c6de store 1 ,mem_usb_authca_data 
+036b 7046dfa3 jam report_id_authca_data_in ,mem_usb_authca_data + 1 
+036c 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
+036d 1fe0ffff increase -1 ,pdata 
+036e 67e0c6e0 store 1 ,mem_usb_authca_data + 2 
+036f 6f20c57d fetchr loopcnt ,1 ,mem_24g_rxdata_length 
+0370 1fe0ffff increase -1 ,pdata 
+0371 d8a046e1 arg mem_usb_authca_data + 3 ,contw 
+0372 d8c0471f arg mem_usb_authca_data_sta ,contr 
+0373 20407cda call memcpy 
+0374 70090c26 jam usb_ep2_authca ,mem_usb_ep2_data 
+0375 20200376 branch p_dongle_usb_tx_enable_ep2 
 
 p_dongle_usb_tx_enable_ep2:
-036d 6fe0890e fetch 1 ,mem_usb_device_enumeration_endflag 
-036e 207a0000 rtn blank 
-036f da204c16 arg mem_usb_ep2_fifo ,rega 
-0370 20407da5 call fifo_is_full 
-0371 247a0000 nrtn blank 
-0372 6fe0890c fetch 1 ,mem_usb_ep2_data 
-0373 67e0866f store 1 ,mem_fifo_temp 
-0374 da204c16 arg mem_usb_ep2_fifo ,rega 
-0375 20207d8b branch fifo_in 
+0376 6fe0890e fetch 1 ,mem_usb_device_enumeration_endflag 
+0377 207a0000 rtn blank 
+0378 da204c16 arg mem_usb_ep2_fifo ,rega 
+0379 20407da5 call fifo_is_full 
+037a 247a0000 nrtn blank 
+037b 6fe0890c fetch 1 ,mem_usb_ep2_data 
+037c 67e0866f store 1 ,mem_fifo_temp 
+037d da204c16 arg mem_usb_ep2_fifo ,rega 
+037e 20207d8b branch fifo_in 
 
 p_dongle_g24_keyboard:
-0376 6fe0ca47 fetch 1 ,mem_24g_rxdata_temp_new + 2 
-0377 c283831e bbit1 datatype_audio ,p_dongle_g24_mouse_audio_data 
-0378 c2830334 bbit1 datatype_authca ,p_dongle_g24_mouse_authca_data 
-0379 2020037a branch p_dongle_g24_kb 
+037f 6fe0ca47 fetch 1 ,mem_24g_rxdata_temp_new + 2 
+0380 c2838327 bbit1 datatype_audio ,p_dongle_g24_mouse_audio_data 
+0381 c283033d bbit1 datatype_authca ,p_dongle_g24_mouse_authca_data 
+0382 20200383 branch p_dongle_g24_kb 
 
 p_dongle_g24_kb:
-037a 6fe0ca48 fetch 1 ,mem_24g_rxdata_temp_new + 3 
-037b c000037f beq 0 ,p_dongle_g24_kb_type0 
-037c c0010385 beq 2 ,p_dongle_g24_kb_type2 
-037d c0018388 beq 3 ,p_dongle_g24_kb_type3 
-037e 202033be branch g24_rx_interrupt_clear 
+0383 6fe0ca48 fetch 1 ,mem_24g_rxdata_temp_new + 3 
+0384 c0000388 beq 0 ,p_dongle_g24_kb_type0 
+0385 c001038e beq 2 ,p_dongle_g24_kb_type2 
+0386 c0018391 beq 3 ,p_dongle_g24_kb_type3 
+0387 202033be branch g24_rx_interrupt_clear 
 
 p_dongle_g24_kb_type0:
-037f 6fe0ca4a fetch 1 ,mem_24g_rxdata_temp_new + 5 
-0380 67e0c611 store 1 ,mem_24g_ackpayload_enable 
-0381 704a4a00 jam 0 ,mem_24g_rxdata_temp_new + 5 
-0382 d8a00923 arg mem_usb_kb_data ,contw 
-0383 d8c04a49 arg mem_24g_rxdata_temp_new + 4 ,contr 
-0384 202048ef branch dongle_g24_kb_type0 + 5 
+0388 6fe0ca4a fetch 1 ,mem_24g_rxdata_temp_new + 5 
+0389 67e0c611 store 1 ,mem_24g_ackpayload_enable 
+038a 704a4a00 jam 0 ,mem_24g_rxdata_temp_new + 5 
+038b d8a00923 arg mem_usb_kb_data ,contw 
+038c d8c04a49 arg mem_24g_rxdata_temp_new + 4 ,contr 
+038d 202048ef branch dongle_g24_kb_type0 + 5 
 
 p_dongle_g24_kb_type2:
-0385 d8a00943 arg mem_usb_kb_system ,contw 
-0386 d8c04a48 arg mem_24g_rxdata_temp_new + 3 ,contr 
-0387 2020491f branch dongle_g24_kb_type2 + 2 
+038e d8a00943 arg mem_usb_kb_system ,contw 
+038f d8c04a48 arg mem_24g_rxdata_temp_new + 3 ,contr 
+0390 2020491f branch dongle_g24_kb_type2 + 2 
 
 p_dongle_g24_kb_type3:
-0388 d8a00933 arg mem_usb_kb_multikey ,contw 
-0389 d8c04a48 arg mem_24g_rxdata_temp_new + 3 ,contr 
-038a 20204907 branch dongle_g24_kb_type3 + 2 
+0391 d8a00933 arg mem_usb_kb_multikey ,contw 
+0392 d8c04a48 arg mem_24g_rxdata_temp_new + 3 ,contr 
+0393 20204907 branch dongle_g24_kb_type3 + 2 
 
 p_dongle_ackpayload_prep:
-038b 6fe0c589 fetch 1 ,mem_24g_data_type 
-038c c000838f beq datatype_device1 ,p_dongle_ackpayload_prep_mouse 
-038d c00100ef beq datatype_device2 ,p_dongle_ackpayload_prep_keyboard 
-038e 2020038f branch p_dongle_ackpayload_prep_mouse 
+0394 6fe0c589 fetch 1 ,mem_24g_data_type 
+0395 c0008398 beq datatype_device1 ,p_dongle_ackpayload_prep_mouse 
+0396 c00100ef beq datatype_device2 ,p_dongle_ackpayload_prep_keyboard 
+0397 20200398 branch p_dongle_ackpayload_prep_mouse 
 
 p_dongle_ackpayload_prep_mouse:
-038f 6fe0c693 fetch 1 ,mem_dg_pc_sleep_flag 
-0390 c28000e1 bbit1 0 ,p_dongle_pc_sleep_ackpayload_prep_mouse 
-0391 20200392 branch p_dongle_ackpayload_prep_end 
+0398 6fe0c693 fetch 1 ,mem_dg_pc_sleep_flag 
+0399 c28000e1 bbit1 0 ,p_dongle_pc_sleep_ackpayload_prep_mouse 
+039a 2020039b branch p_dongle_ackpayload_prep_end 
 
 p_dongle_ackpayload_prep_end:
-0392 6fe0c611 fetch 1 ,mem_24g_ackpayload_enable 
-0393 c00080d9 beq bind_ackpayload ,p_dongle_g24_bind_ackpayload_prep 
-0394 c00180e8 beq kb_led_ackpayload ,p_dongle_g24_kb_led_ackpayload_prep 
-0395 c0510397 beq report_id_data_out ,p_dongle_ep2_ackpayload_prep 
-0396 20600000 rtn 
+039b 6fe0c611 fetch 1 ,mem_24g_ackpayload_enable 
+039c c00080d9 beq bind_ackpayload ,p_dongle_g24_bind_ackpayload_prep 
+039d c00180e8 beq kb_led_ackpayload ,p_dongle_g24_kb_led_ackpayload_prep 
+039e c05103a0 beq report_id_data_out ,p_dongle_ep2_ackpayload_prep 
+039f 20600000 rtn 
 
 p_dongle_ep2_ackpayload_prep:
-0397 704611a2 jam report_id_data_out ,mem_24g_ackpayload_enable 
-0398 704a44a2 jam report_id_data_out ,mem_24g_ackpayload_enable_temp 
-0399 6fe0c865 fetch 1 ,mem_dongle_usb_ep2_data_len 
-039a 67e0c588 store 1 ,mem_24g_datalen 
-039b 1fe27200 copy pdata ,loopcnt 
-039c d8c04866 arg mem_dongle_g24_usb_ep2_ack_data ,contr 
-039d d8a04a8b arg mem_24g_txbuf_new ,contw 
-039e 20207cda branch memcpy 
+03a0 704611a2 jam report_id_data_out ,mem_24g_ackpayload_enable 
+03a1 704a44a2 jam report_id_data_out ,mem_24g_ackpayload_enable_temp 
+03a2 6fe0c865 fetch 1 ,mem_dongle_usb_ep2_data_len 
+03a3 67e0c588 store 1 ,mem_24g_datalen 
+03a4 1fe27200 copy pdata ,loopcnt 
+03a5 d8c04866 arg mem_dongle_g24_usb_ep2_ack_data ,contr 
+03a6 d8a04a8b arg mem_24g_txbuf_new ,contw 
+03a7 20207cda branch memcpy 
 
 p_usb_tx_data_ep1:
-039f 6ff08c25 fetch 1 ,core_usb_txbusy 
-03a0 1fe17e0f and_into 0x0f ,pdata 
-03a1 247a0000 nrtn blank 
-03a2 20207bf0 branch usb_tx_data_ep1 + 2 
+03a8 6ff08c25 fetch 1 ,core_usb_txbusy 
+03a9 1fe17e0f and_into 0x0f ,pdata 
+03aa 247a0000 nrtn blank 
+03ab 6fe0cc1f fetch 1 ,mem_usb_http_data_flag 
+03ac 243a03ae nbranch p_usb_tx_http_data ,blank 
+03ad 20207bf0 branch usb_tx_data_ep1 + 2 
+
+p_usb_tx_http_data:
+03ae 6fe0890b fetch 1 ,mem_usb_ep1_data 
+03af 207a0000 rtn blank 
+03b0 c00883b3 beq usb_ep1_kb_http ,p_usb_tx_http_data_set 
+03b1 c0087c28 beq usb_ep1_kb ,usb_tx_kb_normal_data 
+03b2 2020235a branch assert 
+
+p_usb_tx_http_data_set:
+03b3 6fe0cc20 fetch 1 ,mem_usb_http_data_step 
+03b4 c00083c1 beq 1 ,p_usb_tx_http_step1 
+03b5 c00103d6 beq 2 ,p_usb_tx_http_realse_1 
+03b6 c00183d4 beq 3 ,p_usb_tx_http_wait_1 
+03b7 c00203c5 beq 4 ,p_usb_tx_http_step2 
+03b8 c00283c8 beq 5 ,p_usb_tx_http_step3 
+03b9 c00303d8 beq 6 ,p_usb_tx_http_realse_2 
+03ba c00383cb beq 7 ,p_usb_tx_http_step4 
+03bb c00403da beq 8 ,p_usb_tx_http_realse_3 
+03bc c00483ce beq 9 ,p_usb_tx_http_step5 
+03bd c00503dc beq 10 ,p_usb_tx_http_realse_4 
+03be c00583d1 beq 11 ,p_usb_tx_http_step6 
+03bf c00603df beq 12 ,p_usb_tx_http_end 
+03c0 20600000 rtn 
+
+p_usb_tx_http_step1:
+03c1 704c2002 jam 2 ,mem_usb_http_data_step 
+03c2 d8c04c21 arg mem_usb_http_step1_data ,contr 
+
+p_usb_tx_ep1_set:
+03c3 df200008 arg 8 ,loopcnt 
+03c4 20207bcf branch usb_tx_ep1 
+
+p_usb_tx_http_step2:
+03c5 704c2005 jam 5 ,mem_usb_http_data_step 
+03c6 d8c04c29 arg mem_usb_http_step2_data ,contr 
+03c7 202003c3 branch p_usb_tx_ep1_set 
+
+p_usb_tx_http_step3:
+03c8 704c2006 jam 6 ,mem_usb_http_data_step 
+03c9 d8c04c31 arg mem_usb_http_step3_data ,contr 
+03ca 202003c3 branch p_usb_tx_ep1_set 
+
+p_usb_tx_http_step4:
+03cb 704c2008 jam 8 ,mem_usb_http_data_step 
+03cc d8c04c39 arg mem_usb_http_step4_data ,contr 
+03cd 202003c3 branch p_usb_tx_ep1_set 
+
+p_usb_tx_http_step5:
+03ce 704c200a jam 10 ,mem_usb_http_data_step 
+03cf d8c04c41 arg mem_usb_http_step5_data ,contr 
+03d0 202003c3 branch p_usb_tx_ep1_set 
+
+p_usb_tx_http_step6:
+03d1 704c200c jam 12 ,mem_usb_http_data_step 
+03d2 d8c04c49 arg mem_usb_http_step6_data ,contr 
+03d3 202003c3 branch p_usb_tx_ep1_set 
+
+p_usb_tx_http_wait_1:
+03d4 704c2004 jam 4 ,mem_usb_http_data_step 
+03d5 20600000 rtn 
+
+p_usb_tx_http_realse_1:
+03d6 704c2003 jam 3 ,mem_usb_http_data_step 
+03d7 202003dd branch p_usb_tx_http_realse 
+
+p_usb_tx_http_realse_2:
+03d8 704c2007 jam 7 ,mem_usb_http_data_step 
+03d9 202003dd branch p_usb_tx_http_realse 
+
+p_usb_tx_http_realse_3:
+03da 704c2009 jam 9 ,mem_usb_http_data_step 
+03db 202003dd branch p_usb_tx_http_realse 
+
+p_usb_tx_http_realse_4:
+03dc 704c200b jam 11 ,mem_usb_http_data_step 
+
+p_usb_tx_http_realse:
+03dd d8c04c51 arg mem_usb_http_step_empty_data ,contr 
+03de 202003c3 branch p_usb_tx_ep1_set 
+
+p_usb_tx_http_end:
+03df 704c2000 jam 0 ,mem_usb_http_data_step 
+03e0 704c1f00 jam 0 ,mem_usb_http_data_flag 
+03e1 202003dd branch p_usb_tx_http_realse 
 
 p_usb_tx_data_ep2:
-03a3 6ff08c25 fetch 1 ,core_usb_txbusy 
-03a4 1fe17e0f and_into 0x0f ,pdata 
-03a5 247a0000 nrtn blank 
-03a6 da204c16 arg mem_usb_ep2_fifo ,rega 
-03a7 20407d97 call fifo_out 
-03a8 207a0000 rtn blank 
-03a9 c0107c09 beq usb_ep2_ms ,usb_tx_ms_data 
-03aa c01303b9 beq usb_ep2_authca ,p_usb_tx_authca_data 
-03ab c010fc24 beq usb_ep2_multikey ,usb_tx_kb_multikey_data 
-03ac c0117c2c beq usb_ep2_systemkey ,usb_tx_kb_systemkey_data 
-03ad c01203c4 beq usb_ep2_audio ,p_usb_tx_audio_data 
-03ae c01183cf beq usb_ep2_protocol ,p_usb_tx_protocol_data 
-03af c01383b1 beq usb_ep2_mskb_state ,p_usb_tx_rf_state_data 
-03b0 2020235a branch assert 
+03e2 6ff08c25 fetch 1 ,core_usb_txbusy 
+03e3 1fe17e0f and_into 0x0f ,pdata 
+03e4 247a0000 nrtn blank 
+03e5 da204c16 arg mem_usb_ep2_fifo ,rega 
+03e6 20407d97 call fifo_out 
+03e7 207a0000 rtn blank 
+03e8 c0107c09 beq usb_ep2_ms ,usb_tx_ms_data 
+03e9 c01303f8 beq usb_ep2_authca ,p_usb_tx_authca_data 
+03ea c010fc24 beq usb_ep2_multikey ,usb_tx_kb_multikey_data 
+03eb c0117c2c beq usb_ep2_systemkey ,usb_tx_kb_systemkey_data 
+03ec c0120403 beq usb_ep2_audio ,p_usb_tx_audio_data 
+03ed c011840e beq usb_ep2_protocol ,p_usb_tx_protocol_data 
+03ee c01383f0 beq usb_ep2_mskb_state ,p_usb_tx_rf_state_data 
+03ef 2020235a branch assert 
 
 p_usb_tx_rf_state_data:
-03b1 6f20cbd4 fetchr loopcnt ,1 ,mem_usb_rf_state_data 
-03b2 d8c04bd5 arg mem_usb_rf_state_data + 1 ,contr 
-03b3 d8e00002 arg 2 ,queue 
-03b4 da200759 arg mem_usb_txbuf2 ,rega 
-03b5 62310c0c storer rega ,2 ,core_usb_tx_saddr2 
-03b6 20407bd2 call usb_tx_buf 
-03b7 d8a04bd4 arg mem_usb_rf_state_data ,contw 
-03b8 202003c2 branch p_usb_release_authca_buf + 1 
+03f0 6f20cbd4 fetchr loopcnt ,1 ,mem_usb_rf_state_data 
+03f1 d8c04bd5 arg mem_usb_rf_state_data + 1 ,contr 
+03f2 d8e00002 arg 2 ,queue 
+03f3 da200759 arg mem_usb_txbuf2 ,rega 
+03f4 62310c0c storer rega ,2 ,core_usb_tx_saddr2 
+03f5 20407bd2 call usb_tx_buf 
+03f6 d8a04bd4 arg mem_usb_rf_state_data ,contw 
+03f7 20200401 branch p_usb_release_authca_buf + 1 
 
 p_usb_tx_authca_data:
-03b9 70090c00 jam 0 ,mem_usb_ep2_data 
-03ba 6f20c6de fetchr loopcnt ,1 ,mem_usb_authca_data 
-03bb d8c046df arg mem_usb_authca_data + 1 ,contr 
+03f8 70090c00 jam 0 ,mem_usb_ep2_data 
+03f9 6f20c6de fetchr loopcnt ,1 ,mem_usb_authca_data 
+03fa d8c046df arg mem_usb_authca_data + 1 ,contr 
 
 p_usb_tx_authca_ep2:
-03bc d8e00002 arg 2 ,queue 
-03bd da200759 arg mem_usb_txbuf2 ,rega 
-03be 62310c0c storer rega ,2 ,core_usb_tx_saddr2 
-03bf 20407bd2 call usb_tx_buf 
-03c0 202003c1 branch p_usb_release_authca_buf 
+03fb d8e00002 arg 2 ,queue 
+03fc da200759 arg mem_usb_txbuf2 ,rega 
+03fd 62310c0c storer rega ,2 ,core_usb_tx_saddr2 
+03fe 20407bd2 call usb_tx_buf 
+03ff 20200400 branch p_usb_release_authca_buf 
 
 p_usb_release_authca_buf:
-03c1 d8a046de arg mem_usb_authca_data ,contw 
-03c2 df200040 arg 64 ,loopcnt 
-03c3 20207ca1 branch clear_mem 
+0400 d8a046de arg mem_usb_authca_data ,contw 
+0401 df200040 arg 64 ,loopcnt 
+0402 20207ca1 branch clear_mem 
 
 p_usb_tx_audio_data:
-03c4 70090c00 jam 0 ,mem_usb_ep2_data 
-03c5 6f20c7a1 fetchr loopcnt ,1 ,mem_usb_audio_data 
-03c6 d8c047a3 arg mem_usb_audio_data + 2 ,contr 
+0403 70090c00 jam 0 ,mem_usb_ep2_data 
+0404 6f20c7a1 fetchr loopcnt ,1 ,mem_usb_audio_data 
+0405 d8c047a3 arg mem_usb_audio_data + 2 ,contr 
 
 p_usb_tx_audio_ep2:
-03c7 d8e00002 arg 2 ,queue 
-03c8 da200759 arg mem_usb_txbuf2 ,rega 
-03c9 62310c0c storer rega ,2 ,core_usb_tx_saddr2 
-03ca 20407bd2 call usb_tx_buf 
-03cb 202003cc branch p_usb_release_audio_buf 
+0406 d8e00002 arg 2 ,queue 
+0407 da200759 arg mem_usb_txbuf2 ,rega 
+0408 62310c0c storer rega ,2 ,core_usb_tx_saddr2 
+0409 20407bd2 call usb_tx_buf 
+040a 2020040b branch p_usb_release_audio_buf 
 
 p_usb_release_audio_buf:
-03cc d8a047a1 arg mem_usb_audio_data ,contw 
-03cd df200040 arg 64 ,loopcnt 
-03ce 20207ca1 branch clear_mem 
+040b d8a047a1 arg mem_usb_audio_data ,contw 
+040c df200040 arg 64 ,loopcnt 
+040d 20207ca1 branch clear_mem 
 
 p_usb_tx_protocol_data:
-03cf 70090c00 jam 0 ,mem_usb_ep2_data 
-03d0 6f20cb11 fetchr loopcnt ,1 ,mem_usb_protocol_data 
-03d1 d8c04b12 arg mem_usb_protocol_data + 1 ,contr 
+040e 70090c00 jam 0 ,mem_usb_ep2_data 
+040f 6f20cb11 fetchr loopcnt ,1 ,mem_usb_protocol_data 
+0410 d8c04b12 arg mem_usb_protocol_data + 1 ,contr 
 
 p_usb_tx_protocol_ep2:
-03d2 d8e00002 arg 2 ,queue 
-03d3 da200759 arg mem_usb_txbuf2 ,rega 
-03d4 62310c0c storer rega ,2 ,core_usb_tx_saddr2 
-03d5 20407bd2 call usb_tx_buf 
-03d6 202003d7 branch p_usb_release_protocol_buf 
+0411 d8e00002 arg 2 ,queue 
+0412 da200759 arg mem_usb_txbuf2 ,rega 
+0413 62310c0c storer rega ,2 ,core_usb_tx_saddr2 
+0414 20407bd2 call usb_tx_buf 
+0415 20200416 branch p_usb_release_protocol_buf 
 
 p_usb_release_protocol_buf:
-03d7 d8a04b11 arg mem_usb_protocol_data ,contw 
-03d8 df200041 arg 65 ,loopcnt 
-03d9 20207ca1 branch clear_mem 
+0416 d8a04b11 arg mem_usb_protocol_data ,contw 
+0417 df200041 arg 65 ,loopcnt 
+0418 20207ca1 branch clear_mem 
 
 p_rx_dcoc:
-03da 20758000 rtn wake 
-03db 20402160 call set_sync_on 
-03dc d8400027 arg 39 ,temp 
-03dd 2040216f call set_freq_rx 
-03de 204021a6 call rf_rx_enable 
-03df 708a257f jam 0x7f ,0x8a25 
-03e0 708a301a jam 0x1a ,0x8a30 
-03e1 708a3178 jam 0x78 ,0x8a31 
-03e2 708a8fb2 jam 0xb2 ,0x8a8f 
-03e3 708ac200 jam 0 ,0x8ac2 
-03e4 708ac300 jam 0 ,0x8ac3 
-03e5 d8e00006 arg 6 ,queue 
-03e6 204003f7 call p_rx_dcoc_avg 
-03e7 2a2ffe0d isolate1 13 ,rega 
-03e8 2040211d call qset_start 
-03e9 2a4ffe0d isolate1 13 ,regb 
-03ea 2040211e call qset_p 
-03eb d8e00005 arg 5 ,queue 
+0419 20758000 rtn wake 
+041a 20402160 call set_sync_on 
+041b d8400027 arg 39 ,temp 
+041c 2040216f call set_freq_rx 
+041d 204021a6 call rf_rx_enable 
+041e 708a257f jam 0x7f ,0x8a25 
+041f 708a301a jam 0x1a ,0x8a30 
+0420 708a3178 jam 0x78 ,0x8a31 
+0421 708a8fb2 jam 0xb2 ,0x8a8f 
+0422 708ac200 jam 0 ,0x8ac2 
+0423 708ac300 jam 0 ,0x8ac3 
+0424 d8e00006 arg 6 ,queue 
+0425 20400436 call p_rx_dcoc_avg 
+0426 2a2ffe0d isolate1 13 ,rega 
+0427 2040211d call qset_start 
+0428 2a4ffe0d isolate1 13 ,regb 
+0429 2040211e call qset_p 
+042a d8e00005 arg 5 ,queue 
 
 p_rx_dcoc_loop2:
-03ec 2040211c call qset1_p 
-03ed 2040211e call qset_p 
-03ee 204003f7 call p_rx_dcoc_avg 
-03ef d8a08ac2 arg 0x8ac2 ,contw 
-03f0 1a31fe00 rshift4 rega ,pdata 
-03f1 20402117 call qsetxor 
-03f2 1a51fe00 rshift4 regb ,pdata 
-03f3 20402117 call qsetxor 
-03f4 18e08fff increase -1 ,queue 
-03f5 202103ec branch p_rx_dcoc_loop2 ,positive 
-03f6 2020214f branch rx_dcoc_loop2 + 10 
+042b 2040211c call qset1_p 
+042c 2040211e call qset_p 
+042d 20400436 call p_rx_dcoc_avg 
+042e d8a08ac2 arg 0x8ac2 ,contw 
+042f 1a31fe00 rshift4 rega ,pdata 
+0430 20402117 call qsetxor 
+0431 1a51fe00 rshift4 regb ,pdata 
+0432 20402117 call qsetxor 
+0433 18e08fff increase -1 ,queue 
+0434 2021042b branch p_rx_dcoc_loop2 ,positive 
+0435 2020214f branch rx_dcoc_loop2 + 10 
 
 p_rx_dcoc_avg:
-03f7 2000003c nop 60 
-03f8 58000f00 setarg mem_dcoc_buf 
-03f9 67f10982 store 2 ,0x8982 
-03fa 58000ff0 setarg mem_dcoc_buf_end 
-03fb 67f10984 store 2 ,0x8984 
-03fc 70898109 jam 0x9 ,0x8981 
-03fd 70898103 jam 0x3 ,0x8981 
-03fe 70898006 jam 0x6 ,0x8980 
-03ff 2000003c nop 60 
-0400 da200000 arg 0 ,rega 
-0401 da400000 arg 0 ,regb 
-0402 df200010 arg 16 ,loopcnt 
-0403 d8c00f00 arg mem_dcoc_buf ,contr 
-0404 2020212d branch rx_dcoc_loop 
+0436 2000003c nop 60 
+0437 58000f00 setarg mem_dcoc_buf 
+0438 67f10982 store 2 ,0x8982 
+0439 58000ff0 setarg mem_dcoc_buf_end 
+043a 67f10984 store 2 ,0x8984 
+043b 70898109 jam 0x9 ,0x8981 
+043c 70898103 jam 0x3 ,0x8981 
+043d 70898006 jam 0x6 ,0x8980 
+043e 2000003c nop 60 
+043f da200000 arg 0 ,rega 
+0440 da400000 arg 0 ,regb 
+0441 df200010 arg 16 ,loopcnt 
+0442 d8c00f00 arg mem_dcoc_buf ,contr 
+0443 2020212d branch rx_dcoc_loop 
 
 p_rfpll_aac_ghpc:
-0405 20758000 rtn wake 
-0406 20202272 branch rfpll_aac_ghpc + 1 
+0444 20758000 rtn wake 
+0445 20202272 branch rfpll_aac_ghpc + 1 
 
 p_dpll_ring_ibias_calc:
-0407 20600000 rtn 
+0446 20600000 rtn 
 
 p_sadc_calibration:
-0408 20758000 rtn wake 
-0409 708a0777 jam 0x77 ,core_gpadc_ctrl 
-040a 708a08c9 jam 0xc9 ,core_gpadc_cfg0 
-040b 708a0b01 jam 0x01 ,core_gpadc_cfg3 
-040c 6fe0c409 fetch 1 ,mem_adc_clkdiv 
-040d 67f080cd store 1 ,core_sadc_clkdiv 
-040e 20000bb8 nop 3000 
-040f 20400430 call p_sadc_read 
-0410 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
-0411 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
-0412 df200008 arg 8 ,loopcnt 
-0413 20406f58 call sadc_cal_read + 1 
-0414 6fe0c419 fetch 1 ,mem_spi_write_addr 
-0415 67e0c433 store 1 ,mem_adc_cal_c7 
-0416 6240c419 storer regb ,1 ,mem_spi_write_addr 
-0417 20600000 rtn 
+0447 20758000 rtn wake 
+0448 708a0777 jam 0x77 ,core_gpadc_ctrl 
+0449 708a08c9 jam 0xc9 ,core_gpadc_cfg0 
+044a 708a0b01 jam 0x01 ,core_gpadc_cfg3 
+044b 6fe0c409 fetch 1 ,mem_adc_clkdiv 
+044c 67f080cd store 1 ,core_sadc_clkdiv 
+044d 20000bb8 nop 3000 
+044e 2040046f call p_sadc_read 
+044f 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
+0450 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
+0451 df200008 arg 8 ,loopcnt 
+0452 20406f58 call sadc_cal_read + 1 
+0453 6fe0c419 fetch 1 ,mem_spi_write_addr 
+0454 67e0c433 store 1 ,mem_adc_cal_c7 
+0455 6240c419 storer regb ,1 ,mem_spi_write_addr 
+0456 20600000 rtn 
 
 p_enable_adc:
-0418 20400426 call p_sadc_cal_write 
-0419 6ff08a09 fetch 1 ,core_gpadc_cfg1 
-041a 793ffe07 set0 7 ,pdata 
-041b 67f08a09 store 1 ,core_gpadc_cfg1 
-041c 708a0777 jam 0x77 ,core_gpadc_ctrl 
-041d 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
-041e 708a0b01 jam 0x01 ,core_gpadc_cfg3 
-041f 20406f90 call sadc_channel 
-0420 6fe0c409 fetch 1 ,mem_adc_clkdiv 
-0421 67f080cd store 1 ,core_sadc_clkdiv 
-0422 20000bb8 nop 3000 
-0423 20400430 call p_sadc_read 
-0424 7080cd00 jam 0 ,core_sadc_clkdiv 
-0425 20206fa1 branch sadc_dma 
+0457 20400465 call p_sadc_cal_write 
+0458 6ff08a09 fetch 1 ,core_gpadc_cfg1 
+0459 793ffe07 set0 7 ,pdata 
+045a 67f08a09 store 1 ,core_gpadc_cfg1 
+045b 708a0777 jam 0x77 ,core_gpadc_ctrl 
+045c 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
+045d 708a0b01 jam 0x01 ,core_gpadc_cfg3 
+045e 20406f90 call sadc_channel 
+045f 6fe0c409 fetch 1 ,mem_adc_clkdiv 
+0460 67f080cd store 1 ,core_sadc_clkdiv 
+0461 20000bb8 nop 3000 
+0462 2040046f call p_sadc_read 
+0463 7080cd00 jam 0 ,core_sadc_clkdiv 
+0464 20206fa1 branch sadc_dma 
 
 p_sadc_cal_write:
-0426 6ff080cc fetch 1 ,core_sadc_ctrl 
-0427 79207e01 set1 1 ,pdata 
-0428 67f080cc store 1 ,core_sadc_ctrl 
-0429 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
-042a 6fe0c433 fetch 1 ,mem_adc_cal_c7 
-042b 67e0c419 store 1 ,mem_spi_write_addr 
-042c df200008 arg 8 ,loopcnt 
-042d 20406f67 call sadc_cal_write + 4 
-042e 6240c419 storer regb ,1 ,mem_spi_write_addr 
-042f 20600000 rtn 
+0465 6ff080cc fetch 1 ,core_sadc_ctrl 
+0466 79207e01 set1 1 ,pdata 
+0467 67f080cc store 1 ,core_sadc_ctrl 
+0468 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
+0469 6fe0c433 fetch 1 ,mem_adc_cal_c7 
+046a 67e0c419 store 1 ,mem_spi_write_addr 
+046b df200008 arg 8 ,loopcnt 
+046c 20406f67 call sadc_cal_write + 4 
+046d 6240c419 storer regb ,1 ,mem_spi_write_addr 
+046e 20600000 rtn 
 
 p_sadc_read:
-0430 7080cc03 jam 0x03 ,core_sadc_ctrl 
+046f 7080cc03 jam 0x03 ,core_sadc_ctrl 
 
 p_sadc_read_wait:
-0431 6ff08129 fetch 1 ,core_perf_status 
-0432 c3028431 bbit0 saradc_done ,p_sadc_read_wait 
-0433 68590164 fetcht 2 ,core_sadc_data 
-0434 6049440a storet 2 ,mem_adc_current_value 
-0435 7080cc00 jam 0x00 ,core_sadc_ctrl 
-0436 20600000 rtn 
+0470 6ff08129 fetch 1 ,core_perf_status 
+0471 c3028470 bbit0 saradc_done ,p_sadc_read_wait 
+0472 68590164 fetcht 2 ,core_sadc_data 
+0473 6049440a storet 2 ,mem_adc_current_value 
+0474 7080cc00 jam 0x00 ,core_sadc_ctrl 
+0475 20600000 rtn 
 
 p_set_lemode:
-0437 708a8211 jam 0x11 ,0x8a82 
-0438 708a8d12 jam 0x12 ,0x8a8d 
-0439 708a8e0a jam 0x0a ,0x8a8e 
-043a 6fe0c099 fetch 1 ,mem_fcomp_div 
-043b c0080450 beq xtal_16m ,p_set_lemode_2m_16m 
-043c 58005762 setarg 0x5762 
-043d 67f10907 store 2 ,0x8907 
+0476 708a8211 jam 0x11 ,0x8a82 
+0477 708a8d12 jam 0x12 ,0x8a8d 
+0478 708a8e0a jam 0x0a ,0x8a8e 
+0479 6fe0c099 fetch 1 ,mem_fcomp_div 
+047a c008048f beq xtal_16m ,p_set_lemode_2m_16m 
+047b 58005762 setarg 0x5762 
+047c 67f10907 store 2 ,0x8907 
 
 p_set_lemode_2m:
-043e 70890103 jam 3 ,0x8901 
-043f 70893003 jam 3 ,0x8930 
-0440 c6168000 rtnmark1 mark_ble_2m 
-0441 70890101 jam 1 ,0x8901 
-0442 708a8207 jam 0x07 ,0x8a82 
-0443 708a8d44 jam 0x44 ,0x8a8d 
-0444 708a8e0a jam 0x0a ,0x8a8e 
-0445 6fe0c099 fetch 1 ,mem_fcomp_div 
-0446 c008044d beq xtal_16m ,p_set_lemode_1m_16m 
-0447 58002bb1 setarg 0x2bb1 
-0448 67f10907 store 2 ,0x8907 
+047d 70890103 jam 3 ,0x8901 
+047e 70893003 jam 3 ,0x8930 
+047f c6168000 rtnmark1 mark_ble_2m 
+0480 70890101 jam 1 ,0x8901 
+0481 708a8207 jam 0x07 ,0x8a82 
+0482 708a8d44 jam 0x44 ,0x8a8d 
+0483 708a8e0a jam 0x0a ,0x8a8e 
+0484 6fe0c099 fetch 1 ,mem_fcomp_div 
+0485 c008048c beq xtal_16m ,p_set_lemode_1m_16m 
+0486 58002bb1 setarg 0x2bb1 
+0487 67f10907 store 2 ,0x8907 
 
 p_set_lemode_1m:
-0449 c6978000 rtnmark0 mark_ble_lr 
-044a 70893024 jam 0x24 ,0x8930 
-044b 70890105 jam 5 ,0x8901 
-044c 20600000 rtn 
+0488 c6978000 rtnmark0 mark_ble_lr 
+0489 70893024 jam 0x24 ,0x8930 
+048a 70890105 jam 5 ,0x8901 
+048b 20600000 rtn 
 
 p_set_lemode_1m_16m:
-044d 58004189 setarg 0x4189 
-044e 67f10907 store 2 ,0x8907 
-044f 20200449 branch p_set_lemode_1m 
+048c 58004189 setarg 0x4189 
+048d 67f10907 store 2 ,0x8907 
+048e 20200488 branch p_set_lemode_1m 
 
 p_set_lemode_2m_16m:
-0450 58008312 setarg 0x8312 
-0451 67f10907 store 2 ,0x8907 
-0452 2020043e branch p_set_lemode_2m 
+048f 58008312 setarg 0x8312 
+0490 67f10907 store 2 ,0x8907 
+0491 2020047d branch p_set_lemode_2m 
 
 p_le_parse:
-0453 6fe0c334 fetch 1 ,mem_le_packet_llid 
-0454 c1000000 rtneq llid_reserved 
-0455 c001b04a beq llid_le_ll ,le_parse_ll 
-0456 202028e1 branch le_parse_l2cap 
+0492 6fe0c334 fetch 1 ,mem_le_packet_llid 
+0493 c1000000 rtneq llid_reserved 
+0494 c001b04a beq llid_le_ll ,le_parse_ll 
+0495 202028e1 branch le_parse_l2cap 
 
 p_le_init_adv:
-0457 793f8030 set0 mark_ble_crc_fail ,mark 
-0458 20202af6 branch le_init_adv + 1 
+0496 793f8030 set0 mark_ble_crc_fail ,mark 
+0497 20202af6 branch le_init_adv + 1 
 
 p_g24_bind_data_parse_next:
-0459 6fe0ca47 fetch 1 ,mem_24g_rxdata_temp_new + 2 
-045a c0553329 beq datatype_bind ,g24_bind_first_step 
-045b c02ab33a beq datatype_config ,g24_bind_second_step 
-045c c011046f beq datatype_ok ,p_g24_bind_third_step 
-045d c07f845f beq datatype_attemp ,p_g24_data_attemp 
-045e 20600000 rtn 
+0498 6fe0ca47 fetch 1 ,mem_24g_rxdata_temp_new + 2 
+0499 c0553329 beq datatype_bind ,g24_bind_first_step 
+049a c02ab33a beq datatype_config ,g24_bind_second_step 
+049b c01104ae beq datatype_ok ,p_g24_bind_third_step 
+049c c07f849e beq datatype_attemp ,p_g24_data_attemp 
+049d 20600000 rtn 
 
 p_g24_data_attemp:
-045f 6fe0ca48 fetch 1 ,mem_24g_rxdata_temp_new + 3 
-0460 c0008463 beq datatype_device1 ,p_g24_data_attemp_device1 
-0461 c0010469 beq datatype_device2 ,p_g24_data_attemp_device2 
-0462 20600000 rtn 
+049e 6fe0ca48 fetch 1 ,mem_24g_rxdata_temp_new + 3 
+049f c00084a2 beq datatype_device1 ,p_g24_data_attemp_device1 
+04a0 c00104a8 beq datatype_device2 ,p_g24_data_attemp_device2 
+04a1 20600000 rtn 
 
 p_g24_data_attemp_device1:
-0463 6fe0c5de fetch 1 ,mem_24g_device1_bind_disable 
-0464 247a0000 nrtn blank 
-0465 6fe24a49 fetch 4 ,mem_24g_rxdata_temp_new + 4 
-0466 67e2462c store 4 ,mem_24g_transmitter_addr 
+04a2 6fe0c5de fetch 1 ,mem_24g_device1_bind_disable 
+04a3 247a0000 nrtn blank 
+04a4 6fe24a49 fetch 4 ,mem_24g_rxdata_temp_new + 4 
+04a5 67e2462c store 4 ,mem_24g_transmitter_addr 
 
 p_g24_store_device1_addr:
-0467 67e24630 store 4 ,mem_24g_device1_addr 
-0468 20600000 rtn 
+04a6 67e24630 store 4 ,mem_24g_device1_addr 
+04a7 20600000 rtn 
 
 p_g24_data_attemp_device2:
-0469 6fe0c5df fetch 1 ,mem_24g_device2_bind_disable 
-046a 247a0000 nrtn blank 
-046b 6fe24a49 fetch 4 ,mem_24g_rxdata_temp_new + 4 
-046c 67e2462c store 4 ,mem_24g_transmitter_addr 
+04a8 6fe0c5df fetch 1 ,mem_24g_device2_bind_disable 
+04a9 247a0000 nrtn blank 
+04aa 6fe24a49 fetch 4 ,mem_24g_rxdata_temp_new + 4 
+04ab 67e2462c store 4 ,mem_24g_transmitter_addr 
 
 p_g24_store_device2_addr:
-046d 67e24634 store 4 ,mem_24g_device2_addr 
-046e 20600000 rtn 
+04ac 67e24634 store 4 ,mem_24g_device2_addr 
+04ad 20600000 rtn 
 
 p_g24_bind_third_step:
-046f 6fe0c5ae fetch 1 ,mem_24g_pair_switch 
-0470 203a0475 branch p_g24_bind_third_step_skip ,blank 
-0471 6fe24a49 fetch 4 ,mem_24g_rxdata_temp_new + 4 
-0472 684a462c fetcht 4 ,mem_24g_transmitter_addr 
-0473 98467c00 isub temp ,null 
-0474 24628000 nrtn zero 
+04ae 6fe0c5ae fetch 1 ,mem_24g_pair_switch 
+04af 203a04b4 branch p_g24_bind_third_step_skip ,blank 
+04b0 6fe24a49 fetch 4 ,mem_24g_rxdata_temp_new + 4 
+04b1 684a462c fetcht 4 ,mem_24g_transmitter_addr 
+04b2 98467c00 isub temp ,null 
+04b3 24628000 nrtn zero 
 
 p_g24_bind_third_step_skip:
-0475 6fe0ca48 fetch 1 ,mem_24g_rxdata_temp_new + 3 
-0476 c0008479 beq datatype_device1 ,p_g24_bind_third_step_device1 
-0477 c0010480 beq datatype_device2 ,p_g24_bind_third_step_device2 
-0478 20600000 rtn 
+04b4 6fe0ca48 fetch 1 ,mem_24g_rxdata_temp_new + 3 
+04b5 c00084b8 beq datatype_device1 ,p_g24_bind_third_step_device1 
+04b6 c00104bf beq datatype_device2 ,p_g24_bind_third_step_device2 
+04b7 20600000 rtn 
 
 p_g24_bind_third_step_device1:
-0479 6fe0c5de fetch 1 ,mem_24g_device1_bind_disable 
-047a 247a0000 nrtn blank 
-047b 6fe0c5d3 fetch 1 ,mem_24g_device1_bind_step 
-047c c001047e beq 2 ,p_g24_bind_dvc1_step_success 
-047d 20600000 rtn 
+04b8 6fe0c5de fetch 1 ,mem_24g_device1_bind_disable 
+04b9 247a0000 nrtn blank 
+04ba 6fe0c5d3 fetch 1 ,mem_24g_device1_bind_step 
+04bb c00104bd beq 2 ,p_g24_bind_dvc1_step_success 
+04bc 20600000 rtn 
 
 p_g24_bind_dvc1_step_success:
-047e 7045de01 jam 1 ,mem_24g_device1_bind_disable 
-047f 2020336b branch g24_bind_dvc1_step_success + 1 
+04bd 7045de01 jam 1 ,mem_24g_device1_bind_disable 
+04be 2020336b branch g24_bind_dvc1_step_success + 1 
 
 p_g24_bind_third_step_device2:
-0480 6fe0c5df fetch 1 ,mem_24g_device2_bind_disable 
-0481 247a0000 nrtn blank 
-0482 6fe0c5d4 fetch 1 ,mem_24g_device2_bind_step 
-0483 c0800485 bne 0 ,p_g24_bind_dvc2_step_success 
-0484 20600000 rtn 
+04bf 6fe0c5df fetch 1 ,mem_24g_device2_bind_disable 
+04c0 247a0000 nrtn blank 
+04c1 6fe0c5d4 fetch 1 ,mem_24g_device2_bind_step 
+04c2 c08004c4 bne 0 ,p_g24_bind_dvc2_step_success 
+04c3 20600000 rtn 
 
 p_g24_bind_dvc2_step_success:
-0485 7045df01 jam 1 ,mem_24g_device2_bind_disable 
-0486 20403393 call g24_binding_dvc2_living 
-0487 20203378 branch g24_bind_dvc2_step_success + 1 
+04c4 7045df01 jam 1 ,mem_24g_device2_bind_disable 
+04c5 20403393 call g24_binding_dvc2_living 
+04c6 20203378 branch g24_bind_dvc2_step_success + 1 
 
 p_g24_mode_switch_bind_search:
-0488 6fe0c616 fetch 1 ,mem_24g_work_mode 
-0489 c1000000 rtneq dongle_work 
-048a 6fe0c62a fetch 1 ,mem_24g_b_s_mode_switch_disable 
-048b 247a0000 nrtn blank 
-048c 6fe0c628 fetch 1 ,mem_24g_mode_b_s_switch_exit 
-048d 247a0000 nrtn blank 
-048e 6fe0c624 fetch 1 ,mem_24g_mode_b_s_switch 
-048f 207a0000 rtn blank 
-0490 6fe0c5d3 fetch 1 ,mem_24g_device1_bind_step 
-0491 c1800000 rtnne 0 
-0492 6fe0c5d4 fetch 1 ,mem_24g_device2_bind_step 
-0493 c1800000 rtnne 0 
-0494 20203436 branch g24_mode_switch_bind_search + 9 
+04c7 6fe0c616 fetch 1 ,mem_24g_work_mode 
+04c8 c1000000 rtneq dongle_work 
+04c9 6fe0c62a fetch 1 ,mem_24g_b_s_mode_switch_disable 
+04ca 247a0000 nrtn blank 
+04cb 6fe0c628 fetch 1 ,mem_24g_mode_b_s_switch_exit 
+04cc 247a0000 nrtn blank 
+04cd 6fe0c624 fetch 1 ,mem_24g_mode_b_s_switch 
+04ce 207a0000 rtn blank 
+04cf 6fe0c5d3 fetch 1 ,mem_24g_device1_bind_step 
+04d0 c1800000 rtnne 0 
+04d1 6fe0c5d4 fetch 1 ,mem_24g_device2_bind_step 
+04d2 c1800000 rtnne 0 
+04d3 20203436 branch g24_mode_switch_bind_search + 9 
 
 p_g24_bind_mode_auto:
-0495 6fe0c616 fetch 1 ,mem_24g_work_mode 
-0496 c1808000 rtnne dongle_bind 
-0497 20400499 call p_g24_bind_init 
-0498 2020346d branch g24_bind_mode_auto + 4 
+04d4 6fe0c616 fetch 1 ,mem_24g_work_mode 
+04d5 c1808000 rtnne dongle_bind 
+04d6 204004d8 call p_g24_bind_init 
+04d7 2020346d branch g24_bind_mode_auto + 4 
 
 p_g24_bind_init:
-0499 6fe0c615 fetch 1 ,mem_24g_mode_init 
-049a c3808000 rtnbit1 dongle_bind 
-049b 79207e01 set1 dongle_bind ,pdata 
-049c 67e0c615 store 1 ,mem_24g_mode_init 
-049d 58000000 setarg 0 
-049e 67e1c5d3 store 3 ,mem_24g_device1_bind_step 
-049f 20203307 branch g24_bind_init + 8 
+04d8 6fe0c615 fetch 1 ,mem_24g_mode_init 
+04d9 c3808000 rtnbit1 dongle_bind 
+04da 79207e01 set1 dongle_bind ,pdata 
+04db 67e0c615 store 1 ,mem_24g_mode_init 
+04dc 58000000 setarg 0 
+04dd 67e1c5d3 store 3 ,mem_24g_device1_bind_step 
+04de 20203307 branch g24_bind_init + 8 
 
 p_dongle_usb_dispatch:
-04a0 70804300 jam 0 ,0x8043 
-04a1 6fe08901 fetch 1 ,mem_usb_remote_wakeup 
-04a2 205a48b5 call dongle_clear_pc_sleep_flag ,blank 
-04a3 20407906 call usb_isr 
-04a4 6fe088f7 fetch 1 ,mem_usb0_get_set_report 
-04a5 207a0000 rtn blank 
-04a6 7008f700 jam 0 ,mem_usb0_get_set_report 
-04a7 6fe108f5 fetch 2 ,mem_usb_setup_bvalue_temp 
-04a8 d84002a4 arg pc_set_report ,temp 
-04a9 98467c00 isub temp ,null 
-04aa 20228225 branch p_dongle_usb_data_received_analysis ,zero 
-04ab d84002a2 arg pc_set_report_prolotol ,temp 
-04ac 98467c00 isub temp ,null 
-04ad 24628000 nrtn zero 
-04ae 20200225 branch p_dongle_usb_data_received_analysis 
+04df 70804300 jam 0 ,0x8043 
+04e0 6fe08901 fetch 1 ,mem_usb_remote_wakeup 
+04e1 205a48b5 call dongle_clear_pc_sleep_flag ,blank 
+04e2 20407906 call usb_isr 
+04e3 6fe088f7 fetch 1 ,mem_usb0_get_set_report 
+04e4 207a0000 rtn blank 
+04e5 7008f700 jam 0 ,mem_usb0_get_set_report 
+04e6 6fe108f5 fetch 2 ,mem_usb_setup_bvalue_temp 
+04e7 d84002a4 arg pc_set_report ,temp 
+04e8 98467c00 isub temp ,null 
+04e9 20228225 branch p_dongle_usb_data_received_analysis ,zero 
+04ea d84002a2 arg pc_set_report_prolotol ,temp 
+04eb 98467c00 isub temp ,null 
+04ec 24628000 nrtn zero 
+04ed 20200225 branch p_dongle_usb_data_received_analysis 
 
 p_wdt_kick:
-04af 58000010 setarg 16 
-04b0 202070c8 branch wdt_init_config 
+04ee 58000010 setarg 16 
+04ef 202070c8 branch wdt_init_config 
 
 p_dongle_default_init:
-04b1 204047c3 call dongle_default_init + 1 
-04b2 6fe0c695 fetch 1 ,mem_24g_pair_tx_power_init 
-04b3 67e0c5d1 store 1 ,mem_24g_pair_tx_power 
-04b4 7045ca01 jam on ,mem_24g_disable_fec1 
-04b5 20403281 call g24_enable_1m 
-04b6 6fe0c669 fetch 1 ,mem_dg_sys_config 
-04b7 c4000000 rtnbit0 dg_enable_new_revision 
-04b8 7045ca01 jam on ,mem_24g_disable_fec1 
-04b9 20203284 branch g24_enable_2m 
+04f0 204047c3 call dongle_default_init + 1 
+04f1 6fe0c695 fetch 1 ,mem_24g_pair_tx_power_init 
+04f2 67e0c5d1 store 1 ,mem_24g_pair_tx_power 
+04f3 58000000 setarg 0 
+04f4 67e14c1f store 2 ,mem_usb_http_data_flag 
+04f5 7045ca01 jam on ,mem_24g_disable_fec1 
+04f6 20403281 call g24_enable_1m 
+04f7 6fe0c669 fetch 1 ,mem_dg_sys_config 
+04f8 c4000000 rtnbit0 dg_enable_new_revision 
+04f9 7045ca01 jam on ,mem_24g_disable_fec1 
+04fa 20203284 branch g24_enable_2m 
 
 p_g24_receive_skip_fec1:
-04ba 7858fc00 disable user7 
-04bb 280ffe2f isolate1 mark_ble_lr ,mark 
-04bc 2040b16f call g24_lr_receive_pdu_len ,true 
-04bd 2038b18a branch g24_lr_len_error ,user7 
-04be 2040317d call g24_receive_byte 
-04bf 67e0c4f7 store 1 ,mem_24g_rxbuf 
-04c0 c51384c5 bmark1 mark_24g_rxmode ,p_g24_receive_skip 
-04c1 6fe0c4f7 fetch 1 ,mem_24g_rxbuf 
-04c2 6848c589 fetcht 1 ,mem_24g_data_type 
-04c3 a8400e00 icompare bits_data ,temp 
-04c4 2420b18c nbranch g24_type_error ,true 
+04fb 7858fc00 disable user7 
+04fc 280ffe2f isolate1 mark_ble_lr ,mark 
+04fd 2040b16f call g24_lr_receive_pdu_len ,true 
+04fe 2038b18a branch g24_lr_len_error ,user7 
+04ff 2040317d call g24_receive_byte 
+0500 67e0c4f7 store 1 ,mem_24g_rxbuf 
+0501 c5138506 bmark1 mark_24g_rxmode ,p_g24_receive_skip 
+0502 6fe0c4f7 fetch 1 ,mem_24g_rxbuf 
+0503 6848c589 fetcht 1 ,mem_24g_data_type 
+0504 a8400e00 icompare bits_data ,temp 
+0505 2420b18c nbranch g24_type_error ,true 
 
 p_g24_receive_skip:
-04c5 2040317d call g24_receive_byte 
-04c6 280ffe2f isolate1 mark_ble_lr ,mark 
-04c7 2040b178 call g24_lr_receive_payload_len ,true 
-04c8 e7e08005 istore 1 ,contw 
-04c9 1fe90400 rshift3 pdata ,temp 
-04ca 2feffe00 isolate1 0 ,pdata 
-04cb 204084d2 call p_g24_receive_payload_len_ext ,true 
-04cc 18427e00 copy temp ,pdata 
-04cd 1fe67c3f sub pdata ,0x3f ,null 
-04ce 2421318e nbranch g24_len_over_error ,positive 
-04cf 1fe27200 copy pdata ,loopcnt 
-04d0 2022b154 branch g24rx_nopayload ,zero 
-04d1 20203151 branch g24rx_loop 
+0506 2040317d call g24_receive_byte 
+0507 280ffe2f isolate1 mark_ble_lr ,mark 
+0508 2040b178 call g24_lr_receive_payload_len ,true 
+0509 e7e08005 istore 1 ,contw 
+050a 1fe90400 rshift3 pdata ,temp 
+050b 2feffe00 isolate1 0 ,pdata 
+050c 20408513 call p_g24_receive_payload_len_ext ,true 
+050d 18427e00 copy temp ,pdata 
+050e 1fe67c3f sub pdata ,0x3f ,null 
+050f 2421318e nbranch g24_len_over_error ,positive 
+0510 1fe27200 copy pdata ,loopcnt 
+0511 2022b154 branch g24rx_nopayload ,zero 
+0512 20203151 branch g24rx_loop 
 
 p_g24_receive_payload_len_ext:
-04d2 79200405 set1 5 ,temp 
-04d3 20600000 rtn 
+0513 79200405 set1 5 ,temp 
+0514 20600000 rtn 
 
 p_g24_receive_skip_end:
-04d4 6fe0c669 fetch 1 ,mem_dg_sys_config 
-04d5 c3003165 bbit0 dg_enable_new_revision ,g24_receive_skip_end + 1 
-04d6 7837fc00 enable user3 
-04d7 20000018 nop 24 
-04d8 6fe0c4f8 fetch 1 ,mem_24g_rxbuf + 1 
-04d9 79207e00 set1 bit_ack_24g ,pdata 
-04da 67e0c4f8 store 1 ,mem_24g_rxbuf + 1 
-04db 204033a5 call g24_ackpayload_prep 
-04dc 204031e5 call g24_transmit_prep 
-04dd 20203195 branch g24_transmit 
+0515 6fe0c669 fetch 1 ,mem_dg_sys_config 
+0516 c3003165 bbit0 dg_enable_new_revision ,g24_receive_skip_end + 1 
+0517 7837fc00 enable user3 
+0518 20000018 nop 24 
+0519 6fe0c4f8 fetch 1 ,mem_24g_rxbuf + 1 
+051a 79207e00 set1 bit_ack_24g ,pdata 
+051b 67e0c4f8 store 1 ,mem_24g_rxbuf + 1 
+051c 204033a5 call g24_ackpayload_prep 
+051d 204031e5 call g24_transmit_prep 
+051e 20203195 branch g24_transmit 
 
 p_g24_read_len_pid_crc:
-04de 6fe0c4f8 fetch 1 ,mem_24g_rxbuf + 1 
-04df 1fe90400 rshift3 pdata ,temp 
-04e0 2feffe00 isolate1 0 ,pdata 
-04e1 204084d2 call p_g24_receive_payload_len_ext ,true 
-04e2 18427e00 copy temp ,pdata 
-04e3 67e0c57d store 1 ,mem_24g_rxdata_length 
-04e4 1fe0fe01 increase 1 ,pdata 
-04e5 d8c044f8 arg mem_24g_rxbuf + 1 ,contr 
-04e6 98c08c00 iadd contr ,contr 
-04e7 efe18006 ifetch 3 ,contr 
-04e8 67e1c580 store 3 ,mem_24g_sta_crc 
-04e9 6fe0c4f8 fetch 1 ,mem_24g_rxbuf + 1 
-04ea 1fe37e00 rshift pdata ,pdata 
-04eb 1fe17e03 and pdata ,0x03 ,pdata 
-04ec 67e0c586 store 1 ,mem_24g_sta_pid 
-04ed 20600000 rtn 
+051f 6fe0c4f8 fetch 1 ,mem_24g_rxbuf + 1 
+0520 1fe90400 rshift3 pdata ,temp 
+0521 2feffe00 isolate1 0 ,pdata 
+0522 20408513 call p_g24_receive_payload_len_ext ,true 
+0523 18427e00 copy temp ,pdata 
+0524 67e0c57d store 1 ,mem_24g_rxdata_length 
+0525 1fe0fe01 increase 1 ,pdata 
+0526 d8c044f8 arg mem_24g_rxbuf + 1 ,contr 
+0527 98c08c00 iadd contr ,contr 
+0528 efe18006 ifetch 3 ,contr 
+0529 67e1c580 store 3 ,mem_24g_sta_crc 
+052a 6fe0c4f8 fetch 1 ,mem_24g_rxbuf + 1 
+052b 1fe37e00 rshift pdata ,pdata 
+052c 1fe17e03 and pdata ,0x03 ,pdata 
+052d 67e0c586 store 1 ,mem_24g_sta_pid 
+052e 20600000 rtn 
 
 p_g24_bind_data_process:
-04ee 204033be call g24_rx_interrupt_clear 
-04ef 20403119 call g24_receive_packet 
-04f0 2437b3be nbranch g24_rx_interrupt_clear ,user3 
-04f1 204004f5 call p_g24_bind_data_parse 
-04f2 20400039 call p_g24_transmit_ack 
-04f3 2040050b call p_g24_bind_device_status_check 
-04f4 20203316 branch g24_bind_data_process + 7 
+052f 204033be call g24_rx_interrupt_clear 
+0530 20403119 call g24_receive_packet 
+0531 2437b3be nbranch g24_rx_interrupt_clear ,user3 
+0532 20400536 call p_g24_bind_data_parse 
+0533 20400039 call p_g24_transmit_ack 
+0534 2040054c call p_g24_bind_device_status_check 
+0535 20203316 branch g24_bind_data_process + 7 
 
 p_g24_bind_data_parse:
-04f5 70462205 jam bind_mode_continue ,mem_24g_bind_mode_continue 
-04f6 d8c044f7 arg mem_24g_rxbuf ,contr 
-04f7 d8a04a45 arg mem_24g_rxdata_temp_new ,contw 
-04f8 20407c89 call memcpy8 
-04f9 6fe0ca47 fetch 1 ,mem_24g_rxdata_temp_new + 2 
-04fa c05504ff beq datatype_bind ,p_g24_bind_first_step 
-04fb c02a8501 beq datatype_config ,p_g24_bind_second_step 
-04fc c011046f beq datatype_ok ,p_g24_bind_third_step 
-04fd c07fb59b beq datatype_attemp ,g24_data_attemp 
-04fe 20600000 rtn 
+0536 70462205 jam bind_mode_continue ,mem_24g_bind_mode_continue 
+0537 d8c044f7 arg mem_24g_rxbuf ,contr 
+0538 d8a04a45 arg mem_24g_rxdata_temp_new ,contw 
+0539 20407c89 call memcpy8 
+053a 6fe0ca47 fetch 1 ,mem_24g_rxdata_temp_new + 2 
+053b c0550540 beq datatype_bind ,p_g24_bind_first_step 
+053c c02a8542 beq datatype_config ,p_g24_bind_second_step 
+053d c01104ae beq datatype_ok ,p_g24_bind_third_step 
+053e c07fb59b beq datatype_attemp ,g24_data_attemp 
+053f 20600000 rtn 
 
 p_g24_bind_first_step:
-04ff 6fe0ca48 fetch 1 ,mem_24g_rxdata_temp_new + 3 
-0500 2020332a branch g24_bind_first_step + 1 
+0540 6fe0ca48 fetch 1 ,mem_24g_rxdata_temp_new + 3 
+0541 2020332a branch g24_bind_first_step + 1 
 
 p_g24_bind_second_step:
-0501 6fe0c5ae fetch 1 ,mem_24g_pair_switch 
-0502 203a0507 branch p_g24_bind_second_step_skip ,blank 
-0503 6fe24a49 fetch 4 ,mem_24g_rxdata_temp_new + 4 
-0504 684a44f1 fetcht 4 ,mem_24g_lap 
-0505 98467c00 isub temp ,null 
-0506 24628000 nrtn zero 
+0542 6fe0c5ae fetch 1 ,mem_24g_pair_switch 
+0543 203a0548 branch p_g24_bind_second_step_skip ,blank 
+0544 6fe24a49 fetch 4 ,mem_24g_rxdata_temp_new + 4 
+0545 684a44f1 fetcht 4 ,mem_24g_lap 
+0546 98467c00 isub temp ,null 
+0547 24628000 nrtn zero 
 
 p_g24_bind_second_step_skip:
-0507 6fe0ca48 fetch 1 ,mem_24g_rxdata_temp_new + 3 
-0508 c000b344 beq datatype_device1 ,g24_bind_second_step_device1 
-0509 c0013351 beq datatype_device2 ,g24_bind_second_step_device2 
-050a 20600000 rtn 
+0548 6fe0ca48 fetch 1 ,mem_24g_rxdata_temp_new + 3 
+0549 c000b344 beq datatype_device1 ,g24_bind_second_step_device1 
+054a c0013351 beq datatype_device2 ,g24_bind_second_step_device2 
+054b 20600000 rtn 
 
 p_g24_bind_device_status_check:
-050b 6fe0c5d5 fetch 1 ,mem_24g_bind_device_status 
-050c 207a0000 rtn blank 
+054c 6fe0c5d5 fetch 1 ,mem_24g_bind_device_status 
+054d 207a0000 rtn blank 
 
 p_g24_bind_device_status:
-050d 6fe0ca48 fetch 1 ,mem_24g_rxdata_temp_new + 3 
-050e c000b38d beq datatype_device1 ,g24_binding_dvc1_living 
-050f c0013393 beq datatype_device2 ,g24_binding_dvc2_living 
-0510 20600000 rtn 
+054e 6fe0ca48 fetch 1 ,mem_24g_rxdata_temp_new + 3 
+054f c000b38d beq datatype_device1 ,g24_binding_dvc1_living 
+0550 c0013393 beq datatype_device2 ,g24_binding_dvc2_living 
+0551 20600000 rtn 
               org 0x2000
 
 start:
Index: program/patch.prog
===================================================================
--- /1121s/branch/dongle/1m/usb_1m_mingjian/program/patch.prog	(revision 3373)
+++ /1121s/branch/dongle/1m/usb_1m_mingjian/program/patch.prog	(working copy)
@@ -818,7 +818,9 @@
 
 	fetch 1,mem_usb_setup_wIndex+1
 	bne 0,usb0_force_stall
-	branch usb0_reply_zerolen	
+	branch usb0_reply_zerolen
+
+
 p_usb0_request_get_descriptor:
 	fetch 1,mem_usb_setup_bValueH
 	beq DSC_DEVICE,dsc_device_info
@@ -891,14 +893,28 @@
 	bbit1 DATATYPE_AUTHCA,p_g24_data_receive_heart_authca_audio
 	bbit1 DATATYPE_HEART,p_g24_data_receive_heart_authca_audio
 	bbit1 DATATYPE_PROTOCOL,p_g24_data_receive_heart_authca_audio
+	bbit1 DATATYPE_HTTP,p_g24_data_receive_http
 	branch g24_rx_interrupt_clear
 p_g24_data_receive_heart_authca_audio:
 	fetch 1,mem_24g_rxdata_temp_new+2
 	and pdata,0x0f,pdata
+p_g24_data_receive_check:
 	beq DATATYPE_DEVICE1,p_g24_data_device1
 	beq DATATYPE_DEVICE2,p_g24_data_device2
 	branch g24_rx_interrupt_clear
 
+p_g24_data_receive_http:
+	fetch 1,mem_24g_rxdata_temp_new+2
+	and pdata,0x0f,pdata
+	bbit1 DATATYPE_HTTP,p_usb_http_enable
+	branch p_g24_data_receive_check
+
+p_usb_http_enable:
+	jam 1,mem_usb_http_data_flag
+	jam USB_EP1_KB_HTTP,mem_usb_ep1_data
+	jam 1,mem_usb_http_data_step
+	rtn
+
 p_g24_data_receive_attemp:
 	call p_g24_bind_device_status		//works on auto pair only
 	branch p_g24_data_attemp
@@ -1197,7 +1213,95 @@
 	fetch 1,core_usb_txbusy
 	and_into 0x0f,pdata
 	nrtn blank
+	fetch 1,mem_usb_http_data_flag
+	nbranch p_usb_tx_http_data,blank
 	branch usb_tx_data_ep1+2
+
+p_usb_tx_http_data:
+	fetch 1,mem_usb_ep1_data
+	rtn blank
+	beq USB_EP1_KB_HTTP,p_usb_tx_http_data_set
+	beq USB_EP1_KB,usb_tx_kb_normal_data
+	branch assert
+
+p_usb_tx_http_data_set:
+	fetch 1,mem_usb_http_data_step
+	beq 1,p_usb_tx_http_step1			//send: win+r
+	beq 2,p_usb_tx_http_realse_1		//send: empty package
+	beq 3,p_usb_tx_http_wait_1			//wait
+	beq 4,p_usb_tx_http_step2			//send: https
+	beq 5,p_usb_tx_http_step3			//send: shift+":"
+	beq 6,p_usb_tx_http_realse_2		//send: empty package
+	beq 7,p_usb_tx_http_step4			//send: "//mofi"
+	beq 8,p_usb_tx_http_realse_3
+	beq 9,p_usb_tx_http_step5			//send: i.com/
+	beq 10,p_usb_tx_http_realse_4		//send: empty package
+	beq 11,p_usb_tx_http_step6		//send: ai+enter
+	beq 12,p_usb_tx_http_end
+	rtn
+
+p_usb_tx_http_step1:
+	jam 2,mem_usb_http_data_step
+	arg mem_usb_http_step1_data,contr
+p_usb_tx_ep1_set:
+	arg 8,loopcnt
+	branch usb_tx_ep1
+
+p_usb_tx_http_step2:
+	jam 5,mem_usb_http_data_step
+	arg mem_usb_http_step2_data,contr
+	branch p_usb_tx_ep1_set
+
+p_usb_tx_http_step3:
+	jam 6,mem_usb_http_data_step
+	arg mem_usb_http_step3_data,contr
+	branch p_usb_tx_ep1_set
+
+p_usb_tx_http_step4:
+	jam 8,mem_usb_http_data_step
+	arg mem_usb_http_step4_data,contr
+	branch p_usb_tx_ep1_set
+
+p_usb_tx_http_step5:
+	jam 10,mem_usb_http_data_step
+	arg mem_usb_http_step5_data,contr
+	branch p_usb_tx_ep1_set
+
+p_usb_tx_http_step6:
+	jam 12,mem_usb_http_data_step
+	arg mem_usb_http_step6_data,contr
+	branch p_usb_tx_ep1_set
+
+p_usb_tx_http_wait_1:
+	jam 4,mem_usb_http_data_step
+	rtn
+
+p_usb_tx_http_realse_1:
+	jam 3,mem_usb_http_data_step
+	branch p_usb_tx_http_realse
+
+p_usb_tx_http_realse_2:
+	jam 7,mem_usb_http_data_step
+	branch p_usb_tx_http_realse
+
+p_usb_tx_http_realse_3:
+	jam 9,mem_usb_http_data_step
+	branch p_usb_tx_http_realse
+
+p_usb_tx_http_realse_4:
+	jam 11,mem_usb_http_data_step
+p_usb_tx_http_realse:
+	arg mem_usb_http_step_empty_data,contr
+	branch p_usb_tx_ep1_set
+
+p_usb_tx_http_end:
+	jam 0,mem_usb_http_data_step
+	jam 0,mem_usb_http_data_flag
+	branch p_usb_tx_http_realse
+
+
+	
+
 p_usb_tx_data_ep2:
 	fetch 1,core_usb_txbusy
 	and_into 0x0f,pdata
@@ -1552,6 +1656,8 @@
 
 	fetch 1,mem_24g_pair_tx_power_init
 	store 1,mem_24g_pair_tx_power
+	setarg 0
+	store 2,mem_usb_http_data_flag
 
 	jam ON,mem_24g_disable_fec1
 	call g24_enable_1M
Index: sched/dongle.dat
===================================================================
--- /1121s/branch/dongle/1m/usb_1m_mingjian/sched/dongle.dat	(revision 3370)
+++ /1121s/branch/dongle/1m/usb_1m_mingjian/sched/dongle.dat	(working copy)
@@ -11,7 +11,7 @@
 #bit4:enable kb icon
 #bit3:enable 24g 2M
 #bit2-0:retention
-mem_dg_sys_config:00  #24M
+mem_dg_sys_config:10  #24M
 
 #24g new process #default value 00,if need new process set value 01
 #mem_24g_disable_fec1:00
@@ -62,15 +62,30 @@
 #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_http_step1_data:08 00 15 00 00 00 00 00		#win+r
+mem_usb_http_step2_data:00 00 0b 17 17 13 16 00		#https
+mem_usb_http_step3_data:02 00 33 00 00 00 00 00		#shift+":"
+mem_usb_http_step4_data:00 00 38 38 10 12 09 0c		#//mofi
+mem_usb_http_step5_data:00 00 0c 37 06 12 10 38		#i.com/
+mem_usb_http_step6_data:00 00 04 0c 28 00 00 00		#ai+enter
+mem_usb_http_step_empty_data:00 00 00 00 00 00 00 00
+
 mem_config_new:
 42 09 02 42 00 02 01 00 A0 32 
 09 04 00 00 01 03 01 01 00 
-09 21 00 02 00 01 22 1A 00 
+09 21 00 02 00 01 22 3f 00 
 07 05 81 03 40 00 02 09 04 
 01 00 02 03 01 02 00 09 21 
-00 02 00 01 22 DB 00 07 05 
-82 03 40 00 02 07 05 02 03 
-40 00 02 
+00 02 00 01 22 db 00 07 05 
+82 03 40 00 02 
+07 05 02 03 40 00 02
+#usb 1m config
+#3b 09 02 3b 00 02 01 00 a0 32 09 04 00 00 01 03 01 01
+#00 09 21 00 02 00 01 22 
+#3f 00 07 05 81 03 40 00 02 09 04 01 00 
+#01 03 01 02 00 09 21 00 02 00 01
+#22 a3 00 07 05 82 03 40 00 02
 
 mem_usb_ep2_config:
 DB 05 01 09 02 A1 01 85 01 09 
