Index: output/flash.dat
===================================================================
--- /branch/mouse_project/YJX_Project/YJX_1059/YJX_QZ080R_BT&BLE/output/flash.dat	(revision 5633)
+++ /branch/mouse_project/YJX_Project/YJX_1059/YJX_QZ080R_BT&BLE/output/flash.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-aa
+b2
 1f
 20
 20
@@ -7717,6 +7717,14 @@
 7e
 d4
 68
+00
+c6
+e0
+c1
+02
+00
+00
+68
 02
 46
 9b
@@ -7727,7 +7735,7 @@
 20
 40
 07
-d9
+db
 58
 00
 00
@@ -7735,7 +7743,7 @@
 20
 40
 07
-cc
+ce
 58
 00
 00
@@ -7743,7 +7751,7 @@
 20
 40
 07
-d2
+d4
 68
 00
 cb
@@ -7751,7 +7759,7 @@
 c0
 00
 87
-92
+94
 20
 20
 07
@@ -7775,7 +7783,7 @@
 20
 40
 07
-a5
+a7
 68
 01
 11
@@ -7811,7 +7819,7 @@
 20
 40
 07
-a5
+a7
 68
 01
 11
@@ -7855,7 +7863,7 @@
 20
 20
 87
-b2
+b4
 68
 00
 91
@@ -7863,7 +7871,7 @@
 c0
 7f
 87
-b9
+bb
 68
 00
 91
@@ -7891,7 +7899,7 @@
 c0
 00
 07
-b6
+b8
 68
 01
 91
@@ -7899,7 +7907,7 @@
 20
 20
 07
-ae
+b0
 70
 11
 c4
@@ -7911,7 +7919,7 @@
 20
 20
 07
-ae
+b0
 68
 00
 91
@@ -7919,7 +7927,7 @@
 20
 40
 07
-c4
+c6
 60
 00
 91
@@ -7931,7 +7939,7 @@
 20
 3a
 07
-c2
+c4
 58
 00
 00
@@ -7955,7 +7963,7 @@
 20
 20
 07
-bf
+c1
 1f
 e6
 7e
@@ -7995,7 +8003,7 @@
 24
 21
 07
-d7
+d9
 9a
 46
 7c
@@ -8003,7 +8011,7 @@
 24
 21
 07
-d7
+d9
 70
 4b
 0b
@@ -8031,7 +8039,7 @@
 20
 20
 07
-d0
+d2
 70
 4b
 0b
@@ -8051,7 +8059,7 @@
 20
 40
 07
-e2
+e4
 1f
 e2
 22
@@ -8067,7 +8075,7 @@
 20
 40
 07
-e2
+e4
 1f
 e2
 24
@@ -8083,7 +8091,7 @@
 c0
 7f
 87
-e7
+e9
 68
 00
 91
@@ -8107,9 +8115,9 @@
 20
 20
 07
-e5
-b9
-58
+e7
+50
+cf
 aa
 55
 08
@@ -8812,7 +8820,7 @@
 15
 20
 2a
-40
+3f
 aa
 55
 1a
@@ -9252,14 +9260,14 @@
 00
 70
 4b
-35
+3d
 30
 00
 55
 aa
 aa
 55
-c0
+bf
 28
 ff
 20
@@ -12338,5 +12346,5 @@
 55
 00
 00
-b5
-6c
+2b
+1e
Index: output/program.lis
===================================================================
--- /branch/mouse_project/YJX_Project/YJX_1059/YJX_QZ080R_BT&BLE/output/program.lis	(revision 5633)
+++ /branch/mouse_project/YJX_Project/YJX_1059/YJX_QZ080R_BT&BLE/output/program.lis	(working copy)
@@ -2660,138 +2660,140 @@
 0787 20207ed4 branch clear_mem 
 
 p_drawing_optima:
-0788 6802469b fetch 4 ,mem_mouse_x 
-0789 207a0000 rtn blank 
-078a 204007d9 call p_data_abs_check 
-078b 58000006 setarg 0x06 
-078c 204007cc call p_data_greater_than_check 
-078d 58000003 setarg 0x03 
-078e 204007d2 call p_data_less_than_check 
-078f 6800cb0b fetch 1 ,mem_mouse_asm_flag 
-0790 c0008792 beq 1 ,p_drawing_optima_modify 
-0791 20200785 branch p_drawing_optima_init 
+0788 6800c6e0 fetch 1 ,mem_config_sensor_type 
+0789 c1020000 rtneq p3212 
+078a 6802469b fetch 4 ,mem_mouse_x 
+078b 207a0000 rtn blank 
+078c 204007db call p_data_abs_check 
+078d 58000006 setarg 0x06 
+078e 204007ce call p_data_greater_than_check 
+078f 58000003 setarg 0x03 
+0790 204007d4 call p_data_less_than_check 
+0791 6800cb0b fetch 1 ,mem_mouse_asm_flag 
+0792 c0008794 beq 1 ,p_drawing_optima_modify 
+0793 20200785 branch p_drawing_optima_init 
 
 p_drawing_optima_modify:
-0792 68014b0c fetch 2 ,mem_mouse_x_pre 
-0793 600111be store 2 ,mem_data_pre 
-0794 6801469b fetch 2 ,mem_mouse_x 
-0795 600111c0 store 2 ,mem_data_current 
-0796 204007a5 call p_drawing_optima_data 
-0797 680111be fetch 2 ,mem_data_pre 
-0798 60014b0c store 2 ,mem_mouse_x_pre 
-0799 680111c0 fetch 2 ,mem_data_current 
-079a 6001469b store 2 ,mem_mouse_x 
-079b 68014b0e fetch 2 ,mem_mouse_y_pre 
-079c 600111be store 2 ,mem_data_pre 
-079d 6801469d fetch 2 ,mem_mouse_y 
-079e 600111c0 store 2 ,mem_data_current 
-079f 204007a5 call p_drawing_optima_data 
-07a0 680111be fetch 2 ,mem_data_pre 
-07a1 60014b0e store 2 ,mem_mouse_y_pre 
-07a2 680111c0 fetch 2 ,mem_data_current 
-07a3 6001469d store 2 ,mem_mouse_y 
-07a4 20600000 rtn 
+0794 68014b0c fetch 2 ,mem_mouse_x_pre 
+0795 600111be store 2 ,mem_data_pre 
+0796 6801469b fetch 2 ,mem_mouse_x 
+0797 600111c0 store 2 ,mem_data_current 
+0798 204007a7 call p_drawing_optima_data 
+0799 680111be fetch 2 ,mem_data_pre 
+079a 60014b0c store 2 ,mem_mouse_x_pre 
+079b 680111c0 fetch 2 ,mem_data_current 
+079c 6001469b store 2 ,mem_mouse_x 
+079d 68014b0e fetch 2 ,mem_mouse_y_pre 
+079e 600111be store 2 ,mem_data_pre 
+079f 6801469d fetch 2 ,mem_mouse_y 
+07a0 600111c0 store 2 ,mem_data_current 
+07a1 204007a7 call p_drawing_optima_data 
+07a2 680111be fetch 2 ,mem_data_pre 
+07a3 60014b0e store 2 ,mem_mouse_y_pre 
+07a4 680111c0 fetch 2 ,mem_data_current 
+07a5 6001469d store 2 ,mem_mouse_y 
+07a6 20600000 rtn 
 
 p_drawing_optima_data:
-07a5 680111be fetch 2 ,mem_data_pre 
-07a6 680911c0 fetcht 2 ,mem_data_current 
-07a7 9840fe00 iadd temp ,pdata 
-07a8 600191c2 store 3 ,mem_data_sum 
-07a9 2feffe10 isolate1 16 ,pdata 
-07aa 202087b2 branch p_data_sum_overflow ,true 
-07ab 680091c3 fetch 1 ,mem_data_sum + 1 
-07ac c07f87b9 beq 0xff ,p_data_sum_n 
-07ad 680091c2 fetch 1 ,mem_data_sum 
+07a7 680111be fetch 2 ,mem_data_pre 
+07a8 680911c0 fetcht 2 ,mem_data_current 
+07a9 9840fe00 iadd temp ,pdata 
+07aa 600191c2 store 3 ,mem_data_sum 
+07ab 2feffe10 isolate1 16 ,pdata 
+07ac 202087b4 branch p_data_sum_overflow ,true 
+07ad 680091c3 fetch 1 ,mem_data_sum + 1 
+07ae c07f87bb beq 0xff ,p_data_sum_n 
+07af 680091c2 fetch 1 ,mem_data_sum 
 
 p_data_store_pre:
-07ae 1fe37e00 rshift pdata ,pdata 
-07af 600111be store 2 ,mem_data_pre 
-07b0 600111c0 store 2 ,mem_data_current 
-07b1 20600000 rtn 
+07b0 1fe37e00 rshift pdata ,pdata 
+07b1 600111be store 2 ,mem_data_pre 
+07b2 600111c0 store 2 ,mem_data_current 
+07b3 20600000 rtn 
 
 p_data_sum_overflow:
-07b2 680091c3 fetch 1 ,mem_data_sum + 1 
-07b3 c00007b6 beq 0 ,p_data_sum_overflow_p 
-07b4 680191c2 fetch 3 ,mem_data_sum 
-07b5 202007ae branch p_data_store_pre 
+07b4 680091c3 fetch 1 ,mem_data_sum + 1 
+07b5 c00007b8 beq 0 ,p_data_sum_overflow_p 
+07b6 680191c2 fetch 3 ,mem_data_sum 
+07b7 202007b0 branch p_data_store_pre 
 
 p_data_sum_overflow_p:
-07b6 7011c400 jam 0 ,mem_data_sum + 2 
-07b7 680091c2 fetch 1 ,mem_data_sum 
-07b8 202007ae branch p_data_store_pre 
+07b8 7011c400 jam 0 ,mem_data_sum + 2 
+07b9 680091c2 fetch 1 ,mem_data_sum 
+07ba 202007b0 branch p_data_store_pre 
 
 p_data_sum_n:
-07b9 680091c2 fetch 1 ,mem_data_sum 
-07ba 204007c4 call p_pdata_get_half 
-07bb 600091be store 1 ,mem_data_pre 
-07bc 600091c0 store 1 ,mem_data_current 
-07bd 203a07c2 branch p_data_zero ,blank 
-07be 580000ff setarg 0xff 
+07bb 680091c2 fetch 1 ,mem_data_sum 
+07bc 204007c6 call p_pdata_get_half 
+07bd 600091be store 1 ,mem_data_pre 
+07be 600091c0 store 1 ,mem_data_current 
+07bf 203a07c4 branch p_data_zero ,blank 
+07c0 580000ff setarg 0xff 
 
 p_data_set_direction:
-07bf 600091bf store 1 ,mem_data_pre + 1 
-07c0 600091c1 store 1 ,mem_data_current + 1 
-07c1 20600000 rtn 
+07c1 600091bf store 1 ,mem_data_pre + 1 
+07c2 600091c1 store 1 ,mem_data_current + 1 
+07c3 20600000 rtn 
 
 p_data_zero:
-07c2 58000000 setarg 0 
-07c3 202007bf branch p_data_set_direction 
+07c4 58000000 setarg 0 
+07c5 202007c1 branch p_data_set_direction 
 
 p_pdata_get_half:
-07c4 1fe67e00 sub pdata ,0 ,pdata 
-07c5 60008aae store 1 ,mem_rega 
-07c6 68008aae fetch 1 ,mem_rega 
-07c7 1fe37e00 rshift pdata ,pdata 
-07c8 60008aae store 1 ,mem_rega 
-07c9 68008aae fetch 1 ,mem_rega 
-07ca 1fe67e00 sub pdata ,0 ,pdata 
-07cb 20600000 rtn 
+07c6 1fe67e00 sub pdata ,0 ,pdata 
+07c7 60008aae store 1 ,mem_rega 
+07c8 68008aae fetch 1 ,mem_rega 
+07c9 1fe37e00 rshift pdata ,pdata 
+07ca 60008aae store 1 ,mem_rega 
+07cb 68008aae fetch 1 ,mem_rega 
+07cc 1fe67e00 sub pdata ,0 ,pdata 
+07cd 20600000 rtn 
 
 p_data_greater_than_check:
-07cc 9a267c00 isub rega ,null 
-07cd 242107d7 nbranch p_enable_asm ,positive 
-07ce 9a467c00 isub regb ,null 
-07cf 242107d7 nbranch p_enable_asm ,positive 
+07ce 9a267c00 isub rega ,null 
+07cf 242107d9 nbranch p_enable_asm ,positive 
+07d0 9a467c00 isub regb ,null 
+07d1 242107d9 nbranch p_enable_asm ,positive 
 
 p_disable_asm:
-07d0 704b0b00 jam 0 ,mem_mouse_asm_flag 
-07d1 20600000 rtn 
+07d2 704b0b00 jam 0 ,mem_mouse_asm_flag 
+07d3 20600000 rtn 
 
 p_data_less_than_check:
-07d2 9a267c00 isub rega ,null 
-07d3 24610000 nrtn positive 
-07d4 9a467c00 isub regb ,null 
+07d4 9a267c00 isub rega ,null 
 07d5 24610000 nrtn positive 
-07d6 202007d0 branch p_disable_asm 
+07d6 9a467c00 isub regb ,null 
+07d7 24610000 nrtn positive 
+07d8 202007d2 branch p_disable_asm 
 
 p_enable_asm:
-07d7 704b0b01 jam 1 ,mem_mouse_asm_flag 
-07d8 20600000 rtn 
+07d9 704b0b01 jam 1 ,mem_mouse_asm_flag 
+07da 20600000 rtn 
 
 p_data_abs_check:
-07d9 6801469b fetch 2 ,mem_mouse_x 
-07da 600111c0 store 2 ,mem_data_current 
-07db 204007e2 call p_data_abs 
-07dc 1fe22200 copy pdata ,rega 
-07dd 6801469d fetch 2 ,mem_mouse_y 
-07de 600111c0 store 2 ,mem_data_current 
-07df 204007e2 call p_data_abs 
-07e0 1fe22400 copy pdata ,regb 
-07e1 20600000 rtn 
+07db 6801469b fetch 2 ,mem_mouse_x 
+07dc 600111c0 store 2 ,mem_data_current 
+07dd 204007e4 call p_data_abs 
+07de 1fe22200 copy pdata ,rega 
+07df 6801469d fetch 2 ,mem_mouse_y 
+07e0 600111c0 store 2 ,mem_data_current 
+07e1 204007e4 call p_data_abs 
+07e2 1fe22400 copy pdata ,regb 
+07e3 20600000 rtn 
 
 p_data_abs:
-07e2 680091c1 fetch 1 ,mem_data_current + 1 
-07e3 c07f87e7 beq 0xff ,p_data_reversal 
-07e4 680091c0 fetch 1 ,mem_data_current 
+07e4 680091c1 fetch 1 ,mem_data_current + 1 
+07e5 c07f87e9 beq 0xff ,p_data_reversal 
+07e6 680091c0 fetch 1 ,mem_data_current 
 
 p_data_abs_store:
-07e5 1fe17eff and_into 0xff ,pdata 
-07e6 20600000 rtn 
+07e7 1fe17eff and_into 0xff ,pdata 
+07e8 20600000 rtn 
 
 p_data_reversal:
-07e7 680111c0 fetch 2 ,mem_data_current 
-07e8 1fe67e00 sub pdata ,0 ,pdata 
-07e9 202007e5 branch p_data_abs_store 
+07e9 680111c0 fetch 2 ,mem_data_current 
+07ea 1fe67e00 sub pdata ,0 ,pdata 
+07eb 202007e7 branch p_data_abs_store 
               org 0x2000
 
 start:
Index: program/patch.prog
===================================================================
--- /branch/mouse_project/YJX_Project/YJX_1059/YJX_QZ080R_BT&BLE/program/patch.prog	(revision 5633)
+++ /branch/mouse_project/YJX_Project/YJX_1059/YJX_QZ080R_BT&BLE/program/patch.prog	(working copy)
@@ -3669,6 +3669,8 @@
 	branch clear_mem
 
 p_drawing_optima:
+	fetch 1,mem_config_sensor_type
+	rtneq P3212
 	fetch 4,mem_mouse_x
 	rtn blank
 	call p_data_abs_check
Index: sched/mouse.dat
===================================================================
--- /branch/mouse_project/YJX_Project/YJX_1059/YJX_QZ080R_BT&BLE/sched/mouse.dat	(revision 5633)
+++ /branch/mouse_project/YJX_Project/YJX_1059/YJX_QZ080R_BT&BLE/sched/mouse.dat	(working copy)
@@ -210,7 +210,7 @@
 15##mem_3212_dpi_1	800
 20##mem_3212_dpi_2	1200
 2a##mem_3212_dpi_3	1600
-40##mem_3212_dpi_4	2400
+3f##mem_3212_dpi_4	2400
 
 #04##mem_3610_dpi_1
 #05##mem_3610_dpi_2
