Index: format/app_dongle.format
===================================================================
--- /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/format/app_dongle.format	(revision 4373)
+++ /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/format/app_dongle.format	(working copy)
@@ -45,7 +45,7 @@
 2 mem_usb_get_report_dpi_data
 1 mem_usb_get_report_battery_data
 2 mem_usb_get_report_mouse_version_data
-4 mem_usb_get_report_code_data
+2 mem_usb_get_report_code_data
 2 mem_dongle_version
 1 mem_dongle_app_data
 1 mem_dongle_connect_mouse_flag
Index: output/eeprom.dat
===================================================================
--- /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/output/eeprom.dat	(revision 4373)
+++ /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/output/eeprom.dat	(working copy)
@@ -1122,24 +1122,24 @@
 00
 70
 48
-57
+55
 40
 70
 48
-58
+56
 a1
 70
 48
-59
+57
 02
 70
 48
-5a
+58
 01
 70
 48
-5b
-0e
+59
+0c
 6f
 e3
 47
@@ -1147,7 +1147,7 @@
 67
 e3
 48
-5c
+5a
 6f
 e1
 48
@@ -1155,23 +1155,23 @@
 67
 e1
 48
-62
+60
 6f
 e1
 48
-0e
+0c
 67
 e1
 48
-64
+62
 6f
-e2
+e1
 48
 0a
 67
-e2
+e1
 48
-66
+64
 70
 09
 0c
@@ -1182,27 +1182,27 @@
 84
 70
 48
-9e
+9c
 01
 70
 48
-98
+96
 40
 70
 48
-99
+97
 a1
 70
 48
-9a
+98
 02
 70
 48
-9b
+99
 02
 70
 48
-9c
+9a
 01
 6f
 e0
@@ -1211,7 +1211,7 @@
 67
 e0
 c8
-9d
+9b
 70
 09
 0c
@@ -1222,23 +1222,23 @@
 84
 70
 48
-57
+55
 40
 70
 48
-58
+56
 a1
 70
 48
-59
+57
 02
 70
 48
-5a
+58
 03
 70
 48
-5b
+59
 06
 6f
 e3
@@ -1247,7 +1247,7 @@
 67
 e3
 48
-5c
+5a
 70
 09
 0c
@@ -1258,27 +1258,27 @@
 84
 70
 48
-df
+dd
 01
 70
 48
-d9
+d7
 40
 70
 48
-da
+d8
 a1
 70
 48
-db
+d9
 02
 70
 48
-dc
+da
 06
 70
 48
-dd
+db
 01
 6f
 e0
@@ -1287,7 +1287,7 @@
 67
 e0
 c8
-de
+dc
 70
 09
 0c
@@ -1298,23 +1298,23 @@
 84
 70
 48
-57
+55
 40
 70
 48
-58
+56
 a1
 70
 48
-59
+57
 02
 70
 48
-5a
+58
 08
 70
 48
-5b
+59
 00
 70
 09
@@ -1326,23 +1326,23 @@
 84
 70
 49
-1a
+18
 40
 70
 49
-1b
+19
 a1
 70
 49
-1c
+1a
 02
 70
 49
-1d
+1b
 04
 70
 49
-1e
+1c
 01
 70
 09
@@ -1355,7 +1355,7 @@
 6f
 e0
 c8
-11
+0f
 c0
 00
 01
@@ -1370,27 +1370,27 @@
 00
 70
 48
-16
+14
 40
 70
 48
-17
+15
 a1
 70
 48
-18
+16
 02
 70
 48
-19
+17
 05
 70
 48
-1a
+18
 01
 70
 48
-1b
+19
 01
 70
 09
@@ -1402,27 +1402,27 @@
 84
 70
 48
-16
+14
 40
 70
 48
-17
+15
 a1
 70
 48
-18
+16
 02
 70
 48
-19
+17
 05
 70
 48
-1a
+18
 01
 70
 48
-1b
+19
 00
 70
 09
@@ -1959,7 +1959,7 @@
 da
 20
 49
-5b
+59
 20
 40
 7d
@@ -2031,7 +2031,7 @@
 6f
 e0
 c9
-76
+74
 24
 5a
 01
@@ -2059,14 +2059,14 @@
 6f
 e0
 c8
-11
+0f
 24
 7a
 00
 00
 70
 48
-11
+0f
 01
 20
 60
@@ -2083,7 +2083,7 @@
 67
 e1
 48
-12
+10
 6f
 e0
 c5
@@ -2295,19 +2295,19 @@
 67
 e3
 c9
-64
+62
 6f
 e0
 c9
-64
+62
 68
 48
 c9
-6b
+69
 67
 e0
 c9
-6b
+69
 98
 46
 7c
@@ -2327,7 +2327,7 @@
 6f
 e3
 49
-65
+63
 20
 7a
 00
@@ -2347,7 +2347,7 @@
 67
 e0
 c9
-1f
+1d
 20
 20
 01
@@ -2359,7 +2359,7 @@
 68
 48
 c8
-10
+0e
 98
 46
 7c
@@ -2371,11 +2371,11 @@
 67
 e0
 c8
-10
+0e
 6f
 e0
 c8
-10
+0e
 c1
 ff
 80
@@ -2399,7 +2399,7 @@
 68
 48
 c8
-14
+12
 98
 46
 7c
@@ -2415,7 +2415,7 @@
 68
 48
 c8
-15
+13
 98
 46
 7c
@@ -2435,7 +2435,7 @@
 67
 e0
 c8
-14
+12
 20
 20
 01
@@ -2447,7 +2447,7 @@
 67
 e0
 c8
-15
+13
 c0
 2a
 82
@@ -2463,7 +2463,7 @@
 6f
 e0
 c9
-1f
+1d
 79
 3f
 fe
@@ -2475,7 +2475,7 @@
 6f
 e0
 c9
-1f
+1d
 79
 20
 7e
@@ -2483,7 +2483,7 @@
 67
 e0
 c9
-1f
+1d
 20
 20
 01
@@ -2537,11 +2537,11 @@
 48
 05
 6f
-e2
+e1
 45
 f6
 67
-e2
+e1
 48
 0a
 20
@@ -2591,7 +2591,7 @@
 da
 20
 49
-5b
+59
 20
 40
 7d
@@ -2611,7 +2611,7 @@
 da
 20
 49
-5b
+59
 20
 20
 7d
@@ -2671,7 +2671,7 @@
 6f
 e0
 c9
-76
+74
 c0
 00
 02
@@ -2718,7 +2718,7 @@
 00
 70
 49
-76
+74
 01
 20
 20
@@ -2727,11 +2727,11 @@
 df
 e0
 49
-7c
+7a
 67
 e1
 49
-79
+77
 6f
 e0
 88
@@ -2750,12 +2750,12 @@
 00
 70
 49
-76
+74
 02
 6f
 e1
 c9
-6c
+6a
 67
 e1
 89
@@ -2766,12 +2766,12 @@
 28
 70
 49
-76
+74
 02
 6f
 e1
 c9
-6f
+6d
 67
 e1
 89
@@ -2782,12 +2782,12 @@
 28
 70
 49
-76
+74
 03
 6f
 e0
 c9
-6c
+6a
 67
 e0
 89
@@ -2798,7 +2798,7 @@
 28
 70
 49
-76
+74
 04
 d8
 a0
@@ -2814,7 +2814,7 @@
 a3
 70
 49
-78
+76
 00
 20
 20
@@ -2822,12 +2822,12 @@
 28
 70
 49
-76
+74
 07
 6f
 e1
 c9
-72
+70
 67
 e1
 89
@@ -2838,7 +2838,7 @@
 28
 70
 49
-76
+74
 08
 20
 20
@@ -2846,7 +2846,7 @@
 bb
 70
 49
-76
+74
 09
 20
 20
@@ -2854,7 +2854,7 @@
 c1
 70
 49
-76
+74
 00
 20
 20
@@ -2863,7 +2863,7 @@
 6f
 e0
 c9
-75
+73
 1f
 e0
 fe
@@ -2871,18 +2871,18 @@
 67
 e0
 c9
-75
+73
 c1
 87
 80
 00
 70
 49
-75
+73
 00
 70
 49
-76
+74
 05
 20
 60
@@ -2891,7 +2891,7 @@
 6f
 e0
 c9
-78
+76
 c0
 00
 82
@@ -2906,7 +2906,7 @@
 00
 70
 49
-76
+74
 06
 20
 60
@@ -2915,11 +2915,11 @@
 d8
 40
 49
-7c
+7a
 6f
 e0
 c9
-7b
+79
 98
 40
 84
@@ -2927,7 +2927,7 @@
 6f
 e1
 49
-79
+77
 98
 46
 7c
@@ -2947,7 +2947,7 @@
 6f
 e0
 c9
-77
+75
 67
 e0
 89
@@ -2959,7 +2959,7 @@
 6f
 e1
 49
-79
+77
 1f
 e0
 fe
@@ -2967,10 +2967,10 @@
 67
 e1
 49
-79
+77
 70
 49
-78
+76
 01
 20
 20
@@ -2979,7 +2979,7 @@
 68
 49
 49
-79
+77
 ef
 e0
 80
@@ -3114,12 +3114,12 @@
 00
 70
 49
-77
+75
 00
 6f
 e1
 49
-79
+77
 ef
 e0
 80
@@ -3127,11 +3127,11 @@
 d8
 c0
 49
-a4
+a2
 68
 48
 c9
-a3
+a1
 18
 42
 72
@@ -3158,7 +3158,7 @@
 00
 70
 49
-77
+75
 02
 20
 60
@@ -3167,7 +3167,7 @@
 da
 20
 49
-5b
+59
 20
 40
 7d
@@ -3211,7 +3211,7 @@
 da
 20
 49
-5b
+59
 20
 40
 7d
@@ -3267,7 +3267,7 @@
 6f
 e0
 c8
-16
+14
 20
 7a
 00
@@ -3279,7 +3279,7 @@
 d8
 c0
 48
-17
+15
 20
 40
 7b
@@ -3287,7 +3287,7 @@
 d8
 a0
 48
-16
+14
 20
 20
 03
@@ -3295,7 +3295,7 @@
 6f
 e0
 c8
-57
+55
 20
 7a
 00
@@ -3307,7 +3307,7 @@
 d8
 c0
 48
-58
+56
 20
 40
 7b
@@ -3315,7 +3315,7 @@
 d8
 a0
 48
-57
+55
 df
 20
 00
@@ -3327,7 +3327,7 @@
 6f
 e0
 c8
-98
+96
 20
 7a
 00
@@ -3339,7 +3339,7 @@
 d8
 c0
 48
-99
+97
 20
 40
 7b
@@ -3347,7 +3347,7 @@
 d8
 a0
 48
-98
+96
 20
 20
 03
@@ -3355,7 +3355,7 @@
 6f
 e0
 c8
-d9
+d7
 20
 7a
 00
@@ -3367,7 +3367,7 @@
 d8
 c0
 48
-da
+d8
 20
 40
 7b
@@ -3375,7 +3375,7 @@
 d8
 a0
 48
-d9
+d7
 20
 20
 03
@@ -3383,7 +3383,7 @@
 6f
 e0
 c9
-1a
+18
 20
 7a
 00
@@ -3395,7 +3395,7 @@
 d8
 c0
 49
-1b
+19
 20
 40
 7b
@@ -3403,7 +3403,7 @@
 d8
 a0
 49
-1a
+18
 20
 20
 03
@@ -4235,7 +4235,7 @@
 6f
 e0
 c9
-76
+74
 20
 7a
 00
@@ -4255,7 +4255,7 @@
 6f
 e0
 c8
-11
+0f
 20
 7a
 00
@@ -4263,7 +4263,7 @@
 6f
 e1
 48
-12
+10
 1f
 e0
 fe
@@ -4271,7 +4271,7 @@
 67
 e1
 48
-12
+10
 d8
 40
 04
@@ -4291,18 +4291,18 @@
 67
 e1
 48
-12
+10
 6f
 e0
 c8
-11
+0f
 20
 7a
 00
 00
 70
 48
-11
+0f
 00
 20
 60
@@ -4380,8 +4380,8 @@
 20
 31
 95
-d5
-5a
+0a
+6b
 aa
 55
 40
@@ -4819,7 +4819,7 @@
 55
 02
 00
-0e
+0c
 48
 08
 00
@@ -4827,7 +4827,7 @@
 55
 09
 00
-6c
+6a
 49
 08
 00
@@ -4842,9 +4842,9 @@
 55
 11
 00
-79
+77
 49
-7c
+7a
 49
 0e
 77
@@ -4865,7 +4865,7 @@
 55
 16
 00
-a3
+a1
 49
 15
 7e
@@ -5081,10 +5081,10 @@
 aa
 aa
 55
-ed
+e3
 96
 d8
-6a
+47
 ff
 ff
 ff
Index: output/memmap.format
===================================================================
--- /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/output/memmap.format	(revision 4373)
+++ /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/output/memmap.format	(working copy)
@@ -1499,30 +1499,30 @@
 0x4807 mem_usb_get_report_battery_data
 0x4808 mem_usb_get_report_mouse_version_data
 0x480a mem_usb_get_report_code_data
-0x480e mem_dongle_version
-0x4810 mem_dongle_app_data
-0x4811 mem_dongle_connect_mouse_flag
-0x4812 mem_dongle_no_data_count
-0x4814 mem_dongle_receive_dpi_data
-0x4816 mem_usb_rf_state_data
-0x4857 mem_dongle_usb_ep2_data
-0x4898 mem_usb_dpi_info_data
-0x48d9 mem_usb_battery_info_data
-0x491a mem_usb_key_info_data
-0x495b mem_usb_ep2_fifo
-0x4963 mem_dongle_freq_hop_flag
-0x4964 mem_dg_mouse_data
-0x496b mem_dg_mouse_key_data_last
-0x496c mem_usb_win_cmd
-0x496f mem_usb_mac_cmd
-0x4972 mem_usb_kb_enter
-0x4975 mem_usb_website_wait_count
-0x4976 mem_usb_website_step
-0x4977 mem_usb_website_shift_flag
-0x4978 mem_usb_website_release_flag
-0x4979 mem_usb_website_ptr
-0x497b mem_usb_website_info
-0x49a3 mem_usb_website_info_sign
+0x480c mem_dongle_version
+0x480e mem_dongle_app_data
+0x480f mem_dongle_connect_mouse_flag
+0x4810 mem_dongle_no_data_count
+0x4812 mem_dongle_receive_dpi_data
+0x4814 mem_usb_rf_state_data
+0x4855 mem_dongle_usb_ep2_data
+0x4896 mem_usb_dpi_info_data
+0x48d7 mem_usb_battery_info_data
+0x4918 mem_usb_key_info_data
+0x4959 mem_usb_ep2_fifo
+0x4961 mem_dongle_freq_hop_flag
+0x4962 mem_dg_mouse_data
+0x4969 mem_dg_mouse_key_data_last
+0x496a mem_usb_win_cmd
+0x496d mem_usb_mac_cmd
+0x4970 mem_usb_kb_enter
+0x4973 mem_usb_website_wait_count
+0x4974 mem_usb_website_step
+0x4975 mem_usb_website_shift_flag
+0x4976 mem_usb_website_release_flag
+0x4977 mem_usb_website_ptr
+0x4979 mem_usb_website_info
+0x49a1 mem_usb_website_info_sign
 0x45d3 mem_rssi_hex_received
 0x45d4 mem_24g_pair_sm
 0x45d5 mem_24g_pair_no_ack
Index: output/otp.dat
===================================================================
--- /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/output/otp.dat	(revision 4373)
+++ /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/output/otp.dat	(working copy)
@@ -1131,24 +1131,24 @@
 00
 70
 48
-57
+55
 40
 70
 48
-58
+56
 a1
 70
 48
-59
+57
 02
 70
 48
-5a
+58
 01
 70
 48
-5b
-0e
+59
+0c
 6f
 e3
 47
@@ -1156,7 +1156,7 @@
 67
 e3
 48
-5c
+5a
 6f
 e1
 48
@@ -1164,23 +1164,23 @@
 67
 e1
 48
-62
+60
 6f
 e1
 48
-0e
+0c
 67
 e1
 48
-64
+62
 6f
-e2
+e1
 48
 0a
 67
-e2
+e1
 48
-66
+64
 70
 09
 0c
@@ -1191,27 +1191,27 @@
 84
 70
 48
-9e
+9c
 01
 70
 48
-98
+96
 40
 70
 48
-99
+97
 a1
 70
 48
-9a
+98
 02
 70
 48
-9b
+99
 02
 70
 48
-9c
+9a
 01
 6f
 e0
@@ -1220,7 +1220,7 @@
 67
 e0
 c8
-9d
+9b
 70
 09
 0c
@@ -1231,23 +1231,23 @@
 84
 70
 48
-57
+55
 40
 70
 48
-58
+56
 a1
 70
 48
-59
+57
 02
 70
 48
-5a
+58
 03
 70
 48
-5b
+59
 06
 6f
 e3
@@ -1256,7 +1256,7 @@
 67
 e3
 48
-5c
+5a
 70
 09
 0c
@@ -1267,27 +1267,27 @@
 84
 70
 48
-df
+dd
 01
 70
 48
-d9
+d7
 40
 70
 48
-da
+d8
 a1
 70
 48
-db
+d9
 02
 70
 48
-dc
+da
 06
 70
 48
-dd
+db
 01
 6f
 e0
@@ -1296,7 +1296,7 @@
 67
 e0
 c8
-de
+dc
 70
 09
 0c
@@ -1307,23 +1307,23 @@
 84
 70
 48
-57
+55
 40
 70
 48
-58
+56
 a1
 70
 48
-59
+57
 02
 70
 48
-5a
+58
 08
 70
 48
-5b
+59
 00
 70
 09
@@ -1335,23 +1335,23 @@
 84
 70
 49
-1a
+18
 40
 70
 49
-1b
+19
 a1
 70
 49
-1c
+1a
 02
 70
 49
-1d
+1b
 04
 70
 49
-1e
+1c
 01
 70
 09
@@ -1364,7 +1364,7 @@
 6f
 e0
 c8
-11
+0f
 c0
 00
 01
@@ -1379,27 +1379,27 @@
 00
 70
 48
-16
+14
 40
 70
 48
-17
+15
 a1
 70
 48
-18
+16
 02
 70
 48
-19
+17
 05
 70
 48
-1a
+18
 01
 70
 48
-1b
+19
 01
 70
 09
@@ -1411,27 +1411,27 @@
 84
 70
 48
-16
+14
 40
 70
 48
-17
+15
 a1
 70
 48
-18
+16
 02
 70
 48
-19
+17
 05
 70
 48
-1a
+18
 01
 70
 48
-1b
+19
 00
 70
 09
@@ -1968,7 +1968,7 @@
 da
 20
 49
-5b
+59
 20
 40
 7d
@@ -2040,7 +2040,7 @@
 6f
 e0
 c9
-76
+74
 24
 5a
 01
@@ -2068,14 +2068,14 @@
 6f
 e0
 c8
-11
+0f
 24
 7a
 00
 00
 70
 48
-11
+0f
 01
 20
 60
@@ -2092,7 +2092,7 @@
 67
 e1
 48
-12
+10
 6f
 e0
 c5
@@ -2304,19 +2304,19 @@
 67
 e3
 c9
-64
+62
 6f
 e0
 c9
-64
+62
 68
 48
 c9
-6b
+69
 67
 e0
 c9
-6b
+69
 98
 46
 7c
@@ -2336,7 +2336,7 @@
 6f
 e3
 49
-65
+63
 20
 7a
 00
@@ -2356,7 +2356,7 @@
 67
 e0
 c9
-1f
+1d
 20
 20
 01
@@ -2368,7 +2368,7 @@
 68
 48
 c8
-10
+0e
 98
 46
 7c
@@ -2380,11 +2380,11 @@
 67
 e0
 c8
-10
+0e
 6f
 e0
 c8
-10
+0e
 c1
 ff
 80
@@ -2408,7 +2408,7 @@
 68
 48
 c8
-14
+12
 98
 46
 7c
@@ -2424,7 +2424,7 @@
 68
 48
 c8
-15
+13
 98
 46
 7c
@@ -2444,7 +2444,7 @@
 67
 e0
 c8
-14
+12
 20
 20
 01
@@ -2456,7 +2456,7 @@
 67
 e0
 c8
-15
+13
 c0
 2a
 82
@@ -2472,7 +2472,7 @@
 6f
 e0
 c9
-1f
+1d
 79
 3f
 fe
@@ -2484,7 +2484,7 @@
 6f
 e0
 c9
-1f
+1d
 79
 20
 7e
@@ -2492,7 +2492,7 @@
 67
 e0
 c9
-1f
+1d
 20
 20
 01
@@ -2546,11 +2546,11 @@
 48
 05
 6f
-e2
+e1
 45
 f6
 67
-e2
+e1
 48
 0a
 20
@@ -2600,7 +2600,7 @@
 da
 20
 49
-5b
+59
 20
 40
 7d
@@ -2620,7 +2620,7 @@
 da
 20
 49
-5b
+59
 20
 20
 7d
@@ -2680,7 +2680,7 @@
 6f
 e0
 c9
-76
+74
 c0
 00
 02
@@ -2727,7 +2727,7 @@
 00
 70
 49
-76
+74
 01
 20
 20
@@ -2736,11 +2736,11 @@
 df
 e0
 49
-7c
+7a
 67
 e1
 49
-79
+77
 6f
 e0
 88
@@ -2759,12 +2759,12 @@
 00
 70
 49
-76
+74
 02
 6f
 e1
 c9
-6c
+6a
 67
 e1
 89
@@ -2775,12 +2775,12 @@
 28
 70
 49
-76
+74
 02
 6f
 e1
 c9
-6f
+6d
 67
 e1
 89
@@ -2791,12 +2791,12 @@
 28
 70
 49
-76
+74
 03
 6f
 e0
 c9
-6c
+6a
 67
 e0
 89
@@ -2807,7 +2807,7 @@
 28
 70
 49
-76
+74
 04
 d8
 a0
@@ -2823,7 +2823,7 @@
 a3
 70
 49
-78
+76
 00
 20
 20
@@ -2831,12 +2831,12 @@
 28
 70
 49
-76
+74
 07
 6f
 e1
 c9
-72
+70
 67
 e1
 89
@@ -2847,7 +2847,7 @@
 28
 70
 49
-76
+74
 08
 20
 20
@@ -2855,7 +2855,7 @@
 bb
 70
 49
-76
+74
 09
 20
 20
@@ -2863,7 +2863,7 @@
 c1
 70
 49
-76
+74
 00
 20
 20
@@ -2872,7 +2872,7 @@
 6f
 e0
 c9
-75
+73
 1f
 e0
 fe
@@ -2880,18 +2880,18 @@
 67
 e0
 c9
-75
+73
 c1
 87
 80
 00
 70
 49
-75
+73
 00
 70
 49
-76
+74
 05
 20
 60
@@ -2900,7 +2900,7 @@
 6f
 e0
 c9
-78
+76
 c0
 00
 82
@@ -2915,7 +2915,7 @@
 00
 70
 49
-76
+74
 06
 20
 60
@@ -2924,11 +2924,11 @@
 d8
 40
 49
-7c
+7a
 6f
 e0
 c9
-7b
+79
 98
 40
 84
@@ -2936,7 +2936,7 @@
 6f
 e1
 49
-79
+77
 98
 46
 7c
@@ -2956,7 +2956,7 @@
 6f
 e0
 c9
-77
+75
 67
 e0
 89
@@ -2968,7 +2968,7 @@
 6f
 e1
 49
-79
+77
 1f
 e0
 fe
@@ -2976,10 +2976,10 @@
 67
 e1
 49
-79
+77
 70
 49
-78
+76
 01
 20
 20
@@ -2988,7 +2988,7 @@
 68
 49
 49
-79
+77
 ef
 e0
 80
@@ -3123,12 +3123,12 @@
 00
 70
 49
-77
+75
 00
 6f
 e1
 49
-79
+77
 ef
 e0
 80
@@ -3136,11 +3136,11 @@
 d8
 c0
 49
-a4
+a2
 68
 48
 c9
-a3
+a1
 18
 42
 72
@@ -3167,7 +3167,7 @@
 00
 70
 49
-77
+75
 02
 20
 60
@@ -3176,7 +3176,7 @@
 da
 20
 49
-5b
+59
 20
 40
 7d
@@ -3220,7 +3220,7 @@
 da
 20
 49
-5b
+59
 20
 40
 7d
@@ -3276,7 +3276,7 @@
 6f
 e0
 c8
-16
+14
 20
 7a
 00
@@ -3288,7 +3288,7 @@
 d8
 c0
 48
-17
+15
 20
 40
 7b
@@ -3296,7 +3296,7 @@
 d8
 a0
 48
-16
+14
 20
 20
 03
@@ -3304,7 +3304,7 @@
 6f
 e0
 c8
-57
+55
 20
 7a
 00
@@ -3316,7 +3316,7 @@
 d8
 c0
 48
-58
+56
 20
 40
 7b
@@ -3324,7 +3324,7 @@
 d8
 a0
 48
-57
+55
 df
 20
 00
@@ -3336,7 +3336,7 @@
 6f
 e0
 c8
-98
+96
 20
 7a
 00
@@ -3348,7 +3348,7 @@
 d8
 c0
 48
-99
+97
 20
 40
 7b
@@ -3356,7 +3356,7 @@
 d8
 a0
 48
-98
+96
 20
 20
 03
@@ -3364,7 +3364,7 @@
 6f
 e0
 c8
-d9
+d7
 20
 7a
 00
@@ -3376,7 +3376,7 @@
 d8
 c0
 48
-da
+d8
 20
 40
 7b
@@ -3384,7 +3384,7 @@
 d8
 a0
 48
-d9
+d7
 20
 20
 03
@@ -3392,7 +3392,7 @@
 6f
 e0
 c9
-1a
+18
 20
 7a
 00
@@ -3404,7 +3404,7 @@
 d8
 c0
 49
-1b
+19
 20
 40
 7b
@@ -3412,7 +3412,7 @@
 d8
 a0
 49
-1a
+18
 20
 20
 03
@@ -4244,7 +4244,7 @@
 6f
 e0
 c9
-76
+74
 20
 7a
 00
@@ -4264,7 +4264,7 @@
 6f
 e0
 c8
-11
+0f
 20
 7a
 00
@@ -4272,7 +4272,7 @@
 6f
 e1
 48
-12
+10
 1f
 e0
 fe
@@ -4280,7 +4280,7 @@
 67
 e1
 48
-12
+10
 d8
 40
 04
@@ -4300,18 +4300,18 @@
 67
 e1
 48
-12
+10
 6f
 e0
 c8
-11
+0f
 20
 7a
 00
 00
 70
 48
-11
+0f
 00
 20
 60
@@ -4389,8 +4389,8 @@
 20
 31
 95
-d5
-5a
+0a
+6b
 aa
 55
 40
@@ -4828,7 +4828,7 @@
 55
 02
 00
-0e
+0c
 48
 08
 00
@@ -4836,7 +4836,7 @@
 55
 09
 00
-6c
+6a
 49
 08
 00
@@ -4851,9 +4851,9 @@
 55
 11
 00
-79
+77
 49
-7c
+7a
 49
 0e
 77
@@ -4874,7 +4874,7 @@
 55
 16
 00
-a3
+a1
 49
 15
 7e
@@ -5090,8 +5090,8 @@
 aa
 aa
 55
-ed
+e3
 96
 d8
-6a
+47
 f0
Index: output/program.lis
===================================================================
--- /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/output/program.lis	(revision 4373)
+++ /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/output/program.lis	(working copy)
@@ -339,102 +339,102 @@
 0116 20600000 rtn 
 
 p_dongle_usb_hci_cmd_get_deivce_info:
-0117 70485740 jam 0x40 ,mem_dongle_usb_ep2_data 
-0118 704858a1 jam report_id_data_in ,mem_dongle_usb_ep2_data + 1 
-0119 70485902 jam 0x02 ,mem_dongle_usb_ep2_data + 2 
-011a 70485a01 jam 0x01 ,mem_dongle_usb_ep2_data + 3 
-011b 70485b0e jam 0x0e ,mem_dongle_usb_ep2_data + 4 
+0117 70485540 jam 0x40 ,mem_dongle_usb_ep2_data 
+0118 704856a1 jam report_id_data_in ,mem_dongle_usb_ep2_data + 1 
+0119 70485702 jam 0x02 ,mem_dongle_usb_ep2_data + 2 
+011a 70485801 jam 0x01 ,mem_dongle_usb_ep2_data + 3 
+011b 7048590c jam 0x0c ,mem_dongle_usb_ep2_data + 4 
 011c 6fe347ff fetch 6 ,mem_usb_get_report_sn_data 
-011d 67e3485c store 6 ,mem_dongle_usb_ep2_data + 5 
+011d 67e3485a store 6 ,mem_dongle_usb_ep2_data + 5 
 011e 6fe14808 fetch 2 ,mem_usb_get_report_mouse_version_data 
-011f 67e14862 store 2 ,mem_dongle_usb_ep2_data + 11 
-0120 6fe1480e fetch 2 ,mem_dongle_version 
-0121 67e14864 store 2 ,mem_dongle_usb_ep2_data + 13 
-0122 6fe2480a fetch 4 ,mem_usb_get_report_code_data 
-0123 67e24866 store 4 ,mem_dongle_usb_ep2_data + 15 
+011f 67e14860 store 2 ,mem_dongle_usb_ep2_data + 11 
+0120 6fe1480c fetch 2 ,mem_dongle_version 
+0121 67e14862 store 2 ,mem_dongle_usb_ep2_data + 13 
+0122 6fe1480a fetch 2 ,mem_usb_get_report_code_data 
+0123 67e14864 store 2 ,mem_dongle_usb_ep2_data + 15 
 0124 70090c23 jam usb_ep2_device_info ,mem_usb_ep2_data 
 0125 20200284 branch p_dongle_usb_tx_enable_ep2 
 
 p_dongle_usb_hci_cmd_get_dpi:
-0126 70489e01 jam 0x01 ,mem_usb_dpi_info_data + 6 
+0126 70489c01 jam 0x01 ,mem_usb_dpi_info_data + 6 
 
 p_dongle_usb_tx_ep2_dpi_data:
-0127 70489840 jam 0x40 ,mem_usb_dpi_info_data 
-0128 704899a1 jam report_id_data_in ,mem_usb_dpi_info_data + 1 
-0129 70489a02 jam 0x02 ,mem_usb_dpi_info_data + 2 
-012a 70489b02 jam 0x02 ,mem_usb_dpi_info_data + 3 
-012b 70489c01 jam 0x01 ,mem_usb_dpi_info_data + 4 
+0127 70489640 jam 0x40 ,mem_usb_dpi_info_data 
+0128 704897a1 jam report_id_data_in ,mem_usb_dpi_info_data + 1 
+0129 70489802 jam 0x02 ,mem_usb_dpi_info_data + 2 
+012a 70489902 jam 0x02 ,mem_usb_dpi_info_data + 3 
+012b 70489a01 jam 0x01 ,mem_usb_dpi_info_data + 4 
 012c 6fe0c805 fetch 1 ,mem_usb_get_report_dpi_data 
-012d 67e0c89d store 1 ,mem_usb_dpi_info_data + 5 
+012d 67e0c89b store 1 ,mem_usb_dpi_info_data + 5 
 012e 70090c24 jam usb_ep2_dpi ,mem_usb_ep2_data 
 012f 20200284 branch p_dongle_usb_tx_enable_ep2 
 
 p_dongle_usb_hci_cmd_get_sn:
-0130 70485740 jam 0x40 ,mem_dongle_usb_ep2_data 
-0131 704858a1 jam report_id_data_in ,mem_dongle_usb_ep2_data + 1 
-0132 70485902 jam 0x02 ,mem_dongle_usb_ep2_data + 2 
-0133 70485a03 jam 0x03 ,mem_dongle_usb_ep2_data + 3 
-0134 70485b06 jam 0x06 ,mem_dongle_usb_ep2_data + 4 
+0130 70485540 jam 0x40 ,mem_dongle_usb_ep2_data 
+0131 704856a1 jam report_id_data_in ,mem_dongle_usb_ep2_data + 1 
+0132 70485702 jam 0x02 ,mem_dongle_usb_ep2_data + 2 
+0133 70485803 jam 0x03 ,mem_dongle_usb_ep2_data + 3 
+0134 70485906 jam 0x06 ,mem_dongle_usb_ep2_data + 4 
 0135 6fe347ff fetch 6 ,mem_usb_get_report_sn_data 
-0136 67e3485c store 6 ,mem_dongle_usb_ep2_data + 5 
+0136 67e3485a store 6 ,mem_dongle_usb_ep2_data + 5 
 0137 70090c26 jam usb_ep2_sn ,mem_usb_ep2_data 
 0138 20200284 branch p_dongle_usb_tx_enable_ep2 
 
 p_dongle_usb_hci_cmd_get_battery:
-0139 7048df01 jam 0x01 ,mem_usb_battery_info_data + 6 
+0139 7048dd01 jam 0x01 ,mem_usb_battery_info_data + 6 
 
 p_dongle_usb_tx_ep2_battery_data:
-013a 7048d940 jam 0x40 ,mem_usb_battery_info_data 
-013b 7048daa1 jam report_id_data_in ,mem_usb_battery_info_data + 1 
-013c 7048db02 jam 0x02 ,mem_usb_battery_info_data + 2 
-013d 7048dc06 jam 0x06 ,mem_usb_battery_info_data + 3 
-013e 7048dd01 jam 0x01 ,mem_usb_battery_info_data + 4 
+013a 7048d740 jam 0x40 ,mem_usb_battery_info_data 
+013b 7048d8a1 jam report_id_data_in ,mem_usb_battery_info_data + 1 
+013c 7048d902 jam 0x02 ,mem_usb_battery_info_data + 2 
+013d 7048da06 jam 0x06 ,mem_usb_battery_info_data + 3 
+013e 7048db01 jam 0x01 ,mem_usb_battery_info_data + 4 
 013f 6fe0c807 fetch 1 ,mem_usb_get_report_battery_data 
-0140 67e0c8de store 1 ,mem_usb_battery_info_data + 5 
+0140 67e0c8dc store 1 ,mem_usb_battery_info_data + 5 
 0141 70090c25 jam usb_ep2_battery ,mem_usb_ep2_data 
 0142 20200284 branch p_dongle_usb_tx_enable_ep2 
 
 p_dongle_usb_tx_ep2_app_data:
-0143 70485740 jam 0x40 ,mem_dongle_usb_ep2_data 
-0144 704858a1 jam report_id_data_in ,mem_dongle_usb_ep2_data + 1 
-0145 70485902 jam 0x02 ,mem_dongle_usb_ep2_data + 2 
-0146 70485a08 jam 0x08 ,mem_dongle_usb_ep2_data + 3 
-0147 70485b00 jam 0x00 ,mem_dongle_usb_ep2_data + 4 
+0143 70485540 jam 0x40 ,mem_dongle_usb_ep2_data 
+0144 704856a1 jam report_id_data_in ,mem_dongle_usb_ep2_data + 1 
+0145 70485702 jam 0x02 ,mem_dongle_usb_ep2_data + 2 
+0146 70485808 jam 0x08 ,mem_dongle_usb_ep2_data + 3 
+0147 70485900 jam 0x00 ,mem_dongle_usb_ep2_data + 4 
 0148 70090c29 jam usb_ep2_app ,mem_usb_ep2_data 
 0149 20200284 branch p_dongle_usb_tx_enable_ep2 
 
 p_dongle_usb_tx_ep2_key_data:
-014a 70491a40 jam 0x40 ,mem_usb_key_info_data 
-014b 70491ba1 jam report_id_data_in ,mem_usb_key_info_data + 1 
-014c 70491c02 jam 0x02 ,mem_usb_key_info_data + 2 
-014d 70491d04 jam 0x04 ,mem_usb_key_info_data + 3 
-014e 70491e01 jam 0x01 ,mem_usb_key_info_data + 4 
+014a 70491840 jam 0x40 ,mem_usb_key_info_data 
+014b 704919a1 jam report_id_data_in ,mem_usb_key_info_data + 1 
+014c 70491a02 jam 0x02 ,mem_usb_key_info_data + 2 
+014d 70491b04 jam 0x04 ,mem_usb_key_info_data + 3 
+014e 70491c01 jam 0x01 ,mem_usb_key_info_data + 4 
 014f 70090c30 jam usb_ep2_key ,mem_usb_ep2_data 
 0150 20200284 branch p_dongle_usb_tx_enable_ep2 
 
 p_dongle_usb_hci_cmd_get_connect_state:
-0151 6fe0c811 fetch 1 ,mem_dongle_connect_mouse_flag 
+0151 6fe0c80f fetch 1 ,mem_dongle_connect_mouse_flag 
 0152 c000015d beq 0 ,p_dongle_usb_device_disconnect 
 0153 c0008155 beq 1 ,p_dongle_usb_device_connect 
 0154 20600000 rtn 
 
 p_dongle_usb_device_connect:
-0155 70481640 jam 0x40 ,mem_usb_rf_state_data 
-0156 704817a1 jam report_id_data_in ,mem_usb_rf_state_data + 1 
-0157 70481802 jam 0x02 ,mem_usb_rf_state_data + 2 
-0158 70481905 jam 0x05 ,mem_usb_rf_state_data + 3 
-0159 70481a01 jam 0x01 ,mem_usb_rf_state_data + 4 
-015a 70481b01 jam 0x01 ,mem_usb_rf_state_data + 5 
+0155 70481440 jam 0x40 ,mem_usb_rf_state_data 
+0156 704815a1 jam report_id_data_in ,mem_usb_rf_state_data + 1 
+0157 70481602 jam 0x02 ,mem_usb_rf_state_data + 2 
+0158 70481705 jam 0x05 ,mem_usb_rf_state_data + 3 
+0159 70481801 jam 0x01 ,mem_usb_rf_state_data + 4 
+015a 70481901 jam 0x01 ,mem_usb_rf_state_data + 5 
 015b 70090c27 jam usb_ep2_mskb_state ,mem_usb_ep2_data 
 015c 20200284 branch p_dongle_usb_tx_enable_ep2 
 
 p_dongle_usb_device_disconnect:
-015d 70481640 jam 0x40 ,mem_usb_rf_state_data 
-015e 704817a1 jam report_id_data_in ,mem_usb_rf_state_data + 1 
-015f 70481802 jam 0x02 ,mem_usb_rf_state_data + 2 
-0160 70481905 jam 0x05 ,mem_usb_rf_state_data + 3 
-0161 70481a01 jam 0x01 ,mem_usb_rf_state_data + 4 
-0162 70481b00 jam 0x00 ,mem_usb_rf_state_data + 5 
+015d 70481440 jam 0x40 ,mem_usb_rf_state_data 
+015e 704815a1 jam report_id_data_in ,mem_usb_rf_state_data + 1 
+015f 70481602 jam 0x02 ,mem_usb_rf_state_data + 2 
+0160 70481705 jam 0x05 ,mem_usb_rf_state_data + 3 
+0161 70481801 jam 0x01 ,mem_usb_rf_state_data + 4 
+0162 70481900 jam 0x00 ,mem_usb_rf_state_data + 5 
 0163 70090c27 jam usb_ep2_mskb_state ,mem_usb_ep2_data 
 0164 20200284 branch p_dongle_usb_tx_enable_ep2 
 
@@ -602,7 +602,7 @@
 01e7 20600000 rtn 
 
 p_usb_tx_ep2_queue_buff_check:
-01e8 da20495b arg mem_usb_ep2_fifo ,rega 
+01e8 da204959 arg mem_usb_ep2_fifo ,rega 
 01e9 20407da3 call fifo_is_empty 
 01ea 207a0000 rtn blank 
 01eb 20204837 branch dongle_usb_tx_enable_ep2 
@@ -622,7 +622,7 @@
 01f7 6fe08902 fetch 1 ,mem_usb_clear_remote_wakeup 
 01f8 243a7c06 nbranch usb_tx_fifo_release ,blank 
 01f9 2040028d call p_usb_tx_data_ep1 
-01fa 6fe0c976 fetch 1 ,mem_usb_website_step 
+01fa 6fe0c974 fetch 1 ,mem_usb_website_step 
 01fb 245a01fd ncall p_usb_ms_data_clear_key_value ,blank 
 01fc 20200316 branch p_usb_tx_data_ep2 
 
@@ -633,15 +633,15 @@
 p_dongle_usb_connect_mouse_check:
 01ff 6fe0c62b fetch 1 ,mem_24g_bind_device_living 
 0200 c4000000 rtnbit0 0 
-0201 6fe0c811 fetch 1 ,mem_dongle_connect_mouse_flag 
+0201 6fe0c80f fetch 1 ,mem_dongle_connect_mouse_flag 
 0202 247a0000 nrtn blank 
-0203 70481101 jam 1 ,mem_dongle_connect_mouse_flag 
+0203 70480f01 jam 1 ,mem_dongle_connect_mouse_flag 
 0204 20600000 rtn 
 
 p_g24_receive_packet_start1:
 0205 204001ff call p_dongle_usb_connect_mouse_check 
 0206 58000000 setarg 0 
-0207 67e14812 store 2 ,mem_dongle_no_data_count 
+0207 67e14810 store 2 ,mem_dongle_no_data_count 
 0208 6fe0c5ea fetch 1 ,mem_24g_rxdata_temp + 2 
 0209 c000b3c4 beq datatype_device1 ,g24_data_device1 
 020a c00133d3 beq datatype_device2 ,g24_data_device2 
@@ -706,17 +706,17 @@
 
 p_usb_tx_mouse_data_check:
 023b 6fe38914 fetch 7 ,mem_usb_mouse_data + 1 
-023c 67e3c964 store 7 ,mem_dg_mouse_data 
-023d 6fe0c964 fetch 1 ,mem_dg_mouse_data 
-023e 6848c96b fetcht 1 ,mem_dg_mouse_key_data_last 
-023f 67e0c96b store 1 ,mem_dg_mouse_key_data_last 
+023c 67e3c962 store 7 ,mem_dg_mouse_data 
+023d 6fe0c962 fetch 1 ,mem_dg_mouse_data 
+023e 6848c969 fetcht 1 ,mem_dg_mouse_key_data_last 
+023f 67e0c969 store 1 ,mem_dg_mouse_key_data_last 
 0240 98467c00 isub temp ,null 
 0241 20228244 branch p_dongle_receive_mouse_data_check ,zero 
 0242 20400246 call p_dongle_mouse_data_tx_enable 
 0243 20200248 branch p_dongle_mouse_key_data_tx_enable 
 
 p_dongle_receive_mouse_data_check:
-0244 6fe34965 fetch 6 ,mem_dg_mouse_data + 1 
+0244 6fe34963 fetch 6 ,mem_dg_mouse_data + 1 
 0245 207a0000 rtn blank 
 
 p_dongle_mouse_data_tx_enable:
@@ -725,16 +725,16 @@
 
 p_dongle_mouse_key_data_tx_enable:
 0248 6fe08914 fetch 1 ,mem_usb_mouse_data + 1 
-0249 67e0c91f store 1 ,mem_usb_key_info_data + 5 
+0249 67e0c91d store 1 ,mem_usb_key_info_data + 5 
 024a 2020014a branch p_dongle_usb_tx_ep2_key_data 
 
 p_dongle_receive_app_data:
 024b 6fe0c5eb fetch 1 ,mem_24g_rxdata_temp + 3 
-024c 6848c810 fetcht 1 ,mem_dongle_app_data 
+024c 6848c80e fetcht 1 ,mem_dongle_app_data 
 024d 98467c00 isub temp ,null 
 024e 20628000 rtn zero 
-024f 67e0c810 store 1 ,mem_dongle_app_data 
-0250 6fe0c810 fetch 1 ,mem_dongle_app_data 
+024f 67e0c80e store 1 ,mem_dongle_app_data 
+0250 6fe0c80e fetch 1 ,mem_dongle_app_data 
 0251 c1ff8000 rtnne long_press 
 0252 20200143 branch p_dongle_usb_tx_ep2_app_data 
 
@@ -744,36 +744,36 @@
 
 p_dongle_receive_dpi_data_compare:
 0255 6fe0c805 fetch 1 ,mem_usb_get_report_dpi_data 
-0256 6848c814 fetcht 1 ,mem_dongle_receive_dpi_data 
+0256 6848c812 fetcht 1 ,mem_dongle_receive_dpi_data 
 0257 98467c00 isub temp ,null 
 0258 2442825e ncall p_dongle_usb_ep2_tx_dpi_data_enable ,zero 
 0259 6fe0c806 fetch 1 ,mem_usb_get_report_dpi_data + 1 
-025a 6848c815 fetcht 1 ,mem_dongle_receive_dpi_data + 1 
+025a 6848c813 fetcht 1 ,mem_dongle_receive_dpi_data + 1 
 025b 98467c00 isub temp ,null 
 025c 24428261 ncall p_dongle_usb_ep2_tx_dpi_state_data_enable ,zero 
 025d 20600000 rtn 
 
 p_dongle_usb_ep2_tx_dpi_data_enable:
 025e 6fe0c805 fetch 1 ,mem_usb_get_report_dpi_data 
-025f 67e0c814 store 1 ,mem_dongle_receive_dpi_data 
+025f 67e0c812 store 1 ,mem_dongle_receive_dpi_data 
 0260 20200127 branch p_dongle_usb_tx_ep2_dpi_data 
 
 p_dongle_usb_ep2_tx_dpi_state_data_enable:
 0261 6fe0c806 fetch 1 ,mem_usb_get_report_dpi_data + 1 
-0262 67e0c815 store 1 ,mem_dongle_receive_dpi_data + 1 
+0262 67e0c813 store 1 ,mem_dongle_receive_dpi_data + 1 
 0263 c02a8266 beq release ,p_dongle_dpi_key_release 
 0264 c0550269 beq press ,p_dongle_dpi_key_press 
 0265 20600000 rtn 
 
 p_dongle_dpi_key_release:
-0266 6fe0c91f fetch 1 ,mem_usb_key_info_data + 5 
+0266 6fe0c91d fetch 1 ,mem_usb_key_info_data + 5 
 0267 793ffe05 set0 5 ,pdata 
 0268 2020026b branch p_dongle_dpi_key_press + 2 
 
 p_dongle_dpi_key_press:
-0269 6fe0c91f fetch 1 ,mem_usb_key_info_data + 5 
+0269 6fe0c91d fetch 1 ,mem_usb_key_info_data + 5 
 026a 79207e05 set1 5 ,pdata 
-026b 67e0c91f store 1 ,mem_usb_key_info_data + 5 
+026b 67e0c91d store 1 ,mem_usb_key_info_data + 5 
 026c 2020014a branch p_dongle_usb_tx_ep2_key_data 
 
 p_dongle_receive_device_info_data:
@@ -789,8 +789,8 @@
 0276 67e14808 store 2 ,mem_usb_get_report_mouse_version_data 
 0277 6fe145f1 fetch 2 ,mem_24g_rxdata_temp + 9 
 0278 67e14805 store 2 ,mem_usb_get_report_dpi_data 
-0279 6fe245f6 fetch 4 ,mem_24g_rxdata_temp + 14 
-027a 67e2480a store 4 ,mem_usb_get_report_code_data 
+0279 6fe145f6 fetch 2 ,mem_24g_rxdata_temp + 14 
+027a 67e1480a store 2 ,mem_usb_get_report_code_data 
 027b 20400255 call p_dongle_receive_dpi_data_compare 
 027c 6fe0c5f3 fetch 1 ,mem_24g_rxdata_temp + 11 
 027d 2020027f branch p_dongle_receive_battery_data_compare 
@@ -808,12 +808,12 @@
 p_dongle_usb_tx_enable_ep2:
 0284 6fe0890e fetch 1 ,mem_usb_device_enumeration_endflag 
 0285 207a0000 rtn blank 
-0286 da20495b arg mem_usb_ep2_fifo ,rega 
+0286 da204959 arg mem_usb_ep2_fifo ,rega 
 0287 20407da5 call fifo_is_full 
 0288 247a0000 nrtn blank 
 0289 6fe0890c fetch 1 ,mem_usb_ep2_data 
 028a 67e0866f store 1 ,mem_fifo_temp 
-028b da20495b arg mem_usb_ep2_fifo ,rega 
+028b da204959 arg mem_usb_ep2_fifo ,rega 
 028c 20207d8b branch fifo_in 
 
 p_usb_tx_data_ep1:
@@ -832,7 +832,7 @@
 0299 2020235a branch assert 
 
 p_usb_tx_http_data_set:
-029a 6fe0c976 fetch 1 ,mem_usb_website_step 
+029a 6fe0c974 fetch 1 ,mem_usb_website_step 
 029b c00002a6 beq key_release ,p_usb_webstie_key_release_data 
 029c c00082a8 beq website_win ,p_usb_website_winr_data 
 029d c00102b6 beq website_r_space_release ,p_usb_website_r_space_release_data 
@@ -846,104 +846,104 @@
 02a5 20600000 rtn 
 
 p_usb_webstie_key_release_data:
-02a6 70497601 jam website_win ,mem_usb_website_step 
+02a6 70497401 jam website_win ,mem_usb_website_step 
 02a7 20204832 branch dongle_g24_ms_blank_data_tx_ep2 
 
 p_usb_website_winr_data:
-02a8 dfe0497c arg mem_usb_website_info + 1 ,pdata 
-02a9 67e14979 store 2 ,mem_usb_website_ptr 
+02a8 dfe0497a arg mem_usb_website_info + 1 ,pdata 
+02a9 67e14977 store 2 ,mem_usb_website_ptr 
 02aa 6fe088fa fetch 1 ,mem_usb_tx_mac_enable 
 02ab c00002ae beq 0 ,p_usb_tx_winos_winr_data 
 02ac c00082b2 beq 1 ,p_usb_tx_macos_winr_data 
 02ad 20600000 rtn 
 
 p_usb_tx_winos_winr_data:
-02ae 70497602 jam website_r_space_release ,mem_usb_website_step 
-02af 6fe1c96c fetch 3 ,mem_usb_win_cmd 
+02ae 70497402 jam website_r_space_release ,mem_usb_website_step 
+02af 6fe1c96a fetch 3 ,mem_usb_win_cmd 
 02b0 67e18923 store 3 ,mem_usb_kb_data 
 02b1 20207c28 branch usb_tx_kb_normal_data 
 
 p_usb_tx_macos_winr_data:
-02b2 70497602 jam website_r_space_release ,mem_usb_website_step 
-02b3 6fe1c96f fetch 3 ,mem_usb_mac_cmd 
+02b2 70497402 jam website_r_space_release ,mem_usb_website_step 
+02b3 6fe1c96d fetch 3 ,mem_usb_mac_cmd 
 02b4 67e18923 store 3 ,mem_usb_kb_data 
 02b5 20207c28 branch usb_tx_kb_normal_data 
 
 p_usb_website_r_space_release_data:
-02b6 70497603 jam website_win_release ,mem_usb_website_step 
-02b7 6fe0c96c fetch 1 ,mem_usb_win_cmd 
+02b6 70497403 jam website_win_release ,mem_usb_website_step 
+02b7 6fe0c96a fetch 1 ,mem_usb_win_cmd 
 02b8 67e08923 store 1 ,mem_usb_kb_data 
 02b9 20207c28 branch usb_tx_kb_normal_data 
 
 p_usb_website_win_release_data:
-02ba 70497604 jam website_wait ,mem_usb_website_step 
+02ba 70497404 jam website_wait ,mem_usb_website_step 
 
 p_usb_webstie_release_data:
 02bb d8a00923 arg mem_usb_kb_data ,contw 
 02bc df200008 arg 8 ,loopcnt 
 02bd 20407ca3 call memset0 
-02be 70497800 jam 0 ,mem_usb_website_release_flag 
+02be 70497600 jam 0 ,mem_usb_website_release_flag 
 02bf 20207c28 branch usb_tx_kb_normal_data 
 
 p_usb_website_enter_data1:
-02c0 70497607 jam website_enter_release_1 ,mem_usb_website_step 
+02c0 70497407 jam website_enter_release_1 ,mem_usb_website_step 
 
 p_usb_webstie_enter_data:
-02c1 6fe1c972 fetch 3 ,mem_usb_kb_enter 
+02c1 6fe1c970 fetch 3 ,mem_usb_kb_enter 
 02c2 67e18923 store 3 ,mem_usb_kb_data 
 02c3 20207c28 branch usb_tx_kb_normal_data 
 
 p_usb_website_enter_release_data1:
-02c4 70497608 jam website_enter_2 ,mem_usb_website_step 
+02c4 70497408 jam website_enter_2 ,mem_usb_website_step 
 02c5 202002bb branch p_usb_webstie_release_data 
 
 p_usb_website_enter_data2:
-02c6 70497609 jam website_enter_release_2 ,mem_usb_website_step 
+02c6 70497409 jam website_enter_release_2 ,mem_usb_website_step 
 02c7 202002c1 branch p_usb_webstie_enter_data 
 
 p_usb_website_enter_release_data2:
-02c8 70497600 jam website_done ,mem_usb_website_step 
+02c8 70497400 jam website_done ,mem_usb_website_step 
 02c9 202002bb branch p_usb_webstie_release_data 
 
 p_usb_website_wait_tx_data:
-02ca 6fe0c975 fetch 1 ,mem_usb_website_wait_count 
+02ca 6fe0c973 fetch 1 ,mem_usb_website_wait_count 
 02cb 1fe0fe01 increase 1 ,pdata 
-02cc 67e0c975 store 1 ,mem_usb_website_wait_count 
+02cc 67e0c973 store 1 ,mem_usb_website_wait_count 
 02cd c1878000 rtnne website_wait_count 
-02ce 70497500 jam 0 ,mem_usb_website_wait_count 
-02cf 70497605 jam website_data ,mem_usb_website_step 
+02ce 70497300 jam 0 ,mem_usb_website_wait_count 
+02cf 70497405 jam website_data ,mem_usb_website_step 
 02d0 20600000 rtn 
 
 p_usb_website_data:
-02d1 6fe0c978 fetch 1 ,mem_usb_website_release_flag 
+02d1 6fe0c976 fetch 1 ,mem_usb_website_release_flag 
 02d2 c00082bb beq 1 ,p_usb_webstie_release_data 
 02d3 c00002d7 beq 0 ,p_usb_website_info_data 
 02d4 20600000 rtn 
 
 p_usb_webstie_info_data_done:
-02d5 70497606 jam website_enter_1 ,mem_usb_website_step 
+02d5 70497406 jam website_enter_1 ,mem_usb_website_step 
 02d6 20600000 rtn 
 
 p_usb_website_info_data:
-02d7 d840497c arg mem_usb_website_info + 1 ,temp 
-02d8 6fe0c97b fetch 1 ,mem_usb_website_info 
+02d7 d840497a arg mem_usb_website_info + 1 ,temp 
+02d8 6fe0c979 fetch 1 ,mem_usb_website_info 
 02d9 98408400 iadd temp ,temp 
-02da 6fe14979 fetch 2 ,mem_usb_website_ptr 
+02da 6fe14977 fetch 2 ,mem_usb_website_ptr 
 02db 98467c00 isub temp ,null 
 02dc 202282d5 branch p_usb_webstie_info_data_done ,zero 
 02dd 204002e7 call p_usb_tx_website_acii2hidkey 
 02de 20400309 call p_usb_tx_website_need_shift 
-02df 6fe0c977 fetch 1 ,mem_usb_website_shift_flag 
+02df 6fe0c975 fetch 1 ,mem_usb_website_shift_flag 
 02e0 67e08923 store 1 ,mem_usb_kb_data 
 02e1 62208925 storer rega ,1 ,mem_usb_kb_data + 2 
-02e2 6fe14979 fetch 2 ,mem_usb_website_ptr 
+02e2 6fe14977 fetch 2 ,mem_usb_website_ptr 
 02e3 1fe0fe01 increase 1 ,pdata 
-02e4 67e14979 store 2 ,mem_usb_website_ptr 
-02e5 70497801 jam 1 ,mem_usb_website_release_flag 
+02e4 67e14977 store 2 ,mem_usb_website_ptr 
+02e5 70497601 jam 1 ,mem_usb_website_release_flag 
 02e6 20207c28 branch usb_tx_kb_normal_data 
 
 p_usb_tx_website_acii2hidkey:
-02e7 68494979 fetcht 2 ,mem_usb_website_ptr 
+02e7 68494977 fetcht 2 ,mem_usb_website_ptr 
 02e8 efe08002 ifetch 1 ,temp 
 02e9 1fe67c7a sub pdata ,0x7a ,null 
 02ea 242102ee nbranch p_usb_tx_website_acii2hidkey1 ,positive 
@@ -995,11 +995,11 @@
 0308 20600000 rtn 
 
 p_usb_tx_website_need_shift:
-0309 70497700 jam 0 ,mem_usb_website_shift_flag 
-030a 6fe14979 fetch 2 ,mem_usb_website_ptr 
+0309 70497500 jam 0 ,mem_usb_website_shift_flag 
+030a 6fe14977 fetch 2 ,mem_usb_website_ptr 
 030b efe0803f ifetch 1 ,pdata 
-030c d8c049a4 arg mem_usb_website_info_sign + 1 ,contr 
-030d 6848c9a3 fetcht 1 ,mem_usb_website_info_sign 
+030c d8c049a2 arg mem_usb_website_info_sign + 1 ,contr 
+030d 6848c9a1 fetcht 1 ,mem_usb_website_info_sign 
 030e 18427200 copy temp ,loopcnt 
 
 p_usb_tx_website_need_shift_check_loop:
@@ -1010,11 +1010,11 @@
 0313 20600000 rtn 
 
 p_usb_tx_website_need_shift_setflag:
-0314 70497702 jam 2 ,mem_usb_website_shift_flag 
+0314 70497502 jam 2 ,mem_usb_website_shift_flag 
 0315 20600000 rtn 
 
 p_usb_tx_data_ep2:
-0316 da20495b arg mem_usb_ep2_fifo ,rega 
+0316 da204959 arg mem_usb_ep2_fifo ,rega 
 0317 20407da3 call fifo_is_empty 
 0318 207a0000 rtn blank 
 0319 6ff08c25 fetch 1 ,core_usb_txbusy 
@@ -1025,7 +1025,7 @@
 031e 6fe0890d fetch 1 ,mem_usb_tx_enable 
 031f 793ffe02 set0 2 ,pdata 
 0320 67e0890d store 1 ,mem_usb_tx_enable 
-0321 da20495b arg mem_usb_ep2_fifo ,rega 
+0321 da204959 arg mem_usb_ep2_fifo ,rega 
 0322 20407d97 call fifo_out 
 0323 207a0000 rtn blank 
 0324 c0107c09 beq usb_ep2_ms ,usb_tx_ms_data 
@@ -1041,51 +1041,51 @@
 032e 2020235a branch assert 
 
 p_usb_tx_rf_state_data:
-032f 6fe0c816 fetch 1 ,mem_usb_rf_state_data 
+032f 6fe0c814 fetch 1 ,mem_usb_rf_state_data 
 0330 207a0000 rtn blank 
 0331 1fe27200 copy pdata ,loopcnt 
-0332 d8c04817 arg mem_usb_rf_state_data + 1 ,contr 
+0332 d8c04815 arg mem_usb_rf_state_data + 1 ,contr 
 0333 20407bdb call usb_tx_ep2 
-0334 d8a04816 arg mem_usb_rf_state_data ,contw 
+0334 d8a04814 arg mem_usb_rf_state_data ,contw 
 0335 2020033c branch p_usb_tx_buff_clr 
 
 p_usb_tx_dongle_ep2_data:
-0336 6fe0c857 fetch 1 ,mem_dongle_usb_ep2_data 
+0336 6fe0c855 fetch 1 ,mem_dongle_usb_ep2_data 
 0337 207a0000 rtn blank 
 0338 1fe27200 copy pdata ,loopcnt 
-0339 d8c04858 arg mem_dongle_usb_ep2_data + 1 ,contr 
+0339 d8c04856 arg mem_dongle_usb_ep2_data + 1 ,contr 
 033a 20407bdb call usb_tx_ep2 
-033b d8a04857 arg mem_dongle_usb_ep2_data ,contw 
+033b d8a04855 arg mem_dongle_usb_ep2_data ,contw 
 
 p_usb_tx_buff_clr:
 033c df200041 arg 65 ,loopcnt 
 033d 20207ca1 branch clear_mem 
 
 p_usb_tx_dongle_ep2_dpi_data:
-033e 6fe0c898 fetch 1 ,mem_usb_dpi_info_data 
+033e 6fe0c896 fetch 1 ,mem_usb_dpi_info_data 
 033f 207a0000 rtn blank 
 0340 1fe27200 copy pdata ,loopcnt 
-0341 d8c04899 arg mem_usb_dpi_info_data + 1 ,contr 
+0341 d8c04897 arg mem_usb_dpi_info_data + 1 ,contr 
 0342 20407bdb call usb_tx_ep2 
-0343 d8a04898 arg mem_usb_dpi_info_data ,contw 
+0343 d8a04896 arg mem_usb_dpi_info_data ,contw 
 0344 2020033c branch p_usb_tx_buff_clr 
 
 p_usb_tx_dongle_ep2_battery_data:
-0345 6fe0c8d9 fetch 1 ,mem_usb_battery_info_data 
+0345 6fe0c8d7 fetch 1 ,mem_usb_battery_info_data 
 0346 207a0000 rtn blank 
 0347 1fe27200 copy pdata ,loopcnt 
-0348 d8c048da arg mem_usb_battery_info_data + 1 ,contr 
+0348 d8c048d8 arg mem_usb_battery_info_data + 1 ,contr 
 0349 20407bdb call usb_tx_ep2 
-034a d8a048d9 arg mem_usb_battery_info_data ,contw 
+034a d8a048d7 arg mem_usb_battery_info_data ,contw 
 034b 2020033c branch p_usb_tx_buff_clr 
 
 p_usb_tx_dongle_ep2_key_data:
-034c 6fe0c91a fetch 1 ,mem_usb_key_info_data 
+034c 6fe0c918 fetch 1 ,mem_usb_key_info_data 
 034d 207a0000 rtn blank 
 034e 1fe27200 copy pdata ,loopcnt 
-034f d8c0491b arg mem_usb_key_info_data + 1 ,contr 
+034f d8c04919 arg mem_usb_key_info_data + 1 ,contr 
 0350 20407bdb call usb_tx_ep2 
-0351 d8a0491a arg mem_usb_key_info_data ,contw 
+0351 d8a04918 arg mem_usb_key_info_data ,contw 
 0352 2020033c branch p_usb_tx_buff_clr 
 
 p_rx_dcoc:
@@ -1357,26 +1357,26 @@
 0420 20207ce1 branch timer_init 
 
 p_g24_http_over_pack_check:
-0421 6fe0c976 fetch 1 ,mem_usb_website_step 
+0421 6fe0c974 fetch 1 ,mem_usb_website_step 
 0422 207a0000 rtn blank 
 0423 20200216 branch p_dongle_usb_tx_http_data 
 
 p_g24_dongle_disconnect_state_check:
 0424 6fe0c62b fetch 1 ,mem_24g_bind_device_living 
 0425 c4000000 rtnbit0 0 
-0426 6fe0c811 fetch 1 ,mem_dongle_connect_mouse_flag 
+0426 6fe0c80f fetch 1 ,mem_dongle_connect_mouse_flag 
 0427 207a0000 rtn blank 
-0428 6fe14812 fetch 2 ,mem_dongle_no_data_count 
+0428 6fe14810 fetch 2 ,mem_dongle_no_data_count 
 0429 1fe0fe01 increase 1 ,pdata 
-042a 67e14812 store 2 ,mem_dongle_no_data_count 
+042a 67e14810 store 2 ,mem_dongle_no_data_count 
 042b d84004b0 arg 0x4b0 ,temp 
 042c 98467c00 isub temp ,null 
 042d 24610000 nrtn positive 
 042e 58000000 setarg 0 
-042f 67e14812 store 2 ,mem_dongle_no_data_count 
-0430 6fe0c811 fetch 1 ,mem_dongle_connect_mouse_flag 
+042f 67e14810 store 2 ,mem_dongle_no_data_count 
+0430 6fe0c80f fetch 1 ,mem_dongle_connect_mouse_flag 
 0431 207a0000 rtn blank 
-0432 70481100 jam 0 ,mem_dongle_connect_mouse_flag 
+0432 70480f00 jam 0 ,mem_dongle_connect_mouse_flag 
 0433 20600000 rtn 
 
 p_dongle_default_init:
Index: program/patch.prog
===================================================================
--- /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/program/patch.prog	(revision 4373)
+++ /1121s/branch/dongle/1m/USB_XZR/usb_1m_ai/program/patch.prog	(working copy)
@@ -420,15 +420,15 @@
 	jam REPORT_ID_DATA_IN,mem_dongle_usb_ep2_data+1
 	jam 0x02,mem_dongle_usb_ep2_data+2
 	jam 0x01,mem_dongle_usb_ep2_data+3
-	jam 0x0e,mem_dongle_usb_ep2_data+4
+	jam 0x0c,mem_dongle_usb_ep2_data+4
 	fetch 6,mem_usb_get_report_sn_data
 	store 6,mem_dongle_usb_ep2_data+5
 	fetch 2,mem_usb_get_report_mouse_version_data
 	store 2,mem_dongle_usb_ep2_data+11
 	fetch 2,mem_dongle_version
 	store 2,mem_dongle_usb_ep2_data+13
-	fetch 4,mem_usb_get_report_code_data
-	store 4,mem_dongle_usb_ep2_data+15
+	fetch 2,mem_usb_get_report_code_data
+	store 2,mem_dongle_usb_ep2_data+15
 	jam USB_EP2_DEVICE_INFO,mem_usb_ep2_data
 	branch p_dongle_usb_tx_enable_ep2
 
@@ -867,8 +867,8 @@
 	store 2,mem_usb_get_report_mouse_version_data
 	fetch 2,mem_24g_rxdata_temp+9
 	store 2,mem_usb_get_report_dpi_data
-	fetch 4,mem_24g_rxdata_temp+14
-	store 4,mem_usb_get_report_code_data
+	fetch 2,mem_24g_rxdata_temp+14
+	store 2,mem_usb_get_report_code_data
 	call p_dongle_receive_dpi_data_compare
 	fetch 1,mem_24g_rxdata_temp+11
 	branch p_dongle_receive_battery_data_compare
