Index: format/rom.format
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/DPI_3mode_3ch_HYC-344/format/rom.format	(revision 4422)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/DPI_3mode_3ch_HYC-344/format/rom.format	(working copy)
@@ -2817,6 +2817,8 @@
 0x0C PAN_REG_SLEEP_2
 0x0D PAN_REG_IMAGE_THRESHOLD
 0x0E PAN_REG_IMAGE_RECGNITION
+0x20 PAN_REG_DALTA_X_HIGH
+0x21 PAN_REG_DALTA_Y_HIGH
 
 
 0x06 MOUSE_DPI_ADDRESS
Index: output/eeprom.dat
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/DPI_3mode_3ch_HYC-344/output/eeprom.dat	(revision 4482)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/DPI_3mode_3ch_HYC-344/output/eeprom.dat	(working copy)
@@ -2,8 +2,8 @@
 02
 aa
 55
-3a
-18
+32
+19
 c2
 84
 00
@@ -79,11 +79,11 @@
 c0
 67
 05
-46
+84
 c0
 67
-85
-ee
+86
+2c
 c0
 68
 03
@@ -91,7 +91,7 @@
 c0
 68
 85
-90
+ce
 c0
 69
 83
@@ -99,7 +99,7 @@
 c0
 6a
 05
-77
+b5
 c0
 6b
 02
@@ -118,8 +118,8 @@
 da
 c0
 6f
-05
-c8
+06
+06
 c0
 6f
 80
@@ -199,7 +199,7 @@
 c0
 76
 86
-06
+44
 20
 20
 13
@@ -1279,7 +1279,7 @@
 20
 40
 05
-87
+c5
 20
 20
 3b
@@ -1843,7 +1843,7 @@
 20
 20
 05
-87
+c5
 20
 40
 26
@@ -2074,8 +2074,8 @@
 00
 20
 20
-05
-da
+06
+18
 6f
 e0
 cb
@@ -2231,11 +2231,11 @@
 20
 40
 05
-82
+c0
 20
 40
 05
-87
+c5
 20
 20
 3e
@@ -2282,8 +2282,8 @@
 20
 20
 40
-05
-c2
+06
+00
 d8
 40
 00
@@ -2470,8 +2470,8 @@
 1f
 20
 40
-05
-c2
+06
+00
 20
 20
 3e
@@ -3079,7 +3079,7 @@
 20
 40
 05
-87
+c5
 20
 20
 02
@@ -3699,7 +3699,7 @@
 20
 20
 05
-7c
+ba
 70
 49
 27
@@ -4827,7 +4827,7 @@
 20
 40
 05
-90
+ce
 1f
 e1
 7e
@@ -5404,148 +5404,396 @@
 60
 00
 00
-78
-54
-7c
-00
-58
-00
+6f
+e0
+c4
+ac
+c1
+80
 00
 00
-67
-e3
-48
-d1
+6f
+e0
+c9
+27
+c0
+06
+85
+4b
+20
 20
-40
 42
+42
+20
 40
+42
+c4
+6f
+e0
+c9
+11
+c0
+7f
+85
+51
+68
+48
+c9
+11
 20
 40
-05
+60
 59
+24
+60
+80
+00
+58
+00
+00
+00
+20
+40
+5b
+0d
+c0
+98
+41
+b2
+58
+00
+00
+02
 20
 40
+5b
+0d
+c4
 03
-4d
+80
+00
 20
 40
-3f
-7e
+05
+5c
 20
 40
-3f
-83
+05
+63
 20
 40
 05
-8e
-6f
-e0
-c8
-d0
-1f
-e1
-7e
-1f
-67
-e0
-c8
-d0
-24
-34
-47
-28
+70
 20
 40
 05
-55
+77
 20
 20
-45
-44
-6f
+42
+86
+df
 e0
-c9
-27
-c1
-01
-80
 00
-c1
-06
-80
+03
+20
+40
+5b
+0d
+67
+e0
+c8
+d1
+58
+00
 00
 20
 20
-47
-1a
-6f
+40
+5b
+0d
+67
 e0
-c9
-27
-c1
-81
-80
+c8
+d2
+20
+60
 00
-6f
-e0
-c9
-92
-c1
-81
+00
+58
 00
 00
-6f
-e1
-48
-d1
+02
 20
 40
-05
-64
-67
-e1
-48
-d1
+5b
+0d
+c4
+01
+80
+00
 6f
 e1
 48
-d3
+d1
+c2
+87
+85
+6d
+c3
+07
+85
+6a
 20
-40
-05
-64
+60
+00
+00
+58
+00
+7f
+ff
 67
 e1
 48
-d3
+d1
 20
 60
 00
 00
-c2
-85
-85
+58
+00
+80
+00
 67
-c3
-05
-85
-6b
+e1
+48
+d1
 20
 60
 00
 00
-1f
-e6
-7e
+df
+e0
 00
+04
 20
 40
-05
-6b
-1f
-e6
+5b
+0d
+67
+e0
+c8
+d3
+58
+00
+00
+21
+20
+40
+5b
+0d
+67
+e0
+c8
+d4
+20
+60
+00
+00
+58
+00
+00
+02
+20
+40
+5b
+0d
+c4
+02
+00
+00
+6f
+e1
+48
+d3
+c2
+87
+85
+81
+c3
+07
+85
+7e
+20
+60
+00
+00
+58
+00
+7f
+ff
+67
+e1
+48
+d3
+20
+60
+00
+00
+58
+00
+80
+00
+67
+e1
+48
+d3
+20
+60
+00
+00
+78
+54
+7c
+00
+58
+00
+00
+00
+67
+e3
+48
+d1
+20
+40
+05
+46
+20
+40
+05
+97
+20
+40
+03
+4d
+20
+40
+3f
+7e
+20
+40
+3f
+83
+20
+40
+05
+cc
+6f
+e0
+c8
+d0
+1f
+e1
+7e
+1f
+67
+e0
+c8
+d0
+24
+34
+47
+28
+20
+40
+05
+93
+20
+20
+45
+44
+6f
+e0
+c9
+27
+c1
+01
+80
+00
+c1
+06
+80
+00
+20
+20
+47
+1a
+6f
+e0
+c9
+27
+c1
+81
+80
+00
+6f
+e0
+c9
+92
+c1
+81
+00
+00
+6f
+e1
+48
+d1
+20
+40
+05
+a2
+67
+e1
+48
+d1
+6f
+e1
+48
+d3
+20
+40
+05
+a2
+67
+e1
+48
+d3
+20
+60
+00
+00
+c2
+85
+85
+a5
+c3
+05
+85
+a9
+20
+60
+00
+00
+1f
+e6
+7e
+00
+20
+40
+05
+a9
+1f
+e6
 7e
 00
 20
@@ -5579,7 +5827,7 @@
 24
 41
 05
-74
+b2
 6f
 e1
 4c
@@ -5611,7 +5859,7 @@
 c0
 05
 85
-7e
+bc
 20
 40
 42
@@ -5631,7 +5879,7 @@
 20
 40
 05
-85
+c3
 da
 60
 4b
@@ -5651,7 +5899,7 @@
 c0
 05
 85
-85
+c3
 20
 20
 42
@@ -5679,7 +5927,7 @@
 c0
 05
 85
-8c
+ca
 20
 20
 42
@@ -5695,7 +5943,7 @@
 20
 40
 05
-90
+ce
 20
 20
 40
@@ -5715,23 +5963,23 @@
 20
 40
 05
-99
+d7
 20
 40
 05
-9e
+dc
 20
 40
 05
-a3
+e1
 20
 40
 05
-a8
+e6
 20
 40
 05
-b5
+f3
 20
 20
 41
@@ -5742,8 +5990,8 @@
 18
 20
 40
-05
-c2
+06
+00
 20
 40
 41
@@ -5762,8 +6010,8 @@
 19
 20
 40
-05
-c2
+06
+00
 20
 40
 41
@@ -5782,8 +6030,8 @@
 1a
 20
 40
-05
-c2
+06
+00
 20
 40
 41
@@ -5827,7 +6075,7 @@
 c0
 7f
 85
-b1
+ef
 20
 20
 41
@@ -5838,8 +6086,8 @@
 0d
 20
 40
-05
-c5
+06
+03
 68
 48
 c9
@@ -5879,7 +6127,7 @@
 c0
 7f
 85
-be
+fc
 20
 20
 41
@@ -5890,8 +6138,8 @@
 0e
 20
 40
-05
-c5
+06
+03
 68
 48
 c9
@@ -5926,20 +6174,20 @@
 93
 20
 40
-05
-cd
+06
+0b
 20
 40
 79
 36
 20
 40
-05
-da
+06
+18
 20
 40
-05
-d1
+06
+0f
 20
 20
 46
@@ -5966,12 +6214,12 @@
 ab
 c2
 94
-85
-d5
+86
+13
 c2
 9b
-85
-d5
+86
+13
 20
 60
 00
@@ -5982,8 +6230,8 @@
 8c
 c2
 83
-05
-d8
+06
+16
 20
 20
 46
@@ -6026,8 +6274,8 @@
 0f
 20
 40
-05
-e3
+06
+21
 20
 20
 40
@@ -6054,8 +6302,8 @@
 10
 c0
 7f
-85
-ea
+86
+28
 20
 20
 40
@@ -6066,8 +6314,8 @@
 0f
 20
 40
-05
-c5
+06
+03
 68
 48
 c9
@@ -6099,11 +6347,11 @@
 c0
 06
 86
-01
+3f
 c0
 01
-85
-fc
+86
+3a
 6f
 e0
 c9
@@ -6150,8 +6398,8 @@
 60
 20
 20
-05
-f9
+06
+37
 6f
 e0
 c9
@@ -6170,8 +6418,8 @@
 60
 20
 20
-05
-f9
+06
+37
 6f
 e1
 47
@@ -6204,8 +6452,8 @@
 20
 26
 f6
-48
-16
+c3
+b7
 aa
 55
 40
@@ -7329,511 +7577,263 @@
 00
 ff
 ff
-aa
-55
-08
-00
-a3
-4a
-09
-5a
-0b
-f3
-09
-00
-ff
-ff
-aa
-55
-08
-00
-e3
-4b
-09
-a5
-0b
-f3
-09
-00
-ff
-ff
-aa
-55
-02
-00
-8d
-44
-2d
-49
-aa
-55
-01
-00
-8c
-44
-01
-aa
-55
-01
-00
-65
-48
-01
-aa
-55
-01
-00
-64
-48
-01
-aa
-55
-01
-00
-36
-48
-01
-aa
-55
-01
-00
-a8
-48
-06
-aa
-55
-02
-00
-38
-48
-c0
-12
-aa
-55
-03
-00
-54
-48
-19
-19
-1c
-aa
-55
-10
-00
-40
-48
-00
-13
-2c
-42
-06
-15
-36
-48
-0f
-1a
-3a
-4c
-11
-23
-31
-4d
-aa
-55
-01
-00
-5b
-48
-00
-aa
-55
-05
-00
-77
-48
-20
-15
-10
-05
-4e
-aa
-55
-05
-00
-8c
-48
-01
-0f
-0f
-0f
-0f
-aa
-55
-06
-00
-ad
-48
-0c
-f8
-00
-00
-77
-01
-aa
-55
-03
-00
-5c
-48
-00
-48
-60
-aa
-55
-01
-00
-7d
-48
-07
-aa
-55
-02
-00
-99
-48
-b5
-4a
-aa
-55
-01
-00
-ca
-48
-80
-aa
-55
-02
-00
-c2
-48
-14
-00
-aa
-55
-02
-00
-c0
-48
-50
-00
-aa
-55
-03
-00
-b8
-48
-00
-a6
-0e
-aa
-55
-03
-00
-b8
-49
-00
-50
-00
-aa
-55
-02
-00
-79
-44
-80
-1f
-aa
-55
-01
-00
-83
-44
-80
-aa
-55
-01
-00
-e8
-41
-01
-aa
-55
-05
-00
-f0
-4b
-02
-40
-00
-a5
-1d
-55
-aa
-aa
-55
-e0
-9f
-52
-99
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
+aa
+55
+08
+00
+a3
+4a
+09
+5a
+0b
+f3
+09
+00
 ff
 ff
+aa
+55
+08
+00
+e3
+4b
+09
+a5
+0b
+f3
+09
+00
 ff
 ff
+aa
+55
+02
+00
+8d
+44
+2d
+49
+aa
+55
+01
+00
+8c
+44
+01
+aa
+55
+01
+00
+65
+48
+01
+aa
+55
+01
+00
+64
+48
+01
+aa
+55
+01
+00
+36
+48
+01
+aa
+55
+01
+00
+a8
+48
+06
+aa
+55
+02
+00
+38
+48
+c0
+12
+aa
+55
+03
+00
+54
+48
+19
+19
+1c
+aa
+55
+10
+00
+40
+48
+00
+13
+2c
+42
+06
+15
+36
+48
+0f
+1a
+3a
+4c
+11
+23
+31
+4d
+aa
+55
+01
+00
+5b
+48
+00
+aa
+55
+05
+00
+77
+48
+20
+15
+10
+05
+4e
+aa
+55
+05
+00
+8c
+48
+01
+0f
+0f
+0f
+0f
+aa
+55
+06
+00
+ad
+48
+0c
+f8
+00
+00
+77
+01
+aa
+55
+03
+00
+5c
+48
+00
+48
+60
+aa
+55
+01
+00
+7d
+48
+07
+aa
+55
+02
+00
+99
+48
+b5
+4a
+aa
+55
+01
+00
+ca
+48
+80
+aa
+55
+02
+00
+c2
+48
+14
+00
+aa
+55
+02
+00
+c0
+48
+50
+00
+aa
+55
+03
+00
+b8
+48
+00
+a6
+0e
+aa
+55
+03
+00
+b8
+49
+00
+50
+00
+aa
+55
+02
+00
+79
+44
+80
+1f
+aa
+55
+01
+00
+83
+44
+80
+aa
+55
+01
+00
+e8
+41
+01
+aa
+55
+05
+00
+f0
+4b
+02
+40
+00
+9d
+1e
+55
+aa
+aa
+55
+d9
+9f
+38
+a2
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-b0
-91
+8b
+81
Index: output/program.lis
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/DPI_3mode_3ch_HYC-344/output/program.lis	(revision 4482)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/DPI_3mode_3ch_HYC-344/output/program.lis	(working copy)
@@ -18,17 +18,17 @@
 000f c064822f beq patch19_1 ,p_mouse_setgpio_hibernate 
 0010 c0650262 beq patch19_2 ,p_mouse_lpm_before_common 
 0011 c06600cb beq patch19_4 ,p_mouse_adc_read_start 
-0012 c0670546 beq patch19_6 ,p_mouse_motion 
-0013 c06785ee beq patch19_7 ,p_mouse_dpi_process 
+0012 c0670584 beq patch19_6 ,p_mouse_motion 
+0013 c067862c beq patch19_7 ,p_mouse_dpi_process 
 0014 c068034b beq patch1a_0 ,p_mouse_seting_dpi 
-0015 c0688590 beq patch1a_1 ,p_mouse_check_key_gpio 
+0015 c06885ce beq patch1a_1 ,p_mouse_check_key_gpio 
 0016 c0698383 beq patch1a_3 ,p_mouse_init_sunt 
-0017 c06a0577 beq patch1a_4 ,p_mouse_sensor_poweron 
+0017 c06a05b5 beq patch1a_4 ,p_mouse_sensor_poweron 
 0018 c06b0284 beq patch1a_6 ,p_mouse_priority_bb_event 
 0019 c06c83b3 beq patch1b_1 ,p_mouse_bb_event_timer 
 001a c06d04d0 beq patch1b_2 ,p_mouse_start_discovery 
 001b c06d84da beq patch1b_3 ,p_mouse_stop_discovery 
-001c c06f05c8 beq patch1b_6 ,p_mouse_idle 
+001c c06f0606 beq patch1b_6 ,p_mouse_idle 
 001d c06f8058 beq patch1b_7 ,p_mouse_ready_reconnection_by_button 
 001e c0708050 beq patch1c_1 ,p_mouse_led_off 
 001f c071004c beq patch1c_2 ,p_mouse_led_on 
@@ -50,7 +50,7 @@
 002d c074830a beq patch3d_1 ,p_g24_reconn_dispatch 
 002e c07501cc beq patch3d_2 ,p_g24_transmit_no_interrupt 
 002f c076053b beq patch3d_4 ,p_g24_lpm_wait 
-0030 c0768606 beq patch3d_5 ,p_power_ctrl_start 
+0030 c0768644 beq patch3d_5 ,p_power_ctrl_start 
 0031 2020137c branch loop 
 
 p_lpm_dispatch:
@@ -414,7 +414,7 @@
 013b 20403d8a call mouse_usb_check_enable 
 013c 20404728 call mouse_drawing_optima_init 
 013d 2040017e call p_mouse_cb_fuction 
-013e 20400587 call p_mouse_sensor_powerdown 
+013e 204005c5 call p_mouse_sensor_powerdown 
 013f 20203bc9 branch mouse_init + 8 
 
 p_mouse_le_name_load:
@@ -593,7 +593,7 @@
 01c8 67e0cba4 store 1 ,mem_mouse_search_dongle_action 
 01c9 6fe14bbc fetch 2 ,mem_mouse_24g_search_dongle_time_init 
 01ca 67e14ab2 store 2 ,mem_mouse_no_data_timer 
-01cb 20200587 branch p_mouse_sensor_powerdown 
+01cb 202005c5 branch p_mouse_sensor_powerdown 
 
 p_g24_transmit_no_interrupt:
 01cc 20402631 call g24_txdata_prep 
@@ -671,7 +671,7 @@
 p_mouse_dpi_check_once:
 0203 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
 0204 c4140000 rtnbit0 mouse_enable_select_device_by_dpi_button 
-0205 202005da branch p_mouse_dpi_check 
+0205 20200618 branch p_mouse_dpi_check 
 
 p_mouse_24g_led_timer_check:
 0206 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
@@ -726,8 +726,8 @@
 0229 58000006 setarg pan_reg_config 
 022a 20405b0d call twspi_read 
 022b c281be23 bbit1 3 ,mouse_app_enter_hibernate + 3 
-022c 20400582 call p_mouse_sensor_reset 
-022d 20400587 call p_mouse_sensor_powerdown 
+022c 204005c0 call p_mouse_sensor_reset 
+022d 204005c5 call p_mouse_sensor_powerdown 
 022e 20203e23 branch mouse_app_enter_hibernate + 3 
 
 p_mouse_setgpio_hibernate:
@@ -741,7 +741,7 @@
 0236 6848c910 fetcht 1 ,mem_matrix_public_gpio 
 0237 20406042 call gpio_clr_wake 
 0238 6fe0c920 fetch 1 ,mem_mouse_sensor_sdio_gpio 
-0239 204005c2 call p_mouse_gpio_config_output_high 
+0239 20400600 call p_mouse_gpio_config_output_high 
 023a d8400003 arg 3 ,temp 
 023b 20403f56 call mouse_gpio_config_input_pu 
 023c 20400262 call p_mouse_lpm_before_common 
@@ -806,7 +806,7 @@
 0265 20406050 call gpio_config_input 
 0266 20403f88 call mouse_wheel_check 
 0267 6fe0c91f fetch 1 ,mem_mouse_sensor_sclk_gpio 
-0268 204005c2 call p_mouse_gpio_config_output_high 
+0268 20400600 call p_mouse_gpio_config_output_high 
 0269 20203e44 branch mouse_lpm_before_common + 4 
 
 p_g24_nodata_transmit:
@@ -1004,7 +1004,7 @@
 02fd 58000000 setarg 0 
 02fe 67e3c8d0 store 7 ,mem_mouse_key 
 02ff 704be101 jam 1 ,mem_sensor_shutdown_flag 
-0300 20400587 call p_mouse_sensor_powerdown 
+0300 204005c5 call p_mouse_sensor_powerdown 
 0301 2020026f branch p_g24_long_sleep 
 
 p_g24_pair_dispatch:
@@ -1225,7 +1225,7 @@
 p_mouse_s203_init_param:
 0399 7049270d jam s203 ,mem_config_sensor_type 
 039a da604cad arg mem_sensor_s203_init ,regc 
-039b 2020057c branch p_mouse_sensor_end 
+039b 202005ba branch p_mouse_sensor_end 
 
 p_mouse_s201x_init_param:
 039c 7049270c jam s201x ,mem_config_sensor_type 
@@ -1649,7 +1649,7 @@
 
 p_mouse_commbination_key_start:
 04b4 6048cb9d storet 1 ,mem_mouse_commbination_key 
-04b5 20400590 call p_mouse_check_key_gpio 
+04b5 204005ce call p_mouse_check_key_gpio 
 04b6 1fe17e07 and pdata ,0x07 ,pdata 
 04b7 6848cb9d fetcht 1 ,mem_mouse_commbination_key 
 04b8 98467c00 isub temp ,null 
@@ -1845,285 +1845,371 @@
 0544 c000fe56 beq g24_tx_timer_int_enable ,disable_user 
 0545 20600000 rtn 
 
+p_mouse_check_sensor_data:
+0546 6fe0c4ac fetch 1 ,mem_spi_write_flash_sm 
+0547 c1800000 rtnne flash_sm_no_buys 
+0548 6fe0c927 fetch 1 ,mem_config_sensor_type 
+0549 c006854b beq s203 ,p_mouse_p32xx_sensor_motion_check 
+054a 20204242 branch mouse_check_sensor_data + 2 
+
+p_mouse_p32xx_sensor_motion_check:
+054b 204042c4 call mouse_clear_sensor_data 
+054c 6fe0c911 fetch 1 ,mem_sensor_motion_gpio 
+054d c07f8551 beq gpio_disable ,p_mouse_s203_sensor_motion_1 
+054e 6848c911 fetcht 1 ,mem_sensor_motion_gpio 
+054f 20406059 call gpio_get_bit 
+0550 24608000 nrtn true 
+
+p_mouse_s203_sensor_motion_1:
+0551 58000000 setarg pan_reg_pid_l 
+0552 20405b0d call twspi_read 
+0553 c09841b2 bne p32xx_id1 ,mouse_twspi_reset 
+
+p_mouse_s203_sensor_motion_2:
+0554 58000002 setarg pan_reg_motion_staus 
+0555 20405b0d call twspi_read 
+0556 c4038000 rtnbit0 7 
+0557 2040055c call p_mouse_read_data_x 
+0558 20400563 call p_mouse_data_x_extsign_check 
+0559 20400570 call p_mouse_read_data_y 
+055a 20400577 call p_mouse_data_y_extsign_check 
+055b 20204286 branch mouse_set_sensor_angle 
+
+p_mouse_read_data_x:
+055c dfe00003 arg pan_reg_delta_x ,pdata 
+055d 20405b0d call twspi_read 
+055e 67e0c8d1 store 1 ,mem_mouse_x 
+055f 58000020 setarg pan_reg_dalta_x_high 
+0560 20405b0d call twspi_read 
+0561 67e0c8d2 store 1 ,mem_mouse_x + 1 
+0562 20600000 rtn 
+
+p_mouse_data_x_extsign_check:
+0563 58000002 setarg pan_reg_motion_staus 
+0564 20405b0d call twspi_read 
+0565 c4018000 rtnbit0 3 
+0566 6fe148d1 fetch 2 ,mem_mouse_x 
+0567 c287856d bbit1 15 ,p_mouse_data_x_inverse_set 
+0568 c307856a bbit0 15 ,p_mouse_data_x_forward_overflow 
+0569 20600000 rtn 
+
+p_mouse_data_x_forward_overflow:
+056a 58007fff setarg 0x7fff 
+056b 67e148d1 store 2 ,mem_mouse_x 
+056c 20600000 rtn 
+
+p_mouse_data_x_inverse_set:
+056d 58008000 setarg 0x8000 
+056e 67e148d1 store 2 ,mem_mouse_x 
+056f 20600000 rtn 
+
+p_mouse_read_data_y:
+0570 dfe00004 arg pan_reg_delta_y ,pdata 
+0571 20405b0d call twspi_read 
+0572 67e0c8d3 store 1 ,mem_mouse_y 
+0573 58000021 setarg pan_reg_dalta_y_high 
+0574 20405b0d call twspi_read 
+0575 67e0c8d4 store 1 ,mem_mouse_y + 1 
+0576 20600000 rtn 
+
+p_mouse_data_y_extsign_check:
+0577 58000002 setarg pan_reg_motion_staus 
+0578 20405b0d call twspi_read 
+0579 c4020000 rtnbit0 4 
+057a 6fe148d3 fetch 2 ,mem_mouse_y 
+057b c2878581 bbit1 15 ,p_mouse_data_y_inverse_set 
+057c c307857e bbit0 15 ,p_mouse_data_y_forward_overflow 
+057d 20600000 rtn 
+
+p_mouse_data_y_forward_overflow:
+057e 58007fff setarg 0x7fff 
+057f 67e148d3 store 2 ,mem_mouse_y 
+0580 20600000 rtn 
+
+p_mouse_data_y_inverse_set:
+0581 58008000 setarg 0x8000 
+0582 67e148d3 store 2 ,mem_mouse_y 
+0583 20600000 rtn 
+
 p_mouse_motion:
-0546 78547c00 disable user 
-0547 58000000 setarg 0 
-0548 67e348d1 store 6 ,mem_mouse_x 
-0549 20404240 call mouse_check_sensor_data 
-054a 20400559 call p_mouse_data_zoom 
-054b 2040034d call p_mouse_seting_sensor_type 
-054c 20403f7e call mouse_zwheel 
-054d 20403f83 call mouse_t_zwheel 
-054e 2040058e call p_mouse_key 
-054f 6fe0c8d0 fetch 1 ,mem_mouse_key 
-0550 1fe17e1f and_into 0x1f ,pdata 
-0551 67e0c8d0 store 1 ,mem_mouse_key 
-0552 24344728 nbranch mouse_drawing_optima_init ,user 
-0553 20400555 call p_mouse_drawing_optima 
-0554 20204544 branch mouse_no_data_timer_init 
+0584 78547c00 disable user 
+0585 58000000 setarg 0 
+0586 67e348d1 store 6 ,mem_mouse_x 
+0587 20400546 call p_mouse_check_sensor_data 
+0588 20400597 call p_mouse_data_zoom 
+0589 2040034d call p_mouse_seting_sensor_type 
+058a 20403f7e call mouse_zwheel 
+058b 20403f83 call mouse_t_zwheel 
+058c 204005cc call p_mouse_key 
+058d 6fe0c8d0 fetch 1 ,mem_mouse_key 
+058e 1fe17e1f and_into 0x1f ,pdata 
+058f 67e0c8d0 store 1 ,mem_mouse_key 
+0590 24344728 nbranch mouse_drawing_optima_init ,user 
+0591 20400593 call p_mouse_drawing_optima 
+0592 20204544 branch mouse_no_data_timer_init 
 
 p_mouse_drawing_optima:
-0555 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0556 c1018000 rtneq p3212 
-0557 c1068000 rtneq s203 
-0558 2020471a branch mouse_drawing_optima 
+0593 6fe0c927 fetch 1 ,mem_config_sensor_type 
+0594 c1018000 rtneq p3212 
+0595 c1068000 rtneq s203 
+0596 2020471a branch mouse_drawing_optima 
 
 p_mouse_data_zoom:
-0559 6fe0c927 fetch 1 ,mem_config_sensor_type 
-055a c1818000 rtnne p3212 
-055b 6fe0c992 fetch 1 ,mem_mouse_dpi 
-055c c1810000 rtnne mouse_dpi_level3 
-055d 6fe148d1 fetch 2 ,mem_mouse_x 
-055e 20400564 call p_mouse_2400_zoom 
-055f 67e148d1 store 2 ,mem_mouse_x 
-0560 6fe148d3 fetch 2 ,mem_mouse_y 
-0561 20400564 call p_mouse_2400_zoom 
-0562 67e148d3 store 2 ,mem_mouse_y 
-0563 20600000 rtn 
+0597 6fe0c927 fetch 1 ,mem_config_sensor_type 
+0598 c1818000 rtnne p3212 
+0599 6fe0c992 fetch 1 ,mem_mouse_dpi 
+059a c1810000 rtnne mouse_dpi_level3 
+059b 6fe148d1 fetch 2 ,mem_mouse_x 
+059c 204005a2 call p_mouse_2400_zoom 
+059d 67e148d1 store 2 ,mem_mouse_x 
+059e 6fe148d3 fetch 2 ,mem_mouse_y 
+059f 204005a2 call p_mouse_2400_zoom 
+05a0 67e148d3 store 2 ,mem_mouse_y 
+05a1 20600000 rtn 
 
 p_mouse_2400_zoom:
-0564 c2858567 bbit1 11 ,p_mouse_xy_inverse 
-0565 c305856b bbit0 11 ,p_mouse_xy_zoom 
-0566 20600000 rtn 
+05a2 c28585a5 bbit1 11 ,p_mouse_xy_inverse 
+05a3 c30585a9 bbit0 11 ,p_mouse_xy_zoom 
+05a4 20600000 rtn 
 
 p_mouse_xy_inverse:
-0567 1fe67e00 sub pdata ,0 ,pdata 
-0568 2040056b call p_mouse_xy_zoom 
-0569 1fe67e00 sub pdata ,0 ,pdata 
-056a 20600000 rtn 
+05a5 1fe67e00 sub pdata ,0 ,pdata 
+05a6 204005a9 call p_mouse_xy_zoom 
+05a7 1fe67e00 sub pdata ,0 ,pdata 
+05a8 20600000 rtn 
 
 p_mouse_xy_zoom:
-056b 1fe3fe00 lshift pdata ,pdata 
-056c 793ffe0e set0 14 ,pdata 
-056d 793ffe0f set0 15 ,pdata 
-056e 67e14cb8 store 2 ,mem_mouse_temp_data 
-056f 6fe0ccb9 fetch 1 ,mem_mouse_temp_data + 1 
-0570 1fe67c07 sub pdata ,0x7 ,null 
-0571 24410574 ncall p_mouse_xy_forward_overflow ,positive 
-0572 6fe14cb8 fetch 2 ,mem_mouse_temp_data 
-0573 20600000 rtn 
+05a9 1fe3fe00 lshift pdata ,pdata 
+05aa 793ffe0e set0 14 ,pdata 
+05ab 793ffe0f set0 15 ,pdata 
+05ac 67e14cb8 store 2 ,mem_mouse_temp_data 
+05ad 6fe0ccb9 fetch 1 ,mem_mouse_temp_data + 1 
+05ae 1fe67c07 sub pdata ,0x7 ,null 
+05af 244105b2 ncall p_mouse_xy_forward_overflow ,positive 
+05b0 6fe14cb8 fetch 2 ,mem_mouse_temp_data 
+05b1 20600000 rtn 
 
 p_mouse_xy_forward_overflow:
-0574 580007ff setarg 0x7ff 
-0575 67e14cb8 store 2 ,mem_mouse_temp_data 
-0576 20600000 rtn 
+05b2 580007ff setarg 0x7ff 
+05b3 67e14cb8 store 2 ,mem_mouse_temp_data 
+05b4 20600000 rtn 
 
 p_mouse_sensor_poweron:
-0577 20403f65 call mouse_sensor_spi_init 
-0578 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0579 c005857e beq ka8g2 ,p_mouse_ka8g2_sensor_init 
-057a 20404232 call mouse_sensor_reset 
-057b da604aa3 arg mem_sensor_poweron_init ,regc 
+05b5 20403f65 call mouse_sensor_spi_init 
+05b6 6fe0c927 fetch 1 ,mem_config_sensor_type 
+05b7 c00585bc beq ka8g2 ,p_mouse_ka8g2_sensor_init 
+05b8 20404232 call mouse_sensor_reset 
+05b9 da604aa3 arg mem_sensor_poweron_init ,regc 
 
 p_mouse_sensor_end:
-057c 2040422b call mouse_sensor_wr_seq 
-057d 2020034d branch p_mouse_seting_sensor_type 
+05ba 2040422b call mouse_sensor_wr_seq 
+05bb 2020034d branch p_mouse_seting_sensor_type 
 
 p_mouse_ka8g2_sensor_init:
-057e 20400585 call p_mouse_ka8g2_sensor_reset 
-057f da604be3 arg mem_ka8g2_sensor_poweron_init ,regc 
-0580 2040422b call mouse_sensor_wr_seq 
-0581 2020034d branch p_mouse_seting_sensor_type 
+05bc 204005c3 call p_mouse_ka8g2_sensor_reset 
+05bd da604be3 arg mem_ka8g2_sensor_poweron_init ,regc 
+05be 2040422b call mouse_sensor_wr_seq 
+05bf 2020034d branch p_mouse_seting_sensor_type 
 
 p_mouse_sensor_reset:
-0582 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0583 c0058585 beq ka8g2 ,p_mouse_ka8g2_sensor_reset 
-0584 20204232 branch mouse_sensor_reset 
+05c0 6fe0c927 fetch 1 ,mem_config_sensor_type 
+05c1 c00585c3 beq ka8g2 ,p_mouse_ka8g2_sensor_reset 
+05c2 20204232 branch mouse_sensor_reset 
 
 p_mouse_ka8g2_sensor_reset:
-0585 58009706 setarg 0x9706 
-0586 20204233 branch mouse_sensor_reset_end 
+05c3 58009706 setarg 0x9706 
+05c4 20204233 branch mouse_sensor_reset_end 
 
 p_mouse_sensor_powerdown:
-0587 204041a7 call mouse_init_sunt 
-0588 20403f65 call mouse_sensor_spi_init 
-0589 6fe0c927 fetch 1 ,mem_config_sensor_type 
-058a c005858c beq ka8g2 ,p_mouse_ka8g2_sensor_powerdown 
-058b 2020423e branch mouse_sensor_powerdown_end 
+05c5 204041a7 call mouse_init_sunt 
+05c6 20403f65 call mouse_sensor_spi_init 
+05c7 6fe0c927 fetch 1 ,mem_config_sensor_type 
+05c8 c00585ca beq ka8g2 ,p_mouse_ka8g2_sensor_powerdown 
+05c9 2020423e branch mouse_sensor_powerdown_end 
 
 p_mouse_ka8g2_sensor_powerdown:
-058c 58001f06 setarg 0x1f06 
-058d 20205b0c branch twspi_write 
+05ca 58001f06 setarg 0x1f06 
+05cb 20205b0c branch twspi_write 
 
 p_mouse_key:
-058e 20400590 call p_mouse_check_key_gpio 
-058f 202040dd branch mouse_key + 1 
+05cc 204005ce call p_mouse_check_key_gpio 
+05cd 202040dd branch mouse_key + 1 
 
 p_mouse_check_key_gpio:
-0590 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
-0591 245a4121 ncall mouse_check_key_gpio_once ,blank 
-0592 da200000 arg 0 ,rega 
-0593 20400599 call p_mouse_check_lkey_gpio 
-0594 2040059e call p_mouse_check_rkey_gpio 
-0595 204005a3 call p_mouse_check_mkey_gpio 
-0596 204005a8 call p_mouse_check_bkkey_gpio 
-0597 204005b5 call p_mouse_check_fwkey_gpio 
-0598 2020411e branch mouse_check_key_gpio_next 
+05ce 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
+05cf 245a4121 ncall mouse_check_key_gpio_once ,blank 
+05d0 da200000 arg 0 ,rega 
+05d1 204005d7 call p_mouse_check_lkey_gpio 
+05d2 204005dc call p_mouse_check_rkey_gpio 
+05d3 204005e1 call p_mouse_check_mkey_gpio 
+05d4 204005e6 call p_mouse_check_bkkey_gpio 
+05d5 204005f3 call p_mouse_check_fwkey_gpio 
+05d6 2020411e branch mouse_check_key_gpio_next 
 
 p_mouse_check_lkey_gpio:
-0599 6fe0c918 fetch 1 ,mem_lbutton_gpio 
-059a 204005c2 call p_mouse_gpio_config_output_high 
-059b 20404124 call mouse_check_lkey_gpio 
-059c 6848c918 fetcht 1 ,mem_lbutton_gpio 
-059d 20203f56 branch mouse_gpio_config_input_pu 
+05d7 6fe0c918 fetch 1 ,mem_lbutton_gpio 
+05d8 20400600 call p_mouse_gpio_config_output_high 
+05d9 20404124 call mouse_check_lkey_gpio 
+05da 6848c918 fetcht 1 ,mem_lbutton_gpio 
+05db 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_check_rkey_gpio:
-059e 6fe0c919 fetch 1 ,mem_rbutton_gpio 
-059f 204005c2 call p_mouse_gpio_config_output_high 
-05a0 2040412a call mouse_check_rkey_gpio 
-05a1 6848c919 fetcht 1 ,mem_rbutton_gpio 
-05a2 20203f56 branch mouse_gpio_config_input_pu 
+05dc 6fe0c919 fetch 1 ,mem_rbutton_gpio 
+05dd 20400600 call p_mouse_gpio_config_output_high 
+05de 2040412a call mouse_check_rkey_gpio 
+05df 6848c919 fetcht 1 ,mem_rbutton_gpio 
+05e0 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_check_mkey_gpio:
-05a3 6fe0c91a fetch 1 ,mem_mbutton_gpio 
-05a4 204005c2 call p_mouse_gpio_config_output_high 
-05a5 20404130 call mouse_check_mkey_gpio 
-05a6 6848c91a fetcht 1 ,mem_mbutton_gpio 
-05a7 20203f56 branch mouse_gpio_config_input_pu 
+05e1 6fe0c91a fetch 1 ,mem_mbutton_gpio 
+05e2 20400600 call p_mouse_gpio_config_output_high 
+05e3 20404130 call mouse_check_mkey_gpio 
+05e4 6848c91a fetcht 1 ,mem_mbutton_gpio 
+05e5 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_check_bkkey_gpio:
-05a8 6fe0c90d fetch 1 ,mem_bk_button_gpio 
-05a9 c17f8000 rtneq gpio_disable 
-05aa 704b9603 jam mouse_bk_key ,mem_mouse_key_temp 
-05ab 6fe0cb91 fetch 1 ,mem_mouse_bkkey_press_status 
-05ac 1fe22600 copy pdata ,regc 
-05ad 6848c90d fetcht 1 ,mem_bk_button_gpio 
-05ae 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-05af c07f85b1 beq gpio_disable ,p_mouse_3io6key_bk_check 
-05b0 2020413e branch mouse_check_bkkey_gpio_next 
+05e6 6fe0c90d fetch 1 ,mem_bk_button_gpio 
+05e7 c17f8000 rtneq gpio_disable 
+05e8 704b9603 jam mouse_bk_key ,mem_mouse_key_temp 
+05e9 6fe0cb91 fetch 1 ,mem_mouse_bkkey_press_status 
+05ea 1fe22600 copy pdata ,regc 
+05eb 6848c90d fetcht 1 ,mem_bk_button_gpio 
+05ec 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+05ed c07f85ef beq gpio_disable ,p_mouse_3io6key_bk_check 
+05ee 2020413e branch mouse_check_bkkey_gpio_next 
 
 p_mouse_3io6key_bk_check:
-05b1 6fe0c90d fetch 1 ,mem_bk_button_gpio 
-05b2 204005c5 call p_mouse_gpio_config_output_low 
-05b3 6848c90d fetcht 1 ,mem_bk_button_gpio 
-05b4 2020414b branch mouse_3io6key_bk_check 
+05ef 6fe0c90d fetch 1 ,mem_bk_button_gpio 
+05f0 20400603 call p_mouse_gpio_config_output_low 
+05f1 6848c90d fetcht 1 ,mem_bk_button_gpio 
+05f2 2020414b branch mouse_3io6key_bk_check 
 
 p_mouse_check_fwkey_gpio:
-05b5 6fe0c90e fetch 1 ,mem_fw_button_gpio 
-05b6 c17f8000 rtneq gpio_disable 
-05b7 704b9604 jam mouse_fw_key ,mem_mouse_key_temp 
-05b8 6fe0cb92 fetch 1 ,mem_mouse_fwkey_press_status 
-05b9 1fe22600 copy pdata ,regc 
-05ba 6848c90e fetcht 1 ,mem_fw_button_gpio 
-05bb 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-05bc c07f85be beq gpio_disable ,p_mouse_3io6key_fw_check 
-05bd 20204157 branch mouse_check_fwkey_gpio_next 
+05f3 6fe0c90e fetch 1 ,mem_fw_button_gpio 
+05f4 c17f8000 rtneq gpio_disable 
+05f5 704b9604 jam mouse_fw_key ,mem_mouse_key_temp 
+05f6 6fe0cb92 fetch 1 ,mem_mouse_fwkey_press_status 
+05f7 1fe22600 copy pdata ,regc 
+05f8 6848c90e fetcht 1 ,mem_fw_button_gpio 
+05f9 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+05fa c07f85fc beq gpio_disable ,p_mouse_3io6key_fw_check 
+05fb 20204157 branch mouse_check_fwkey_gpio_next 
 
 p_mouse_3io6key_fw_check:
-05be 6fe0c90e fetch 1 ,mem_fw_button_gpio 
-05bf 204005c5 call p_mouse_gpio_config_output_low 
-05c0 6848c90e fetcht 1 ,mem_fw_button_gpio 
-05c1 20204164 branch mouse_3io6key_fw_check 
+05fc 6fe0c90e fetch 1 ,mem_fw_button_gpio 
+05fd 20400603 call p_mouse_gpio_config_output_low 
+05fe 6848c90e fetcht 1 ,mem_fw_button_gpio 
+05ff 20204164 branch mouse_3io6key_fw_check 
 
 p_mouse_gpio_config_output_high:
-05c2 c17f8000 rtneq gpio_disable 
-05c3 d840003f arg gpcfg_output_high ,temp 
-05c4 20206093 branch gpio_config_function_int 
+0600 c17f8000 rtneq gpio_disable 
+0601 d840003f arg gpcfg_output_high ,temp 
+0602 20206093 branch gpio_config_function_int 
 
 p_mouse_gpio_config_output_low:
-05c5 c17f8000 rtneq gpio_disable 
-05c6 d840003e arg gpcfg_output_low ,temp 
-05c7 20206093 branch gpio_config_function_int 
+0603 c17f8000 rtneq gpio_disable 
+0604 d840003e arg gpcfg_output_low ,temp 
+0605 20206093 branch gpio_config_function_int 
 
 p_mouse_idle:
-05c8 204005cd call p_mouse_low_voltage_led_no_enter_lpm 
-05c9 20407936 call ui_check_paring_button 
-05ca 204005da call p_mouse_dpi_check 
-05cb 204005d1 call p_mouse_select_device_check 
-05cc 20204650 branch mouse_idle + 5 
+0606 2040060b call p_mouse_low_voltage_led_no_enter_lpm 
+0607 20407936 call ui_check_paring_button 
+0608 20400618 call p_mouse_dpi_check 
+0609 2040060f call p_mouse_select_device_check 
+060a 20204650 branch mouse_idle + 5 
 
 p_mouse_low_voltage_led_no_enter_lpm:
-05cd 6fe0cc40 fetch 1 ,mem_mouse_led_new_interface_config 
-05ce c301c990 bbit0 mouse_enable_low_led ,mouse_low_voltage_led_no_enter_lpm 
+060b 6fe0cc40 fetch 1 ,mem_mouse_led_new_interface_config 
+060c c301c990 bbit0 mouse_enable_low_led ,mouse_low_voltage_led_no_enter_lpm 
 
 p_mouse_low_voltage_led_no_enter_lpm_next:
-05cf 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-05d0 20204992 branch mouse_low_voltage_led_no_enter_lpm + 2 
+060d 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+060e 20204992 branch mouse_low_voltage_led_no_enter_lpm + 2 
 
 p_mouse_select_device_check:
-05d1 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-05d2 c29485d5 bbit1 mouse_enable_select_device_by_pb_button ,p_mouse_select_device_by_pb_button_check_judge 
-05d3 c29b85d5 bbit1 mouse_enable_pb_button_long_press_disconvery ,p_mouse_select_device_by_pb_button_check_judge 
-05d4 20600000 rtn 
+060f 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0610 c2948613 bbit1 mouse_enable_select_device_by_pb_button ,p_mouse_select_device_by_pb_button_check_judge 
+0611 c29b8613 bbit1 mouse_enable_pb_button_long_press_disconvery ,p_mouse_select_device_by_pb_button_check_judge 
+0612 20600000 rtn 
 
 p_mouse_select_device_by_pb_button_check_judge:
-05d5 6fe1478c fetch 2 ,mem_ui_state_map 
-05d6 c28305d8 bbit1 ui_state_bt_discovery ,p_mouse_select_device_by_pb_button_check_once 
-05d7 2020465a branch mouse_select_device_by_pb_button 
+0613 6fe1478c fetch 2 ,mem_ui_state_map 
+0614 c2830616 bbit1 ui_state_bt_discovery ,p_mouse_select_device_by_pb_button_check_once 
+0615 2020465a branch mouse_select_device_by_pb_button 
 
 p_mouse_select_device_by_pb_button_check_once:
-05d8 704b9403 jam 0x03 ,mem_mouse_pbkey_press_status 
-05d9 2020020e branch p_mouse_select_device_by_pb_button 
+0616 704b9403 jam 0x03 ,mem_mouse_pbkey_press_status 
+0617 2020020e branch p_mouse_select_device_by_pb_button 
 
 p_mouse_dpi_check:
-05da 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-05db c2974036 bbit1 mouse_enable_dpi_key_connect_adc ,mouse_dpi_check_connect_adc 
-05dc 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
-05dd c17f8000 rtneq gpio_disable 
-05de da200000 arg 0 ,rega 
-05df 704b9605 jam mouse_dpi_key ,mem_mouse_key_temp 
-05e0 6848c90f fetcht 1 ,mem_dpi_button_gpio 
-05e1 204005e3 call p_mouse_dpi_key_check 
-05e2 2020402f branch mouse_dpi_check_next 
+0618 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0619 c2974036 bbit1 mouse_enable_dpi_key_connect_adc ,mouse_dpi_check_connect_adc 
+061a 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
+061b c17f8000 rtneq gpio_disable 
+061c da200000 arg 0 ,rega 
+061d 704b9605 jam mouse_dpi_key ,mem_mouse_key_temp 
+061e 6848c90f fetcht 1 ,mem_dpi_button_gpio 
+061f 20400621 call p_mouse_dpi_key_check 
+0620 2020402f branch mouse_dpi_check_next 
 
 p_mouse_dpi_key_check:
-05e3 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-05e4 c2964048 bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
-05e5 6fe0cb93 fetch 1 ,mem_mouse_dpikey_press_status 
-05e6 1fe22600 copy pdata ,regc 
-05e7 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-05e8 c07f85ea beq gpio_disable ,p_mouse_3io6key_dpi_check 
-05e9 2020403f branch mouse_dpi_key_check_next 
+0621 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0622 c2964048 bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
+0623 6fe0cb93 fetch 1 ,mem_mouse_dpikey_press_status 
+0624 1fe22600 copy pdata ,regc 
+0625 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+0626 c07f8628 beq gpio_disable ,p_mouse_3io6key_dpi_check 
+0627 2020403f branch mouse_dpi_key_check_next 
 
 p_mouse_3io6key_dpi_check:
-05ea 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
-05eb 204005c5 call p_mouse_gpio_config_output_low 
-05ec 6848c90f fetcht 1 ,mem_dpi_button_gpio 
-05ed 20204195 branch mouse_3io6key_check 
+0628 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
+0629 20400603 call p_mouse_gpio_config_output_low 
+062a 6848c90f fetcht 1 ,mem_dpi_button_gpio 
+062b 20204195 branch mouse_3io6key_check 
 
 p_mouse_dpi_process:
-05ee 6fe0cca6 fetch 1 ,mem_mouse_dpi_led_blink_enable 
-05ef 207a0000 rtn blank 
-05f0 20404072 call mouse_dpi_ghost_check 
-05f1 20740000 rtn user 
+062c 6fe0cca6 fetch 1 ,mem_mouse_dpi_led_blink_enable 
+062d 207a0000 rtn blank 
+062e 20404072 call mouse_dpi_ghost_check 
+062f 20740000 rtn user 
 
 p_mouse_dpi_process_next:
-05f2 6fe0c927 fetch 1 ,mem_config_sensor_type 
-05f3 c0068601 beq s203 ,p_mouse_dpi_process_s203 
-05f4 c00185fc beq p3212 ,p_mouse_dpi_set_4_level 
-05f5 6fe0c992 fetch 1 ,mem_mouse_dpi 
-05f6 6fe0c992 fetch 1 ,mem_mouse_dpi 
-05f7 1fe0fe01 increase 1 ,pdata 
-05f8 1fe17e03 and pdata ,0x03 ,pdata 
+0630 6fe0c927 fetch 1 ,mem_config_sensor_type 
+0631 c006863f beq s203 ,p_mouse_dpi_process_s203 
+0632 c001863a beq p3212 ,p_mouse_dpi_set_4_level 
+0633 6fe0c992 fetch 1 ,mem_mouse_dpi 
+0634 6fe0c992 fetch 1 ,mem_mouse_dpi 
+0635 1fe0fe01 increase 1 ,pdata 
+0636 1fe17e03 and pdata ,0x03 ,pdata 
 
 p_mouse_dpi_store:
-05f9 67e0c992 store 1 ,mem_mouse_dpi 
-05fa 2040034b call p_mouse_seting_dpi 
-05fb 20204643 branch mouse_store_eerpom_dpi 
+0637 67e0c992 store 1 ,mem_mouse_dpi 
+0638 2040034b call p_mouse_seting_dpi 
+0639 20204643 branch mouse_store_eerpom_dpi 
 
 p_mouse_dpi_set_4_level:
-05fc 6fe0c992 fetch 1 ,mem_mouse_dpi 
-05fd 1fe0fe01 increase 1 ,pdata 
-05fe 1fe67c04 sub pdata ,4 ,null 
-05ff 2042fe60 call set_pdata_0 ,zero 
-0600 202005f9 branch p_mouse_dpi_store 
+063a 6fe0c992 fetch 1 ,mem_mouse_dpi 
+063b 1fe0fe01 increase 1 ,pdata 
+063c 1fe67c04 sub pdata ,4 ,null 
+063d 2042fe60 call set_pdata_0 ,zero 
+063e 20200637 branch p_mouse_dpi_store 
 
 p_mouse_dpi_process_s203:
-0601 6fe0c992 fetch 1 ,mem_mouse_dpi 
-0602 1fe0fe01 increase 1 ,pdata 
-0603 1fe67c05 sub pdata ,5 ,null 
-0604 2042fe60 call set_pdata_0 ,zero 
-0605 202005f9 branch p_mouse_dpi_store 
+063f 6fe0c992 fetch 1 ,mem_mouse_dpi 
+0640 1fe0fe01 increase 1 ,pdata 
+0641 1fe67c05 sub pdata ,5 ,null 
+0642 2042fe60 call set_pdata_0 ,zero 
+0643 20200637 branch p_mouse_dpi_store 
 
 p_power_ctrl_start:
-0606 6fe1478c fetch 2 ,mem_ui_state_map 
-0607 c3858000 rtnbit1 ui_state_ble_adv 
-0608 c3838000 rtnbit1 ui_state_bt_reconnect 
-0609 c3830000 rtnbit1 ui_state_bt_discovery 
-060a 6a214899 fetchr rega ,2 ,mem_rssi_signal_buf_ptr 
-060b 204025cb call rssi_average 
-060c 6048c8c7 storet 1 ,mem_rssi_avg_received 
-060d 202026f6 branch power_ctrl_rssi_avg_compare 
+0644 6fe1478c fetch 2 ,mem_ui_state_map 
+0645 c3858000 rtnbit1 ui_state_ble_adv 
+0646 c3838000 rtnbit1 ui_state_bt_reconnect 
+0647 c3830000 rtnbit1 ui_state_bt_discovery 
+0648 6a214899 fetchr rega ,2 ,mem_rssi_signal_buf_ptr 
+0649 204025cb call rssi_average 
+064a 6048c8c7 storet 1 ,mem_rssi_avg_received 
+064b 202026f6 branch power_ctrl_rssi_avg_compare 
               org 0x3bc1
 
 mouse_init:
@@ -4386,6 +4472,8 @@
 4283 1fe17e0f and pdata ,0x0f ,pdata 
 4284 204042d7 call mouse_data_extsign_bit3 
 4285 67e0c8d4 store 1 ,mem_mouse_y + 1 
+
+mouse_set_sensor_angle:
 4286 6fe0c928 fetch 1 ,mem_config_sensor_angle 
 4287 c00042ad beq mouse_6clk_angle ,mouse_motion_6clk_direction_dispose 
 4288 c000c2b5 beq mouse_9clk_angle ,mouse_motion_9clk_direction_dispose 
Index: program/app_mouse.prog
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/DPI_3mode_3ch_HYC-344/program/app_mouse.prog	(revision 4422)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/DPI_3mode_3ch_HYC-344/program/app_mouse.prog	(working copy)
@@ -2356,6 +2356,7 @@
 	and pdata,0x0f,pdata
 	call mouse_data_extsign_bit3
 	store 1,mem_mouse_y+1
+mouse_set_sensor_angle:
 	fetch 1,mem_config_sensor_angle
 	beq MOUSE_6CLK_ANGLE,mouse_motion_6clk_direction_dispose
 	beq MOUSE_9CLK_ANGLE,mouse_motion_9clk_direction_dispose
Index: program/patch.prog
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/DPI_3mode_3ch_HYC-344/program/patch.prog	(revision 4482)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/DPI_3mode_3ch_HYC-344/program/patch.prog	(working copy)
@@ -2054,12 +2054,95 @@
 	beq G24_TX_TIMER_INT_ENABLE,disable_user
 	rtn
 
+p_mouse_check_sensor_data:
+	fetch 1,mem_spi_write_flash_sm
+	rtnne FLASH_SM_NO_BUYS
+	fetch 1,mem_config_sensor_type
+	beq S203,p_mouse_p32xx_sensor_motion_check
+	branch mouse_check_sensor_data+2
+
+p_mouse_p32xx_sensor_motion_check:
+	call mouse_clear_sensor_data
+	fetch 1,mem_sensor_motion_gpio
+	beq GPIO_DISABLE,p_mouse_S203_sensor_motion_1
+	fetcht 1,mem_sensor_motion_gpio
+	call gpio_get_bit
+	nrtn true
+p_mouse_S203_sensor_motion_1:	
+	setarg PAN_REG_PID_L
+	call twspi_read
+	bne P32XX_ID1,mouse_twspi_reset
+p_mouse_S203_sensor_motion_2:
+	setarg PAN_REG_MOTION_STAUS
+	call twspi_read
+	rtnbit0 7
+	call p_mouse_read_data_x
+	call p_mouse_data_x_extsign_check
+	call p_mouse_read_data_y
+	call p_mouse_data_y_extsign_check
+	branch mouse_set_sensor_angle
+
+p_mouse_read_data_x:
+	arg PAN_REG_DELTA_X,pdata
+	call twspi_read
+	store 1,mem_mouse_x
+	setarg PAN_REG_DALTA_X_HIGH
+	call twspi_read
+	store 1,mem_mouse_x+1
+	rtn
+	
+p_mouse_data_x_extsign_check:
+	setarg PAN_REG_MOTION_STAUS
+	call twspi_read
+	rtnbit0 3
+	fetch 2,mem_mouse_x
+	bbit1 15,p_mouse_data_x_inverse_set
+	bbit0 15,p_mouse_data_x_forward_overflow
+	rtn
+
+p_mouse_data_x_forward_overflow:	
+	setarg 0x7fff
+	store 2,mem_mouse_x
+	rtn
+
+p_mouse_data_x_inverse_set:
+	setarg 0x8000
+	store 2,mem_mouse_x
+	rtn
+
+p_mouse_read_data_y:
+	arg PAN_REG_DELTA_Y,pdata
+	call twspi_read
+	store 1,mem_mouse_y
+	setarg PAN_REG_DALTA_Y_HIGH
+	call twspi_read
+	store 1,mem_mouse_y+1
+	rtn
 	
+p_mouse_data_y_extsign_check:
+	setarg PAN_REG_MOTION_STAUS
+	call twspi_read
+	rtnbit0 4
+	fetch 2,mem_mouse_y
+	bbit1 15,p_mouse_data_y_inverse_set
+	bbit0 15,p_mouse_data_y_forward_overflow
+	rtn
+
+p_mouse_data_y_forward_overflow:	
+	setarg 0x7fff
+	store 2,mem_mouse_y
+	rtn
+
+p_mouse_data_y_inverse_set:
+	setarg 0x8000
+	store 2,mem_mouse_y
+	rtn
+
 p_mouse_motion:
 	disable user
 	setarg 0
 	store 6,mem_mouse_x
-	call mouse_check_sensor_data
+	call p_mouse_check_sensor_data
 	call p_mouse_data_zoom
 	call p_mouse_seting_sensor_type
 	call mouse_zwheel
