Index: output/eeprom.dat
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/PB_3mode_3ch_1IO2LED_FY158_dpi_long_desktop/output/eeprom.dat	(revision 5075)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/PB_3mode_3ch_1IO2LED_FY158_dpi_long_desktop/output/eeprom.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-ce
+c2
 15
 c2
 84
@@ -67,7 +67,7 @@
 c0
 67
 85
-3e
+3b
 c0
 68
 02
@@ -75,7 +75,7 @@
 c0
 68
 84
-78
+76
 c0
 69
 84
@@ -83,7 +83,7 @@
 c0
 6a
 04
-48
+46
 c0
 6b
 01
@@ -107,7 +107,7 @@
 c0
 6f
 04
-b8
+b6
 c0
 6f
 80
@@ -807,7 +807,7 @@
 20
 40
 04
-5a
+58
 20
 20
 3b
@@ -1243,7 +1243,7 @@
 20
 20
 04
-5a
+58
 20
 40
 26
@@ -1559,11 +1559,11 @@
 20
 40
 04
-53
+51
 20
 40
 04
-5a
+58
 20
 20
 3e
@@ -1855,7 +1855,7 @@
 20
 40
 04
-5a
+58
 20
 20
 01
@@ -3114,8 +3114,8 @@
 70
 da
 40
-03
-0b
+40
+69
 20
 20
 31
@@ -4332,18 +4332,10 @@
 40
 3f
 83
-6f
-e0
-cb
-8b
-24
-5a
-7e
-54
 20
 40
 04
-62
+60
 6f
 e0
 c8
@@ -4371,7 +4363,7 @@
 20
 40
 04
-45
+43
 20
 20
 45
@@ -4399,7 +4391,7 @@
 c0
 05
 84
-4f
+4d
 20
 40
 42
@@ -4419,7 +4411,7 @@
 20
 40
 04
-56
+54
 da
 60
 4b
@@ -4439,7 +4431,7 @@
 c0
 05
 84
-56
+54
 20
 20
 42
@@ -4475,7 +4467,7 @@
 c0
 05
 84
-60
+5e
 58
 00
 08
@@ -4495,11 +4487,11 @@
 20
 40
 04
-78
+76
 20
 40
 04
-65
+63
 20
 20
 40
@@ -4527,7 +4519,7 @@
 20
 40
 04
-75
+73
 20
 40
 41
@@ -4595,23 +4587,23 @@
 20
 40
 04
-8b
+89
 20
 40
 04
-90
+8e
 20
 40
 04
-95
+93
 20
 40
 04
-9a
+98
 20
 40
 04
-a7
+a5
 70
 4b
 8b
@@ -4621,17 +4613,17 @@
 c9
 de
 24
-5a
+3a
 04
-86
+84
 6f
 e0
-cc
-6d
+cb
+8c
 24
-5a
+3a
 04
-89
+87
 20
 20
 41
@@ -4645,17 +4637,17 @@
 de
 00
 20
-60
-00
-00
-70
-4c
-6d
-00
 20
+41
+1f
 20
+40
 41
 7d
+20
+20
+41
+1f
 6f
 e0
 c9
@@ -4663,7 +4655,7 @@
 20
 40
 04
-b4
+b2
 20
 40
 41
@@ -4683,7 +4675,7 @@
 20
 40
 04
-b4
+b2
 20
 40
 41
@@ -4703,7 +4695,7 @@
 20
 40
 04
-b4
+b2
 20
 40
 41
@@ -4747,7 +4739,7 @@
 c0
 7f
 84
-a3
+a1
 20
 20
 41
@@ -4759,7 +4751,7 @@
 20
 40
 04
-b6
+b4
 68
 48
 c9
@@ -4799,7 +4791,7 @@
 c0
 7f
 84
-b0
+ae
 20
 20
 41
@@ -4811,7 +4803,7 @@
 20
 40
 04
-b6
+b4
 68
 48
 c9
@@ -4847,11 +4839,11 @@
 20
 40
 04
-bd
+bb
 20
 40
 04
-c4
+c2
 20
 20
 46
@@ -4871,7 +4863,7 @@
 20
 40
 04
-d1
+cf
 d8
 e0
 00
@@ -4891,11 +4883,11 @@
 c2
 94
 84
-c8
+c6
 c2
 9b
 84
-c8
+c6
 20
 60
 00
@@ -4907,7 +4899,7 @@
 c2
 83
 04
-cf
+cd
 6f
 e0
 c9
@@ -4947,7 +4939,7 @@
 20
 40
 05
-51
+4e
 20
 74
 00
@@ -4967,7 +4959,7 @@
 20
 40
 04
-f1
+ee
 67
 e0
 cb
@@ -4995,7 +4987,7 @@
 20
 20
 04
-e0
+de
 6f
 e0
 c9
@@ -5019,7 +5011,7 @@
 c2
 9b
 04
-e7
+e5
 20
 60
 00
@@ -5034,20 +5026,16 @@
 64
 6f
 e0
-cb
-9b
+cc
+70
 24
-5a
-40
-69
+3a
+03
+0b
 70
 49
 de
 00
-70
-4c
-6d
-01
 6f
 e0
 c7
@@ -5061,9 +5049,9 @@
 cb
 9b
 20
-20
-41
-7d
+60
+00
+00
 6f
 e4
 4b
@@ -5087,7 +5075,7 @@
 c0
 7f
 84
-f8
+f5
 20
 20
 40
@@ -5099,7 +5087,7 @@
 20
 40
 04
-b6
+b4
 68
 48
 c9
@@ -5123,7 +5111,7 @@
 24
 3a
 05
-05
+02
 6f
 e0
 cc
@@ -5131,11 +5119,11 @@
 20
 40
 04
-b4
+b2
 20
 40
 05
-16
+13
 68
 48
 cc
@@ -5163,7 +5151,7 @@
 20
 40
 04
-b6
+b4
 70
 4c
 3f
@@ -5179,11 +5167,11 @@
 20
 40
 05
-2f
+2c
 20
 40
 05
-1a
+17
 68
 48
 cc
@@ -5227,7 +5215,7 @@
 20
 40
 05
-25
+22
 67
 e0
 cc
@@ -5239,7 +5227,7 @@
 20
 3a
 05
-21
+1e
 6f
 e0
 cc
@@ -5303,11 +5291,11 @@
 c0
 03
 85
-3a
+37
 c0
 00
 05
-3c
+39
 20
 60
 00
@@ -5347,11 +5335,11 @@
 c0
 03
 85
-3a
+37
 c0
 00
 05
-3c
+39
 20
 60
 00
@@ -5387,7 +5375,7 @@
 c2
 9e
 85
-48
+45
 18
 42
 7e
@@ -5419,7 +5407,7 @@
 24
 3a
 05
-6c
+69
 6f
 e4
 4b
@@ -5427,7 +5415,7 @@
 c2
 8e
 05
-60
+5d
 18
 42
 7e
@@ -5439,11 +5427,11 @@
 c0
 00
 05
-5c
+59
 c0
 01
 05
-5a
+57
 20
 60
 00
@@ -5483,7 +5471,7 @@
 20
 20
 05
-45
+42
 58
 00
 00
@@ -5491,7 +5479,7 @@
 20
 20
 05
-45
+42
 58
 00
 00
@@ -5499,7 +5487,7 @@
 20
 20
 05
-45
+42
 58
 00
 00
@@ -5507,7 +5495,7 @@
 20
 20
 05
-45
+42
 18
 42
 7e
@@ -5519,15 +5507,15 @@
 c0
 00
 05
-5c
+59
 c0
 01
 05
-5e
+5b
 c0
 01
 85
-5a
+57
 20
 60
 00
@@ -5543,15 +5531,15 @@
 c0
 00
 05
-5e
+5b
 c0
 00
 85
-5a
+57
 c0
 01
 85
-58
+55
 20
 60
 00
@@ -5563,7 +5551,7 @@
 c2
 8e
 05
-66
+63
 18
 42
 7e
@@ -5575,17 +5563,17 @@
 c0
 00
 05
-58
+55
 c0
 00
 85
-5a
+57
 20
 60
 00
 00
-18
-24
+d7
+62
 aa
 55
 40
@@ -6930,16 +6918,16 @@
 02
 40
 00
-1f
+13
 1b
 55
 aa
 aa
 55
-97
+8b
 94
-f7
-bf
+45
+05
 ff
 ff
 ff
@@ -8188,5 +8176,17 @@
 ff
 ff
 ff
-a5
-ca
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+ff
+c6
+c3
Index: output/program.lis
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/PB_3mode_3ch_1IO2LED_FY158_dpi_long_desktop/output/program.lis	(revision 5075)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/PB_3mode_3ch_1IO2LED_FY158_dpi_long_desktop/output/program.lis	(working copy)
@@ -15,17 +15,17 @@
 000c c06501be beq patch19_2 ,p_mouse_lpm_before_common 
 000d c066009e beq patch19_4 ,p_mouse_adc_read_start 
 000e c0670433 beq patch19_6 ,p_mouse_motion 
-000f c067853e beq patch19_7 ,p_mouse_dpi_process 
+000f c067853b beq patch19_7 ,p_mouse_dpi_process 
 0010 c06802c1 beq patch1a_0 ,p_mouse_seting_dpi 
-0011 c0688478 beq patch1a_1 ,p_mouse_check_key_gpio 
+0011 c0688476 beq patch1a_1 ,p_mouse_check_key_gpio 
 0012 c0698424 beq patch1a_3 ,p_mouse_init_sunt 
-0013 c06a0448 beq patch1a_4 ,p_mouse_sensor_poweron 
+0013 c06a0446 beq patch1a_4 ,p_mouse_sensor_poweron 
 0014 c06b01e9 beq patch1a_6 ,p_mouse_priority_bb_event 
 0015 c06c82e9 beq patch1b_1 ,p_mouse_bb_event_timer 
 0016 c06d03a2 beq patch1b_2 ,p_mouse_start_discovery 
 0017 c06d83cf beq patch1b_3 ,p_mouse_stop_discovery 
 0018 c06e0028 beq patch1b_4 ,p_mouse_store_remote_bdaddr 
-0019 c06f04b8 beq patch1b_6 ,p_mouse_idle 
+0019 c06f04b6 beq patch1b_6 ,p_mouse_idle 
 001a c06f802e beq patch1b_7 ,p_mouse_ready_reconnection_by_button 
 001b c07403d6 beq patch1d_0 ,p_hid_rx_process 
 001c 2020137c branch loop 
@@ -250,7 +250,7 @@
 00c5 20403d8a call mouse_usb_check_enable 
 00c6 20404728 call mouse_drawing_optima_init 
 00c7 204000f1 call p_mouse_cb_fuction 
-00c8 2040045a call p_mouse_sensor_powerdown 
+00c8 20400458 call p_mouse_sensor_powerdown 
 00c9 20203bc9 branch mouse_init + 8 
 
 p_mouse_load_default_param:
@@ -397,7 +397,7 @@
 0132 67e0cba4 store 1 ,mem_mouse_search_dongle_action 
 0133 6fe14bbc fetch 2 ,mem_mouse_24g_search_dongle_time_init 
 0134 67e14ab2 store 2 ,mem_mouse_no_data_timer 
-0135 2020045a branch p_mouse_sensor_powerdown 
+0135 20200458 branch p_mouse_sensor_powerdown 
 
 p_g24_transmit_no_interrupt:
 0136 20402631 call g24_txdata_prep 
@@ -504,8 +504,8 @@
 0181 58000006 setarg pan_reg_config 
 0182 20405b0d call twspi_read 
 0183 c281be23 bbit1 3 ,mouse_app_enter_hibernate + 3 
-0184 20400453 call p_mouse_sensor_reset 
-0185 2040045a call p_mouse_sensor_powerdown 
+0184 20400451 call p_mouse_sensor_reset 
+0185 20400458 call p_mouse_sensor_powerdown 
 0186 20203e23 branch mouse_app_enter_hibernate + 3 
 
 p_mouse_setgpio_hibernate:
@@ -594,7 +594,7 @@
 01cb 58000000 setarg 0 
 01cc 67e3c8d0 store 7 ,mem_mouse_key 
 01cd 704be101 jam 1 ,mem_sensor_shutdown_flag 
-01ce 2040045a call p_mouse_sensor_powerdown 
+01ce 20400458 call p_mouse_sensor_powerdown 
 01cf 202001d5 branch p_g24_long_sleep 
 
 p_g24_nodata_transmit:
@@ -1003,7 +1003,7 @@
 0306 6fe0c9dd fetch 1 ,mem_mouse_dpi_button_state 
 0307 c080830d bne dpi_button_state_down ,p_mem_dpi_long_press_customer_count_clr 
 0308 da604c70 arg mem_dpi_long_press_customer_count ,regc 
-0309 da40030b arg p_mouse_customerkey_press ,regb 
+0309 da404069 arg mouse_dpi_process ,regb 
 030a 2020318a branch timer_single_step 
 
 p_mouse_customerkey_press:
@@ -1428,445 +1428,442 @@
 0437 204002c3 call p_mouse_seting_sensor_type 
 0438 20403f7e call mouse_zwheel 
 0439 20403f83 call mouse_t_zwheel 
-043a 6fe0cb8b fetch 1 ,mem_customer_key 
-043b 245a7e54 ncall enable_user ,blank 
-043c 20400462 call p_mouse_key 
-043d 6fe0c8d0 fetch 1 ,mem_mouse_key 
-043e 1fe17e1f and_into 0x1f ,pdata 
-043f 67e0c8d0 store 1 ,mem_mouse_key 
-0440 6fe0cb8b fetch 1 ,mem_customer_key 
-0441 245a7e54 ncall enable_user ,blank 
-0442 24344728 nbranch mouse_drawing_optima_init ,user 
-0443 20400445 call p_mouse_drawing_optima 
-0444 20204544 branch mouse_no_data_timer_init 
+043a 20400460 call p_mouse_key 
+043b 6fe0c8d0 fetch 1 ,mem_mouse_key 
+043c 1fe17e1f and_into 0x1f ,pdata 
+043d 67e0c8d0 store 1 ,mem_mouse_key 
+043e 6fe0cb8b fetch 1 ,mem_customer_key 
+043f 245a7e54 ncall enable_user ,blank 
+0440 24344728 nbranch mouse_drawing_optima_init ,user 
+0441 20400443 call p_mouse_drawing_optima 
+0442 20204544 branch mouse_no_data_timer_init 
 
 p_mouse_drawing_optima:
-0445 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0446 c1018000 rtneq p3212 
-0447 2020471a branch mouse_drawing_optima 
+0443 6fe0c927 fetch 1 ,mem_config_sensor_type 
+0444 c1018000 rtneq p3212 
+0445 2020471a branch mouse_drawing_optima 
 
 p_mouse_sensor_poweron:
-0448 20403f65 call mouse_sensor_spi_init 
-0449 6fe0c927 fetch 1 ,mem_config_sensor_type 
-044a c005844f beq ka8g2 ,p_mouse_ka8g2_sensor_init 
-044b 20404232 call mouse_sensor_reset 
-044c da604aa3 arg mem_sensor_poweron_init ,regc 
-044d 2040422b call mouse_sensor_wr_seq 
-044e 202002c3 branch p_mouse_seting_sensor_type 
+0446 20403f65 call mouse_sensor_spi_init 
+0447 6fe0c927 fetch 1 ,mem_config_sensor_type 
+0448 c005844d beq ka8g2 ,p_mouse_ka8g2_sensor_init 
+0449 20404232 call mouse_sensor_reset 
+044a da604aa3 arg mem_sensor_poweron_init ,regc 
+044b 2040422b call mouse_sensor_wr_seq 
+044c 202002c3 branch p_mouse_seting_sensor_type 
 
 p_mouse_ka8g2_sensor_init:
-044f 20400456 call p_mouse_ka8g2_sensor_reset 
-0450 da604be3 arg mem_ka8g2_sensor_poweron_init ,regc 
-0451 2040422b call mouse_sensor_wr_seq 
-0452 202002c3 branch p_mouse_seting_sensor_type 
+044d 20400454 call p_mouse_ka8g2_sensor_reset 
+044e da604be3 arg mem_ka8g2_sensor_poweron_init ,regc 
+044f 2040422b call mouse_sensor_wr_seq 
+0450 202002c3 branch p_mouse_seting_sensor_type 
 
 p_mouse_sensor_reset:
-0453 6fe0c927 fetch 1 ,mem_config_sensor_type 
-0454 c0058456 beq ka8g2 ,p_mouse_ka8g2_sensor_reset 
-0455 20204232 branch mouse_sensor_reset 
+0451 6fe0c927 fetch 1 ,mem_config_sensor_type 
+0452 c0058454 beq ka8g2 ,p_mouse_ka8g2_sensor_reset 
+0453 20204232 branch mouse_sensor_reset 
 
 p_mouse_ka8g2_sensor_reset:
-0456 58009706 setarg 0x9706 
-0457 20405b0c call twspi_write 
-0458 20002ee0 nop 12000 
-0459 20600000 rtn 
+0454 58009706 setarg 0x9706 
+0455 20405b0c call twspi_write 
+0456 20002ee0 nop 12000 
+0457 20600000 rtn 
 
 p_mouse_sensor_powerdown:
-045a 204041a7 call mouse_init_sunt 
-045b 20403f65 call mouse_sensor_spi_init 
-045c 6fe0c927 fetch 1 ,mem_config_sensor_type 
-045d c0058460 beq ka8g2 ,p_mouse_ka8g2_sensor_powerdown 
-045e 58000806 setarg 0x0806 
-045f 20205b0c branch twspi_write 
+0458 204041a7 call mouse_init_sunt 
+0459 20403f65 call mouse_sensor_spi_init 
+045a 6fe0c927 fetch 1 ,mem_config_sensor_type 
+045b c005845e beq ka8g2 ,p_mouse_ka8g2_sensor_powerdown 
+045c 58000806 setarg 0x0806 
+045d 20205b0c branch twspi_write 
 
 p_mouse_ka8g2_sensor_powerdown:
-0460 58001f06 setarg 0x1f06 
-0461 20205b0c branch twspi_write 
+045e 58001f06 setarg 0x1f06 
+045f 20205b0c branch twspi_write 
 
 p_mouse_key:
-0462 20400478 call p_mouse_check_key_gpio 
-0463 20400465 call p_mouse_ghost_key_check 
-0464 202040de branch mouse_key + 2 
+0460 20400476 call p_mouse_check_key_gpio 
+0461 20400463 call p_mouse_ghost_key_check 
+0462 202040de branch mouse_key + 2 
 
 p_mouse_ghost_key_check:
-0465 704b9800 jam 0 ,mem_mouse_matrix_key_cow_count 
-0466 704b9900 jam 0 ,mem_mouse_matrix_key_row_count 
-0467 704b9a00 jam 0 ,mem_mouse_ghost_flag 
-0468 1fe20400 copy pdata ,temp 
-0469 20404100 call mouse_ghost_key_check_m_fw 
-046a 20400475 call p_mouse_ghost_key_check_r_bk 
-046b 20404103 call mouse_ghost_key_check_bk_fw 
-046c 20404106 call mouse_ghost_key_check_lmr 
-046d 6fe0cb99 fetch 1 ,mem_mouse_matrix_key_row_count 
+0463 704b9800 jam 0 ,mem_mouse_matrix_key_cow_count 
+0464 704b9900 jam 0 ,mem_mouse_matrix_key_row_count 
+0465 704b9a00 jam 0 ,mem_mouse_ghost_flag 
+0466 1fe20400 copy pdata ,temp 
+0467 20404100 call mouse_ghost_key_check_m_fw 
+0468 20400473 call p_mouse_ghost_key_check_r_bk 
+0469 20404103 call mouse_ghost_key_check_bk_fw 
+046a 20404106 call mouse_ghost_key_check_lmr 
+046b 6fe0cb99 fetch 1 ,mem_mouse_matrix_key_row_count 
+046c 207a0000 rtn blank 
+046d 6fe0cb98 fetch 1 ,mem_mouse_matrix_key_cow_count 
 046e 207a0000 rtn blank 
-046f 6fe0cb98 fetch 1 ,mem_mouse_matrix_key_cow_count 
-0470 207a0000 rtn blank 
-0471 704b9a01 jam 1 ,mem_mouse_ghost_flag 
-0472 6fe0c8d8 fetch 1 ,mem_mouse_key_last 
-0473 1fe22200 copy pdata ,rega 
-0474 20600000 rtn 
+046f 704b9a01 jam 1 ,mem_mouse_ghost_flag 
+0470 6fe0c8d8 fetch 1 ,mem_mouse_key_last 
+0471 1fe22200 copy pdata ,rega 
+0472 20600000 rtn 
 
 p_mouse_ghost_key_check_r_bk:
-0475 18417e0a and temp ,mouse_r_bk_button ,pdata 
-0476 c005410e beq mouse_r_bk_button ,mouse_matrix_cow_more_than_one_key 
-0477 20600000 rtn 
+0473 18417e0a and temp ,mouse_r_bk_button ,pdata 
+0474 c005410e beq mouse_r_bk_button ,mouse_matrix_cow_more_than_one_key 
+0475 20600000 rtn 
 
 p_mouse_check_key_gpio:
-0478 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
-0479 245a4121 ncall mouse_check_key_gpio_once ,blank 
-047a da200000 arg 0 ,rega 
-047b 2040048b call p_mouse_check_lkey_gpio 
-047c 20400490 call p_mouse_check_rkey_gpio 
-047d 20400495 call p_mouse_check_mkey_gpio 
-047e 2040049a call p_mouse_check_bkkey_gpio 
-047f 204004a7 call p_mouse_check_fwkey_gpio 
-0480 704b8b00 jam 0 ,mem_customer_key 
-0481 6fe0c9de fetch 1 ,mem_mouse_dpi_long_press_flag 
-0482 245a0486 ncall p_mouse_customerkey_press_next ,blank 
-0483 6fe0cc6d fetch 1 ,mem_mouse_customerkey_finish 
-0484 245a0489 ncall p_mouse_customerkey_release ,blank 
-0485 2020411f branch mouse_check_key_gpio_next + 1 
+0476 6fe0cbe1 fetch 1 ,mem_sensor_shutdown_flag 
+0477 245a4121 ncall mouse_check_key_gpio_once ,blank 
+0478 da200000 arg 0 ,rega 
+0479 20400489 call p_mouse_check_lkey_gpio 
+047a 2040048e call p_mouse_check_rkey_gpio 
+047b 20400493 call p_mouse_check_mkey_gpio 
+047c 20400498 call p_mouse_check_bkkey_gpio 
+047d 204004a5 call p_mouse_check_fwkey_gpio 
+047e 704b8b00 jam 0 ,mem_customer_key 
+047f 6fe0c9de fetch 1 ,mem_mouse_dpi_long_press_flag 
+0480 243a0484 nbranch p_mouse_customerkey_press_next ,blank 
+0481 6fe0cb8c fetch 1 ,mem_customer_data_trigger 
+0482 243a0487 nbranch p_mouse_customerkey_release ,blank 
+0483 2020411f branch mouse_check_key_gpio_next + 1 
 
 p_mouse_customerkey_press_next:
-0486 2040417a call mouse_customerkey_press 
-0487 7049de00 jam 0 ,mem_mouse_dpi_long_press_flag 
-0488 20600000 rtn 
+0484 2040417a call mouse_customerkey_press 
+0485 7049de00 jam 0 ,mem_mouse_dpi_long_press_flag 
+0486 2020411f branch mouse_check_key_gpio_next + 1 
 
 p_mouse_customerkey_release:
-0489 704c6d00 jam 0 ,mem_mouse_customerkey_finish 
-048a 2020417d branch mouse_customerkey_release 
+0487 2040417d call mouse_customerkey_release 
+0488 2020411f branch mouse_check_key_gpio_next + 1 
 
 p_mouse_check_lkey_gpio:
-048b 6fe0c918 fetch 1 ,mem_lbutton_gpio 
-048c 204004b4 call p_mouse_gpio_config_output_high 
-048d 20404124 call mouse_check_lkey_gpio 
-048e 6848c918 fetcht 1 ,mem_lbutton_gpio 
-048f 20203f56 branch mouse_gpio_config_input_pu 
+0489 6fe0c918 fetch 1 ,mem_lbutton_gpio 
+048a 204004b2 call p_mouse_gpio_config_output_high 
+048b 20404124 call mouse_check_lkey_gpio 
+048c 6848c918 fetcht 1 ,mem_lbutton_gpio 
+048d 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_check_rkey_gpio:
-0490 6fe0c919 fetch 1 ,mem_rbutton_gpio 
-0491 204004b4 call p_mouse_gpio_config_output_high 
-0492 2040412a call mouse_check_rkey_gpio 
-0493 6848c919 fetcht 1 ,mem_rbutton_gpio 
-0494 20203f56 branch mouse_gpio_config_input_pu 
+048e 6fe0c919 fetch 1 ,mem_rbutton_gpio 
+048f 204004b2 call p_mouse_gpio_config_output_high 
+0490 2040412a call mouse_check_rkey_gpio 
+0491 6848c919 fetcht 1 ,mem_rbutton_gpio 
+0492 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_check_mkey_gpio:
-0495 6fe0c91a fetch 1 ,mem_mbutton_gpio 
-0496 204004b4 call p_mouse_gpio_config_output_high 
-0497 20404130 call mouse_check_mkey_gpio 
-0498 6848c91a fetcht 1 ,mem_mbutton_gpio 
-0499 20203f56 branch mouse_gpio_config_input_pu 
+0493 6fe0c91a fetch 1 ,mem_mbutton_gpio 
+0494 204004b2 call p_mouse_gpio_config_output_high 
+0495 20404130 call mouse_check_mkey_gpio 
+0496 6848c91a fetcht 1 ,mem_mbutton_gpio 
+0497 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_check_bkkey_gpio:
-049a 6fe0c90d fetch 1 ,mem_bk_button_gpio 
-049b c17f8000 rtneq gpio_disable 
-049c 704b9603 jam mouse_bk_key ,mem_mouse_key_temp 
-049d 6fe0cb91 fetch 1 ,mem_mouse_bkkey_press_status 
-049e 1fe22600 copy pdata ,regc 
-049f 6848c90d fetcht 1 ,mem_bk_button_gpio 
-04a0 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-04a1 c07f84a3 beq gpio_disable ,p_mouse_3io6key_bk_check 
-04a2 2020413e branch mouse_check_bkkey_gpio_next 
+0498 6fe0c90d fetch 1 ,mem_bk_button_gpio 
+0499 c17f8000 rtneq gpio_disable 
+049a 704b9603 jam mouse_bk_key ,mem_mouse_key_temp 
+049b 6fe0cb91 fetch 1 ,mem_mouse_bkkey_press_status 
+049c 1fe22600 copy pdata ,regc 
+049d 6848c90d fetcht 1 ,mem_bk_button_gpio 
+049e 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+049f c07f84a1 beq gpio_disable ,p_mouse_3io6key_bk_check 
+04a0 2020413e branch mouse_check_bkkey_gpio_next 
 
 p_mouse_3io6key_bk_check:
-04a3 6fe0c90d fetch 1 ,mem_bk_button_gpio 
-04a4 204004b6 call p_mouse_gpio_config_output_low 
-04a5 6848c90d fetcht 1 ,mem_bk_button_gpio 
-04a6 2020414b branch mouse_3io6key_bk_check 
+04a1 6fe0c90d fetch 1 ,mem_bk_button_gpio 
+04a2 204004b4 call p_mouse_gpio_config_output_low 
+04a3 6848c90d fetcht 1 ,mem_bk_button_gpio 
+04a4 2020414b branch mouse_3io6key_bk_check 
 
 p_mouse_check_fwkey_gpio:
-04a7 6fe0c90e fetch 1 ,mem_fw_button_gpio 
-04a8 c17f8000 rtneq gpio_disable 
-04a9 704b9604 jam mouse_fw_key ,mem_mouse_key_temp 
-04aa 6fe0cb92 fetch 1 ,mem_mouse_fwkey_press_status 
-04ab 1fe22600 copy pdata ,regc 
-04ac 6848c90e fetcht 1 ,mem_fw_button_gpio 
-04ad 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-04ae c07f84b0 beq gpio_disable ,p_mouse_3io6key_fw_check 
-04af 20204157 branch mouse_check_fwkey_gpio_next 
+04a5 6fe0c90e fetch 1 ,mem_fw_button_gpio 
+04a6 c17f8000 rtneq gpio_disable 
+04a7 704b9604 jam mouse_fw_key ,mem_mouse_key_temp 
+04a8 6fe0cb92 fetch 1 ,mem_mouse_fwkey_press_status 
+04a9 1fe22600 copy pdata ,regc 
+04aa 6848c90e fetcht 1 ,mem_fw_button_gpio 
+04ab 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+04ac c07f84ae beq gpio_disable ,p_mouse_3io6key_fw_check 
+04ad 20204157 branch mouse_check_fwkey_gpio_next 
 
 p_mouse_3io6key_fw_check:
-04b0 6fe0c90e fetch 1 ,mem_fw_button_gpio 
-04b1 204004b6 call p_mouse_gpio_config_output_low 
-04b2 6848c90e fetcht 1 ,mem_fw_button_gpio 
-04b3 20204164 branch mouse_3io6key_fw_check 
+04ae 6fe0c90e fetch 1 ,mem_fw_button_gpio 
+04af 204004b4 call p_mouse_gpio_config_output_low 
+04b0 6848c90e fetcht 1 ,mem_fw_button_gpio 
+04b1 20204164 branch mouse_3io6key_fw_check 
 
 p_mouse_gpio_config_output_high:
-04b4 d840003f arg gpcfg_output_high ,temp 
-04b5 20206093 branch gpio_config_function_int 
+04b2 d840003f arg gpcfg_output_high ,temp 
+04b3 20206093 branch gpio_config_function_int 
 
 p_mouse_gpio_config_output_low:
-04b6 d840003e arg gpcfg_output_low ,temp 
-04b7 20206093 branch gpio_config_function_int 
+04b4 d840003e arg gpcfg_output_low ,temp 
+04b5 20206093 branch gpio_config_function_int 
 
 p_mouse_idle:
-04b8 20404990 call mouse_low_voltage_led_no_enter_lpm 
-04b9 20407936 call ui_check_paring_button 
-04ba 204004bd call p_mouse_20ms_event_timer 
-04bb 204004c4 call p_mouse_select_device_check 
-04bc 20204650 branch mouse_idle + 5 
+04b6 20404990 call mouse_low_voltage_led_no_enter_lpm 
+04b7 20407936 call ui_check_paring_button 
+04b8 204004bb call p_mouse_20ms_event_timer 
+04b9 204004c2 call p_mouse_select_device_check 
+04ba 20204650 branch mouse_idle + 5 
 
 p_mouse_20ms_event_timer:
-04bd d8e0000c arg 12 ,queue 
-04be 20407d74 call timer_check 
-04bf 247a0000 nrtn blank 
-04c0 204004d1 call p_mouse_dpi_check 
+04bb d8e0000c arg 12 ,queue 
+04bc 20407d74 call timer_check 
+04bd 247a0000 nrtn blank 
+04be 204004cf call p_mouse_dpi_check 
 
 p_mouse_g24_retransmit_100ms_timer_init:
-04c1 d8e0000c arg 12 ,queue 
-04c2 58000020 setarg 32 
-04c3 20207d66 branch timer_init 
+04bf d8e0000c arg 12 ,queue 
+04c0 58000020 setarg 32 
+04c1 20207d66 branch timer_init 
 
 p_mouse_select_device_check:
-04c4 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-04c5 c29484c8 bbit1 mouse_enable_select_device_by_pb_button ,p_mouse_select_device_by_pb_button_check_judge 
-04c6 c29b84c8 bbit1 mouse_enable_pb_button_long_press_disconvery ,p_mouse_select_device_by_pb_button_check_judge 
-04c7 20600000 rtn 
+04c2 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+04c3 c29484c6 bbit1 mouse_enable_select_device_by_pb_button ,p_mouse_select_device_by_pb_button_check_judge 
+04c4 c29b84c6 bbit1 mouse_enable_pb_button_long_press_disconvery ,p_mouse_select_device_by_pb_button_check_judge 
+04c5 20600000 rtn 
 
 p_mouse_select_device_by_pb_button_check_judge:
-04c8 6fe1478c fetch 2 ,mem_ui_state_map 
-04c9 c28304cf bbit1 ui_state_bt_discovery ,p_mouse_select_device_by_pb_button_check_once 
+04c6 6fe1478c fetch 2 ,mem_ui_state_map 
+04c7 c28304cd bbit1 ui_state_bt_discovery ,p_mouse_select_device_by_pb_button_check_once 
 
 p_mouse_idle_select_device_by_pb_button:
-04ca 6fe0c91b fetch 1 ,mem_config_select_device_button_gpio 
-04cb c17f8000 rtneq gpio_disable 
-04cc 6fe0c9bf fetch 1 ,mem_store_information_delay_timer 
-04cd 247a0000 nrtn blank 
-04ce 2020465c branch mouse_select_device_by_pb_button + 2 
+04c8 6fe0c91b fetch 1 ,mem_config_select_device_button_gpio 
+04c9 c17f8000 rtneq gpio_disable 
+04ca 6fe0c9bf fetch 1 ,mem_store_information_delay_timer 
+04cb 247a0000 nrtn blank 
+04cc 2020465c branch mouse_select_device_by_pb_button + 2 
 
 p_mouse_select_device_by_pb_button_check_once:
-04cf 704b9403 jam 0x03 ,mem_mouse_pbkey_press_status 
-04d0 2020016f branch p_mouse_select_device_by_pb_button 
+04cd 704b9403 jam 0x03 ,mem_mouse_pbkey_press_status 
+04ce 2020016f branch p_mouse_select_device_by_pb_button 
 
 p_mouse_dpi_check:
-04d1 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
-04d2 c17f8000 rtneq gpio_disable 
-04d3 20400551 call p_mouse_dpi_ghost_check 
-04d4 20740000 rtn user 
-04d5 da200000 arg 0 ,rega 
-04d6 704b9605 jam mouse_dpi_key ,mem_mouse_key_temp 
-04d7 6848c90f fetcht 1 ,mem_dpi_button_gpio 
-04d8 204004f1 call p_mouse_dpi_key_check 
-04d9 67e0cb93 store 1 ,mem_mouse_dpikey_press_status 
-04da 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-04db c07fc042 beq gpio_disable ,mouse_3io6key_dpi_check_end 
-04dc 20404168 call mouse_matrix_public_gpio_reset 
+04cf 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
+04d0 c17f8000 rtneq gpio_disable 
+04d1 2040054e call p_mouse_dpi_ghost_check 
+04d2 20740000 rtn user 
+04d3 da200000 arg 0 ,rega 
+04d4 704b9605 jam mouse_dpi_key ,mem_mouse_key_temp 
+04d5 6848c90f fetcht 1 ,mem_dpi_button_gpio 
+04d6 204004ee call p_mouse_dpi_key_check 
+04d7 67e0cb93 store 1 ,mem_mouse_dpikey_press_status 
+04d8 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+04d9 c07fc042 beq gpio_disable ,mouse_3io6key_dpi_check_end 
+04da 20404168 call mouse_matrix_public_gpio_reset 
 
 p_mouse_dpi_check_exit:
-04dd 1a227e00 copy rega ,pdata 
-04de c282c052 bbit1 mouse_dpi_key ,mouse_dpi_down 
-04df 202004e0 branch p_mouse_dpi_up 
+04db 1a227e00 copy rega ,pdata 
+04dc c282c052 bbit1 mouse_dpi_key ,mouse_dpi_down 
+04dd 202004de branch p_mouse_dpi_up 
 
 p_mouse_dpi_up:
-04e0 6fe0c9dd fetch 1 ,mem_mouse_dpi_button_state 
-04e1 c1000000 rtneq dpi_button_state_up 
-04e2 7049dd00 jam dpi_button_state_up ,mem_mouse_dpi_button_state 
-04e3 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-04e4 c2944060 bbit1 mouse_enable_select_device_by_dpi_button ,mouse_dpi_up_next 
-04e5 c29b04e7 bbit1 mouse_enable_dpi_key_long_press_disconvery ,p_mouse_dpi_up_next 
-04e6 20600000 rtn 
+04de 6fe0c9dd fetch 1 ,mem_mouse_dpi_button_state 
+04df c1000000 rtneq dpi_button_state_up 
+04e0 7049dd00 jam dpi_button_state_up ,mem_mouse_dpi_button_state 
+04e1 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+04e2 c2944060 bbit1 mouse_enable_select_device_by_dpi_button ,mouse_dpi_up_next 
+04e3 c29b04e5 bbit1 mouse_enable_dpi_key_long_press_disconvery ,p_mouse_dpi_up_next 
+04e4 20600000 rtn 
 
 p_mouse_dpi_up_next:
-04e7 6fe0c9de fetch 1 ,mem_mouse_dpi_long_press_flag 
-04e8 243a4064 nbranch mouse_dpi_up_after_long_press ,blank 
-04e9 6fe0cb9b fetch 1 ,mem_bt_discovery_count 
-04ea 245a4069 ncall mouse_dpi_process ,blank 
+04e5 6fe0c9de fetch 1 ,mem_mouse_dpi_long_press_flag 
+04e6 243a4064 nbranch mouse_dpi_up_after_long_press ,blank 
+04e7 6fe0cc70 fetch 1 ,mem_dpi_long_press_customer_count 
+04e8 243a030b nbranch p_mouse_customerkey_press ,blank 
 
 p_mouse_dpi_up_after_long_press:
-04eb 7049de00 jam 0 ,mem_mouse_dpi_long_press_flag 
-04ec 704c6d01 jam 1 ,mem_mouse_customerkey_finish 
-04ed 6fe0c78f fetch 1 ,mem_ui_button_timeout 
-04ee 67e0cb9c store 1 ,mem_select_device_count 
-04ef 67e0cb9b store 1 ,mem_bt_discovery_count 
-04f0 2020417d branch mouse_customerkey_release 
+04e9 7049de00 jam 0 ,mem_mouse_dpi_long_press_flag 
+04ea 6fe0c78f fetch 1 ,mem_ui_button_timeout 
+04eb 67e0cb9c store 1 ,mem_select_device_count 
+04ec 67e0cb9b store 1 ,mem_bt_discovery_count 
+04ed 20600000 rtn 
 
 p_mouse_dpi_key_check:
-04f1 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-04f2 c2964048 bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
-04f3 6fe0cb93 fetch 1 ,mem_mouse_dpikey_press_status 
-04f4 1fe22600 copy pdata ,regc 
-04f5 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
-04f6 c07f84f8 beq gpio_disable ,p_mouse_3io6key_dpi_check 
-04f7 2020403f branch mouse_dpi_key_check_next 
+04ee 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+04ef c2964048 bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
+04f0 6fe0cb93 fetch 1 ,mem_mouse_dpikey_press_status 
+04f1 1fe22600 copy pdata ,regc 
+04f2 6fe0c910 fetch 1 ,mem_matrix_public_gpio 
+04f3 c07f84f5 beq gpio_disable ,p_mouse_3io6key_dpi_check 
+04f4 2020403f branch mouse_dpi_key_check_next 
 
 p_mouse_3io6key_dpi_check:
-04f8 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
-04f9 204004b6 call p_mouse_gpio_config_output_low 
-04fa 6848c90f fetcht 1 ,mem_dpi_button_gpio 
-04fb 20204195 branch mouse_3io6key_check 
+04f5 6fe0c90f fetch 1 ,mem_dpi_button_gpio 
+04f6 204004b4 call p_mouse_gpio_config_output_low 
+04f7 6848c90f fetcht 1 ,mem_dpi_button_gpio 
+04f8 20204195 branch mouse_3io6key_check 
 
 p_mouse_dpi_another_gpio_check:
-04fc 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-04fd c41e8000 rtnbit0 mouse_enable_double_dpi_key 
-04fe 6fe0cc3a fetch 1 ,mem_mouse_another_dpi_connect_vin_flag 
-04ff 243a0505 nbranch p_mouse_dpi_another_gpio_connect_vin_check ,blank 
+04f9 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+04fa c41e8000 rtnbit0 mouse_enable_double_dpi_key 
+04fb 6fe0cc3a fetch 1 ,mem_mouse_another_dpi_connect_vin_flag 
+04fc 243a0502 nbranch p_mouse_dpi_another_gpio_connect_vin_check ,blank 
 
 p_mouse_dpi_another_gpio_connect_gnd_check:
-0500 6fe0cc3b fetch 1 ,mem_dpi_another_button_gpio 
-0501 204004b4 call p_mouse_gpio_config_output_high 
-0502 20400516 call p_mouse_dpi_another_check 
-0503 6848cc3b fetcht 1 ,mem_dpi_another_button_gpio 
-0504 20203f56 branch mouse_gpio_config_input_pu 
+04fd 6fe0cc3b fetch 1 ,mem_dpi_another_button_gpio 
+04fe 204004b2 call p_mouse_gpio_config_output_high 
+04ff 20400513 call p_mouse_dpi_another_check 
+0500 6848cc3b fetcht 1 ,mem_dpi_another_button_gpio 
+0501 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_dpi_another_gpio_connect_vin_check:
+0502 6fe0cc3b fetch 1 ,mem_dpi_another_button_gpio 
+0503 793ffe07 set0 gpio_active_bit ,pdata 
+0504 67e0cc3b store 1 ,mem_dpi_another_button_gpio 
 0505 6fe0cc3b fetch 1 ,mem_dpi_another_button_gpio 
-0506 793ffe07 set0 gpio_active_bit ,pdata 
-0507 67e0cc3b store 1 ,mem_dpi_another_button_gpio 
-0508 6fe0cc3b fetch 1 ,mem_dpi_another_button_gpio 
-0509 204004b6 call p_mouse_gpio_config_output_low 
-050a 704c3f00 jam mouse_dpi_another_key ,mem_mouse_key_temp_patch 
-050b 6848cc3b fetcht 1 ,mem_dpi_another_button_gpio 
-050c 6fe0cc3c fetch 1 ,mem_dpi_another_press_status 
-050d 2040052f call p_mouse_check_key_connect_vin_new 
-050e 2040051a call p_mouse_dpi_another_state_check 
-050f 6848cc3b fetcht 1 ,mem_dpi_another_button_gpio 
-0510 20203f56 branch mouse_gpio_config_input_pu 
+0506 204004b4 call p_mouse_gpio_config_output_low 
+0507 704c3f00 jam mouse_dpi_another_key ,mem_mouse_key_temp_patch 
+0508 6848cc3b fetcht 1 ,mem_dpi_another_button_gpio 
+0509 6fe0cc3c fetch 1 ,mem_dpi_another_press_status 
+050a 2040052c call p_mouse_check_key_connect_vin_new 
+050b 20400517 call p_mouse_dpi_another_state_check 
+050c 6848cc3b fetcht 1 ,mem_dpi_another_button_gpio 
+050d 20203f56 branch mouse_gpio_config_input_pu 
 
 p_mouse_dpi_another_down_new:
-0511 20403f56 call mouse_gpio_config_input_pu 
-0512 6fe0cc3d fetch 1 ,mem_dpi_another_button_state 
-0513 c1008000 rtneq dpi_button_state_down 
-0514 704c3d01 jam dpi_button_state_down ,mem_dpi_another_button_state 
-0515 20204069 branch mouse_dpi_process 
+050e 20403f56 call mouse_gpio_config_input_pu 
+050f 6fe0cc3d fetch 1 ,mem_dpi_another_button_state 
+0510 c1008000 rtneq dpi_button_state_down 
+0511 704c3d01 jam dpi_button_state_down ,mem_dpi_another_button_state 
+0512 20204069 branch mouse_dpi_process 
 
 p_mouse_dpi_another_check:
-0516 704c3f00 jam mouse_dpi_another_key ,mem_mouse_key_temp_patch 
-0517 6848cc3b fetcht 1 ,mem_dpi_another_button_gpio 
-0518 6fe0cc3c fetch 1 ,mem_dpi_another_press_status 
-0519 20400525 call p_mouse_check_key_connect_gnd_new 
+0513 704c3f00 jam mouse_dpi_another_key ,mem_mouse_key_temp_patch 
+0514 6848cc3b fetcht 1 ,mem_dpi_another_button_gpio 
+0515 6fe0cc3c fetch 1 ,mem_dpi_another_press_status 
+0516 20400522 call p_mouse_check_key_connect_gnd_new 
 
 p_mouse_dpi_another_state_check:
-051a 67e0cc3c store 1 ,mem_dpi_another_press_status 
-051b 6fe0cc3e fetch 1 ,mem_dpi_another_button_down_enable 
-051c 203a0521 branch p_mouse_dpi_another_up ,blank 
+0517 67e0cc3c store 1 ,mem_dpi_another_press_status 
+0518 6fe0cc3e fetch 1 ,mem_dpi_another_button_down_enable 
+0519 203a051e branch p_mouse_dpi_another_up ,blank 
 
 p_mouse_dpi_another_down:
-051d 6fe0cc3d fetch 1 ,mem_dpi_another_button_state 
-051e c1008000 rtneq dpi_button_state_down 
-051f 704c3d01 jam dpi_button_state_down ,mem_dpi_another_button_state 
-0520 20204069 branch mouse_dpi_process 
+051a 6fe0cc3d fetch 1 ,mem_dpi_another_button_state 
+051b c1008000 rtneq dpi_button_state_down 
+051c 704c3d01 jam dpi_button_state_down ,mem_dpi_another_button_state 
+051d 20204069 branch mouse_dpi_process 
 
 p_mouse_dpi_another_up:
-0521 6fe0cc3d fetch 1 ,mem_dpi_another_button_state 
-0522 c1000000 rtneq dpi_button_state_up 
-0523 704c3d00 jam dpi_button_state_up ,mem_dpi_another_button_state 
-0524 20600000 rtn 
+051e 6fe0cc3d fetch 1 ,mem_dpi_another_button_state 
+051f c1000000 rtneq dpi_button_state_up 
+0520 704c3d00 jam dpi_button_state_up ,mem_dpi_another_button_state 
+0521 20600000 rtn 
 
 p_mouse_check_key_connect_gnd_new:
-0525 1fe3fe00 lshift pdata ,pdata 
-0526 1fe22400 copy pdata ,regb 
-0527 20406059 call gpio_get_bit 
-0528 7920a400 setflag true ,0 ,regb 
-0529 1a417e07 and regb ,0x07 ,pdata 
-052a 6848cc3f fetcht 1 ,mem_mouse_key_temp_patch 
-052b 18420e00 copy temp ,queue 
-052c c003853a beq 0x07 ,p_mouse_key_press 
-052d c000053c beq 0x00 ,p_mouse_key_release 
-052e 20600000 rtn 
+0522 1fe3fe00 lshift pdata ,pdata 
+0523 1fe22400 copy pdata ,regb 
+0524 20406059 call gpio_get_bit 
+0525 7920a400 setflag true ,0 ,regb 
+0526 1a417e07 and regb ,0x07 ,pdata 
+0527 6848cc3f fetcht 1 ,mem_mouse_key_temp_patch 
+0528 18420e00 copy temp ,queue 
+0529 c0038537 beq 0x07 ,p_mouse_key_press 
+052a c0000539 beq 0x00 ,p_mouse_key_release 
+052b 20600000 rtn 
 
 p_mouse_check_key_connect_vin_new:
-052f 1fe3fe00 lshift pdata ,pdata 
-0530 1fe22400 copy pdata ,regb 
-0531 20403f54 call mouse_gpio_config_input_pd 
-0532 20406059 call gpio_get_bit 
-0533 7920a400 setflag true ,0 ,regb 
-0534 1a417e07 and regb ,0x07 ,pdata 
-0535 6848cc3f fetcht 1 ,mem_mouse_key_temp_patch 
-0536 18420e00 copy temp ,queue 
-0537 c003853a beq 0x07 ,p_mouse_key_press 
-0538 c000053c beq 0x00 ,p_mouse_key_release 
-0539 20600000 rtn 
+052c 1fe3fe00 lshift pdata ,pdata 
+052d 1fe22400 copy pdata ,regb 
+052e 20403f54 call mouse_gpio_config_input_pd 
+052f 20406059 call gpio_get_bit 
+0530 7920a400 setflag true ,0 ,regb 
+0531 1a417e07 and regb ,0x07 ,pdata 
+0532 6848cc3f fetcht 1 ,mem_mouse_key_temp_patch 
+0533 18420e00 copy temp ,queue 
+0534 c0038537 beq 0x07 ,p_mouse_key_press 
+0535 c0000539 beq 0x00 ,p_mouse_key_release 
+0536 20600000 rtn 
 
 p_mouse_key_press:
-053a 704c3e01 jam 1 ,mem_dpi_another_button_down_enable 
-053b 20600000 rtn 
+0537 704c3e01 jam 1 ,mem_dpi_another_button_down_enable 
+0538 20600000 rtn 
 
 p_mouse_key_release:
-053c 704c3e00 jam 0 ,mem_dpi_another_button_down_enable 
-053d 20600000 rtn 
+0539 704c3e00 jam 0 ,mem_dpi_another_button_down_enable 
+053a 20600000 rtn 
 
 p_mouse_dpi_process:
-053e 6fe0c992 fetch 1 ,mem_mouse_dpi 
-053f 1fe20400 copy pdata ,temp 
-0540 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-0541 c29e8548 bbit1 mouse_enable_double_dpi_key ,p_mouse_double_dpi_check 
-0542 18427e00 copy temp ,pdata 
-0543 1fe0fe01 increase 1 ,pdata 
-0544 1fe17e03 and pdata ,0x03 ,pdata 
+053b 6fe0c992 fetch 1 ,mem_mouse_dpi 
+053c 1fe20400 copy pdata ,temp 
+053d 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+053e c29e8545 bbit1 mouse_enable_double_dpi_key ,p_mouse_double_dpi_check 
+053f 18427e00 copy temp ,pdata 
+0540 1fe0fe01 increase 1 ,pdata 
+0541 1fe17e03 and pdata ,0x03 ,pdata 
 
 p_mouse_dpi_store:
-0545 67e0c992 store 1 ,mem_mouse_dpi 
-0546 20404095 call mouse_seting_dpi 
-0547 20204643 branch mouse_store_eerpom_dpi 
+0542 67e0c992 store 1 ,mem_mouse_dpi 
+0543 20404095 call mouse_seting_dpi 
+0544 20204643 branch mouse_store_eerpom_dpi 
 
 p_mouse_double_dpi_check:
-0548 6fe0cc3e fetch 1 ,mem_dpi_another_button_down_enable 
-0549 243a056c nbranch p_mouse_another_dpi_button_down ,blank 
+0545 6fe0cc3e fetch 1 ,mem_dpi_another_button_down_enable 
+0546 243a0569 nbranch p_mouse_another_dpi_button_down ,blank 
 
 p_mouse_dpi_increase:
-054a 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-054b c28e0560 bbit1 mouse_enable_dpi_level_4 ,p_mouse_dpi_increase_level_4 
-054c 18427e00 copy temp ,pdata 
-054d c1008000 rtneq mouse_dpi_level2 
+0547 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0548 c28e055d bbit1 mouse_enable_dpi_level_4 ,p_mouse_dpi_increase_level_4 
+0549 18427e00 copy temp ,pdata 
+054a c1008000 rtneq mouse_dpi_level2 
 
 p_mouse_dpi_increase_level:
-054e c000055c beq mouse_dpi_level1 ,p_mouse_dpi_level_3 
-054f c001055a beq mouse_dpi_level3 ,p_mouse_dpi_level_2 
-0550 20600000 rtn 
+054b c0000559 beq mouse_dpi_level1 ,p_mouse_dpi_level_3 
+054c c0010557 beq mouse_dpi_level3 ,p_mouse_dpi_level_2 
+054d 20600000 rtn 
 
 p_mouse_dpi_ghost_check:
-0551 78547c00 disable user 
-0552 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-0553 c3960000 rtnbit1 mouse_enable_dpi_key_connect_gnd 
-0554 6fe1cb8e fetch 3 ,mem_mouse_lkey_press_status 
-0555 207a0000 rtn blank 
-0556 704b9300 jam 0 ,mem_mouse_dpikey_press_status 
-0557 20207e54 branch enable_user 
+054e 78547c00 disable user 
+054f 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+0550 c3960000 rtnbit1 mouse_enable_dpi_key_connect_gnd 
+0551 6fe1cb8e fetch 3 ,mem_mouse_lkey_press_status 
+0552 207a0000 rtn blank 
+0553 704b9300 jam 0 ,mem_mouse_dpikey_press_status 
+0554 20207e54 branch enable_user 
 
 p_mouse_dpi_level_1:
-0558 58000002 setarg 2 
-0559 20200545 branch p_mouse_dpi_store 
+0555 58000002 setarg 2 
+0556 20200542 branch p_mouse_dpi_store 
 
 p_mouse_dpi_level_2:
-055a 58000000 setarg 0 
-055b 20200545 branch p_mouse_dpi_store 
+0557 58000000 setarg 0 
+0558 20200542 branch p_mouse_dpi_store 
 
 p_mouse_dpi_level_3:
-055c 58000001 setarg 1 
-055d 20200545 branch p_mouse_dpi_store 
+0559 58000001 setarg 1 
+055a 20200542 branch p_mouse_dpi_store 
 
 p_mouse_dpi_level_4:
-055e 58000003 setarg 3 
-055f 20200545 branch p_mouse_dpi_store 
+055b 58000003 setarg 3 
+055c 20200542 branch p_mouse_dpi_store 
 
 p_mouse_dpi_increase_level_4:
-0560 18427e00 copy temp ,pdata 
-0561 c1008000 rtneq mouse_dpi_level2 
-0562 c000055c beq mouse_dpi_level1 ,p_mouse_dpi_level_3 
-0563 c001055e beq mouse_dpi_level3 ,p_mouse_dpi_level_4 
-0564 c001855a beq mouse_dpi_level4 ,p_mouse_dpi_level_2 
-0565 20600000 rtn 
+055d 18427e00 copy temp ,pdata 
+055e c1008000 rtneq mouse_dpi_level2 
+055f c0000559 beq mouse_dpi_level1 ,p_mouse_dpi_level_3 
+0560 c001055b beq mouse_dpi_level3 ,p_mouse_dpi_level_4 
+0561 c0018557 beq mouse_dpi_level4 ,p_mouse_dpi_level_2 
+0562 20600000 rtn 
 
 p_mouse_dpi_decrease_level_4:
-0566 18427e00 copy temp ,pdata 
-0567 c1010000 rtneq mouse_dpi_level3 
-0568 c000055e beq mouse_dpi_level1 ,p_mouse_dpi_level_4 
-0569 c000855a beq mouse_dpi_level2 ,p_mouse_dpi_level_2 
-056a c0018558 beq mouse_dpi_level4 ,p_mouse_dpi_level_1 
-056b 20600000 rtn 
+0563 18427e00 copy temp ,pdata 
+0564 c1010000 rtneq mouse_dpi_level3 
+0565 c000055b beq mouse_dpi_level1 ,p_mouse_dpi_level_4 
+0566 c0008557 beq mouse_dpi_level2 ,p_mouse_dpi_level_2 
+0567 c0018555 beq mouse_dpi_level4 ,p_mouse_dpi_level_1 
+0568 20600000 rtn 
 
 p_mouse_another_dpi_button_down:
 
 p_mouse_dpi_decrease:
-056c 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
-056d c28e0566 bbit1 mouse_enable_dpi_level_4 ,p_mouse_dpi_decrease_level_4 
-056e 18427e00 copy temp ,pdata 
-056f c1010000 rtneq mouse_dpi_level3 
+0569 6fe44bab fetch mouse_flag_len ,mem_mouse_flag 
+056a c28e0563 bbit1 mouse_enable_dpi_level_4 ,p_mouse_dpi_decrease_level_4 
+056b 18427e00 copy temp ,pdata 
+056c c1010000 rtneq mouse_dpi_level3 
 
 p_mouse_dpi_decrease_level:
-0570 c0000558 beq mouse_dpi_level1 ,p_mouse_dpi_level_1 
-0571 c000855a beq mouse_dpi_level2 ,p_mouse_dpi_level_2 
-0572 20600000 rtn 
+056d c0000555 beq mouse_dpi_level1 ,p_mouse_dpi_level_1 
+056e c0008557 beq mouse_dpi_level2 ,p_mouse_dpi_level_2 
+056f 20600000 rtn 
               org 0x800
 
 start:
Index: program/patch.prog
===================================================================
--- /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/PB_3mode_3ch_1IO2LED_FY158_dpi_long_desktop/program/patch.prog	(revision 5075)
+++ /YC1308AC/branch/mouse_project/YJX_Project/1011-T_Project/Multimode/PB_3mode_3ch_1IO2LED_FY158_dpi_long_desktop/program/patch.prog	(working copy)
@@ -1103,7 +1103,7 @@
 	fetch 1,mem_mouse_dpi_button_state
 	bne DPI_BUTTON_STATE_DOWN,p_mem_dpi_long_press_customer_count_clr	
 	arg mem_dpi_long_press_customer_count,regc
-	arg p_mouse_customerkey_press,regb
+	arg mouse_dpi_process,regb
 	branch timer_single_step
 p_mouse_customerkey_press:
 	jam 1,mem_mouse_dpi_long_press_flag
@@ -1551,8 +1551,8 @@
 	call p_mouse_seting_sensor_type
 	call mouse_zwheel
 	call mouse_t_zwheel
-	fetch 1,mem_customer_key
-	ncall enable_user,blank
+	// fetch 1,mem_customer_key
+	// ncall enable_user,blank
 	call p_mouse_key
 	fetch 1,mem_mouse_key
 	and_into 0x1f,pdata
@@ -1653,19 +1653,21 @@
 endif
 	jam 0,mem_customer_key
 	fetch 1,mem_mouse_dpi_long_press_flag
-	ncall p_mouse_customerkey_press_next,blank
-	fetch 1,mem_mouse_customerkey_finish
-	ncall p_mouse_customerkey_release,blank
+	nbranch p_mouse_customerkey_press_next,blank
+	fetch 1,mem_customer_data_trigger
+	nbranch p_mouse_customerkey_release,blank
+
 	branch mouse_check_key_gpio_next+1
 
 p_mouse_customerkey_press_next:
 	call mouse_customerkey_press
 	jam 0,mem_mouse_dpi_long_press_flag
-	rtn
+	branch mouse_check_key_gpio_next+1
 
 p_mouse_customerkey_release:
-	jam 0,mem_mouse_customerkey_finish
-	branch mouse_customerkey_release
+	// jam 0,mem_mouse_customerkey_finish
+	call mouse_customerkey_release
+	branch mouse_check_key_gpio_next+1
 
 p_mouse_check_lkey_gpio:
 	fetch 1,mem_lbutton_gpio
@@ -1885,16 +1887,16 @@
 p_mouse_dpi_up_next:
 	fetch 1,mem_mouse_dpi_long_press_flag
 	nbranch mouse_dpi_up_after_long_press,blank
-	fetch 1,mem_bt_discovery_count
-	ncall mouse_dpi_process,blank
+	fetch 1,mem_dpi_long_press_customer_count
+	nbranch p_mouse_customerkey_press,blank
 p_mouse_dpi_up_after_long_press:
 	jam 0,mem_mouse_dpi_long_press_flag
-	jam 1,mem_mouse_customerkey_finish
+	// jam 1,mem_mouse_customerkey_finish
 	fetch 1,mem_ui_button_timeout
 	store 1,mem_select_device_count	
 	store 1,mem_bt_discovery_count
-	branch mouse_customerkey_release
-	// rtn
+	// branch mouse_customerkey_release
+	rtn
 
 p_mouse_dpi_key_check:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
