Index: format/app_mouse.format
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/YJX_CL_Switch_3M_2Ch/format/app_mouse.format	(revision 1191)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/YJX_CL_Switch_3M_2Ch/format/app_mouse.format	(working copy)
@@ -360,6 +360,8 @@
 
 1 mem_mouse_reuse_2ice_gpio
 1 mem_mouse_ice_sdio_for_sensor_angle
+
+2 mem_mouse_temp_data
 )
 
 
@@ -478,7 +480,7 @@
 0x01 MOUSE_DPI_LEVEL2
 0x02 MOUSE_DPI_LEVEL3
 0x03 MOUSE_DPI_LEVEL4
-
+0x04 MOUSE_DPI_LEVEL5
 
 //mouse sensor angle
 0x00 MOUSE_6CLK_ANGLE
Index: output/eeprom.dat
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/YJX_CL_Switch_3M_2Ch/output/eeprom.dat	(revision 1191)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/YJX_CL_Switch_3M_2Ch/output/eeprom.dat	(working copy)
@@ -2,8 +2,8 @@
 02
 aa
 55
-ea
-15
+b2
+16
 c2
 84
 00
@@ -59,11 +59,11 @@
 c0
 67
 03
-3a
+46
 c0
 67
-83
-e4
+84
+0b
 c0
 68
 02
@@ -71,11 +71,11 @@
 c0
 68
 83
-65
+8c
 c0
 6a
 03
-4b
+72
 c0
 6b
 01
@@ -83,19 +83,19 @@
 c0
 6c
 82
-7e
+8a
 c0
 6d
 02
-df
+eb
 c0
 6f
 03
-9b
+c2
 c0
 74
 02
-ec
+f8
 20
 20
 13
@@ -111,15 +111,15 @@
 c0
 43
 82
-e8
+f4
 c0
 50
 83
-00
+0c
 c0
 60
 03
-0a
+16
 c0
 6e
 82
@@ -139,7 +139,7 @@
 c0
 76
 03
-31
+3d
 20
 20
 13
@@ -295,7 +295,7 @@
 20
 40
 04
-54
+86
 20
 34
 00
@@ -606,8 +606,8 @@
 00
 20
 40
-40
-8e
+02
+72
 20
 40
 3d
@@ -623,7 +623,7 @@
 20
 40
 03
-5d
+84
 6f
 e0
 c9
@@ -643,7 +643,7 @@
 20
 40
 03
-a2
+c9
 20
 20
 3d
@@ -1019,7 +1019,7 @@
 24
 3a
 05
-0d
+3f
 20
 40
 3f
@@ -1271,7 +1271,7 @@
 20
 20
 03
-5d
+84
 20
 40
 26
@@ -1371,7 +1371,7 @@
 20
 40
 04
-15
+47
 20
 40
 01
@@ -1507,11 +1507,11 @@
 20
 40
 03
-56
+7d
 20
 40
 03
-5d
+84
 20
 20
 3e
@@ -1527,7 +1527,7 @@
 20
 40
 02
-a3
+af
 20
 40
 40
@@ -1791,7 +1791,7 @@
 20
 40
 03
-5d
+84
 20
 20
 01
@@ -2379,7 +2379,7 @@
 c2
 81
 84
-1f
+51
 c2
 80
 a3
@@ -2488,6 +2488,14 @@
 20
 47
 ff
+6f
+e0
+c9
+27
+c0
+01
+82
+70
 20
 40
 40
@@ -2495,11 +2503,51 @@
 20
 40
 02
-70
+7c
+20
+20
+02
+72
+6f
+e0
+c9
+27
+c0
+01
+82
+75
 20
 20
 40
-98
+99
+6f
+e0
+c9
+92
+c0
+00
+40
+c2
+c0
+00
+c0
+c0
+c0
+01
+40
+c4
+c0
+01
+c0
+c4
+c0
+02
+40
+c6
+20
+20
+40
+c0
 6f
 e0
 c9
@@ -2547,7 +2595,7 @@
 20
 3a
 02
-aa
+b6
 67
 e0
 cb
@@ -2583,7 +2631,7 @@
 20
 40
 02
-a7
+b3
 20
 40
 40
@@ -2595,7 +2643,7 @@
 20
 40
 02
-bf
+cb
 20
 40
 44
@@ -2611,7 +2659,7 @@
 20
 40
 02
-d4
+e0
 20
 40
 45
@@ -2643,15 +2691,15 @@
 20
 40
 02
-99
+a5
 20
 40
 02
-d7
+e3
 20
 20
 02
-96
+a2
 da
 60
 4c
@@ -2703,7 +2751,7 @@
 20
 21
 02
-a5
+b1
 68
 48
 cb
@@ -2727,7 +2775,7 @@
 da
 40
 02
-aa
+b6
 20
 20
 31
@@ -2783,11 +2831,11 @@
 20
 41
 02
-b9
+c5
 24
 41
 02
-bd
+c9
 20
 20
 48
@@ -2823,7 +2871,7 @@
 c0
 00
 02
-c5
+d1
 6f
 e4
 4b
@@ -2839,7 +2887,7 @@
 20
 20
 02
-c8
+d4
 6f
 e4
 4b
@@ -2875,7 +2923,7 @@
 20
 22
 82
-cf
+db
 20
 20
 44
@@ -2927,7 +2975,7 @@
 da
 40
 02
-dc
+e8
 20
 20
 31
@@ -3022,8 +3070,8 @@
 00
 c0
 04
-82
-f4
+83
+00
 20
 20
 4d
@@ -3123,7 +3171,7 @@
 c0
 02
 03
-0d
+19
 20
 20
 19
@@ -3139,11 +3187,11 @@
 c0
 05
 03
-12
+1e
 c0
 09
 03
-21
+2d
 20
 20
 1c
@@ -3171,7 +3219,7 @@
 c2
 81
 83
-1c
+28
 6f
 e1
 44
@@ -3199,11 +3247,11 @@
 24
 22
 83
-18
+24
 24
 34
 03
-18
+24
 20
 20
 1e
@@ -3326,100 +3374,208 @@
 40
 20
 40
-40
-8e
+03
+4e
 20
 40
-3f
-7e
+03
+54
 20
 40
-3f
-83
+02
+72
 20
-40
-40
-dc
+20
+3f
+75
 6f
 e0
-c8
-d0
-1f
-e1
-7e
-1f
-67
+c9
+27
+c1
+81
+80
+00
+d8
 e0
-c8
-d0
-24
-34
-47
-28
+00
+38
 20
 40
-03
-48
+46
+f4
+d8
+e0
+00
+39
 20
 20
-45
-44
+46
+f4
 6f
 e0
 c9
 27
 c1
-01
+81
 80
 00
-20
-20
-47
-1a
-20
-40
-3f
-65
 6f
 e0
 c9
-27
-c0
-05
-83
-52
-20
-40
-42
-32
-da
-60
-4a
-a3
-20
-40
-42
-2b
-20
+92
+c1
+81
+80
+00
+6f
+e1
+48
+d1
 20
 40
-8e
+03
+5f
+67
+e1
+48
+d1
+6f
+e1
+48
+d3
 20
 40
 03
-59
-da
-60
-4b
+5f
+67
+e1
+48
+d3
+20
+60
+00
+00
+c2
+85
+83
+62
+c3
+05
+83
+66
+20
+60
+00
+00
+1f
+e6
+7e
+00
+20
+40
+03
+66
+1f
+e6
+7e
+00
+20
+60
+00
+00
+1f
 e3
+04
+00
+79
+3f
+84
+0f
+98
+40
+fe
+00
+67
+e1
+4c
+39
+6f
+e0
+cc
+3a
+1f
+e6
+7c
+07
+24
+41
+03
+6f
+6f
+e1
+4c
+39
+20
+60
+00
+00
+58
+00
+07
+ff
+67
+e1
+4c
+39
+20
+60
+00
+00
+20
+40
+3f
+65
+6f
+e0
+c9
+27
+c0
+05
+83
+79
+20
+40
+42
+32
+da
+60
+4a
+a3
 20
 40
 42
 2b
 20
 20
+02
+72
+20
 40
-8e
+03
+80
+da
+60
+4b
+e3
+20
+40
+42
+2b
+20
+20
+02
+72
 6f
 e0
 c9
@@ -3427,7 +3583,7 @@
 c0
 05
 83
-59
+80
 20
 20
 42
@@ -3463,7 +3619,7 @@
 c0
 05
 83
-63
+8a
 58
 00
 08
@@ -3495,23 +3651,23 @@
 20
 40
 03
-6e
+95
 20
 40
 03
-73
+9a
 20
 40
 03
-78
+9f
 20
 40
 03
-7d
+a4
 20
 40
 03
-8a
+b1
 20
 20
 41
@@ -3523,7 +3679,7 @@
 20
 40
 03
-97
+be
 20
 40
 41
@@ -3543,7 +3699,7 @@
 20
 40
 03
-97
+be
 20
 40
 41
@@ -3563,7 +3719,7 @@
 20
 40
 03
-97
+be
 20
 40
 41
@@ -3607,7 +3763,7 @@
 c0
 7f
 83
-86
+ad
 20
 20
 41
@@ -3619,7 +3775,7 @@
 20
 40
 03
-99
+c0
 68
 48
 c9
@@ -3659,7 +3815,7 @@
 c0
 7f
 83
-93
+ba
 20
 20
 41
@@ -3671,7 +3827,7 @@
 20
 40
 03
-99
+c0
 68
 48
 c9
@@ -3707,11 +3863,11 @@
 20
 40
 03
-ac
+d3
 20
 40
 03
-c0
+e7
 20
 40
 46
@@ -3719,7 +3875,7 @@
 20
 40
 03
-a2
+c9
 20
 20
 46
@@ -3731,7 +3887,7 @@
 c2
 95
 03
-a6
+cd
 c2
 95
 be
@@ -3795,7 +3951,7 @@
 20
 40
 03
-b5
+dc
 20
 20
 40
@@ -3823,7 +3979,7 @@
 c0
 7f
 83
-bc
+e3
 20
 20
 40
@@ -3835,7 +3991,7 @@
 20
 40
 03
-99
+c0
 68
 48
 c9
@@ -3859,11 +4015,11 @@
 20
 40
 03
-97
+be
 20
 40
 03
-c7
+ee
 68
 48
 cc
@@ -3887,7 +4043,7 @@
 20
 40
 03
-d6
+fd
 67
 e0
 cc
@@ -3899,7 +4055,7 @@
 20
 3a
 03
-d2
+f9
 6f
 e0
 cc
@@ -3962,12 +4118,12 @@
 00
 c0
 03
-83
-e0
+84
+07
 c0
 00
-03
-e2
+04
+09
 20
 60
 00
@@ -3999,6 +4155,14 @@
 6f
 e0
 c9
+27
+c0
+01
+84
+19
+6f
+e0
+c9
 92
 1f
 e2
@@ -4010,8 +4174,8 @@
 ab
 c2
 9e
-83
-f0
+84
+22
 18
 42
 7e
@@ -4038,20 +4202,56 @@
 ee
 6f
 e0
+c9
+92
+1f
+e0
+fe
+01
+1f
+e6
+7c
+05
+20
+42
+84
+20
+67
+e0
+c9
+92
+20
+40
+02
+6d
+20
+20
+45
+ee
+58
+00
+00
+00
+20
+60
+00
+00
+6f
+e0
 cc
 35
 24
 3a
-03
-fb
+04
+2d
 6f
 e4
 4b
 ab
 c2
 8e
-03
-f8
+04
+2a
 18
 42
 7e
@@ -4066,8 +4266,8 @@
 01
 20
 20
-03
-ed
+04
+16
 18
 42
 7e
@@ -4078,8 +4278,8 @@
 00
 20
 20
-03
-f6
+04
+28
 18
 42
 7e
@@ -4094,8 +4294,8 @@
 ff
 20
 20
-03
-ed
+04
+16
 6f
 e0
 cb
@@ -4111,27 +4311,27 @@
 c0
 01
 04
-0b
+3d
 c0
 02
 84
-0d
+3f
 c0
 04
 04
-0f
+41
 c0
 05
 84
-11
+43
 c0
 07
 04
-13
+45
 c0
 08
 84
-09
+3b
 20
 60
 00
@@ -4190,8 +4390,8 @@
 2a
 20
 3a
-03
-ff
+04
+31
 1f
 e2
 24
@@ -4207,7 +4407,7 @@
 c0
 57
 84
-27
+59
 20
 60
 00
@@ -4223,7 +4423,7 @@
 20
 20
 05
-07
+39
 20
 60
 00
@@ -4283,31 +4483,31 @@
 c0
 00
 84
-36
+68
 c0
 01
 04
-39
+6b
 c0
 01
 84
-3b
+6d
 c0
 02
 04
-3d
+6f
 c0
 02
 84
-95
+c7
 c0
 03
 04
-bb
+ed
 c0
 7f
 84
-35
+67
 20
 20
 13
@@ -4319,7 +4519,7 @@
 20
 40
 04
-1c
+4e
 70
 4b
 f7
@@ -4367,7 +4567,7 @@
 24
 22
 84
-b3
+e5
 6f
 e1
 4c
@@ -4379,23 +4579,23 @@
 24
 22
 84
-b3
+e5
 20
 40
 04
-49
+7b
 24
 34
 04
-b3
+e5
 20
 20
 04
-b1
+e3
 20
 40
 04
-54
+86
 24
 74
 00
@@ -4503,7 +4703,7 @@
 20
 40
 04
-cb
+fd
 18
 42
 60
@@ -4519,7 +4719,7 @@
 20
 40
 04
-78
+aa
 1e
 f0
 fe
@@ -4599,7 +4799,7 @@
 20
 21
 04
-93
+c5
 1f
 e0
 ff
@@ -4679,7 +4879,7 @@
 20
 40
 04
-cb
+fd
 18
 42
 60
@@ -4687,7 +4887,7 @@
 20
 20
 04
-78
+aa
 58
 00
 00
@@ -4695,7 +4895,7 @@
 20
 20
 04
-7f
+b1
 70
 4b
 f7
@@ -4719,15 +4919,15 @@
 20
 22
 84
-b1
+e3
 20
 40
 04
-c2
+f4
 24
 34
 04
-b3
+e5
 1a
 46
 7c
@@ -4735,7 +4935,7 @@
 20
 21
 04
-b3
+e5
 1a
 40
 a5
@@ -4755,7 +4955,7 @@
 20
 40
 04
-b5
+e7
 20
 40
 5d
@@ -4795,7 +4995,7 @@
 20
 40
 04
-cb
+fd
 6f
 e1
 4c
@@ -4887,7 +5087,7 @@
 c0
 00
 04
-c8
+fa
 98
 46
 7e
@@ -4923,7 +5123,7 @@
 c2
 00
 04
-cb
+fd
 20
 60
 00
@@ -4974,8 +5174,8 @@
 0a
 20
 40
-04
-cf
+05
+01
 98
 46
 7c
@@ -4994,8 +5194,8 @@
 06
 c0
 ad
-04
-f7
+05
+29
 1a
 22
 02
@@ -5010,8 +5210,8 @@
 03
 20
 21
-04
-f7
+05
+29
 18
 c0
 8c
@@ -5026,8 +5226,8 @@
 00
 24
 22
-84
-f7
+85
+29
 1f
 22
 7e
@@ -5050,8 +5250,8 @@
 00
 24
 22
-84
-e2
+85
+14
 e8
 41
 00
@@ -5074,16 +5274,16 @@
 01
 20
 40
-04
-cf
+05
+01
 98
 46
 7c
 00
 24
-22
-84
-f7
+22
+85
+29
 20
 20
 7e
@@ -5102,12 +5302,12 @@
 00
 20
 40
-04
-de
+05
+10
 24
 34
 05
-03
+35
 6a
 21
 4b
@@ -5134,8 +5334,8 @@
 f3
 20
 20
-04
-f8
+05
+2a
 6f
 e1
 4b
@@ -5187,31 +5387,31 @@
 c0
 00
 85
-16
+48
 c0
 02
 05
-20
+52
 c0
 03
 85
-3f
+71
 c0
 05
 05
-65
+97
 c0
 06
 85
-5a
+8c
 c0
 08
 05
-43
+75
 20
 20
 05
-6e
+a0
 70
 47
 c6
@@ -5307,7 +5507,7 @@
 20
 40
 05
-47
+79
 e7
 e0
 80
@@ -5347,7 +5547,7 @@
 24
 21
 05
-3d
+6f
 e7
 e1
 00
@@ -5375,7 +5575,7 @@
 20
 20
 05
-38
+6a
 70
 4b
 f7
@@ -5391,7 +5591,7 @@
 20
 20
 05
-50
+82
 70
 4b
 f7
@@ -5407,7 +5607,7 @@
 20
 20
 05
-50
+82
 6f
 e4
 4b
@@ -5415,11 +5615,11 @@
 c2
 89
 85
-4c
+7e
 c2
 89
 05
-4e
+80
 58
 00
 00
@@ -5612,8 +5812,8 @@
 60
 00
 00
-90
-13
+14
+b7
 aa
 55
 40
@@ -6861,210 +7061,10 @@
 02
 40
 00
-d4
-1a
-a7
-bc
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
+9c
+1b
+6d
+38
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-8c
-0e
+c6
+4b
Index: output/flash.dat
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/YJX_CL_Switch_3M_2Ch/output/flash.dat	(revision 1191)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/YJX_CL_Switch_3M_2Ch/output/flash.dat	(working copy)
@@ -2,8 +2,8 @@
 02
 aa
 55
-ea
-15
+b2
+16
 c2
 84
 00
@@ -59,11 +59,11 @@
 c0
 67
 03
-3a
+46
 c0
 67
-83
-e4
+84
+0b
 c0
 68
 02
@@ -71,11 +71,11 @@
 c0
 68
 83
-65
+8c
 c0
 6a
 03
-4b
+72
 c0
 6b
 01
@@ -83,19 +83,19 @@
 c0
 6c
 82
-7e
+8a
 c0
 6d
 02
-df
+eb
 c0
 6f
 03
-9b
+c2
 c0
 74
 02
-ec
+f8
 20
 20
 13
@@ -111,15 +111,15 @@
 c0
 43
 82
-e8
+f4
 c0
 50
 83
-00
+0c
 c0
 60
 03
-0a
+16
 c0
 6e
 82
@@ -139,7 +139,7 @@
 c0
 76
 03
-31
+3d
 20
 20
 13
@@ -295,7 +295,7 @@
 20
 40
 04
-54
+86
 20
 34
 00
@@ -606,8 +606,8 @@
 00
 20
 40
-40
-8e
+02
+72
 20
 40
 3d
@@ -623,7 +623,7 @@
 20
 40
 03
-5d
+84
 6f
 e0
 c9
@@ -643,7 +643,7 @@
 20
 40
 03
-a2
+c9
 20
 20
 3d
@@ -1019,7 +1019,7 @@
 24
 3a
 05
-0d
+3f
 20
 40
 3f
@@ -1271,7 +1271,7 @@
 20
 20
 03
-5d
+84
 20
 40
 26
@@ -1371,7 +1371,7 @@
 20
 40
 04
-15
+47
 20
 40
 01
@@ -1507,11 +1507,11 @@
 20
 40
 03
-56
+7d
 20
 40
 03
-5d
+84
 20
 20
 3e
@@ -1527,7 +1527,7 @@
 20
 40
 02
-a3
+af
 20
 40
 40
@@ -1791,7 +1791,7 @@
 20
 40
 03
-5d
+84
 20
 20
 01
@@ -2379,7 +2379,7 @@
 c2
 81
 84
-1f
+51
 c2
 80
 a3
@@ -2488,6 +2488,14 @@
 20
 47
 ff
+6f
+e0
+c9
+27
+c0
+01
+82
+70
 20
 40
 40
@@ -2495,11 +2503,51 @@
 20
 40
 02
-70
+7c
+20
+20
+02
+72
+6f
+e0
+c9
+27
+c0
+01
+82
+75
 20
 20
 40
-98
+99
+6f
+e0
+c9
+92
+c0
+00
+40
+c2
+c0
+00
+c0
+c0
+c0
+01
+40
+c4
+c0
+01
+c0
+c4
+c0
+02
+40
+c6
+20
+20
+40
+c0
 6f
 e0
 c9
@@ -2547,7 +2595,7 @@
 20
 3a
 02
-aa
+b6
 67
 e0
 cb
@@ -2583,7 +2631,7 @@
 20
 40
 02
-a7
+b3
 20
 40
 40
@@ -2595,7 +2643,7 @@
 20
 40
 02
-bf
+cb
 20
 40
 44
@@ -2611,7 +2659,7 @@
 20
 40
 02
-d4
+e0
 20
 40
 45
@@ -2643,15 +2691,15 @@
 20
 40
 02
-99
+a5
 20
 40
 02
-d7
+e3
 20
 20
 02
-96
+a2
 da
 60
 4c
@@ -2703,7 +2751,7 @@
 20
 21
 02
-a5
+b1
 68
 48
 cb
@@ -2727,7 +2775,7 @@
 da
 40
 02
-aa
+b6
 20
 20
 31
@@ -2783,11 +2831,11 @@
 20
 41
 02
-b9
+c5
 24
 41
 02
-bd
+c9
 20
 20
 48
@@ -2823,7 +2871,7 @@
 c0
 00
 02
-c5
+d1
 6f
 e4
 4b
@@ -2839,7 +2887,7 @@
 20
 20
 02
-c8
+d4
 6f
 e4
 4b
@@ -2875,7 +2923,7 @@
 20
 22
 82
-cf
+db
 20
 20
 44
@@ -2927,7 +2975,7 @@
 da
 40
 02
-dc
+e8
 20
 20
 31
@@ -3022,8 +3070,8 @@
 00
 c0
 04
-82
-f4
+83
+00
 20
 20
 4d
@@ -3123,7 +3171,7 @@
 c0
 02
 03
-0d
+19
 20
 20
 19
@@ -3139,11 +3187,11 @@
 c0
 05
 03
-12
+1e
 c0
 09
 03
-21
+2d
 20
 20
 1c
@@ -3171,7 +3219,7 @@
 c2
 81
 83
-1c
+28
 6f
 e1
 44
@@ -3199,11 +3247,11 @@
 24
 22
 83
-18
+24
 24
 34
 03
-18
+24
 20
 20
 1e
@@ -3326,100 +3374,208 @@
 40
 20
 40
-40
-8e
+03
+4e
 20
 40
-3f
-7e
+03
+54
 20
 40
-3f
-83
+02
+72
 20
-40
-40
-dc
+20
+3f
+75
 6f
 e0
-c8
-d0
-1f
-e1
-7e
-1f
-67
+c9
+27
+c1
+81
+80
+00
+d8
 e0
-c8
-d0
-24
-34
-47
-28
+00
+38
 20
 40
-03
-48
+46
+f4
+d8
+e0
+00
+39
 20
 20
-45
-44
+46
+f4
 6f
 e0
 c9
 27
 c1
-01
+81
 80
 00
-20
-20
-47
-1a
-20
-40
-3f
-65
 6f
 e0
 c9
-27
-c0
-05
-83
-52
-20
-40
-42
-32
-da
-60
-4a
-a3
-20
-40
-42
-2b
-20
+92
+c1
+81
+80
+00
+6f
+e1
+48
+d1
 20
 40
-8e
+03
+5f
+67
+e1
+48
+d1
+6f
+e1
+48
+d3
 20
 40
 03
-59
-da
-60
-4b
+5f
+67
+e1
+48
+d3
+20
+60
+00
+00
+c2
+85
+83
+62
+c3
+05
+83
+66
+20
+60
+00
+00
+1f
+e6
+7e
+00
+20
+40
+03
+66
+1f
+e6
+7e
+00
+20
+60
+00
+00
+1f
 e3
+04
+00
+79
+3f
+84
+0f
+98
+40
+fe
+00
+67
+e1
+4c
+39
+6f
+e0
+cc
+3a
+1f
+e6
+7c
+07
+24
+41
+03
+6f
+6f
+e1
+4c
+39
+20
+60
+00
+00
+58
+00
+07
+ff
+67
+e1
+4c
+39
+20
+60
+00
+00
+20
+40
+3f
+65
+6f
+e0
+c9
+27
+c0
+05
+83
+79
+20
+40
+42
+32
+da
+60
+4a
+a3
 20
 40
 42
 2b
 20
 20
+02
+72
+20
 40
-8e
+03
+80
+da
+60
+4b
+e3
+20
+40
+42
+2b
+20
+20
+02
+72
 6f
 e0
 c9
@@ -3427,7 +3583,7 @@
 c0
 05
 83
-59
+80
 20
 20
 42
@@ -3463,7 +3619,7 @@
 c0
 05
 83
-63
+8a
 58
 00
 08
@@ -3495,23 +3651,23 @@
 20
 40
 03
-6e
+95
 20
 40
 03
-73
+9a
 20
 40
 03
-78
+9f
 20
 40
 03
-7d
+a4
 20
 40
 03
-8a
+b1
 20
 20
 41
@@ -3523,7 +3679,7 @@
 20
 40
 03
-97
+be
 20
 40
 41
@@ -3543,7 +3699,7 @@
 20
 40
 03
-97
+be
 20
 40
 41
@@ -3563,7 +3719,7 @@
 20
 40
 03
-97
+be
 20
 40
 41
@@ -3607,7 +3763,7 @@
 c0
 7f
 83
-86
+ad
 20
 20
 41
@@ -3619,7 +3775,7 @@
 20
 40
 03
-99
+c0
 68
 48
 c9
@@ -3659,7 +3815,7 @@
 c0
 7f
 83
-93
+ba
 20
 20
 41
@@ -3671,7 +3827,7 @@
 20
 40
 03
-99
+c0
 68
 48
 c9
@@ -3707,11 +3863,11 @@
 20
 40
 03
-ac
+d3
 20
 40
 03
-c0
+e7
 20
 40
 46
@@ -3719,7 +3875,7 @@
 20
 40
 03
-a2
+c9
 20
 20
 46
@@ -3731,7 +3887,7 @@
 c2
 95
 03
-a6
+cd
 c2
 95
 be
@@ -3795,7 +3951,7 @@
 20
 40
 03
-b5
+dc
 20
 20
 40
@@ -3823,7 +3979,7 @@
 c0
 7f
 83
-bc
+e3
 20
 20
 40
@@ -3835,7 +3991,7 @@
 20
 40
 03
-99
+c0
 68
 48
 c9
@@ -3859,11 +4015,11 @@
 20
 40
 03
-97
+be
 20
 40
 03
-c7
+ee
 68
 48
 cc
@@ -3887,7 +4043,7 @@
 20
 40
 03
-d6
+fd
 67
 e0
 cc
@@ -3899,7 +4055,7 @@
 20
 3a
 03
-d2
+f9
 6f
 e0
 cc
@@ -3962,12 +4118,12 @@
 00
 c0
 03
-83
-e0
+84
+07
 c0
 00
-03
-e2
+04
+09
 20
 60
 00
@@ -3999,6 +4155,14 @@
 6f
 e0
 c9
+27
+c0
+01
+84
+19
+6f
+e0
+c9
 92
 1f
 e2
@@ -4010,8 +4174,8 @@
 ab
 c2
 9e
-83
-f0
+84
+22
 18
 42
 7e
@@ -4038,20 +4202,56 @@
 ee
 6f
 e0
+c9
+92
+1f
+e0
+fe
+01
+1f
+e6
+7c
+05
+20
+42
+84
+20
+67
+e0
+c9
+92
+20
+40
+02
+6d
+20
+20
+45
+ee
+58
+00
+00
+00
+20
+60
+00
+00
+6f
+e0
 cc
 35
 24
 3a
-03
-fb
+04
+2d
 6f
 e4
 4b
 ab
 c2
 8e
-03
-f8
+04
+2a
 18
 42
 7e
@@ -4066,8 +4266,8 @@
 01
 20
 20
-03
-ed
+04
+16
 18
 42
 7e
@@ -4078,8 +4278,8 @@
 00
 20
 20
-03
-f6
+04
+28
 18
 42
 7e
@@ -4094,8 +4294,8 @@
 ff
 20
 20
-03
-ed
+04
+16
 6f
 e0
 cb
@@ -4111,27 +4311,27 @@
 c0
 01
 04
-0b
+3d
 c0
 02
 84
-0d
+3f
 c0
 04
 04
-0f
+41
 c0
 05
 84
-11
+43
 c0
 07
 04
-13
+45
 c0
 08
 84
-09
+3b
 20
 60
 00
@@ -4190,8 +4390,8 @@
 2a
 20
 3a
-03
-ff
+04
+31
 1f
 e2
 24
@@ -4207,7 +4407,7 @@
 c0
 57
 84
-27
+59
 20
 60
 00
@@ -4223,7 +4423,7 @@
 20
 20
 05
-07
+39
 20
 60
 00
@@ -4283,31 +4483,31 @@
 c0
 00
 84
-36
+68
 c0
 01
 04
-39
+6b
 c0
 01
 84
-3b
+6d
 c0
 02
 04
-3d
+6f
 c0
 02
 84
-95
+c7
 c0
 03
 04
-bb
+ed
 c0
 7f
 84
-35
+67
 20
 20
 13
@@ -4319,7 +4519,7 @@
 20
 40
 04
-1c
+4e
 70
 4b
 f7
@@ -4367,7 +4567,7 @@
 24
 22
 84
-b3
+e5
 6f
 e1
 4c
@@ -4379,23 +4579,23 @@
 24
 22
 84
-b3
+e5
 20
 40
 04
-49
+7b
 24
 34
 04
-b3
+e5
 20
 20
 04
-b1
+e3
 20
 40
 04
-54
+86
 24
 74
 00
@@ -4503,7 +4703,7 @@
 20
 40
 04
-cb
+fd
 18
 42
 60
@@ -4519,7 +4719,7 @@
 20
 40
 04
-78
+aa
 1e
 f0
 fe
@@ -4599,7 +4799,7 @@
 20
 21
 04
-93
+c5
 1f
 e0
 ff
@@ -4679,7 +4879,7 @@
 20
 40
 04
-cb
+fd
 18
 42
 60
@@ -4687,7 +4887,7 @@
 20
 20
 04
-78
+aa
 58
 00
 00
@@ -4695,7 +4895,7 @@
 20
 20
 04
-7f
+b1
 70
 4b
 f7
@@ -4719,15 +4919,15 @@
 20
 22
 84
-b1
+e3
 20
 40
 04
-c2
+f4
 24
 34
 04
-b3
+e5
 1a
 46
 7c
@@ -4735,7 +4935,7 @@
 20
 21
 04
-b3
+e5
 1a
 40
 a5
@@ -4755,7 +4955,7 @@
 20
 40
 04
-b5
+e7
 20
 40
 5d
@@ -4795,7 +4995,7 @@
 20
 40
 04
-cb
+fd
 6f
 e1
 4c
@@ -4887,7 +5087,7 @@
 c0
 00
 04
-c8
+fa
 98
 46
 7e
@@ -4923,7 +5123,7 @@
 c2
 00
 04
-cb
+fd
 20
 60
 00
@@ -4974,8 +5174,8 @@
 0a
 20
 40
-04
-cf
+05
+01
 98
 46
 7c
@@ -4994,8 +5194,8 @@
 06
 c0
 ad
-04
-f7
+05
+29
 1a
 22
 02
@@ -5010,8 +5210,8 @@
 03
 20
 21
-04
-f7
+05
+29
 18
 c0
 8c
@@ -5026,8 +5226,8 @@
 00
 24
 22
-84
-f7
+85
+29
 1f
 22
 7e
@@ -5050,8 +5250,8 @@
 00
 24
 22
-84
-e2
+85
+14
 e8
 41
 00
@@ -5074,16 +5274,16 @@
 01
 20
 40
-04
-cf
+05
+01
 98
 46
 7c
 00
 24
-22
-84
-f7
+22
+85
+29
 20
 20
 7e
@@ -5102,12 +5302,12 @@
 00
 20
 40
-04
-de
+05
+10
 24
 34
 05
-03
+35
 6a
 21
 4b
@@ -5134,8 +5334,8 @@
 f3
 20
 20
-04
-f8
+05
+2a
 6f
 e1
 4b
@@ -5187,31 +5387,31 @@
 c0
 00
 85
-16
+48
 c0
 02
 05
-20
+52
 c0
 03
 85
-3f
+71
 c0
 05
 05
-65
+97
 c0
 06
 85
-5a
+8c
 c0
 08
 05
-43
+75
 20
 20
 05
-6e
+a0
 70
 47
 c6
@@ -5307,7 +5507,7 @@
 20
 40
 05
-47
+79
 e7
 e0
 80
@@ -5347,7 +5547,7 @@
 24
 21
 05
-3d
+6f
 e7
 e1
 00
@@ -5375,7 +5575,7 @@
 20
 20
 05
-38
+6a
 70
 4b
 f7
@@ -5391,7 +5591,7 @@
 20
 20
 05
-50
+82
 70
 4b
 f7
@@ -5407,7 +5607,7 @@
 20
 20
 05
-50
+82
 6f
 e4
 4b
@@ -5415,11 +5615,11 @@
 c2
 89
 85
-4c
+7e
 c2
 89
 05
-4e
+80
 58
 00
 00
@@ -5612,8 +5812,8 @@
 60
 00
 00
-90
-13
+14
+b7
 aa
 55
 40
@@ -6861,210 +7061,10 @@
 02
 40
 00
-d4
-1a
-a7
-bc
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
+9c
+1b
+6d
+38
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-8c
-0e
+c6
+4b
Index: output/memmap.format
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/YJX_CL_Switch_3M_2Ch/output/memmap.format	(revision 1191)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/YJX_CL_Switch_3M_2Ch/output/memmap.format	(working copy)
@@ -2229,6 +2229,7 @@
 0x4c36 mem_mouse_key_temp_patch
 0x4c37 mem_mouse_reuse_2ice_gpio
 0x4c38 mem_mouse_ice_sdio_for_sensor_angle
+0x4c39 mem_mouse_temp_data
 0x48d0 mem_remote_car_hard_soft_switch
 0x48d1 mem_remote_car_queue_each_size
 0x48d2 mem_remote_car_queue_length
Index: output/program.lis
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/YJX_CL_Switch_3M_2Ch/output/program.lis	(revision 1191)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/YJX_CL_Switch_3M_2Ch/output/program.lis	(working copy)
@@ -13,29 +13,29 @@
 000a c064817a beq patch19_1 ,p_mouse_setgpio_hibernate 
 000b c06501ae beq patch19_2 ,p_mouse_lpm_before_common 
 000c c0660071 beq patch19_4 ,p_mouse_adc_read_start 
-000d c067033a beq patch19_6 ,p_mouse_motion 
-000e c06783e4 beq patch19_7 ,p_mouse_dpi_process 
+000d c0670346 beq patch19_6 ,p_mouse_motion 
+000e c067840b beq patch19_7 ,p_mouse_dpi_process 
 000f c068026d beq patch1a_0 ,p_mouse_seting_dpi 
-0010 c0688365 beq patch1a_1 ,p_mouse_check_key_gpio 
-0011 c06a034b beq patch1a_4 ,p_mouse_sensor_poweron 
+0010 c068838c beq patch1a_1 ,p_mouse_check_key_gpio 
+0011 c06a0372 beq patch1a_4 ,p_mouse_sensor_poweron 
 0012 c06b01d9 beq patch1a_6 ,p_mouse_priority_bb_event 
-0013 c06c827e beq patch1b_1 ,p_mouse_bb_event_timer 
-0014 c06d02df beq patch1b_2 ,p_mouse_start_discovery 
-0015 c06f039b beq patch1b_6 ,p_mouse_idle 
-0016 c07402ec beq patch1d_0 ,p_hid_rx_process 
+0013 c06c828a beq patch1b_1 ,p_mouse_bb_event_timer 
+0014 c06d02eb beq patch1b_2 ,p_mouse_start_discovery 
+0015 c06f03c2 beq patch1b_6 ,p_mouse_idle 
+0016 c07402f8 beq patch1d_0 ,p_hid_rx_process 
 0017 2020137c branch loop 
 
 pf_patch_ext:
 0018 c0198051 beq patch26_3 ,p_adc_init_data 
 0019 c01a0056 beq patch26_4 ,p_enable_adc 
-001a c04382e8 beq patch30_7 ,p_ui_timer_check 
-001b c0508300 beq patch34_1 ,p_le_slave_match 
-001c c060030a beq patch38_0 ,p_le_parse_l2cap 
+001a c04382f4 beq patch30_7 ,p_ui_timer_check 
+001b c050830c beq patch34_1 ,p_le_slave_match 
+001c c0600316 beq patch38_0 ,p_le_parse_l2cap 
 001d c06e824d beq patch3b_5 ,p_g24_dispatch 
 001e c0710228 beq patch3c_2 ,p_g24_pair_dispatch 
 001f c0748230 beq patch3d_1 ,p_g24_reconn_dispatch 
 0020 c075013d beq patch3d_2 ,p_g24_transmit_no_interrupt 
-0021 c0760331 beq patch3d_4 ,p_g24_lpm_wait 
+0021 c076033d beq patch3d_4 ,p_g24_lpm_wait 
 0022 2020137c branch loop 
 
 p_soft_reset:
@@ -88,7 +88,7 @@
 
 p_g24_load_ota_config_poweron:
 0047 20405b94 call iicd_load_gpio_init 
-0048 20400454 call p_g24_check_ota_data 
+0048 20400486 call p_g24_check_ota_data 
 0049 2034004b branch p_g24_load_ota_config ,user 
 004a 20600000 rtn 
 
@@ -184,18 +184,18 @@
 0093 204000cc call p_mouse_setting_config 
 0094 204041a7 call mouse_init_sunt 
 0095 20758000 rtn wake 
-0096 2040408e call mouse_dpi_config 
+0096 20400272 call p_mouse_seting_sensor_type 
 0097 20403d8a call mouse_usb_check_enable 
 0098 20404728 call mouse_drawing_optima_init 
 0099 204000f6 call p_mouse_cb_fuction 
-009a 2040035d call p_mouse_sensor_powerdown 
+009a 20400384 call p_mouse_sensor_powerdown 
 009b 6fe0c92a fetch 1 ,mem_usb_addr 
 009c c3838000 rtnbit1 7 
 
 p_mouse_init_wireless:
 009d 6fe1478c fetch 2 ,mem_ui_state_map 
 009e c2864553 bbit1 ui_state_btn_down ,mouse_start_discovery 
-009f 204003a2 call p_mouse_check_select_device_by_switch 
+009f 204003c9 call p_mouse_check_select_device_by_switch 
 00a0 20203d52 branch mouse_start_work 
 
 p_mouse_le_name_load:
@@ -311,7 +311,7 @@
 p_mouse_24g_package_data:
 00fb c6930000 rtnmark0 mark_24g 
 00fc 6fe0cbf6 fetch 1 ,mem_g24_ota_mode 
-00fd 243a050d nbranch p_mouse_24g_package_ota ,blank 
+00fd 243a053f nbranch p_mouse_24g_package_ota ,blank 
 00fe 20403f70 call mouse_motion 
 00ff 24740000 nrtn user 
 0100 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
@@ -388,7 +388,7 @@
 0139 67e0cba4 store 1 ,mem_mouse_search_dongle_action 
 013a 6fe14bbc fetch 2 ,mem_mouse_24g_search_dongle_time_init 
 013b 67e14ab2 store 2 ,mem_mouse_no_data_timer 
-013c 2020035d branch p_mouse_sensor_powerdown 
+013c 20200384 branch p_mouse_sensor_powerdown 
 
 p_g24_transmit_no_interrupt:
 013d 20402631 call g24_txdata_prep 
@@ -423,7 +423,7 @@
 0152 242c0165 nbranch p_g24_retransmit ,sync 
 0153 24378165 nbranch p_g24_retransmit ,user3 
 0154 20402672 call g24_ackpayload_parse 
-0155 20400415 call p_g24_mouse_parse_rx 
+0155 20400447 call p_g24_mouse_parse_rx 
 0156 20400158 call p_mouse_wakeup_24g 
 0157 20202651 branch g24_transmit_no_ack 
 
@@ -469,14 +469,14 @@
 0174 58000006 setarg pan_reg_config 
 0175 20405b0d call twspi_read 
 0176 c281be23 bbit1 3 ,mouse_app_enter_hibernate + 3 
-0177 20400356 call p_mouse_sensor_reset 
-0178 2040035d call p_mouse_sensor_powerdown 
+0177 2040037d call p_mouse_sensor_reset 
+0178 20400384 call p_mouse_sensor_powerdown 
 0179 20203e23 branch mouse_app_enter_hibernate + 3 
 
 p_mouse_setgpio_hibernate:
 017a 204042e9 call mouse_set_sdio_high 
 017b 20407fdc call clear_wake 
-017c 204002a3 call p_mouse_logo_led_off 
+017c 204002af call p_mouse_logo_led_off 
 017d 20404015 call mouse_before_hibernate_wheel_gpio_set 
 017e 6848c910 fetcht 1 ,mem_matrix_public_gpio 
 017f 20406069 call gpio_out_active 
@@ -556,7 +556,7 @@
 01bb 58000000 setarg 0 
 01bc 67e3c8d0 store 7 ,mem_mouse_key 
 01bd 704be101 jam 1 ,mem_sensor_shutdown_flag 
-01be 2040035d call p_mouse_sensor_powerdown 
+01be 20400384 call p_mouse_sensor_powerdown 
 01bf 202001c5 branch p_g24_long_sleep 
 
 p_g24_nodata_transmit:
@@ -749,7 +749,7 @@
 p_g24_transmit_dispatch:
 024f c6930000 rtnmark0 mark_24g 
 0250 6fe0c8a1 fetch 1 ,mem_24g_conn_sm 
-0251 c281841f bbit1 state_24g_ota ,p_g24_ota_dispatch 
+0251 c2818451 bbit1 state_24g_ota ,p_g24_ota_dispatch 
 0252 c280a340 bbit1 state_24g_pair ,g24_pair_dispatch 
 0253 c2812580 bbit1 state_24g_reconn ,g24_reconn_dispatch 
 0254 6fe0c8bd fetch 1 ,mem_24g_transmit_by_interrupt 
@@ -785,1033 +785,1103 @@
 026c 202047ff branch mouse_24g_start_mode + 9 
 
 p_mouse_seting_dpi:
-026d 2040408f call mouse_setting_dpi_4_level 
-026e 20400270 call p_mouse_dpi_led_blink_delay 
-026f 20204098 branch mouse_seting_sensor_type 
+026d 6fe0c927 fetch 1 ,mem_config_sensor_type 
+026e c0018270 beq p3212 ,p_mouse_seting_dpi_next 
+026f 2040408f call mouse_setting_dpi_4_level 
+
+p_mouse_seting_dpi_next:
+0270 2040027c call p_mouse_dpi_led_blink_delay 
+0271 20200272 branch p_mouse_seting_sensor_type 
+
+p_mouse_seting_sensor_type:
+0272 6fe0c927 fetch 1 ,mem_config_sensor_type 
+0273 c0018275 beq p3212 ,p_mouse_seting_3212_dpi 
+0274 20204099 branch mouse_seting_sensor_type + 1 
+
+p_mouse_seting_3212_dpi:
+0275 6fe0c992 fetch 1 ,mem_mouse_dpi 
+0276 c00040c2 beq mouse_dpi_level1 ,mouse_set_p3212_cpi0 
+0277 c000c0c0 beq mouse_dpi_level2 ,mouse_set_p3212_cpi1 
+0278 c00140c4 beq mouse_dpi_level3 ,mouse_set_p3212_cpi2 
+0279 c001c0c4 beq mouse_dpi_level4 ,mouse_set_p3212_cpi2 
+027a c00240c6 beq mouse_dpi_level5 ,mouse_set_p3212_cpi3 
+027b 202040c0 branch mouse_set_p3212_cpi1 
 
 p_mouse_dpi_led_blink_delay:
-0270 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
-0271 c17f8000 rtneq gpio_disable 
-0272 6fe14ac2 fetch 2 ,mem_mouse_discovery_timer 
-0273 247a0000 nrtn blank 
-0274 6fe14883 fetch 2 ,mem_24g_pair_timeout 
-0275 247a0000 nrtn blank 
-0276 6fe14887 fetch 2 ,mem_24g_reconn_timeout 
-0277 247a0000 nrtn blank 
-0278 6fe0cba7 fetch 1 ,mem_mouse_device_poweron_timer_count 
-0279 247a0000 nrtn blank 
-027a 6fe0cbc1 fetch 1 ,mem_mouse_dpi_led_delay_count_init 
-027b 203a02aa branch p_mouse_dpi_led_blink_init ,blank 
-027c 67e0cba8 store 1 ,mem_mouse_dpi_led_delay_count 
-027d 20600000 rtn 
+027c 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
+027d c17f8000 rtneq gpio_disable 
+027e 6fe14ac2 fetch 2 ,mem_mouse_discovery_timer 
+027f 247a0000 nrtn blank 
+0280 6fe14883 fetch 2 ,mem_24g_pair_timeout 
+0281 247a0000 nrtn blank 
+0282 6fe14887 fetch 2 ,mem_24g_reconn_timeout 
+0283 247a0000 nrtn blank 
+0284 6fe0cba7 fetch 1 ,mem_mouse_device_poweron_timer_count 
+0285 247a0000 nrtn blank 
+0286 6fe0cbc1 fetch 1 ,mem_mouse_dpi_led_delay_count_init 
+0287 203a02b6 branch p_mouse_dpi_led_blink_init ,blank 
+0288 67e0cba8 store 1 ,mem_mouse_dpi_led_delay_count 
+0289 20600000 rtn 
 
 p_mouse_bb_event_timer:
-027e 20403e9b call mouse_adc_read 
-027f 20404956 call mouse_low_voltage_led_timer 
-0280 2040232b call g24_pair_timeout_timer 
-0281 20402556 call g24_reconn_timeout_timer 
-0282 204047cd call mouse_24g_long_sleep_param_update_timer 
-0283 204048be call mouse_device_poweron_timer 
-0284 204002a7 call p_mouse_dpi_led_blink_delay_timer 
-0285 2040407c call mouse_dpi_key_check_long_press 
-0286 204044cc call mouse_bt_discovery_check 
-0287 204002bf call p_mouse_commbination_key_process 
-0288 204044ff call mouse_check_discovery_timeout_timer 
-0289 20404504 call mouse_check_direct_timeout_timer 
-028a 20404512 call mouse_le_enable_att_list_timer 
-028b 204002d4 call p_mouse_le_battery_updata_timer 
-028c 20404515 call mouse_le_send_smp_security_request_timer 
-028d 2040452a call mouse_check_hid_handshake_timer 
-028e 2040452d call mouse_bt_check_sniff_req_timeout_timer 
-028f 20404532 call mouse_check_reconnect_delay_long_sleep 
-0290 20404535 call mouse_current_mult_update_timer 
-0291 20404022 call mouse_wheel_trigger_timer 
-0292 20404547 call mouse_store_information_delay_timer 
-0293 20400299 call p_mouse_logo_led_on_timer 
-0294 204002d7 call p_mouse_check_no_data_timeout_timer 
-0295 20200296 branch p_mouse_g24_ota_reset_timer 
+028a 20403e9b call mouse_adc_read 
+028b 20404956 call mouse_low_voltage_led_timer 
+028c 2040232b call g24_pair_timeout_timer 
+028d 20402556 call g24_reconn_timeout_timer 
+028e 204047cd call mouse_24g_long_sleep_param_update_timer 
+028f 204048be call mouse_device_poweron_timer 
+0290 204002b3 call p_mouse_dpi_led_blink_delay_timer 
+0291 2040407c call mouse_dpi_key_check_long_press 
+0292 204044cc call mouse_bt_discovery_check 
+0293 204002cb call p_mouse_commbination_key_process 
+0294 204044ff call mouse_check_discovery_timeout_timer 
+0295 20404504 call mouse_check_direct_timeout_timer 
+0296 20404512 call mouse_le_enable_att_list_timer 
+0297 204002e0 call p_mouse_le_battery_updata_timer 
+0298 20404515 call mouse_le_send_smp_security_request_timer 
+0299 2040452a call mouse_check_hid_handshake_timer 
+029a 2040452d call mouse_bt_check_sniff_req_timeout_timer 
+029b 20404532 call mouse_check_reconnect_delay_long_sleep 
+029c 20404535 call mouse_current_mult_update_timer 
+029d 20404022 call mouse_wheel_trigger_timer 
+029e 20404547 call mouse_store_information_delay_timer 
+029f 204002a5 call p_mouse_logo_led_on_timer 
+02a0 204002e3 call p_mouse_check_no_data_timeout_timer 
+02a1 202002a2 branch p_mouse_g24_ota_reset_timer 
 
 p_mouse_g24_ota_reset_timer:
-0296 da604c1d arg mem_g24_ota_reset_timer ,regc 
-0297 da405d8c arg soft_reset_chip ,regb 
-0298 2020318a branch timer_single_step 
+02a2 da604c1d arg mem_g24_ota_reset_timer ,regc 
+02a3 da405d8c arg soft_reset_chip ,regb 
+02a4 2020318a branch timer_single_step 
 
 p_mouse_logo_led_on_timer:
-0299 6fe0cbed fetch 1 ,mem_mouse_logo_led_gpio 
-029a c17f8000 rtneq gpio_disable 
-029b 6fe14ab2 fetch 2 ,mem_mouse_no_data_timer 
-029c 207a0000 rtn blank 
-029d 6fe14bbe fetch 2 ,mem_mouse_no_data_timeout 
-029e 68494ab2 fetcht 2 ,mem_mouse_no_data_timer 
-029f 98460400 isub temp ,temp 
-02a0 6fe14bee fetch 2 ,mem_mouse_logo_led_on_time_init 
-02a1 98467e00 isub temp ,pdata 
-02a2 202102a5 branch p_mouse_logo_led_on ,positive 
+02a5 6fe0cbed fetch 1 ,mem_mouse_logo_led_gpio 
+02a6 c17f8000 rtneq gpio_disable 
+02a7 6fe14ab2 fetch 2 ,mem_mouse_no_data_timer 
+02a8 207a0000 rtn blank 
+02a9 6fe14bbe fetch 2 ,mem_mouse_no_data_timeout 
+02aa 68494ab2 fetcht 2 ,mem_mouse_no_data_timer 
+02ab 98460400 isub temp ,temp 
+02ac 6fe14bee fetch 2 ,mem_mouse_logo_led_on_time_init 
+02ad 98467e00 isub temp ,pdata 
+02ae 202102b1 branch p_mouse_logo_led_on ,positive 
 
 p_mouse_logo_led_off:
-02a3 6848cbed fetcht 1 ,mem_mouse_logo_led_gpio 
-02a4 20206065 branch gpio_out_inactive 
+02af 6848cbed fetcht 1 ,mem_mouse_logo_led_gpio 
+02b0 20206065 branch gpio_out_inactive 
 
 p_mouse_logo_led_on:
-02a5 6848cbed fetcht 1 ,mem_mouse_logo_led_gpio 
-02a6 20406069 call gpio_out_active 
+02b1 6848cbed fetcht 1 ,mem_mouse_logo_led_gpio 
+02b2 20406069 call gpio_out_active 
 
 p_mouse_dpi_led_blink_delay_timer:
-02a7 da604ba8 arg mem_mouse_dpi_led_delay_count ,regc 
-02a8 da4002aa arg p_mouse_dpi_led_blink_init ,regb 
-02a9 2020318a branch timer_single_step 
+02b3 da604ba8 arg mem_mouse_dpi_led_delay_count ,regc 
+02b4 da4002b6 arg p_mouse_dpi_led_blink_init ,regb 
+02b5 2020318a branch timer_single_step 
 
 p_mouse_dpi_led_blink_init:
-02aa 6fe0c927 fetch 1 ,mem_config_sensor_type 
-02ab c001c8f2 beq p3212 ,mouse_dpi_led_blink_init 
-02ac c005c8f2 beq ka8g2 ,mouse_dpi_led_blink_init 
-02ad 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
-02ae 67e0c92f store 1 ,mem_mouse_struct_led_gpio 
-02af 6fe14bc2 fetch 2 ,mem_mouse_dpi_led_blink_time 
-02b0 67e14930 store 2 ,mem_mouse_on_time 
-02b1 67e14932 store 2 ,mem_mouse_off_time 
-02b2 da200000 arg 0 ,rega 
-02b3 6848c992 fetcht 1 ,mem_mouse_dpi 
-02b4 18408402 increase 2 ,temp 
-02b5 18467c03 sub temp ,3 ,null 
-02b6 204102b9 call p_mouse_dpi_led_blink_init_level_4 ,positive 
-02b7 244102bd ncall p_mouse_dpi_led_blink_count_clean ,positive 
-02b8 202048ff branch mouse_dpi_led_blink_init_end 
+02b6 6fe0c927 fetch 1 ,mem_config_sensor_type 
+02b7 c001c8f2 beq p3212 ,mouse_dpi_led_blink_init 
+02b8 c005c8f2 beq ka8g2 ,mouse_dpi_led_blink_init 
+02b9 6fe0c923 fetch 1 ,mem_dpi_led_gpio 
+02ba 67e0c92f store 1 ,mem_mouse_struct_led_gpio 
+02bb 6fe14bc2 fetch 2 ,mem_mouse_dpi_led_blink_time 
+02bc 67e14930 store 2 ,mem_mouse_on_time 
+02bd 67e14932 store 2 ,mem_mouse_off_time 
+02be da200000 arg 0 ,rega 
+02bf 6848c992 fetcht 1 ,mem_mouse_dpi 
+02c0 18408402 increase 2 ,temp 
+02c1 18467c03 sub temp ,3 ,null 
+02c2 204102c5 call p_mouse_dpi_led_blink_init_level_4 ,positive 
+02c3 244102c9 ncall p_mouse_dpi_led_blink_count_clean ,positive 
+02c4 202048ff branch mouse_dpi_led_blink_init_end 
 
 p_mouse_dpi_led_blink_init_level_4:
-02b9 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-02ba c40e0000 rtnbit0 mouse_enable_dpi_level_4 
-02bb 18408401 increase 1 ,temp 
-02bc 20600000 rtn 
+02c5 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+02c6 c40e0000 rtnbit0 mouse_enable_dpi_level_4 
+02c7 18408401 increase 1 ,temp 
+02c8 20600000 rtn 
 
 p_mouse_dpi_led_blink_count_clean:
-02bd 184085fd increase -3 ,temp 
-02be 20600000 rtn 
+02c9 184085fd increase -3 ,temp 
+02ca 20600000 rtn 
 
 p_mouse_commbination_key_process:
-02bf 6fe0c938 fetch 1 ,mem_device_flag 
-02c0 c00002c5 beq mode_24g_device ,p_mouse_24g_commbination_key_process 
-02c1 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-02c2 c41a8000 rtnbit0 mouse_enable_commbination_key_by_bt_discovery 
-02c3 6848cbca fetcht 1 ,mem_mouse_commbination_key_bt 
-02c4 202002c8 branch p_mouse_commbination_key_start 
+02cb 6fe0c938 fetch 1 ,mem_device_flag 
+02cc c00002d1 beq mode_24g_device ,p_mouse_24g_commbination_key_process 
+02cd 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+02ce c41a8000 rtnbit0 mouse_enable_commbination_key_by_bt_discovery 
+02cf 6848cbca fetcht 1 ,mem_mouse_commbination_key_bt 
+02d0 202002d4 branch p_mouse_commbination_key_start 
 
 p_mouse_24g_commbination_key_process:
-02c5 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-02c6 c4190000 rtnbit0 mouse_enable_commbination_key_by_24g_pairing 
-02c7 6848cbcb fetcht 1 ,mem_mouse_commbination_key_24g 
+02d1 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+02d2 c4190000 rtnbit0 mouse_enable_commbination_key_by_24g_pairing 
+02d3 6848cbcb fetcht 1 ,mem_mouse_commbination_key_24g 
 
 p_mouse_commbination_key_start:
-02c8 6048cb9d storet 1 ,mem_mouse_commbination_key 
-02c9 20404115 call mouse_check_key_gpio 
-02ca 1fe17e07 and pdata ,0x07 ,pdata 
-02cb 6848cb9d fetcht 1 ,mem_mouse_commbination_key 
-02cc 98467c00 isub temp ,null 
-02cd 202282cf branch p_mouse_commbination_key_down ,zero 
-02ce 202044eb branch mouse_commbination_key_up 
+02d4 6048cb9d storet 1 ,mem_mouse_commbination_key 
+02d5 20404115 call mouse_check_key_gpio 
+02d6 1fe17e07 and pdata ,0x07 ,pdata 
+02d7 6848cb9d fetcht 1 ,mem_mouse_commbination_key 
+02d8 98467c00 isub temp ,null 
+02d9 202282db branch p_mouse_commbination_key_down ,zero 
+02da 202044eb branch mouse_commbination_key_up 
 
 p_mouse_commbination_key_down:
-02cf 204044f6 call mouse_combination_ui_timer 
-02d0 6fe0cb9f fetch 1 ,mem_commbination_key_statue 
-02d1 c1008000 rtneq commbination_key_state_down 
-02d2 704b9f01 jam commbination_key_state_down ,mem_commbination_key_statue 
-02d3 20600000 rtn 
+02db 204044f6 call mouse_combination_ui_timer 
+02dc 6fe0cb9f fetch 1 ,mem_commbination_key_statue 
+02dd c1008000 rtneq commbination_key_state_down 
+02de 704b9f01 jam commbination_key_state_down ,mem_commbination_key_statue 
+02df 20600000 rtn 
 
 p_mouse_le_battery_updata_timer:
-02d4 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-02d5 c39d8000 rtnbit1 mouse_enable_le_battery_service_cancel 
-02d6 2020451f branch mouse_le_battery_updata_timer 
+02e0 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+02e1 c39d8000 rtnbit1 mouse_enable_le_battery_service_cancel 
+02e2 2020451f branch mouse_le_battery_updata_timer 
 
 p_mouse_check_no_data_timeout_timer:
-02d7 6fe0c92a fetch 1 ,mem_usb_addr 
-02d8 c3838000 rtnbit1 7 
-02d9 da604ab2 arg mem_mouse_no_data_timer ,regc 
-02da da4002dc arg p_mouse_check_no_data_timeout ,regb 
-02db 20203191 branch timer_single_step_2b 
+02e3 6fe0c92a fetch 1 ,mem_usb_addr 
+02e4 c3838000 rtnbit1 7 
+02e5 da604ab2 arg mem_mouse_no_data_timer ,regc 
+02e6 da4002e8 arg p_mouse_check_no_data_timeout ,regb 
+02e7 20203191 branch timer_single_step_2b 
 
 p_mouse_check_no_data_timeout:
-02dc 6fe0c938 fetch 1 ,mem_device_flag 
-02dd c00001b7 beq mode_24g_device ,p_mouse_24g_hibernate_set 
-02de 2020431b branch mouse_disconnect 
+02e8 6fe0c938 fetch 1 ,mem_device_flag 
+02e9 c00001b7 beq mode_24g_device ,p_mouse_24g_hibernate_set 
+02ea 2020431b branch mouse_disconnect 
 
 p_mouse_start_discovery:
-02df 6fe1478c fetch 2 ,mem_ui_state_map 
-02e0 2feffe0b isolate1 ui_state_ble_adv ,pdata 
-02e1 2040c581 call mouse_stop_le_adv ,true 
-02e2 6fe1478c fetch 2 ,mem_ui_state_map 
-02e3 2feffe07 isolate1 ui_state_bt_reconnect ,pdata 
-02e4 2040c322 call mouse_cancel_reconnect ,true 
-02e5 58000000 setarg 0 
-02e6 67e14af2 store 2 ,mem_le_battery_level_updata_timer 
-02e7 20204554 branch mouse_start_discovery + 1 
+02eb 6fe1478c fetch 2 ,mem_ui_state_map 
+02ec 2feffe0b isolate1 ui_state_ble_adv ,pdata 
+02ed 2040c581 call mouse_stop_le_adv ,true 
+02ee 6fe1478c fetch 2 ,mem_ui_state_map 
+02ef 2feffe07 isolate1 ui_state_bt_reconnect ,pdata 
+02f0 2040c322 call mouse_cancel_reconnect ,true 
+02f1 58000000 setarg 0 
+02f2 67e14af2 store 2 ,mem_le_battery_level_updata_timer 
+02f3 20204554 branch mouse_start_discovery + 1 
 
 p_ui_timer_check:
-02e8 6fe0cbe2 fetch 1 ,mem_power_on_flag 
-02e9 245a7861 ncall ui_timer_init ,blank 
-02ea 704be200 jam 0 ,mem_power_on_flag 
-02eb 20207851 branch ui_timer_check + 1 
+02f4 6fe0cbe2 fetch 1 ,mem_power_on_flag 
+02f5 245a7861 ncall ui_timer_init ,blank 
+02f6 704be200 jam 0 ,mem_power_on_flag 
+02f7 20207851 branch ui_timer_check + 1 
 
 p_hid_rx_process:
-02ec 6fe10315 fetch 2 ,mem_l2cap_payload_ptr 
-02ed 1fe20c00 copy pdata ,contr 
-02ee efe08006 ifetch 1 ,contr 
-02ef 67e0c5f5 store 1 ,mem_l2cap_rcv_hidtype 
-02f0 1fe1040f and pdata ,0x0f ,temp 
-02f1 1ff1fe00 rshift4 pdata ,pdata 
-02f2 c00482f4 beq hid_type_set_idle ,p_hid_rx_process_handshake 
-02f3 20204d93 branch hid_rx_process + 7 
+02f8 6fe10315 fetch 2 ,mem_l2cap_payload_ptr 
+02f9 1fe20c00 copy pdata ,contr 
+02fa efe08006 ifetch 1 ,contr 
+02fb 67e0c5f5 store 1 ,mem_l2cap_rcv_hidtype 
+02fc 1fe1040f and pdata ,0x0f ,temp 
+02fd 1ff1fe00 rshift4 pdata ,pdata 
+02fe c0048300 beq hid_type_set_idle ,p_hid_rx_process_handshake 
+02ff 20204d93 branch hid_rx_process + 7 
 
 p_hid_rx_process_handshake:
-02f4 da200001 arg 1 ,rega 
-02f5 20404dc0 call hid_malloc_tx_buff 
-02f6 6fe144dc fetch 2 ,mem_hid_ctrl_remote_cid 
-02f7 e7e10005 istore 2 ,contw 
-02f8 58000000 setarg 0 
-02f9 e7e08005 istore 1 ,contw 
-02fa 70095001 jam 1 ,mem_ui_data_txbuff_length 
-02fb 6fe0c4e2 fetch 1 ,mem_hid_control_state 
-02fc 79207e06 set1 l2cap_channel_hid_handshake_done ,pdata 
-02fd 67e0c4e2 store 1 ,mem_hid_control_state 
-02fe 70095b12 jam bt_evt_hid_handshake ,mem_fifo_temp 
-02ff 20207871 branch ui_ipc_send_event 
+0300 da200001 arg 1 ,rega 
+0301 20404dc0 call hid_malloc_tx_buff 
+0302 6fe144dc fetch 2 ,mem_hid_ctrl_remote_cid 
+0303 e7e10005 istore 2 ,contw 
+0304 58000000 setarg 0 
+0305 e7e08005 istore 1 ,contw 
+0306 70095001 jam 1 ,mem_ui_data_txbuff_length 
+0307 6fe0c4e2 fetch 1 ,mem_hid_control_state 
+0308 79207e06 set1 l2cap_channel_hid_handshake_done ,pdata 
+0309 67e0c4e2 store 1 ,mem_hid_control_state 
+030a 70095b12 jam bt_evt_hid_handshake ,mem_fifo_temp 
+030b 20207871 branch ui_ipc_send_event 
 
 p_le_slave_match:
-0300 6fe0c3dd fetch 1 ,mem_le_md_count 
-0301 1fe0fe01 pincrease 1 
-0302 67e0c3dd store 1 ,mem_le_md_count 
-0303 c006165a beq le_md_max_count ,le_slave_cont 
-0304 2040191b call le_acknowledge 
-0305 2040196a call le_prepare_tx 
-0306 6fe082bd fetch 1 ,mem_le_tx_phy 
-0307 2040168b call le_enable_phy_by_pdata 
-0308 20401838 call le_transmit 
-0309 20201655 branch le_slave_match + 10 
+030c 6fe0c3dd fetch 1 ,mem_le_md_count 
+030d 1fe0fe01 pincrease 1 
+030e 67e0c3dd store 1 ,mem_le_md_count 
+030f c006165a beq le_md_max_count ,le_slave_cont 
+0310 2040191b call le_acknowledge 
+0311 2040196a call le_prepare_tx 
+0312 6fe082bd fetch 1 ,mem_le_tx_phy 
+0313 2040168b call le_enable_phy_by_pdata 
+0314 20401838 call le_transmit 
+0315 20201655 branch le_slave_match + 10 
 
 p_le_parse_l2cap:
-030a efe10006 ifetch 2 ,contr 
-030b c002030d beq le_l2cap_cid_att ,p_le_parse_att 
-030c 202019e4 branch le_parse_l2cap + 10 
+0316 efe10006 ifetch 2 ,contr 
+0317 c0020319 beq le_l2cap_cid_att ,p_le_parse_att 
+0318 202019e4 branch le_parse_l2cap + 10 
 
 p_le_parse_att:
-030d efe18006 ifetch 3 ,contr 
-030e 67e1c436 store 3 ,mem_le_att_opcode 
-030f c0050312 beq attop_read_request ,p_le_parse_att_read_request 
-0310 c0090321 beq attop_write_request ,p_le_parse_att_write_request 
-0311 20201cd3 branch le_parse_att + 2 
+0319 efe18006 ifetch 3 ,contr 
+031a 67e1c436 store 3 ,mem_le_att_opcode 
+031b c005031e beq attop_read_request ,p_le_parse_att_read_request 
+031c c009032d beq attop_write_request ,p_le_parse_att_write_request 
+031d 20201cd3 branch le_parse_att + 2 
 
 p_le_parse_att_read_request:
-0312 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-0313 c31d9de7 bbit0 mouse_enable_le_battery_service_cancel ,le_parse_att_read_request 
-0314 20401e8d call le_check_encrypt_state 
-0315 68494437 fetcht 2 ,mem_le_att_handle 
-0316 6fe0c3c0 fetch 1 ,mem_le_configuration 
-0317 c281831c bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
+031e 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+031f c31d9de7 bbit0 mouse_enable_le_battery_service_cancel ,le_parse_att_read_request 
+0320 20401e8d call le_check_encrypt_state 
+0321 68494437 fetcht 2 ,mem_le_att_handle 
+0322 6fe0c3c0 fetch 1 ,mem_le_configuration 
+0323 c2818328 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
 
 p_le_send_att_read_response:
-0318 6fe14437 fetch 2 ,mem_le_att_handle 
-0319 c0181ec8 beq 0x30 ,le_send_att_error_response_notfound 
-031a 68494437 fetcht 2 ,mem_le_att_handle 
-031b 20201deb branch le_send_att_read_response 
+0324 6fe14437 fetch 2 ,mem_le_att_handle 
+0325 c0181ec8 beq 0x30 ,le_send_att_error_response_notfound 
+0326 68494437 fetcht 2 ,mem_le_att_handle 
+0327 20201deb branch le_send_att_read_response 
 
 p_le_send_att_read_response_check_auth:
-031c 6fe143d1 fetch 2 ,mem_le_pairing_handle 
-031d 98467c00 isub temp ,null 
-031e 24228318 nbranch p_le_send_att_read_response ,zero 
-031f 24340318 nbranch p_le_send_att_read_response ,user 
-0320 20201e10 branch le_send_att_read_response_error_insufficient_auth 
+0328 6fe143d1 fetch 2 ,mem_le_pairing_handle 
+0329 98467c00 isub temp ,null 
+032a 24228324 nbranch p_le_send_att_read_response ,zero 
+032b 24340324 nbranch p_le_send_att_read_response ,user 
+032c 20201e10 branch le_send_att_read_response_error_insufficient_auth 
 
 p_le_parse_att_write_request:
-0321 18c22200 copy contr ,rega 
-0322 6fe143d4 fetch 2 ,mem_le_l2cap_size 
-0323 1fe0a5fd add pdata ,-3 ,regb 
-0324 20401a25 call le_writeatt_cb 
-0325 6fe0cac1 fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
-0326 c07f9e73 beq 0xff ,le_send_att_write_response_check_auth 
-0327 6fe0cac7 fetch 1 ,mem_mouse_le_reconnect_flag 
-0328 203a1e73 branch le_send_att_write_response_check_auth ,blank 
-0329 6fe0cb75 fetch 1 ,mem_le_connect_status_flag 
-032a c2809e73 bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
-032b 5800001a setarg 0x001a 
-032c 68494437 fetcht 2 ,mem_le_att_handle 
-032d 98467c00 isub temp ,null 
-032e 24229e73 nbranch le_send_att_write_response_check_auth ,zero 
-032f 7002d805 jam att_err_insufficient_authentication ,mem_le_err_code 
-0330 20201ec9 branch le_send_att_error_response 
+032d 18c22200 copy contr ,rega 
+032e 6fe143d4 fetch 2 ,mem_le_l2cap_size 
+032f 1fe0a5fd add pdata ,-3 ,regb 
+0330 20401a25 call le_writeatt_cb 
+0331 6fe0cac1 fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
+0332 c07f9e73 beq 0xff ,le_send_att_write_response_check_auth 
+0333 6fe0cac7 fetch 1 ,mem_mouse_le_reconnect_flag 
+0334 203a1e73 branch le_send_att_write_response_check_auth ,blank 
+0335 6fe0cb75 fetch 1 ,mem_le_connect_status_flag 
+0336 c2809e73 bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
+0337 5800001a setarg 0x001a 
+0338 68494437 fetcht 2 ,mem_le_att_handle 
+0339 98467c00 isub temp ,null 
+033a 24229e73 nbranch le_send_att_write_response_check_auth ,zero 
+033b 7002d805 jam att_err_insufficient_authentication ,mem_le_err_code 
+033c 20201ec9 branch le_send_att_error_response 
 
 p_g24_lpm_wait:
-0331 6fe0cbaa fetch 1 ,mem_24g_device_led_status 
-0332 245a26e1 ncall g24_transmit_by_interrupt_enable ,blank 
-0333 78347c00 enable user 
-0334 20401465 call lpo_calibration 
-0335 6fe1c174 fetch 3 ,mem_clks_per_lpo 
-0336 203a7e56 branch disable_user ,blank 
-0337 6fe0c099 fetch 1 ,mem_lpm_mode 
-0338 203a7e56 branch disable_user ,blank 
-0339 202026c4 branch g24_setgpio_lpm_before 
+033d 6fe0cbaa fetch 1 ,mem_24g_device_led_status 
+033e 245a26e1 ncall g24_transmit_by_interrupt_enable ,blank 
+033f 78347c00 enable user 
+0340 20401465 call lpo_calibration 
+0341 6fe1c174 fetch 3 ,mem_clks_per_lpo 
+0342 203a7e56 branch disable_user ,blank 
+0343 6fe0c099 fetch 1 ,mem_lpm_mode 
+0344 203a7e56 branch disable_user ,blank 
+0345 202026c4 branch g24_setgpio_lpm_before 
 
 p_mouse_motion:
-033a 78547c00 disable user 
-033b 58000000 setarg 0 
-033c 67e348d1 store 6 ,mem_mouse_x 
-033d 20404240 call mouse_check_sensor_data 
-033e 2040408e call mouse_dpi_config 
-033f 20403f7e call mouse_zwheel 
-0340 20403f83 call mouse_t_zwheel 
-0341 204040dc call mouse_key 
-0342 6fe0c8d0 fetch 1 ,mem_mouse_key 
-0343 1fe17e1f and_into 0x1f ,pdata 
-0344 67e0c8d0 store 1 ,mem_mouse_key 
-0345 24344728 nbranch mouse_drawing_optima_init ,user 
-0346 20400348 call p_mouse_drawing_optima 
-0347 20204544 branch mouse_no_data_timer_init 
-
-p_mouse_drawing_optima:
-0348 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0349 c1018000 rtneq p3212 
-034a 2020471a branch mouse_drawing_optima 
+0346 78547c00 disable user 
+0347 58000000 setarg 0 
+0348 67e348d1 store 6 ,mem_mouse_x 
+0349 20404240 call mouse_check_sensor_data 
+034a 2040034e call p_mouse_p3212_shutdown_smooth 
+034b 20400354 call p_mouse_data_zoom 
+034c 20400272 call p_mouse_seting_sensor_type 
+034d 20203f75 branch mouse_motion + 5 
+
+p_mouse_p3212_shutdown_smooth:
+034e 6fe0c927 fetch 1 ,mem_config_sensor_type 
+034f c1818000 rtnne p3212 
+0350 d8e00038 arg mouse_enable_smoother ,queue 
+0351 204046f4 call mouse_disable_function_flag 
+0352 d8e00039 arg mouse_enable_xy_offset ,queue 
+0353 202046f4 branch mouse_disable_function_flag 
+
+p_mouse_data_zoom:
+0354 6fe0c927 fetch 1 ,mem_config_sensor_type 
+0355 c1818000 rtnne p3212 
+0356 6fe0c992 fetch 1 ,mem_mouse_dpi 
+0357 c1818000 rtnne mouse_dpi_level4 
+0358 6fe148d1 fetch 2 ,mem_mouse_x 
+0359 2040035f call p_mouse_2400_zoom 
+035a 67e148d1 store 2 ,mem_mouse_x 
+035b 6fe148d3 fetch 2 ,mem_mouse_y 
+035c 2040035f call p_mouse_2400_zoom 
+035d 67e148d3 store 2 ,mem_mouse_y 
+035e 20600000 rtn 
+
+p_mouse_2400_zoom:
+035f c2858362 bbit1 11 ,p_mouse_xy_inverse 
+0360 c3058366 bbit0 11 ,p_mouse_xy_zoom 
+0361 20600000 rtn 
+
+p_mouse_xy_inverse:
+0362 1fe67e00 sub pdata ,0 ,pdata 
+0363 20400366 call p_mouse_xy_zoom 
+0364 1fe67e00 sub pdata ,0 ,pdata 
+0365 20600000 rtn 
+
+p_mouse_xy_zoom:
+0366 1fe30400 rshift pdata ,temp 
+0367 793f840f set0 15 ,temp 
+0368 9840fe00 iadd temp ,pdata 
+0369 67e14c39 store 2 ,mem_mouse_temp_data 
+036a 6fe0cc3a fetch 1 ,mem_mouse_temp_data + 1 
+036b 1fe67c07 sub pdata ,0x7 ,null 
+036c 2441036f ncall p_mouse_xy_forward_overflow ,positive 
+036d 6fe14c39 fetch 2 ,mem_mouse_temp_data 
+036e 20600000 rtn 
+
+p_mouse_xy_forward_overflow:
+036f 580007ff setarg 0x7ff 
+0370 67e14c39 store 2 ,mem_mouse_temp_data 
+0371 20600000 rtn 
 
 p_mouse_sensor_poweron:
-034b 20403f65 call mouse_sensor_spi_init 
-034c 6fe0c927 fetch 1 ,mem_config_sensor_type 
-034d c0058352 beq ka8g2 ,p_mouse_ka8g2_sensor_init 
-034e 20404232 call mouse_sensor_reset 
-034f da604aa3 arg mem_sensor_poweron_init ,regc 
-0350 2040422b call mouse_sensor_wr_seq 
-0351 2020408e branch mouse_dpi_config 
+0372 20403f65 call mouse_sensor_spi_init 
+0373 6fe0c927 fetch 1 ,mem_config_sensor_type 
+0374 c0058379 beq ka8g2 ,p_mouse_ka8g2_sensor_init 
+0375 20404232 call mouse_sensor_reset 
+0376 da604aa3 arg mem_sensor_poweron_init ,regc 
+0377 2040422b call mouse_sensor_wr_seq 
+0378 20200272 branch p_mouse_seting_sensor_type 
 
 p_mouse_ka8g2_sensor_init:
-0352 20400359 call p_mouse_ka8g2_sensor_reset 
-0353 da604be3 arg mem_ka8g2_sensor_poweron_init ,regc 
-0354 2040422b call mouse_sensor_wr_seq 
-0355 2020408e branch mouse_dpi_config 
+0379 20400380 call p_mouse_ka8g2_sensor_reset 
+037a da604be3 arg mem_ka8g2_sensor_poweron_init ,regc 
+037b 2040422b call mouse_sensor_wr_seq 
+037c 20200272 branch p_mouse_seting_sensor_type 
 
 p_mouse_sensor_reset:
-0356 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0357 c0058359 beq ka8g2 ,p_mouse_ka8g2_sensor_reset 
-0358 20204232 branch mouse_sensor_reset 
+037d 6fe0c927 fetch 1 ,mem_config_sensor_type 
+037e c0058380 beq ka8g2 ,p_mouse_ka8g2_sensor_reset 
+037f 20204232 branch mouse_sensor_reset 
 
 p_mouse_ka8g2_sensor_reset:
-0359 58009706 setarg 0x9706 
-035a 20405b0c call twspi_write 
-035b 20002ee0 nop 12000 
-035c 20600000 rtn 
+0380 58009706 setarg 0x9706 
+0381 20405b0c call twspi_write 
+0382 20002ee0 nop 12000 
+0383 20600000 rtn 
 
 p_mouse_sensor_powerdown:
-035d 204041a7 call mouse_init_sunt 
-035e 20403f65 call mouse_sensor_spi_init 
-035f 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0360 c0058363 beq ka8g2 ,p_mouse_ka8g2_sensor_powerdown 
-0361 58000806 setarg 0x0806 
-0362 20205b0c branch twspi_write 
+0384 204041a7 call mouse_init_sunt 
+0385 20403f65 call mouse_sensor_spi_init 
+0386 6fe0c927 fetch 1 ,mem_config_sensor_type 
+0387 c005838a beq ka8g2 ,p_mouse_ka8g2_sensor_powerdown 
+0388 58000806 setarg 0x0806 
+0389 20205b0c branch twspi_write 
 
 p_mouse_ka8g2_sensor_powerdown:
-0363 58001f06 setarg 0x1f06 
-0364 20205b0c branch twspi_write 
+038a 58001f06 setarg 0x1f06 
+038b 20205b0c branch twspi_write 
 
 p_mouse_check_key_gpio:
-0365 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
-0366 245a4121 ncall mouse_check_key_gpio_once ,blank 
-0367 da200000 arg 0 ,rega 
-0368 2040036e call p_mouse_check_lkey_gpio 
-0369 20400373 call p_mouse_check_rkey_gpio 
-036a 20400378 call p_mouse_check_mkey_gpio 
-036b 2040037d call p_mouse_check_bkkey_gpio 
-036c 2040038a call p_mouse_check_fwkey_gpio 
-036d 2020411e branch mouse_check_key_gpio_next 
+038c 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
+038d 245a4121 ncall mouse_check_key_gpio_once ,blank 
+038e da200000 arg 0 ,rega 
+038f 20400395 call p_mouse_check_lkey_gpio 
+0390 2040039a call p_mouse_check_rkey_gpio 
+0391 2040039f call p_mouse_check_mkey_gpio 
+0392 204003a4 call p_mouse_check_bkkey_gpio 
+0393 204003b1 call p_mouse_check_fwkey_gpio 
+0394 2020411e branch mouse_check_key_gpio_next 
 
 p_mouse_check_lkey_gpio:
-036e 6fe0c918 fetch 1 ,mem_lbutton_gpio 
-036f 20400397 call p_mouse_gpio_config_output_high 
-0370 20404124 call mouse_check_lkey_gpio 
-0371 6848c918 fetcht 1 ,mem_lbutton_gpio 
-0372 20203f56 branch mouse_gpio_config_input_pu 
+0395 6fe0c918 fetch 1 ,mem_lbutton_gpio 
+0396 204003be call p_mouse_gpio_config_output_high 
+0397 20404124 call mouse_check_lkey_gpio 
+0398 6848c918 fetcht 1 ,mem_lbutton_gpio 
+0399 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_check_rkey_gpio:
-0373 6fe0c919 fetch 1 ,mem_rbutton_gpio 
-0374 20400397 call p_mouse_gpio_config_output_high 
-0375 2040412a call mouse_check_rkey_gpio 
-0376 6848c919 fetcht 1 ,mem_rbutton_gpio 
-0377 20203f56 branch mouse_gpio_config_input_pu 
+039a 6fe0c919 fetch 1 ,mem_rbutton_gpio 
+039b 204003be call p_mouse_gpio_config_output_high 
+039c 2040412a call mouse_check_rkey_gpio 
+039d 6848c919 fetcht 1 ,mem_rbutton_gpio 
+039e 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_check_mkey_gpio:
-0378 6fe0c91a fetch 1 ,mem_mbutton_gpio 
-0379 20400397 call p_mouse_gpio_config_output_high 
-037a 20404130 call mouse_check_mkey_gpio 
-037b 6848c91a fetcht 1 ,mem_mbutton_gpio 
-037c 20203f56 branch mouse_gpio_config_input_pu 
+039f 6fe0c91a fetch 1 ,mem_mbutton_gpio 
+03a0 204003be call p_mouse_gpio_config_output_high 
+03a1 20404130 call mouse_check_mkey_gpio 
+03a2 6848c91a fetcht 1 ,mem_mbutton_gpio 
+03a3 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_check_bkkey_gpio:
-037d 6fe0c90d fetch 1 ,mem_bk_button_gpio 
-037e c17f8000 rtneq gpio_disable 
-037f 704b9603 jam mouse_bk_key ,mem_mouse_key_temp 
-0380 6fe0cb91 fetch 1 ,mem_mouse_bkkey_press_status 
-0381 1fe22600 copy pdata ,regc 
-0382 6848c90d fetcht 1 ,mem_bk_button_gpio 
-0383 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-0384 c07f8386 beq gpio_disable ,p_mouse_3io6key_bk_check 
-0385 2020413e branch mouse_check_bkkey_gpio_next 
+03a4 6fe0c90d fetch 1 ,mem_bk_button_gpio 
+03a5 c17f8000 rtneq gpio_disable 
+03a6 704b9603 jam mouse_bk_key ,mem_mouse_key_temp 
+03a7 6fe0cb91 fetch 1 ,mem_mouse_bkkey_press_status 
+03a8 1fe22600 copy pdata ,regc 
+03a9 6848c90d fetcht 1 ,mem_bk_button_gpio 
+03aa 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+03ab c07f83ad beq gpio_disable ,p_mouse_3io6key_bk_check 
+03ac 2020413e branch mouse_check_bkkey_gpio_next 
 
 p_mouse_3io6key_bk_check:
-0386 6fe0c90d fetch 1 ,mem_bk_button_gpio 
-0387 20400399 call p_mouse_gpio_config_output_low 
-0388 6848c90d fetcht 1 ,mem_bk_button_gpio 
-0389 2020414b branch mouse_3io6key_bk_check 
+03ad 6fe0c90d fetch 1 ,mem_bk_button_gpio 
+03ae 204003c0 call p_mouse_gpio_config_output_low 
+03af 6848c90d fetcht 1 ,mem_bk_button_gpio 
+03b0 2020414b branch mouse_3io6key_bk_check 
 
 p_mouse_check_fwkey_gpio:
-038a 6fe0c90e fetch 1 ,mem_fw_button_gpio 
-038b c17f8000 rtneq gpio_disable 
-038c 704b9604 jam mouse_fw_key ,mem_mouse_key_temp 
-038d 6fe0cb92 fetch 1 ,mem_mouse_fwkey_press_status 
-038e 1fe22600 copy pdata ,regc 
-038f 6848c90e fetcht 1 ,mem_fw_button_gpio 
-0390 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-0391 c07f8393 beq gpio_disable ,p_mouse_3io6key_fw_check 
-0392 20204157 branch mouse_check_fwkey_gpio_next 
+03b1 6fe0c90e fetch 1 ,mem_fw_button_gpio 
+03b2 c17f8000 rtneq gpio_disable 
+03b3 704b9604 jam mouse_fw_key ,mem_mouse_key_temp 
+03b4 6fe0cb92 fetch 1 ,mem_mouse_fwkey_press_status 
+03b5 1fe22600 copy pdata ,regc 
+03b6 6848c90e fetcht 1 ,mem_fw_button_gpio 
+03b7 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+03b8 c07f83ba beq gpio_disable ,p_mouse_3io6key_fw_check 
+03b9 20204157 branch mouse_check_fwkey_gpio_next 
 
 p_mouse_3io6key_fw_check:
-0393 6fe0c90e fetch 1 ,mem_fw_button_gpio 
-0394 20400399 call p_mouse_gpio_config_output_low 
-0395 6848c90e fetcht 1 ,mem_fw_button_gpio 
-0396 20204164 branch mouse_3io6key_fw_check 
+03ba 6fe0c90e fetch 1 ,mem_fw_button_gpio 
+03bb 204003c0 call p_mouse_gpio_config_output_low 
+03bc 6848c90e fetcht 1 ,mem_fw_button_gpio 
+03bd 20204164 branch mouse_3io6key_fw_check 
 
 p_mouse_gpio_config_output_high:
-0397 d840003f arg gpcfg_output_high ,temp 
-0398 20206093 branch gpio_config_function_int 
+03be d840003f arg gpcfg_output_high ,temp 
+03bf 20206093 branch gpio_config_function_int 
 
 p_mouse_gpio_config_output_low:
-0399 d840003e arg gpcfg_output_low ,temp 
-039a 20206093 branch gpio_config_function_int 
+03c0 d840003e arg gpcfg_output_low ,temp 
+03c1 20206093 branch gpio_config_function_int 
 
 p_mouse_idle:
-039b 20404990 call mouse_low_voltage_led_no_enter_lpm 
-039c 20407936 call ui_check_paring_button 
-039d 204003ac call p_mouse_dpi_check 
-039e 204003c0 call p_mouse_dpi_another_gpio_check 
-039f 20404655 call mouse_select_device_check 
-03a0 204003a2 call p_mouse_check_select_device_by_switch 
-03a1 20204651 branch mouse_idle + 6 
+03c2 20404990 call mouse_low_voltage_led_no_enter_lpm 
+03c3 20407936 call ui_check_paring_button 
+03c4 204003d3 call p_mouse_dpi_check 
+03c5 204003e7 call p_mouse_dpi_another_gpio_check 
+03c6 20404655 call mouse_select_device_check 
+03c7 204003c9 call p_mouse_check_select_device_by_switch 
+03c8 20204651 branch mouse_idle + 6 
 
 p_mouse_check_select_device_by_switch:
-03a2 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-03a3 c29503a6 bbit1 mouse_enable_select_device_by_switch_gpio ,p_mouse_check_select_device_by_switch_gpio 
-03a4 c295be9b bbit1 mouse_enable_select_device_by_switch_adc ,mouse_adc_read 
-03a5 20600000 rtn 
+03c9 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+03ca c29503cd bbit1 mouse_enable_select_device_by_switch_gpio ,p_mouse_check_select_device_by_switch_gpio 
+03cb c295be9b bbit1 mouse_enable_select_device_by_switch_adc ,mouse_adc_read 
+03cc 20600000 rtn 
 
 p_mouse_check_select_device_by_switch_gpio:
-03a6 6848c91e fetcht 1 ,mem_device_switch_gpio 
-03a7 20403f54 call mouse_gpio_config_input_pd 
-03a8 6848c91e fetcht 1 ,mem_device_switch_gpio 
-03a9 20406059 call gpio_get_bit 
-03aa 2420c6ad nbranch mouse_check_select_24gdevice ,true 
-03ab 202046a9 branch mouse_select_btdevice 
+03cd 6848c91e fetcht 1 ,mem_device_switch_gpio 
+03ce 20403f54 call mouse_gpio_config_input_pd 
+03cf 6848c91e fetcht 1 ,mem_device_switch_gpio 
+03d0 20406059 call gpio_get_bit 
+03d1 2420c6ad nbranch mouse_check_select_24gdevice ,true 
+03d2 202046a9 branch mouse_select_btdevice 
 
 p_mouse_dpi_check:
-03ac 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-03ad c2974036 bbit1 mouse_enable_dpi_key_connect_adc ,mouse_dpi_check_connect_adc 
-03ae 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
-03af c17f8000 rtneq gpio_disable 
-03b0 da200000 arg 0 ,rega 
-03b1 704b9605 jam mouse_dpi_key ,mem_mouse_key_temp 
-03b2 6848c90f fetcht 1 ,mem_dpi_button_gpio 
-03b3 204003b5 call p_mouse_dpi_key_check 
-03b4 2020402f branch mouse_dpi_check_next 
+03d3 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+03d4 c2974036 bbit1 mouse_enable_dpi_key_connect_adc ,mouse_dpi_check_connect_adc 
+03d5 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
+03d6 c17f8000 rtneq gpio_disable 
+03d7 da200000 arg 0 ,rega 
+03d8 704b9605 jam mouse_dpi_key ,mem_mouse_key_temp 
+03d9 6848c90f fetcht 1 ,mem_dpi_button_gpio 
+03da 204003dc call p_mouse_dpi_key_check 
+03db 2020402f branch mouse_dpi_check_next 
 
 p_mouse_dpi_key_check:
-03b5 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-03b6 c2964048 bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
-03b7 6fe0cb93 fetch 1 ,mem_mouse_dpikey_press_status 
-03b8 1fe22600 copy pdata ,regc 
-03b9 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-03ba c07f83bc beq gpio_disable ,p_mouse_3io6key_dpi_check 
-03bb 2020403f branch mouse_dpi_key_check_next 
+03dc 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+03dd c2964048 bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
+03de 6fe0cb93 fetch 1 ,mem_mouse_dpikey_press_status 
+03df 1fe22600 copy pdata ,regc 
+03e0 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+03e1 c07f83e3 beq gpio_disable ,p_mouse_3io6key_dpi_check 
+03e2 2020403f branch mouse_dpi_key_check_next 
 
 p_mouse_3io6key_dpi_check:
-03bc 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
-03bd 20400399 call p_mouse_gpio_config_output_low 
-03be 6848c90f fetcht 1 ,mem_dpi_button_gpio 
-03bf 20204195 branch mouse_3io6key_check 
+03e3 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
+03e4 204003c0 call p_mouse_gpio_config_output_low 
+03e5 6848c90f fetcht 1 ,mem_dpi_button_gpio 
+03e6 20204195 branch mouse_3io6key_check 
 
 p_mouse_dpi_another_gpio_check:
-03c0 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-03c1 c41e8000 rtnbit0 mouse_enable_double_dpi_key 
-03c2 6fe0cc32 fetch 1 ,mem_dpi_another_button_gpio 
-03c3 20400397 call p_mouse_gpio_config_output_high 
-03c4 204003c7 call p_mouse_dpi_another_check 
-03c5 6848cc32 fetcht 1 ,mem_dpi_another_button_gpio 
-03c6 20203f56 branch mouse_gpio_config_input_pu 
+03e7 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+03e8 c41e8000 rtnbit0 mouse_enable_double_dpi_key 
+03e9 6fe0cc32 fetch 1 ,mem_dpi_another_button_gpio 
+03ea 204003be call p_mouse_gpio_config_output_high 
+03eb 204003ee call p_mouse_dpi_another_check 
+03ec 6848cc32 fetcht 1 ,mem_dpi_another_button_gpio 
+03ed 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_dpi_another_check:
-03c7 704c3600 jam mouse_dpi_another_key ,mem_mouse_key_temp_patch 
-03c8 6848cc32 fetcht 1 ,mem_dpi_another_button_gpio 
-03c9 6fe0cc33 fetch 1 ,mem_dpi_another_press_status 
-03ca 204003d6 call p_mouse_check_key_connect_gnd_new 
-03cb 67e0cc33 store 1 ,mem_dpi_another_press_status 
-03cc 6fe0cc35 fetch 1 ,mem_dpi_another_button_down_enable 
-03cd 203a03d2 branch p_mouse_dpi_another_up ,blank 
+03ee 704c3600 jam mouse_dpi_another_key ,mem_mouse_key_temp_patch 
+03ef 6848cc32 fetcht 1 ,mem_dpi_another_button_gpio 
+03f0 6fe0cc33 fetch 1 ,mem_dpi_another_press_status 
+03f1 204003fd call p_mouse_check_key_connect_gnd_new 
+03f2 67e0cc33 store 1 ,mem_dpi_another_press_status 
+03f3 6fe0cc35 fetch 1 ,mem_dpi_another_button_down_enable 
+03f4 203a03f9 branch p_mouse_dpi_another_up ,blank 
 
 p_mouse_dpi_another_down:
-03ce 6fe0cc34 fetch 1 ,mem_dpi_another_button_state 
-03cf c1008000 rtneq dpi_button_state_down 
-03d0 704c3401 jam dpi_button_state_down ,mem_dpi_another_button_state 
-03d1 20204069 branch mouse_dpi_process 
+03f5 6fe0cc34 fetch 1 ,mem_dpi_another_button_state 
+03f6 c1008000 rtneq dpi_button_state_down 
+03f7 704c3401 jam dpi_button_state_down ,mem_dpi_another_button_state 
+03f8 20204069 branch mouse_dpi_process 
 
 p_mouse_dpi_another_up:
-03d2 6fe0cc34 fetch 1 ,mem_dpi_another_button_state 
-03d3 c1000000 rtneq dpi_button_state_up 
-03d4 704c3400 jam dpi_button_state_up ,mem_dpi_another_button_state 
-03d5 20600000 rtn 
+03f9 6fe0cc34 fetch 1 ,mem_dpi_another_button_state 
+03fa c1000000 rtneq dpi_button_state_up 
+03fb 704c3400 jam dpi_button_state_up ,mem_dpi_another_button_state 
+03fc 20600000 rtn 
 
 p_mouse_check_key_connect_gnd_new:
-03d6 1fe3fe00 lshift pdata ,pdata 
-03d7 1fe22400 copy pdata ,regb 
-03d8 20406059 call gpio_get_bit 
-03d9 7920a400 setflag true ,0 ,regb 
-03da 1a417e07 and regb ,0x07 ,pdata 
-03db 6848cc36 fetcht 1 ,mem_mouse_key_temp_patch 
-03dc 18420e00 copy temp ,queue 
-03dd c00383e0 beq 0x07 ,p_mouse_key_press 
-03de c00003e2 beq 0x00 ,p_mouse_key_release 
-03df 20600000 rtn 
+03fd 1fe3fe00 lshift pdata ,pdata 
+03fe 1fe22400 copy pdata ,regb 
+03ff 20406059 call gpio_get_bit 
+0400 7920a400 setflag true ,0 ,regb 
+0401 1a417e07 and regb ,0x07 ,pdata 
+0402 6848cc36 fetcht 1 ,mem_mouse_key_temp_patch 
+0403 18420e00 copy temp ,queue 
+0404 c0038407 beq 0x07 ,p_mouse_key_press 
+0405 c0000409 beq 0x00 ,p_mouse_key_release 
+0406 20600000 rtn 
 
 p_mouse_key_press:
-03e0 704c3501 jam 1 ,mem_dpi_another_button_down_enable 
-03e1 20600000 rtn 
+0407 704c3501 jam 1 ,mem_dpi_another_button_down_enable 
+0408 20600000 rtn 
 
 p_mouse_key_release:
-03e2 704c3500 jam 0 ,mem_dpi_another_button_down_enable 
-03e3 20600000 rtn 
+0409 704c3500 jam 0 ,mem_dpi_another_button_down_enable 
+040a 20600000 rtn 
 
 p_mouse_dpi_process:
-03e4 20404072 call mouse_dpi_ghost_check 
-03e5 20740000 rtn user 
-03e6 6fe0c992 fetch 1 ,mem_mouse_dpi 
-03e7 1fe20400 copy pdata ,temp 
-03e8 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-03e9 c29e83f0 bbit1 mouse_enable_double_dpi_key ,p_mouse_double_dpi_check 
-03ea 18427e00 copy temp ,pdata 
-03eb 1fe0fe01 increase 1 ,pdata 
-03ec 1fe17e03 and pdata ,0x03 ,pdata 
+040b 20404072 call mouse_dpi_ghost_check 
+040c 20740000 rtn user 
+040d 6fe0c927 fetch 1 ,mem_config_sensor_type 
+040e c0018419 beq p3212 ,p_mouse_3212_5level_dpi_process 
+040f 6fe0c992 fetch 1 ,mem_mouse_dpi 
+0410 1fe20400 copy pdata ,temp 
+0411 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0412 c29e8422 bbit1 mouse_enable_double_dpi_key ,p_mouse_double_dpi_check 
+0413 18427e00 copy temp ,pdata 
+0414 1fe0fe01 increase 1 ,pdata 
+0415 1fe17e03 and pdata ,0x03 ,pdata 
 
 p_mouse_dpi_store:
-03ed 67e0c992 store 1 ,mem_mouse_dpi 
-03ee 20404095 call mouse_seting_dpi 
-03ef 202045ee branch mouse_store_device_info_delay 
+0416 67e0c992 store 1 ,mem_mouse_dpi 
+0417 20404095 call mouse_seting_dpi 
+0418 202045ee branch mouse_store_device_info_delay 
+
+p_mouse_3212_5level_dpi_process:
+0419 6fe0c992 fetch 1 ,mem_mouse_dpi 
+041a 1fe0fe01 increase 1 ,pdata 
+041b 1fe67c05 sub pdata ,5 ,null 
+041c 20428420 call p_mouse_dpi_recount ,zero 
+041d 67e0c992 store 1 ,mem_mouse_dpi 
+041e 2040026d call p_mouse_seting_dpi 
+041f 202045ee branch mouse_store_device_info_delay 
+
+p_mouse_dpi_recount:
+0420 58000000 setarg 0 
+0421 20600000 rtn 
 
 p_mouse_double_dpi_check:
-03f0 6fe0cc35 fetch 1 ,mem_dpi_another_button_down_enable 
-03f1 243a03fb nbranch p_mouse_another_dpi_button_down ,blank 
+0422 6fe0cc35 fetch 1 ,mem_dpi_another_button_down_enable 
+0423 243a042d nbranch p_mouse_another_dpi_button_down ,blank 
 
 p_mouse_dpi_increase:
-03f2 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-03f3 c28e03f8 bbit1 mouse_enable_dpi_level_4 ,p_mouse_dpi_increase_level_4 
-03f4 18427e00 copy temp ,pdata 
-03f5 c1010000 rtneq mouse_dpi_level3 
+0424 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0425 c28e042a bbit1 mouse_enable_dpi_level_4 ,p_mouse_dpi_increase_level_4 
+0426 18427e00 copy temp ,pdata 
+0427 c1010000 rtneq mouse_dpi_level3 
 
 p_mouse_dpi_increase_level:
-03f6 1fe0fe01 increase 1 ,pdata 
-03f7 202003ed branch p_mouse_dpi_store 
+0428 1fe0fe01 increase 1 ,pdata 
+0429 20200416 branch p_mouse_dpi_store 
 
 p_mouse_dpi_increase_level_4:
-03f8 18427e00 copy temp ,pdata 
-03f9 c1018000 rtneq mouse_dpi_level4 
-03fa 202003f6 branch p_mouse_dpi_increase_level 
+042a 18427e00 copy temp ,pdata 
+042b c1018000 rtneq mouse_dpi_level4 
+042c 20200428 branch p_mouse_dpi_increase_level 
 
 p_mouse_another_dpi_button_down:
 
 p_mouse_dpi_decrease:
-03fb 18427e00 copy temp ,pdata 
-03fc c1000000 rtneq mouse_dpi_level1 
-03fd 1fe0ffff increase -1 ,pdata 
-03fe 202003ed branch p_mouse_dpi_store 
+042d 18427e00 copy temp ,pdata 
+042e c1000000 rtneq mouse_dpi_level1 
+042f 1fe0ffff increase -1 ,pdata 
+0430 20200416 branch p_mouse_dpi_store 
 
 p_g24_parse_rx_ota_sm:
-03ff 6fe0cbf6 fetch 1 ,mem_g24_ota_mode 
-0400 207a0000 rtn blank 
-0401 6fe0cbf7 fetch 1 ,mem_g24_ota_sm 
-0402 c001040b beq g24_ota_sm_tx_version ,p_g24_ota_sm_tx_version 
-0403 c002840d beq g24_ota_sm_tx_info ,p_g24_ota_sm_tx_info 
-0404 c004040f beq g24_ota_sm_tx_config ,p_g24_ota_sm_tx_config 
-0405 c0058411 beq g24_ota_sm_tx_set_config_end ,p_g24_ota_sm_tx_config_end 
-0406 c0070413 beq g24_ota_sm_tx_data ,p_g24_ota_sm_tx_data 
-0407 c0088409 beq g24_ota_sm_tx_reset ,p_g24_ota_sm_tx_reset 
-0408 20600000 rtn 
+0431 6fe0cbf6 fetch 1 ,mem_g24_ota_mode 
+0432 207a0000 rtn blank 
+0433 6fe0cbf7 fetch 1 ,mem_g24_ota_sm 
+0434 c001043d beq g24_ota_sm_tx_version ,p_g24_ota_sm_tx_version 
+0435 c002843f beq g24_ota_sm_tx_info ,p_g24_ota_sm_tx_info 
+0436 c0040441 beq g24_ota_sm_tx_config ,p_g24_ota_sm_tx_config 
+0437 c0058443 beq g24_ota_sm_tx_set_config_end ,p_g24_ota_sm_tx_config_end 
+0438 c0070445 beq g24_ota_sm_tx_data ,p_g24_ota_sm_tx_data 
+0439 c008843b beq g24_ota_sm_tx_reset ,p_g24_ota_sm_tx_reset 
+043a 20600000 rtn 
 
 p_g24_ota_sm_tx_reset:
-0409 704bf712 jam g24_ota_sm_tx_reset_ok ,mem_g24_ota_sm 
-040a 20600000 rtn 
+043b 704bf712 jam g24_ota_sm_tx_reset_ok ,mem_g24_ota_sm 
+043c 20600000 rtn 
 
 p_g24_ota_sm_tx_version:
-040b 704bf703 jam g24_ota_sm_tx_version_ok ,mem_g24_ota_sm 
-040c 20600000 rtn 
+043d 704bf703 jam g24_ota_sm_tx_version_ok ,mem_g24_ota_sm 
+043e 20600000 rtn 
 
 p_g24_ota_sm_tx_info:
-040d 704bf706 jam g24_ota_sm_tx_info_ok ,mem_g24_ota_sm 
-040e 20600000 rtn 
+043f 704bf706 jam g24_ota_sm_tx_info_ok ,mem_g24_ota_sm 
+0440 20600000 rtn 
 
 p_g24_ota_sm_tx_config:
-040f 704bf709 jam g24_ota_sm_tx_config_ok ,mem_g24_ota_sm 
-0410 20600000 rtn 
+0441 704bf709 jam g24_ota_sm_tx_config_ok ,mem_g24_ota_sm 
+0442 20600000 rtn 
 
 p_g24_ota_sm_tx_config_end:
-0411 704bf70c jam g24_ota_sm_tx_set_config_end_ok ,mem_g24_ota_sm 
-0412 20600000 rtn 
+0443 704bf70c jam g24_ota_sm_tx_set_config_end_ok ,mem_g24_ota_sm 
+0444 20600000 rtn 
 
 p_g24_ota_sm_tx_data:
-0413 704bf70f jam g24_ota_sm_tx_data_ok ,mem_g24_ota_sm 
-0414 20600000 rtn 
+0445 704bf70f jam g24_ota_sm_tx_data_ok ,mem_g24_ota_sm 
+0446 20600000 rtn 
 
 p_g24_mouse_parse_rx:
-0415 6fe0c82a fetch 1 ,mem_24g_rxdata_length 
-0416 203a03ff branch p_g24_parse_rx_ota_sm ,blank 
-0417 1fe22400 copy pdata ,regb 
-0418 70482a00 jam 0 ,mem_24g_rxdata_length 
-0419 6fe0c80a fetch 1 ,mem_24g_rxpayload 
-041a c0578427 beq datatype_ota ,p_g24_rx_ota 
-041b 20600000 rtn 
+0447 6fe0c82a fetch 1 ,mem_24g_rxdata_length 
+0448 203a0431 branch p_g24_parse_rx_ota_sm ,blank 
+0449 1fe22400 copy pdata ,regb 
+044a 70482a00 jam 0 ,mem_24g_rxdata_length 
+044b 6fe0c80a fetch 1 ,mem_24g_rxpayload 
+044c c0578459 beq datatype_ota ,p_g24_rx_ota 
+044d 20600000 rtn 
 
 p_g24_ota_mode_enable:
-041c 704bf601 jam 1 ,mem_g24_ota_mode 
-041d 70409900 jam 0 ,mem_lpm_mode 
-041e 20200507 branch p_ota_init 
+044e 704bf601 jam 1 ,mem_g24_ota_mode 
+044f 70409900 jam 0 ,mem_lpm_mode 
+0450 20200539 branch p_ota_init 
 
 p_g24_ota_dispatch:
-041f 20600000 rtn 
+0451 20600000 rtn 
 
 p_g24_ota_transmit:
-0420 7047c6af jam datatype_ota ,mem_24g_txbuf 
-0421 20402291 call g24_transmit_prep 
-0422 2040265b call g24_transmit_receive_ack 
-0423 246c0000 nrtn sync 
-0424 24778000 nrtn user3 
-0425 20402597 call g24_txbuf_clear 
-0426 20202672 branch g24_ackpayload_parse 
+0452 7047c6af jam datatype_ota ,mem_24g_txbuf 
+0453 20402291 call g24_transmit_prep 
+0454 2040265b call g24_transmit_receive_ack 
+0455 246c0000 nrtn sync 
+0456 24778000 nrtn user3 
+0457 20402597 call g24_txbuf_clear 
+0458 20202672 branch g24_ackpayload_parse 
 
 p_g24_rx_ota:
-0427 6fe0c80a fetch 1 ,mem_24g_rxpayload 
-0428 c1d78000 rtnne datatype_ota 
-0429 efe08006 ifetch 1 ,contr 
-042a e8408006 ifetcht 1 ,contr 
-042b 18467c02 sub temp ,g24_ota_target_mouse ,null 
-042c 2422937a nbranch assert ,zero 
-042d c0008436 beq g24_ota_cmd_version ,p_g24_mouse_ota_process_version 
-042e c0010439 beq g24_ota_cmd_info ,p_g24_mouse_ota_process_info 
-042f c001843b beq g24_ota_cmd_config ,p_g24_mouse_ota_process_config 
-0430 c002043d beq g24_ota_cmd_set_config_end ,p_g24_mouse_ota_process_set_config_end 
-0431 c0028495 beq g24_ota_cmd_data ,p_g24_mouse_ota_process_data 
-0432 c00304bb beq g24_ota_cmd_reset ,p_g24_mouse_ota_process_reset 
-0433 c07f8435 beq g24_ota_cmd_ping ,p_g24_mouse_ota_process_ping 
-0434 2020137a branch assert 
+0459 6fe0c80a fetch 1 ,mem_24g_rxpayload 
+045a c1d78000 rtnne datatype_ota 
+045b efe08006 ifetch 1 ,contr 
+045c e8408006 ifetcht 1 ,contr 
+045d 18467c02 sub temp ,g24_ota_target_mouse ,null 
+045e 2422937a nbranch assert ,zero 
+045f c0008468 beq g24_ota_cmd_version ,p_g24_mouse_ota_process_version 
+0460 c001046b beq g24_ota_cmd_info ,p_g24_mouse_ota_process_info 
+0461 c001846d beq g24_ota_cmd_config ,p_g24_mouse_ota_process_config 
+0462 c002046f beq g24_ota_cmd_set_config_end ,p_g24_mouse_ota_process_set_config_end 
+0463 c00284c7 beq g24_ota_cmd_data ,p_g24_mouse_ota_process_data 
+0464 c00304ed beq g24_ota_cmd_reset ,p_g24_mouse_ota_process_reset 
+0465 c07f8467 beq g24_ota_cmd_ping ,p_g24_mouse_ota_process_ping 
+0466 2020137a branch assert 
 
 p_g24_mouse_ota_process_ping:
-0435 20600000 rtn 
+0467 20600000 rtn 
 
 p_g24_mouse_ota_process_version:
-0436 2040041c call p_g24_ota_mode_enable 
-0437 704bf701 jam g24_ota_sm_rx_version ,mem_g24_ota_sm 
-0438 20600000 rtn 
+0468 2040044e call p_g24_ota_mode_enable 
+0469 704bf701 jam g24_ota_sm_rx_version ,mem_g24_ota_sm 
+046a 20600000 rtn 
 
 p_g24_mouse_ota_process_info:
-0439 704bf704 jam g24_ota_sm_rx_info ,mem_g24_ota_sm 
-043a 20600000 rtn 
+046b 704bf704 jam g24_ota_sm_rx_info ,mem_g24_ota_sm 
+046c 20600000 rtn 
 
 p_g24_mouse_ota_process_config:
-043b 704bf707 jam g24_ota_sm_rx_config ,mem_g24_ota_sm 
-043c 20600000 rtn 
+046d 704bf707 jam g24_ota_sm_rx_config ,mem_g24_ota_sm 
+046e 20600000 rtn 
 
 p_g24_mouse_ota_process_set_config_end:
-043d 704bf70a jam g24_ota_sm_rx_set_config_end ,mem_g24_ota_sm 
-043e efe10006 ifetch 2 ,contr 
-043f e8410006 ifetcht 2 ,contr 
-0440 6a214c18 fetchr rega ,2 ,mem_g24_ota_rx_alllen 
-0441 9a267c00 isub rega ,null 
-0442 242284b3 nbranch p_g24_mouse_ota_process_fail ,zero 
-0443 6fe14c1a fetch 2 ,mem_g24_ota_rx_sum 
-0444 98467c00 isub temp ,null 
-0445 242284b3 nbranch p_g24_mouse_ota_process_fail ,zero 
-0446 20400449 call p_g24_check_ota_data_all 
-0447 243404b3 nbranch p_g24_mouse_ota_process_fail ,user 
-0448 202004b1 branch p_g24_mouse_ota_process_ok 
+046f 704bf70a jam g24_ota_sm_rx_set_config_end ,mem_g24_ota_sm 
+0470 efe10006 ifetch 2 ,contr 
+0471 e8410006 ifetcht 2 ,contr 
+0472 6a214c18 fetchr rega ,2 ,mem_g24_ota_rx_alllen 
+0473 9a267c00 isub rega ,null 
+0474 242284e5 nbranch p_g24_mouse_ota_process_fail ,zero 
+0475 6fe14c1a fetch 2 ,mem_g24_ota_rx_sum 
+0476 98467c00 isub temp ,null 
+0477 242284e5 nbranch p_g24_mouse_ota_process_fail ,zero 
+0478 2040047b call p_g24_check_ota_data_all 
+0479 243404e5 nbranch p_g24_mouse_ota_process_fail ,user 
+047a 202004e3 branch p_g24_mouse_ota_process_ok 
 
 p_g24_check_ota_data_all:
-0449 20400454 call p_g24_check_ota_data 
-044a 24740000 nrtn user 
-044b 6fe14c1a fetch 2 ,mem_g24_ota_rx_sum 
-044c 9e067c00 isub alarm ,null 
-044d 2422fe56 nbranch disable_user ,zero 
-044e 684909e8 fetcht 2 ,mem_temp_block6 
-044f 6fe14c18 fetch 2 ,mem_g24_ota_rx_alllen 
-0450 1fe0fffb increase -5 ,pdata 
-0451 98467c00 isub temp ,null 
-0452 2422fe56 nbranch disable_user ,zero 
-0453 20207e54 branch enable_user 
+047b 20400486 call p_g24_check_ota_data 
+047c 24740000 nrtn user 
+047d 6fe14c1a fetch 2 ,mem_g24_ota_rx_sum 
+047e 9e067c00 isub alarm ,null 
+047f 2422fe56 nbranch disable_user ,zero 
+0480 684909e8 fetcht 2 ,mem_temp_block6 
+0481 6fe14c18 fetch 2 ,mem_g24_ota_rx_alllen 
+0482 1fe0fffb increase -5 ,pdata 
+0483 98467c00 isub temp ,null 
+0484 2422fe56 nbranch disable_user ,zero 
+0485 20207e54 branch enable_user 
 
 p_g24_check_ota_data:
-0454 6fe14bf3 fetch 2 ,mem_g24_ota_config_addr 
-0455 1ff0fe00 byteswap pdata ,pdata 
-0456 67e102e4 store 2 ,mem_addr_mi 
-0457 d8400003 arg 3 ,temp 
-0458 da2009d2 arg mem_temp_block5 ,rega 
-0459 20405de2 call iicd_read_eep 
-045a 6fe089d2 fetch 1 ,mem_temp_block5 
-045b c0ad7e56 bne g24_ota_data_header ,disable_user 
-045c e8410006 ifetcht 2 ,contr 
-045d 6049095c storet 2 ,mem_pdatatemp 
-045e 604909e8 storet 2 ,mem_temp_block6 
-045f 6fe089d2 fetch 1 ,mem_temp_block5 
-0460 dd60ffff arg 0xffff ,rege 
-0461 d8400000 arg 0 ,temp 
-0462 d8c009d2 arg mem_temp_block5 ,contr 
-0463 df200003 arg 3 ,loopcnt 
-0464 204004cb call p_g24_mouse_data_sum 
-0465 18426000 copy temp ,alarm 
-0466 6fe14bf3 fetch 2 ,mem_g24_ota_config_addr 
-0467 1fe0ee03 add pdata ,3 ,regf 
-0468 20400478 call p_g24_check_ota_data_loop 
-0469 1ef0fe00 byteswap regf ,pdata 
-046a 67e102e4 store 2 ,mem_addr_mi 
-046b d8400002 arg 2 ,temp 
-046c da2009d2 arg mem_temp_block5 ,rega 
-046d 20405de2 call iicd_read_eep 
-046e 6fe109d2 fetch 2 ,mem_temp_block5 
-046f 9d667c00 isub rege ,null 
-0470 2422fe56 nbranch disable_user ,zero 
-0471 6fe089d2 fetch 1 ,mem_temp_block5 
-0472 9e00e000 iadd alarm ,alarm 
-0473 efe08006 ifetch 1 ,contr 
-0474 9e00e000 iadd alarm ,alarm 
-0475 5800ffff setarg 0xffff 
-0476 9e016000 iand alarm ,alarm 
-0477 20207e54 branch enable_user 
+0486 6fe14bf3 fetch 2 ,mem_g24_ota_config_addr 
+0487 1ff0fe00 byteswap pdata ,pdata 
+0488 67e102e4 store 2 ,mem_addr_mi 
+0489 d8400003 arg 3 ,temp 
+048a da2009d2 arg mem_temp_block5 ,rega 
+048b 20405de2 call iicd_read_eep 
+048c 6fe089d2 fetch 1 ,mem_temp_block5 
+048d c0ad7e56 bne g24_ota_data_header ,disable_user 
+048e e8410006 ifetcht 2 ,contr 
+048f 6049095c storet 2 ,mem_pdatatemp 
+0490 604909e8 storet 2 ,mem_temp_block6 
+0491 6fe089d2 fetch 1 ,mem_temp_block5 
+0492 dd60ffff arg 0xffff ,rege 
+0493 d8400000 arg 0 ,temp 
+0494 d8c009d2 arg mem_temp_block5 ,contr 
+0495 df200003 arg 3 ,loopcnt 
+0496 204004fd call p_g24_mouse_data_sum 
+0497 18426000 copy temp ,alarm 
+0498 6fe14bf3 fetch 2 ,mem_g24_ota_config_addr 
+0499 1fe0ee03 add pdata ,3 ,regf 
+049a 204004aa call p_g24_check_ota_data_loop 
+049b 1ef0fe00 byteswap regf ,pdata 
+049c 67e102e4 store 2 ,mem_addr_mi 
+049d d8400002 arg 2 ,temp 
+049e da2009d2 arg mem_temp_block5 ,rega 
+049f 20405de2 call iicd_read_eep 
+04a0 6fe109d2 fetch 2 ,mem_temp_block5 
+04a1 9d667c00 isub rege ,null 
+04a2 2422fe56 nbranch disable_user ,zero 
+04a3 6fe089d2 fetch 1 ,mem_temp_block5 
+04a4 9e00e000 iadd alarm ,alarm 
+04a5 efe08006 ifetch 1 ,contr 
+04a6 9e00e000 iadd alarm ,alarm 
+04a7 5800ffff setarg 0xffff 
+04a8 9e016000 iand alarm ,alarm 
+04a9 20207e54 branch enable_user 
 
 p_g24_check_ota_data_loop:
-0478 6fe1095c fetch 2 ,mem_pdatatemp 
-0479 207a0000 rtn blank 
-047a 1fe20400 copy pdata ,temp 
-047b 1fe67c10 sub pdata ,16 ,null 
-047c 20210493 branch p_g24_check_ota_data_loopend ,positive 
-047d 1fe0fff0 increase -16 ,pdata 
-047e d8400010 arg 0x10 ,temp 
+04aa 6fe1095c fetch 2 ,mem_pdatatemp 
+04ab 207a0000 rtn blank 
+04ac 1fe20400 copy pdata ,temp 
+04ad 1fe67c10 sub pdata ,16 ,null 
+04ae 202104c5 branch p_g24_check_ota_data_loopend ,positive 
+04af 1fe0fff0 increase -16 ,pdata 
+04b0 d8400010 arg 0x10 ,temp 
 
 p_g24_check_ota_data_loop2:
-047f 67e1095c store 2 ,mem_pdatatemp 
-0480 18425e00 copy temp ,regext 
-0481 1ee27e00 copy regf ,pdata 
-0482 1ff0fe00 byteswap pdata ,pdata 
-0483 67e102e4 store 2 ,mem_addr_mi 
-0484 da2009d2 arg mem_temp_block5 ,rega 
-0485 20405de2 call iicd_read_eep 
-0486 1ee27e00 copy regf ,pdata 
-0487 9de0ee00 iadd regext ,regf 
-0488 1de27200 copy regext ,loopcnt 
-0489 1d627e00 copy rege ,pdata 
-048a d8c009d2 arg mem_temp_block5 ,contr 
-048b efe00006 icrc contr 
-048c 1fe25600 copy pdata ,rege 
-048d 1de27200 copy regext ,loopcnt 
-048e d8c009d2 arg mem_temp_block5 ,contr 
-048f 1e020400 copy alarm ,temp 
-0490 204004cb call p_g24_mouse_data_sum 
-0491 18426000 copy temp ,alarm 
-0492 20200478 branch p_g24_check_ota_data_loop 
+04b1 67e1095c store 2 ,mem_pdatatemp 
+04b2 18425e00 copy temp ,regext 
+04b3 1ee27e00 copy regf ,pdata 
+04b4 1ff0fe00 byteswap pdata ,pdata 
+04b5 67e102e4 store 2 ,mem_addr_mi 
+04b6 da2009d2 arg mem_temp_block5 ,rega 
+04b7 20405de2 call iicd_read_eep 
+04b8 1ee27e00 copy regf ,pdata 
+04b9 9de0ee00 iadd regext ,regf 
+04ba 1de27200 copy regext ,loopcnt 
+04bb 1d627e00 copy rege ,pdata 
+04bc d8c009d2 arg mem_temp_block5 ,contr 
+04bd efe00006 icrc contr 
+04be 1fe25600 copy pdata ,rege 
+04bf 1de27200 copy regext ,loopcnt 
+04c0 d8c009d2 arg mem_temp_block5 ,contr 
+04c1 1e020400 copy alarm ,temp 
+04c2 204004fd call p_g24_mouse_data_sum 
+04c3 18426000 copy temp ,alarm 
+04c4 202004aa branch p_g24_check_ota_data_loop 
 
 p_g24_check_ota_data_loopend:
-0493 58000000 setarg 0 
-0494 2020047f branch p_g24_check_ota_data_loop2 
+04c5 58000000 setarg 0 
+04c6 202004b1 branch p_g24_check_ota_data_loop2 
 
 p_g24_mouse_ota_process_data:
-0495 704bf70d jam g24_ota_sm_rx_data ,mem_g24_ota_sm 
-0496 efe08006 ifetch 1 ,contr 
-0497 18c22200 copy contr ,rega 
-0498 6848cc1c fetcht 1 ,mem_g24_ota_rx_data_count 
-0499 98467c00 isub temp ,null 
-049a 202284b1 branch p_g24_mouse_ota_process_ok ,zero 
-049b 204004c2 call p_g24_cmd_ota_data_check_count 
-049c 243404b3 nbranch p_g24_mouse_ota_process_fail ,user 
-049d 1a467c04 sub regb ,4 ,null 
-049e 202104b3 branch p_g24_mouse_ota_process_fail ,positive 
-049f 1a40a5fc increase -4 ,regb 
-04a0 62410959 storer regb ,2 ,mem_hold_contw 
-04a1 62210957 storer rega ,2 ,mem_hold_contr 
-04a2 20405dd3 call iicd_eeprom_write_enable 
-04a3 204004b5 call p_dongle_usb_cmd_ota_write_data 
-04a4 20405dda call iicd_eeprom_write_disable 
-04a5 6a410959 fetchr regb ,2 ,mem_hold_contw 
-04a6 6a210957 fetchr rega ,2 ,mem_hold_contr 
-04a7 6fe14c18 fetch 2 ,mem_g24_ota_rx_alllen 
-04a8 9a40fe00 iadd regb ,pdata 
-04a9 67e14c18 store 2 ,mem_g24_ota_rx_alllen 
-04aa 1a427200 copy regb ,loopcnt 
-04ab d8400000 arg 0 ,temp 
-04ac 1a220c00 copy rega ,contr 
-04ad 204004cb call p_g24_mouse_data_sum 
-04ae 6fe14c1a fetch 2 ,mem_g24_ota_rx_sum 
-04af 9840fe00 iadd temp ,pdata 
-04b0 67e14c1a store 2 ,mem_g24_ota_rx_sum 
+04c7 704bf70d jam g24_ota_sm_rx_data ,mem_g24_ota_sm 
+04c8 efe08006 ifetch 1 ,contr 
+04c9 18c22200 copy contr ,rega 
+04ca 6848cc1c fetcht 1 ,mem_g24_ota_rx_data_count 
+04cb 98467c00 isub temp ,null 
+04cc 202284e3 branch p_g24_mouse_ota_process_ok ,zero 
+04cd 204004f4 call p_g24_cmd_ota_data_check_count 
+04ce 243404e5 nbranch p_g24_mouse_ota_process_fail ,user 
+04cf 1a467c04 sub regb ,4 ,null 
+04d0 202104e5 branch p_g24_mouse_ota_process_fail ,positive 
+04d1 1a40a5fc increase -4 ,regb 
+04d2 62410959 storer regb ,2 ,mem_hold_contw 
+04d3 62210957 storer rega ,2 ,mem_hold_contr 
+04d4 20405dd3 call iicd_eeprom_write_enable 
+04d5 204004e7 call p_dongle_usb_cmd_ota_write_data 
+04d6 20405dda call iicd_eeprom_write_disable 
+04d7 6a410959 fetchr regb ,2 ,mem_hold_contw 
+04d8 6a210957 fetchr rega ,2 ,mem_hold_contr 
+04d9 6fe14c18 fetch 2 ,mem_g24_ota_rx_alllen 
+04da 9a40fe00 iadd regb ,pdata 
+04db 67e14c18 store 2 ,mem_g24_ota_rx_alllen 
+04dc 1a427200 copy regb ,loopcnt 
+04dd d8400000 arg 0 ,temp 
+04de 1a220c00 copy rega ,contr 
+04df 204004fd call p_g24_mouse_data_sum 
+04e0 6fe14c1a fetch 2 ,mem_g24_ota_rx_sum 
+04e1 9840fe00 iadd temp ,pdata 
+04e2 67e14c1a store 2 ,mem_g24_ota_rx_sum 
 
 p_g24_mouse_ota_process_ok:
-04b1 704bf500 jam g24_ota_status_success ,mem_g24_ota_rtn_state 
-04b2 20600000 rtn 
+04e3 704bf500 jam g24_ota_status_success ,mem_g24_ota_rtn_state 
+04e4 20600000 rtn 
 
 p_g24_mouse_ota_process_fail:
-04b3 704bf501 jam g24_ota_status_fail ,mem_g24_ota_rtn_state 
-04b4 20600000 rtn 
+04e5 704bf501 jam g24_ota_status_fail ,mem_g24_ota_rtn_state 
+04e6 20600000 rtn 
 
 p_dongle_usb_cmd_ota_write_data:
-04b5 6fe14bf3 fetch 2 ,mem_g24_ota_config_addr 
-04b6 207a0000 rtn blank 
-04b7 68494c18 fetcht 2 ,mem_g24_ota_rx_alllen 
-04b8 9840fe00 iadd temp ,pdata 
-04b9 1a420400 copy regb ,temp 
-04ba 20205e04 branch iicd_write_ota_data 
+04e7 6fe14bf3 fetch 2 ,mem_g24_ota_config_addr 
+04e8 207a0000 rtn blank 
+04e9 68494c18 fetcht 2 ,mem_g24_ota_rx_alllen 
+04ea 9840fe00 iadd temp ,pdata 
+04eb 1a420400 copy regb ,temp 
+04ec 20205e04 branch iicd_write_ota_data 
 
 p_g24_mouse_ota_process_reset:
-04bb 6fe0cbf7 fetch 1 ,mem_g24_ota_sm 
-04bc c1080000 rtneq g24_ota_sm_rx_reset 
-04bd c1088000 rtneq g24_ota_sm_tx_reset 
-04be c1090000 rtneq g24_ota_sm_tx_reset_ok 
-04bf 704c1d05 jam 5 ,mem_g24_ota_reset_timer 
-04c0 704bf710 jam g24_ota_sm_rx_reset ,mem_g24_ota_sm 
-04c1 20600000 rtn 
+04ed 6fe0cbf7 fetch 1 ,mem_g24_ota_sm 
+04ee c1080000 rtneq g24_ota_sm_rx_reset 
+04ef c1088000 rtneq g24_ota_sm_tx_reset 
+04f0 c1090000 rtneq g24_ota_sm_tx_reset_ok 
+04f1 704c1d05 jam 5 ,mem_g24_ota_reset_timer 
+04f2 704bf710 jam g24_ota_sm_rx_reset ,mem_g24_ota_sm 
+04f3 20600000 rtn 
 
 p_g24_cmd_ota_data_check_count:
-04c2 6848cc1c fetcht 1 ,mem_g24_ota_rx_data_count 
-04c3 67e0cc1c store 1 ,mem_g24_ota_rx_data_count 
-04c4 c00004c8 beq 0 ,p_g24_cmd_ota_data_check_count_0 
-04c5 98467e00 isub temp ,pdata 
-04c6 c000fe54 beq 1 ,enable_user 
-04c7 20207e56 branch disable_user 
+04f4 6848cc1c fetcht 1 ,mem_g24_ota_rx_data_count 
+04f5 67e0cc1c store 1 ,mem_g24_ota_rx_data_count 
+04f6 c00004fa beq 0 ,p_g24_cmd_ota_data_check_count_0 
+04f7 98467e00 isub temp ,pdata 
+04f8 c000fe54 beq 1 ,enable_user 
+04f9 20207e56 branch disable_user 
 
 p_g24_cmd_ota_data_check_count_0:
-04c8 18467cff sub temp ,0xff ,null 
-04c9 2022fe54 branch enable_user ,zero 
-04ca 20207e56 branch disable_user 
+04fa 18467cff sub temp ,0xff ,null 
+04fb 2022fe54 branch enable_user ,zero 
+04fc 20207e56 branch disable_user 
 
 p_g24_mouse_data_sum:
-04cb efe08006 ifetch 1 ,contr 
-04cc 98408400 iadd temp ,temp 
-04cd c20004cb loop p_g24_mouse_data_sum 
-04ce 20600000 rtn 
+04fd efe08006 ifetch 1 ,contr 
+04fe 98408400 iadd temp ,temp 
+04ff c20004fd loop p_g24_mouse_data_sum 
+0500 20600000 rtn 
 
 p_g24_mouse_ota_crc:
-04cf 5800ffff setarg 0xffff 
-04d0 efe00006 icrc contr 
-04d1 20600000 rtn 
+0501 5800ffff setarg 0xffff 
+0502 efe00006 icrc contr 
+0503 20600000 rtn 
 
 p_g24_mouse_ota_check_crc:
-04d2 6f20c82a fetchr loopcnt ,1 ,mem_24g_rxdata_length 
-04d3 1f267c02 sub loopcnt ,2 ,null 
-04d4 20217e56 branch disable_user ,positive 
-04d5 dfe0480a arg mem_24g_rxpayload ,pdata 
-04d6 9f208c00 iadd loopcnt ,contr 
-04d7 18c08dfe increase -2 ,contr 
-04d8 e8410006 ifetcht 2 ,contr 
-04d9 d8c0480a arg mem_24g_rxpayload ,contr 
-04da 204004cf call p_g24_mouse_ota_crc 
-04db 98467c00 isub temp ,null 
-04dc 2022fe54 branch enable_user ,zero 
-04dd 20207e56 branch disable_user 
+0504 6f20c82a fetchr loopcnt ,1 ,mem_24g_rxdata_length 
+0505 1f267c02 sub loopcnt ,2 ,null 
+0506 20217e56 branch disable_user ,positive 
+0507 dfe0480a arg mem_24g_rxpayload ,pdata 
+0508 9f208c00 iadd loopcnt ,contr 
+0509 18c08dfe increase -2 ,contr 
+050a e8410006 ifetcht 2 ,contr 
+050b d8c0480a arg mem_24g_rxpayload ,contr 
+050c 20400501 call p_g24_mouse_ota_crc 
+050d 98467c00 isub temp ,null 
+050e 2022fe54 branch enable_user ,zero 
+050f 20207e56 branch disable_user 
 
 p_g24_mouse_ota_check_data:
-04de efe08006 ifetch 1 ,contr 
-04df c0ad04f7 bne 0x5a ,p_g24_mouse_ota_load_fail 
-04e0 1a220200 copy rega ,1 ,contr 
-04e1 68490006 fetcht 2 ,contr 
+0510 efe08006 ifetch 1 ,contr 
+0511 c0ad0529 bne 0x5a ,p_g24_mouse_ota_load_fail 
+0512 1a220200 copy rega ,1 ,contr 
+0513 68490006 fetcht 2 ,contr 
 
 p_g24_mouse_ota_check_data_loop:
-04e2 18467c03 sub temp ,3 ,null 
-04e3 202104f7 branch p_g24_mouse_ota_load_fail ,positive 
-04e4 18c08c02 increase 2 ,contr 
-04e5 ef208006 ifetchr loopcnt ,1 ,contr 
-04e6 1f267c00 sub loopcnt ,0 ,null 
-04e7 242284f7 nbranch p_g24_mouse_ota_load_fail ,zero 
-04e8 1f227e00 copy loopcnt ,pdata 
-04e9 98c08c00 iadd contr ,contr 
-04ea 18427e00 copy temp ,pdata 
-04eb 1f20f203 increase 3 ,loopcnt 
-04ec 9f260400 isub loopcnt ,temp 
-04ed 242284e2 nbranch p_g24_mouse_ota_check_data_loop ,zero 
-04ee e8410006 ifetcht 2 ,contr 
-04ef 1a208c01 add rega ,1 ,contr 
-04f0 efe10006 ifetch 2 ,contr 
-04f1 1fe0f202 add pdata ,2 ,loopcnt 
-04f2 1a208c01 add rega ,1 ,contr 
-04f3 204004cf call p_g24_mouse_ota_crc 
-04f4 98467c00 isub temp ,null 
-04f5 242284f7 nbranch p_g24_mouse_ota_load_fail ,zero 
+0514 18467c03 sub temp ,3 ,null 
+0515 20210529 branch p_g24_mouse_ota_load_fail ,positive 
+0516 18c08c02 increase 2 ,contr 
+0517 ef208006 ifetchr loopcnt ,1 ,contr 
+0518 1f267c00 sub loopcnt ,0 ,null 
+0519 24228529 nbranch p_g24_mouse_ota_load_fail ,zero 
+051a 1f227e00 copy loopcnt ,pdata 
+051b 98c08c00 iadd contr ,contr 
+051c 18427e00 copy temp ,pdata 
+051d 1f20f203 increase 3 ,loopcnt 
+051e 9f260400 isub loopcnt ,temp 
+051f 24228514 nbranch p_g24_mouse_ota_check_data_loop ,zero 
+0520 e8410006 ifetcht 2 ,contr 
+0521 1a208c01 add rega ,1 ,contr 
+0522 efe10006 ifetch 2 ,contr 
+0523 1fe0f202 add pdata ,2 ,loopcnt 
+0524 1a208c01 add rega ,1 ,contr 
+0525 20400501 call p_g24_mouse_ota_crc 
+0526 98467c00 isub temp ,null 
+0527 24228529 nbranch p_g24_mouse_ota_load_fail ,zero 
 
 p_g24_mouse_ota_load_success:
-04f6 20207e54 branch enable_user 
+0528 20207e54 branch enable_user 
 
 p_g24_mouse_ota_load_fail:
-04f7 20207e56 branch disable_user 
+0529 20207e56 branch disable_user 
 
 p_g24_mouse_ota_get_otaaddr:
-04f8 6fe14bf3 fetch 2 ,mem_g24_ota_config_addr 
-04f9 1fe20c00 copy pdata ,contr 
-04fa 204004de call p_g24_mouse_ota_check_data 
-04fb 24340503 nbranch p_g24_mouse_ota_config_end ,user 
-04fc 6a214bf3 fetchr rega ,2 ,mem_g24_ota_config_addr 
-04fd 1a208c01 add rega ,1 ,contr 
-04fe efe10006 ifetch 2 ,contr 
-04ff 1fe0fe05 increase 5 ,pdata 
-0500 9a20fe00 iadd rega ,pdata 
-0501 67e14bf3 store 2 ,mem_g24_ota_config_addr 
-0502 202004f8 branch p_g24_mouse_ota_get_otaaddr 
+052a 6fe14bf3 fetch 2 ,mem_g24_ota_config_addr 
+052b 1fe20c00 copy pdata ,contr 
+052c 20400510 call p_g24_mouse_ota_check_data 
+052d 24340535 nbranch p_g24_mouse_ota_config_end ,user 
+052e 6a214bf3 fetchr rega ,2 ,mem_g24_ota_config_addr 
+052f 1a208c01 add rega ,1 ,contr 
+0530 efe10006 ifetch 2 ,contr 
+0531 1fe0fe05 increase 5 ,pdata 
+0532 9a20fe00 iadd rega ,pdata 
+0533 67e14bf3 store 2 ,mem_g24_ota_config_addr 
+0534 2020052a branch p_g24_mouse_ota_get_otaaddr 
 
 p_g24_mouse_ota_config_end:
-0503 6fe14bf1 fetch 2 ,mem_g24_ota_storage_size 
-0504 68494bf3 fetcht 2 ,mem_g24_ota_config_addr 
-0505 98467e00 isub temp ,pdata 
-0506 20600000 rtn 
+0535 6fe14bf1 fetch 2 ,mem_g24_ota_storage_size 
+0536 68494bf3 fetcht 2 ,mem_g24_ota_config_addr 
+0537 98467e00 isub temp ,pdata 
+0538 20600000 rtn 
 
 p_ota_init:
-0507 58000000 setarg 0 
-0508 67e14c18 store 2 ,mem_g24_ota_rx_alllen 
-0509 67e14c1a store 2 ,mem_g24_ota_rx_sum 
-050a 67e0cc1c store 1 ,mem_g24_ota_rx_data_count 
-050b 67e0cbf7 store 1 ,mem_g24_ota_sm 
-050c 20600000 rtn 
+0539 58000000 setarg 0 
+053a 67e14c18 store 2 ,mem_g24_ota_rx_alllen 
+053b 67e14c1a store 2 ,mem_g24_ota_rx_sum 
+053c 67e0cc1c store 1 ,mem_g24_ota_rx_data_count 
+053d 67e0cbf7 store 1 ,mem_g24_ota_sm 
+053e 20600000 rtn 
 
 p_mouse_24g_package_ota:
-050d 20407e56 call disable_user 
-050e 6fe0cbf7 fetch 1 ,mem_g24_ota_sm 
-050f c0008516 beq g24_ota_sm_rx_version ,p_mouse_24g_package_ota_version 
-0510 c0020520 beq g24_ota_sm_rx_info ,p_mouse_24g_package_ota_info 
-0511 c003853f beq g24_ota_sm_rx_config ,p_mouse_24g_package_ota_config 
-0512 c0050565 beq g24_ota_sm_rx_set_config_end ,p_mouse_24g_package_ota_set_config_end 
-0513 c006855a beq g24_ota_sm_rx_data ,p_mouse_24g_package_ota_data 
-0514 c0080543 beq g24_ota_sm_rx_reset ,p_mouse_24g_package_ota_reset 
-0515 2020056e branch p_mouse_24g_package_ping 
+053f 20407e56 call disable_user 
+0540 6fe0cbf7 fetch 1 ,mem_g24_ota_sm 
+0541 c0008548 beq g24_ota_sm_rx_version ,p_mouse_24g_package_ota_version 
+0542 c0020552 beq g24_ota_sm_rx_info ,p_mouse_24g_package_ota_info 
+0543 c0038571 beq g24_ota_sm_rx_config ,p_mouse_24g_package_ota_config 
+0544 c0050597 beq g24_ota_sm_rx_set_config_end ,p_mouse_24g_package_ota_set_config_end 
+0545 c006858c beq g24_ota_sm_rx_data ,p_mouse_24g_package_ota_data 
+0546 c0080575 beq g24_ota_sm_rx_reset ,p_mouse_24g_package_ota_reset 
+0547 202005a0 branch p_mouse_24g_package_ping 
 
 p_mouse_24g_package_ota_version:
-0516 7047c6af jam datatype_ota ,mem_24g_txbuf 
-0517 7047c701 jam g24_ota_cmd_version ,mem_24g_txbuf + 1 
-0518 7047c800 jam g24_ota_status_success ,mem_24g_txbuf + 2 
-0519 7047c902 jam g24_ota_target_mouse ,mem_24g_txbuf + 3 
-051a 58000001 setarg g24_ota_version 
-051b 67e147ca store 2 ,mem_24g_txbuf + 4 
-051c 70483601 jam type_ms ,mem_24g_data_type 
-051d 70483506 jam 6 ,mem_24g_datalen 
-051e 704bf702 jam g24_ota_sm_tx_version ,mem_g24_ota_sm 
-051f 20600000 rtn 
+0548 7047c6af jam datatype_ota ,mem_24g_txbuf 
+0549 7047c701 jam g24_ota_cmd_version ,mem_24g_txbuf + 1 
+054a 7047c800 jam g24_ota_status_success ,mem_24g_txbuf + 2 
+054b 7047c902 jam g24_ota_target_mouse ,mem_24g_txbuf + 3 
+054c 58000001 setarg g24_ota_version 
+054d 67e147ca store 2 ,mem_24g_txbuf + 4 
+054e 70483601 jam type_ms ,mem_24g_data_type 
+054f 70483506 jam 6 ,mem_24g_datalen 
+0550 704bf702 jam g24_ota_sm_tx_version ,mem_g24_ota_sm 
+0551 20600000 rtn 
 
 p_mouse_24g_package_ota_info:
-0520 7047c6af jam datatype_ota ,mem_24g_txbuf 
-0521 7047c702 jam g24_ota_cmd_info ,mem_24g_txbuf + 1 
-0522 7047c800 jam g24_ota_status_success ,mem_24g_txbuf + 2 
-0523 7047c902 jam g24_ota_target_mouse ,mem_24g_txbuf + 3 
-0524 6ff10000 fetch 2 ,core_chipid 
-0525 67e147ca store 2 ,mem_24g_txbuf + 4 
-0526 58006661 setarg 0x6661 
-0527 e7e10005 istore 2 ,contw 
-0528 58000001 setarg 1 
-0529 e7e30005 istore 6 ,contw 
-052a 58000000 setarg 0 
-052b e7e10005 istore 2 ,contw 
-052c e7e10005 istore 2 ,contw 
-052d 20400547 call p_mouse_24g_storage_type 
-052e e7e08005 istore 1 ,contw 
-052f 58000000 setarg 0 
-0530 e7e08005 istore 1 ,contw 
-0531 68494bf3 fetcht 2 ,mem_g24_ota_config_addr 
-0532 e0410005 istoret 2 ,contw 
-0533 6fe14bf1 fetch 2 ,mem_g24_ota_storage_size 
-0534 1fed7e00 lshift8 pdata ,pdata 
-0535 1fe37e00 rshift pdata ,pdata 
-0536 98467e00 isub temp ,pdata 
-0537 2421053d nbranch p_dongle_usb_cmd_ota_info_dongle_empty ,positive 
+0552 7047c6af jam datatype_ota ,mem_24g_txbuf 
+0553 7047c702 jam g24_ota_cmd_info ,mem_24g_txbuf + 1 
+0554 7047c800 jam g24_ota_status_success ,mem_24g_txbuf + 2 
+0555 7047c902 jam g24_ota_target_mouse ,mem_24g_txbuf + 3 
+0556 6ff10000 fetch 2 ,core_chipid 
+0557 67e147ca store 2 ,mem_24g_txbuf + 4 
+0558 58006661 setarg 0x6661 
+0559 e7e10005 istore 2 ,contw 
+055a 58000001 setarg 1 
+055b e7e30005 istore 6 ,contw 
+055c 58000000 setarg 0 
+055d e7e10005 istore 2 ,contw 
+055e e7e10005 istore 2 ,contw 
+055f 20400579 call p_mouse_24g_storage_type 
+0560 e7e08005 istore 1 ,contw 
+0561 58000000 setarg 0 
+0562 e7e08005 istore 1 ,contw 
+0563 68494bf3 fetcht 2 ,mem_g24_ota_config_addr 
+0564 e0410005 istoret 2 ,contw 
+0565 6fe14bf1 fetch 2 ,mem_g24_ota_storage_size 
+0566 1fed7e00 lshift8 pdata ,pdata 
+0567 1fe37e00 rshift pdata ,pdata 
+0568 98467e00 isub temp ,pdata 
+0569 2421056f nbranch p_dongle_usb_cmd_ota_info_dongle_empty ,positive 
 
 p_dongle_usb_cmd_ota_info_dongle_common:
-0538 e7e10005 istore 2 ,contw 
-0539 70483518 jam 24 ,mem_24g_datalen 
-053a 70483601 jam type_ms ,mem_24g_data_type 
-053b 704bf705 jam g24_ota_sm_tx_info ,mem_g24_ota_sm 
-053c 20600000 rtn 
+056a e7e10005 istore 2 ,contw 
+056b 70483518 jam 24 ,mem_24g_datalen 
+056c 70483601 jam type_ms ,mem_24g_data_type 
+056d 704bf705 jam g24_ota_sm_tx_info ,mem_g24_ota_sm 
+056e 20600000 rtn 
 
 p_dongle_usb_cmd_ota_info_dongle_empty:
-053d 58000000 setarg 0 
-053e 20200538 branch p_dongle_usb_cmd_ota_info_dongle_common 
+056f 58000000 setarg 0 
+0570 2020056a branch p_dongle_usb_cmd_ota_info_dongle_common 
 
 p_mouse_24g_package_ota_config:
-053f 704bf708 jam g24_ota_sm_tx_config ,mem_g24_ota_sm 
-0540 7047c703 jam g24_ota_cmd_config ,mem_24g_txbuf + 1 
-0541 70483504 jam 4 ,mem_24g_datalen 
-0542 20200550 branch p_mouse_24g_package_ota_common_ok 
+0571 704bf708 jam g24_ota_sm_tx_config ,mem_g24_ota_sm 
+0572 7047c703 jam g24_ota_cmd_config ,mem_24g_txbuf + 1 
+0573 70483504 jam 4 ,mem_24g_datalen 
+0574 20200582 branch p_mouse_24g_package_ota_common_ok 
 
 p_mouse_24g_package_ota_reset:
-0543 704bf711 jam g24_ota_sm_tx_reset ,mem_g24_ota_sm 
-0544 7047c706 jam g24_ota_cmd_reset ,mem_24g_txbuf + 1 
-0545 70483504 jam 4 ,mem_24g_datalen 
-0546 20200550 branch p_mouse_24g_package_ota_common_ok 
+0575 704bf711 jam g24_ota_sm_tx_reset ,mem_g24_ota_sm 
+0576 7047c706 jam g24_ota_cmd_reset ,mem_24g_txbuf + 1 
+0577 70483504 jam 4 ,mem_24g_datalen 
+0578 20200582 branch p_mouse_24g_package_ota_common_ok 
 
 p_mouse_24g_storage_type:
-0547 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-0548 c289854c bbit1 mouse_enable_eeprom ,p_mouse_24g_storage_type_eeprom 
-0549 c289054e bbit1 mouse_enable_flash ,p_mouse_24g_storage_type_flash 
-054a 58000000 setarg g24_ota_storage_error 
-054b 20600000 rtn 
+0579 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+057a c289857e bbit1 mouse_enable_eeprom ,p_mouse_24g_storage_type_eeprom 
+057b c2890580 bbit1 mouse_enable_flash ,p_mouse_24g_storage_type_flash 
+057c 58000000 setarg g24_ota_storage_error 
+057d 20600000 rtn 
 
 p_mouse_24g_storage_type_eeprom:
-054c 58000002 setarg g24_ota_storage_eeprom 
-054d 20600000 rtn 
+057e 58000002 setarg g24_ota_storage_eeprom 
+057f 20600000 rtn 
 
 p_mouse_24g_storage_type_flash:
-054e 58000004 setarg g24_ota_storage_flash 
-054f 20600000 rtn 
+0580 58000004 setarg g24_ota_storage_flash 
+0581 20600000 rtn 
 
 p_mouse_24g_package_ota_common_ok:
-0550 70483601 jam type_ms ,mem_24g_data_type 
-0551 7047c6af jam datatype_ota ,mem_24g_txbuf 
-0552 7047c800 jam g24_ota_status_success ,mem_24g_txbuf + 2 
-0553 7047c902 jam g24_ota_target_mouse ,mem_24g_txbuf + 3 
-0554 20600000 rtn 
+0582 70483601 jam type_ms ,mem_24g_data_type 
+0583 7047c6af jam datatype_ota ,mem_24g_txbuf 
+0584 7047c800 jam g24_ota_status_success ,mem_24g_txbuf + 2 
+0585 7047c902 jam g24_ota_target_mouse ,mem_24g_txbuf + 3 
+0586 20600000 rtn 
 
 p_mouse_24g_package_ota_common_fail:
-0555 7047c801 jam g24_ota_status_fail ,mem_24g_txbuf + 2 
-0556 70483601 jam type_ms ,mem_24g_data_type 
-0557 7047c6af jam datatype_ota ,mem_24g_txbuf 
-0558 7047c902 jam g24_ota_target_mouse ,mem_24g_txbuf + 3 
-0559 20600000 rtn 
+0587 7047c801 jam g24_ota_status_fail ,mem_24g_txbuf + 2 
+0588 70483601 jam type_ms ,mem_24g_data_type 
+0589 7047c6af jam datatype_ota ,mem_24g_txbuf 
+058a 7047c902 jam g24_ota_target_mouse ,mem_24g_txbuf + 3 
+058b 20600000 rtn 
 
 p_mouse_24g_package_ota_data:
-055a 704bf70f jam g24_ota_sm_tx_data_ok ,mem_g24_ota_sm 
-055b 7047c705 jam g24_ota_cmd_data ,mem_24g_txbuf + 1 
-055c 6fe0cc1c fetch 1 ,mem_g24_ota_rx_data_count 
-055d 67e0c7ca store 1 ,mem_24g_txbuf + 4 
-055e 70483505 jam 5 ,mem_24g_datalen 
-055f 70483601 jam type_ms ,mem_24g_data_type 
-0560 7047c6af jam datatype_ota ,mem_24g_txbuf 
-0561 6fe0cbf5 fetch 1 ,mem_g24_ota_rtn_state 
-0562 67e0c7c8 store 1 ,mem_24g_txbuf + 2 
-0563 7047c902 jam g24_ota_target_mouse ,mem_24g_txbuf + 3 
-0564 20600000 rtn 
+058c 704bf70f jam g24_ota_sm_tx_data_ok ,mem_g24_ota_sm 
+058d 7047c705 jam g24_ota_cmd_data ,mem_24g_txbuf + 1 
+058e 6fe0cc1c fetch 1 ,mem_g24_ota_rx_data_count 
+058f 67e0c7ca store 1 ,mem_24g_txbuf + 4 
+0590 70483505 jam 5 ,mem_24g_datalen 
+0591 70483601 jam type_ms ,mem_24g_data_type 
+0592 7047c6af jam datatype_ota ,mem_24g_txbuf 
+0593 6fe0cbf5 fetch 1 ,mem_g24_ota_rtn_state 
+0594 67e0c7c8 store 1 ,mem_24g_txbuf + 2 
+0595 7047c902 jam g24_ota_target_mouse ,mem_24g_txbuf + 3 
+0596 20600000 rtn 
 
 p_mouse_24g_package_ota_set_config_end:
-0565 704bf70c jam g24_ota_sm_tx_set_config_end_ok ,mem_g24_ota_sm 
-0566 7047c704 jam g24_ota_cmd_set_config_end ,mem_24g_txbuf + 1 
-0567 70483504 jam 4 ,mem_24g_datalen 
-0568 70483601 jam type_ms ,mem_24g_data_type 
-0569 7047c6af jam datatype_ota ,mem_24g_txbuf 
-056a 6fe0cbf5 fetch 1 ,mem_g24_ota_rtn_state 
-056b 67e0c7c8 store 1 ,mem_24g_txbuf + 2 
-056c 7047c902 jam g24_ota_target_mouse ,mem_24g_txbuf + 3 
-056d 20600000 rtn 
+0597 704bf70c jam g24_ota_sm_tx_set_config_end_ok ,mem_g24_ota_sm 
+0598 7047c704 jam g24_ota_cmd_set_config_end ,mem_24g_txbuf + 1 
+0599 70483504 jam 4 ,mem_24g_datalen 
+059a 70483601 jam type_ms ,mem_24g_data_type 
+059b 7047c6af jam datatype_ota ,mem_24g_txbuf 
+059c 6fe0cbf5 fetch 1 ,mem_g24_ota_rtn_state 
+059d 67e0c7c8 store 1 ,mem_24g_txbuf + 2 
+059e 7047c902 jam g24_ota_target_mouse ,mem_24g_txbuf + 3 
+059f 20600000 rtn 
 
 p_mouse_24g_package_ping:
-056e 7047c6af jam datatype_ota ,mem_24g_txbuf 
-056f 7047c7ff jam g24_ota_cmd_ping ,mem_24g_txbuf + 1 
-0570 7047c800 jam g24_ota_status_success ,mem_24g_txbuf + 2 
-0571 7047c902 jam g24_ota_target_mouse ,mem_24g_txbuf + 3 
-0572 70483601 jam type_ms ,mem_24g_data_type 
-0573 70483504 jam 4 ,mem_24g_datalen 
-0574 20600000 rtn 
+05a0 7047c6af jam datatype_ota ,mem_24g_txbuf 
+05a1 7047c7ff jam g24_ota_cmd_ping ,mem_24g_txbuf + 1 
+05a2 7047c800 jam g24_ota_status_success ,mem_24g_txbuf + 2 
+05a3 7047c902 jam g24_ota_target_mouse ,mem_24g_txbuf + 3 
+05a4 70483601 jam type_ms ,mem_24g_data_type 
+05a5 70483504 jam 4 ,mem_24g_datalen 
+05a6 20600000 rtn 
 
 p_mouse_24g_package_data_ota:
-0575 1fe22200 copy pdata ,rega 
-0576 704bf800 jam 0 ,mem_g24_ota_prepare_send_len 
-0577 70483601 jam type_ms ,mem_24g_data_type 
-0578 da404bf9 arg mem_g24_ota_txbuf ,regb 
-0579 20600000 rtn 
+05a7 1fe22200 copy pdata ,rega 
+05a8 704bf800 jam 0 ,mem_g24_ota_prepare_send_len 
+05a9 70483601 jam type_ms ,mem_24g_data_type 
+05aa da404bf9 arg mem_g24_ota_txbuf ,regb 
+05ab 20600000 rtn 
               org 0x800
 
 start:
Index: program/patch.prog
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/YJX_CL_Switch_3M_2Ch/program/patch.prog	(revision 1191)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/YJX_CL_Switch_3M_2Ch/program/patch.prog	(working copy)
@@ -213,7 +213,7 @@
 	call p_mouse_setting_config
 	call mouse_init_sunt
 	rtn wake
-	call mouse_dpi_config
+	call p_mouse_seting_sensor_type
 	call mouse_usb_check_enable
 	call mouse_drawing_optima_init
 	call p_mouse_cb_fuction
@@ -810,9 +810,29 @@
 
 ///////////////////dpi led adjust////////////////////////////////////////////////////////////////////
 p_mouse_seting_dpi:
+	fetch 1,mem_config_sensor_type
+	beq P3212,p_mouse_seting_dpi_next
 	call mouse_setting_dpi_4_level
+p_mouse_seting_dpi_next:
 	call p_mouse_dpi_led_blink_delay
-	branch mouse_seting_sensor_type
+	branch p_mouse_seting_sensor_type
+
+p_mouse_seting_sensor_type:
+	fetch 1,mem_config_sensor_type
+	beq P3212,p_mouse_seting_3212_dpi
+	branch mouse_seting_sensor_type+1
+
+p_mouse_seting_3212_dpi:
+	fetch 1,mem_mouse_dpi
+	beq MOUSE_DPI_LEVEL1,mouse_set_p3212_cpi0	//1200
+	beq MOUSE_DPI_LEVEL2,mouse_set_p3212_cpi1	//1600
+	beq MOUSE_DPI_LEVEL3,mouse_set_p3212_cpi2	//2400
+	beq MOUSE_DPI_LEVEL4,mouse_set_p3212_cpi2	//3200	fake,zoom
+	beq MOUSE_DPI_LEVEL5,mouse_set_p3212_cpi3	//800
+	branch mouse_set_p3212_cpi1
+
+
+
 
 p_mouse_dpi_led_blink_delay:
 	fetch 1,mem_dpi_led_gpio
@@ -1090,21 +1110,55 @@
 	setarg 0
 	store 6,mem_mouse_x
 	call mouse_check_sensor_data
-	call mouse_dpi_config
-	call mouse_zwheel
-	call mouse_t_zwheel
-	call mouse_key
-	fetch 1,mem_mouse_key
-	and_into 0x1f,pdata
-	store 1,mem_mouse_key
-	nbranch mouse_drawing_optima_init,user
-	call p_mouse_drawing_optima
-	branch mouse_no_data_timer_init
+	call p_mouse_p3212_shutdown_smooth
+	call p_mouse_data_zoom
+	call p_mouse_seting_sensor_type
+	branch mouse_motion+5
+p_mouse_p3212_shutdown_smooth:
+	fetch 1,mem_config_sensor_type
+	rtnne P3212
+	arg MOUSE_ENABLE_SMOOTHER,queue
+	call  mouse_disable_function_flag
+	arg MOUSE_ENABLE_XY_OFFSET,queue
+	branch  mouse_disable_function_flag
 
-p_mouse_drawing_optima:
+p_mouse_data_zoom:
 	fetch 1,mem_config_sensor_type
-	rtneq P3212
-	branch mouse_drawing_optima
+	rtnne P3212
+	fetch 1,mem_mouse_dpi
+	rtnne MOUSE_DPI_LEVEL4
+	fetch 2,mem_mouse_x
+	call p_mouse_2400_zoom
+	store 2,mem_mouse_x
+	fetch 2,mem_mouse_y
+	call p_mouse_2400_zoom
+	store 2,mem_mouse_y
+	rtn
+
+p_mouse_2400_zoom:
+	bbit1 11,p_mouse_xy_inverse
+	bbit0 11,p_mouse_xy_zoom
+	rtn
+p_mouse_xy_inverse:
+	sub pdata,0,pdata
+	call p_mouse_xy_zoom	
+	sub pdata,0,pdata
+	rtn
+
+p_mouse_xy_zoom:
+	rshift pdata,temp
+	set0 15,temp
+	iadd temp,pdata	// x + (x>>2) = x * 1.25
+	store 2,mem_mouse_temp_data
+	fetch 1,mem_mouse_temp_data+1
+	sub pdata,0x7,null
+	ncall p_mouse_xy_forward_overflow,positive
+	fetch 2,mem_mouse_temp_data
+	rtn
+p_mouse_xy_forward_overflow:
+	setarg 0x7ff
+	store 2,mem_mouse_temp_data
+	rtn
 
 p_mouse_sensor_poweron:
 	call mouse_sensor_spi_init
@@ -1113,13 +1167,13 @@
 	call mouse_sensor_reset
 	arg mem_sensor_poweron_init,regc
 	call mouse_sensor_wr_seq
-	branch mouse_dpi_config
+	branch p_mouse_seting_sensor_type
 	
 p_mouse_ka8g2_sensor_init:
 	call p_mouse_ka8g2_sensor_reset
 	arg mem_ka8g2_sensor_poweron_init,regc
 	call mouse_sensor_wr_seq
-	branch mouse_dpi_config
+	branch p_mouse_seting_sensor_type
 
 p_mouse_sensor_reset:
 	fetch 1,mem_config_sensor_type
@@ -1320,6 +1374,8 @@
 p_mouse_dpi_process:
 	call mouse_dpi_ghost_check
 	rtn user
+	fetch 1,mem_config_sensor_type
+	beq P3212,p_mouse_3212_5level_dpi_process
 	fetch 1,mem_mouse_dpi
 	copy pdata,temp
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
@@ -1332,6 +1388,18 @@
 	call mouse_seting_dpi
 	branch mouse_store_device_info_delay
 
+p_mouse_3212_5level_dpi_process:  	
+	fetch 1,mem_mouse_dpi
+	increase 1,pdata
+	sub pdata,5,null 
+	call p_mouse_dpi_recount,zero
+	store 1,mem_mouse_dpi
+	call p_mouse_seting_dpi
+	branch mouse_store_device_info_delay
+p_mouse_dpi_recount:
+	setarg 0
+	rtn
+
 p_mouse_double_dpi_check:
 	fetch 1,mem_dpi_another_button_down_enable
 	nbranch p_mouse_another_dpi_button_down,blank
