Index: do.bat
===================================================================
--- /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/do.bat	(revision 794)
+++ /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/do.bat	(working copy)
@@ -20,6 +20,10 @@
 @rem set device_option=flippen
 @echo off
 
+set now_path=%~dp0
+set util_path=%now_path%util
+set/p mode=Please press mode SA or SB:
+
 setlocal enabledelayedexpansion
 for %%f in (program\ble_protocol_stack\*.prog) do @set progs=!progs! %%f
 for %%f in (program\g24_protocol_stack\*.prog) do @set progs=!progs! %%f
@@ -74,15 +78,24 @@
 cd output
 osiuasm bt_program23 -O-W
 
-geneep -n 
-::geneep -n -k key.dat 
+if /I "%mode%" equ "SA" (goto SAmode)
+if /I "%mode%" equ "SB" (goto SBmode)
+
+:SAmode
+%util_path%/geneep  -n
+goto contin
+
+:SBmode
+%util_path%/geneep  -n -s -i
+goto contin
 
+:contin
 echo create auth rom
 perl ../util/mergepatch.pl mouse_ble_att_list usb_kbdata_vendor_define usb_kbdata usb_msdata usb_devicedata usb_confdata ble_shutter_gatt_list ble_shutter_key_value_list ble_car_att_list sha256 
 perl ../util/romcrc.pl romcode.rom
-perl  ../util/mergepatch.pl otp
-
-
+perl ../util/mergepatch.pl otp
+perl ../util/otpcheck.pl 
+echo.
 if "%device_option%" equ "mouse" (
 cd ..\output
 copy eeprom.dat ..\util\eeprom.dat
@@ -98,7 +111,4 @@
 cd ..
 call set_chip_type_flag.bat 
 
-:end
-
-
-
+:end
\ No newline at end of file
Index: format/app.format
===================================================================
--- /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/format/app.format	(revision 794)
+++ /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/format/app.format	(working copy)
@@ -65,10 +65,19 @@
 
 
 //adc
+0 mem_reference_inter1p8v_2v_adc_io_data
+0 mem_inter1v_adc_ft_data
 2 mem_3v_adc_io_data
+0 mem_reference_inter1p8v_2p6v_adc_vdcdc_data
+0 mem_inter1p2v_adc_ft_data
 2 mem_2v_adc_hvin_data
+0 mem_reference_inter1p8v_1v_adc_io_data
+0 mem_io1v_adc_ft_data
 2 mem_1v_adc_io_data
+0 mem_reference_inter1p8v_4p6v_adc_vdcdc_data
+0 mem_io2v_adc_ft_data
 2 mem_3v_adc_hvin_data
+0 mem_adc_ratio
 2 mem_reference_voltage
 1 mem_adc_config_flag
 1 mem_adc_channel
@@ -209,6 +218,7 @@
 7 OTP_OFFSET_XRAM_BISTFIX	//2 byte
 9 OTP_OFFSET_PATCH_BISTFIX	//2 byte
 
+0xfc0 OTP_OFFSET_ADC_PARAM_L_C0
 0xfd0 OTP_OFFSET_ADC_PARAM_L
 0xff0 OTP_OFFSET_UCODE_KEY_L
 0x1000 OTP_OFFSET_H
@@ -369,3 +379,9 @@
 0x0e ADC_CH_GPIO13
 )
 
+//mem_adc_reference_mode 
+(
+1 SADC_REFERENCE_INTER3V
+2 SADC_REFERENCE_INTER1P8V_DIV2
+)
+
Index: format/app_mouse.format
===================================================================
--- /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/format/app_mouse.format	(revision 794)
+++ /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/format/app_mouse.format	(working copy)
@@ -428,6 +428,11 @@
 64 mem_le_tx_buffer1_omemalloc_new
 64 mem_le_tx_buffer2_omemalloc_new
 64 mem_le_tx_buffer3_omemalloc_new
+
+1 mem_mouse_qdec_set_flag
+//commbination_dpi
+1 mem_commbination_dpi_timer
+1 mem_mouse_commbination_key_dpi
 )
 
 (
Index: format/bt.format
===================================================================
--- /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/format/bt.format	(revision 794)
+++ /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/format/bt.format	(working copy)
@@ -209,8 +209,18 @@
 1 mem_system_clk
 
 ifdef DEBUG_RF_INIT
-18 mem_rf_init_data
+5 mem_rf_init_data
 endif
+
+0 mem_adc_reference3v_ft_data	
+2 mem_adc_reference3v_gpio1v_ft_data	
+2 mem_adc_reference3v_gpio2v_ft_data	
+2 mem_adc_reference3v_vdcdc3p6v_ft_data	
+2 mem_adc_reference3v_vdcdc4p6v_ft_data	
+2 mem_adc_reference3v_inter1v_ft_data
+2 mem_adc_reference3v_inter1v_now_data	
+1 mem_adc_reference_mode
+
 1 mem_otp_charge_pump_x
 1 mem_otp_dpll_ibais_x
 
Index: format/g24_protocol_stack/24g_reconn.format
===================================================================
--- /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/format/g24_protocol_stack/24g_reconn.format	(revision 794)
+++ /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/format/g24_protocol_stack/24g_reconn.format	(working copy)
@@ -25,5 +25,6 @@
 2 FAST_CONN_AND_3_0_ADDR
 3 RECEIVER_AND_3_0_ADDR
 4 PAIR_AND_3_0_ADDR
+5 pair_and_receiver
 )
 
Index: output/otp.dat
===================================================================
--- /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/output/otp.dat	(revision 794)
+++ /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/output/otp.dat	(working copy)
@@ -9,4836 +9,5482 @@
 00
 00
 00
+8f
+ab
+f1
+00
+3c
+ae
+c6
+03
+78
+5c
+8d
+07
+e0
+71
+35
+1e
 aa
 55
-da
-12
-c2
-84
-00
+50
+15
+4e
+06
+a3
+10
+a2
+a1
+1a
+6d
 23
-c0
-00
-02
-78
-c0
-01
-00
-31
-c0
-08
-00
-3a
-c0
-08
-80
-3c
-c0
-0a
-01
+16
+29
+8a
+50
+e2
+3b
+f1
+04
+50
+c7
+3b
+27
+04
+c7
+1c
 53
-c0
-0a
-80
-bc
-c0
-0c
-00
-dc
-c0
-0c
-80
-e3
-c0
+b3
+aa
 0d
-00
+ae
 4a
+7a
 c0
-12
-81
-fe
-c0
-34
-02
-71
-c0
-34
-82
-91
-c0
-36
-02
-3a
-c0
-39
-84
 5f
-c0
-3d
-04
-b1
-c0
-3f
-84
-3f
-c0
-40
-84
-96
-c0
+16
+cf
+7b
+41
+0b
+59
+9b
+32
+eb
+3c
+72
 42
-03
+ec
+fb
+52
+21
+34
+55
+d2
+54
+74
+8e
+e6
+9e
+af
+86
+72
+6f
+e2
+3b
+f0
+04
+57
+2d
+f8
+35
+5a
+d3
+0b
+fb
+f0
+24
+5b
+61
+67
 7a
-c0
-42
+dc
+9a
+2a
+65
+67
+f7
+dc
+c3
+b2
+ca
+93
+eb
+66
+f6
+fd
+fe
+96
+0d
+b9
+88
+62
+50
 83
-c6
-c0
+9b
+bf
+6f
+31
+5b
+00
+f3
+0e
+9d
+81
+2b
+50
+d6
+a6
+9d
+89
+54
+3f
+6a
+da
+4e
+d8
+8b
+0d
+8b
+e7
+9b
+d7
+9e
 43
-01
+79
+d1
+10
+80
+28
+2c
+69
+6f
+bc
+c3
+e2
+fa
+41
+15
+1e
+02
+ad
+41
+02
 e6
-c0
 43
-83
-a4
-c0
-44
-03
-c4
-c0
-45
-03
-8e
-c0
-46
-02
-cf
-c0
-46
-83
-37
-c0
-47
-04
-29
-c0
-45
-82
-a8
-c0
+10
 48
+25
+59
+a1
+fa
+6f
+c6
+33
+f8
+39
+b9
+85
+d6
+a7
+67
+fd
+68
+19
+5d
+52
+3d
+72
+5f
+a3
+e8
+fe
+37
+89
+b1
+46
+9f
+f9
+8d
+47
 04
-8b
-c0
-4a
+a3
+4d
+53
+f3
+60
+37
+69
+d9
+c3
+e3
+35
+99
+7b
+13
 84
-56
-c0
-4b
-04
-74
-c0
+3d
+c8
+7f
+90
+c6
+b8
+22
+f7
+2f
+8d
+a5
+ce
+54
+3c
+ab
+b2
+7b
+f1
+ab
+57
+0f
+c6
+cf
 62
-82
-1d
-c0
-6d
-01
-24
-c0
-6e
-01
-34
+ad
+28
+c7
 20
+84
+6e
+88
+64
+3e
+17
+8c
+7a
+5f
+cf
+b4
+50
+59
+fd
+fc
+7c
+2e
+be
+a9
+50
+47
+fa
+af
+88
+b3
+9e
 20
-23
-5a
-c0
-0a
-01
-74
-c0
-0d
-01
-73
-c0
+17
+27
+1b
+77
+8d
+3f
+8e
+55
+0e
+40
+b6
+ad
+05
+c6
+f5
+65
+b1
+c8
+e9
+8f
+b5
 12
-81
-a3
-c0
-13
-01
-a8
-c0
-1c
-81
-ba
-c0
-1d
-01
-c0
-c0
+7d
+8c
+d3
+28
+0a
+0e
+cf
+ca
+6b
+79
+0a
+fa
+e7
+79
+f4
+05
 26
+9f
+91
+1b
+f7
+af
+0a
+c8
+d0
+bc
+62
+56
+d6
+be
+52
+46
+85
+ee
+94
+45
 81
+11
+a9
+45
+32
+49
+51
+72
+29
+2c
+f4
+10
+22
+f7
+79
+7e
+5c
+33
+2c
+ae
+4e
+4f
+49
+9f
+5c
+06
+ce
+63
+2a
+8c
+2b
+d9
+c9
+89
+db
+ba
+3c
+bf
+e8
+5d
+c5
+12
 be
-c0
-48
-02
-20
-c0
-4b
-04
-4a
-c0
-4d
-00
 ca
-c0
-4e
-80
-d1
-c0
+2a
+49
 4f
-82
-42
-c1
+5b
+ff
+dd
+ef
+d8
+a7
+9c
+ca
+ed
+ef
+d9
+34
 7f
-80
-00
-20
-20
-23
-5a
-20
-40
-75
-52
-20
-40
-74
+d2
 48
-20
-40
-2a
-45
-20
-40
-20
-2a
-20
-40
-42
-ad
-20
-40
-20
-18
-20
-40
-31
-0f
-20
+c7
+d9
+ee
+48
+f6
+98
+71
+25
+d3
+b2
+56
+d9
+83
 40
-24
+ed
+a2
+5c
+a3
+9c
+e3
+58
+9f
+cf
+bf
+e4
+27
+66
+b5
+fc
+25
+0e
 8c
-20
-20
-00
-31
-70
-89
-00
-00
-20
-20
-21
-53
-70
-8a
+c0
+b7
+76
+28
+16
+06
+bb
+51
+d6
 0f
-60
-70
-8a
-10
-aa
-70
-8a
-12
-7a
-70
-8a
-25
-00
-70
-8a
-26
-00
-20
-00
-00
-3c
-70
-8a
-20
-20
-70
-8a
-23
-f5
-70
-8a
-24
-12
-70
-8a
-24
-10
-20
-00
-00
+99
+1f
+22
+f4
+51
+d3
+87
+36
 3c
+42
 70
-8a
-12
-60
-70
-8a
-23
-dd
-20
-60
-00
-00
-70
-01
+9d
+0a
 bb
-00
-70
-01
-bc
-00
+f9
+f6
+71
+da
+86
+35
+21
+15
+a2
+c7
+1a
+3d
+31
+d1
+44
+ab
 37
-d9
-82
-00
-70
-89
-46
-0d
-70
-89
-6f
-10
-70
-8a
-06
-10
-70
-8a
-84
-4a
-70
-8a
 85
-40
-70
-8a
-16
-fe
-20
-40
+80
+0f
+97
 00
-91
-20
+3e
+b3
+e1
+59
+aa
+7e
+76
+9e
+9c
+19
+0a
+1d
+4d
+a7
+83
+e1
+80
+1f
+e6
+ae
+93
+7c
+d6
+1f
+be
+08
+c5
+d8
+52
+22
+eb
+8f
+7d
+92
+ea
 40
-70
-d7
-37
-d9
-82
-00
-70
-81
-3b
-5f
-37
-d9
+2c
+49
+75
+67
+a7
+54
+56
+64
+f6
+27
+8b
+66
+99
+d4
+28
+15
+90
+a0
+34
+9a
+e9
+f7
+04
+b3
+52
+f7
+b2
+92
+9e
+e7
 82
-00
-70
-81
-3c
-88
-37
+0d
+53
+29
+d6
+3a
+af
+39
+51
+8b
+f2
+b9
+ac
+4e
+cd
+f6
+9d
+59
+bb
+b6
+a5
+d7
+0b
+cb
+c5
+dc
+9f
 d9
-82
-00
-6f
-e0
-c0
-99
-c0
+77
+f9
+8b
 08
-00
-86
-6f
-e0
-c4
-38
-1f
-e1
-fe
-04
-67
-f0
-8a
-02
-70
-89
+8e
+f3
+1b
 0f
-01
-70
-8a
-80
-24
-70
-8a
-81
-62
-58
-e6
-12
-12
-67
-f1
-8a
-73
-70
-8a
+f8
+96
+07
+79
+c1
+66
+d9
+2e
+1e
+89
+06
+9f
+cc
+3a
+13
+a0
+fb
+8d
+44
+c4
+f6
+34
+d1
 86
-60
-70
-8a
-8b
-3b
-20
-40
-00
-78
-70
-80
-43
-00
-70
 80
+c3
+66
+27
+a2
+51
+b6
 42
-05
-58
-55
-74
-74
-67
-f1
-89
-68
-70
-89
-60
-6e
-20
-40
-00
-f6
-20
-40
-01
-21
-20
-40
+d6
+62
+04
+bd
 00
-72
-70
-41
+e4
+02
+9c
+4b
+a6
+98
+2a
+be
+eb
 48
-0c
-20
-40
-6f
-4e
-20
-20
-01
-23
-20
-75
-80
-00
-37
+27
+b0
+1d
+d6
+62
+27
+f8
 d9
-82
-00
-6f
-e0
 c1
-1c
-67
-f0
+c3
+c5
+9f
 81
-3a
-37
-d9
-82
-00
-20
-60
-00
-00
-6f
-e0
-c0
-99
-c0
-0c
-00
-7e
-6f
-e0
-c4
-38
-1f
-e1
-fe
-06
-67
-f0
-8a
-02
-70
-8a
-05
-e0
-70
-8a
-00
-d8
-20
-00
-00
-3c
-70
-8a
-01
-a0
-70
-8a
-00
-df
-70
-8a
-01
+ca
+8e
+53
+29
+9b
+f4
+7f
+72
+b4
+1b
+8f
+5d
+6d
+de
+23
+91
+b9
+1b
+5a
+27
+9a
 fa
-20
-00
-00
-14
-70
-8a
-00
-9f
-20
-60
-00
-00
-6f
-e0
-c4
-38
-1f
-e1
-fe
-06
-67
-f0
-8a
+c2
+d5
+90
+cf
+6a
+93
+82
 02
-70
-89
+14
+1c
+0f
+dd
+88
+ae
 0f
-00
-70
-8a
-80
-23
-70
-8a
 81
-b0
-58
-e4
-09
-09
-67
-f1
-8a
-73
+2b
+c5
+ff
+88
 70
-8a
+f2
+a4
+22
+dd
+f3
+2e
+57
+bc
+be
+b3
+98
+06
+e0
+92
+2d
+d5
+62
+d2
+5e
+dd
+e8
+11
+90
+b9
+da
+3b
+22
+d9
+a9
+bb
+ee
+17
+39
+67
 76
-2a
-70
-89
-02
+1a
+01
+b7
+31
+aa
+49
+32
+dc
+11
+c8
+1e
+30
+b2
+f4
+9d
+a4
 04
-20
-20
-00
-64
-20
-35
-80
-b8
-6f
-e2
-02
-0d
-20
-7a
-00
-00
-37
-d9
-82
-00
-6f
-f0
-81
-36
-1f
-e1
-7e
-f0
-68
-48
-82
+a7
+23
 0d
-98
-41
-fe
-00
-67
-f0
-81
-36
-37
-d9
-82
-00
-6f
-f0
-81
-38
-1f
+13
 e1
 7e
-07
-68
-48
+24
+06
 82
-0e
-18
-49
-84
-00
+72
+ce
+79
+3b
+b6
+4f
+58
+c9
+bb
+71
+76
+3d
+83
 98
-41
-fe
-00
-67
-f0
-81
-38
-37
-d9
-82
-00
+90
+da
+a7
 6f
-f0
-8a
-cb
-1f
-e1
-7e
-f0
-68
-48
-82
-0f
-60
-48
-c1
-5b
-98
-41
-fe
-00
-67
-f0
-8a
-cb
-6f
-e0
-82
-10
-67
-e0
+c5
+8f
+89
+78
+28
+97
+4a
+fa
+9b
+c8
+40
+f6
+b6
+c2
+60
+23
+b7
+d2
+ae
+93
+55
+15
+4b
+50
 c1
-5c
-2f
-ef
-fe
-03
+09
+9d
+eb
+4d
+fb
 6f
-f0
-8a
-06
+db
+7d
+a3
+45
+fd
 79
-20
-fe
-07
+4e
+02
+b5
+c6
+87
+b3
+51
+01
+0b
+ac
+c5
+a8
+9f
+de
+50
+dd
+6d
+bc
+92
+99
+62
 67
-f0
-8a
-06
-6f
-e0
-82
-10
-1f
+cd
+08
 e1
-04
-07
-18
-52
-04
-00
-18
-43
-84
-00
-60
-48
-c4
-38
-6f
-f0
+6b
+35
+8d
+bb
+3d
+2d
+2c
+39
+0c
+94
+96
+36
+d8
+0c
+4b
 8a
-02
-1f
-e1
+05
+49
+f4
+29
+db
+83
+99
 7e
-1f
-98
-41
-fe
-00
-67
-f0
+40
+df
+ca
+54
+0c
+a4
+c4
+3c
+f3
+47
+f9
+b5
+58
+36
+0d
+87
+a4
+3e
+f7
+10
+76
 8a
-02
-20
-60
-00
-00
-6f
-e1
-41
-5b
-20
-7a
-00
+a4
+4b
+d9
+5d
 00
-67
+d0
+ce
+e5
+3f
+0c
 e1
-02
+65
+66
 0f
-20
-20
-00
-a2
-20
-40
-68
-6f
-20
-40
-21
-ba
-18
-00
-2a
-08
-18
-00
-2a
-00
-58
+6c
+3e
+d4
+17
+1a
+bf
+e8
+b0
+79
+cb
+62
+f7
+b1
+6d
+bb
+92
+7c
+bd
+16
+09
+06
+97
 0a
-aa
-da
-67
-f1
-8a
-0f
-70
+ac
 8a
-25
-40
+bb
+78
+ab
+19
+3b
 70
-8a
-26
-10
+79
+f0
+fe
+4e
+91
 20
-00
-00
-3c
-70
-8a
-01
-fb
-70
-8a
-25
-ff
-70
-8a
-26
-30
-70
-8a
-16
+40
+52
 fe
-20
-20
-21
-b4
-6f
-e0
-c7
+33
+ec
 93
-24
-7a
-00
-00
-20
-40
+ac
+07
+21
+aa
 00
-ce
-20
-20
-60
-fc
-6f
-e0
-c6
-55
-c1
-7f
+34
+cd
+5e
+6b
+b9
 80
-00
-20
+e2
 20
-5e
-78
-68
-48
-c6
-01
-6f
-e0
+11
+72
+63
+96
+23
+05
+1e
+5d
+33
 c6
-21
+6a
+d6
+95
+fd
+b0
+b5
+32
 98
-46
-7c
-00
-24
-21
-00
+b3
+77
+1a
+08
+0c
+f2
+fd
+d5
+30
+4a
+d1
+1a
+25
+9a
+1c
+e2
+d8
+de
+3d
+39
+3a
+f6
 d6
-20
-20
-36
-81
-6f
+22
+74
+56
+d3
+46
+86
+9d
+85
+a6
+ef
+5f
+c1
+94
+f4
+56
+6c
+17
+43
+8b
+f4
+d8
+8c
+67
+39
+f4
+50
+eb
 e2
-45
-8f
-68
-4a
-45
-e4
-98
+d9
+31
+8a
+5c
+e6
+bf
+c9
+d2
+b0
+f7
+d3
+6d
+49
+1c
+13
+d5
+c8
+28
+02
+73
+28
+91
+ff
+4d
+b1
+2f
+79
+e6
+fe
+85
+4e
+a6
+c3
+97
+d6
+55
+c6
+a7
+8c
+26
+52
 46
-7c
 00
-20
-22
-b2
-22
-20
-40
-02
+09
+41
 67
-20
-20
-36
-9b
-58
+d1
+71
+61
+f6
+32
+9f
+7a
+24
+d1
+1f
+d3
+79
+79
 0a
+e3
+af
+61
+99
+dd
+23
+83
+75
+e1
+53
+56
+ea
+e5
+20
+52
+81
+c6
+9a
+d8
+e5
 aa
-7e
-67
-f1
-8a
+b5
+61
+b4
+e1
+7b
+50
+6f
 0f
-20
-00
+66
+df
+ee
+ed
+1e
+99
+c3
+94
+c3
+50
+2f
+bf
 00
-3c
-70
-8a
-25
-00
-70
-8a
-26
-0d
-70
-8a
-16
-f6
-20
-20
-22
-03
-6f
-e0
-c1
-41
-c0
-03
-22
-25
-c0
-05
-00
-e9
-c0
-4f
-00
-f2
-c0
-55
-00
-ee
-20
-20
-22
-0e
-70
-8a
-14
-25
-58
-a9
-3f
-3f
-67
-f1
-8a
-60
-70
-8a
-63
-1f
-20
-60
-00
-00
-70
-8a
-14
-17
-6f
-e1
-ca
-08
-67
-f1
-8a
-60
-20
-20
-22
-1a
-70
-8a
-14
-17
-58
-25
-03
-00
-67
-f1
-8a
-60
-20
-20
-22
-1a
-20
-75
-80
-00
-20
-40
-21
-60
-d8
-40
-00
-27
-20
-40
-21
-6f
-20
-40
-21
-a6
-70
-8a
-25
-7f
-70
-8a
-30
-1a
-70
-8a
-31
-78
-70
-8a
-8f
-b2
-70
-8a
-c2
-00
-70
-8a
-c3
-00
-d8
-e0
-00
-06
-20
-40
-01
-13
-2a
-2f
-fe
-0d
-20
-40
-21
-1d
-2a
-4f
-fe
-0d
-20
-40
-21
-1e
-d8
-e0
-00
-05
-20
-40
-21
-1c
-20
-40
-21
-1e
-20
-40
-01
-13
-d8
-a0
-8a
-c2
-1a
-31
-fe
-00
-20
-40
-21
-17
-1a
-51
-fe
-00
-20
-40
-21
-17
-18
-e0
-8f
-ff
-20
-21
-01
-08
-20
-20
-21
-4f
-20
-00
-00
-3c
-58
-00
-0f
-00
-67
-f1
-09
-82
-58
-00
-0f
-f0
-67
-f1
-09
-84
-70
-89
-81
-09
-70
-89
-81
-03
-70
-89
-80
-06
-20
-00
-00
-3c
-da
-20
-00
-00
-da
-40
-00
-00
-df
-20
-00
-10
-d8
-c0
-0f
-00
-20
-20
-21
-2d
-20
-75
-80
-00
-20
-20
-22
-72
-20
-60
-00
-00
-20
-75
-80
-00
-70
-8a
-07
-77
-70
-8a
-08
-c9
-70
-8a
-0b
-01
-6f
-e0
-c4
-09
-67
-f0
-80
-cd
-20
-00
-0b
-b8
-20
-40
-01
-4c
-70
-8a
-08
-c1
-6a
-40
-c4
-19
-df
-20
-00
-08
-20
-40
-6f
-58
-6f
-e0
-c4
-19
-67
-e0
-c4
-33
-62
-40
-c4
-19
-20
-60
-00
-00
-20
-40
-01
-42
-6f
-f0
-8a
-09
-79
-3f
-fe
-07
-67
-f0
-8a
-09
-70
-8a
-07
-77
-70
-8a
-08
-c1
-70
-8a
-0b
-01
-20
-40
-6f
-90
-6f
-e0
-c4
-09
-67
-f0
-80
-cd
-20
-00
-0b
-b8
-20
-40
-01
-4c
-70
-80
-cd
-00
-20
-20
-6f
-a1
-6f
-f0
-80
-cc
-79
-20
-7e
-01
-67
-f0
-80
-cc
-6a
-40
-c4
-19
-6f
-e0
-c4
-33
-67
-e0
-c4
-19
-df
-20
-00
-08
-20
-40
-6f
-67
-62
-40
-c4
-19
-20
-60
-00
-00
-70
-80
-cc
-03
-6f
-f0
-81
-29
-c3
-02
-81
-4d
-68
-59
-01
-64
-60
-49
-44
-0a
-70
-80
-cc
-00
-20
-60
-00
-00
-70
-8a
-82
-11
-70
-8a
-8d
-12
-70
-8a
-8e
-0a
-6f
-e0
-c0
-99
-c0
-08
-01
-6c
-58
-00
-57
-62
-67
-f1
-09
-07
-70
-89
-01
-03
-70
-89
-30
-03
-c6
-16
-80
-00
-70
-89
-01
-01
-70
-8a
-82
-07
-70
-8a
-8d
-44
-70
-8a
-8e
-0a
-6f
-e0
-c0
-99
-c0
-08
-01
-69
-58
-00
-2b
-b1
-67
-f1
-09
-07
-c6
-97
-80
-00
-70
-89
-30
-24
-70
-89
-01
-05
-20
-60
-00
-00
-58
-00
-41
-89
-67
-f1
-09
-07
-20
-20
-01
-65
-58
-00
-83
-12
-67
-f1
-09
-07
-20
-20
-01
-5a
-6f
-e0
-cb
-f6
-da
-60
-01
-00
-9a
-60
-fe
-00
-20
-60
-00
-00
-20
-20
-01
-93
-20
-40
-01
-76
-20
-20
-25
-63
-6f
-e0
-cb
-f7
-20
-7a
-00
-00
-6f
-e0
-cb
-f8
-24
-7a
-00
-00
-68
-48
-cb
-f7
-6f
-e0
-cb
-f6
-98
-46
-7c
-00
-24
-41
-01
-6f
-98
-46
-7e
-00
-1f
-e6
-7c
-64
-20
-21
-01
-88
-6f
-e0
-cb
-f9
-1f
-e6
-7c
-14
-24
-41
-01
-86
-70
-4b
-f8
-01
-20
-60
-00
-00
-70
-4b
-fa
-01
-20
-20
-43
-1f
-68
-48
-81
-7f
-6f
-e0
-80
-4c
-1f
-e3
-7e
-00
-98
-42
-fe
-00
-2f
-ef
-fe
-02
-58
-00
-00
-00
-68
-48
-cb
-f9
-79
-20
-fe
-00
-98
-40
-84
-00
-60
-48
-cb
-f9
-20
-60
-00
-00
-6f
-e0
-80
-05
-1f
-e0
-fe
-01
-67
-e0
-80
-05
-24
-36
-81
-9a
-6f
-e0
-cb
-f6
-1f
-e0
-fe
-01
-67
-e0
-cb
-f6
-6f
-e0
-81
-68
-c3
-81
-80
-00
-79
-20
-7e
-03
-67
-e0
-81
-68
-6f
-e1
-42
-f5
-67
-e1
-01
-96
-58
-00
-00
-00
-67
-e2
-43
-1d
-20
-60
-00
-00
-20
-40
-28
-1c
-6a
-20
-80
-4d
-1a
-20
-a3
-fc
-24
-21
-26
-fa
-20
-20
-26
-8e
-09
-80
-00
-18
-1f
-ef
-7e
-00
-1f
-f1
-7e
-00
-e7
-e1
-80
-05
-78
-28
-7c
-00
-20
-40
-27
-0d
-20
-23
-26
-f6
-c5
-99
-26
-af
-6f
-e0
-80
-4d
-20
-3a
+44
+66
+dd
+fb
+cb
+02
+a3
 26
-af
-1f
-e0
-ff
-fc
-67
-e0
-80
-4d
-20
-40
-72
+0a
+3b
+d6
+33
+e6
+da
+6e
+51
 cb
-6f
-f0
-81
+5e
+ea
+59
+33
+ed
+1c
+18
+2a
+6c
+60
+b5
+32
+77
+79
+76
+13
+57
+2c
+7f
+90
+51
+0f
+57
+2e
+29
+1e
+ce
+ba
+87
+09
 08
-c3
-03
-a6
-fa
+97
+a5
+74
+47
+84
 18
-00
-70
-0c
-65
-e2
-01
-54
-20
-20
-26
-af
-6f
-e0
 c3
-34
-c1
-00
-00
-00
-c0
-01
-b0
+cd
+ee
+93
+8c
+32
 4a
-20
-20
-28
-e1
-79
-3f
-80
-30
-20
-20
-2a
 f6
-ef
-e1
-00
-06
-c0
-02
-01
-c3
-20
-20
-28
-eb
-ef
-e1
-80
-06
-67
-e1
-c3
-97
-c0
-05
-01
-c8
-c0
-09
-01
-d7
-20
-20
-2b
-96
-6f
-e4
-47
+3e
+a3
 13
+1b
+5e
+db
+7a
+3d
 c3
-1d
-ad
-19
-20
-40
-2d
-c7
-68
-49
-43
-98
-6f
-e0
-c3
-21
-c2
-81
-81
-d2
-6f
-e1
-43
-98
-c0
-18
-2e
+3d
+c6
+5c
+ec
+51
+87
+a9
+4d
+ab
 03
-68
-49
-43
-98
-20
-20
-2d
-1d
-6f
-e1
-43
-32
-98
-46
-7c
-00
-24
-22
-81
-ce
-24
+9c
+85
 34
-01
-ce
-20
-20
-2d
-46
-18
-c2
+28
+6c
+5b
+6d
+aa
+52
+2a
+74
+21
+8d
+88
+80
+4d
+f8
+50
+32
+ea
+8e
+60
+9e
+36
+69
+70
+d1
 22
-00
-6f
-e1
-43
-35
-1f
+56
+f7
+c0
+b9
+a8
+ea
+9f
+d8
+c6
+14
+24
+5f
 e0
-a5
-fd
-20
-40
-29
+2e
+9c
+a1
+be
+7b
+7a
+66
+27
+4b
+8d
+bf
+60
 29
-6f
-e0
-c7
-8f
+b1
+f7
+05
+0b
+91
+46
+9a
+5e
+f1
+7b
+90
+74
+62
+cc
+42
+d9
+6a
+46
+15
+8a
+5f
+bb
+d9
+e3
+96
+98
+9a
 c0
-7f
-ad
-ac
-6f
-e0
-c7
-95
-20
-3a
-2d
-ac
+1e
+fa
+e6
+6e
+39
+d6
+dd
+65
+92
+2a
+34
+59
+d4
+1b
+88
 6f
+6b
+62
+1e
+69
 e0
-c8
-43
-c2
-80
-ad
-ac
-58
-00
-00
-1a
-68
-49
-43
-98
+31
 98
+1e
 46
-7c
-00
-24
-22
-ad
-ac
-20
-20
-2d
+78
+e7
+a8
+9a
+98
+12
+0b
+09
+72
+9a
+8e
+07
+10
+f5
+78
+e8
+16
+d7
+14
+1f
+e9
+77
 46
-20
-40
-2a
-28
-24
-7a
-00
-00
-6f
-e0
-c7
-8f
-c0
-7f
-81
-f1
-6f
-e0
+5f
+5c
+68
+45
+cd
+29
+87
+2f
+42
+4d
+39
+be
+d2
+83
+0a
+a2
+32
 c8
-43
-1f
-e1
-7e
-03
-c1
-81
-80
-00
-6f
-e0
-cb
-f8
-20
-7a
-00
-00
-6f
-e0
-cb
-fa
-24
+3f
+94
+2a
+cf
 7a
-00
-00
-6f
-e0
-c9
-56
-20
-5a
-5a
-71
-6f
-e4
-47
-13
-c2
-80
-db
-5b
-c2
-80
-5b
-5b
-c2
-82
-db
-5b
-c2
-83
-5b
-5b
-20
-40
+21
+91
+14
+fc
+17
+f3
 56
-01
-20
-40
-5a
-b2
-24
-74
-00
-00
-20
-40
-5a
-bc
-20
+cc
+54
+e7
+76
+60
+6d
+7e
+26
+79
+9f
+0b
+db
 40
-04
-80
-20
-20
-5b
-37
+e6
+54
+32
+a2
+e4
+66
+36
+95
+22
+0d
+41
+82
+32
+96
+a9
+32
+b6
+a2
+99
+39
+ee
+dc
+fb
+a2
+84
+06
 6f
+b3
+ba
+94
+9d
+68
+7c
+71
+84
+eb
+d7
+4b
+25
+7c
+9c
+12
+e7
+c4
+fd
+e0
+4a
+bb
+1d
+a5
+ce
 e1
+e0
+70
+48
+0f
+25
+6e
+e8
+85
+c1
+96
+53
+2f
+66
+86
+19
+25
+f7
+ee
+2b
 43
+ff
+f9
 e9
-20
-40
-7d
-79
-6f
-e2
-40
-ad
-98
-40
-fe
-00
-67
-e2
-40
-ad
-20
-40
-02
-05
-20
-20
-24
-25
-60
-04
-40
-e7
-d8
+cf
+3e
+0c
+0e
+56
+7e
+2a
+5e
+91
+6d
+50
+64
+a3
+9f
+ee
+b1
+a5
+86
+84
+fc
+fc
+50
+3e
+59
+52
+e5
 c0
-80
-70
-d8
+e9
+4f
+0a
+9e
+d9
+08
+d4
+ac
+0a
+c0
+1f
+46
+dc
+b0
+32
+4d
+66
+bd
+72
+3d
+d4
+52
+22
+84
+b9
+0b
+dd
+ed
+0f
+4f
 a0
-40
-cc
-20
-40
-7c
+c4
+b2
+c5
+db
 8f
-d8
-c0
-80
+0e
+f2
+5f
+e8
+20
+46
+fe
+a0
+7e
+99
 d4
+74
+93
+7f
+13
+7d
 20
-40
-7c
-89
+ff
+59
+63
+85
+9d
+0c
+2e
+cd
+6a
+14
+0c
+06
+b6
+35
+a1
+73
+d0
+44
+3c
+ec
+63
+e4
+c2
+bb
+c8
+c4
+3d
+2b
+c1
+32
+ae
 6f
-f0
-80
-80
-67
-e0
-c0
-ef
-18
-42
+c6
+38
 24
-00
-df
-20
-00
-0c
-da
-20
-00
-16
-da
-60
-81
-4d
+18
+a3
+96
+c1
+b7
+cd
+08
+db
+65
 37
+b1
+9b
 d9
-82
+7f
+9c
+c9
+ed
+c3
 00
-ef
-e0
-80
-11
-e8
-40
-80
+e4
+f1
 13
-98
+82
+0a
+5b
+5c
+b5
+b8
+a1
 46
+35
+26
 7c
-00
+d7
+8e
+14
+47
 20
-22
+6b
+d0
+b5
+a0
+46
+f0
+8d
 82
+16
+63
+35
+3a
+f3
+3c
+aa
+4b
+03
+7a
+8f
+df
+a3
+2b
+de
+7b
+11
+fc
+cf
+c6
+8b
+e4
+a3
+c5
+6b
+1e
+70
 18
-e7
+6e
+07
+24
+92
+5c
+b9
+1d
+4a
+f8
+65
+64
+c7
+8b
+11
+a5
+7f
+26
+8e
+f2
+35
+39
+f4
+fe
+72
+52
+69
+34
+ee
+33
+b7
+d9
 e0
-80
-13
-37
+ce
+35
+d3
+0e
+f4
+e8
+63
+72
 d9
-82
-00
-1a
-20
-a2
-01
-1a
-60
-a6
+11
+9b
+78
+52
+c3
+36
+ae
+e5
+3a
+bd
+de
+02
+87
+da
+76
+ed
+46
+3a
+46
+7f
+ce
+12
+02
+88
+39
+21
+9c
+1e
+71
+cb
+8a
+7e
+68
+87
+50
+b5
+e8
+0e
+3e
+5d
+f6
+9d
+d1
+2b
+ee
+2d
+9b
+ba
 01
-c2
-00
+e4
+a2
+af
+ee
+61
+12
+28
+97
 02
+6d
+85
+60
+94
+e8
+eb
 12
-1a
-42
+bd
+14
+73
+cb
+43
+59
+47
+cf
+0c
 04
-00
-20
-60
-00
-00
-20
-40
-6b
-3a
-20
-40
-6b
-75
-20
-20
-6b
+2b
+ad
+74
+68
+29
+3d
+df
 38
-6f
-e1
-45
-e0
-d8
-40
-01
-f8
-98
-41
-7e
-00
-20
-3a
-02
-28
-6f
-e1
+2b
+62
+07
+d6
+c1
+0d
+8c
+d6
+60
+30
+de
+c4
+c5
+ac
+a3
+e5
+eb
+f9
+61
+4f
+07
 45
-e0
-1f
-e0
-fe
+f5
+a4
+fc
+b4
+22
+87
+d2
+12
+2e
+6b
+3a
+85
+c0
+d3
+c6
+48
+14
 01
-67
-e1
-45
-e0
-20
-60
-00
-00
-20
-40
-35
-7f
-20
-40
-36
+69
+a9
 51
-24
-2c
-35
-86
-24
+d5
+a2
+a6
+a4
 37
-b5
-86
-20
-40
-36
-6e
-6f
-e0
-c5
-7d
-20
-3a
 02
-37
-6f
-e2
-45
-cc
-68
-4a
-45
-8f
-98
-46
-7c
-00
-20
-22
-82
-34
-20
-20
-35
-6e
-6f
-e4
-47
-13
-c2
-98
-32
-91
-20
-20
-35
-49
-6f
-e2
-45
+57
 5f
-20
-7a
-00
-00
-20
-20
-02
-2f
-20
-40
-54
-3b
-20
 40
-02
-3d
-20
-20
+a3
+8c
+71
 54
-4c
-58
-00
-4a
-1d
+89
+3e
+a5
+9e
+e8
+b1
+03
+a8
+7d
+69
+87
+5f
+9d
 67
-e1
-43
-3f
+46
+e5
 58
-00
-00
-20
-67
-e1
-43
-41
-20
-60
-00
-00
-6f
+3f
+22
+3d
+bd
+fb
+d0
+74
+5a
+f7
+bc
+01
+74
+13
 e0
-c4
-37
-24
+26
+83
+a6
+a0
+3f
+ba
+18
+69
+13
+99
+ae
+a8
+d0
+26
+69
+90
+04
+c0
+c0
+25
+fe
+e5
+09
+51
+62
+2f
+5b
+f2
+bf
+63
+a8
+0c
+4c
 7a
+4b
+f9
+35
+c8
+d7
+63
 00
+7c
+07
+ed
+33
+2c
+94
+08
+a9
+0b
+d2
+27
+ad
+72
+26
+29
+e8
+ee
+d1
+22
+2f
+4d
+07
+9a
+f2
+5a
+1a
+8f
+9a
+fc
+2c
+e4
+88
+e8
+eb
+d9
+04
+45
 00
-6f
-e1
-44
+86
+dd
+51
+72
+68
+f0
+50
+46
+70
+bc
 e9
+05
+81
+f6
+f6
+23
 c3
-85
-80
-00
-6a
-21
-45
-f0
-20
-40
-35
-b4
+41
+3c
+1e
+0c
+33
+39
+17
+c3
+49
 60
-48
-c6
-24
-6f
-e0
-c6
-29
-c5
-13
-02
-4c
-6f
-e0
+91
+cf
+ea
+ca
+e9
+cd
+06
+53
 c6
-2c
-98
-46
-7c
-00
-24
-21
-02
-66
+5a
+b3
+4b
+f1
+4d
+65
 6f
-e0
-c6
-26
-1f
+43
+ba
+e2
+49
+92
+a9
+83
+23
+b6
+fe
 e6
-7c
-02
-24
-21
-02
-54
-6f
-e0
+8c
+2a
+2b
+fb
+80
+d6
+3e
 c6
-26
-c0
-00
-02
-67
-20
-60
-00
-00
 6f
-e0
-c6
-26
-68
-48
-c6
-27
-98
-46
-7c
-00
-24
+54
+30
+e2
+10
+a9
+58
+55
+c3
+bf
 62
-80
-00
-70
-46
-26
-00
+9c
+5b
+28
+52
+eb
+d1
+cf
+1e
+0e
 68
-48
-c6
-24
-6f
-e0
-c6
+b9
 28
+40
+7f
+6c
+9d
+06
+ce
+26
+e7
+7e
+3b
+77
+f7
+ad
+91
+75
+e4
+bb
+3b
+88
+7b
+6d
 c5
-13
+44
+f1
+b1
+28
+eb
+ef
+b1
+41
+ba
+74
+80
+c9
+e6
+39
+22
+52
+b9
+10
+10
+76
+65
+34
+84
+6e
+c2
+d6
+7d
+4d
 02
-5d
-6f
-e0
-c6
-2b
-98
-46
-7c
-00
-24
+dc
+12
+de
+b1
+4c
+73
+b9
+e2
+2a
+ca
+51
+e7
+b1
+ed
+d9
+34
 61
-00
-00
-6f
-e0
-c6
-25
-c0
-00
-37
-15
-1f
-e0
-ff
-ff
-67
-e0
-c6
-25
-c0
-01
-02
-6f
+7a
 c0
-00
-b7
-0b
-20
-20
-37
-15
-70
-46
-26
-00
-6f
+eb
+ef
+54
+54
+a2
+8e
+9c
+40
+f4
+71
+30
+1b
+81
+b5
 e0
-c6
-25
-c0
-01
-82
-6d
+91
+57
+cd
+24
+55
+f2
+4a
+6b
+44
+61
+d5
+d8
+cf
+aa
+4e
+83
 1f
-e0
-fe
-01
-67
-e0
-c6
-25
-c0
-00
-b7
-0b
-c0
-01
-02
-6f
-70
-41
-41
-05
-20
-60
-00
-00
+0c
+38
+0e
+97
+9a
+ec
+46
+33
+68
+3b
+55
+c4
+3d
+5a
+6b
+99
+1c
+7e
+0e
+6b
+9d
+83
+2a
+47
 70
-41
-41
-03
-20
+57
+d6
+10
+22
+c5
+56
+61
+0d
 60
-00
-00
-58
-00
-62
-35
+fc
+3b
+1d
+77
 67
-e1
-45
+9b
 f8
-58
-00
-02
-7b
-67
-e1
-45
-fa
-58
-00
-02
-90
-67
-e1
-43
-e9
-20
-20
-53
-f3
-20
-80
-00
-00
-20
-55
-e0
-04
-20
-20
-20
-03
-20
-40
+49
+2c
+28
+f4
+0d
+d3
+15
+10
+8b
+62
+74
+71
 36
-b4
+13
+8a
+d8
+fa
+e5
+4d
 24
-74
-00
+62
 00
-70
+42
+4e
+8a
+37
+95
+14
+c7
+b9
+3d
+bf
+33
+ae
+d2
+76
+58
+50
+24
+e7
+7f
+2f
+1e
+8b
+d3
+d0
 47
-7c
-01
-20
+c4
 40
-36
-be
-70
-47
+ad
+4e
+2b
+8e
 72
-00
-20
-40
-62
-aa
-6f
-e0
-c7
-3f
+5e
+97
+db
+3b
+d6
+f7
+27
+e9
+2b
 24
-5a
-54
-dc
-20
-40
 02
-86
-6f
+96
+92
+9d
+06
+66
+a9
+1c
+47
+d7
+11
+4a
+45
+48
+ad
+7a
+bb
+62
+da
+25
+b2
+f4
+b5
+d3
+45
+21
+38
+71
+05
+7b
+53
+6a
+12
+97
+b8
+0e
+82
+32
+38
+07
+83
+93
+4c
+56
+54
+1e
+01
+6e
+8f
+cf
+62
+58
+8f
+69
 e2
-45
-af
-20
-20
+b7
+81
+0d
+d8
+f4
+13
+ec
+59
+e4
+ea
+d2
+78
+17
+e4
+46
+0f
+fd
+a8
+0e
+7f
+ee
+b3
+3c
+65
+2a
+ab
+0f
+ac
+18
+95
+2c
+d5
 36
-22
-6f
-e0
+07
+4c
+9c
+fb
+86
+81
+18
+17
+f7
+0c
+80
+67
+d9
+3d
+0e
+68
+6e
+9c
+fe
+2f
+0e
+d1
+65
 c7
-3f
-24
+45
 7a
-00
-00
-68
-48
-c6
-4a
-20
-40
-6f
-0f
-68
-48
-c6
+96
+dd
+05
+16
+7b
 4a
-20
-40
-6e
-c6
-68
+e6
+4e
+31
+65
+07
+79
+2e
+97
+2d
+8e
+bf
+b7
+b8
+bd
+d4
+15
+bb
+c4
+e3
+45
 48
-c6
+18
+08
+3f
+e0
+f2
+cb
+2b
+9c
+bc
+0c
+3f
+df
+7a
+7b
+5e
+99
+bd
+7d
+70
 4b
+95
+91
+f6
+37
+97
+a9
+fc
+d5
+84
+bf
+88
+7a
+5b
+d3
+93
+aa
+fe
+b5
 20
-40
-6f
+78
+67
+f0
+fc
+db
+b6
 0f
-68
-48
-c6
-4b
-20
-20
+4d
+5c
+d2
+3b
+be
+2e
+1b
+c7
+aa
+29
+a8
+47
 6e
+8c
+c1
+fd
+a5
+d0
+4e
+8b
+2f
+86
+1e
+c9
+56
+f7
+70
+56
+a6
+04
+57
+7f
+46
+bb
+eb
+06
+d2
+61
+69
+f4
+ac
+da
+69
+62
+e5
+0e
+11
+41
+8b
+2d
+89
+da
+9a
+7f
+05
+0d
+da
+69
+ee
+ff
+5b
+9d
+d5
+d2
+b9
+ee
+d9
+95
+c4
+e5
+87
+df
+bd
+57
+32
 c6
+8f
+b5
+33
+19
+a1
+d7
+1d
+cd
+7b
+dc
+b0
+4c
+58
+69
+be
+e7
+12
+e3
+46
+93
+35
 20
-60
-00
+d4
+1a
+b1
+8f
+0f
+24
+0b
 00
-20
-40
-04
-23
-6f
+b5
+7a
+95
+e1
+53
+50
+3f
+5f
+ee
+ba
+1d
 e4
-47
-13
-c2
-89
-dd
-60
-c2
-89
-5d
-6e
-c2
-8a
-02
-97
-20
-60
+76
 00
+ab
+e2
+6a
+22
+fe
+38
+1e
+41
+d2
+bf
 00
-20
-40
-02
-a2
-20
-40
-5e
-43
-20
-40
+83
+9b
+25
+5b
+24
+4f
+7d
+7f
+41
+df
+21
 5d
-b4
-20
-40
-02
-b6
-20
-40
-02
-9f
-20
-40
-02
-a5
-20
-40
+c4
+39
+04
+f4
+f2
+88
+07
+c7
+b9
+31
+d4
+16
+bc
+1a
 02
-be
-20
-20
-5d
-aa
-6f
-e4
-47
-13
+a6
+a7
+a2
+2c
+52
+ec
 c4
-15
-00
-00
-20
-40
+46
 04
-8b
-6f
-e0
-c6
-66
-67
-e0
-ca
-06
-20
-60
-00
-00
-6f
-e4
-47
-13
-c2
-9f
-5d
-d1
-20
-20
+ba
+54
+d3
+3f
+7a
+8f
+fa
+3b
+63
+bc
+fe
+11
+38
+3c
 5d
-cc
-6f
+25
+b9
+08
+72
+4b
+8d
+fc
+64
 e1
+ab
+3f
+c3
+da
+da
+f1
+41
+94
+ec
+8a
+10
+a6
+9b
+03
+d2
+05
+21
+a0
+20
+3f
+9c
+b3
+9a
+86
+db
+92
+b0
+ef
+92
+bf
+1e
+1c
+c6
+5b
+37
+2f
+01
+39
+df
 46
-8e
-d8
-40
+94
+db
+b4
+d5
+9e
+89
+82
 aa
-55
-98
-46
-7c
+e1
+3a
+ad
+b4
+52
+04
 00
-20
-22
-83
-2b
+80
+b7
+eb
+9a
+2e
+38
+85
+5e
+f3
+0b
+d6
+f5
+10
+07
+14
+3b
+a8
+58
+84
+e4
+62
+62
+23
+3f
+de
+b8
 60
-49
-46
-8e
+16
+9e
+30
+1c
+2e
+94
+6c
+5e
+9e
+1d
+9f
+4b
+0a
+c7
+d2
+8f
+b2
+7e
+8b
+bc
+85
+92
+9c
+86
+81
+6e
+3b
+e3
+a0
+f7
+15
+10
+17
+0f
+61
+cd
+54
 20
-40
+e3
+a9
+ae
+bc
+58
+99
+3b
+b4
+1b
+97
+37
+7f
+70
+7c
+cb
+b9
+da
 5c
-9c
-6f
-e0
-c9
-a1
-67
-e0
-c6
+36
+2a
+b5
+97
+32
+a6
+bb
+bf
+3c
+cf
+fa
+ea
 66
+59
+84
+b9
+24
+f1
+45
+b7
 20
-40
-5c
-8c
-58
-00
-11
-22
+f4
+07
+2a
+b9
+fb
+e6
+1e
+a2
+84
+db
+18
+84
 67
-e1
-46
-95
+52
+e5
+11
+eb
+ef
+2a
+9b
+ea
+38
+db
+54
+fc
+0e
+ca
+93
+4c
+74
+1d
+53
+b7
+52
+85
+6d
+24
+ac
+dd
+38
+58
+bc
+ba
+05
+56
+ef
+48
+27
 6f
+de
+ce
+46
+9e
+2d
+1e
+88
+39
+0e
+e6
+4f
 e0
+0f
+72
+f1
+83
+59
+c8
+b9
+62
 ca
-06
-67
-e0
-c6
-66
-20
-60
-00
+90
+0e
+a8
+b5
+7a
+b0
+ab
+b6
+d8
+21
+e3
+98
 00
-6f
+d3
 e0
+87
+19
 c6
-66
-1f
-e6
-7c
-00
-20
-22
-82
-b3
-1f
-e6
-7c
-04
-20
-22
-82
-bc
-20
-61
-00
-00
+28
+a5
+24
+34
+d7
+0a
+5c
+e4
+15
+2f
+c3
+f6
+42
+c8
+50
+ae
+3b
+ae
+cc
+c0
+bb
+50
+68
+95
+f9
+44
+69
+8f
 70
-46
-66
-00
-20
-60
-00
-00
+cf
+c5
+bc
+6d
+39
+c5
+ad
+f3
+2a
+ae
+34
+5f
+56
+ac
+be
+b3
+b8
+c2
+d1
+dc
+f6
+24
+9a
+df
+3d
 6f
-e0
-c6
-66
-c1
-00
-00
-00
-6a
-41
-49
-fe
-1a
 42
-26
-00
-20
-40
-5e
+b7
+89
+83
+2d
+cf
+8b
+4f
+ad
+1a
+e4
+d2
+fe
+7e
+be
+1e
+fa
+95
+be
+70
+35
+d6
+6b
+1d
+e7
+a9
+8c
+82
 3d
-6f
-e1
-49
-e0
-20
-3a
-02
-cc
-67
-e1
-49
+d0
+e8
+ba
+a6
+0a
+86
+6e
+fb
+89
+2b
+ba
+dd
+ba
+88
+1f
+df
+36
+c2
+e4
+52
+ef
+91
+78
+91
+0e
+4d
+5d
 de
-1a
+94
+91
+87
+e1
+6a
+f0
+d3
+1d
+03
+76
+79
+f6
+15
+6b
+64
+76
 60
-a6
-02
-6f
+de
+17
+d6
+be
+17
+06
+4c
+83
+f2
+28
+31
+4f
+82
+83
 e1
-4a
-00
-9a
-66
-7c
-00
-24
+c0
+68
+1b
 21
-02
-cc
-1a
-62
-24
-00
-20
-20
-02
 c2
+37
+62
+8c
+a4
+ec
+47
+38
+26
+91
+79
+a3
+c0
+68
+2a
+2e
 6f
-e1
+39
+91
+1f
+75
+39
+ae
+d5
+10
+ba
+bc
+62
+21
 49
-de
-67
-e1
-46
+71
+6e
+88
+5b
+ae
+3c
+27
+bb
+1c
+b8
+86
 95
-20
-60
-00
-00
-6f
-e4
-47
-13
-c2
-89
-dc
+7c
 b1
-c2
-89
-5c
-b9
-c2
+19
+ec
+80
+a8
+97
+78
+5f
+d2
+cd
+9c
+0d
+e0
+23
+fc
+be
+ff
+95
+a2
+e3
+dc
+99
+25
+c1
+a0
+f9
+92
+aa
+2b
+91
+09
+2d
+fb
+38
+41
+df
+21
+45
+ae
+b7
+36
+87
+88
+f8
+e2
+ee
+3f
+b8
+7e
+d5
+ad
+0f
+e5
+16
+df
+76
+99
+a5
+38
+bc
+d0
+23
+31
+0c
+e5
+f4
+72
+80
+a9
+05
 8a
+53
+eb
+4f
 02
-d4
-20
-60
-00
-00
-20
-40
-02
-d7
-20
-40
-02
-dc
-20
-20
-5c
-c1
-6f
-e0
-c6
-66
-c1
-00
-00
-00
-c0
-00
-83
-03
 c0
-01
-03
-17
-20
-60
-00
-00
-6a
+ae
+34
+07
+29
+f0
+be
+1c
+e4
+1d
+2a
+c7
+93
+19
+27
 41
-49
-e2
-1a
-42
-26
-00
-20
-40
-5d
-c0
-6f
-e0
-c9
-a1
-20
-3a
-02
-e8
-67
+ba
+c3
+5b
+37
+c1
 e0
-c9
-a0
-1a
-60
-a6
-01
-6f
-e1
+d5
+dc
+68
+da
+cc
+c2
+f7
+b5
+cc
+2b
+2f
+b7
+15
+cb
+5b
+ac
+0d
+55
 49
-e4
-9a
-66
-7c
-00
-24
+ec
+97
+ed
+52
+9f
+fd
+fa
+98
 61
+f3
+88
+7d
+3c
+cf
+fa
+88
+0c
+29
+ff
 00
-00
-1a
-62
-24
-00
-20
-20
-02
-de
-6f
+64
+08
+3f
+58
+8e
+e7
+14
+b9
+37
+29
+95
+bf
+8e
+fc
+ef
+65
+df
+94
+cb
+08
+1b
 e0
-c9
-a0
-1f
-e1
-7e
+83
+fc
+fa
+4e
+60
+c7
+8b
+50
+60
+04
+bf
+05
+5e
+48
+ba
+ed
+bb
+b2
+31
+fc
+59
+97
+a8
+92
+af
+b8
+e6
+4f
+2a
+18
+07
+05
+19
+cf
+6c
+19
 f0
-20
-3a
-02
-f2
-6f
-e0
-c6
-66
-20
-40
-03
-00
+68
+18
+81
+85
+4d
+06
+44
+9e
+52
+ed
+e1
+22
+8f
+98
+d0
+8a
+d0
+e7
+44
+38
+ae
+ac
+97
+7f
+48
+f6
+60
+44
+d5
+53
+bd
+e9
+0c
+9c
+73
+91
+79
+94
+d8
+f9
+04
+94
+87
+d9
+a4
+2a
+a6
+d6
+fc
+9d
+9b
+de
+e2
+f6
+04
+64
+e5
+e7
+34
+d4
+8a
+08
+1d
+6c
+92
 67
-e0
-c9
-a2
-df
-20
-00
-01
-1a
-62
-24
+41
+16
+7a
+e5
+eb
+34
+3b
+f7
+8c
+f0
+0a
+8f
 00
-da
-20
-49
-a2
-20
-20
-6b
-45
+ed
+22
+60
+c7
+75
+9e
+4b
+ec
+ec
+6f
+c2
+de
 68
-48
-c9
-a0
+bd
 6f
-e0
-c6
-66
-20
-40
-03
-00
-98
-46
-7c
-00
-20
-62
-80
-00
-1f
-f2
-7e
-00
-98
-40
-fe
-00
+78
+12
+0d
 67
-e0
-c9
-a2
-1a
-62
-7e
-00
-68
-49
-49
-e2
-98
-46
-7c
+14
+a8
+c6
 00
-20
-22
-82
-ee
-1a
-60
+0b
+f0
+e9
 a7
-ff
-20
-20
-02
-ee
-c1
-80
-00
-00
+57
+e7
+6d
+a8
+cf
+d5
+8f
+72
+86
+98
+21
 1f
-e0
-fe
-04
-20
-60
-00
-00
-6a
-41
-49
-ee
-1a
-42
-26
-00
-20
-40
+dd
 5d
-f3
-6f
-e3
-49
+cf
+58
+10
+f5
+6c
+19
 b5
-20
-3a
-03
-0f
-67
-e3
-49
-af
-1a
-60
-a6
-06
-6f
-e1
-49
-f0
-9a
-66
-7c
-00
-24
-61
-00
-00
-1a
-62
-24
-00
-20
-20
-03
+a5
+c2
 05
-6f
-e3
-49
-af
-68
-4b
-46
-6e
-98
-46
-7c
-00
-20
-62
-80
-00
-df
-20
-00
-06
-da
-20
+9c
+aa
+37
+d4
+43
+0f
 46
-6e
-1a
-62
-24
-00
-20
-20
-6b
-45
-6a
-41
-49
-f6
-1a
-42
-26
-00
-20
-40
-5e
-17
-6f
-e3
-49
+ec
+5a
+1e
+72
+fd
+b0
+ef
+eb
+f4
+d9
 cd
-20
-3a
-03
-23
+3f
+e7
 67
-e3
-49
-c7
-1a
-60
+8e
 a6
+85
+41
+f2
+c3
+22
+23
+cc
+47
+22
+68
+ee
+59
+70
+5d
+f7
+22
+d2
 06
-6f
+30
+bf
+da
+04
+e6
+7b
+80
 e1
-49
-f8
+b8
+fe
+d0
+2d
+bc
+5a
+a2
+6a
+70
+a6
+16
+cd
+fd
+b0
+b8
+7d
+fb
+33
+e8
+51
+15
+53
+15
+29
+9d
+a9
+22
+e8
 9a
-66
-7c
-00
-24
+d9
+fe
 61
-00
-00
-1a
-62
-24
-00
-20
-20
-03
-19
-6f
-e3
-49
-c7
-68
-4b
-46
-7b
-98
-46
-7c
-00
-20
-62
-80
-00
-df
-20
-00
-06
-da
-20
-46
+ed
+e7
+60
+53
+e9
+b2
+30
 7b
+22
 1a
+17
+27
 62
-24
-00
-20
-20
-6b
-45
-20
-40
-03
-64
-20
-40
-03
-7c
-20
-40
-03
-2f
-20
-20
-5c
+4b
+72
+a2
+74
+d5
+a9
+76
+b6
 90
-6f
-e4
-47
-13
-c4
-07
+d1
+d7
+50
+3e
+1f
+7e
+10
 80
-00
-6f
-e0
-c6
-90
+96
+dc
+c4
+aa
+da
+1c
+4c
+b6
+d9
+4d
+63
+7d
+6a
+2d
+ce
+29
+1d
+36
+cf
+7f
+ae
+91
+b3
+d0
+74
+be
 c0
-00
-5c
+a3
+bc
+f8
+18
+19
+9b
+97
+da
+c8
+e6
+a9
+4b
+f2
+ad
+88
+b8
+b7
+1f
+f8
+83
+8e
+7f
+59
+db
 94
-c0
-03
-03
-35
-20
-60
-00
-00
-70
-46
-90
-00
-20
-60
-00
-00
-6f
-e4
+29
+af
 47
-13
-c2
-89
-dc
-b5
-c2
-8a
-03
+a9
+97
+02
+14
+78
+6a
+1c
+97
+f1
+dd
+36
+fc
+7f
+cb
+99
+71
+28
+68
+a0
 3b
-20
-60
-00
-00
-6f
+f7
+15
 e4
-47
-13
-c4
-07
-80
-00
-6a
-41
-49
-fa
-1a
-42
-26
-00
-20
-40
-5e
-51
-6f
-e0
-c9
-d4
-20
-3a
-03
+ff
 49
-67
-e0
-c9
-d3
-1a
-60
-a6
+74
+a1
+7b
+8e
+d2
+aa
+a0
+32
 01
-6f
-e1
-49
 fc
-9a
+4e
+64
+b2
+be
+8b
+19
+f0
+e5
+6e
+a2
+48
+a2
+8c
+04
+04
+7b
+fc
+bb
+2a
+b9
+73
+ff
+28
+c7
+e1
+de
+18
+ac
+f7
+87
 66
-7c
-00
-24
-61
-00
-00
-1a
-62
-24
 00
-20
-20
-03
-3f
-6f
-e0
-c9
-d3
-1f
+40
+1e
+39
+c4
+33
+fb
+2e
+ff
+2e
+56
+cd
+05
+f8
+cf
+93
+aa
+08
+42
+81
+0b
+fe
+89
+c1
+31
+94
+e8
+78
+9b
+1e
+50
 e1
-7e
-f0
-20
+e5
+8a
+c0
+00
+32
+2c
+aa
+36
+42
+bd
+cc
+5e
+7a
+ed
+5a
 3a
+fa
+ae
+cd
+9d
+da
+92
+7c
 03
-53
-6f
-e0
-c6
-90
-20
-40
+1b
+7a
+b5
+54
 03
-61
-67
-e0
-c9
-d5
-df
-20
-00
-01
-1a
-62
-24
-00
-da
-20
 49
-d5
-20
-20
-6b
-45
-68
-48
-c9
-d3
-6f
-e0
-c6
-90
-20
-40
-03
-61
-98
-46
-7c
-00
-20
-62
 80
-00
-1f
-f2
-7e
-00
-98
-40
-fe
-00
-67
-e0
-c9
+b4
+2d
+1d
+25
+e1
+f4
+ea
+18
+34
+4a
+8d
+9f
+a7
+ed
+1b
+82
+7f
+b2
+54
+13
+ed
+f9
+be
+14
+b6
+89
+73
+14
+51
+86
+28
+4d
+6e
+ac
+1e
+a0
+94
+d7
 d5
-1a
-62
-7e
+75
+32
+7a
+c7
+e5
+9c
+88
+4b
+ad
+09
+bb
+32
+c1
+6b
+6b
+c3
+b4
+57
+14
+8d
+22
 00
+27
+f4
+45
+89
+de
+69
+eb
+19
+16
+76
+63
+d6
+d7
+4c
 68
-49
-49
+da
+cc
+54
+7e
+4c
 fa
-98
-46
-7c
-00
-20
-22
-83
-4f
-1a
-60
-a7
-ff
-20
-20
-03
-4f
-c1
-80
-00
-00
-1f
-e0
-fe
-06
+5f
+4d
+be
+df
+59
+47
+cd
+3f
+fd
+34
+fa
+3e
+34
+f3
+a4
+a2
+77
+d2
+f0
+fc
+da
+2f
+b6
+93
+da
 20
+01
+f2
+5b
+e2
+30
+85
+a1
+45
+9d
+ac
+d5
+94
+34
+db
+cc
+f3
+8a
+ae
+7f
+5d
 60
-00
-00
-6f
-e4
+9f
+b1
+99
+26
+a5
+24
+3c
+27
+f1
 47
+86
+59
+24
+f2
+7b
+90
+d5
+9d
+c8
+63
+1c
+31
+45
+31
+d5
+65
 13
-c2
 9f
-03
-6b
+ee
+8a
+d7
+30
+11
+21
+c7
+0d
+d1
+41
 6f
-e0
-c6
-66
-c1
-00
-00
-00
-c0
-00
-83
-6b
-c0
-01
-03
-72
-20
-60
-00
-00
+ff
+8a
+e1
+1a
+cf
+e8
+4c
+14
+51
+3d
+fe
+f8
+1d
+4a
+31
 6f
-e3
-46
-6e
-68
-4b
-46
-e6
+fe
+23
+ba
+f4
+d9
+55
+70
+12
+c0
+19
+7b
+25
+53
+1a
+ab
+57
+57
+52
+4e
+16
+23
+fb
+53
 98
-46
-7c
-00
-24
-62
-80
-00
-6f
-e3
-42
-db
-67
-e3
-46
-6e
-20
-60
-00
-00
-6f
-e3
-46
+95
+82
 6e
-68
-4b
-46
-e6
+f8
+0e
+78
+7f
+95
+b9
+a4
+0a
+1b
+90
+26
+34
+96
+bc
+d0
 98
-46
+c8
+0a
+ab
+05
 7c
-00
-24
+96
+29
+73
 62
-80
-00
-6f
-e3
-42
-db
+26
+b9
+35
+ae
+3a
+e2
+53
+04
 1f
-e0
-ff
-00
-67
-e3
-46
-6e
-20
-60
-00
-00
-20
-40
-03
-7c
-20
-20
-5a
-9c
-6f
-e4
-47
-13
-c3
-0a
-5c
-6f
-c2
+26
+94
+2e
+88
+4d
+0c
+31
+8a
+d4
+ca
+c6
+d8
+63
+44
+fb
+19
+99
 9f
-03
-84
+6c
+16
+2e
+d0
+cf
+55
+d6
+2d
+44
+fd
+21
+4d
+5e
+74
+77
+f9
+19
+17
+0d
+b1
+c5
+cc
+48
+29
+33
+1b
+10
+71
 6f
-e0
-c6
-66
-c1
-00
-00
-00
-c0
-00
-83
+75
+f6
+2a
+3c
+c4
+12
+a1
+78
+6a
+e4
+a1
+a9
+af
+8e
+c8
+ef
+af
+7b
+63
+25
+78
+2c
 84
-c0
-01
-03
-89
+2a
 20
-60
-00
-00
-6f
-e3
-46
+c7
+44
+db
+fc
+e2
+cc
+45
+91
+fe
+d3
+3c
+3e
+4b
+98
+50
+05
+a0
+89
+be
+bd
+63
 68
-67
-e3
-41
-16
-6f
-e3
-46
-6e
-67
-e3
-42
+ff
 db
-20
-60
-00
-00
-6f
-e3
-46
-75
-67
-e3
-41
-16
-6f
-e3
+33
+2f
+de
+e7
+ef
+ec
+2b
+cd
+85
+c1
+59
+e9
+83
 46
-7b
-67
-e3
-42
-db
-20
-60
-00
-00
-6f
-e4
-47
-13
-c4
-01
-00
-00
-c3
-0a
-5c
-43
-d8
-e0
-00
-02
-20
-40
-5f
-04
-20
-40
-5c
-4a
-20
-40
+3a
+57
+0c
+24
+a3
+84
+ff
+12
+bf
+99
+77
+8e
+b2
+26
+36
+d8
+2d
+ca
+2d
+0f
+70
 03
-96
-20
-20
-5c
+4a
+3b
+7d
+75
+bd
+71
+a5
+3b
 a3
-6f
-e0
-c6
-66
-c0
-00
-83
-9a
-c0
-01
-03
-9f
-20
-60
-00
-00
-6f
-e3
-01
-78
-67
-e3
-46
-68
-6f
+61
+ac
 e3
-42
+7d
+70
+07
+d5
+f2
+93
+1d
+9c
+dd
+a6
 db
-67
-e3
-46
-6e
-20
-60
-00
-00
+f8
+8a
+65
+43
+a1
+4a
+a6
+12
 6f
-e3
+de
+f3
+cf
+fe
+b7
 01
-78
-67
-e3
-46
-75
-6f
-e3
-42
-db
-67
-e3
-46
-7b
-20
-60
-00
-00
-20
-40
-03
-ba
-20
+2d
+7c
+4f
+5e
+6c
 40
+5b
+1b
+09
+39
+53
+2b
+35
+58
+7b
+99
 61
-4d
-20
-40
-55
-3d
-20
-40
+47
+59
+66
+74
+a3
+9f
+c2
+1d
+ff
+5e
+d8
+0d
+c1
+29
+90
+11
+79
+39
+1a
+dc
+91
+1c
+06
 61
+d5
+a3
+a0
+ed
+3d
 10
+05
+2d
+54
+ec
+c4
+ee
+3d
+bd
+a5
+c8
+01
+0c
 20
-40
-61
+c4
+17
+cd
+e7
+37
+b4
+5f
+a5
+0e
+59
+01
+4c
+08
+de
 b1
-20
-40
-61
+36
+c1
+3f
+cf
+b4
+de
+1e
+02
+d2
+6e
+e1
+ce
+80
+38
+3e
+b1
+1c
+ec
+73
+56
+3d
+3b
+8f
+d6
+d2
+c4
+a5
+44
+22
+92
+ce
+2b
+71
+82
+cd
+ca
+1b
+7a
+91
+2c
+2f
+8c
+05
+24
+6c
+1f
+c8
+9c
+5c
+35
+e8
+16
+cd
+35
+75
+ff
+a8
+fc
+5a
+ad
+a5
+ed
+bb
+e2
+95
+9b
+86
+97
+a7
+75
+8e
+3b
+ab
+93
+90
+9f
+87
+f7
 1e
-20
-40
-32
-8e
-20
-40
-35
-31
-20
-40
+88
+7a
+51
+82
 5f
-dd
-20
-40
-57
-2c
-20
-40
-5b
-9b
-20
-40
-5b
+4a
+bc
+f3
+18
+a2
+f6
+0f
+3e
+77
+a7
+72
+25
+ca
+09
+7a
 ab
-20
-40
-5b
-ce
-20
-40
-5b
-d3
-20
-40
-5b
-e1
-20
-40
-5b
-ee
-20
-40
-5b
-e4
-20
-40
+26
+0b
+14
 5b
-fb
-20
-40
-03
-bd
-20
-40
-56
-b6
-20
-40
-5c
-0e
-20
-20
-5c
-05
-da
 60
-4a
+75
+af
+cc
 05
-da
-40
-5a
+e6
+ff
+df
+a6
+8b
+76
 ef
-20
-20
-42
-e0
-da
-60
-47
-7e
+83
+b0
+fc
+5b
+8d
+a9
+94
+ad
+29
+f2
+06
 da
-40
-03
-c0
-20
-20
-42
-e0
-6f
-e0
-c9
-6b
-67
+53
+df
+c7
+41
+05
+94
+9a
+73
+3a
+7a
+d7
 e0
-c0
-c0
-70
-47
-7d
-03
-20
-60
-00
-00
-20
-40
-59
-ed
-20
-20
-5c
-1b
-1a
-62
-7e
-00
-c0
-20
-03
+75
+89
+4e
+96
+2f
+38
+fe
+22
+fc
+99
+f4
+56
+6a
+15
+14
+08
+c6
 dc
-c0
-0a
-83
-e1
-c0
-19
-03
-d3
-c0
-1e
-03
-ff
-c0
-1c
-84
-10
-c0
-1d
-04
-13
-c0
-0a
-03
-cf
-20
-20
-5a
-c3
-20
-40
-59
 e7
-58
-00
-00
-00
-67
-e2
-4b
-f7
-20
-20
-5a
+b2
+b9
+b1
+bb
 d0
-6f
-e0
-c7
-95
-c0
-00
-83
-d7
-70
-48
-44
+8c
+6e
+09
+85
+30
+3b
+98
+88
+0d
+b6
+10
+43
+3f
+11
+3c
+0b
+3e
+2b
+b2
+bb
+a5
+ae
 14
-20
-20
-03
-d9
-20
-40
-5a
-ef
-70
-48
-44
-05
-6f
-e0
-cb
-f6
-67
+1f
+e8
+0b
+b6
+e7
+49
+52
+45
+d0
+76
+eb
+7b
+25
 e0
-cb
-f7
-20
-20
-5a
-f6
-6f
+a4
+e7
+47
+9e
+b8
+fc
+46
+31
+0f
+82
 e0
-ca
-04
-24
-7a
-00
-00
-70
-4a
-04
-01
-70
-4a
 05
-1e
-20
-60
-00
-00
-58
-00
-00
-00
-67
-e0
-ca
+1c
+b5
 04
-67
-e0
-ca
-05
-58
-00
-00
-00
-67
-e1
-47
-c0
-70
-47
-94
-00
-d8
-40
-00
 06
-6f
-e4
-47
-13
+45
+3c
+4f
+fc
+06
+a9
+91
+33
 c2
-8d
-83
-eb
-d8
-40
-00
-07
-60
-49
-42
-d3
-60
-49
+2d
+7f
+b5
+8a
+91
+d4
+14
+c7
+2d
+b8
+dd
+fe
+e5
+1a
+01
+36
+e0
 42
+4a
+72
+1c
+74
+c1
 d5
-70
-47
-c2
-00
-70
-49
-56
-00
-20
-40
-29
-cb
-20
-20
-03
-f1
-20
-40
+54
+b0
+fc
 5b
-7b
-6f
-e1
-43
+df
+cf
+30
+7c
+61
+86
+32
+3b
+05
+35
+7a
+aa
+17
+f7
+e6
+cc
+0e
+02
 ef
+f4
+a8
+ed
+c6
+9b
+36
+d1
+22
+7c
 c2
-83
-83
-f6
-c2
-80
-42
-fc
-20
-20
+db
+9c
+87
+bb
+c3
+ef
+74
+bb
+1d
+97
+a8
+86
+b0
+b7
+9a
+25
+4e
+ca
+66
+7f
+fa
+27
+0a
+01
+24
+64
+df
+a4
+25
+77
+98
+f4
+cd
+9e
+6b
+a1
 5c
-1a
+63
+8d
+1c
+f3
+e9
 20
+9e
+c9
+ed
+4d
+a9
+6a
+25
+3c
+c2
+f8
+d8
+48
+a3
+af
+6c
+17
+87
+7a
+81
+d7
+c1
+e1
+2c
+7b
+d3
+94
+2c
+38
+a2
+a1
+96
+09
+c9
+27
+45
+b6
+ca
+32
+e3
+4a
 40
-5b
+56
+bd
+e9
+eb
+72
+9f
+bc
+18
+71
 21
-6f
-e1
-43
+85
+bf
+76
 ef
-c2
-80
-42
-fc
-6f
-e0
-c8
-43
-1f
-e1
-7e
+f6
+98
+14
+4d
+05
+18
 03
-c0
-81
-d4
-a9
-6f
-e0
-cb
-fa
-24
-3a
-54
-a9
-20
-20
-54
-cd
-6f
-e2
-45
-8f
-67
-e2
-45
-e8
+11
+e9
+b4
+ec
+1b
+2c
 67
-e2
-46
-91
-20
-40
-35
-5a
-20
-40
-5c
-0b
-20
-40
 61
-8e
 20
-40
-5a
-73
-70
-47
-7d
-00
-70
-45
-fc
-00
-70
-45
-e2
-00
-6f
-e2
-45
+c9
+ac
+97
+51
+93
+b4
+0f
+f4
+8f
+35
+d1
 e8
-68
+ac
+1e
+a0
+59
+2c
 4a
-45
-e4
-98
-46
-7c
-00
-20
-62
-80
-00
-20
-40
-60
-16
-20
-40
-04
-26
-20
-20
-60
-42
-20
-40
-60
-16
-20
-40
-04
-26
-20
-20
-60
-84
-20
-40
-60
-16
-20
-40
-04
-26
-6f
-e0
-c8
+f1
+0d
+71
+ef
 7a
-c1
-00
-80
-00
-6f
+0e
+7e
+5d
+22
+dc
+2e
+e9
+b2
+f9
+e7
+f9
+8c
+74
+e5
+5c
+91
+a9
+3b
+7a
+c5
+f9
+50
 e0
-c6
+de
+f6
+27
+e6
+ad
+07
+84
+fe
+ee
+a6
+05
+17
+f8
+ba
+73
+68
+19
+fb
+0b
+8b
+74
+98
+5d
+33
+72
+ed
+d7
 00
 24
-3a
-5f
-f2
-6f
-e0
+74
+e9
+95
+7c
+ed
+74
+7d
+a2
+19
+75
+b7
+f5
+60
+fe
+5e
+07
+f1
+d8
+41
 c5
+84
+ea
+07
+b2
+2c
+96
+63
+cc
+35
+69
+53
+02
+6a
+0e
+e5
+2c
+32
+14
+ee
+aa
+cd
+a3
 e2
+b6
+88
+27
+e1
+8c
+01
+4d
+69
+61
+5a
+1a
+cf
+73
+28
+aa
+ae
+90
+08
+9b
 c0
-02
-04
+3a
+bd
+9e
+d6
+d0
+3b
+05
+ac
+b1
+df
+c3
+ba
+18
+3f
+29
+46
+7c
+2c
+8d
+2e
+2c
 1c
-20
-20
-60
-55
-6f
+ec
+cc
+83
+1b
+6e
+9b
+cc
+43
+d5
+ea
 e4
-47
-13
-c3
+0b
+f0
+0f
+e3
+73
+0e
+e4
+50
+25
+80
 1f
-60
-59
-6f
-e0
-c7
+d2
+f2
+61
+68
+8b
+48
+95
+10
 1b
-c0
-00
-e0
-59
-20
-40
-60
-18
-70
-46
-66
-01
-20
-20
-54
+7c
+ee
+02
+9a
+10
+2e
+a3
+8f
+3a
+1a
+e9
+7a
+3d
+64
+9e
+1a
 a0
-6f
-e0
-c1
-41
-67
-e0
-ca
-07
+05
+1b
+1e
+87
 20
-60
-00
-00
-6f
-e0
-ca
+98
 07
-67
-e0
-c1
-41
-20
-60
-00
-00
-20
-40
-62
-0e
-20
+32
+6e
+80
 40
+0c
+2e
+f9
+c8
+44
+54
+45
+4d
+e1
+94
+35
+55
+3a
+1f
+88
+b0
+b3
+85
+9e
+f8
+37
+f7
+ab
 78
-aa
-20
-40
-04
-2d
-20
-20
-5e
-61
-6f
-e0
-c6
-49
-c1
-7f
+f1
+d9
+8d
+e6
+8d
+fe
+08
 80
-00
-da
-20
-00
-00
-70
-49
-77
-05
+a3
+7c
+c3
+af
+cd
+5b
+f6
+40
+45
+68
+0d
+ca
+ba
+3a
+84
+22
+4b
+f5
+f6
+31
+5f
+25
+8f
+ca
+10
+95
+ab
+ad
+59
+aa
+dd
+98
+4b
+ed
+b8
+58
+c9
+2e
+c3
+5a
+9a
+d9
+9f
+d9
+dc
+ba
 68
+a6
+6b
+80
+96
+42
+24
 48
-c6
+84
+01
+e1
 49
-20
-40
-04
-34
-20
-20
-56
-c1
+c7
+f5
+46
+7f
+3c
 6f
-e4
-47
-13
-c2
-95
 d6
+2c
+fa
+a2
+9a
+ec
+9f
+cb
+db
+d2
+11
+6d
+a1
+06
+d4
+79
+23
+77
+b9
+a6
+04
 de
-6f
-e0
-c9
+23
 74
-1f
-e2
-26
+a4
+9c
+98
+67
+f0
+f1
+6d
+25
+9c
+f3
+34
+09
+fe
+93
+77
+0b
+c4
+5e
+72
+aa
+14
+63
+91
+01
+68
+b9
+07
+be
+8e
+31
+bf
+a2
+f1
+9e
+19
+c2
+76
+1b
+43
+fb
+bd
+7b
+82
+9c
+ca
 00
-6f
-e0
-c6
-54
-c0
-7f
+9f
+ca
+68
+83
+87
 84
-3b
-20
-20
+bc
+60
+a2
+cf
+0c
+b1
+08
+90
+5a
+1e
+f8
+86
+90
+c8
+ee
+1d
+1c
+f2
+0b
+a3
+0b
+2a
+fb
+75
+8d
+06
+f4
+02
+4e
+84
+37
+fc
+16
+cc
+2c
+25
+f2
+3e
+8d
+91
+1c
+f3
+b9
 56
-ce
-6f
-e0
-c6
-49
-20
-40
-59
-46
-68
-48
-c6
-49
-20
-20
-04
-3f
-1a
-62
-7e
-00
-67
+9d
+e4
+df
+9d
+4e
+85
+66
+43
+4e
+23
+43
+32
+69
+83
+4e
+b0
+2d
+c3
+5e
+96
+6b
+95
+3e
+d6
+6d
+28
+f8
 e0
-c9
+97
 78
-1f
-e3
-fe
-00
-1f
-e2
-24
-00
-18
-42
-26
-00
-20
+53
+45
+cf
+43
+da
 40
-55
-b1
-1a
+fa
+83
+a0
+10
+76
+4b
+69
+98
+22
+97
+81
+53
+4a
+47
+5d
 62
-04
-00
-20
-40
-6e
-e6
-7d
-20
-a4
-00
-20
-40
-59
-3d
-20
-20
-59
+1d
+c0
+33
+1c
+13
+7a
+f6
+18
+86
+6f
+cc
+4f
+d3
+06
+98
+fb
+54
+ee
+86
 29
-20
-40
-36
-b4
-24
-74
-00
-00
-20
-40
+23
+a9
+b0
+4e
+17
+49
+cd
+b5
+d3
+d3
+cb
+df
+f2
+52
+9f
+e5
+1a
+77
+5b
+4b
+2d
+8d
+a8
+1c
+e8
+fe
+c4
 36
-be
-20
-40
-04
-50
+aa
+5c
+39
+89
+54
+e0
+a6
+23
+39
+d7
+cd
 6f
-e1
-c6
-08
-20
-20
-36
-22
-58
-00
-00
-00
-79
-20
-7e
-15
-67
-e4
-00
-16
-58
-00
-00
-00
-67
-e2
-00
-1e
-20
-60
-00
-00
-70
-46
-00
-00
-20
-40
-36
+50
+30
+7d
+a1
+bf
 47
-5f
-ff
-ff
-ff
-67
-e2
-45
-af
-58
-00
-00
+0f
+b9
 00
-67
-e3
-c8
+39
+93
+4f
+74
+d9
+89
+f9
+75
+30
+b7
+d7
+6a
+e7
+3d
+2e
+31
+2a
+37
+bc
+5d
 46
-70
-47
-3f
-01
-20
-40
-59
-ed
-20
-20
-02
-7b
-20
-40
+ee
+f9
+d0
+f6
+81
+09
+99
+f8
+96
+a8
+13
 5a
-92
-20
-40
-04
-50
-20
-40
-56
-a9
-68
-48
-c6
+33
+71
 54
-20
-40
-6e
-f7
+cc
 68
-48
-c6
-54
-20
-40
-6e
-d3
-6f
-e0
-c6
-4d
-20
-40
-59
+ee
+45
+37
+b9
+ee
+9c
+c2
+ac
+f1
+a1
+33
+49
+32
+0b
 43
-d8
-40
-00
-15
-20
-40
-55
-b5
-20
-40
-04
-6c
-20
-20
-54
+eb
+dc
+43
+de
+f3
+85
+55
+62
+87
 df
-6f
-e0
-c6
-5a
-c1
+54
+2b
+db
+6d
 7f
-80
-00
-6f
-e0
-c6
-66
-c0
-00
-04
-72
-68
-48
+be
+40
 c6
-5a
-20
-20
-55
+5b
+f9
+a6
+f5
+ff
+2f
+a4
+14
+65
+89
+f8
+d4
 b5
-68
-48
-c6
+d7
+bc
+d8
 5a
-20
-20
-6f
-0f
-c6
+a6
+5f
+07
+bc
+b1
+56
+90
+88
+65
+7e
+9b
+d4
 93
-00
-00
-20
-40
+4e
+5e
+a5
+63
+f3
+21
+9d
+83
+cb
+1a
+8c
+86
+f2
+9a
+81
+8e
+9e
+eb
+ce
+e1
+ed
+d6
+f3
+79
+d8
+bc
+c4
+b3
+76
+d6
+53
+32
+29
+10
+f9
+cf
+94
+57
+79
 56
-01
-24
-74
-00
-00
-6f
-e0
-c7
-7c
-70
-47
-7c
-00
-24
-5a
-04
-89
-6f
-e4
+c4
+46
+71
+d5
+22
+bb
+f5
 47
-13
-c3
-0b
-04
-7e
-6f
-e0
-c9
-6c
-24
-3a
-60
-b6
-20
-40
-04
-80
-20
-20
-60
-a2
-6f
-e0
-c6
+9e
+76
 59
-c1
-ff
-80
-00
-6f
-e0
-c7
-7d
-20
+34
+09
+60
 7a
-00
-00
-1f
-e0
-ff
-ff
-67
+cf
+cb
+0c
+38
+5e
+91
+ed
+0c
+23
+23
+8d
+5c
+94
+89
+3b
 e0
-c7
-7d
-58
-00
-00
-00
-67
-e2
-48
-47
-20
-20
-5a
-73
-20
-40
-04
-50
-20
-20
+5d
+b1
+1a
 02
-0e
-6f
-e4
+b0
+16
+c2
+a6
+ea
+ba
+6c
+ac
+ea
+5a
+47
+c5
+24
+41
+b8
 47
+b4
+39
+48
+a5
+f4
 13
-c4
-15
-00
-00
-c3
-1f
-de
+26
+d7
+27
+12
+cd
+e7
 b9
-68
-48
-c6
+72
+69
+b4
+ee
+69
+94
 5a
-20
-40
-6e
-f7
-68
+e9
+21
+ab
+6c
+5f
 48
-c6
-5a
-20
-40
+02
+e5
+5b
+94
+c8
+3e
+51
+64
+0d
+5c
+bc
+ff
+9e
+2f
+d7
+76
+35
+d4
+46
+92
+7e
 55
-b1
-68
-48
-c6
-5a
-20
-40
-6e
-e6
-24
-20
-de
-c2
-20
-20
-5e
 be
-20
-40
-59
-58
+f2
+da
+9c
+ac
+61
+b3
+fa
+ed
+11
 c0
-18
-59
+2d
+45
+55
+43
+5a
+9d
+1c
+d0
+94
+19
+d0
 5f
-c0
+3e
 18
-d9
-c6
-c0
-2c
-04
-9b
-20
-20
-59
-52
-20
-40
-59
-e7
-6f
-e0
-c8
-5a
-c0
+ec
+63
+78
+d0
+27
+8c
+dd
 2c
-84
-9f
-20
-20
-59
-5f
-70
-49
-57
-0b
-da
-60
-4a
-0b
-20
-20
-59
-95
-6f
-e0
+89
+0f
+a4
+53
 c4
-20
-c1
+21
+2f
+a3
+91
+eb
+df
+03
 80
+a5
+9c
 00
-00
-6f
-e0
-c9
+56
+2e
+3e
+c2
+f6
+ae
+41
+80
+16
+93
+8a
+77
+ec
+7b
+81
+ca
+30
+f5
+36
+e7
+22
+0a
+22
+6b
+c4
+9b
+ae
 57
-c0
-05
-84
-a7
-20
-20
-59
-f8
-20
-40
-5a
+93
+27
+15
+2c
+da
+21
+43
+b9
 6d
-6f
-e0
-c6
-59
-c0
-7f
-84
-ad
-68
-48
-c6
-59
-20
-40
-6e
-e6
-24
-60
-80
-00
-58
-00
-00
-00
-20
-40
-69
-e5
-c0
-ac
-59
-55
-20
-20
-5a
-2f
-78
-54
-7c
-00
-58
-00
-00
-00
-67
-e3
-48
-47
-20
-40
-04
+7b
+1d
+bb
+7b
+9e
+eb
+6c
+9b
 a2
-20
-20
-56
+c4
+d0
+47
+75
+4f
+cc
+15
+1f
+fd
+07
+e3
+23
+35
+66
+0f
+d3
+be
+88
+5b
+f6
+fd
+36
+d0
+d2
+7f
+9c
+55
+7b
+9b
+23
+ad
+1a
+29
 06
-0d
-70
+4b
+7b
+89
+7b
+73
+17
+66
+c3
+b2
+c0
+c1
+be
+0c
+dd
+df
+72
+79
+6d
 aa
 55
 40
@@ -4847,9 +5493,9 @@
 40
 05
 00
-33
+73
 07
-20
+a0
 00
 00
 00
@@ -4858,12 +5504,12 @@
 00
 00
 00
-13
-08
+d7
+18
 84
 f2
 7d
-61
+69
 00
 00
 00
@@ -4871,8 +5517,8 @@
 00
 20
 00
-00
-14
+60
+04
 00
 00
 00
@@ -4881,12 +5527,12 @@
 00
 10
 04
-60
+70
 00
 00
 06
 00
-20
+30
 00
 00
 00
@@ -4895,7 +5541,7 @@
 00
 00
 00
-41
+45
 a4
 00
 00
@@ -4917,7 +5563,7 @@
 47
 04
 c9
-12
+52
 00
 02
 04
@@ -4947,7 +5593,7 @@
 ff
 ff
 ff
-ff
+15
 ff
 ff
 ff
@@ -5117,6 +5763,15 @@
 20
 aa
 55
+03
+00
+3c
+47
+00
+00
+00
+aa
+55
 02
 00
 66
@@ -5136,26 +5791,7 @@
 00
 81
 46
-33
-aa
-55
-06
-00
-2d
-46
-dc
-05
-84
-03
-e8
-03
-aa
-55
-01
-00
-35
-46
-04
+34
 aa
 55
 01
@@ -5172,6 +5808,13 @@
 07
 aa
 55
+01
+00
+1f
+4b
+ff
+aa
+55
 06
 00
 e6
@@ -5254,8 +5897,8 @@
 00
 43
 47
-ee
-4d
+d0
+52
 00
 80
 bb
@@ -5277,9 +5920,9 @@
 00
 4a
 47
-76
-fd
-00
+70
+11
+01
 00
 77
 01
@@ -5525,7 +6168,7 @@
 42
 06
 00
-09
+06
 00
 20
 00
@@ -5573,39 +6216,39 @@
 00
 fa
 49
-39
-18
-6a
-18
+b9
+1a
+ea
+1a
 aa
 55
 18
 00
 e2
 49
-6b
-18
-32
-19
-33
-19
-fa
-19
-fb
-19
-26
+eb
+1a
+b2
 1b
-27
+b3
 1b
-52
+2a
 1c
-53
+2b
 1c
-7e
+de
+1c
+df
+1c
+92
 1d
-7f
+93
 1d
-aa
+46
+1e
+47
+1e
+fa
 1e
 aa
 55
@@ -5613,11 +6256,11 @@
 00
 fe
 49
-ab
+fb
 1e
-c2
+ac
 1f
-c4
+ae
 1f
 aa
 55
@@ -5653,7 +6296,7 @@
 00
 3e
 46
-00
+94
 aa
 55
 01
@@ -5781,7 +6424,7 @@
 4a
 09
 a5
-26
+46
 34
 19
 04
@@ -5831,29 +6474,7 @@
 ff
 aa
 55
-10
-00
-2a
-49
-09
-a5
-26
-34
-60
-07
-69
-04
-7d
-20
-7e
-00
-09
-00
-ff
-ff
-aa
-55
-1e
+54
 00
 d6
 48
@@ -5863,14 +6484,26 @@
 27
 ab
 40
+b3
+56
+9b
+e6
+a8
+12
+a9
+c0
 be
-d1
+e6
+a5
+af
 a0
-41
+21
 a1
-12
-a5
-84
+02
+b8
+10
+b9
+0b
 a7
 ff
 b5
@@ -5879,20 +6512,10 @@
 00
 ff
 00
-35
-c8
-25
-af
 09
 00
 ff
 ff
-aa
-55
-2e
-00
-fc
-48
 09
 5a
 0d
@@ -5943,6 +6566,27 @@
 55
 01
 00
+07
+44
+01
+aa
+55
+01
+00
+09
+44
+0a
+aa
+55
+01
+00
+08
+44
+00
+aa
+55
+01
+00
 48
 41
 0c
@@ -6138,8 +6782,8 @@
 aa
 aa
 55
-24
-5c
-f8
-41
+6c
+5e
+2d
+d1
 20
Index: output/program.lis
===================================================================
--- /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/output/program.lis	(revision 794)
+++ /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/output/program.lis	(working copy)
@@ -1,1573 +1,1816 @@
               include "bt_format "
               org 0x0000
-0000 c2840023 bbit1 8 ,pf_patch_ext 
-0001 c0000278 beq patch00_0 ,p_soft_reset 
-0002 c0010031 beq patch00_2 ,p_main_loop 
-0003 c008003a beq patch02_0 ,p_shutdown_radio 
-0004 c008803c beq patch02_1 ,p_set_sync_on 
-0005 c00a0153 beq patch02_4 ,p_set_lemode 
-0006 c00a80bc beq patch02_5 ,p_rf_rx_enable 
-0007 c00c00dc beq patch03_0 ,p_txon 
-0008 c00c80e3 beq patch03_1 ,p_set_tx_power 
-0009 c00d004a beq patch03_2 ,p_initialize_radio_cont 
-000a c01281fe beq patch04_5 ,p_lpm_sleep 
-000b c0340271 beq patch0d_0 ,p_mouse_cb_fuction 
-000c c0348291 beq patch0d_1 ,p_mouse_load_device_info_check 
-000d c036023a beq patch0d_4 ,p_mouse_param_init 
-000e c039845f beq patch0e_3 ,p_mouse_setgpio_hibernate 
-000f c03d04b1 beq patch0f_2 ,p_mouse_motion 
-0010 c03f843f beq patch0f_7 ,p_mouse_3io6key_check 
-0011 c0408496 beq patch10_1 ,p_mouse_init_sensor 
-0012 c042037a beq patch10_4 ,p_mouse_buletooth_fast_conn_end 
-0013 c04283c6 beq patch10_5 ,p_mouse_priority_bb_event 
-0014 c04301e6 beq patch10_6 ,p_mouse_le 
-0015 c04383a4 beq patch10_7 ,p_mouse_bb_event_timer 
-0016 c04403c4 beq patch11_0 ,p_mouse_start_discovery 
-0017 c045038e beq patch11_2 ,p_mouse_store_remote_bdaddr 
-0018 c04602cf beq patch11_4 ,p_mouse_store_device_info 
-0019 c0468337 beq patch11_5 ,p_mouse_store_dpi_info_check 
-001a c0470429 beq patch11_6 ,p_mouse_idle 
-001b c04582a8 beq patch11_3 ,p_mouse_app_initflag_check 
-001c c048048b beq patch12_0 ,p_mouse_check_select_device_by_switch 
-001d c04a8456 beq patch12_5 ,p_mouse_24g_hibernate_set 
-001e c04b0474 beq patch12_6 ,p_mouse_24g_package_data 
-001f c062821d beq patch18_5 ,p_otp_read_data 
-0020 c06d0124 beq patch1b_2 ,p_sadc_calibration 
-0021 c06e0134 beq patch1b_4 ,p_enable_adc 
-0022 2020235a branch assert 
+0000 c284002b bbit1 8 ,pf_patch_ext 
+0001 c00002c8 beq patch00_0 ,p_soft_reset 
+0002 c001003c beq patch00_2 ,p_main_loop 
+0003 c0080045 beq patch02_0 ,p_shutdown_radio 
+0004 c0088047 beq patch02_1 ,p_set_sync_on 
+0005 c00a014c beq patch02_4 ,p_set_lemode 
+0006 c00a80e3 beq patch02_5 ,p_rf_rx_enable 
+0007 c00b0050 beq patch02_6 ,p_calc_freq 
+0008 c00c0109 beq patch03_0 ,p_txon 
+0009 c00c8110 beq patch03_1 ,p_set_tx_power 
+000a c00d005c beq patch03_2 ,p_initialize_radio_cont 
+000b c0128243 beq patch04_5 ,p_lpm_sleep 
+000c c01381d7 beq patch04_7 ,p_lpm_adjust_clk 
+000d c03402c3 beq patch0d_0 ,p_mouse_cb_fuction 
+000e c03482d6 beq patch0d_1 ,p_mouse_load_device_info_check 
+000f c03502d2 beq patch0d_2 ,p_mouse_default_init 
+0010 c0360287 beq patch0d_4 ,p_mouse_param_init 
+0011 c0370470 beq patch0d_6 ,p_mouse_start_work 
+0012 c037d4b6 beq patch0d_7 ,mouse4_0_check_reconn_target 
+0013 c03984c0 beq patch0e_3 ,p_mouse_setgpio_hibernate 
+0014 c03a0237 beq patch0e_4 ,p_mouse_lpm_before_common 
+0015 c03d0511 beq patch0f_2 ,p_mouse_motion 
+0016 c03f84a3 beq patch0f_7 ,p_mouse_3io6key_check 
+0017 c04084f6 beq patch10_1 ,p_mouse_init_sensor 
+0018 c04203ba beq patch10_4 ,p_mouse_buletooth_fast_conn_end 
+0019 c0428405 beq patch10_5 ,p_mouse_priority_bb_event 
+001a c043020c beq patch10_6 ,p_mouse_le 
+001b c04383e3 beq patch10_7 ,p_mouse_bb_event_timer 
+001c c0440403 beq patch11_0 ,p_mouse_start_discovery 
+001d c04503cd beq patch11_2 ,p_mouse_store_remote_bdaddr 
+001e c04582ee beq patch11_3 ,p_mouse_app_initflag_check 
+001f c0460311 beq patch11_4 ,p_mouse_store_device_info 
+0020 c0468377 beq patch11_5 ,p_mouse_store_dpi_info_check 
+0021 c047048b beq patch11_6 ,p_mouse_idle 
+0022 c04804e3 beq patch12_0 ,p_mouse_check_select_device_by_switch 
+0023 c049851c beq patch12_3 ,p_mouse_drawing_optima 
+0024 c04a84b7 beq patch12_5 ,p_mouse_24g_hibernate_set 
+0025 c04b04cc beq patch12_6 ,p_mouse_24g_package_data 
+0026 c0628265 beq patch18_5 ,p_otp_read_data 
+0027 c06a822b beq patch1a_5 ,p_gpio_set_wake_by_current_state 
+0028 c06b0224 beq patch1a_6 ,p_gpio_set_wake 
+0029 c06d0083 beq patch1b_2 ,p_sadc_calibration 
+002a 2020235a branch assert 
 
 pf_patch_ext:
-0023 c00a0174 beq patch22_4 ,p_le_slave_match 
-0024 c00d0173 beq patch23_2 ,p_le_got_first_packet 
-0025 c01281a3 beq patch24_5 ,p_le_rx_dec 
-0026 c01301a8 beq patch24_6 ,p_le_rx_nopayload 
-0027 c01c81ba beq patch27_1 ,p_le_parse 
-0028 c01d01c0 beq patch27_2 ,p_le_parse_l2cap 
-0029 c02681be beq patch29_5 ,p_le_init_adv 
-002a c0480220 beq patch32_0 ,p_g24_reconn_dispatch 
-002b c04b044a beq patch32_6 ,p_g24_short_sleep 
-002c c04d00ca beq patch33_2 ,p_mouse_g24_retransmit 
-002d c04e80d1 beq patch33_5 ,p_g24_transmit_hop_process 
-002e c04f8242 beq patch33_7 ,p_power_ctrl_start 
-002f c17f8000 rtneq patch3f_7 
-0030 2020235a branch assert 
+002b c00a016c beq patch22_4 ,p_le_slave_match 
+002c c00d018b beq patch23_2 ,p_le_got_first_packet_new 
+002d c01201b0 beq patch24_4 ,p_le_receive_rxon 
+002e c0128193 beq patch24_5 ,p_le_rx_dec 
+002f c0130198 beq patch24_6 ,p_le_rx_nopayload 
+0030 c01c81aa beq patch27_1 ,p_le_parse 
+0031 c01d01e6 beq patch27_2 ,p_le_parse_l2cap 
+0032 c02601e2 beq patch29_4 ,p_le_adv_not_match 
+0033 c02681ae beq patch29_5 ,p_le_init_adv 
+0034 c0480268 beq patch32_0 ,p_g24_reconn_dispatch 
+0035 c049027c beq patch32_2 ,p_g24_reconn_device_fail 
+0036 c04b04ae beq patch32_6 ,p_g24_short_sleep 
+0037 c04d00f1 beq patch33_2 ,p_mouse_g24_retransmit 
+0038 c04e80fe beq patch33_5 ,p_g24_transmit_hop_process 
+0039 c04f8294 beq patch33_7 ,p_power_ctrl_start 
+003a c17f8000 rtneq patch3f_7 
+003b 2020235a branch assert 
 
 p_main_loop:
-0031 20407552 call sp_calc_sequence_256 
-0032 20407448 call sp_calc_sequence_256_check 
-0033 20402a45 call le_advertising_dispatch 
-0034 2040202a call idle_dispatch 
-0035 204042ad call app_process_idle 
-0036 20402018 call connection_dispatch 
-0037 2040310f call g24_dispatch 
-0038 2040248c call lpm_dispatch 
-0039 20200031 branch p_main_loop 
+003c 20407552 call sp_calc_sequence_256 
+003d 20407448 call sp_calc_sequence_256_check 
+003e 20402a45 call le_advertising_dispatch 
+003f 2040202a call idle_dispatch 
+0040 204042ad call app_process_idle 
+0041 20402018 call connection_dispatch 
+0042 2040310f call g24_dispatch 
+0043 2040248c call lpm_dispatch 
+0044 2020003c branch p_main_loop 
 
 p_shutdown_radio:
-003a 70890000 jam 0 ,0x8900 
-003b 20202153 branch shutdown_radio + 1 
+0045 70890000 jam 0 ,0x8900 
+0046 20202153 branch shutdown_radio + 1 
 
 p_set_sync_on:
-003c 708a0f60 jam 0x60 ,0x8a0f 
-003d 708a10aa jam 0xaa ,0x8a10 
-003e 708a127a jam 0x7a ,0x8a12 
-003f 708a2500 jam 0x00 ,0x8a25 
-0040 708a2600 jam 0x00 ,0x8a26 
-0041 2000003c nop 60 
-0042 708a2020 jam 0x20 ,0x8a20 
-0043 708a23f5 jam 0xf5 ,0x8a23 
-0044 708a2412 jam 0x12 ,0x8a24 
-0045 708a2410 jam 0x10 ,0x8a24 
-0046 2000003c nop 60 
-0047 708a1260 jam 0x60 ,0x8a12 
-0048 708a23dd jam 0xdd ,0x8a23 
-0049 20600000 rtn 
+0047 708a0f60 jam 0x60 ,0x8a0f 
+0048 708a10aa jam 0xaa ,0x8a10 
+0049 708a127a jam 0x7a ,0x8a12 
+004a 708a2500 jam 0x00 ,0x8a25 
+004b 708a2600 jam 0x00 ,0x8a26 
+004c 2000003c nop 60 
+004d 708a2020 jam 0x20 ,0x8a20 
+004e 708a23f5 jam 0xf5 ,0x8a23 
+004f 20202169 branch set_sync_on_next 
+
+p_calc_freq:
+0050 58000960 setarg 2400 
+0051 9840fe00 iadd temp ,pdata 
+0052 1fe22200 copy pdata ,rega 
+0053 6848c099 fetcht 1 ,mem_fcomp_div 
+0054 18430400 rshift temp ,temp 
+0055 9846fc00 idiv temp 
+0056 20407d62 call wait_div_end 
+0057 1807fe00 quotient pdata 
+0058 1fec8e00 rshift8 pdata ,queue 
+0059 60f0890a storer queue ,1 ,0x890a 
+005a 67f08909 store 1 ,0x8909 
+005b 202021da branch calc_freq + 10 
 
 p_initialize_radio_cont:
-004a 7001bb00 jam 0 ,mem_le_testtype 
-004b 7001bc00 jam 0 ,mem_cmd_le_create_conn 
-004c 37d98200 until null ,lpo_edge 
-004d 7089460d jam 0x0d ,0x8946 
-004e 70896f10 jam 0x10 ,0x896f 
-004f 708a0610 jam 0x10 ,0x8a06 
-0050 708a844a jam 0x4a ,0x8a84 
-0051 708a8540 jam 0x40 ,0x8a85 
-0052 708a16fe jam 0xfe ,0x8a16 
-0053 20400091 call p_set_otp_config 
-0054 204070d7 call wdt_set_disable 
-0055 37d98200 until null ,lpo_edge 
-0056 70813b5f jam 0x5f ,0x813b 
-0057 37d98200 until null ,lpo_edge 
-0058 70813c88 jam 0x88 ,0x813c 
-0059 37d98200 until null ,lpo_edge 
-005a 6fe0c099 fetch 1 ,mem_fcomp_div 
-005b c0080086 beq xtal_16m ,p_initialize_radio_16m 
-005c 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
-005d 1fe1fe04 or_into 0x04 ,pdata 
-005e 67f08a02 store 1 ,0x8a02 
-005f 70890f01 jam 0x01 ,0x890f 
-0060 708a8024 jam 0x24 ,0x8a80 
-0061 708a8162 jam 0x62 ,0x8a81 
-0062 58e61212 setarg 0xe61212 
-0063 67f18a73 store 3 ,0x8a73 
+005c 7001bb00 jam 0 ,mem_le_testtype 
+005d 7001bc00 jam 0 ,mem_cmd_le_create_conn 
+005e 37d98200 until null ,lpo_edge 
+005f 7089460d jam 0x0d ,0x8946 
+0060 70896f10 jam 0x10 ,0x896f 
+0061 708a13cd jam 0xcd ,0x8a13 
+0062 708a0610 jam 0x10 ,0x8a06 
+0063 708a844a jam 0x4a ,0x8a84 
+0064 708a8540 jam 0x40 ,0x8a85 
+0065 708a16fe jam 0xfe ,0x8a16 
+0066 204000b8 call p_set_otp_config 
+0067 204070d7 call wdt_set_disable 
+0068 37d98200 until null ,lpo_edge 
+0069 70813b5f jam 0x5f ,0x813b 
+006a 37d98200 until null ,lpo_edge 
+006b 70813c88 jam 0x88 ,0x813c 
+006c 37d98200 until null ,lpo_edge 
+006d 6fe0c099 fetch 1 ,mem_fcomp_div 
+006e c00800ad beq xtal_16m ,p_initialize_radio_16m 
+006f 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
+0070 1fe1fe04 or_into 0x04 ,pdata 
+0071 67f08a02 store 1 ,0x8a02 
+0072 70890f01 jam 0x01 ,0x890f 
+0073 708a8024 jam 0x24 ,0x8a80 
+0074 708a8162 jam 0x62 ,0x8a81 
+0075 58e61212 setarg 0xe61212 
+0076 67f18a73 store 3 ,0x8a73 
 
 p_initialize_radio2:
-0064 708a8660 jam 0x60 ,0x8a86 
-0065 708a8b3b jam 0x3b ,0x8a8b 
-0066 20400078 call p_dpll_on 
-0067 70804300 jam 0 ,core_config 
-0068 70804205 jam clksel_dpll ,core_clksel 
-0069 58557474 setarg 0x557474 
-006a 67f18968 store 3 ,0x8968 
-006b 7089606e jam 0x6e ,0x8960 
-006c 204000f6 call p_rx_dcoc 
-006d 20400121 call p_rfpll_aac_ghpc 
-006e 20400072 call p_set_xtal_cap 
-006f 7041480c jam system_clk_12m ,mem_system_clk 
-0070 20406f4e call sadc_calibration 
-0071 20200123 branch p_dpll_ring_ibias_calc 
+0077 708a8660 jam 0x60 ,0x8a86 
+0078 708a8b3b jam 0x3b ,0x8a8b 
+0079 2040009f call p_dpll_on 
+007a 70804300 jam 0 ,core_config 
+007b 70804205 jam clksel_dpll ,core_clksel 
+007c 58557474 setarg 0x557474 
+007d 67f18968 store 3 ,0x8968 
+007e 7089606e jam 0x6e ,0x8960 
+007f 2040011f call p_rx_dcoc 
+0080 2040014a call p_rfpll_aac_ghpc 
+0081 2040009a call p_set_xtal_cap 
+0082 7041480c jam system_clk_12m ,mem_system_clk 
+
+p_sadc_calibration:
+0083 20758000 rtn wake 
+0084 708a0777 jam 0x77 ,core_gpadc_ctrl 
+0085 708a08c9 jam 0xc9 ,core_gpadc_cfg0 
+0086 708a0b01 jam 0x01 ,core_gpadc_cfg3 
+0087 6fe0c409 fetch 1 ,mem_adc_clkdiv 
+0088 67f080cd store 1 ,core_sadc_clkdiv 
+0089 20000bb8 nop 3000 
+008a 20400093 call p_sadc_read 
+008b 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
+008c 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
+008d df200008 arg 8 ,loopcnt 
+008e 20406f58 call sadc_cal_read + 1 
+008f 6fe0c419 fetch 1 ,mem_spi_write_addr 
+0090 67e0c433 store 1 ,mem_adc_cal_c7 
+0091 6240c419 storer regb ,1 ,mem_spi_write_addr 
+0092 20600000 rtn 
+
+p_sadc_read:
+0093 7080cc03 jam 0x03 ,core_sadc_ctrl 
+
+p_sadc_read_wait:
+0094 6ff08129 fetch 1 ,core_perf_status 
+0095 c3028094 bbit0 saradc_done ,p_sadc_read_wait 
+0096 68590164 fetcht 2 ,core_sadc_data 
+0097 6049440a storet 2 ,mem_adc_current_value 
+0098 7080cc00 jam 0x00 ,core_sadc_ctrl 
+0099 20600000 rtn 
 
 p_set_xtal_cap:
-0072 20758000 rtn wake 
-0073 37d98200 until null ,lpo_edge 
-0074 6fe0c11c fetch 1 ,mem_xtal_c_sel 
-0075 67f0813a store 1 ,core_xtal_cap 
-0076 37d98200 until null ,lpo_edge 
-0077 20600000 rtn 
+009a 20758000 rtn wake 
+009b 37d98200 until null ,lpo_edge 
+009c 6fe0c11c fetch 1 ,mem_xtal_c_sel 
+
+p_set_xtal_cap_next:
+009d 67f0813a store 1 ,core_xtal_cap 
+009e 202023e2 branch lpm_write_wait 
 
 p_dpll_on:
-0078 6fe0c099 fetch 1 ,mem_fcomp_div 
-0079 c00c007e beq xtal_24m ,p_dpll_on_24m 
-007a 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
-007b 1fe1fe06 or_into 0x06 ,pdata 
-007c 67f08a02 store 1 ,0x8a02 
-007d 708a05e0 jam 0xe0 ,0x8a05 
+009f 6fe0c099 fetch 1 ,mem_fcomp_div 
+00a0 c00c00a5 beq xtal_24m ,p_dpll_on_24m 
+00a1 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
+00a2 1fe1fe06 or_into 0x06 ,pdata 
+00a3 67f08a02 store 1 ,0x8a02 
+00a4 708a05e0 jam 0xe0 ,0x8a05 
 
 p_dpll_on_24m:
-007e 708a00d8 jam 0xd8 ,0x8a00 
-007f 2000003c nop 60 
-0080 708a01a0 jam 0xa0 ,0x8a01 
-0081 708a00df jam 0xdf ,0x8a00 
-0082 708a01fa jam 0xfa ,0x8a01 
-0083 20000014 nop 20 
-0084 708a009f jam 0x9f ,0x8a00 
-0085 20600000 rtn 
+00a5 708a00d8 jam 0xd8 ,0x8a00 
+00a6 2000003c nop 60 
+00a7 708a01a0 jam 0xa0 ,0x8a01 
+00a8 708a00df jam 0xdf ,0x8a00 
+00a9 708a01fa jam 0xfa ,0x8a01 
+00aa 20000014 nop 20 
+00ab 708a009f jam 0x9f ,0x8a00 
+00ac 20600000 rtn 
 
 p_initialize_radio_16m:
-0086 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
-0087 1fe1fe06 or_into 0x06 ,pdata 
-0088 67f08a02 store 1 ,0x8a02 
-0089 70890f00 jam 0x00 ,0x890f 
-008a 708a8023 jam 0x23 ,0x8a80 
-008b 708a81b0 jam 0xb0 ,0x8a81 
-008c 58e40909 setarg 0xe40909 
-008d 67f18a73 store 3 ,0x8a73 
-008e 708a762a jam 0x2a ,0x8a76 
-008f 70890204 jam 0x04 ,0x8902 
-0090 20200064 branch p_initialize_radio2 
+00ad 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
+00ae 1fe1fe06 or_into 0x06 ,pdata 
+00af 67f08a02 store 1 ,0x8a02 
+00b0 70890f00 jam 0x00 ,0x890f 
+00b1 708a8023 jam 0x23 ,0x8a80 
+00b2 708a81b0 jam 0xb0 ,0x8a81 
+00b3 58e40909 setarg 0xe40909 
+00b4 67f18a73 store 3 ,0x8a73 
+00b5 708a762a jam 0x2a ,0x8a76 
+00b6 70890204 jam 0x04 ,0x8902 
+00b7 20200077 branch p_initialize_radio2 
 
 p_set_otp_config:
-0091 203580b8 branch p_set_otp_config_wake ,wake 
-0092 6fe2020d fetch 4 ,mem_otp_core_ldo 
-0093 207a0000 rtn blank 
-0094 37d98200 until null ,lpo_edge 
-0095 6ff08136 fetch 1 ,0x8136 
-0096 1fe17ef0 and pdata ,0xf0 ,pdata 
-0097 6848820d fetcht 1 ,mem_otp_core_ldo 
-0098 9841fe00 ior temp ,pdata 
-0099 67f08136 store 1 ,0x8136 
-009a 37d98200 until null ,lpo_edge 
-009b 6ff08138 fetch 1 ,0x8138 
-009c 1fe17e07 and pdata ,0x7 ,pdata 
-009d 6848820e fetcht 1 ,mem_otp_verf_bg 
-009e 18498400 lshift3 temp ,temp 
-009f 9841fe00 ior temp ,pdata 
-00a0 67f08138 store 1 ,0x8138 
-00a1 37d98200 until null ,lpo_edge 
-
-p_set_otp_config2:
-00a2 6ff08acb fetch 1 ,0x8acb 
-00a3 1fe17ef0 and pdata ,0xf0 ,pdata 
-00a4 6848820f fetcht 1 ,mem_otp_charge_pump 
-00a5 6048c15b storet 1 ,mem_otp_charge_pump_x 
-00a6 9841fe00 ior temp ,pdata 
-00a7 67f08acb store 1 ,0x8acb 
-00a8 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
-00a9 67e0c15c store 1 ,mem_otp_dpll_ibais_x 
-00aa 2feffe03 isolate1 3 ,pdata 
-00ab 6ff08a06 fetch 1 ,0x8a06 
-00ac 7920fe07 setflag true ,7 ,pdata 
-00ad 67f08a06 store 1 ,0x8a06 
-00ae 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
-00af 1fe10407 and pdata ,7 ,temp 
-00b0 18520400 lshift4 temp ,temp 
-00b1 18438400 lshift temp ,temp 
-00b2 6048c438 storet 1 ,mem_ring_ibias_trim 
-00b3 6ff08a02 fetch 1 ,0x8a02 
-00b4 1fe17e1f and pdata ,0x1f ,pdata 
-00b5 9841fe00 ior temp ,pdata 
-00b6 67f08a02 store 1 ,0x8a02 
-00b7 20600000 rtn 
+00b8 203580ca branch p_set_otp_config_wake ,wake 
+00b9 6fe2020d fetch 4 ,mem_otp_core_ldo 
+00ba 207a0000 rtn blank 
+00bb 37d98200 until null ,lpo_edge 
+00bc 6ff08136 fetch 1 ,0x8136 
+00bd 1fe17ef0 and pdata ,0xf0 ,pdata 
+00be 6848820d fetcht 1 ,mem_otp_core_ldo 
+00bf 9841fe00 ior temp ,pdata 
+00c0 1fe0fffd increase -3 ,pdata 
+00c1 67f08136 store 1 ,0x8136 
+00c2 37d98200 until null ,lpo_edge 
+00c3 6ff08138 fetch 1 ,0x8138 
+00c4 1fe17e07 and pdata ,0x7 ,pdata 
+00c5 6848820e fetcht 1 ,mem_otp_verf_bg 
+00c6 18498400 lshift3 temp ,temp 
+00c7 9841fe00 ior temp ,pdata 
+00c8 67f08138 store 1 ,0x8138 
+00c9 37d98200 until null ,lpo_edge 
 
 p_set_otp_config_wake:
-00b8 6fe1415b fetch 2 ,mem_otp_charge_pump_x 
-00b9 207a0000 rtn blank 
-00ba 67e1020f store 2 ,mem_otp_charge_pump 
-00bb 202000a2 branch p_set_otp_config2 
+00ca 6fe1415b fetch 2 ,mem_otp_charge_pump_x 
+00cb 207a0000 rtn blank 
+00cc 67e1020f store 2 ,mem_otp_charge_pump 
+
+p_set_otp_config2:
+00cd 6ff08acb fetch 1 ,0x8acb 
+00ce 1fe17ef0 and pdata ,0xf0 ,pdata 
+00cf 6848820f fetcht 1 ,mem_otp_charge_pump 
+00d0 6048c15b storet 1 ,mem_otp_charge_pump_x 
+00d1 9841fe00 ior temp ,pdata 
+00d2 67f08acb store 1 ,0x8acb 
+00d3 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
+00d4 67e0c15c store 1 ,mem_otp_dpll_ibais_x 
+00d5 2feffe03 isolate1 3 ,pdata 
+00d6 6ff08a06 fetch 1 ,0x8a06 
+00d7 7920fe07 setflag true ,7 ,pdata 
+00d8 67f08a06 store 1 ,0x8a06 
+00d9 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
+00da 1fe10407 and pdata ,7 ,temp 
+00db 18520400 lshift4 temp ,temp 
+00dc 18438400 lshift temp ,temp 
+00dd 6048c438 storet 1 ,mem_ring_ibias_trim 
+00de 6ff08a02 fetch 1 ,0x8a02 
+00df 1fe17e1f and pdata ,0x1f ,pdata 
+00e0 9841fe00 ior temp ,pdata 
+00e1 67f08a02 store 1 ,0x8a02 
+00e2 20600000 rtn 
 
 p_rf_rx_enable:
-00bc 2040686f call rf_debug_rx_gpio_high 
-00bd 204021ba call rf_rx_agc_set 
-00be 18002a08 force 8 ,radio_ctrl 
-00bf 18002a00 force 0 ,radio_ctrl 
-00c0 580aaada setarg 0x0aaada 
-00c1 67f18a0f store 3 ,0x8a0f 
-00c2 708a2540 jam 0x40 ,0x8a25 
-00c3 708a2610 jam 0x10 ,0x8a26 
-00c4 2000003c nop 60 
-00c5 708a01fb jam 0xfb ,0x8a01 
-00c6 708a25ff jam 0xff ,0x8a25 
-00c7 708a2630 jam 0x30 ,0x8a26 
-00c8 708a16fe jam 0xfe ,0x8a16 
-00c9 202021b4 branch rf_rx_enable + 14 
+00e3 2040686f call rf_debug_rx_gpio_high 
+00e4 204021ba call rf_rx_agc_set 
+00e5 18002a08 force 8 ,radio_ctrl 
+00e6 18002a00 force 0 ,radio_ctrl 
+00e7 580aaada setarg 0x0aaada 
+00e8 67f18a0f store 3 ,0x8a0f 
+00e9 708a2540 jam 0x40 ,0x8a25 
+00ea 708a2610 jam 0x10 ,0x8a26 
+00eb 2000003c nop 60 
+00ec 708a01fb jam 0xfb ,0x8a01 
+00ed 708a25ff jam 0xff ,0x8a25 
+00ee 708a2630 jam 0x30 ,0x8a26 
+00ef 708a16fe jam 0xfe ,0x8a16 
+00f0 202021b4 branch rf_rx_enable + 14 
 
 p_mouse_g24_retransmit:
-00ca 6fe0c793 fetch 1 ,mem_mouse_need_soft_reset 
-00cb 247a0000 nrtn blank 
-00cc 204000ce call p_mouse_retransmit_select_device_by_pb_button 
-00cd 202060fc branch mouse_g24_retransmit + 3 
+00f1 6fe0c793 fetch 1 ,mem_mouse_need_soft_reset 
+00f2 247a0000 nrtn blank 
+00f3 204000f6 call p_mouse_retransmit_select_device_by_pb_button 
+00f4 204000f9 call p_mouse_select_device_by_dpi_button_once 
+00f5 20203662 branch g24_retransmit0 
 
 p_mouse_retransmit_select_device_by_pb_button:
-00ce 6fe0c655 fetch 1 ,mem_config_select_device_button_gpio 
-00cf c17f8000 rtneq gpio_disable 
-00d0 20205e78 branch mouse_retransmit_select_device_by_pb_button 
+00f6 6fe0c655 fetch 1 ,mem_config_select_device_button_gpio 
+00f7 c17f8000 rtneq gpio_disable 
+00f8 20205e78 branch mouse_retransmit_select_device_by_pb_button 
+
+p_mouse_select_device_by_dpi_button_once:
+00f9 d8e0000c arg 12 ,queue 
+00fa 20407cef call timer_check 
+00fb 247a0000 nrtn blank 
+00fc 2040048f call p_mouse_dpi_check_retransmit 
+00fd 20206102 branch mouse_g24_retransmit_event_set 
 
 p_g24_transmit_hop_process:
-00d1 6848c601 fetcht 1 ,mem_24g_retry 
-00d2 6fe0c621 fetch 1 ,mem_24g_fast_hop_count 
-00d3 98467c00 isub temp ,null 
-00d4 242100d6 nbranch p_g24_tx_fast_hop ,positive 
-00d5 20203681 branch g24_transmit_hop_process + 5 
+00fe 6848c601 fetcht 1 ,mem_24g_retry 
+00ff 6fe0c621 fetch 1 ,mem_24g_fast_hop_count 
+0100 98467c00 isub temp ,null 
+0101 24210103 nbranch p_g24_tx_fast_hop ,positive 
+0102 20203681 branch g24_transmit_hop_process + 5 
 
 p_g24_tx_fast_hop:
-00d6 6fe2458f fetch 4 ,mem_24g_addr 
-00d7 684a45e4 fetcht 4 ,mem_24g_fast_conn_addr 
-00d8 98467c00 isub temp ,null 
-00d9 2022b222 branch g24_ch ,zero 
-00da 20400267 call p_power_ctrl_txpower_incrs 
-00db 2020369b branch g24_tx_fast_hop + 1 
+0103 6fe2458f fetch 4 ,mem_24g_addr 
+0104 684a45e4 fetcht 4 ,mem_24g_fast_conn_addr 
+0105 98467c00 isub temp ,null 
+0106 2022b222 branch g24_ch ,zero 
+0107 204002b9 call p_power_ctrl_txpower_incrs 
+0108 2020369b branch g24_tx_fast_hop + 1 
 
 p_txon:
-00dc 580aaa7e setarg 0x0aaa7e 
-00dd 67f18a0f store 3 ,0x8a0f 
-00de 2000003c nop 60 
-00df 708a2500 jam 0x00 ,0x8a25 
-00e0 708a260d jam 0x0d ,0x8a26 
-00e1 708a16f6 jam 0xf6 ,0x8a16 
-00e2 20202203 branch txon + 7 
+0109 580aaa7e setarg 0x0aaa7e 
+010a 67f18a0f store 3 ,0x8a0f 
+010b 2000003c nop 60 
+010c 708a2500 jam 0x00 ,0x8a25 
+010d 708a260d jam 0x0d ,0x8a26 
+010e 708a16f6 jam 0xf6 ,0x8a16 
+010f 20202203 branch txon + 7 
 
 p_set_tx_power:
-00e3 6fe0c141 fetch 1 ,mem_tx_power 
-00e4 c0032225 beq tx_power_6db ,set_tx_power_7db 
-00e5 c00500e9 beq tx_power_10db ,p_set_tx_power_10db 
-00e6 c04f00f2 beq tx_power_f30db ,p_set_tx_power_f30db 
-00e7 c05500ee beq tx_power_factory ,p_set_tx_power_factory 
-00e8 2020220e branch set_tx_power + 2 
-
-p_set_tx_power_10db:
-00e9 708a1425 jam 0x25 ,0x8a14 
-00ea 58a93f3f setarg 0xa93f3f 
-00eb 67f18a60 store 3 ,0x8a60 
-00ec 708a631f jam 0x1f ,0x8a63 
-00ed 20600000 rtn 
+0110 6fe08008 fetch 1 ,mem_last_freq 
+0111 c00b2231 beq 22 ,set_tx_power_f5db 
+0112 c0172231 beq 46 ,set_tx_power_f5db 
+0113 c0232231 beq 70 ,set_tx_power_f5db 
+0114 6fe0c141 fetch 1 ,mem_tx_power 
+0115 c0032221 beq tx_power_6db ,set_tx_power_5db 
+0116 c0550118 beq tx_power_factory ,p_set_tx_power_factory 
+0117 2020220e branch set_tx_power + 2 
 
 p_set_tx_power_factory:
-00ee 708a1417 jam 0x17 ,0x8a14 
-00ef 6fe1ca08 fetch 3 ,mem_tx_power_factory_param_new 
-00f0 67f18a60 store 3 ,0x8a60 
-00f1 2020221a branch set_tx_power_8a63_28 
+0118 708a1417 jam 0x17 ,0x8a14 
+0119 6fe1ca08 fetch 3 ,mem_tx_power_factory_param_new 
+
+p_mouse_tx_power_set:
+011a 67f18a60 store 3 ,0x8a60 
+011b 2020221a branch set_tx_power_8a63_28 
 
 p_set_tx_power_f30db:
-00f2 708a1417 jam 0x17 ,0x8a14 
-00f3 58250300 setarg 0x250300 
-00f4 67f18a60 store 3 ,0x8a60 
-00f5 2020221a branch set_tx_power_8a63_28 
+011c 708a1417 jam 0x17 ,0x8a14 
+011d 58250300 setarg 0x250300 
+011e 2020011a branch p_mouse_tx_power_set 
 
 p_rx_dcoc:
-00f6 20758000 rtn wake 
-00f7 20402160 call set_sync_on 
-00f8 d8400027 arg 39 ,temp 
-00f9 2040216f call set_freq_rx 
-00fa 204021a6 call rf_rx_enable 
-00fb 708a257f jam 0x7f ,0x8a25 
-00fc 708a301a jam 0x1a ,0x8a30 
-00fd 708a3178 jam 0x78 ,0x8a31 
-00fe 708a8fb2 jam 0xb2 ,0x8a8f 
-00ff 708ac200 jam 0 ,0x8ac2 
-0100 708ac300 jam 0 ,0x8ac3 
-0101 d8e00006 arg 6 ,queue 
-0102 20400113 call p_rx_dcoc_avg 
-0103 2a2ffe0d isolate1 13 ,rega 
-0104 2040211d call qset_start 
-0105 2a4ffe0d isolate1 13 ,regb 
-0106 2040211e call qset_p 
-0107 d8e00005 arg 5 ,queue 
+011f 20758000 rtn wake 
+0120 20402160 call set_sync_on 
+0121 d8400027 arg 39 ,temp 
+0122 2040216f call set_freq_rx 
+0123 204021a6 call rf_rx_enable 
+0124 708a257f jam 0x7f ,0x8a25 
+0125 708a301a jam 0x1a ,0x8a30 
+0126 708a3178 jam 0x78 ,0x8a31 
+0127 708a8fb2 jam 0xb2 ,0x8a8f 
+0128 708ac200 jam 0 ,0x8ac2 
+0129 708ac300 jam 0 ,0x8ac3 
+012a d8e00006 arg 6 ,queue 
+012b 2040013c call p_rx_dcoc_avg 
+012c 2a2ffe0d isolate1 13 ,rega 
+012d 2040211d call qset_start 
+012e 2a4ffe0d isolate1 13 ,regb 
+012f 2040211e call qset_p 
+0130 d8e00005 arg 5 ,queue 
 
 p_rx_dcoc_loop2:
-0108 2040211c call qset1_p 
-0109 2040211e call qset_p 
-010a 20400113 call p_rx_dcoc_avg 
-010b d8a08ac2 arg 0x8ac2 ,contw 
-010c 1a31fe00 rshift4 rega ,pdata 
-010d 20402117 call qsetxor 
-010e 1a51fe00 rshift4 regb ,pdata 
-010f 20402117 call qsetxor 
-0110 18e08fff increase -1 ,queue 
-0111 20210108 branch p_rx_dcoc_loop2 ,positive 
-0112 2020214f branch rx_dcoc_loop2 + 10 
+0131 2040211c call qset1_p 
+0132 2040211e call qset_p 
+0133 2040013c call p_rx_dcoc_avg 
+0134 d8a08ac2 arg 0x8ac2 ,contw 
+0135 1a31fe00 rshift4 rega ,pdata 
+0136 20402117 call qsetxor 
+0137 1a51fe00 rshift4 regb ,pdata 
+0138 20402117 call qsetxor 
+0139 18e08fff increase -1 ,queue 
+013a 20210131 branch p_rx_dcoc_loop2 ,positive 
+013b 2020214f branch rx_dcoc_loop2 + 10 
 
 p_rx_dcoc_avg:
-0113 2000003c nop 60 
-0114 58000f00 setarg mem_dcoc_buf 
-0115 67f10982 store 2 ,0x8982 
-0116 58000ff0 setarg mem_dcoc_buf_end 
-0117 67f10984 store 2 ,0x8984 
-0118 70898109 jam 0x9 ,0x8981 
-0119 70898103 jam 0x3 ,0x8981 
-011a 70898006 jam 0x6 ,0x8980 
-011b 2000003c nop 60 
-011c da200000 arg 0 ,rega 
-011d da400000 arg 0 ,regb 
-011e df200010 arg 16 ,loopcnt 
-011f d8c00f00 arg mem_dcoc_buf ,contr 
-0120 2020212d branch rx_dcoc_loop 
+013c 2000003c nop 60 
+013d 58000f00 setarg mem_dcoc_buf 
+013e 67f10982 store 2 ,0x8982 
+013f 58000ff0 setarg mem_dcoc_buf_end 
+0140 67f10984 store 2 ,0x8984 
+0141 70898109 jam 0x9 ,0x8981 
+0142 70898103 jam 0x3 ,0x8981 
+0143 70898006 jam 0x6 ,0x8980 
+0144 2000003c nop 60 
+0145 da200000 arg 0 ,rega 
+0146 da400000 arg 0 ,regb 
+0147 df200010 arg 16 ,loopcnt 
+0148 d8c00f00 arg mem_dcoc_buf ,contr 
+0149 2020212d branch rx_dcoc_loop 
 
 p_rfpll_aac_ghpc:
-0121 20758000 rtn wake 
-0122 20202272 branch rfpll_aac_ghpc + 1 
-
-p_dpll_ring_ibias_calc:
-0123 20600000 rtn 
-
-p_sadc_calibration:
-0124 20758000 rtn wake 
-0125 708a0777 jam 0x77 ,core_gpadc_ctrl 
-0126 708a08c9 jam 0xc9 ,core_gpadc_cfg0 
-0127 708a0b01 jam 0x01 ,core_gpadc_cfg3 
-0128 6fe0c409 fetch 1 ,mem_adc_clkdiv 
-0129 67f080cd store 1 ,core_sadc_clkdiv 
-012a 20000bb8 nop 3000 
-012b 2040014c call p_sadc_read 
-012c 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
-012d 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
-012e df200008 arg 8 ,loopcnt 
-012f 20406f58 call sadc_cal_read + 1 
-0130 6fe0c419 fetch 1 ,mem_spi_write_addr 
-0131 67e0c433 store 1 ,mem_adc_cal_c7 
-0132 6240c419 storer regb ,1 ,mem_spi_write_addr 
-0133 20600000 rtn 
-
-p_enable_adc:
-0134 20400142 call p_sadc_cal_write 
-0135 6ff08a09 fetch 1 ,core_gpadc_cfg1 
-0136 793ffe07 set0 7 ,pdata 
-0137 67f08a09 store 1 ,core_gpadc_cfg1 
-0138 708a0777 jam 0x77 ,core_gpadc_ctrl 
-0139 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
-013a 708a0b01 jam 0x01 ,core_gpadc_cfg3 
-013b 20406f90 call sadc_channel 
-013c 6fe0c409 fetch 1 ,mem_adc_clkdiv 
-013d 67f080cd store 1 ,core_sadc_clkdiv 
-013e 20000bb8 nop 3000 
-013f 2040014c call p_sadc_read 
-0140 7080cd00 jam 0 ,core_sadc_clkdiv 
-0141 20206fa1 branch sadc_dma 
-
-p_sadc_cal_write:
-0142 6ff080cc fetch 1 ,core_sadc_ctrl 
-0143 79207e01 set1 1 ,pdata 
-0144 67f080cc store 1 ,core_sadc_ctrl 
-0145 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
-0146 6fe0c433 fetch 1 ,mem_adc_cal_c7 
-0147 67e0c419 store 1 ,mem_spi_write_addr 
-0148 df200008 arg 8 ,loopcnt 
-0149 20406f67 call sadc_cal_write + 4 
-014a 6240c419 storer regb ,1 ,mem_spi_write_addr 
-014b 20600000 rtn 
-
-p_sadc_read:
-014c 7080cc03 jam 0x03 ,core_sadc_ctrl 
-
-p_sadc_read_wait:
-014d 6ff08129 fetch 1 ,core_perf_status 
-014e c302814d bbit0 saradc_done ,p_sadc_read_wait 
-014f 68590164 fetcht 2 ,core_sadc_data 
-0150 6049440a storet 2 ,mem_adc_current_value 
-0151 7080cc00 jam 0x00 ,core_sadc_ctrl 
-0152 20600000 rtn 
+014a 20758000 rtn wake 
+014b 20202272 branch rfpll_aac_ghpc + 1 
 
 p_set_lemode:
-0153 708a8211 jam 0x11 ,0x8a82 
-0154 708a8d12 jam 0x12 ,0x8a8d 
-0155 708a8e0a jam 0x0a ,0x8a8e 
-0156 6fe0c099 fetch 1 ,mem_fcomp_div 
-0157 c008016c beq xtal_16m ,p_set_lemode_2m_16m 
-0158 58005762 setarg 0x5762 
-0159 67f10907 store 2 ,0x8907 
+014c 708a8211 jam 0x11 ,0x8a82 
+014d 708a8d12 jam 0x12 ,0x8a8d 
+014e 708a8e0a jam 0x0a ,0x8a8e 
+014f 6fe0c099 fetch 1 ,mem_fcomp_div 
+0150 c0080165 beq xtal_16m ,p_set_lemode_2m_16m 
+0151 58005762 setarg 0x5762 
+0152 67f10907 store 2 ,0x8907 
 
 p_set_lemode_2m:
-015a 70890103 jam 3 ,0x8901 
-015b 70893003 jam 3 ,0x8930 
-015c c6168000 rtnmark1 mark_ble_2m 
-015d 70890101 jam 1 ,0x8901 
-015e 708a8207 jam 0x07 ,0x8a82 
-015f 708a8d44 jam 0x44 ,0x8a8d 
-0160 708a8e0a jam 0x0a ,0x8a8e 
-0161 6fe0c099 fetch 1 ,mem_fcomp_div 
-0162 c0080169 beq xtal_16m ,p_set_lemode_1m_16m 
-0163 58002bb1 setarg 0x2bb1 
-0164 67f10907 store 2 ,0x8907 
+0153 70890103 jam 3 ,0x8901 
+0154 70893003 jam 3 ,0x8930 
+0155 c6168000 rtnmark1 mark_ble_2m 
+0156 70890101 jam 1 ,0x8901 
+0157 708a8207 jam 0x07 ,0x8a82 
+0158 708a8d44 jam 0x44 ,0x8a8d 
+0159 708a8e0a jam 0x0a ,0x8a8e 
+015a 6fe0c099 fetch 1 ,mem_fcomp_div 
+015b c0080162 beq xtal_16m ,p_set_lemode_1m_16m 
+015c 58002bb1 setarg 0x2bb1 
+015d 67f10907 store 2 ,0x8907 
 
 p_set_lemode_1m:
-0165 c6978000 rtnmark0 mark_ble_lr 
-0166 70893024 jam 0x24 ,0x8930 
-0167 70890105 jam 5 ,0x8901 
-0168 20600000 rtn 
+015e c6978000 rtnmark0 mark_ble_lr 
+015f 70893024 jam 0x24 ,0x8930 
+0160 70890105 jam 5 ,0x8901 
+0161 20600000 rtn 
 
 p_set_lemode_1m_16m:
-0169 58004189 setarg 0x4189 
-016a 67f10907 store 2 ,0x8907 
-016b 20200165 branch p_set_lemode_1m 
+0162 58004189 setarg 0x4189 
+0163 67f10907 store 2 ,0x8907 
+0164 2020015e branch p_set_lemode_1m 
 
 p_set_lemode_2m_16m:
-016c 58008312 setarg 0x8312 
-016d 67f10907 store 2 ,0x8907 
-016e 2020015a branch p_set_lemode_2m 
+0165 58008312 setarg 0x8312 
+0166 67f10907 store 2 ,0x8907 
+0167 20200153 branch p_set_lemode_2m 
 
 p_le_check_retransmit_timesout:
-016f 6fe0cbf6 fetch 1 ,mem_le_conn_rcv_new 
-0170 da600100 arg 256 ,regc 
-0171 9a60fe00 iadd regc ,pdata 
-0172 20600000 rtn 
-
-p_le_got_first_packet:
-0173 20200193 branch p_le_got_first_packet_new 
+0168 6fe0cbf9 fetch 1 ,mem_le_conn_rcv_new 
+0169 da600100 arg 256 ,regc 
+016a 9a60fe00 iadd regc ,pdata 
+016b 20600000 rtn 
 
 p_le_slave_match:
-0174 20400176 call p_le_check_retransmit 
-0175 20202563 branch le_slave_match + 1 
+016c 2040016e call p_le_check_retransmit 
+016d 20202563 branch le_slave_match + 1 
 
 p_le_check_retransmit:
-0176 6fe0cbf7 fetch 1 ,mem_le_conn_first_rcv 
-0177 207a0000 rtn blank 
-0178 6fe0cbf8 fetch 1 ,mem_le_check_retransmit_flag 
-0179 247a0000 nrtn blank 
-017a 6848cbf7 fetcht 1 ,mem_le_conn_first_rcv 
-017b 6fe0cbf6 fetch 1 ,mem_le_conn_rcv_new 
-017c 98467c00 isub temp ,null 
-017d 2441016f ncall p_le_check_retransmit_timesout ,positive 
-017e 98467e00 isub temp ,pdata 
-017f 1fe67c64 sub pdata ,100 ,null 
-0180 20210188 branch p_le_check_retransmit_count ,positive 
-0181 6fe0cbf9 fetch 1 ,mem_le_retransmit_cnt 
-0182 1fe67c14 sub pdata ,20 ,null 
-0183 24410186 ncall p_app_ble_disconnect ,positive 
-0184 704bf801 jam 1 ,mem_le_check_retransmit_flag 
-0185 20600000 rtn 
+016e 6fe0cbfa fetch 1 ,mem_le_conn_first_rcv 
+016f 207a0000 rtn blank 
+0170 6fe0cbfb fetch 1 ,mem_le_check_retransmit_flag 
+0171 247a0000 nrtn blank 
+0172 6848cbfa fetcht 1 ,mem_le_conn_first_rcv 
+0173 6fe0cbf9 fetch 1 ,mem_le_conn_rcv_new 
+0174 98467c00 isub temp ,null 
+0175 24410168 ncall p_le_check_retransmit_timesout ,positive 
+0176 98467e00 isub temp ,pdata 
+0177 1fe67c64 sub pdata ,100 ,null 
+0178 20210180 branch p_le_check_retransmit_count ,positive 
+0179 6fe0cbfc fetch 1 ,mem_le_retransmit_cnt 
+017a 1fe67c14 sub pdata ,20 ,null 
+017b 2441017e ncall p_app_ble_disconnect ,positive 
+017c 704bfb01 jam 1 ,mem_le_check_retransmit_flag 
+017d 20600000 rtn 
 
 p_app_ble_disconnect:
-0186 704bfa01 jam 1 ,mem_le_check_retransmit_discon_flag 
-0187 2020431f branch app_ble_disconnect 
+017e 704bfd01 jam 1 ,mem_le_check_retransmit_discon_flag 
+017f 2020431f branch app_ble_disconnect 
 
 p_le_check_retransmit_count:
-0188 6848817f fetcht 1 ,mem_le_arq 
-0189 6fe0804c fetch 1 ,mem_le_rxbuf_data_header 
-018a 1fe37e00 rshift pdata ,pdata 
-018b 9842fe00 ixor temp ,pdata 
-018c 2feffe02 isolate1 nesn ,pdata 
-018d 58000000 setarg 0 
-018e 6848cbf9 fetcht 1 ,mem_le_retransmit_cnt 
-018f 7920fe00 setflag true ,0 ,pdata 
-0190 98408400 iadd temp ,temp 
-0191 6048cbf9 storet 1 ,mem_le_retransmit_cnt 
-0192 20600000 rtn 
+0180 6848817f fetcht 1 ,mem_le_arq 
+0181 6fe0804c fetch 1 ,mem_le_rxbuf_data_header 
+0182 1fe37e00 rshift pdata ,pdata 
+0183 9842fe00 ixor temp ,pdata 
+0184 2feffe02 isolate1 nesn ,pdata 
+0185 58000000 setarg 0 
+0186 6848cbfc fetcht 1 ,mem_le_retransmit_cnt 
+0187 7920fe00 setflag true ,0 ,pdata 
+0188 98408400 iadd temp ,temp 
+0189 6048cbfc storet 1 ,mem_le_retransmit_cnt 
+018a 20600000 rtn 
 
 p_le_got_first_packet_new:
-0193 6fe08005 fetch 1 ,mem_le_conn_rcv 
-0194 1fe0fe01 increase 1 ,pdata 
-0195 67e08005 store 1 ,mem_le_conn_rcv 
-0196 2436819a nbranch p_le_got_first_packet_new + 7 ,match 
-0197 6fe0cbf6 fetch 1 ,mem_le_conn_rcv_new 
-0198 1fe0fe01 increase 1 ,pdata 
-0199 67e0cbf6 store 1 ,mem_le_conn_rcv_new 
-019a 6fe08168 fetch 1 ,mem_le_state 
-019b c3818000 rtnbit1 lestate_got_first_packet 
-019c 79207e03 set1 lestate_got_first_packet ,pdata 
-019d 67e08168 store 1 ,mem_le_state 
-019e 6fe142f5 fetch 2 ,mem_le_init_superto 
-019f 67e10196 store 2 ,mem_le_superto 
-01a0 58000000 setarg 0 
-01a1 67e2431d store 4 ,mem_le_transmit_window 
-01a2 20600000 rtn 
+018b 6fe08005 fetch 1 ,mem_le_conn_rcv 
+018c 1fe0fe01 increase 1 ,pdata 
+018d 67e08005 store 1 ,mem_le_conn_rcv 
+018e 24368192 nbranch p_le_got_first_packet_new + 7 ,match 
+018f 6fe0cbf9 fetch 1 ,mem_le_conn_rcv_new 
+0190 1fe0fe01 increase 1 ,pdata 
+0191 67e0cbf9 store 1 ,mem_le_conn_rcv_new 
+0192 2020259b branch le_got_first_packet + 4 
 
 p_le_rx_dec:
-01a3 2040281c call le_check_retransmit 
-01a4 6a20804d fetchr rega ,1 ,mem_le_rxbuf_data_length 
-01a5 1a20a3fc increase -4 ,rega 
-01a6 242126fa nbranch le_crc_fail_consecutive ,positive 
-01a7 2020268e branch le_rx_dec + 6 
+0193 2040281c call le_check_retransmit 
+0194 6a20804d fetchr rega ,1 ,mem_le_rxbuf_data_length 
+0195 1a20a3fc increase -4 ,rega 
+0196 242126fa nbranch le_crc_fail_consecutive ,positive 
+0197 2020268e branch le_rx_dec + 6 
 
 p_le_rx_nopayload:
-01a8 09800018 parse demod ,bucket ,24 
-01a9 1fef7e00 rshift32 pdata ,pdata 
-01aa 1ff17e00 rshift16 pdata ,pdata 
-01ab e7e18005 istore 3 ,contw 
-01ac 78287c00 enable swfine 
-01ad 2040270d call le_set_until_tx_timer 
-01ae 202326f6 branch le_crc_fail ,crc_failed 
-01af c59926af bmark0 mark_ble_encryption ,le_rx_match 
-01b0 6fe0804d fetch 1 ,mem_le_rxbuf_data_length 
-01b1 203a26af branch le_rx_match ,blank 
-01b2 1fe0fffc increase -4 ,pdata 
-01b3 67e0804d store 1 ,mem_le_rxbuf_data_length 
-01b4 204072cb call wait_ccm_done 
-01b5 6ff08108 fetch 1 ,core_misc_status 
-01b6 c303a6fa bbit0 7 ,le_crc_fail_consecutive 
-01b7 1800700c force regidx_result ,regext_index 
-01b8 65e20154 storer regext ,4 ,mem_le_peer_mic 
-01b9 202026af branch le_rx_match 
+0198 09800018 parse demod ,bucket ,24 
+0199 1fef7e00 rshift32 pdata ,pdata 
+019a 1ff17e00 rshift16 pdata ,pdata 
+019b e7e18005 istore 3 ,contw 
+019c 78287c00 enable swfine 
+019d 2040270d call le_set_until_tx_timer 
+019e 202326f6 branch le_crc_fail ,crc_failed 
+019f c59926af bmark0 mark_ble_encryption ,le_rx_match 
+01a0 6fe0804d fetch 1 ,mem_le_rxbuf_data_length 
+01a1 203a26af branch le_rx_match ,blank 
+01a2 1fe0fffc increase -4 ,pdata 
+01a3 67e0804d store 1 ,mem_le_rxbuf_data_length 
+01a4 204072cb call wait_ccm_done 
+01a5 6ff08108 fetch 1 ,core_misc_status 
+01a6 c303a6fa bbit0 7 ,le_crc_fail_consecutive 
+01a7 1800700c force regidx_result ,regext_index 
+01a8 65e20154 storer regext ,4 ,mem_le_peer_mic 
+01a9 202026af branch le_rx_match 
 
 p_le_parse:
-01ba 6fe0c334 fetch 1 ,mem_le_packet_llid 
-01bb c1000000 rtneq llid_reserved 
-01bc c001b04a beq llid_le_ll ,le_parse_ll 
-01bd 202028e1 branch le_parse_l2cap 
+01aa 6fe0c334 fetch 1 ,mem_le_packet_llid 
+01ab c1000000 rtneq llid_reserved 
+01ac c001b04a beq llid_le_ll ,le_parse_ll 
+01ad 202028e1 branch le_parse_l2cap 
 
 p_le_init_adv:
-01be 793f8030 set0 mark_ble_crc_fail ,mark 
-01bf 20202af6 branch le_init_adv + 1 
+01ae 793f8030 set0 mark_ble_crc_fail ,mark 
+01af 20202af6 branch le_init_adv + 1 
+
+p_le_receive_rxon:
+01b0 204025c2 call le_prep 
+01b1 c59781b6 bmark0 mark_ble_lr ,p_le_receive_nolr 
+01b2 783cfc00 pulse dewhiten_code_calc 
+01b3 2000001e nop 30 
+01b4 204025c2 call le_prep 
+01b5 19699600 lshift3 timeup ,timeup 
+
+p_le_receive_nolr:
+01b6 7856fc00 disable match 
+01b7 7826fc00 enable decode_fec0 
+01b8 7830fc00 enable is_rx 
+01b9 78507c00 disable is_tx 
+01ba 19623600 copy timeup ,stop_watch 
+01bb 37c18400 correlate null ,timeout 
+01bc 203701bf branch p_le_receive_on_attempt ,attempt 
+01bd 1b420400 copy clke ,temp 
+01be 604b000f storet 6 ,mem_sync_clke 
+
+p_le_receive_on_attempt:
+01bf 242c26fa nbranch le_unsync_end ,sync 
+01c0 78287c00 enable swfine 
+01c1 6fe0c167 fetch 1 ,mem_le_tx_ifs_defference 
+01c2 d8404e20 arg param_20ms_init ,temp 
+01c3 98408400 iadd temp ,temp 
+01c4 6fe0c148 fetch 1 ,mem_system_clk 
+01c5 984fb600 imul32 temp ,stop_watch 
+01c6 20406877 call rf_debug_rx_sync_line 
+01c7 20372677 branch le_receive_skip ,attempt 
+01c8 204001cd call p_calc_clke_all_modem 
+01c9 6fe08168 fetch 1 ,mem_le_state 
+01ca c301a677 bbit0 lestate_got_first_packet ,le_receive_skip 
+01cb 2055a477 call lpm_adjust_clk ,wake 
+01cc 20202677 branch le_receive_skip 
+
+p_calc_clke_all_modem:
+01cd 684b000f fetcht 6 ,mem_sync_clke 
+01ce 1b427e00 copy clke ,pdata 
+01cf 20407d12 call clk_diff 
+01d0 1fe20400 copy pdata ,temp 
+01d1 204026ff call calc_clke_all_modem 
+01d2 1b425600 copy clke ,rege 
+01d3 1d227e00 copy clke_rt ,pdata 
+01d4 9840fe00 iadd temp ,pdata 
+01d5 1fe25200 copy pdata ,clke_rt 
+01d6 20600000 rtn 
+
+p_lpm_adjust_clk:
+01d7 c584a489 bmark0 mark_context ,lpm_clear_counter 
+01d8 684a40ad fetcht 4 ,mem_sleep_counter_all 
+01d9 dfe00600 arg 0x600 ,pdata 
+01da 98467c00 isub temp ,null 
+01db 20610000 rtn positive 
+01dc 18422200 copy temp ,rega 
+01dd 684b000f fetcht 6 ,mem_sync_clke 
+01de 1d627e00 deposit rege 
+01df 20407d10 call clk_diff_rt 
+01e0 1a220400 copy rega ,temp 
+01e1 2020247d branch lpm_adjust_clk + 6 
+
+p_le_adv_not_match:
+01e2 20402152 call shutdown_radio 
+01e3 70890000 jam 0 ,0x8900 
+01e4 793f8030 set0 mark_ble_crc_fail ,mark 
+01e5 20202ae3 branch le_adv_not_match + 1 
 
 p_le_parse_l2cap:
-01c0 efe10006 ifetch 2 ,contr 
-01c1 c00201c3 beq le_l2cap_cid_att ,p_le_parse_att 
-01c2 202028eb branch le_parse_l2cap_next + 2 
+01e6 efe10006 ifetch 2 ,contr 
+01e7 c00201e9 beq le_l2cap_cid_att ,p_le_parse_att 
+01e8 202028eb branch le_parse_l2cap_next + 2 
 
 p_le_parse_att:
-01c3 efe18006 ifetch 3 ,contr 
-01c4 67e1c397 store 3 ,mem_le_att_opcode 
-01c5 c00501c8 beq attop_read_request ,p_le_parse_att_read_request 
-01c6 c00901d7 beq attop_write_request ,p_le_parse_att_write_request 
-01c7 20202b96 branch le_parse_att2 
+01e9 efe18006 ifetch 3 ,contr 
+01ea 67e1c397 store 3 ,mem_le_att_opcode 
+01eb c00501ee beq attop_read_request ,p_le_parse_att_read_request 
+01ec c00901fd beq attop_write_request ,p_le_parse_att_write_request 
+01ed 20202b96 branch le_parse_att2 
 
 p_le_parse_att_read_request:
-01c8 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-01c9 c31dad19 bbit0 mouse_enable_le_battery_service_cancel ,le_parse_att_read_request 
-01ca 20402dc7 call le_check_encrypt_state 
-01cb 68494398 fetcht 2 ,mem_le_att_handle 
-01cc 6fe0c321 fetch 1 ,mem_le_configuration 
-01cd c28181d2 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
+01ee 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+01ef c31dad19 bbit0 mouse_enable_le_battery_service_cancel ,le_parse_att_read_request 
+01f0 20402dc7 call le_check_encrypt_state 
+01f1 68494398 fetcht 2 ,mem_le_att_handle 
+01f2 6fe0c321 fetch 1 ,mem_le_configuration 
+01f3 c28181f8 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
 
 p_le_send_att_read_response:
-01ce 6fe14398 fetch 2 ,mem_le_att_handle 
-01cf c0182e03 beq 0x30 ,le_send_att_error_response_notfound 
-01d0 68494398 fetcht 2 ,mem_le_att_handle 
-01d1 20202d1d branch le_send_att_read_response 
+01f4 6fe14398 fetch 2 ,mem_le_att_handle 
+01f5 c0182e03 beq 0x30 ,le_send_att_error_response_notfound 
+01f6 68494398 fetcht 2 ,mem_le_att_handle 
+01f7 20202d1d branch le_send_att_read_response 
 
 p_le_send_att_read_response_check_auth:
-01d2 6fe14332 fetch 2 ,mem_le_pairing_handle 
-01d3 98467c00 isub temp ,null 
-01d4 242281ce nbranch p_le_send_att_read_response ,zero 
-01d5 243401ce nbranch p_le_send_att_read_response ,user 
-01d6 20202d46 branch le_send_att_read_response_error_insufficient_auth 
+01f8 6fe14332 fetch 2 ,mem_le_pairing_handle 
+01f9 98467c00 isub temp ,null 
+01fa 242281f4 nbranch p_le_send_att_read_response ,zero 
+01fb 243401f4 nbranch p_le_send_att_read_response ,user 
+01fc 20202d46 branch le_send_att_read_response_error_insufficient_auth 
 
 p_le_parse_att_write_request:
-01d7 18c22200 copy contr ,rega 
-01d8 6fe14335 fetch 2 ,mem_le_l2cap_size 
-01d9 1fe0a5fd add pdata ,-3 ,regb 
-01da 20402929 call le_writeatt_cb 
-01db 6fe0c78f fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
-01dc c07fadac beq 0xff ,le_send_att_write_response_check_auth 
-01dd 6fe0c795 fetch 1 ,mem_mouse_le_reconnect_flag 
-01de 203a2dac branch le_send_att_write_response_check_auth ,blank 
-01df 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
-01e0 c280adac bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
-01e1 5800001a setarg 0x001a 
-01e2 68494398 fetcht 2 ,mem_le_att_handle 
-01e3 98467c00 isub temp ,null 
-01e4 2422adac nbranch le_send_att_write_response_check_auth ,zero 
-01e5 20202d46 branch le_send_att_read_response_error_insufficient_auth 
+01fd 18c22200 copy contr ,rega 
+01fe 6fe14335 fetch 2 ,mem_le_l2cap_size 
+01ff 1fe0a5fd add pdata ,-3 ,regb 
+0200 20402929 call le_writeatt_cb 
+0201 6fe0c78f fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
+0202 c07fadac beq 0xff ,le_send_att_write_response_check_auth 
+0203 6fe0c795 fetch 1 ,mem_mouse_le_reconnect_flag 
+0204 203a2dac branch le_send_att_write_response_check_auth ,blank 
+0205 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
+0206 c280adac bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
+0207 5800001a setarg 0x001a 
+0208 68494398 fetcht 2 ,mem_le_att_handle 
+0209 98467c00 isub temp ,null 
+020a 2422adac nbranch le_send_att_write_response_check_auth ,zero 
+020b 20202d46 branch le_send_att_read_response_error_insufficient_auth 
 
 p_mouse_le:
-01e6 20402a28 call le_fifo_check_nearly_full 
-01e7 247a0000 nrtn blank 
-01e8 6fe0c78f fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
-01e9 c07f81f1 beq 0xff ,p_mouse_le_next 
-01ea 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
-01eb 1fe17e03 and pdata ,0x03 ,pdata 
-01ec c1818000 rtnne 0x03 
-01ed 6fe0cbf8 fetch 1 ,mem_le_check_retransmit_flag 
-01ee 207a0000 rtn blank 
-01ef 6fe0cbfa fetch 1 ,mem_le_check_retransmit_discon_flag 
-01f0 247a0000 nrtn blank 
+020c 20402a28 call le_fifo_check_nearly_full 
+020d 247a0000 nrtn blank 
+020e 6fe0c78f fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
+020f c07f8217 beq 0xff ,p_mouse_le_next 
+0210 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
+0211 1fe17e03 and pdata ,0x03 ,pdata 
+0212 c1818000 rtnne 0x03 
+0213 6fe0cbfb fetch 1 ,mem_le_check_retransmit_flag 
+0214 207a0000 rtn blank 
+0215 6fe0cbfd fetch 1 ,mem_le_check_retransmit_discon_flag 
+0216 247a0000 nrtn blank 
 
 p_mouse_le_next:
-01f1 6fe0c956 fetch 1 ,mem_mouse_clear_sensor_data_flag 
-01f2 205a5a71 call mouse_clear_sensor_data_by_reset ,blank 
-01f3 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-01f4 c280db5b bbit1 mouse_24g_pairing_flag ,mouse_le_send_empty_packet 
-01f5 c2805b5b bbit1 mouse_select_device_flag ,mouse_le_send_empty_packet 
-01f6 c282db5b bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
-01f7 c2835b5b bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_le_send_empty_packet 
-01f8 20405601 call mouse_motion 
-01f9 20405ab2 call mouse_check_125hz 
-01fa 24740000 nrtn user 
-01fb 20405abc call mouse_current_mult_update 
-01fc 20400480 call p_mouse_data_xy_release 
-01fd 20205b37 branch mouse_le_next + 12 
+0217 6fe0c956 fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0218 205a5a71 call mouse_clear_sensor_data_by_reset ,blank 
+0219 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+021a c280db5b bbit1 mouse_24g_pairing_flag ,mouse_le_send_empty_packet 
+021b c2805b5b bbit1 mouse_select_device_flag ,mouse_le_send_empty_packet 
+021c c282db5b bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+021d c2835b5b bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_le_send_empty_packet 
+021e 20405601 call mouse_motion 
+021f 20405ab2 call mouse_check_125hz 
+0220 24740000 nrtn user 
+0221 20405abc call mouse_current_mult_update 
+0222 204004d8 call p_mouse_data_xy_release 
+0223 20205b37 branch mouse_le_next + 12 
+
+p_gpio_set_wake:
+0224 18467cff sub temp ,ui_button_gpio_disable ,null 
+0225 20628000 rtn zero 
+0226 d9000004 arg 4 ,debug 
+0227 284ffe07 isolate1 gpio_active_bit ,temp 
+0228 2020eebd branch gpio_set_wake_high ,true 
+0229 d9000003 arg 3 ,debug 
+022a 20206ebd branch gpio_set_wake_high 
+
+p_gpio_set_wake_by_current_state:
+022b 18467cff sub temp ,gpio_disable ,null 
+022c 20628000 rtn zero 
+022d 20406ee6 call gpio_get_bit 
+022e 20208231 branch p_gpio_set_qdec_mode ,true 
+
+p_gpio_set_low_wake:
+022f d9000003 arg 3 ,debug 
+0230 20206ebd branch gpio_set_wake_high 
+
+p_gpio_set_qdec_mode:
+0231 704b1d01 jam 1 ,mem_mouse_qdec_set_flag 
+
+p_mouse_qdec_lpm_cfg:
+0232 d9000006 arg 6 ,debug 
+0233 20206ebd branch gpio_set_wake_high 
+
+p_mouse_puchk_disable:
+0234 58000010 setarg 0x10 
+
+p_mouse_puchk_set:
+0235 67f08141 store 1 ,core_puwakeup 
+0236 202023e2 branch lpm_write_wait 
+
+p_mouse_lpm_before_common:
+0237 204004b3 call p_clear_wake 
+0238 704b1d00 jam 0 ,mem_mouse_qdec_set_flag 
+0239 6848c654 fetcht 1 ,mem_matrix_public_gpio 
+023a 20406ef7 call gpio_out_active 
+023b 6848c654 fetcht 1 ,mem_matrix_public_gpio 
+023c 20406ed3 call gpio_clr_wake 
+023d 2040550d call mouse_lpm_before_common + 1 
+023e 204054f9 call mouse_gpio_pd_idle 
+
+p_mouse_wheel_set_impedance:
+023f 6848c64a fetcht 1 ,mem_whee_a_data_gpio 
+0240 20406f0f call gpio_set_high_impedance 
+0241 6848c64b fetcht 1 ,mem_whee_b_data_gpio 
+0242 20206f0f branch gpio_set_high_impedance 
 
 p_lpm_sleep:
-01fe 6fe143e9 fetch 2 ,mem_cb_before_lpm_sleep 
-01ff 20407d79 call callback_func 
 
 p_lpm_sleep_skip_cb_function:
-0200 6fe240ad fetch 4 ,mem_sleep_counter_all 
-0201 9840fe00 iadd temp ,pdata 
-0202 67e240ad store 4 ,mem_sleep_counter_all 
-0203 20400205 call p_lpm_save_context 
-0204 20202425 branch lpm_sleep_skip_cb_function + 4 
+0243 6fe240ad fetch 4 ,mem_sleep_counter_all 
+0244 9840fe00 iadd temp ,pdata 
+0245 67e240ad store 4 ,mem_sleep_counter_all 
+0246 2040024d call p_lpm_save_context 
+0247 20400249 call p_mouse_puchk_set_check 
+0248 20202425 branch lpm_sleep_skip_cb_function + 4 
+
+p_mouse_puchk_set_check:
+0249 6fe0cb1d fetch 1 ,mem_mouse_qdec_set_flag 
+024a 203a0234 branch p_mouse_puchk_disable ,blank 
+
+p_mouse_puchk_enable:
+024b 58000080 setarg 0x80 
+024c 20200235 branch p_mouse_puchk_set 
 
 p_lpm_save_context:
-0205 600440e7 storer mark ,8 ,mem_saved_mark 
-0206 d8c08070 arg core_gpio_conf ,contr 
-0207 d8a040cc arg mem_saved_gpio ,contw 
-0208 20407c8f call memcpy16 
-0209 d8c080d4 arg core_gpio_conf_hi ,contr 
-020a 20407c89 call memcpy8 
-020b 6ff08080 fetch 1 ,core_spid_ctrl 
-020c 67e0c0ef store 1 ,mem_saved_spidctrl 
-020d 18422400 copy temp ,regb 
+024d 600440e7 storer mark ,8 ,mem_saved_mark 
+024e d8c08070 arg core_gpio_conf ,contr 
+024f d8a040cc arg mem_saved_gpio ,contw 
+0250 20407c8f call memcpy16 
+0251 d8c080d4 arg core_gpio_conf_hi ,contr 
+0252 20407c89 call memcpy8 
+0253 6ff08080 fetch 1 ,core_spid_ctrl 
+0254 67e0c0ef store 1 ,mem_saved_spidctrl 
+0255 18422400 copy temp ,regb 
 
 p_lpm_write_gpio_wakeup:
-020e df20000c arg 12 ,loopcnt 
-020f da200016 arg mem_gpio_wakeup_cfg ,rega 
-0210 da60814d arg core_gpio_wakeup_cfg ,regc 
-0211 37d98200 until null ,lpo_edge 
+0256 df20000c arg 12 ,loopcnt 
+0257 da200016 arg mem_gpio_wakeup_cfg ,rega 
+0258 da60814d arg core_gpio_wakeup_cfg ,regc 
+0259 37d98200 until null ,lpo_edge 
 
 p_lpm_write_gpio_loop:
-0212 efe08011 ifetch 1 ,rega 
-0213 e8408013 ifetcht 1 ,regc 
-0214 98467c00 isub temp ,null 
-0215 20228218 branch p_lpm_write_gpio_loop_next ,zero 
-0216 e7e08013 istore 1 ,regc 
-0217 37d98200 until null ,lpo_edge 
+025a efe08011 ifetch 1 ,rega 
+025b e8408013 ifetcht 1 ,regc 
+025c 98467c00 isub temp ,null 
+025d 20228260 branch p_lpm_write_gpio_loop_next ,zero 
+025e e7e08013 istore 1 ,regc 
+025f 37d98200 until null ,lpo_edge 
 
 p_lpm_write_gpio_loop_next:
-0218 1a20a201 increase 1 ,rega 
-0219 1a60a601 increase 1 ,regc 
-021a c2000212 loop p_lpm_write_gpio_loop 
-021b 1a420400 copy regb ,temp 
-021c 20600000 rtn 
+0260 1a20a201 increase 1 ,rega 
+0261 1a60a601 increase 1 ,regc 
+0262 c200025a loop p_lpm_write_gpio_loop 
+0263 1a420400 copy regb ,temp 
+0264 20600000 rtn 
 
 p_otp_read_data:
-021d 20406b3a call enable_otp_read 
-021e 20406b75 call otp_read_data + 1 
-021f 20206b38 branch otp_disable_chgpump 
+0265 20406b3a call enable_otp_read 
+0266 20406b75 call otp_read_data + 1 
+0267 20206b38 branch otp_disable_chgpump 
 
 p_g24_reconn_dispatch:
-0220 6fe145e0 fetch 2 ,mem_24g_reconn_count 
-0221 d84001f8 arg 0x01f8 ,temp 
-0222 98417e00 iand temp ,pdata 
-0223 203a0228 branch p_g24_reconn_dispatch_next ,blank 
-0224 6fe145e0 fetch 2 ,mem_24g_reconn_count 
-0225 1fe0fe01 increase 1 ,pdata 
-0226 67e145e0 store 2 ,mem_24g_reconn_count 
-0227 20600000 rtn 
+0268 6fe145e0 fetch 2 ,mem_24g_reconn_count 
+0269 d84001f8 arg 0x01f8 ,temp 
+026a 98417e00 iand temp ,pdata 
+026b 203a026d branch p_g24_reconn_dispatch_next ,blank 
+026c 20203561 branch g24_reconn_dispatch + 5 
 
 p_g24_reconn_dispatch_next:
-0228 2040357f call g24_reconn_data_prep 
-0229 20403651 call g24_transmit_receive_ack 
-022a 242c3586 nbranch g24_reconn_device_fail ,sync 
-022b 2437b586 nbranch g24_reconn_device_fail ,user3 
-022c 2040366e call g24_ackpayload_parse 
-022d 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
-022e 203a0237 branch p_recv_addr_zero_skip ,blank 
+026d 2040357f call g24_reconn_data_prep 
+026e 20403651 call g24_transmit_receive_ack 
+026f 242c3586 nbranch g24_reconn_device_fail ,sync 
+0270 2437b586 nbranch g24_reconn_device_fail ,user3 
+0271 2040366e call g24_ackpayload_parse 
+0272 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
+0273 203a028d branch p_recv_addr_zero_skip ,blank 
 
 p_g24_reconn_dispatch_next_2:
-022f 6fe245cc fetch 4 ,mem_24g_pair_addr 
-0230 684a458f fetcht 4 ,mem_24g_addr 
-0231 98467c00 isub temp ,null 
-0232 20228234 branch p_g24_reconn_mode_judge ,zero 
-0233 2020356e branch g24_reconn_dispatch_next + 9 
+0274 6fe245cc fetch 4 ,mem_24g_pair_addr 
+0275 684a458f fetcht 4 ,mem_24g_addr 
+0276 98467c00 isub temp ,null 
+0277 20228279 branch p_g24_reconn_mode_judge ,zero 
+0278 2020356e branch g24_reconn_dispatch_next + 9 
 
 p_g24_reconn_mode_judge:
-0234 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0235 c2983291 bbit1 mouse_enable_auto_24g_paring ,g24_pair_start 
-0236 20203549 branch g24_reconn_receiver_addr 
-
-p_recv_addr_zero_skip:
-0237 6fe2455f fetch 4 ,mem_24g_rxpayload + 2 
-0238 207a0000 rtn blank 
-0239 2020022f branch p_g24_reconn_dispatch_next_2 
+0279 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+027a c298604e bbit1 mouse_enable_auto_24g_paring ,mouse_24g_pair_mode_check 
+027b 20203549 branch g24_reconn_receiver_addr 
+
+p_g24_reconn_device_fail:
+027c 6fe0c5e3 fetch 1 ,mem_24g_fast_conn_enable 
+027d 203a3222 branch g24_ch ,blank 
+027e 6fe145e0 fetch 2 ,mem_24g_reconn_count 
+027f 1fe0fe01 increase 1 ,pdata 
+0280 67e145e0 store 2 ,mem_24g_reconn_count 
+0281 2feffe09 isolate1 9 ,pdata 
+0282 6fe0c5e2 fetch 1 ,mem_24g_reconn_type 
+0283 c0028285 beq pair_and_receiver ,p_g24_reconn_pair_and_receiver 
+0284 2020358d branch g24_reconn_device_fail + 7 
+
+p_g24_reconn_pair_and_receiver:
+0285 2020b549 branch g24_reconn_receiver_addr ,true 
+0286 2020329c branch g24_pair_init_param 
 
 p_mouse_param_init:
-023a 2040543b call mouse_param_common_init 
-023b 2040023d call p_mouse_le_buff_modify 
-023c 2020544c branch mouse_param_init + 2 
-
-p_mouse_le_buff_modify:
-023d 58004a1d setarg mem_le_tx_buffer0_omemalloc_new 
-023e 67e1433f store 2 ,mem_ble_l2cap_tx_buff0_ptr 
-023f 58000020 setarg mouse_ble_l2cap_txbuff_size_new 
-0240 67e14341 store 2 ,mem_ble_l2cap_tx_buff_size_ptr 
-0241 20600000 rtn 
+0287 2040543b call mouse_param_common_init 
+0288 58004a1d setarg mem_le_tx_buffer0_omemalloc_new 
+0289 67e1433f store 2 ,mem_ble_l2cap_tx_buff0_ptr 
+028a 58000020 setarg mouse_ble_l2cap_txbuff_size_new 
+028b 67e14341 store 2 ,mem_ble_l2cap_tx_buff_size_ptr 
+028c 2020544c branch mouse_param_init + 2 
+
+p_recv_addr_zero_skip:
+028d 6fe245e4 fetch 4 ,mem_24g_fast_conn_addr 
+028e 684a458f fetcht 4 ,mem_24g_addr 
+028f 98467c00 isub temp ,null 
+0290 20228274 branch p_g24_reconn_dispatch_next_2 ,zero 
+0291 6fe2455f fetch 4 ,mem_24g_rxpayload + 2 
+0292 207a0000 rtn blank 
+0293 20200274 branch p_g24_reconn_dispatch_next_2 
 
 p_power_ctrl_start:
-0242 6fe0c437 fetch 1 ,mem_power_ctrl_disable 
-0243 247a0000 nrtn blank 
-0244 6fe144e9 fetch 2 ,mem_ui_state_map 
-0245 c3858000 rtnbit1 ui_state_ble_adv 
-0246 6a2145f0 fetchr rega ,2 ,mem_rssi_signal_buf_ptr 
-0247 204035b4 call rssi_average 
-0248 6048c624 storet 1 ,mem_rssi_avg_received 
-0249 6fe0c629 fetch 1 ,mem_rssi_dis_max_24g 
-024a c513024c bmark1 mark_24g ,p_power_ctrl_start_next 
-024b 6fe0c62c fetch 1 ,mem_rssi_dis_max_ble 
+0294 6fe0c437 fetch 1 ,mem_power_ctrl_disable 
+0295 247a0000 nrtn blank 
+0296 6fe144e9 fetch 2 ,mem_ui_state_map 
+0297 c3858000 rtnbit1 ui_state_ble_adv 
+0298 6a2145f0 fetchr rega ,2 ,mem_rssi_signal_buf_ptr 
+0299 204035b4 call rssi_average 
+029a 6048c624 storet 1 ,mem_rssi_avg_received 
+029b 6fe0c629 fetch 1 ,mem_rssi_dis_max_24g 
+029c c513029e bmark1 mark_24g ,p_power_ctrl_start_next 
+029d 6fe0c62c fetch 1 ,mem_rssi_dis_max_ble 
 
 p_power_ctrl_start_next:
-024c 98467c00 isub temp ,null 
-024d 24210266 nbranch p_power_ctrl_txpower_incrs_force ,positive 
-024e 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-024f 1fe67c02 sub pdata ,2 ,null 
-0250 24210254 nbranch p_power_ctrl_txpower_decrs_check ,positive 
-0251 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0252 c0000267 beq 0 ,p_power_ctrl_txpower_incrs 
-0253 20600000 rtn 
+029e 98467c00 isub temp ,null 
+029f 242102b8 nbranch p_power_ctrl_txpower_incrs_force ,positive 
+02a0 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+02a1 1fe67c02 sub pdata ,2 ,null 
+02a2 242102a6 nbranch p_power_ctrl_txpower_decrs_check ,positive 
+02a3 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+02a4 c00002b9 beq 0 ,p_power_ctrl_txpower_incrs 
+02a5 20600000 rtn 
 
 p_power_ctrl_txpower_decrs_check:
-0254 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
-0255 6848c627 fetcht 1 ,mem_power_ctrl_pac_succ_cnt_init 
-0256 98467c00 isub temp ,null 
-0257 24628000 nrtn zero 
-0258 70462600 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+02a6 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+02a7 6848c627 fetcht 1 ,mem_power_ctrl_pac_succ_cnt_init 
+02a8 98467c00 isub temp ,null 
+02a9 24628000 nrtn zero 
+02aa 70462600 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 p_power_ctrl_txpower_decrs:
-0259 6848c624 fetcht 1 ,mem_rssi_avg_received 
-025a 6fe0c628 fetch 1 ,mem_rssi_dis_min_24g 
-025b c513025d bmark1 mark_24g ,p_power_ctrl_txpower_decrs_next 
-025c 6fe0c62b fetch 1 ,mem_rssi_dis_min_ble 
+02ab 6848c624 fetcht 1 ,mem_rssi_avg_received 
+02ac 6fe0c628 fetch 1 ,mem_rssi_dis_min_24g 
+02ad c51302af bmark1 mark_24g ,p_power_ctrl_txpower_decrs_next 
+02ae 6fe0c62b fetch 1 ,mem_rssi_dis_min_ble 
 
 p_power_ctrl_txpower_decrs_next:
-025d 98467c00 isub temp ,null 
-025e 24610000 nrtn positive 
-025f 6fe0c625 fetch 1 ,mem_power_ctrl_level 
-0260 c0003715 beq 0 ,power_ctrl_decrs_level0 
-0261 1fe0ffff increase -1 ,pdata 
-0262 67e0c625 store 1 ,mem_power_ctrl_level 
-0263 c001026f beq 2 ,p_power_ctrl_decrs_level2 
-0264 c000b70b beq 1 ,power_ctrl_decrs_level1 
-0265 20203715 branch power_ctrl_decrs_level0 
+02af 98467c00 isub temp ,null 
+02b0 24610000 nrtn positive 
+02b1 6fe0c625 fetch 1 ,mem_power_ctrl_level 
+02b2 c0003715 beq 0 ,power_ctrl_decrs_level0 
+02b3 1fe0ffff increase -1 ,pdata 
+02b4 67e0c625 store 1 ,mem_power_ctrl_level 
+02b5 c00102c1 beq 2 ,p_power_ctrl_decrs_level2 
+02b6 c000b70b beq 1 ,power_ctrl_decrs_level1 
+02b7 20203715 branch power_ctrl_decrs_level0 
 
 p_power_ctrl_txpower_incrs_force:
-0266 70462600 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+02b8 70462600 jam 0 ,mem_power_ctrl_pac_succ_cnt 
 
 p_power_ctrl_txpower_incrs:
-0267 6fe0c625 fetch 1 ,mem_power_ctrl_level 
-0268 c001826d beq 3 ,p_power_ctrl_incrs_level3 
-0269 1fe0fe01 increase 1 ,pdata 
-026a 67e0c625 store 1 ,mem_power_ctrl_level 
-026b c000b70b beq 1 ,power_ctrl_incrs_level1 
-026c c001026f beq 2 ,p_power_ctrl_incrs_level2 
+02b9 6fe0c625 fetch 1 ,mem_power_ctrl_level 
+02ba c00182bf beq 3 ,p_power_ctrl_incrs_level3 
+02bb 1fe0fe01 increase 1 ,pdata 
+02bc 67e0c625 store 1 ,mem_power_ctrl_level 
+02bd c000b70b beq 1 ,power_ctrl_incrs_level1 
+02be c00102c1 beq 2 ,p_power_ctrl_incrs_level2 
 
 p_power_ctrl_incrs_level3:
-026d 70414105 jam tx_power_5db ,mem_tx_power 
-026e 20600000 rtn 
+02bf 70414105 jam tx_power_5db ,mem_tx_power 
+02c0 20600000 rtn 
 
 p_power_ctrl_decrs_level2:
 
 p_power_ctrl_incrs_level2:
-026f 70414103 jam tx_power_3db ,mem_tx_power 
-0270 20600000 rtn 
+02c1 70414103 jam tx_power_3db ,mem_tx_power 
+02c2 20600000 rtn 
 
 p_mouse_cb_fuction:
-0271 58006235 setarg mouse_24g_short_sleep 
-0272 67e145f8 store 2 ,mem_cb_24g_transmit_short_sleep 
-0273 5800027b setarg p_mouse_24g_long_sleep 
-0274 67e145fa store 2 ,mem_cb_24g_transmit_long_sleep 
-0275 58000290 setarg p_mouse_24g_before_lpm_sleep 
-0276 67e143e9 store 2 ,mem_cb_before_lpm_sleep 
-0277 202053f3 branch mouse_cb_fuction + 7 
+02c3 58006235 setarg mouse_24g_short_sleep 
+02c4 67e145f8 store 2 ,mem_cb_24g_transmit_short_sleep 
+02c5 5800622b setarg mouse_24g_long_sleep 
+02c6 67e145fa store 2 ,mem_cb_24g_transmit_long_sleep 
+02c7 202053f3 branch mouse_cb_fuction + 7 
 
 p_soft_reset:
-0278 20800000 clear_stack 
-0279 2055e004 call mouse_wheel_gpio_init ,wake 
-027a 20202003 branch soft_reset + 2 
-
-p_mouse_24g_long_sleep:
-027b 204036b4 call g24_lpm_wait 
-027c 24740000 nrtn user 
-027d 70477c01 jam 1 ,mem_mouse_24g_long_sleep_flag 
-027e 204036be call g24_setgpio_lpm_before 
-027f 70477200 jam 0 ,mem_mouse_24g_sleep_miss 
-0280 204062aa call mouse_24g_send_time_long_wake 
-0281 6fe0c73f fetch 1 ,mem_sensor_shutdown_flag 
-0282 245a54dc ncall mouse_setgpio_hibernate ,blank 
-0283 20400286 call p_mouse_wheel_set_low_pullup 
-0284 6fe245af fetch 4 ,mem_24g_enter_hibernate 
-0285 20203622 branch g24_long_seep2 
-
-p_mouse_wheel_set_low_pullup:
-0286 6fe0c73f fetch 1 ,mem_sensor_shutdown_flag 
-0287 247a0000 nrtn blank 
-0288 6848c64a fetcht 1 ,mem_whee_a_data_gpio 
-0289 20406f0f call gpio_set_high_impedance 
-028a 6848c64a fetcht 1 ,mem_whee_a_data_gpio 
-028b 20406ec6 call gpio_set_low_pullup 
-028c 6848c64b fetcht 1 ,mem_whee_b_data_gpio 
-028d 20406f0f call gpio_set_high_impedance 
-028e 6848c64b fetcht 1 ,mem_whee_b_data_gpio 
-028f 20206ec6 branch gpio_set_low_pullup 
-
-p_mouse_24g_before_lpm_sleep:
-0290 20600000 rtn 
+02c8 2435a002 nbranch soft_reset + 1 ,wake 
+02c9 37d98200 until null ,lpo_edge 
+02ca 37d98200 until null ,lpo_edge 
+02cb 20800000 clear_stack 
+02cc 70808073 jam 0x73 ,core_spid_ctrl 
+02cd 205582cf call p_mouse_wheel_init_set ,wake 
+02ce 20202003 branch soft_reset + 2 
+
+p_mouse_wheel_init_set:
+02cf 20400234 call p_mouse_puchk_disable 
+02d0 204058df call mouse_matrix_public_gpio_reset 
+02d1 20206004 branch mouse_wheel_gpio_init 
+
+p_mouse_default_init:
+02d2 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+02d3 2feffe16 isolate1 mouse_enable_keyboard ,pdata 
+02d4 2040df08 call mouse_customer_key_enable ,true 
+02d5 2020542c branch mouse_default_parm_init 
 
 p_mouse_load_device_info_check:
-0291 20400423 call p_mouse_store_normal_tx_power 
-0292 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0293 c289dd60 bbit1 mouse_enable_eeprom ,mouse_load_eeprom_info_check 
-0294 c2895d6e bbit1 mouse_enable_flash ,mouse_load_flash_info_check 
-0295 c28a0297 bbit1 mouse_enable_otp ,p_mouse_load_otp_info_check 
-0296 20600000 rtn 
+02d6 20400488 call p_mouse_store_normal_tx_power 
+02d7 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+02d8 c289dd60 bbit1 mouse_enable_eeprom ,mouse_load_eeprom_info_check 
+02d9 c2895d6e bbit1 mouse_enable_flash ,mouse_load_flash_info_check 
+02da c28a02dc bbit1 mouse_enable_otp ,p_mouse_load_otp_info_check 
+02db 20600000 rtn 
 
 p_mouse_load_otp_info_check:
-0297 204002a2 call p_mouse_device_flag_temp_store 
-0298 20405e43 call mouse_read_otp_dpi 
-0299 20405db4 call mouse_read_otp_device_flag 
-029a 204002b6 call p_mouse_device_flag_check 
-029b 2040029f call p_mouse_select_device_by_switch_check 
-029c 204002a5 call p_mouse_read_otp_device_info 
-029d 204002be call p_mouse_read_otp_le_addr_increase_count_info 
-029e 20205daa branch mouse_otp_load_app_initflag 
+02dc 204002e7 call p_mouse_device_flag_temp_store 
+02dd 20405e43 call mouse_read_otp_dpi 
+02de 20405db4 call mouse_read_otp_device_flag 
+02df 204002f9 call p_mouse_device_flag_check 
+02e0 204002e4 call p_mouse_select_device_by_switch_check 
+02e1 204002ea call p_mouse_read_otp_device_info 
+02e2 20400301 call p_mouse_read_otp_le_addr_increase_count_info 
+02e3 20205daa branch mouse_otp_load_app_initflag 
 
 p_mouse_select_device_by_switch_check:
-029f 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-02a0 c4150000 rtnbit0 mouse_enable_select_device_by_switch_gpio 
-02a1 2040048b call p_mouse_check_select_device_by_switch 
+02e4 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+02e5 c4150000 rtnbit0 mouse_enable_select_device_by_switch_gpio 
+02e6 204004e3 call p_mouse_check_select_device_by_switch 
 
 p_mouse_device_flag_temp_store:
-02a2 6fe0c666 fetch 1 ,mem_device_flag 
-02a3 67e0ca06 store 1 ,mem_mouse_device_flag_temp 
-02a4 20600000 rtn 
+02e7 6fe0c666 fetch 1 ,mem_device_flag 
+02e8 67e0ca06 store 1 ,mem_mouse_device_flag_temp 
+02e9 20600000 rtn 
 
 p_mouse_read_otp_device_info:
-02a5 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-02a6 c29f5dd1 bbit1 mouse_enable_24g_first_auto_pairing ,mouse_read_otp_le_device1 
-02a7 20205dcc branch mouse_read_otp_device_info 
+02ea 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+02eb 2feffe3e isolate1 mouse_enable_24g_first_auto_pairing ,pdata 
+02ec 2040ddd1 call mouse_read_otp_le_device1 ,true 
+02ed 20205dcc branch mouse_read_otp_device_info 
 
 p_mouse_app_initflag_check:
-02a8 6fe1468e fetch 2 ,mem_store_flag 
-02a9 d840aa55 arg eeprom_init_flag ,temp 
-02aa 98467c00 isub temp ,null 
-02ab 2022832b branch p_mouse_load_device_info ,zero 
-02ac 6049468e storet 2 ,mem_store_flag 
-02ad 20405c9c call mouse_ble_init_address 
-02ae 6fe0c9a1 fetch 1 ,mem_device_flag_temp 
-02af 67e0c666 store 1 ,mem_device_flag 
-02b0 20405c8c call mouse_load_default_dpi 
-02b1 58001122 setarg 0x1122 
-02b2 67e14695 store 2 ,mem_random_addr_increase_count 
+02ee 6fe1468e fetch 2 ,mem_store_flag 
+02ef d840aa55 arg eeprom_init_flag ,temp 
+02f0 98467c00 isub temp ,null 
+02f1 2022836d branch p_mouse_load_device_info ,zero 
+02f2 6049468e storet 2 ,mem_store_flag 
+02f3 20405c9c call mouse_ble_init_address 
+02f4 20405c8c call mouse_load_default_dpi 
+02f5 58001122 setarg 0x1122 
+02f6 67e14695 store 2 ,mem_random_addr_increase_count 
 
 p_mouse_device_flag_temp_load:
-02b3 6fe0ca06 fetch 1 ,mem_mouse_device_flag_temp 
-02b4 67e0c666 store 1 ,mem_device_flag 
-02b5 20600000 rtn 
+02f7 6fe0ca06 fetch 1 ,mem_mouse_device_flag_temp 
+02f8 20205dca branch mouse_device_flag_load_end 
 
 p_mouse_device_flag_check:
-02b6 6fe0c666 fetch 1 ,mem_device_flag 
-02b7 1fe67c00 sub pdata ,0 ,null 
-02b8 202282b3 branch p_mouse_device_flag_temp_load ,zero 
-02b9 1fe67c04 sub pdata ,4 ,null 
-02ba 202282bc branch p_mouse_24g_init ,zero 
-02bb 20610000 rtn positive 
+02f9 6fe0c666 fetch 1 ,mem_device_flag 
+02fa 1fe67c00 sub pdata ,0 ,null 
+02fb 202282f7 branch p_mouse_device_flag_temp_load ,zero 
+02fc 1fe67c04 sub pdata ,4 ,null 
+02fd 202282ff branch p_mouse_24g_init ,zero 
+02fe 20610000 rtn positive 
 
 p_mouse_24g_init:
-02bc 70466600 jam mode_24g_device ,mem_device_flag 
-02bd 20600000 rtn 
+02ff 70466600 jam mode_24g_device ,mem_device_flag 
+0300 20600000 rtn 
 
 p_mouse_read_otp_le_addr_increase_count_info:
-02be 6fe0c666 fetch 1 ,mem_device_flag 
-02bf c1000000 rtneq mode_24g_device 
-02c0 6a4149fe fetchr regb ,2 ,mem_otp_offset_le_addr_increase_count 
-02c1 1a422600 copy regb ,regc 
+0301 6fe0c666 fetch 1 ,mem_device_flag 
+0302 c1000000 rtneq mode_24g_device 
+0303 6a4149fe fetchr regb ,2 ,mem_otp_offset_le_addr_increase_count 
+0304 1a422600 copy regb ,regc 
 
 p_mouse_read_otp_le_addr_increase_count_loop:
-02c2 20405e3d call mouse_read_otp_le_addr_increase_count_common 
-02c3 6fe149e0 fetch 2 ,mem_random_addr_increase_count_temp 
-02c4 203a02cc branch p_mouse_le_addr_increase_count_load ,blank 
-02c5 67e149de store 2 ,mem_random_addr_increase_count_last 
-02c6 1a60a602 increase 2 ,regc 
-02c7 6fe14a00 fetch 2 ,mem_otp_offset_le_addr_increase_count_end 
-02c8 9a667c00 isub regc ,null 
-02c9 242102cc nbranch p_mouse_le_addr_increase_count_load ,positive 
-02ca 1a622400 copy regc ,regb 
-02cb 202002c2 branch p_mouse_read_otp_le_addr_increase_count_loop 
+0305 20405e3d call mouse_read_otp_le_addr_increase_count_common 
+0306 6fe149e0 fetch 2 ,mem_random_addr_increase_count_temp 
+0307 203a030f branch p_mouse_le_addr_increase_count_load ,blank 
+0308 67e149de store 2 ,mem_random_addr_increase_count_last 
+0309 1a60a602 increase 2 ,regc 
+030a 6fe14a00 fetch 2 ,mem_otp_offset_le_addr_increase_count_end 
+030b 9a667c00 isub regc ,null 
+030c 2421030f nbranch p_mouse_le_addr_increase_count_load ,positive 
+030d 1a622400 copy regc ,regb 
+030e 20200305 branch p_mouse_read_otp_le_addr_increase_count_loop 
 
 p_mouse_le_addr_increase_count_load:
-02cc 6fe149de fetch 2 ,mem_random_addr_increase_count_last 
-02cd 67e14695 store 2 ,mem_random_addr_increase_count 
-02ce 20600000 rtn 
+030f 6fe149de fetch 2 ,mem_random_addr_increase_count_last 
+0310 20205e41 branch mouse_le_addr_increase_store 
 
 p_mouse_store_device_info:
-02cf 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-02d0 c289dcb1 bbit1 mouse_enable_eeprom ,mouse_store_eeprom_device_info 
-02d1 c2895cb9 bbit1 mouse_enable_flash ,mouse_store_flash_device_info 
-02d2 c28a02d4 bbit1 mouse_enable_otp ,p_mouse_store_otp_device_info 
-02d3 20600000 rtn 
+0311 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0312 c289dcb1 bbit1 mouse_enable_eeprom ,mouse_store_eeprom_device_info 
+0313 c2895cb9 bbit1 mouse_enable_flash ,mouse_store_flash_device_info 
+0314 c28a0316 bbit1 mouse_enable_otp ,p_mouse_store_otp_device_info 
+0315 20600000 rtn 
 
 p_mouse_store_otp_device_info:
-02d4 204002d7 call p_mouse_write_otp_locall_addr 
-02d5 204002dc call p_mouse_write_otp_device_flag 
-02d6 20205cc1 branch mouse_store_otp_device_info + 1 
+0316 20400319 call p_mouse_write_otp_locall_addr 
+0317 2040031e call p_mouse_write_otp_device_flag 
+0318 20205cc1 branch mouse_store_otp_device_info + 1 
 
 p_mouse_write_otp_locall_addr:
-02d7 6fe0c666 fetch 1 ,mem_device_flag 
-02d8 c1000000 rtneq mode_24g_device 
-02d9 c0008303 beq mode_bt_device1 ,p_mouse_write_otp_le_locall_addr1 
-02da c0010317 beq mode_bt_device2 ,p_mouse_write_otp_le_locall_addr2 
-02db 20600000 rtn 
+0319 6fe0c666 fetch 1 ,mem_device_flag 
+031a c1000000 rtneq mode_24g_device 
+031b c0008345 beq mode_bt_device1 ,p_mouse_write_otp_le_locall_addr1 
+031c c0010359 beq mode_bt_device2 ,p_mouse_write_otp_le_locall_addr2 
+031d 20600000 rtn 
 
 p_mouse_write_otp_device_flag:
-02dc 6a4149e2 fetchr regb ,2 ,mem_otp_offset_device_flag 
-02dd 1a422600 copy regb ,regc 
+031e 6a4149e2 fetchr regb ,2 ,mem_otp_offset_device_flag 
+031f 1a422600 copy regb ,regc 
 
 p_mouse_write_otp_device_flag_loop:
-02de 20405dc0 call mouse_read_otp_device_flag_common 
-02df 6fe0c9a1 fetch 1 ,mem_device_flag_temp 
-02e0 203a02e8 branch p_mouse_device_flag_store ,blank 
-02e1 67e0c9a0 store 1 ,mem_device_flag_last 
-02e2 1a60a601 increase 1 ,regc 
-02e3 6fe149e4 fetch 2 ,mem_otp_offset_device_flag_end 
-02e4 9a667c00 isub regc ,null 
-02e5 24610000 nrtn positive 
-02e6 1a622400 copy regc ,regb 
-02e7 202002de branch p_mouse_write_otp_device_flag_loop 
+0320 20405dc0 call mouse_read_otp_device_flag_common 
+0321 6fe0c9a1 fetch 1 ,mem_device_flag_temp 
+0322 203a032a branch p_mouse_device_flag_store ,blank 
+0323 67e0c9a0 store 1 ,mem_device_flag_last 
+0324 1a60a601 increase 1 ,regc 
+0325 6fe149e4 fetch 2 ,mem_otp_offset_device_flag_end 
+0326 9a667c00 isub regc ,null 
+0327 24610000 nrtn positive 
+0328 1a622400 copy regc ,regb 
+0329 20200320 branch p_mouse_write_otp_device_flag_loop 
 
 p_mouse_device_flag_store:
-02e8 6fe0c9a0 fetch 1 ,mem_device_flag_last 
-02e9 1fe17ef0 and pdata ,0xf0 ,pdata 
-02ea 203a02f2 branch p_mouse_device_flag_store_check ,blank 
-02eb 6fe0c666 fetch 1 ,mem_device_flag 
-02ec 20400300 call p_mouse_device_flag_otp_store_judge 
-02ed 67e0c9a2 store 1 ,mem_device_flag_value 
-
-p_mouse_devoce_flag_store_end:
-02ee df200001 arg 1 ,loopcnt 
-02ef 1a622400 copy regc ,regb 
-02f0 da2049a2 arg mem_device_flag_value ,rega 
-02f1 20206b45 branch otp_write 
+032a 6fe0c9a0 fetch 1 ,mem_device_flag_last 
+032b 1fe17ef0 and pdata ,0xf0 ,pdata 
+032c 203a0334 branch p_mouse_device_flag_store_check ,blank 
+032d 6fe0c666 fetch 1 ,mem_device_flag 
+032e 20400342 call p_mouse_device_flag_otp_store_judge 
+032f 67e0c9a2 store 1 ,mem_device_flag_value 
+
+p_mouse_device_flag_store_end:
+0330 df200001 arg 1 ,loopcnt 
+0331 1a622400 copy regc ,regb 
+0332 da2049a2 arg mem_device_flag_value ,rega 
+0333 20206b45 branch otp_write 
 
 p_mouse_device_flag_store_check:
-02f2 6848c9a0 fetcht 1 ,mem_device_flag_last 
-02f3 6fe0c666 fetch 1 ,mem_device_flag 
-02f4 20400300 call p_mouse_device_flag_otp_store_judge 
-02f5 98467c00 isub temp ,null 
-02f6 20628000 rtn zero 
-02f7 1ff27e00 lshift4 pdata ,pdata 
-02f8 9840fe00 iadd temp ,pdata 
-02f9 67e0c9a2 store 1 ,mem_device_flag_value 
-02fa 1a627e00 copy regc ,pdata 
-02fb 684949e2 fetcht 2 ,mem_otp_offset_device_flag 
-02fc 98467c00 isub temp ,null 
-02fd 202282ee branch p_mouse_devoce_flag_store_end ,zero 
-02fe 1a60a7ff increase -1 ,regc 
-02ff 202002ee branch p_mouse_devoce_flag_store_end 
+0334 6848c9a0 fetcht 1 ,mem_device_flag_last 
+0335 6fe0c666 fetch 1 ,mem_device_flag 
+0336 20400342 call p_mouse_device_flag_otp_store_judge 
+0337 98467c00 isub temp ,null 
+0338 20628000 rtn zero 
+0339 1ff27e00 lshift4 pdata ,pdata 
+033a 9840fe00 iadd temp ,pdata 
+033b 67e0c9a2 store 1 ,mem_device_flag_value 
+033c 1a627e00 copy regc ,pdata 
+033d 684949e2 fetcht 2 ,mem_otp_offset_device_flag 
+033e 98467c00 isub temp ,null 
+033f 20228330 branch p_mouse_device_flag_store_end ,zero 
+0340 1a60a7ff increase -1 ,regc 
+0341 20200330 branch p_mouse_device_flag_store_end 
 
 p_mouse_device_flag_otp_store_judge:
-0300 c1800000 rtnne mode_24g_device 
-0301 1fe0fe04 increase 4 ,pdata 
-0302 20600000 rtn 
+0342 c1800000 rtnne mode_24g_device 
+0343 1fe0fe04 increase 4 ,pdata 
+0344 20600000 rtn 
 
 p_mouse_write_otp_le_locall_addr1:
-0303 6a4149ee fetchr regb ,2 ,mem_otp_offset_le_locall_addr1 
-0304 1a422600 copy regb ,regc 
+0345 6a4149ee fetchr regb ,2 ,mem_otp_offset_le_locall_addr1 
+0346 1a422600 copy regb ,regc 
 
 p_mouse_write_otp_le_locall_addr1_loop:
-0305 20405df3 call mouse_read_otp_le_locall_addr1_common 
-0306 6fe349b5 fetch 6 ,mem_mouse_le_locall_addr1_temp 
-0307 203a030f branch p_mouse_le_local_addr1_store ,blank 
-0308 67e349af store 6 ,mem_mouse_le_locall_addr1_last 
-0309 1a60a606 increase 6 ,regc 
-030a 6fe149f0 fetch 2 ,mem_otp_offset_le_locall_addr1_end 
-030b 9a667c00 isub regc ,null 
-030c 24610000 nrtn positive 
-030d 1a622400 copy regc ,regb 
-030e 20200305 branch p_mouse_write_otp_le_locall_addr1_loop 
+0347 20405df3 call mouse_read_otp_le_locall_addr1_common 
+0348 6fe349b5 fetch 6 ,mem_mouse_le_locall_addr1_temp 
+0349 203a0351 branch p_mouse_le_local_addr1_store ,blank 
+034a 67e349af store 6 ,mem_mouse_le_locall_addr1_last 
+034b 1a60a606 increase 6 ,regc 
+034c 6fe149f0 fetch 2 ,mem_otp_offset_le_locall_addr1_end 
+034d 9a667c00 isub regc ,null 
+034e 24610000 nrtn positive 
+034f 1a622400 copy regc ,regb 
+0350 20200347 branch p_mouse_write_otp_le_locall_addr1_loop 
 
 p_mouse_le_local_addr1_store:
-030f 6fe349af fetch 6 ,mem_mouse_le_locall_addr1_last 
-0310 684b466e fetcht 6 ,mem_device1_locall_addr 
-0311 98467c00 isub temp ,null 
-0312 20628000 rtn zero 
-0313 df200006 arg 6 ,loopcnt 
-0314 da20466e arg mem_device1_locall_addr ,rega 
-0315 1a622400 copy regc ,regb 
-0316 20206b45 branch otp_write 
+0351 6fe349af fetch 6 ,mem_mouse_le_locall_addr1_last 
+0352 684b466e fetcht 6 ,mem_device1_locall_addr 
+0353 98467c00 isub temp ,null 
+0354 20628000 rtn zero 
+0355 df200006 arg 6 ,loopcnt 
+0356 da20466e arg mem_device1_locall_addr ,rega 
+0357 1a622400 copy regc ,regb 
+0358 20206b45 branch otp_write 
 
 p_mouse_write_otp_le_locall_addr2:
-0317 6a4149f6 fetchr regb ,2 ,mem_otp_offset_le_locall_addr2 
-0318 1a422600 copy regb ,regc 
+0359 6a4149f6 fetchr regb ,2 ,mem_otp_offset_le_locall_addr2 
+035a 1a422600 copy regb ,regc 
 
 p_mouse_write_otp_le_locall_addr2_loop:
-0319 20405e17 call mouse_read_otp_le_locall_addr2_common 
-031a 6fe349cd fetch 6 ,mem_mouse_le_locall_addr2_temp 
-031b 203a0323 branch p_mouse_le_local_addr2_store ,blank 
-031c 67e349c7 store 6 ,mem_mouse_le_locall_addr2_last 
-031d 1a60a606 increase 6 ,regc 
-031e 6fe149f8 fetch 2 ,mem_otp_offset_le_locall_addr2_end 
-031f 9a667c00 isub regc ,null 
-0320 24610000 nrtn positive 
-0321 1a622400 copy regc ,regb 
-0322 20200319 branch p_mouse_write_otp_le_locall_addr2_loop 
+035b 20405e17 call mouse_read_otp_le_locall_addr2_common 
+035c 6fe349cd fetch 6 ,mem_mouse_le_locall_addr2_temp 
+035d 203a0365 branch p_mouse_le_local_addr2_store ,blank 
+035e 67e349c7 store 6 ,mem_mouse_le_locall_addr2_last 
+035f 1a60a606 increase 6 ,regc 
+0360 6fe149f8 fetch 2 ,mem_otp_offset_le_locall_addr2_end 
+0361 9a667c00 isub regc ,null 
+0362 24610000 nrtn positive 
+0363 1a622400 copy regc ,regb 
+0364 2020035b branch p_mouse_write_otp_le_locall_addr2_loop 
 
 p_mouse_le_local_addr2_store:
-0323 6fe349c7 fetch 6 ,mem_mouse_le_locall_addr2_last 
-0324 684b467b fetcht 6 ,mem_device2_locall_addr 
-0325 98467c00 isub temp ,null 
-0326 20628000 rtn zero 
-0327 df200006 arg 6 ,loopcnt 
-0328 da20467b arg mem_device2_locall_addr ,rega 
-0329 1a622400 copy regc ,regb 
-032a 20206b45 branch otp_write 
+0365 6fe349c7 fetch 6 ,mem_mouse_le_locall_addr2_last 
+0366 684b467b fetcht 6 ,mem_device2_locall_addr 
+0367 98467c00 isub temp ,null 
+0368 20628000 rtn zero 
+0369 df200006 arg 6 ,loopcnt 
+036a da20467b arg mem_device2_locall_addr ,rega 
+036b 1a622400 copy regc ,regb 
+036c 20206b45 branch otp_write 
 
 p_mouse_load_device_info:
-032b 20400364 call p_mouse_le_locall_addr_init_check 
-032c 2040037c call p_mouse_select_reconn_device 
-032d 2040032f call p_mouse_otp_load_dpi 
-032e 20205c90 branch mouse_load_device_info + 1 
+036d 204003a4 call p_mouse_le_locall_addr_init_check 
+036e 204003bc call p_mouse_select_reconn_device 
+036f 20400371 call p_mouse_otp_load_dpi 
+0370 20205c90 branch mouse_load_device_info + 1 
 
 p_mouse_otp_load_dpi:
-032f 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0330 c4078000 rtnbit0 mouse_enable_load_and_store_dpi 
-0331 6fe0c690 fetch 1 ,mem_mouse_dpi 
-0332 c0005c94 beq 0 ,mouse_otp_load_dpi 
-0333 c0030335 beq 6 ,p_mouse_dpi_reinit 
-0334 20600000 rtn 
-
-p_mouse_dpi_reinit:
-0335 70469000 jam mouse_dpi_level1 ,mem_mouse_dpi 
-0336 20600000 rtn 
+0371 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0372 c4078000 rtnbit0 mouse_enable_load_and_store_dpi 
+0373 6fe0c690 fetch 1 ,mem_mouse_dpi 
+0374 c0005c94 beq 0 ,mouse_otp_load_dpi 
+0375 c0035742 beq 6 ,mouse_dpi_reinit_set 
+0376 20600000 rtn 
 
 p_mouse_store_dpi_info_check:
-0337 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0338 c289dcb5 bbit1 mouse_enable_eeprom ,mouse_store_eerpom_dpi 
-0339 c28a033b bbit1 mouse_enable_otp ,p_mouse_store_otp_dpi 
-033a 20600000 rtn 
+0377 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0378 c289dcb5 bbit1 mouse_enable_eeprom ,mouse_store_eerpom_dpi 
+0379 c28a037b bbit1 mouse_enable_otp ,p_mouse_store_otp_dpi 
+037a 20600000 rtn 
 
 p_mouse_store_otp_dpi:
-033b 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-033c c4078000 rtnbit0 mouse_enable_load_and_store_dpi 
-033d 6a4149fa fetchr regb ,2 ,mem_otp_offset_dpi 
-033e 1a422600 copy regb ,regc 
+037b 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+037c c4078000 rtnbit0 mouse_enable_load_and_store_dpi 
+037d 6a4149fa fetchr regb ,2 ,mem_otp_offset_dpi 
+037e 1a422600 copy regb ,regc 
 
 p_mouse_otp_store_dpi_loop:
-033f 20405e51 call mouse_read_otp_dpi_common 
-0340 6fe0c9d4 fetch 1 ,mem_mouse_dpi_temp 
-0341 203a0349 branch p_mouse_otp_dpi_store ,blank 
-0342 67e0c9d3 store 1 ,mem_mouse_dpi_last 
-0343 1a60a601 increase 1 ,regc 
-0344 6fe149fc fetch 2 ,mem_otp_offset_dpi_end 
-0345 9a667c00 isub regc ,null 
-0346 24610000 nrtn positive 
-0347 1a622400 copy regc ,regb 
-0348 2020033f branch p_mouse_otp_store_dpi_loop 
+037f 20405e51 call mouse_read_otp_dpi_common 
+0380 6fe0c9d4 fetch 1 ,mem_mouse_dpi_temp 
+0381 203a0389 branch p_mouse_otp_dpi_store ,blank 
+0382 67e0c9d3 store 1 ,mem_mouse_dpi_last 
+0383 1a60a601 increase 1 ,regc 
+0384 6fe149fc fetch 2 ,mem_otp_offset_dpi_end 
+0385 9a667c00 isub regc ,null 
+0386 24610000 nrtn positive 
+0387 1a622400 copy regc ,regb 
+0388 2020037f branch p_mouse_otp_store_dpi_loop 
 
 p_mouse_otp_dpi_store:
-0349 6fe0c9d3 fetch 1 ,mem_mouse_dpi_last 
-034a 1fe17ef0 and pdata ,0xf0 ,pdata 
-034b 203a0353 branch p_mouse_dpi_store_last_check ,blank 
-034c 6fe0c690 fetch 1 ,mem_mouse_dpi 
-034d 20400361 call p_mouse_dpi_otp_store_judge 
-034e 67e0c9d5 store 1 ,mem_mouse_otp_dpi_value 
+0389 6fe0c9d3 fetch 1 ,mem_mouse_dpi_last 
+038a 1fe17ef0 and pdata ,0xf0 ,pdata 
+038b 203a0393 branch p_mouse_dpi_store_last_check ,blank 
+038c 6fe0c690 fetch 1 ,mem_mouse_dpi 
+038d 204003a1 call p_mouse_dpi_otp_store_judge 
+038e 67e0c9d5 store 1 ,mem_mouse_otp_dpi_value 
 
 p_mouse_dpi_store_end:
-034f df200001 arg 1 ,loopcnt 
-0350 1a622400 copy regc ,regb 
-0351 da2049d5 arg mem_mouse_otp_dpi_value ,rega 
-0352 20206b45 branch otp_write 
+038f df200001 arg 1 ,loopcnt 
+0390 1a622400 copy regc ,regb 
+0391 da2049d5 arg mem_mouse_otp_dpi_value ,rega 
+0392 20206b45 branch otp_write 
 
 p_mouse_dpi_store_last_check:
-0353 6848c9d3 fetcht 1 ,mem_mouse_dpi_last 
-0354 6fe0c690 fetch 1 ,mem_mouse_dpi 
-0355 20400361 call p_mouse_dpi_otp_store_judge 
-0356 98467c00 isub temp ,null 
-0357 20628000 rtn zero 
-0358 1ff27e00 lshift4 pdata ,pdata 
-0359 9840fe00 iadd temp ,pdata 
-035a 67e0c9d5 store 1 ,mem_mouse_otp_dpi_value 
-035b 1a627e00 copy regc ,pdata 
-035c 684949fa fetcht 2 ,mem_otp_offset_dpi 
-035d 98467c00 isub temp ,null 
-035e 2022834f branch p_mouse_dpi_store_end ,zero 
-035f 1a60a7ff increase -1 ,regc 
-0360 2020034f branch p_mouse_dpi_store_end 
+0393 6848c9d3 fetcht 1 ,mem_mouse_dpi_last 
+0394 6fe0c690 fetch 1 ,mem_mouse_dpi 
+0395 204003a1 call p_mouse_dpi_otp_store_judge 
+0396 98467c00 isub temp ,null 
+0397 20628000 rtn zero 
+0398 1ff27e00 lshift4 pdata ,pdata 
+0399 9840fe00 iadd temp ,pdata 
+039a 67e0c9d5 store 1 ,mem_mouse_otp_dpi_value 
+039b 1a627e00 copy regc ,pdata 
+039c 684949fa fetcht 2 ,mem_otp_offset_dpi 
+039d 98467c00 isub temp ,null 
+039e 2022838f branch p_mouse_dpi_store_end ,zero 
+039f 1a60a7ff increase -1 ,regc 
+03a0 2020038f branch p_mouse_dpi_store_end 
 
 p_mouse_dpi_otp_store_judge:
-0361 c1800000 rtnne mouse_dpi_level1 
-0362 1fe0fe06 increase 6 ,pdata 
-0363 20600000 rtn 
+03a1 c1800000 rtnne mouse_dpi_level1 
+03a2 1fe0fe06 increase 6 ,pdata 
+03a3 20600000 rtn 
 
 p_mouse_le_locall_addr_init_check:
-0364 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0365 c29f036b bbit1 mouse_enable_24g_first_auto_pairing ,p_mouse_le_addr1_init_check 
-0366 6fe0c666 fetch 1 ,mem_device_flag 
-0367 c1000000 rtneq mode_24g_device 
-0368 c000836b beq mode_bt_device1 ,p_mouse_le_addr1_init_check 
-0369 c0010372 beq mode_bt_device2 ,p_mouse_le_addr2_init_check 
-036a 20600000 rtn 
+03a4 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+03a5 c29f03ab bbit1 mouse_enable_24g_first_auto_pairing ,p_mouse_le_addr1_init_check 
+03a6 6fe0c666 fetch 1 ,mem_device_flag 
+03a7 c1000000 rtneq mode_24g_device 
+03a8 c00083ab beq mode_bt_device1 ,p_mouse_le_addr1_init_check 
+03a9 c00103b2 beq mode_bt_device2 ,p_mouse_le_addr2_init_check 
+03aa 20600000 rtn 
 
 p_mouse_le_addr1_init_check:
-036b 6fe3466e fetch 6 ,mem_device1_locall_addr 
-036c 684b46e6 fetcht 6 ,mem_mouse_compare_addr 
-036d 98467c00 isub temp ,null 
-036e 24628000 nrtn zero 
-036f 6fe342db fetch 6 ,mem_le_lap 
-0370 67e3466e store 6 ,mem_device1_locall_addr 
-0371 20600000 rtn 
+03ab 6fe3466e fetch 6 ,mem_device1_locall_addr 
+03ac 684b46e6 fetcht 6 ,mem_mouse_compare_addr 
+03ad 98467c00 isub temp ,null 
+03ae 24628000 nrtn zero 
+03af 6fe342db fetch 6 ,mem_le_lap 
+03b0 67e3466e store 6 ,mem_device1_locall_addr 
+03b1 20600000 rtn 
 
 p_mouse_le_addr2_init_check:
-0372 6fe3466e fetch 6 ,mem_device1_locall_addr 
-0373 684b46e6 fetcht 6 ,mem_mouse_compare_addr 
-0374 98467c00 isub temp ,null 
-0375 24628000 nrtn zero 
-0376 6fe342db fetch 6 ,mem_le_lap 
-0377 1fe0ff00 add pdata ,0x0100 ,pdata 
-0378 67e3466e store 6 ,mem_device1_locall_addr 
-0379 20600000 rtn 
+03b2 6fe3467b fetch 6 ,mem_device2_locall_addr 
+03b3 684b46e6 fetcht 6 ,mem_mouse_compare_addr 
+03b4 98467c00 isub temp ,null 
+03b5 24628000 nrtn zero 
+03b6 6fe342db fetch 6 ,mem_le_lap 
+03b7 1fe0ff00 add pdata ,0x0100 ,pdata 
+03b8 67e3467b store 6 ,mem_device2_locall_addr 
+03b9 20600000 rtn 
 
 p_mouse_buletooth_fast_conn_end:
-037a 2040037c call p_mouse_select_reconn_device 
-037b 20205a9c branch mouse_buletooth_fast_conn_end + 2 
+03ba 204003bc call p_mouse_select_reconn_device 
+03bb 20205a9c branch mouse_buletooth_fast_conn_end + 2 
 
 p_mouse_select_reconn_device:
-037c 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-037d c30a5c6f bbit0 mouse_enable_otp ,mouse_select_reconn_device 
-037e c29f0384 bbit1 mouse_enable_24g_first_auto_pairing ,p_mouse_load_le_device1 
+03bc 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+03bd c30a5c6f bbit0 mouse_enable_otp ,mouse_select_reconn_device 
+03be c29f03c4 bbit1 mouse_enable_24g_first_auto_pairing ,p_mouse_load_le_device1 
 
 p_mouse_select_reconn_device_start:
-037f 6fe0c666 fetch 1 ,mem_device_flag 
-0380 c1000000 rtneq mode_24g_device 
-0381 c0008384 beq mode_bt_device1 ,p_mouse_load_le_device1 
-0382 c0010389 beq mode_bt_device2 ,p_mouse_load_le_device2 
-0383 20600000 rtn 
+03bf 6fe0c666 fetch 1 ,mem_device_flag 
+03c0 c1000000 rtneq mode_24g_device 
+03c1 c00083c4 beq mode_bt_device1 ,p_mouse_load_le_device1 
+03c2 c00103c9 beq mode_bt_device2 ,p_mouse_load_le_device2 
+03c3 20600000 rtn 
 
 p_mouse_load_le_device1:
-0384 6fe34668 fetch 6 ,mem_device1_addr 
-0385 67e34116 store 6 ,mem_hci_plap 
-0386 6fe3466e fetch 6 ,mem_device1_locall_addr 
-0387 67e342db store 6 ,mem_le_lap 
-0388 20600000 rtn 
+03c4 6fe34668 fetch 6 ,mem_device1_addr 
+03c5 67e34116 store 6 ,mem_hci_plap 
+03c6 6fe3466e fetch 6 ,mem_device1_locall_addr 
+
+p_mouse_le_lap_store:
+03c7 67e342db store 6 ,mem_le_lap 
+03c8 20600000 rtn 
 
 p_mouse_load_le_device2:
-0389 6fe34675 fetch 6 ,mem_device2_addr 
-038a 67e34116 store 6 ,mem_hci_plap 
-038b 6fe3467b fetch 6 ,mem_device2_locall_addr 
-038c 67e342db store 6 ,mem_le_lap 
-038d 20600000 rtn 
+03c9 6fe34675 fetch 6 ,mem_device2_addr 
+03ca 67e34116 store 6 ,mem_hci_plap 
+03cb 6fe3467b fetch 6 ,mem_device2_locall_addr 
+03cc 202003c7 branch p_mouse_le_lap_store 
 
 p_mouse_store_remote_bdaddr:
-038e 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-038f c4010000 rtnbit0 mouse_store_eeprom_flag 
-0390 c30a5c43 bbit0 mouse_enable_otp ,mouse_store_remote_bdaddr + 1 
-0391 d8e00002 arg mouse_store_eeprom_flag ,queue 
-0392 20405f04 call mouse_disable_function_flag 
-0393 20405c4a call mouse_check_device_addr 
-0394 20400396 call p_mouse_before_store_reconn_info 
-0395 20205ca3 branch mouse_store_device_info_delay 
+03cd 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+03ce c4010000 rtnbit0 mouse_store_eeprom_flag 
+03cf c30a5c43 bbit0 mouse_enable_otp ,mouse_store_remote_bdaddr + 1 
+03d0 d8e00002 arg mouse_store_eeprom_flag ,queue 
+03d1 20405f04 call mouse_disable_function_flag 
+03d2 20405c4a call mouse_check_device_addr 
+03d3 204003d5 call p_mouse_before_store_reconn_info 
+03d4 20205ca3 branch mouse_store_device_info_delay 
 
 p_mouse_before_store_reconn_info:
-0396 6fe0c666 fetch 1 ,mem_device_flag 
-0397 c000839a beq mode_bt_device1 ,p_mouse_store_le_device1 
-0398 c001039f beq mode_bt_device2 ,p_mouse_store_le_device2 
-0399 20600000 rtn 
+03d5 6fe0c666 fetch 1 ,mem_device_flag 
+03d6 c00083d9 beq mode_bt_device1 ,p_mouse_store_le_device1 
+03d7 c00103de beq mode_bt_device2 ,p_mouse_store_le_device2 
+03d8 20600000 rtn 
 
 p_mouse_store_le_device1:
-039a 6fe30178 fetch 6 ,mem_le_plap 
-039b 67e34668 store 6 ,mem_device1_addr 
-039c 6fe342db fetch 6 ,mem_le_lap 
-039d 67e3466e store 6 ,mem_device1_locall_addr 
-039e 20600000 rtn 
+03d9 6fe30178 fetch 6 ,mem_le_plap 
+03da 67e34668 store 6 ,mem_device1_addr 
+03db 6fe342db fetch 6 ,mem_le_lap 
+03dc 67e3466e store 6 ,mem_device1_locall_addr 
+03dd 20600000 rtn 
 
 p_mouse_store_le_device2:
-039f 6fe30178 fetch 6 ,mem_le_plap 
-03a0 67e34675 store 6 ,mem_device2_addr 
-03a1 6fe342db fetch 6 ,mem_le_lap 
-03a2 67e3467b store 6 ,mem_device2_locall_addr 
-03a3 20600000 rtn 
+03de 6fe30178 fetch 6 ,mem_le_plap 
+03df 67e34675 store 6 ,mem_device2_addr 
+03e0 6fe342db fetch 6 ,mem_le_lap 
+03e1 67e3467b store 6 ,mem_device2_locall_addr 
+03e2 20600000 rtn 
 
 p_mouse_bb_event_timer:
-03a4 204003ba call p_mouse_le_send_conn_param_update_timer 
-03a5 2040614d call mouse_low_voltage_led_timer 
-03a6 2040553d call mouse_adc_read 
-03a7 20406110 call mouse_logo_led_on_timer 
-03a8 204061b1 call mouse_led_multi_timer 
-03a9 2040611e call mouse_dpi_led_blink_delay_timer 
-03aa 2040328e call g24_pair_timeout_timer 
-03ab 20403531 call g24_reconn_timeout_timer 
-03ac 20405fdd call mouse_24g_long_sleep_param_update_timer 
-03ad 2040572c call mouse_dpi_key_check_long_press 
-03ae 20405b9b call mouse_bt_discovery_check 
-03af 20405bab call mouse_commbination_key_process 
-03b0 20405bce call mouse_check_discovery_timeout_timer 
-03b1 20405bd3 call mouse_check_direct_timeout_timer 
-03b2 20405be1 call mouse_le_enable_att_list_timer 
-03b3 20405bee call mouse_le_battery_updata_timer 
-03b4 20405be4 call mouse_le_send_smp_security_request_timer 
-03b5 20405bfb call mouse_check_reconnect_delay_long_sleep 
-03b6 204003bd call p_mouse_current_mult_update_timer 
-03b7 204056b6 call mouse_wheel_trigger_timer 
-03b8 20405c0e call mouse_store_information_delay_timer 
-03b9 20205c05 branch mouse_check_no_data_timeout_timer 
+03e3 204003f9 call p_mouse_le_send_conn_param_update_timer 
+03e4 2040614d call mouse_low_voltage_led_timer 
+03e5 2040553d call mouse_adc_read 
+03e6 20406110 call mouse_logo_led_on_timer 
+03e7 204061b1 call mouse_led_multi_timer 
+03e8 2040611e call mouse_dpi_led_blink_delay_timer 
+03e9 2040328e call g24_pair_timeout_timer 
+03ea 20403531 call g24_reconn_timeout_timer 
+03eb 20405fdd call mouse_24g_long_sleep_param_update_timer 
+03ec 2040572c call mouse_dpi_key_check_long_press 
+03ed 20405b9b call mouse_bt_discovery_check 
+03ee 20405bab call mouse_commbination_key_process 
+03ef 20405bce call mouse_check_discovery_timeout_timer 
+03f0 20405bd3 call mouse_check_direct_timeout_timer 
+03f1 20405be1 call mouse_le_enable_att_list_timer 
+03f2 20405bee call mouse_le_battery_updata_timer 
+03f3 20405be4 call mouse_le_send_smp_security_request_timer 
+03f4 20405bfb call mouse_check_reconnect_delay_long_sleep 
+03f5 204003fc call p_mouse_current_mult_update_timer 
+03f6 204056b6 call mouse_wheel_trigger_timer 
+03f7 20405c0e call mouse_store_information_delay_timer 
+03f8 20205c05 branch mouse_check_no_data_timeout_timer 
 
 p_mouse_le_send_conn_param_update_timer:
-03ba da604a05 arg mem_mouse_le_send_conn_param_update_timer ,regc 
-03bb da405aef arg mouse_updata_le_param ,regb 
-03bc 202042e0 branch timer_single_step 
+03f9 da604a05 arg mem_mouse_le_send_conn_param_update_timer ,regc 
+03fa da405aef arg mouse_updata_le_param ,regb 
+03fb 202042e0 branch timer_single_step 
 
 p_mouse_current_mult_update_timer:
-03bd da60477e arg mem_mouse_current_mult_timer ,regc 
-03be da4003c0 arg p_mouse_current_mult_reinit ,regb 
-03bf 202042e0 branch timer_single_step 
+03fc da60477e arg mem_mouse_current_mult_timer ,regc 
+03fd da4003ff arg p_mouse_current_mult_reinit ,regb 
+03fe 202042e0 branch timer_single_step 
 
 p_mouse_current_mult_reinit:
-03c0 6fe0c96b fetch 1 ,mem_lpm_mult_init 
-03c1 67e0c0c0 store 1 ,mem_lpm_mult 
-03c2 70477d03 jam 3 ,mem_mouse_long_mult_flag 
-03c3 20600000 rtn 
+03ff 6fe0c96b fetch 1 ,mem_lpm_mult_init 
+0400 67e0c0c0 store 1 ,mem_lpm_mult 
+0401 70477d03 jam 3 ,mem_mouse_long_mult_flag 
+0402 20600000 rtn 
 
 p_mouse_start_discovery:
-03c4 204059ed call mouse_sensor_powerdown 
-03c5 20205c1b branch mouse_start_discovery + 1 
+0403 204059ed call mouse_sensor_powerdown 
+0404 20205c1b branch mouse_start_discovery + 1 
 
 p_mouse_priority_bb_event:
-03c6 1a627e00 copy regc ,pdata 
-03c7 c02003dc beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
-03c8 c00a83e1 beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
-03c9 c01903d3 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
-03ca c01e03ff beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
-03cb c01c8410 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
-03cc c01d0413 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
-03cd c00a03cf beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
-03ce 20205ac3 branch mouse_priority_bb_event + 2 
+0405 1a627e00 copy regc ,pdata 
+0406 c020041a beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
+0407 c00a841f beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
+0408 c0190411 beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
+0409 c01e043c beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
+040a c01c844c beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
+040b c01d0451 beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
+040c c00a040e beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
+040d 20205ac3 branch mouse_priority_bb_event + 2 
 
 p_mouse_le_bb_event_connected:
-03cf 204059e7 call mouse_sensor_poweron 
-03d0 58000000 setarg 0 
-03d1 67e24bf7 store 4 ,mem_le_conn_first_rcv 
-03d2 20205ad0 branch mouse_le_bb_event_connected 
+040e 58000000 setarg 0 
+040f 67e24bfa store 4 ,mem_le_conn_first_rcv 
+0410 20205ad0 branch mouse_le_bb_event_connected 
 
 p_mouse_le_ll_start_encryt:
-03d3 6fe0c795 fetch 1 ,mem_mouse_le_reconnect_flag 
-03d4 c00083d7 beq 1 ,p_mouse_le_ll_reconn_start_encryt 
-03d5 70484414 jam 20 ,mem_le_start_encrypt_timer 
-03d6 202003d9 branch p_mouse_le_ll_reconn_start_encryt_new 
+0411 6fe0c795 fetch 1 ,mem_mouse_le_reconnect_flag 
+0412 c0008415 beq 1 ,p_mouse_le_ll_reconn_start_encryt 
+0413 70484414 jam 20 ,mem_le_start_encrypt_timer 
+0414 20200417 branch p_mouse_le_ll_reconn_start_encryt_new 
 
 p_mouse_le_ll_reconn_start_encryt:
-03d7 20405aef call mouse_updata_le_param 
-03d8 70484405 jam 5 ,mem_le_start_encrypt_timer 
+0415 20405aef call mouse_updata_le_param 
+0416 70484405 jam 5 ,mem_le_start_encrypt_timer 
 
 p_mouse_le_ll_reconn_start_encryt_new:
-03d9 6fe0cbf6 fetch 1 ,mem_le_conn_rcv_new 
-03da 67e0cbf7 store 1 ,mem_le_conn_first_rcv 
-03db 20205af6 branch mouse_le_ll_enable_start_enc_flag 
+0417 6fe0cbf9 fetch 1 ,mem_le_conn_rcv_new 
+0418 67e0cbfa store 1 ,mem_le_conn_first_rcv 
+0419 20205af6 branch mouse_le_ll_enable_start_enc_flag 
 
 p_mouse_le_conn_param_update_rsp_recieved:
-03dc 6fe0ca04 fetch 1 ,mem_mouse_le_send_conn_param_update 
-03dd 247a0000 nrtn blank 
-03de 704a0401 jam 1 ,mem_mouse_le_send_conn_param_update 
-03df 704a051e jam 30 ,mem_mouse_le_send_conn_param_update_timer 
-03e0 20600000 rtn 
+041a 6fe0ca04 fetch 1 ,mem_mouse_le_send_conn_param_update 
+041b 247a0000 nrtn blank 
+041c 704a0401 jam 1 ,mem_mouse_le_send_conn_param_update 
+041d 704a051e jam 30 ,mem_mouse_le_send_conn_param_update_timer 
+041e 20600000 rtn 
 
 p_mouse_le_bb_disconnected:
-03e1 58000000 setarg 0 
-03e2 67e0ca04 store 1 ,mem_mouse_le_send_conn_param_update 
-03e3 67e0ca05 store 1 ,mem_mouse_le_send_conn_param_update_timer 
-03e4 58000000 setarg 0 
-03e5 67e147c0 store 2 ,mem_le_battery_level_updata_timer 
-03e6 70479400 jam 0 ,mem_mouse_le_bb_connected_flag 
-03e7 d8400006 arg le_interval_7_5ms ,temp 
-03e8 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-03e9 c28d83eb bbit1 mouse_enable_bt_125hz ,p_mouse_le_bb_disconnected_next 
-03ea d8400007 arg le_interval_8_75ms ,temp 
+041f 58000000 setarg 0 
+0420 67e0ca04 store 1 ,mem_mouse_le_send_conn_param_update 
+0421 67e0ca05 store 1 ,mem_mouse_le_send_conn_param_update_timer 
+0422 58000000 setarg 0 
+0423 67e147c0 store 2 ,mem_le_battery_level_updata_timer 
+0424 70479400 jam 0 ,mem_mouse_le_bb_connected_flag 
+0425 d8400006 arg le_interval_7_5ms ,temp 
+0426 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0427 c28d8429 bbit1 mouse_enable_bt_125hz ,p_mouse_le_bb_disconnected_next 
+0428 d8400007 arg le_interval_8_75ms ,temp 
 
 p_mouse_le_bb_disconnected_next:
-03eb 604942d3 storet 2 ,mem_le_interval_min 
-03ec 604942d5 storet 2 ,mem_le_interval_min + 2 
-03ed 7047c200 jam le_lpm_enable ,mem_mouse_le_conn_param_reject 
-03ee 70495600 jam 0 ,mem_mouse_clear_sensor_data_flag 
-03ef 204029cb call le_clr_config_more_data 
-03f0 202003f1 branch p_mouse_bb_disconnected 
+0429 604942d3 storet 2 ,mem_le_interval_min 
+042a 604942d5 storet 2 ,mem_le_interval_min + 2 
+042b 7047c200 jam le_lpm_enable ,mem_mouse_le_conn_param_reject 
+042c 70495600 jam 0 ,mem_mouse_clear_sensor_data_flag 
+042d 204029cb call le_clr_config_more_data 
 
 p_mouse_bb_disconnected:
-03f1 20405b7b call mouse_bb_discon_clear_stack 
-03f2 6fe143ef fetch app_disc_rsn_size ,mem_app_disconn_reason 
-03f3 c28383f6 bbit1 app_disc_ble ,p_mouse4_0_event_bb_disconn 
-03f4 c28042fc bbit1 app_disc_by_button ,app_disconn_reason_clear 
-03f5 20205c1a branch mouse_start_discovery 
+042e 20405b7b call mouse_bb_discon_clear_stack 
+042f 6fe143ef fetch app_disc_rsn_size ,mem_app_disconn_reason 
+0430 c2838433 bbit1 app_disc_ble ,p_mouse4_0_event_bb_disconn 
+0431 c28042fc bbit1 app_disc_by_button ,app_disconn_reason_clear 
+0432 20205c1a branch mouse_start_discovery 
 
 p_mouse4_0_event_bb_disconn:
-03f6 20405b21 call mouse_le_clean_connect_flag 
-03f7 6fe143ef fetch app_disc_rsn_size ,mem_app_disconn_reason 
-03f8 c28042fc bbit1 app_disc_by_button ,app_disconn_reason_clear 
-03f9 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
-03fa 1fe17e03 and pdata ,0x03 ,pdata 
-03fb c081d4a9 bne 0x03 ,mouse_start_reconnect 
-03fc 6fe0cbfa fetch 1 ,mem_le_check_retransmit_discon_flag 
-03fd 243a54a9 nbranch mouse_start_reconnect ,blank 
-03fe 202054cd branch mouse_app_enter_hibernate 
+0433 6fe143ef fetch app_disc_rsn_size ,mem_app_disconn_reason 
+0434 c28042fc bbit1 app_disc_by_button ,app_disconn_reason_clear 
+0435 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
+0436 1fe17e03 and pdata ,0x03 ,pdata 
+0437 20405b21 call mouse_le_clean_connect_flag 
+0438 c081d4a9 bne 0x03 ,mouse_start_reconnect 
+0439 6fe0cbfd fetch 1 ,mem_le_check_retransmit_discon_flag 
+043a 243a54a9 nbranch mouse_start_reconnect ,blank 
+043b 202054cd branch mouse_app_enter_hibernate 
 
 p_mouse_24g_attempt_success:
-03ff 6fe2458f fetch 4 ,mem_24g_addr 
-0400 67e245e8 store 4 ,mem_24g_receiver_addr 
-0401 67e24691 store 4 ,mem_mouse_24g_addr 
-0402 2040355a call g24_ch_syncword_crc8_init 
-0403 20405c0b call mouse_no_data_timer_init 
-0404 2040618e call mouse_device_poweron_led_config 
-0405 20405a73 call mouse_init_sensor_reset 
-0406 70477d00 jam 0 ,mem_mouse_long_mult_flag 
-0407 7045fc00 jam 0 ,mem_24g_conn_sm 
-0408 7045e200 jam 0 ,mem_24g_reconn_type 
-0409 6fe245e8 fetch 4 ,mem_24g_receiver_addr 
-040a 684a45e4 fetcht 4 ,mem_24g_fast_conn_addr 
-040b 98467c00 isub temp ,null 
-040c 20628000 rtn zero 
-040d 20406016 call mouse_soft_agc_disable 
-040e 20400426 call p_mouse_fetch_normal_tx_power 
-040f 20206042 branch mouse_24g_first_store_reconn_info 
+043c 6fe2458f fetch 4 ,mem_24g_addr 
+043d 67e245e8 store 4 ,mem_24g_receiver_addr 
+043e 67e24691 store 4 ,mem_mouse_24g_addr 
+043f 2040355a call g24_ch_syncword_crc8_init 
+0440 20405c0b call mouse_no_data_timer_init 
+0441 2040618e call mouse_device_poweron_led_config 
+0442 20405a73 call mouse_init_sensor_reset 
+0443 70477d00 jam 0 ,mem_mouse_long_mult_flag 
+0444 7045fc00 jam 0 ,mem_24g_conn_sm 
+0445 7045e200 jam 0 ,mem_24g_reconn_type 
+0446 6fe245e8 fetch 4 ,mem_24g_receiver_addr 
+0447 684a45e4 fetcht 4 ,mem_24g_fast_conn_addr 
+0448 98467c00 isub temp ,null 
+0449 20628000 rtn zero 
+044a 2040044e call p_mouse_fetch_normal_tx_power 
+044b 20206042 branch mouse_24g_first_store_reconn_info 
 
 p_mouse_24g_pairing_complete:
-0410 20406016 call mouse_soft_agc_disable 
-0411 20400426 call p_mouse_fetch_normal_tx_power 
-0412 20206084 branch mouse_24g_pairing_complete 
+044c 2040044e call p_mouse_fetch_normal_tx_power 
+044d 20206084 branch mouse_24g_pairing_complete 
+
+p_mouse_fetch_normal_tx_power:
+044e 6fe0ca07 fetch 1 ,mem_normal_tx_power 
+044f 67e0c141 store 1 ,mem_tx_power 
+0450 20206016 branch mouse_soft_agc_disable 
 
 p_mouse_24g_attempt_fail:
-0413 20406016 call mouse_soft_agc_disable 
-0414 20400426 call p_mouse_fetch_normal_tx_power 
-0415 6fe0c87a fetch 1 ,mem_mouse_dpi_button_state 
-0416 c1008000 rtneq dpi_button_state_down 
-0417 6fe0c600 fetch 1 ,mem_24g_attempt_fail_flag 
-0418 243a5ff2 nbranch mouse_24g_hibernate_set ,blank 
-0419 6fe0c5e2 fetch 1 ,mem_24g_reconn_type 
-041a c002041c beq pair_and_3_0_addr ,p_mouse_24g_auto_pair_attempt_fail 
-041b 20206055 branch mouse_24g_attempt_fail + 2 
+0451 2040044e call p_mouse_fetch_normal_tx_power 
+0452 6fe0c87a fetch 1 ,mem_mouse_dpi_button_state 
+0453 c1008000 rtneq dpi_button_state_down 
+0454 6fe0c600 fetch 1 ,mem_24g_attempt_fail_flag 
+0455 243a5ff2 nbranch mouse_24g_hibernate_set ,blank 
+0456 6fe0c5e2 fetch 1 ,mem_24g_reconn_type 
+0457 c0028463 beq pair_and_receiver ,p_mouse_24g_auto_pair_attempt_fail 
+0458 c000845b beq fast_conn_and_receiver ,p_mouse_24g_fast_conn_attempt_fail 
+0459 c001846a beq receiver_and_3_0_addr ,p_mouse_reconn_dongle_attempt_fail 
+045a 20206055 branch mouse_24g_attempt_fail + 2 
+
+p_mouse_24g_fast_conn_attempt_fail:
+045b 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+045c c29f045f bbit1 mouse_enable_24g_first_auto_pairing ,p_mouse_24g_start_auto_pair 
+045d c298045f bbit1 mouse_enable_auto_24g_paring ,p_mouse_24g_start_auto_pair 
+045e 20206062 branch mouse_24g_fast_conn_attempt_fail + 3 
+
+p_mouse_24g_start_auto_pair:
+045f 6fe145d6 fetch 2 ,mem_24g_pair_timeout_init 
+0460 67e145de store 2 ,mem_24g_reconn_timeout 
+0461 7045e205 jam pair_and_receiver ,mem_24g_reconn_type 
+0462 20203534 branch g24_reconn_start 
 
 p_mouse_24g_auto_pair_attempt_fail:
-041c 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-041d c31f6059 bbit0 mouse_enable_24g_first_auto_pairing ,mouse_24g_attempt_fail_enter_hibernate 
-041e 6fe0c71b fetch 1 ,mem_device_number 
-041f c000e059 beq 1 ,mouse_24g_attempt_fail_enter_hibernate 
+0463 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0464 c31f6059 bbit0 mouse_enable_24g_first_auto_pairing ,mouse_24g_attempt_fail_enter_hibernate 
+0465 6fe0c71b fetch 1 ,mem_device_number 
+0466 c000e059 beq 1 ,mouse_24g_attempt_fail_enter_hibernate 
 
 p_mouse_24g_first_bluetooth_reconnect:
-0420 20406018 call mouse_24g_stop 
-0421 70466601 jam mode_bt_device1 ,mem_device_flag 
-0422 202054a0 branch mouse_start_reconnect_device 
+0467 20406018 call mouse_24g_stop 
+0468 70466601 jam mode_bt_device1 ,mem_device_flag 
+0469 20205491 branch mouse_le_fast_conn_judge 
+
+p_mouse_reconn_dongle_attempt_fail:
+046a 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+046b c31f6059 bbit0 mouse_enable_24g_first_auto_pairing ,mouse_24g_attempt_fail_enter_hibernate 
+046c c289e059 bbit1 mouse_enable_eeprom ,mouse_24g_attempt_fail_enter_hibernate 
+046d c28a6059 bbit1 mouse_enable_otp ,mouse_24g_attempt_fail_enter_hibernate 
+046e c2896059 bbit1 mouse_enable_flash ,mouse_24g_attempt_fail_enter_hibernate 
+046f 2020045f branch p_mouse_24g_start_auto_pair 
+
+p_mouse_start_work:
+0470 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0471 c29f0475 bbit1 mouse_enable_24g_first_auto_pairing ,p_mouse_24g_first_start_auto_pair_mode 
+0472 6fe0c666 fetch 1 ,mem_device_flag 
+0473 c0000480 beq mode_24g_device ,p_mouse_24g_start_mode 
+0474 20205491 branch mouse_le_fast_conn_judge 
+
+p_mouse_24g_first_start_auto_pair_mode:
+0475 204054ac call mouse_wakeup_from_power_check 
+0476 2034047c branch p_mouse_24g_first_start_reconn ,user 
+
+p_mouse_24g_reconn_general_dongle:
+0477 70466600 jam mode_24g_device ,mem_device_flag 
+0478 6fe14721 fetch 2 ,mem_mouse_24g_power_on_fast_conn_timer 
+0479 67e145de store 2 ,mem_24g_reconn_timeout 
+047a 7045e201 jam fast_conn_and_receiver ,mem_24g_reconn_type 
+047b 20203534 branch g24_reconn_start 
+
+p_mouse_24g_first_start_reconn:
+047c 6fe0c666 fetch 1 ,mem_device_flag 
+047d c0006067 beq mode_24g_device ,mouse_24g_reconn_dongle_start 
+047e 20405aa8 call mouse_bluetooth_fast_conn_disable 
+047f 20200467 branch p_mouse_24g_first_bluetooth_reconnect 
+
+p_mouse_24g_start_mode:
+0480 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0481 c308e02a bbit0 mouse_enable_24g ,mouse_24g_mode_setup_error 
+0482 20406195 call mouse_device_24g_pair_led_config 
+0483 204054ac call mouse_wakeup_from_power_check 
+0484 20346067 branch mouse_24g_reconn_dongle_start ,user 
+0485 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0486 c2980477 bbit1 mouse_enable_auto_24g_paring ,p_mouse_24g_reconn_general_dongle 
+0487 20206023 branch mouse_24g_start_mode + 7 
 
 p_mouse_store_normal_tx_power:
-0423 6fe0c141 fetch 1 ,mem_tx_power 
-0424 67e0ca07 store 1 ,mem_normal_tx_power 
-0425 20600000 rtn 
-
-p_mouse_fetch_normal_tx_power:
-0426 6fe0ca07 fetch 1 ,mem_normal_tx_power 
-0427 67e0c141 store 1 ,mem_tx_power 
-0428 20600000 rtn 
+0488 6fe0c141 fetch 1 ,mem_tx_power 
+0489 67e0ca07 store 1 ,mem_normal_tx_power 
+048a 20600000 rtn 
 
 p_mouse_idle:
-0429 2040620e call mouse_low_voltage_led_no_enter_lpm 
-042a 204078aa call ui_check_paring_button 
-042b 2040042d call p_mouse_dpi_check 
-042c 20205e61 branch mouse_idle + 4 
+048b 2040620e call mouse_low_voltage_led_no_enter_lpm 
+048c 204078aa call ui_check_paring_button 
+048d 20400491 call p_mouse_dpi_check 
+048e 20205e61 branch mouse_idle + 4 
+
+p_mouse_dpi_check_retransmit:
+048f 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0490 c4140000 rtnbit0 mouse_enable_select_device_by_dpi_button 
 
 p_mouse_dpi_check:
-042d 6fe0c649 fetch 1 ,mem_dpi_button_gpio 
-042e c17f8000 rtneq gpio_disable 
-042f da200000 arg 0 ,rega 
-0430 70497705 jam mouse_dpi_key ,mem_mouse_key_temp 
-0431 6848c649 fetcht 1 ,mem_dpi_button_gpio 
-0432 20400434 call p_mouse_dpi_key_check 
-0433 202056c1 branch mouse_dpi_check_next 
+0491 6fe0c649 fetch 1 ,mem_dpi_button_gpio 
+0492 c17f8000 rtneq gpio_disable 
+0493 da200000 arg 0 ,rega 
+0494 70497705 jam mouse_dpi_key ,mem_mouse_key_temp 
+0495 6848c649 fetcht 1 ,mem_dpi_button_gpio 
+0496 20400498 call p_mouse_dpi_key_check 
+0497 202056c1 branch mouse_dpi_check_next 
 
 p_mouse_dpi_key_check:
-0434 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-0435 c295d6de bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
-0436 6fe0c974 fetch 1 ,mem_mouse_dpikey_press_status 
-0437 1fe22600 copy pdata ,regc 
-0438 6fe0c654 fetch 1 ,mem_matrix_public_gpio 
-0439 c07f843b beq gpio_disable ,p_mouse_3io6key_dpi_check 
-043a 202056ce branch mouse_dpi_key_check_next 
+0498 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0499 c295d6de bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
+049a 6fe0c974 fetch 1 ,mem_mouse_dpikey_press_status 
+049b 1fe22600 copy pdata ,regc 
+049c 6fe0c654 fetch 1 ,mem_matrix_public_gpio 
+049d c07f849f beq gpio_disable ,p_mouse_3io6key_dpi_check 
+049e 202056ce branch mouse_dpi_key_check_next 
 
 p_mouse_3io6key_dpi_check:
-043b 6fe0c649 fetch 1 ,mem_dpi_button_gpio 
-043c 20405946 call mouse_gpio_config_output_low 
-043d 6848c649 fetcht 1 ,mem_dpi_button_gpio 
-043e 2020043f branch p_mouse_3io6key_check 
+049f 6fe0c649 fetch 1 ,mem_dpi_button_gpio 
+04a0 20405946 call mouse_gpio_config_output_low 
+04a1 6848c649 fetcht 1 ,mem_dpi_button_gpio 
+04a2 202004a3 branch p_mouse_3io6key_check 
 
 p_mouse_3io6key_check:
-043f 1a627e00 copy regc ,pdata 
-0440 67e0c978 store 1 ,mem_mouse_key_status 
-0441 1fe3fe00 lshift pdata ,pdata 
-0442 1fe22400 copy pdata ,regb 
-0443 18422600 copy temp ,regc 
-0444 204055b1 call mouse_gpio_config_input_pd 
-0445 1a620400 copy regc ,temp 
-0446 20406ee6 call gpio_get_bit 
-0447 7d20a400 nsetflag true ,0 ,regb 
-0448 2040593d call mouse_check_press 
-0449 20205929 branch mouse_check_key_connect_gnd_1 
+04a3 1a627e00 copy regc ,pdata 
+04a4 67e0c978 store 1 ,mem_mouse_key_status 
+04a5 1fe3fe00 lshift pdata ,pdata 
+04a6 1fe22400 copy pdata ,regb 
+04a7 18422600 copy temp ,regc 
+04a8 204055b1 call mouse_gpio_config_input_pd 
+04a9 1a620400 copy regc ,temp 
+04aa 20406ee6 call gpio_get_bit 
+04ab 7d20a400 nsetflag true ,0 ,regb 
+04ac 2040593d call mouse_check_press 
+04ad 20205929 branch mouse_check_key_connect_gnd_1 
 
 p_g24_short_sleep:
-044a 204036b4 call g24_lpm_wait 
-044b 24740000 nrtn user 
-044c 204036be call g24_setgpio_lpm_before 
-044d 20400450 call p_clear_wake 
-044e 6fe1c608 fetch 3 ,mem_24g_short_sleep_set 
-044f 20203622 branch g24_long_seep2 
+04ae 204036b4 call g24_lpm_wait 
+04af 24740000 nrtn user 
+04b0 204036be call g24_setgpio_lpm_before 
+04b1 204004b3 call p_clear_wake 
+04b2 2020361b branch g24_short_sleep_next 
 
 p_clear_wake:
-0450 58000000 setarg 0 
-0451 79207e15 set1 21 ,pdata 
-0452 67e40016 store 8 ,mem_gpio_wakeup_cfg 
-0453 58000000 setarg 0 
-0454 67e2001e store 4 ,mem_gpio_wakeup_cfg + 8 
-0455 20600000 rtn 
+04b3 58000000 setarg 0 
+04b4 67e40016 store 8 ,mem_gpio_wakeup_cfg 
+04b5 67e2001e store 4 ,mem_gpio_wakeup_cfg + 8 
+04b6 20600000 rtn 
 
 p_mouse_24g_hibernate_set:
-0456 70460000 jam 0 ,mem_24g_attempt_fail_flag 
-0457 20403647 call g24_transmit_next_packet 
-0458 5fffffff setarg -1 
-0459 67e245af store 4 ,mem_24g_enter_hibernate 
-045a 58000000 setarg 0 
-045b 67e3c846 store 7 ,mem_mouse_key 
-045c 70473f01 jam 1 ,mem_sensor_shutdown_flag 
-045d 204059ed call mouse_sensor_powerdown 
-045e 2020027b branch p_mouse_24g_long_sleep 
+04b7 70460000 jam 0 ,mem_24g_attempt_fail_flag 
+04b8 20403647 call g24_transmit_next_packet 
+04b9 5fffffff setarg -1 
+04ba 67e245af store 4 ,mem_24g_enter_hibernate 
+04bb 58000000 setarg 0 
+04bc 67e3c846 store 7 ,mem_mouse_key 
+04bd 70473f01 jam 1 ,mem_sensor_shutdown_flag 
+04be 204059ed call mouse_sensor_powerdown 
+04bf 2020622b branch mouse_24g_long_sleep 
 
 p_mouse_setgpio_hibernate:
-045f 20405a92 call mouse_set_sdio_high 
-0460 20400450 call p_clear_wake 
-0461 204056a9 call mouse_before_hibernate_wheel_gpio_set 
-0462 6848c654 fetcht 1 ,mem_matrix_public_gpio 
-0463 20406ef7 call gpio_out_active 
-0464 6848c654 fetcht 1 ,mem_matrix_public_gpio 
-0465 20406ed3 call gpio_clr_wake 
-0466 6fe0c64d fetch 1 ,mem_mouse_sensor_sdio_gpio 
-0467 20405943 call mouse_gpio_config_output_high 
-0468 d8400015 arg 21 ,temp 
-0469 204055b5 call mouse_gpio_config_input_pu 
-046a 2040046c call p_mouse_device_switch_gpio_high_impedance 
-046b 202054df branch mouse_setgpio_hibernate + 3 
-
-p_mouse_device_switch_gpio_high_impedance:
-046c 6fe0c65a fetch 1 ,mem_device_switch_gpio 
-046d c17f8000 rtneq 0xff 
-046e 6fe0c666 fetch 1 ,mem_device_flag 
-046f c0000472 beq mode_24g_device ,p_mouse_device_switch_gpio_set_impedance 
-0470 6848c65a fetcht 1 ,mem_device_switch_gpio 
-0471 202055b5 branch mouse_gpio_config_input_pu 
-
-p_mouse_device_switch_gpio_set_impedance:
-0472 6848c65a fetcht 1 ,mem_device_switch_gpio 
-0473 20206f0f branch gpio_set_high_impedance 
+04c0 20405a92 call mouse_set_sdio_high 
+04c1 204004b3 call p_clear_wake 
+04c2 204056a9 call mouse_before_hibernate_wheel_gpio_set 
+04c3 6fe0c64d fetch 1 ,mem_mouse_sensor_sdio_gpio 
+04c4 20405943 call mouse_gpio_config_output_high 
+04c5 6848c65a fetcht 1 ,mem_device_switch_gpio 
+04c6 204055ab call mouse_gpio_set_pupd_by_input 
+04c7 d8400015 arg 21 ,temp 
+04c8 204055b5 call mouse_gpio_config_input_pu 
+04c9 2040611a call mouse_logo_led_off 
+04ca 20400237 call p_mouse_lpm_before_common 
+04cb 202054e2 branch mouse_setgpio_hibernate_next 
 
 p_mouse_24g_package_data:
-0474 c6930000 rtnmark0 mark_24g 
-0475 20405601 call mouse_motion 
-0476 24740000 nrtn user 
-0477 6fe0c77c fetch 1 ,mem_mouse_24g_long_sleep_flag 
-0478 70477c00 jam 0 ,mem_mouse_24g_long_sleep_flag 
-0479 245a0489 ncall p_mouse_24g_short_sleep_clear_wake ,blank 
-047a 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-047b c30b047e bbit0 mouse_enable_keyboard ,p_mouse_24g_mouse_package_data 
-047c 6fe0c96c fetch 1 ,mem_customer_key 
-047d 243a60b6 nbranch mouse_24g_keyboard_package_data ,blank 
+04cc c6930000 rtnmark0 mark_24g 
+04cd 20405601 call mouse_motion 
+04ce 24740000 nrtn user 
+04cf 6fe0c77c fetch 1 ,mem_mouse_24g_long_sleep_flag 
+04d0 70477c00 jam 0 ,mem_mouse_24g_long_sleep_flag 
+04d1 245a04e1 ncall p_mouse_24g_short_sleep_clear_wake ,blank 
+04d2 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+04d3 c30b04d6 bbit0 mouse_enable_keyboard ,p_mouse_24g_mouse_package_data 
+04d4 6fe0c96c fetch 1 ,mem_customer_key 
+04d5 243a60b6 nbranch mouse_24g_keyboard_package_data ,blank 
 
 p_mouse_24g_mouse_package_data:
-047e 20400480 call p_mouse_data_xy_release 
-047f 202060a2 branch mouse_24g_mouse_package_data + 1 
+04d6 204004d8 call p_mouse_data_xy_release 
+04d7 202060a2 branch mouse_24g_mouse_package_data + 1 
 
 p_mouse_data_xy_release:
-0480 6fe0c659 fetch 1 ,mem_sensor_motion_gpio 
-0481 c1ff8000 rtnne gpio_disable 
-0482 6fe0c77d fetch 1 ,mem_mouse_long_mult_flag 
-0483 207a0000 rtn blank 
-0484 1fe0ffff increase -1 ,pdata 
-0485 67e0c77d store 1 ,mem_mouse_long_mult_flag 
-0486 58000000 setarg 0 
-0487 67e24847 store 4 ,mem_mouse_x 
-0488 20205a73 branch mouse_init_sensor_reset 
+04d8 6fe0c659 fetch 1 ,mem_sensor_motion_gpio 
+04d9 c1ff8000 rtnne gpio_disable 
+04da 6fe0c77d fetch 1 ,mem_mouse_long_mult_flag 
+04db 207a0000 rtn blank 
+04dc 1fe0ffff increase -1 ,pdata 
+04dd 67e0c77d store 1 ,mem_mouse_long_mult_flag 
+04de 58000000 setarg 0 
+04df 67e24847 store 4 ,mem_mouse_x 
+04e0 20205a73 branch mouse_init_sensor_reset 
 
 p_mouse_24g_short_sleep_clear_wake:
-0489 20400450 call p_clear_wake 
-048a 2020020e branch p_lpm_write_gpio_wakeup 
+04e1 204004b3 call p_clear_wake 
+04e2 20200256 branch p_lpm_write_gpio_wakeup 
 
 p_mouse_check_select_device_by_switch:
-048b 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-048c c4150000 rtnbit0 mouse_enable_select_device_by_switch_gpio 
-048d c31fdeb9 bbit0 mouse_enable_switch_gpio_connect_vin ,mouse_switch_gpio_connect_gnd 
+04e3 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+04e4 c4150000 rtnbit0 mouse_enable_select_device_by_switch_gpio 
+04e5 c31f84f0 bbit0 mouse_enable_switch_gpio_connect_vin ,p_mouse_switch_gpio_connect_gnd 
+
+p_mouse_switch_gpio_connect_vin_check:
+04e6 204004f2 call p_mouse_switch_gpio_pd_set 
+04e7 204004ec call p_mouse_switch_gpio_connect_vin 
+
+p_mouse_switch_gpio_pu_set:
+04e8 6848c65a fetcht 1 ,mem_device_switch_gpio 
+04e9 20406ef3 call gpio_out_inactive 
+04ea 6848c65a fetcht 1 ,mem_device_switch_gpio 
+04eb 202055b5 branch mouse_gpio_config_input_pu 
 
 p_mouse_switch_gpio_connect_vin:
-048e 6848c65a fetcht 1 ,mem_device_switch_gpio 
-048f 20406ef7 call gpio_out_active 
-0490 6848c65a fetcht 1 ,mem_device_switch_gpio 
-0491 204055b1 call mouse_gpio_config_input_pd 
-0492 6848c65a fetcht 1 ,mem_device_switch_gpio 
-0493 20406ee6 call gpio_get_bit 
-0494 2420dec2 nbranch mouse_check_select_24g_device ,true 
-0495 20205ebe branch mouse_select_btdevice 
+04ec 6848c65a fetcht 1 ,mem_device_switch_gpio 
+04ed 20406ee6 call gpio_get_bit 
+04ee 2420dec2 nbranch mouse_check_select_24g_device ,true 
+04ef 20205ebe branch mouse_select_btdevice 
+
+p_mouse_switch_gpio_connect_gnd:
+04f0 204004e8 call p_mouse_switch_gpio_pu_set 
+04f1 20405ebb call mouse_switch_gpio_connect_gnd 
+
+p_mouse_switch_gpio_pd_set:
+04f2 6848c65a fetcht 1 ,mem_device_switch_gpio 
+04f3 20406ef7 call gpio_out_active 
+04f4 6848c65a fetcht 1 ,mem_device_switch_gpio 
+04f5 202055b1 branch mouse_gpio_config_input_pd 
 
 p_mouse_init_sensor:
-0496 20405958 call mouse_read_sensor_id 
-0497 c018595f beq p32xx_id1 ,mouse_init_p32xx_id2_judge 
-0498 c018d9c6 beq p3065_id1 ,mouse_init_p3065 
-0499 c02c049b beq pka8g2_id1 ,p_mouse_ka8g2_id2_judge 
-049a 20205952 branch mouse_init_sensor + 5 
+04f6 20405958 call mouse_read_sensor_id 
+04f7 c018595f beq p32xx_id1 ,mouse_init_p32xx_id2_judge 
+04f8 c018d9c6 beq p3065_id1 ,mouse_init_p3065 
+04f9 c02c04fb beq pka8g2_id1 ,p_mouse_ka8g2_id2_judge 
+04fa 20205952 branch mouse_init_sensor + 5 
 
 p_mouse_ka8g2_id2_judge:
-049b 204059e7 call mouse_sensor_poweron 
-049c 6fe0c85a fetch 1 ,mem_sensor_id2 
-049d c02c849f beq pka8g2_id2 ,p_mouse_ka8g2_init_param 
-049e 2020595f branch mouse_init_p32xx_id2_judge 
+04fb 204059e7 call mouse_sensor_poweron 
+04fc 6fe0c85a fetch 1 ,mem_sensor_id2 
+04fd c02c84ff beq pka8g2_id2 ,p_mouse_ka8g2_init_param 
+04fe 2020595f branch mouse_init_p32xx_id2_judge 
 
 p_mouse_ka8g2_init_param:
-049f 7049570b jam ka8g2 ,mem_config_sensor_type 
-04a0 da604a0b arg mem_sensor_ka8g2_init_new ,regc 
-04a1 20205995 branch mouse_sensor_wr_seq 
+04ff 7049570b jam ka8g2 ,mem_config_sensor_type 
+0500 da604a0b arg mem_sensor_ka8g2_init_new ,regc 
+0501 20205995 branch mouse_sensor_wr_seq 
 
 p_mouse_check_sensor_data:
-04a2 6fe0c420 fetch 1 ,mem_spi_write_flash_sm 
-04a3 c1800000 rtnne flash_sm_no_buys 
-04a4 6fe0c957 fetch 1 ,mem_config_sensor_type 
-04a5 c00584a7 beq ka8g2 ,p_mouse_pka8g2_sensor_motion 
-04a6 202059f8 branch mouse_check_sensor_data + 2 
+0502 6fe0c420 fetch 1 ,mem_spi_write_flash_sm 
+0503 c1800000 rtnne flash_sm_no_buys 
+0504 6fe0c957 fetch 1 ,mem_config_sensor_type 
+0505 c0058507 beq ka8g2 ,p_mouse_pka8g2_sensor_motion 
+0506 202059f8 branch mouse_check_sensor_data + 2 
 
 p_mouse_pka8g2_sensor_motion:
-04a7 20405a6d call mouse_clear_sensor_data 
-04a8 6fe0c659 fetch 1 ,mem_sensor_motion_gpio 
-04a9 c07f84ad beq gpio_disable ,p_mouse_pka8g2_sensor_motion_1 
-04aa 6848c659 fetcht 1 ,mem_sensor_motion_gpio 
-04ab 20406ee6 call gpio_get_bit 
-04ac 24608000 nrtn true 
+0507 20405a6d call mouse_clear_sensor_data 
+0508 6fe0c659 fetch 1 ,mem_sensor_motion_gpio 
+0509 c07f850d beq gpio_disable ,p_mouse_pka8g2_sensor_motion_1 
+050a 6848c659 fetcht 1 ,mem_sensor_motion_gpio 
+050b 20406ee6 call gpio_get_bit 
+050c 24608000 nrtn true 
 
 p_mouse_pka8g2_sensor_motion_1:
-04ad 58000000 setarg pan_reg_pid_l 
-04ae 204069e5 call twspi_read 
-04af c0ac5955 bne pka8g2_id1 ,mouse_twspi_reset 
-04b0 20205a2f branch mouse_p3212_sensor_motion_2 
+050d 58000000 setarg pan_reg_pid_l 
+050e 204069e5 call twspi_read 
+050f c0ac5955 bne pka8g2_id1 ,mouse_twspi_reset 
+0510 20205a2f branch mouse_p3212_sensor_motion_2 
 
 p_mouse_motion:
-04b1 78547c00 disable user 
-04b2 58000000 setarg 0 
-04b3 67e34847 store 6 ,mem_mouse_x 
-04b4 204004a2 call p_mouse_check_sensor_data 
-04b5 20205606 branch mouse_motion + 5 
+0511 78547c00 disable user 
+0512 58000000 setarg 0 
+0513 67e34847 store 6 ,mem_mouse_x 
+0514 20400502 call p_mouse_check_sensor_data 
+0515 58000089 setarg 0x0089 
+0516 204069e4 call twspi_write 
+0517 20405747 call mouse_setting_sensor_type 
+0518 20405612 call mouse_zwheel 
+0519 20405617 call mouse_t_zwheel 
+051a 2040051f call p_mouse_key 
+051b 2020560c branch mouse_motion + 11 
+
+p_mouse_drawing_optima:
+051c 6fe0c957 fetch 1 ,mem_config_sensor_type 
+051d c1058000 rtneq ka8g2 
+051e 20205f27 branch mouse_drawing_optima + 1 
+
+p_mouse_key:
+051f 2040584c call mouse_check_firekey_gpio 
+0520 6fe0c987 fetch 1 ,mem_fire_key_flag 
+0521 243a5860 nbranch fire_key_press ,blank 
+0522 6fe0c982 fetch 1 ,mem_fire_key_status 
+0523 243a585f nbranch fire_key_process ,blank 
+0524 20405888 call mouse_check_key_gpio 
+0525 20400527 call p_mouse_ghost_key_check 
+0526 202057ad branch mouse_key + 7 
+
+p_mouse_ghost_key_check:
+0527 70497900 jam 0 ,mem_mouse_matrix_key_cow_count 
+0528 70497a00 jam 0 ,mem_mouse_matrix_key_row_count 
+0529 70497b00 jam 0 ,mem_mouse_ghost_flag 
+052a 1fe22400 copy pdata ,regb 
+052b 6848c644 fetcht 1 ,mem_lbutton_gpio 
+052c 6fe0c647 fetch 1 ,mem_bk_button_gpio 
+052d 98467c00 isub temp ,null 
+052e 20228539 branch p_mouse_matrix_ghost_key_l_bk ,zero 
+052f 6fe0c648 fetch 1 ,mem_fw_button_gpio 
+0530 98467c00 isub temp ,null 
+0531 2022853f branch p_mouse_matrix_ghost_key_l_fw ,zero 
+0532 6848c645 fetcht 1 ,mem_mbutton_gpio 
+0533 6fe0c647 fetch 1 ,mem_bk_button_gpio 
+0534 98467c00 isub temp ,null 
+0535 20228548 branch p_mouse_ghost_key_mbk_rfw ,zero 
+
+p_mouse_ghost_key_mfw_rbk:
+0536 204057fb call mouse_ghost_key_check_m_fw 
+
+p_mouse_ghost_key_rbk:
+0537 2040054d call p_mouse_ghost_key_check_r_bk 
+0538 202057e5 branch mouse_ghost_key_check_next 
+
+p_mouse_matrix_ghost_key_l_bk:
+0539 6848c645 fetcht 1 ,mem_mbutton_gpio 
+053a 6fe0c648 fetch 1 ,mem_fw_button_gpio 
+053b 98467c00 isub temp ,null 
+053c 2022d7d6 branch mouse_ghost_key_lbk_mfw ,zero 
+
+p_mouse_ghost_key_lbk_rfw:
+053d 204057ef call mouse_ghost_key_check_l_bk 
+053e 20200549 branch p_mouse_ghost_key_rfw 
+
+p_mouse_matrix_ghost_key_l_fw:
+053f 6848c645 fetcht 1 ,mem_mbutton_gpio 
+0540 6fe0c647 fetch 1 ,mem_bk_button_gpio 
+0541 98467c00 isub temp ,null 
+0542 20228545 branch p_mouse_ghost_key_lfw_mbk ,zero 
+
+p_mouse_ghost_key_lfw_rbk:
+0543 2040054f call p_mouse_ghost_key_check_l_fw 
+0544 20200537 branch p_mouse_ghost_key_rbk 
+
+p_mouse_ghost_key_lfw_mbk:
+0545 2040054f call p_mouse_ghost_key_check_l_fw 
+0546 2040054b call p_mouse_ghost_key_check_m_bk 
+0547 202057e5 branch mouse_ghost_key_check_next 
+
+p_mouse_ghost_key_mbk_rfw:
+0548 2040054b call p_mouse_ghost_key_check_m_bk 
+
+p_mouse_ghost_key_rfw:
+0549 20400551 call p_mouse_ghost_key_check_r_fw 
+054a 202057e5 branch mouse_ghost_key_check_next 
+
+p_mouse_ghost_key_check_m_bk:
+054b 1a417e12 and regb ,mouse_m_bk_button ,pdata 
+054c 202057f3 branch mouse_ghost_key_check_m_bk + 1 
+
+p_mouse_ghost_key_check_r_bk:
+054d 1a417e0a and regb ,mouse_r_bk_button ,pdata 
+054e 202057f6 branch mouse_ghost_key_check_r_bk + 1 
+
+p_mouse_ghost_key_check_l_fw:
+054f 1a417e11 and regb ,mouse_l_fw_button ,pdata 
+0550 202057f9 branch mouse_ghost_key_check_l_fw + 1 
+
+p_mouse_ghost_key_check_r_fw:
+0551 1a417e12 and regb ,mouse_r_fw_button ,pdata 
+0552 202057ff branch mouse_ghost_key_check_r_fw + 1 
               org 0x2000
 
 start:
@@ -2062,6 +2305,8 @@
 2166 2000003c nop 60 
 2167 708a2020 jam 0x20 ,0x8a20 
 2168 708a23fd jam 0xfd ,0x8a23 
+
+set_sync_on_next:
 2169 708a2412 jam 0x12 ,0x8a24 
 216a 708a2410 jam 0x10 ,0x8a24 
 216b 2000003c nop 60 
@@ -2760,7 +3005,7 @@
 2396 793ffe05 set0 gpio_latch ,pdata 
 2397 67f08132 store 1 ,core_lpm_isogate 
 2398 2435a39d nbranch boot_load ,wake 
-2399 20407d74 call clean_smem 
+2399 20000001 nop 1 
 239a 6602069d storer alarm ,4 ,mem_saved_gpio_in 
 239b 20600000 rtn 
 
@@ -8996,6 +9241,8 @@
 3618 24740000 nrtn user 
 3619 204036be call g24_setgpio_lpm_before 
 361a 20407de2 call clear_wake 
+
+g24_short_sleep_next:
 361b 6fe1c608 fetch 3 ,mem_24g_short_sleep_set 
 361c 20203622 branch g24_long_seep2 
 
@@ -19531,6 +19778,8 @@
 54df 2040611a call mouse_logo_led_off 
 54e0 2040550c call mouse_lpm_before_common 
 54e1 204054f9 call mouse_gpio_pd_idle 
+
+mouse_setgpio_hibernate_next:
 54e2 6848c65b fetcht 1 ,mem_mouse_reuse_2ice_gpio 
 54e3 204055b5 call mouse_gpio_config_input_pu 
 54e4 204055b9 call mouse_gpio_set_high_impedance 
@@ -20249,6 +20498,8 @@
 56f7 44bdc00f bpatch patch0f_3 ,mem_patch0f 
 56f8 20405728 call mouse_dpi_ghost_check 
 56f9 20740000 rtn user 
+
+mouse_dpi_process_next:
 56fa 6fe0c690 fetch 1 ,mem_mouse_dpi 
 56fb 1fe20400 copy pdata ,temp 
 56fc 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
@@ -20361,6 +20612,8 @@
 573f c38e0000 rtnbit1 mouse_enable_dpi_level_4 
 5740 6fe0c690 fetch 1 ,mem_mouse_dpi 
 5741 c1818000 rtnne mouse_dpi_level4 
+
+mouse_dpi_reinit_set:
 5742 70469000 jam mouse_dpi_level1 ,mem_mouse_dpi 
 5743 20600000 rtn 
 
@@ -21169,6 +21422,8 @@
 596f 204059da call mouse_sensor_reset 
 5970 20407c95 call delay_10ms 
 5971 da6048d6 arg mem_sensor_8650_init ,regc 
+
+mouse_sensor_init_end:
 5972 20405995 call mouse_sensor_wr_seq 
 5973 20205747 branch mouse_setting_sensor_type 
 
@@ -22872,6 +23127,8 @@
 
 mouse_le_addr_increase_count_load:
 5e40 6fe149e0 fetch 2 ,mem_random_addr_increase_count_temp 
+
+mouse_le_addr_increase_store:
 5e41 67e14695 store 2 ,mem_random_addr_increase_count 
 5e42 20600000 rtn 
 
@@ -23038,10 +23295,10 @@
 5eb6 44c84012 bpatch patch12_0 ,mem_patch12 
 5eb7 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
 5eb8 c4150000 rtnbit0 mouse_enable_select_device_by_switch_gpio 
-
-mouse_switch_gpio_connect_gnd:
 5eb9 6848c65a fetcht 1 ,mem_device_switch_gpio 
 5eba 204055b5 call mouse_gpio_config_input_pu 
+
+mouse_switch_gpio_connect_gnd:
 5ebb 6848c65a fetcht 1 ,mem_device_switch_gpio 
 5ebc 20406ee6 call gpio_get_bit 
 5ebd 2020dec2 branch mouse_check_select_24g_device ,true 
@@ -23629,6 +23886,8 @@
 604b 58000000 setarg 0 
 604c 67e145de store 2 ,mem_24g_reconn_timeout 
 604d 20405c39 call mouse_stop_discovery 
+
+mouse_24g_pair_mode_check:
 604e 70458901 jam type_ms ,mem_24g_data_type 
 604f 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
 6050 c30b3291 bbit0 mouse_enable_keyboard ,g24_pair_start 
@@ -23859,6 +24118,8 @@
 60ff 20407cef call timer_check 
 6100 247a0000 nrtn blank 
 6101 20406106 call mouse_dpi_check_once 
+
+mouse_g24_retransmit_event_set:
 6102 2040572c call mouse_dpi_key_check_long_press 
 
 mouse_g24_retransmit_100ms_timer_init:
Index: output/romcode.rom
===================================================================
--- /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/output/romcode.rom	(revision 794)
+++ /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/output/romcode.rom	(working copy)
@@ -919,7 +919,7 @@
 793ffe05
 67f08132
 2435a39d
-20407d74
+20000001
 6602069d
 20600000
 204023a0
@@ -24573,4 +24573,4 @@
 00000000
 00000000
 00000000
-0000def0
\ No newline at end of file
+0000c0a6
\ No newline at end of file
Index: program/app_mouse.prog
===================================================================
--- /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/program/app_mouse.prog	(revision 794)
+++ /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/program/app_mouse.prog	(working copy)
@@ -342,6 +342,7 @@
 	call mouse_logo_led_off
 	call mouse_lpm_before_common
 	call mouse_gpio_pd_idle
+mouse_setgpio_hibernate_next:
 	fetcht 1,mem_mouse_reuse_2ice_gpio
 	call mouse_gpio_config_input_pu
 	call mouse_gpio_set_high_impedance
@@ -641,7 +642,7 @@
 	isolate1 0,pdata
 	call gpio_set_high_impedance,true
 	fetch 3,mem_pdatatemp
-	lshift pdata,pdata
+	lshift pdata,pdata		//-->rshift
 	store 3,mem_pdatatemp
 	increase 1,temp
 	loop mouse_gpio_set_high_impedance_bit_loop
@@ -1084,6 +1085,7 @@
 	bpatch patch0f_3,mem_patch0f
 	call mouse_dpi_ghost_check
 	rtn user
+mouse_dpi_process_next:
 	fetch 1,mem_mouse_dpi
 	
 	copy pdata,temp
@@ -1195,6 +1197,7 @@
 	rtnbit1 MOUSE_ENABLE_DPI_LEVEL_4
 	fetch 1,mem_mouse_dpi
 	rtnne MOUSE_DPI_LEVEL4
+mouse_dpi_reinit_set:
 	jam MOUSE_DPI_LEVEL1,mem_mouse_dpi
 	rtn
 	
@@ -1995,6 +1998,7 @@
 	call mouse_sensor_reset
 	call delay_10ms
 	arg mem_sensor_8650_init,regc
+mouse_sensor_init_end:
 	call mouse_sensor_wr_seq
 	branch mouse_setting_sensor_type
 
@@ -3714,6 +3718,7 @@
 	
 mouse_le_addr_increase_count_load:
 	fetch 2,mem_random_addr_increase_count_temp
+mouse_le_addr_increase_store:
 	store 2,mem_random_addr_increase_count
 	rtn
 
@@ -3879,9 +3884,9 @@
 	bpatch patch12_0,mem_patch12
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
 	rtnbit0 MOUSE_ENABLE_SELECT_DEVICE_BY_SWITCH_GPIO
-mouse_switch_gpio_connect_gnd:
 	fetcht 1,mem_device_switch_gpio
 	call mouse_gpio_config_input_pu
+mouse_switch_gpio_connect_gnd:
 	fetcht 1,mem_device_switch_gpio
 	call gpio_get_bit
 	branch mouse_check_select_24g_device,true
@@ -4448,6 +4453,7 @@
 	setarg 0
 	store 2,mem_24g_reconn_timeout	
 	call mouse_stop_discovery
+mouse_24g_pair_mode_check:
 	jam TYPE_MS,mem_24g_data_type
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
 	bbit0 MOUSE_ENABLE_KEYBOARD,g24_pair_start
@@ -4679,6 +4685,7 @@
 	call timer_check
 	nrtn blank
 	call mouse_dpi_check_once
+mouse_g24_retransmit_event_set:
 	call mouse_dpi_key_check_long_press
 mouse_g24_retransmit_100ms_timer_init:
 	arg 12,queue
Index: program/bt.prog
===================================================================
--- /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/program/bt.prog	(revision 794)
+++ /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/program/bt.prog	(working copy)
@@ -19,7 +19,7 @@
 //define COMPILE_WECHAT
 //define COMPLIE_TEST
 define COMPLIE_ADPCM
-
+define YC1121SB
 INCLUDE "bt_format"
 
 org 0x0000		// start from patch ram address start
@@ -543,7 +543,8 @@
 	jam 0x00,0x8a26 
 	nop 60
 	jam 0x20,0x8a20 
-	jam 0xfd,0x8a23 
+	jam 0xfd,0x8a23
+set_sync_on_next:
 	jam 0x12,0x8a24 
 	jam 0x10,0x8a24 
 	nop 60
@@ -1275,7 +1276,11 @@
 	set0 gpio_latch,pdata			// enable gpio normal function after load gpio configuration
 	store 1,core_lpm_isogate		
 	nbranch boot_load,wake		// wakeup from hibernate
+ifdef YC1121SB
+	nop 1
+else
 	call clean_smem
+endif
 	storer alarm,4,mem_saved_gpio_in
 	rtn
 
Index: program/g24_protocol_stack/24g_transmitter.prog
===================================================================
--- /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/program/g24_protocol_stack/24g_transmitter.prog	(revision 794)
+++ /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/program/g24_protocol_stack/24g_transmitter.prog	(working copy)
@@ -56,6 +56,7 @@
 	nrtn user
 	call g24_setgpio_lpm_before
 	call clear_wake
+g24_short_sleep_next:
 	fetch 3,mem_24g_short_sleep_set
 	branch g24_long_seep2
 
Index: program/patch.prog
===================================================================
--- /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/program/patch.prog	(revision 794)
+++ /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/program/patch.prog	(working copy)
@@ -1,33 +1,45 @@
 
-//define AUTO_TEST
 //define PWM_SET
-//define SELECT_ANGLE
+//define SELECT_ANGLE_MZ
+//define ICE_SELECT_ANGLE
 define POWER_CTRL
 //define MORE_POWER_CTRL
+//define ADC_1121SB
+//define ADC_1121SB_1V8_MODE
+//define XTAL_CALP_SET
+//define COMMBINATION_DPI
 
 	bbit1 8,pf_patch_ext
 	beq patch00_0,p_soft_reset
 	beq patch00_2,p_main_loop
-//	beq patch01_7,p_rx_dcoc
 	beq patch02_0,p_shutdown_radio
 	beq patch02_1,p_set_sync_on
 	beq patch02_4,p_set_lemode
 	beq patch02_5,p_rf_rx_enable
+	beq patch02_6,p_calc_freq
 	beq patch03_0,p_txon
 	beq patch03_1,p_set_tx_power
 	beq patch03_2,p_initialize_radio_cont
-//	beq patch03_3,p_rfpll_aac_ghpc
-//	beq patch03_5,p_dpll_ring_ibias_calc
 	beq patch04_5,p_lpm_sleep
+	beq patch04_7,p_lpm_adjust_clk
 	beq patch0d_0,p_mouse_cb_fuction
 	beq patch0d_1,p_mouse_load_device_info_check
+	beq patch0d_2,p_mouse_default_init
 	beq patch0d_4,p_mouse_param_init
+ifdef SELECT_ANGLE_MZ
+	beq patch0d_5,p_mouse_sensor_set_angle
+endif
+ifdef ICE_SELECT_ANGLE
+	beq patch0d_5,p_mouse_sensor_set_angle
+endif
+	beq patch0d_6,p_mouse_start_work
+	beq patch0d_7,mouse4_0_check_reconn_target
 	beq patch0e_3,p_mouse_setgpio_hibernate
-ifdef AUTO_TEST
-	beq patch0f_2,p_mouse_motion
-else
+	beq patch0e_4,p_mouse_lpm_before_common
+ifdef ADC_1121SB	
+	beq patch0e_7,p_mouse_adc_read_start
+endif
 	beq patch0f_2,p_mouse_motion
-endif	
 	beq patch0f_7,p_mouse_3io6key_check
 	beq patch10_1,p_mouse_init_sensor
 	beq patch10_4,p_mouse_buletooth_fast_conn_end
@@ -36,27 +48,37 @@
 	beq patch10_7,p_mouse_bb_event_timer
 	beq patch11_0,p_mouse_start_discovery
 	beq patch11_2,p_mouse_store_remote_bdaddr
+	beq patch11_3,p_mouse_app_initflag_check
 	beq patch11_4,p_mouse_store_device_info
 	beq patch11_5,p_mouse_store_dpi_info_check
 	beq patch11_6,p_mouse_idle
-	beq patch11_3,p_mouse_app_initflag_check
 	beq patch12_0,p_mouse_check_select_device_by_switch
+	beq patch12_3,p_mouse_drawing_optima
 	beq patch12_5,p_mouse_24g_hibernate_set
 	beq patch12_6,p_mouse_24g_package_data
 	beq patch18_5,p_otp_read_data
+	beq patch1a_5,p_gpio_set_wake_by_current_state	
+	beq patch1a_6,p_gpio_set_wake
 	beq patch1b_2,p_sadc_calibration
+ifdef ADC_1121SB
+	beq patch1b_3,p_adc_init_data
 	beq patch1b_4,p_enable_adc
+	beq patch1b_5,p_vdd_calculate_by_mode
+endif
 	branch assert
 
 pf_patch_ext:
 	beq patch22_4,p_le_slave_match
-	beq patch23_2,p_le_got_first_packet
+	beq patch23_2,p_le_got_first_packet_new	//p_le_got_first_packet
+	beq patch24_4,p_le_receive_rxon
 	beq patch24_5,p_le_rx_dec
 	beq patch24_6,p_le_rx_nopayload
 	beq patch27_1,p_le_parse
 	beq patch27_2,p_le_parse_l2cap
+	beq patch29_4,p_le_adv_not_match
 	beq patch29_5,p_le_init_adv
 	beq patch32_0,p_g24_reconn_dispatch
+	beq patch32_2,p_g24_reconn_device_fail
 	beq patch32_6,p_g24_short_sleep
 	beq patch33_2,p_mouse_g24_retransmit
 	beq patch33_5,p_g24_transmit_hop_process
@@ -69,7 +91,7 @@
 /****************************************COMMON PATCH*****************************************/
 
 p_main_loop:
-	ifdef SECURE_CONNECTION
+ifdef SECURE_CONNECTION
 	call sp_calc_sequence_256
 	call sp_calc_sequence_256_check
 endif
@@ -84,6 +106,7 @@
 p_shutdown_radio:
 	jam 0,0x8900
 	branch shutdown_radio+1
+
 p_set_sync_on:
 	jam 0x60,0x8a0f 
 	jam 0xaa,0x8a10 
@@ -93,12 +116,23 @@
 	nop 60
 	jam 0x20,0x8a20 
 	jam 0xf5,0x8a23 
-	jam 0x12,0x8a24 
-	jam 0x10,0x8a24 
-	nop 60
-	jam 0x60,0x8a12 
-	jam 0xdd,0x8a23 
-	rtn
+	branch set_sync_on_next
+
+
+p_calc_freq:
+	setarg 2400
+	iadd temp,pdata
+	copy pdata, rega
+	fetcht 1,mem_fcomp_div
+	rshift temp,temp
+	idiv temp
+//	mul32 pdata,12,rega
+	call wait_div_end
+	quotient pdata
+	rshift8 pdata,queue
+	storer queue, 1,0x890a
+	store 1,0x8909
+	branch calc_freq+10
 
 p_initialize_radio_cont:
 	jam 0,mem_le_testtype
@@ -107,7 +141,7 @@
 	
 	jam 0x0d,0x8946
 	jam 0x10,0x896f
-	
+	jam 0xcd,0x8a13
 	jam 0x10,0x8a06
 	jam 0x4a,0x8a84
 	jam 0x40,0x8a85
@@ -145,16 +179,43 @@
 	call p_rfpll_aac_ghpc
 	call p_set_xtal_cap
 	jam SYSTEM_CLK_12M,mem_system_clk
-	call sadc_calibration
-	branch p_dpll_ring_ibias_calc
+p_sadc_calibration:
+	rtn wake
+	jam 0x77,core_gpadc_ctrl
+	jam 0xc9,core_gpadc_cfg0
+	jam 0x01,core_gpadc_cfg3
+	fetch 1,mem_adc_clkdiv
+	store 1,core_sadc_clkdiv
+	nop 3000
+	call p_sadc_read
+	jam 0xc1,core_gpadc_cfg0
+	fetchr regb,1,mem_spi_write_addr
+	arg 8,loopcnt	//rg_gpadc_sar_dat_sel c0-c7
+	call sadc_cal_read+1
+	fetch 1,mem_spi_write_addr
+	store 1,mem_adc_cal_c7
+	storer regb,1,mem_spi_write_addr
+	rtn
+
+p_sadc_read:
+	jam 0x03,core_sadc_ctrl
+p_sadc_read_wait:
+	fetch 1,core_perf_status
+	bbit0 SARADC_DONE,p_sadc_read_wait
+	fetcht 2,core_sadc_data
+	storet 2,mem_adc_current_value
+	jam 0x00,core_sadc_ctrl
+	rtn
 	
 p_set_xtal_cap:
+ifndef XTAL_CALP_SET 
 	rtn wake
+endif
 	until null,lpo_edge
 	fetch 1,mem_xtal_c_sel
+p_set_xtal_cap_next:
 	store 1,core_xtal_cap
-	until null,lpo_edge
-	rtn
+	branch lpm_write_wait
 	
 p_dpll_on:
 	fetch 1,mem_fcomp_div
@@ -195,6 +256,7 @@
 	and pdata,0xf0,pdata
 	fetcht 1,mem_otp_core_ldo
 	ior temp,pdata
+	increase -3,pdata
 	store 1,0x8136 
 	until null,lpo_edge
 
@@ -206,6 +268,10 @@
 	store 1,0x8138 
 	until null,lpo_edge
 
+p_set_otp_config_wake:
+	fetch 2,mem_otp_charge_pump_x
+	rtn blank
+	store 2,mem_otp_charge_pump
 p_set_otp_config2:
 	fetch 1,0x8acb
 	and pdata,0xf0,pdata
@@ -232,12 +298,6 @@
 	store 1,0x8a02
 	rtn
 
-p_set_otp_config_wake:
-	fetch 2,mem_otp_charge_pump_x
-	rtn blank
-	store 2,mem_otp_charge_pump
-	branch p_set_otp_config2
-
 p_rf_rx_enable:
 	call rf_debug_rx_gpio_high
 	call rf_rx_agc_set
@@ -259,14 +319,21 @@
 	fetch 1,mem_mouse_need_soft_reset
 	nrtn blank
 	call p_mouse_retransmit_select_device_by_pb_button
-	branch mouse_g24_retransmit+3
+	call p_mouse_select_device_by_dpi_button_once
+	branch g24_retransmit0
 
 p_mouse_retransmit_select_device_by_pb_button:
 	fetch 1,mem_config_select_device_button_gpio
 	rtneq GPIO_DISABLE
 	branch mouse_retransmit_select_device_by_pb_button
 
-	
+p_mouse_select_device_by_dpi_button_once:
+	arg 12,queue
+	call timer_check
+	nrtn blank
+	call p_mouse_dpi_check_retransmit
+	branch mouse_g24_retransmit_event_set
+
 p_g24_transmit_hop_process:
 	fetcht 1,mem_24g_retry
 	fetch 1,mem_24g_fast_hop_count			// 125Hz=11  250Hz=5
@@ -295,34 +362,30 @@
 	jam 0xf6,0x8a16 
 	branch txon+7
 
-p_set_tx_power:	
+p_set_tx_power:
+	fetch 1,mem_last_freq
+	beq 22,set_tx_power_f5db
+	beq 46,set_tx_power_f5db
+	beq 70,set_tx_power_f5db
 	fetch 1,mem_tx_power
-	beq TX_POWER_6DB,set_tx_power_7db
-	beq TX_POWER_10DB,p_set_tx_power_10db
-	beq TX_POWER_F30DB,p_set_tx_power_f30db
+	beq TX_POWER_6DB,set_tx_power_5db
+//	beq TX_POWER_F30DB,p_set_tx_power_f30db
 	//beq TX_POWER_F35DB,p_set_tx_power_f35db
 	//beq TX_POWER_F40DB,p_set_tx_power_f40db
 	beq TX_POWER_FACTORY,p_set_tx_power_factory
 	branch set_tx_power+2
-	
-p_set_tx_power_10db:
-	jam 0x25,0x8a14 
-	setarg 0xa93f3f
-	store 3,0x8a60
-	jam 0x1f,0x8a63 
-	rtn
 
 p_set_tx_power_factory:
 	jam 0x17,0x8a14 
 	fetch 3,mem_tx_power_factory_param_new
+p_mouse_tx_power_set:
 	store 3,0x8a60
 	branch set_tx_power_8a63_28
 
 p_set_tx_power_f30db:
 	jam 0x17,0x8a14 
 	setarg 0x250300
-	store 3,0x8a60
-	branch set_tx_power_8a63_28
+	branch p_mouse_tx_power_set
 /*
 p_set_tx_power_f35db:
 	jam 0x17,0x8a14 
@@ -335,8 +398,7 @@
 	setarg 0x250000
 	store 3,0x8a60
 	branch set_tx_power_8a63_28	
-	*/
-/*
+
 p_set_tx_power_f45db:
 	jam 0x17,0x8a14
 	setarg 0x000000
@@ -424,66 +486,6 @@
 p_rfpll_aac_ghpc:
 	rtn wake
 	branch rfpll_aac_ghpc+1
-	
-p_dpll_ring_ibias_calc:
-	rtn
-
-p_sadc_calibration:
-	rtn wake
-	jam 0x77,core_gpadc_ctrl
-	jam 0xc9,core_gpadc_cfg0
-	jam 0x01,core_gpadc_cfg3
-	fetch 1,mem_adc_clkdiv
-	store 1,core_sadc_clkdiv
-	nop 3000
-	call p_sadc_read
-	jam 0xc1,core_gpadc_cfg0
-	fetchr regb,1,mem_spi_write_addr
-	arg 8,loopcnt	//rg_gpadc_sar_dat_sel c0-c7
-	call sadc_cal_read+1
-	fetch 1,mem_spi_write_addr
-	store 1,mem_adc_cal_c7
-	storer regb,1,mem_spi_write_addr
-	rtn
-
-p_enable_adc:
-	call p_sadc_cal_write
-	fetch 1,core_gpadc_cfg1
-	set0 7,pdata
-	store 1,core_gpadc_cfg1
-	jam 0x77,core_gpadc_ctrl
-	jam 0xc1,core_gpadc_cfg0
-	jam 0x01,core_gpadc_cfg3
-	call sadc_channel
-	fetch 1,mem_adc_clkdiv
-	store 1,core_sadc_clkdiv
-	nop 3000
-	call p_sadc_read
-	jam 0,core_sadc_clkdiv
-	branch sadc_dma
-
-p_sadc_cal_write:
-	fetch 1,core_sadc_ctrl
-	set1 1,pdata
-	store 1,core_sadc_ctrl
-	fetchr regb,1,mem_spi_write_addr
-	fetch 1,mem_adc_cal_c7
-	store 1,mem_spi_write_addr
-	arg 8,loopcnt	//rg_gpadc_sar_dat_sel c0-c7
-	call sadc_cal_write+4
-	storer regb,1,mem_spi_write_addr
-	rtn
-
-p_sadc_read:
-	jam 0x03,core_sadc_ctrl
-p_sadc_read_wait:
-	fetch 1,core_perf_status
-	bbit0 SARADC_DONE,p_sadc_read_wait
-	fetcht 2,core_sadc_data
-	storet 2,mem_adc_current_value
-	jam 0x00,core_sadc_ctrl
-	rtn
-	
 
 p_set_lemode:
 	jam 0x11,0x8a82
@@ -525,8 +527,7 @@
 	arg 256,regc
 	iadd regc,pdata
 	rtn
-p_le_got_first_packet:
-	branch p_le_got_first_packet_new
+	
 p_le_slave_match:
 	call p_le_check_retransmit
 	branch le_slave_match+1
@@ -553,8 +554,6 @@
 p_le_check_retransmit_count:
 	fetcht 1,mem_le_arq
 	fetch 1,mem_le_rxbuf_data_header
-//	isolate1 md,pdata
-//	setflag true,mark_ble_rx_md,mark
 	rshift pdata,pdata
 	ixor temp,pdata
 	isolate1 nesn,pdata
@@ -572,20 +571,10 @@
 	fetch 1,mem_le_conn_rcv_new			//lpm  use retention mem
 	increase 1,pdata
 	store 1,mem_le_conn_rcv_new
-	fetch 1,mem_le_state
-	rtnbit1 lestate_got_first_packet
-	set1 lestate_got_first_packet,pdata
-	store 1,mem_le_state
-	fetch 2,mem_le_init_superto
-	store 2,mem_le_superto
-	setarg 0
-	store 4,mem_le_transmit_window	
-//	fetch 1,mem_le_conn_rcv_new
-//	store 1,mem_le_conn_first_rcv
-	rtn
+	branch le_got_first_packet+4
+	
 p_le_rx_dec:
 	call le_check_retransmit	
-//	bmark1 mark_old_packet,le_retransmit_end_of_packet
 	fetchr rega, 1,mem_le_rxbuf_data_length
 	increase -4,rega
 	nbranch le_crc_fail_consecutive,positive
@@ -621,6 +610,71 @@
 	set0 mark_ble_crc_fail,mark	
 	branch le_init_adv+1
 
+p_le_receive_rxon:
+	call le_prep
+	bmark0 mark_ble_lr,p_le_receive_nolr
+	pulse dewhiten_code_calc
+	nop 30
+	call le_prep
+	lshift3 timeup,timeup
+p_le_receive_nolr:
+	disable match
+	enable decode_fec0
+	enable is_rx
+	disable is_tx
+	copy timeup,stop_watch
+	correlate null,timeout
+	branch p_le_receive_on_attempt,attempt
+	copy clke,temp
+	storet 6,mem_sync_clke
+p_le_receive_on_attempt:
+	nbranch le_unsync_end,sync
+	enable swfine
+	fetch 1,mem_le_tx_ifs_defference
+	arg PARAM_20MS_INIT,temp
+	iadd temp,temp
+	fetch 1,mem_system_clk
+	imul32 temp,stop_watch
+	call rf_debug_rx_sync_line	//L-H
+	branch le_receive_skip,attempt
+	call p_calc_clke_all_modem
+	fetch 1,mem_le_state
+	bbit0 lestate_got_first_packet,le_receive_skip
+	call lpm_adjust_clk,wake
+	branch le_receive_skip
+
+p_calc_clke_all_modem:
+	fetcht  6,mem_sync_clke
+	copy clke,pdata
+	call clk_diff
+	copy pdata,temp
+
+	call calc_clke_all_modem
+	copy clke,rege
+	copy clke_rt,pdata
+	iadd temp,pdata
+	copy pdata,clke_rt	
+	rtn
+
+p_lpm_adjust_clk:
+	bmark0 mark_context,lpm_clear_counter
+	fetcht 4,mem_sleep_counter_all
+	arg 0x600,pdata
+	isub temp,null
+	rtn positive				// interval too small
+	copy temp,rega
+	fetcht 6,mem_sync_clke
+	deposit rege
+	call clk_diff_rt
+	copy rega,temp
+	branch lpm_adjust_clk+6
+
+p_le_adv_not_match:
+	call shutdown_radio
+	jam 0,0x8900
+	set0 mark_ble_crc_fail,mark
+	branch le_adv_not_match+1
+
 p_le_parse_l2cap:
 	ifetch 2,contr
 	beq LE_L2CAP_CID_ATT,p_le_parse_att
@@ -698,17 +752,74 @@
 	call p_mouse_data_xy_release
 	branch mouse_le_next+12
 
+p_gpio_set_wake:
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	arg 4,debug
+	isolate1 GPIO_ACTIVE_BIT,temp
+	branch gpio_set_wake_high,true
+	arg 3,debug
+	branch gpio_set_wake_high
+
+p_gpio_set_wake_by_current_state:
+	sub temp,GPIO_DISABLE,null
+	rtn zero
+	call gpio_get_bit
+	branch p_gpio_set_qdec_mode,true
+p_gpio_set_low_wake:
+	arg 3,debug
+	branch gpio_set_wake_high
+	
+p_gpio_set_qdec_mode:
+	jam 1,mem_mouse_qdec_set_flag
+p_mouse_qdec_lpm_cfg:
+	arg 6,debug
+	branch gpio_set_wake_high
+
+p_mouse_puchk_disable:
+	setarg 0x10			//bit0-1:key_delay	bit2-3:pu_delay		bit4-6:interval	bit7:enable 
+p_mouse_puchk_set:
+	store 1,core_puwakeup
+	branch lpm_write_wait
+
+p_mouse_lpm_before_common:
+	call p_clear_wake
+	jam 0,mem_mouse_qdec_set_flag
+	fetcht 1,mem_matrix_public_gpio		// enable b4/b5/dpi wakeup
+	call gpio_out_active
+	fetcht 1,mem_matrix_public_gpio
+	call gpio_clr_wake
+	call mouse_lpm_before_common+1
+	call mouse_gpio_pd_idle
+p_mouse_wheel_set_impedance:
+	fetcht 1,mem_whee_a_data_gpio
+	call gpio_set_high_impedance
+	fetcht 1,mem_whee_b_data_gpio
+	branch gpio_set_high_impedance
+	
 p_lpm_sleep:
 	//call xtal_fast_wake
-	fetch 2,mem_cb_before_lpm_sleep
-	call callback_func
+//	fetch 2,mem_cb_before_lpm_sleep
+//	call callback_func
+ifdef XTAL_CALP_SET
+	setarg 0x12
+	call p_set_xtal_cap_next
+endif
 p_lpm_sleep_skip_cb_function:
 	fetch 4,mem_sleep_counter_all	// sleep total time, 32k unit
 	iadd temp,pdata
 	store 4,mem_sleep_counter_all
 	call p_lpm_save_context
+	call p_mouse_puchk_set_check
 	branch lpm_sleep_skip_cb_function+4
 
+p_mouse_puchk_set_check:
+	fetch 1,mem_mouse_qdec_set_flag
+	branch p_mouse_puchk_disable,blank
+p_mouse_puchk_enable:
+	setarg 0x80			//bit0-1:key_delay	bit2-3:pu_delay		bit4-6:interval	bit7:enable 
+	branch p_mouse_puchk_set
+
 p_lpm_save_context:
 	storer mark,8,mem_saved_mark
 	arg core_gpio_conf,contr
@@ -748,10 +859,7 @@
 	arg 0x01f8,temp
 	iand temp,pdata
 	branch p_g24_reconn_dispatch_next,blank
-	fetch 2,mem_24g_reconn_count
-	increase 1,pdata
-	store 2,mem_24g_reconn_count
-	rtn
+	branch g24_reconn_dispatch+5
 
 p_g24_reconn_dispatch_next:
 	call g24_reconn_data_prep
@@ -759,7 +867,6 @@
 	nbranch g24_reconn_device_fail,sync
 	nbranch g24_reconn_device_fail,user3
 	call g24_ackpayload_parse
-	
 	fetch 1,mem_24g_rxdata_length	//ack payload length 
 	branch p_recv_addr_zero_skip,blank
 p_g24_reconn_dispatch_next_2:	
@@ -771,25 +878,40 @@
 
 p_g24_reconn_mode_judge:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
-	bbit1 MOUSE_ENABLE_AUTO_24G_PARING,g24_pair_start
+	bbit1 MOUSE_ENABLE_AUTO_24G_PARING,mouse_24g_pair_mode_check
 	branch g24_reconn_receiver_addr
 
-p_recv_addr_zero_skip:
-	fetch 4,mem_24g_rxpayload+2
-	rtn blank
-	branch p_g24_reconn_dispatch_next_2
+p_g24_reconn_device_fail:
+	fetch 1,mem_24g_fast_conn_enable
+	branch g24_ch,blank
+	fetch 2,mem_24g_reconn_count
+	increase 1,pdata
+	store 2,mem_24g_reconn_count
+	isolate1 9,pdata
+	fetch 1,mem_24g_reconn_type
+	beq PAIR_AND_RECEIVER,p_g24_reconn_pair_and_receiver
+	branch g24_reconn_device_fail+7
+
+p_g24_reconn_pair_and_receiver:
+	branch g24_reconn_receiver_addr,true
+	branch g24_pair_init_param
 
 p_mouse_param_init:
 	call mouse_param_common_init
-	call p_mouse_le_buff_modify
-	branch mouse_param_init+2
-
-p_mouse_le_buff_modify:
 	setarg mem_le_tx_buffer0_omemalloc_new
 	store 2,mem_ble_l2cap_tx_buff0_ptr
 	setarg MOUSE_BLE_L2CAP_TXBUFF_SIZE_NEW
 	store 2,mem_ble_l2cap_tx_buff_size_ptr
-	rtn
+	branch mouse_param_init+2
+
+p_recv_addr_zero_skip:
+	fetch 4,mem_24g_fast_conn_addr
+	fetcht 4,mem_24g_addr
+	isub temp,null
+	branch p_g24_reconn_dispatch_next_2,zero
+	fetch 4,mem_24g_rxpayload+2
+	rtn blank
+	branch p_g24_reconn_dispatch_next_2
 
 ifdef POWER_CTRL
 p_power_ctrl_start:
@@ -872,124 +994,131 @@
 /****************************************APPLICATION PATCH******************************************/
 
 p_mouse_cb_fuction:
-//	fetch 1,mem_le_tx_ifs_defference
-//	pincrease 2
-//	store 1,mem_le_tx_ifs_defference  	
 	setarg mouse_24g_short_sleep
 	store 2,mem_cb_24g_transmit_short_sleep
-	setarg p_mouse_24g_long_sleep
+	setarg mouse_24g_long_sleep
 	store 2,mem_cb_24g_transmit_long_sleep
-	setarg p_mouse_24g_before_lpm_sleep
-	store 2,mem_cb_before_lpm_sleep
+//	setarg p_mouse_24g_before_lpm_sleep
+//	store 2,mem_cb_before_lpm_sleep
 	branch mouse_cb_fuction+7
 
 p_soft_reset:
+	nbranch soft_reset+1,wake
+	until null,lpo_edge
+	until null,lpo_edge
 	clear_stack
-	call mouse_wheel_gpio_init,wake
+	jam 0x73,core_spid_ctrl
+	call p_mouse_wheel_init_set,wake
 	branch soft_reset+2
 
-p_mouse_24g_long_sleep:
-	call g24_lpm_wait
-	nrtn user
-	jam 1,mem_mouse_24g_long_sleep_flag
-	call g24_setgpio_lpm_before
-	jam 0,mem_mouse_24g_sleep_miss
-	call mouse_24g_send_time_long_wake
-	fetch 1,mem_sensor_shutdown_flag
-	ncall mouse_setgpio_hibernate,blank
-
-	call p_mouse_wheel_set_low_pullup
-
-	fetch 4,mem_24g_enter_hibernate
-	branch g24_long_seep2
-
-p_mouse_wheel_set_low_pullup:
-	fetch 1,mem_sensor_shutdown_flag
-	nrtn blank
-	fetcht 1,mem_whee_a_data_gpio
-	call gpio_set_high_impedance
-	fetcht 1,mem_whee_a_data_gpio
-	call gpio_set_low_pullup
-
-	fetcht 1,mem_whee_b_data_gpio
-	call gpio_set_high_impedance
-	fetcht 1,mem_whee_b_data_gpio
-	branch gpio_set_low_pullup
-
-p_mouse_24g_before_lpm_sleep:
-	rtn
+p_mouse_wheel_init_set:
+	call p_mouse_puchk_disable
+	call mouse_matrix_public_gpio_reset
+	branch mouse_wheel_gpio_init
+//	fetcht 1,mem_whee_a_data_gpio		//reinit gpio pu after disable wheel wakeup
+//	call gpio_config_input
+//	fetcht 1,mem_whee_b_data_gpio
+//	branch gpio_config_input
+	
+	
+//p_mouse_24g_before_lpm_sleep:
+//	rtn
 //	fetch 1,mem_device_flag
 //	rtnne MODE_24G_DEVICE
 //	branch mouse_24g_before_lpm_sleep+2	
 
-ifdef SELECT_ANGLE	
-p_mouse_select_angle:
+p_mouse_default_init:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	isolate1 MOUSE_ENABLE_KEYBOARD,pdata
+	call mouse_customer_key_enable,true
+	branch mouse_default_parm_init
+
+ifdef SELECT_ANGLE_MZ
+p_mouse_sensor_set_angle:
+	fetch 1,mem_sensor_angle_default
+	store 1,mem_config_sensor_angle
 	fetch 1,mem_select_sensor_angle_gpio
 	rtneq GPIO_DISABLE
+	call p_mouse_select_angle
+p_mouse_set_sensor_gpio_sleep: 
+	fetch 1,mem_config_sensor_angle
+	beq MOUSE_3CLK_ANGLE,p_mouse_set_sensor_gnd_set
+	beq MOUSE_12CLK_ANGLE,p_mouse_set_sensor_vin_set
+	rtn
+
+p_mouse_set_sensor_gnd_set:
+	fetch 1,mem_select_sensor_angle_gpio
+	call mouse_gpio_config_output_low
+	fetcht 1,mem_select_sensor_angle_gpio
+	branch mouse_gpio_config_input_pd
 	
-	arg gpcfg_pullup,temp
-	call gpio_config_function_int
+p_mouse_set_sensor_vin_set:
+	fetch 1,mem_select_sensor_angle_gpio
+	call mouse_gpio_config_output_high
+	fetcht 1,mem_select_sensor_angle_gpio
+	branch mouse_gpio_config_input_pu
+	
+p_mouse_select_angle:
+	call p_mouse_set_sensor_vin_set
 	fetcht 1,mem_select_sensor_angle_gpio
 	call gpio_get_bit
 	branch p_mouse_set_sensor_angle_gnd,true
 
-	fetch 1,mem_select_sensor_angle_gpio
-	arg gpcfg_pulldown,temp
-	call gpio_config_function_int
+	call p_mouse_set_sensor_gnd_set
 	fetcht 1,mem_select_sensor_angle_gpio
 	call gpio_get_bit
 	branch p_mouse_set_sensor_angle_float,true	
-	branch p_mouse_set_sensor_angle_vin
-
+p_mouse_set_sensor_angle_vin:
+	jam MOUSE_12CLK_ANGLE,mem_config_sensor_angle
+	rtn
 p_mouse_set_sensor_angle_gnd:
 	jam MOUSE_3CLK_ANGLE,mem_config_sensor_angle
 	rtn
-
 p_mouse_set_sensor_angle_float:
 	jam MOUSE_6CLK_ANGLE,mem_config_sensor_angle
 	rtn
-	
-p_mouse_set_sensor_angle_vin:
-	jam MOUSE_12CLK_ANGLE,mem_config_sensor_angle
-	rtn
+endif
 
-p_mouse_set_sensor_gpio_sleep:
+ifdef ICE_SELECT_ANGLE
+p_mouse_sensor_set_angle:
+	fetch 1,mem_sensor_angle_default
+	store 1,mem_config_sensor_angle
 	fetch 1,mem_select_sensor_angle_gpio
 	rtneq GPIO_DISABLE
-	
-	fetch 1,mem_config_sensor_angle
-	beq MOUSE_3CLK_ANGLE,p_mouse_set_sensor_gnd_low_level
-	beq MOUSE_12CLK_ANGLE,p_mouse_set_sensor_input_pu
-	rtn
-
-p_mouse_set_sensor_gnd_low_level:
-	fetcht 1,mem_select_sensor_angle_gpio
-	branch gpio_out_active
-	
-p_mouse_set_sensor_input_pu:
-	fetcht 1,mem_select_sensor_angle_gpio
-	branch mouse_gpio_config_input_pu	
+	fetch 1,mem_select_sensor_angle_gpio
+	call mouse_gpio_config_output_low
+	fetch 1,mem_mouse_reuse_2ice_gpio
+ 	call mouse_gpio_config_output_low
+ 	fetcht 1,mem_mouse_sensor_sdio_gpio
+	call mouse_gpio_config_input_pu
+	fetcht 1,mem_mouse_sensor_sdio_gpio
+	call gpio_get_bit
+	ncall mouse_sensor_switch_angle,true
+	call mouse_gpio_config_input_pd	
+p_ice_gpio_set_float:
+ 	fetcht 1,mem_select_sensor_angle_gpio
+	call gpio_set_high_impedance
+	fetcht 1,mem_mouse_reuse_2ice_gpio
+	branch gpio_set_high_impedance
 endif
 
 p_mouse_load_device_info_check:
-ifdef SELECT_ANGLE
-	call p_mouse_select_angle
-	call p_mouse_set_sensor_gpio_sleep
-endif
 	call p_mouse_store_normal_tx_power
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
 	bbit1 MOUSE_ENABLE_EEPROM,mouse_load_eeprom_info_check
 	bbit1 MOUSE_ENABLE_FLASH,mouse_load_flash_info_check
 	bbit1 MOUSE_ENABLE_OTP,p_mouse_load_otp_info_check
 	rtn
+
 p_mouse_load_otp_info_check:
 	call p_mouse_device_flag_temp_store
 	call mouse_read_otp_dpi
 	call mouse_read_otp_device_flag
 	
 	call p_mouse_device_flag_check		//reinit to load info
+
 	call p_mouse_select_device_by_switch_check
-	
+
 	call p_mouse_read_otp_device_info
 	call p_mouse_read_otp_le_addr_increase_count_info
 	branch mouse_otp_load_app_initflag
@@ -1005,7 +1134,8 @@
 
 p_mouse_read_otp_device_info:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
-	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,mouse_read_otp_le_device1
+	isolate1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,pdata
+	call mouse_read_otp_le_device1,true
 	branch mouse_read_otp_device_info
 
 p_mouse_app_initflag_check:
@@ -1016,16 +1146,15 @@
 //	call mouse_app_initflag_check_next
 	storet 2,mem_store_flag
 	call mouse_ble_init_address
-	fetch 1,mem_device_flag_temp
-	store 1,mem_device_flag
+//	fetch 1,mem_device_flag_temp
+//	store 1,mem_device_flag
 	call mouse_load_default_dpi
 	
 	setarg 0x1122
 	store 2,mem_random_addr_increase_count
 p_mouse_device_flag_temp_load:
 	fetch 1,mem_mouse_device_flag_temp		//reinit device flag
-	store 1,mem_device_flag
-	rtn
+	branch mouse_device_flag_load_end
 
 p_mouse_device_flag_check:
 	fetch 1,mem_device_flag
@@ -1057,8 +1186,7 @@
 
 p_mouse_le_addr_increase_count_load:
 	fetch 2,mem_random_addr_increase_count_last
-	store 2,mem_random_addr_increase_count
-	rtn
+	branch mouse_le_addr_increase_store
 
 
 p_mouse_store_device_info:
@@ -1104,7 +1232,7 @@
 	call p_mouse_device_flag_otp_store_judge			// add device_flag check
 	
 	store 1,mem_device_flag_value
-p_mouse_devoce_flag_store_end:	
+p_mouse_device_flag_store_end:	
 	arg 1,loopcnt
 	copy regc,regb
 	arg mem_device_flag_value,rega
@@ -1123,10 +1251,10 @@
 	copy regc,pdata
 	fetcht 2,mem_otp_offset_device_flag
 	isub temp,null
-	branch p_mouse_devoce_flag_store_end,zero
+	branch p_mouse_device_flag_store_end,zero
 	
 	increase -1,regc
-	branch p_mouse_devoce_flag_store_end
+	branch p_mouse_device_flag_store_end
 
 p_mouse_device_flag_otp_store_judge:
 	rtnne MODE_24G_DEVICE
@@ -1198,11 +1326,7 @@
 	rtnbit0 MOUSE_ENABLE_LOAD_AND_STORE_DPI
 	fetch 1,mem_mouse_dpi
 	beq 0,mouse_otp_load_dpi
-	beq 6,p_mouse_dpi_reinit
-	rtn
-	
-p_mouse_dpi_reinit:
-	jam MOUSE_DPI_LEVEL1,mem_mouse_dpi
+	beq 6,mouse_dpi_reinit_set
 	rtn
 
 p_mouse_store_dpi_info_check:
@@ -1285,13 +1409,13 @@
 	rtn
 
 p_mouse_le_addr2_init_check:
-	fetch 6,mem_device1_locall_addr
+	fetch 6,mem_device2_locall_addr
 	fetcht 6,mem_mouse_compare_addr
 	isub temp,null
 	nrtn zero
 	fetch 6,mem_le_lap
 	add pdata,0x0100,pdata
-	store 6,mem_device1_locall_addr
+	store 6,mem_device2_locall_addr
 	rtn
 
 p_mouse_buletooth_fast_conn_end:
@@ -1312,20 +1436,16 @@
 p_mouse_load_le_device1:
 	fetch 6,mem_device1_addr
 	store 6,mem_hci_plap
-//	arg mem_le_ltk,contw
-//	call memcpy16
 	fetch 6,mem_device1_locall_addr
+p_mouse_le_lap_store:
 	store 6,mem_le_lap
 	rtn
 
 p_mouse_load_le_device2:
 	fetch 6,mem_device2_addr
 	store 6,mem_hci_plap
-//	arg mem_le_ltk,contw
-//	call memcpy16
 	fetch 6,mem_device2_locall_addr
-	store 6,mem_le_lap
-	rtn
+	branch p_mouse_le_lap_store
 
 p_mouse_store_remote_bdaddr:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
@@ -1370,6 +1490,9 @@
 	call g24_pair_timeout_timer
 	call g24_reconn_timeout_timer
 	call mouse_24g_long_sleep_param_update_timer
+ifdef COMMBINATION_DPI
+	call p_mouse_commbination_dpi_check_timer
+endif
 	//poll
 	call mouse_dpi_key_check_long_press
 	call mouse_bt_discovery_check
@@ -1387,6 +1510,31 @@
 	call mouse_store_information_delay_timer
 	branch mouse_check_no_data_timeout_timer
 
+ifdef COMMBINATION_DPI
+p_mouse_commbination_dpi_check_timer:
+	fetch 1,mem_mouse_commbination_key_dpi
+	rtneq GPIO_DISABLE
+	fetch 2,mem_mouse_discovery_timer
+	nrtn blank
+	fetch 2,mem_24g_pair_timeout
+	nrtn blank
+	fetch 2,mem_24g_reconn_timeout
+	nrtn blank
+	fetch 1,mem_mouse_multi_led_powon_timer
+	nrtn blank
+	call mouse_check_key_gpio
+	and rega,0x07,pdata
+	fetcht 1,mem_mouse_commbination_key_dpi
+	isub temp,null
+	branch p_mouse_commbination_dpi_check,zero
+	jam 0x1e,mem_commbination_dpi_timer
+	rtn
+p_mouse_commbination_dpi_check:	
+	arg mem_commbination_dpi_timer,regc
+	arg mouse_dpi_process_next,regb		//skip gost key
+	branch timer_single_step
+endif
+	
 p_mouse_le_send_conn_param_update_timer:
 	arg mem_mouse_le_send_conn_param_update_timer,regc
 	arg mouse_updata_le_param,regb
@@ -1418,7 +1566,7 @@
 	branch mouse_priority_bb_event+2
 
 p_mouse_le_bb_event_connected:
-	call mouse_sensor_poweron
+//	call mouse_sensor_poweron
 	setarg 0
 	store 4,mem_le_conn_first_rcv
 	branch mouse_le_bb_event_connected
@@ -1435,6 +1583,7 @@
 	fetch 1,mem_le_conn_rcv_new
 	store 1,mem_le_conn_first_rcv
 	branch mouse_le_ll_enable_start_enc_flag
+
 	
 p_mouse_le_conn_param_update_rsp_recieved:
 	fetch 1,mem_mouse_le_send_conn_param_update
@@ -1460,7 +1609,7 @@
 	jam LE_LPM_ENABLE,mem_mouse_le_conn_param_reject
 	jam 0,mem_mouse_clear_sensor_data_flag
 	call le_clr_config_more_data
-	branch p_mouse_bb_disconnected
+//	branch p_mouse_bb_disconnected
 p_mouse_bb_disconnected:
 	call mouse_bb_discon_clear_stack
 	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason
@@ -1468,11 +1617,11 @@
 	bbit1 APP_DISC_BY_BUTTON,app_disconn_reason_clear
 	branch mouse_start_discovery
 p_mouse4_0_event_bb_disconn:
-	call mouse_le_clean_connect_flag
 	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason
 	bbit1 APP_DISC_BY_BUTTON,app_disconn_reason_clear
 	fetch 1,mem_le_connect_status_flag
 	and pdata,0x03,pdata
+	call mouse_le_clean_connect_flag
 	bne 0x03,mouse_start_reconnect
 	fetch 1,mem_le_check_retransmit_discon_flag
 	nbranch mouse_start_reconnect,blank
@@ -1493,26 +1642,43 @@
 	fetcht 4,mem_24g_fast_conn_addr
 	isub temp,null
 	rtn zero
-	call mouse_soft_agc_disable
 	call p_mouse_fetch_normal_tx_power
 	branch mouse_24g_first_store_reconn_info
 	
 p_mouse_24g_pairing_complete:
-	call mouse_soft_agc_disable
 	call p_mouse_fetch_normal_tx_power
 	branch mouse_24g_pairing_complete
 
+p_mouse_fetch_normal_tx_power:
+	fetch 1,mem_normal_tx_power
+	store 1,mem_tx_power
+	branch mouse_soft_agc_disable
+
 p_mouse_24g_attempt_fail:
-	call mouse_soft_agc_disable
 	call p_mouse_fetch_normal_tx_power
 	fetch 1,mem_mouse_dpi_button_state
 	rtneq DPI_BUTTON_STATE_DOWN
 	fetch 1,mem_24g_attempt_fail_flag
 	nbranch mouse_24g_hibernate_set,blank
 	fetch 1,mem_24g_reconn_type
-	beq PAIR_AND_3_0_ADDR,p_mouse_24g_auto_pair_attempt_fail
+//	beq PAIR_AND_3_0_ADDR,p_mouse_24g_auto_pair_attempt_fail
+	beq PAIR_AND_RECEIVER,p_mouse_24g_auto_pair_attempt_fail
+	beq FAST_CONN_AND_RECEIVER,p_mouse_24g_fast_conn_attempt_fail
+	beq RECEIVER_AND_3_0_ADDR,p_mouse_reconn_dongle_attempt_fail
 	branch mouse_24g_attempt_fail+2
 
+p_mouse_24g_fast_conn_attempt_fail:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag 
+	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,p_mouse_24g_start_auto_pair
+	bbit1 MOUSE_ENABLE_AUTO_24G_PARING,p_mouse_24g_start_auto_pair
+	branch mouse_24g_fast_conn_attempt_fail+3
+
+p_mouse_24g_start_auto_pair:
+	fetch 2,mem_24g_pair_timeout_init
+	store 2,mem_24g_reconn_timeout
+	jam PAIR_AND_RECEIVER,mem_24g_reconn_type
+	branch g24_reconn_start
+
 p_mouse_24g_auto_pair_attempt_fail:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag 
 	bbit0 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,mouse_24g_attempt_fail_enter_hibernate
@@ -1521,17 +1687,53 @@
 p_mouse_24g_first_bluetooth_reconnect:
 	call mouse_24g_stop
 	jam MODE_BT_DEVICE1,mem_device_flag
-	branch mouse_start_reconnect_device
+	branch mouse_le_fast_conn_judge
 
+p_mouse_reconn_dongle_attempt_fail:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,mouse_24g_attempt_fail_enter_hibernate
+	bbit1 MOUSE_ENABLE_EEPROM,mouse_24g_attempt_fail_enter_hibernate
+	bbit1 MOUSE_ENABLE_OTP,mouse_24g_attempt_fail_enter_hibernate
+	bbit1 MOUSE_ENABLE_FLASH,mouse_24g_attempt_fail_enter_hibernate
+	branch p_mouse_24g_start_auto_pair
+
+p_mouse_start_work:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,p_mouse_24g_first_start_auto_pair_mode
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,p_mouse_24g_start_mode
+	branch mouse_le_fast_conn_judge
+
+p_mouse_24g_first_start_auto_pair_mode:	
+	call mouse_wakeup_from_power_check
+	branch p_mouse_24g_first_start_reconn,user 
+p_mouse_24g_reconn_general_dongle:
+	jam MODE_24G_DEVICE,mem_device_flag
+	fetch 2,mem_mouse_24g_power_on_fast_conn_timer
+	store 2,mem_24g_reconn_timeout
+	jam FAST_CONN_AND_RECEIVER,mem_24g_reconn_type
+	branch g24_reconn_start
+
+p_mouse_24g_first_start_reconn:
+	fetch 1,mem_device_flag
+	beq MODE_24G_DEVICE,mouse_24g_reconn_dongle_start
+	call mouse_bluetooth_fast_conn_disable
+	branch p_mouse_24g_first_bluetooth_reconnect
+
+p_mouse_24g_start_mode:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_24G,mouse_24g_mode_setup_error
+	call mouse_device_24g_pair_led_config
+	call mouse_wakeup_from_power_check	// wake from hibernate :enble user
+	branch mouse_24g_reconn_dongle_start,user
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_AUTO_24G_PARING,p_mouse_24g_reconn_general_dongle
+	branch mouse_24g_start_mode+7
+	
 p_mouse_store_normal_tx_power:
 	fetch 1,mem_tx_power
 	store 1,mem_normal_tx_power
 	rtn
-
-p_mouse_fetch_normal_tx_power:
-	fetch 1,mem_normal_tx_power
-	store 1,mem_tx_power
-	rtn
 	
 p_mouse_idle:
 	call mouse_low_voltage_led_no_enter_lpm
@@ -1539,6 +1741,9 @@
 	call p_mouse_dpi_check
 	branch mouse_idle+4
 
+p_mouse_dpi_check_retransmit:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_SELECT_DEVICE_BY_DPI_BUTTON
 p_mouse_dpi_check:
 	fetch 1,mem_dpi_button_gpio
 	rtneq GPIO_DISABLE
@@ -1581,15 +1786,12 @@
 	nrtn user
 	call g24_setgpio_lpm_before
 	call p_clear_wake
-	fetch 3,mem_24g_short_sleep_set
-	branch g24_long_seep2
+	branch g24_short_sleep_next
 	
 
 p_clear_wake:
 	setarg 0
-	set1 21,pdata
 	store 8,mem_gpio_wakeup_cfg	//gpio5(ice)enable wake
-	setarg 0
 	store 4,mem_gpio_wakeup_cfg+8
 	rtn
 	
@@ -1603,35 +1805,48 @@
 	jam 1,mem_sensor_shutdown_flag
 	call mouse_sensor_powerdown
 //	call mouse_setgpio_hibernate
-	branch p_mouse_24g_long_sleep
+	branch mouse_24g_long_sleep
 
 p_mouse_setgpio_hibernate:
 	call mouse_set_sdio_high
 	call p_clear_wake
 	call mouse_before_hibernate_wheel_gpio_set
-	fetcht 1,mem_matrix_public_gpio		// enable b4/b5/dpi wakeup
-	call gpio_out_active
-	fetcht 1,mem_matrix_public_gpio
-	call gpio_clr_wake
 	fetch 1,mem_mouse_sensor_sdio_gpio
 	call mouse_gpio_config_output_high
+	
+	fetcht 1,mem_device_switch_gpio
+	call mouse_gpio_set_pupd_by_input
 	arg 21,temp	//ice band gpio			
 	call mouse_gpio_config_input_pu
-	call p_mouse_device_switch_gpio_high_impedance
-	branch mouse_setgpio_hibernate+3
-
-p_mouse_device_switch_gpio_high_impedance:
-	fetch 1,mem_device_switch_gpio
-	rtneq 0xff
-	fetch 1,mem_device_flag
-	beq MODE_24G_DEVICE,p_mouse_device_switch_gpio_set_impedance
-	fetcht 1,mem_device_switch_gpio
-	branch mouse_gpio_config_input_pu
-
-p_mouse_device_switch_gpio_set_impedance:
-	fetcht 1,mem_device_switch_gpio
-	branch gpio_set_high_impedance
+	
+	call mouse_logo_led_off
+	call p_mouse_lpm_before_common
+//	fetcht 1,mem_mouse_reuse_2ice_gpio
+//	call mouse_gpio_config_input_pu
+//	call p_mouse_gpio_set_high_impedance
+	branch mouse_setgpio_hibernate_next
+/*
+p_mouse_gpio_set_high_impedance:
+	fetch 3,mem_mouse_set_high_impedance_bit_set
+	store 3,mem_pdatatemp
+	arg 24,loopcnt
+	arg 0,temp
+p_mouse_gpio_set_high_impedance_bit_loop:	
+	fetch 3,mem_pdatatemp
+	isolate1 0,pdata
+	call p_gpio_set_analog,true
+	fetch 3,mem_pdatatemp
+	rshift pdata,pdata
+	store 3,mem_pdatatemp
+	increase 1,temp
+	loop p_mouse_gpio_set_high_impedance_bit_loop
+	rtn
 
+p_gpio_set_analog:
+	sub temp,UI_BUTTON_GPIO_DISABLE,null
+	rtn zero
+	branch gpio_set_analog
+*/
 p_mouse_24g_package_data:
 	rtnmark0 mark_24g
 	call mouse_motion
@@ -1666,17 +1881,385 @@
 p_mouse_check_select_device_by_switch:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
 	rtnbit0 MOUSE_ENABLE_SELECT_DEVICE_BY_SWITCH_GPIO
-	bbit0 MOUSE_ENABLE_SWITCH_GPIO_CONNECT_VIN,mouse_switch_gpio_connect_gnd
-p_mouse_switch_gpio_connect_vin:
+	bbit0 MOUSE_ENABLE_SWITCH_GPIO_CONNECT_VIN,p_mouse_switch_gpio_connect_gnd
+p_mouse_switch_gpio_connect_vin_check:
+	call p_mouse_switch_gpio_pd_set
+	call p_mouse_switch_gpio_connect_vin
+p_mouse_switch_gpio_pu_set:
 	fetcht 1,mem_device_switch_gpio
-	call gpio_out_active
+	call gpio_out_inactive
 	fetcht 1,mem_device_switch_gpio
-	call mouse_gpio_config_input_pd
+	branch mouse_gpio_config_input_pu
+	
+p_mouse_switch_gpio_connect_vin:
 	fetcht 1,mem_device_switch_gpio
 	call gpio_get_bit
 	nbranch mouse_check_select_24g_device,true
 	branch mouse_select_btdevice
 
+p_mouse_switch_gpio_connect_gnd:
+	call p_mouse_switch_gpio_pu_set
+	call mouse_switch_gpio_connect_gnd
+p_mouse_switch_gpio_pd_set:
+	fetcht 1,mem_device_switch_gpio
+	call gpio_out_active
+	fetcht 1,mem_device_switch_gpio
+	branch mouse_gpio_config_input_pd
+	
+p_mouse_init_sensor:
+	call mouse_read_sensor_id
+	beq P32XX_ID1,mouse_init_p32xx_id2_judge
+	beq P3065_ID1,mouse_init_p3065
+	beq PKA8G2_ID1,p_mouse_ka8g2_id2_judge
+	branch mouse_init_sensor+5
+
+p_mouse_ka8g2_id2_judge:
+	call mouse_sensor_poweron
+	fetch 1,mem_sensor_id2
+	beq PKA8G2_ID2,p_mouse_ka8g2_init_param
+	branch mouse_init_p32xx_id2_judge
+p_mouse_ka8g2_init_param:
+	jam KA8G2,mem_config_sensor_type
+	arg mem_sensor_ka8g2_init_new,regc
+	branch mouse_sensor_wr_seq
+
+p_mouse_check_sensor_data:
+	fetch 1,mem_spi_write_flash_sm
+	rtnne FLASH_SM_NO_BUYS
+	fetch 1,mem_config_sensor_type
+	beq KA8G2,p_mouse_pka8g2_sensor_motion
+	branch mouse_check_sensor_data+2
+
+p_mouse_pka8g2_sensor_motion:
+	call mouse_clear_sensor_data
+	fetch 1,mem_sensor_motion_gpio
+	beq GPIO_DISABLE,p_mouse_pka8g2_sensor_motion_1
+	fetcht 1,mem_sensor_motion_gpio
+	call gpio_get_bit
+	nrtn true
+p_mouse_pka8g2_sensor_motion_1:
+	setarg PAN_REG_PID_L
+	call twspi_read
+	bne PKA8G2_ID1,mouse_twspi_reset
+	branch mouse_p3212_sensor_motion_2
+
+p_mouse_motion:
+	disable user
+	setarg 0
+	store 6,mem_mouse_x
+	call p_mouse_check_sensor_data
+	setarg 0x0089
+	call twspi_write	
+	call mouse_setting_sensor_type
+	call mouse_zwheel
+	call mouse_t_zwheel
+	call p_mouse_key
+	branch mouse_motion+11
+
+p_mouse_drawing_optima:
+	fetch 1,mem_config_sensor_type
+	rtneq KA8G2
+	branch mouse_drawing_optima+1
+
+p_mouse_key:
+	call mouse_check_firekey_gpio
+	fetch 1,mem_fire_key_flag
+	nbranch fire_key_press,blank
+	fetch 1,mem_fire_key_status
+	nbranch fire_key_process,blank
+	
+	call mouse_check_key_gpio
+	call p_mouse_ghost_key_check
+	branch mouse_key+7
+
+p_mouse_ghost_key_check:			//lbk_mfw
+	jam 0,mem_mouse_matrix_key_cow_count
+	jam 0,mem_mouse_matrix_key_row_count
+	jam 0,mem_mouse_ghost_flag
+	copy pdata,regb
+	fetcht 1,mem_lbutton_gpio
+	fetch 1,mem_bk_button_gpio
+	isub temp,null
+	branch p_mouse_matrix_ghost_key_L_BK,zero
+	fetch 1,mem_fw_button_gpio
+	isub temp,null
+	branch p_mouse_matrix_ghost_key_L_FW,zero
+	fetcht 1,mem_mbutton_gpio
+	fetch 1,mem_bk_button_gpio
+	isub temp,null
+	branch p_mouse_ghost_key_MBK_RFW,zero
+p_mouse_ghost_key_MFW_RBK:
+	call mouse_ghost_key_check_M_FW
+p_mouse_ghost_key_RBK:
+	call p_mouse_ghost_key_check_R_BK
+	branch mouse_ghost_key_check_next
+
+p_mouse_matrix_ghost_key_L_BK:
+	fetcht 1,mem_mbutton_gpio
+	fetch 1,mem_fw_button_gpio
+	isub temp,null
+	branch mouse_ghost_key_LBK_MFW,zero
+p_mouse_ghost_key_LBK_RFW:
+	call mouse_ghost_key_check_L_BK
+	branch p_mouse_ghost_key_RFW
+
+p_mouse_matrix_ghost_key_L_FW:
+	fetcht 1,mem_mbutton_gpio
+	fetch 1,mem_bk_button_gpio
+	isub temp,null
+	branch p_mouse_ghost_key_LFW_MBK,zero
+p_mouse_ghost_key_LFW_RBK:
+	call p_mouse_ghost_key_check_L_FW
+	branch p_mouse_ghost_key_RBK
+
+p_mouse_ghost_key_LFW_MBK:
+	call p_mouse_ghost_key_check_L_FW
+	call p_mouse_ghost_key_check_M_BK
+	branch mouse_ghost_key_check_next
+	
+p_mouse_ghost_key_MBK_RFW:
+	call p_mouse_ghost_key_check_M_BK
+p_mouse_ghost_key_RFW:
+	call p_mouse_ghost_key_check_R_FW
+	branch mouse_ghost_key_check_next
+
+p_mouse_ghost_key_check_M_BK:
+	and regb,MOUSE_M_BK_BUTTON,pdata
+	branch mouse_ghost_key_check_M_BK+1
+
+p_mouse_ghost_key_check_R_BK:
+	and regb,MOUSE_R_BK_BUTTON,pdata
+	branch mouse_ghost_key_check_R_BK+1
+
+p_mouse_ghost_key_check_L_FW:
+	and regb,MOUSE_L_FW_BUTTON,pdata
+	branch mouse_ghost_key_check_L_FW+1
+
+p_mouse_ghost_key_check_R_FW:
+	and regb,MOUSE_R_FW_BUTTON,pdata
+	branch mouse_ghost_key_check_R_FW+1
+
+ifdef ADC_1121SB
+p_mouse_adc_read_start:
+	call enable_adc
+	call vdd_calculate_by_mode
+	div pdata,10
+	call get_div_result
+	store 2,mem_mouse_vdd_now_vol
+	branch mouse_adc_data_process
+
+p_adc_init_data:
+	fetch 8,mem_otp_adc
+	branch adc_init_cal_data_default,blank
+	store 8,mem_reference_inter1p8v_2v_adc_io_data
+	call enable_otp_read
+	call loadcode_check_otp_lock
+	arg OTP_OFFSET_ADC_PARAM_L_C0,pdata
+	iadd regb,regb
+	arg 10,loopcnt
+	arg mem_otp_temp,rega
+	call otp_read_data
+	call disable_otp
+	fetch 8, mem_otp_temp
+	rtn blank
+	store 8,mem_adc_reference3v_gpio1v_ft_data
+	ifetch 2,contr
+	istore 2,contw	
+	//call  eut_test_data_init	
+	rtn
+
+p_sadc_cal_write:
+	fetch 1,core_sadc_ctrl
+	set1 1,pdata
+	store 1,core_sadc_ctrl
+	fetchr regb,1,mem_spi_write_addr
+	fetch 1,mem_adc_cal_c7
+	store 1,mem_spi_write_addr
+	arg 8,loopcnt	//rg_gpadc_sar_dat_sel c0-c7
+	call sadc_cal_write+4
+	storer regb,1,mem_spi_write_addr
+	fetch 1,core_gpadc_cfg2	
+	set0 4,pdata//caliberation write disable	
+	store 1,core_gpadc_cfg2	
+	rtn
+
+p_vdd_calculate_by_mode:
+ifdef ADC_1121SB_1V8_MODE
+	fetch 1,mem_adc_reference_mode
+	beq SADC_REFERENCE_INTER3V,p_vdd_reference_inter3V_calculate
+	beq SADC_REFERENCE_INTER1P8V_DIV2,p_vdd_reference_inter1p8V_calculate
+	branch p_vdd_reference_inter3V_calculate
+endif
+
+p_vdd_reference_inter3V_calculate:
+	fetch 1,mem_adc_config_flag
+	beq ADC_CONFIG_HVIN,p_vdd_reference_inter3V_calculate_by_mode_vdcdc
+	beq ADC_CONFIG_GPIO,p_vdd_reference_inter3V_calculate_by_mode_gpio
+	rtn
+	
+p_vdd_reference_inter3V_calculate_by_mode_vdcdc:
+	setarg 1000
+	store 2,mem_reference_voltage
+	fetcht 2,mem_adc_reference3v_vdcdc3p6v_ft_data
+	fetch 2,mem_adc_reference3v_vdcdc4p6v_ft_data
+	arg 3600,regc
+	call vdd_calculate
+	branch p_mul1V_div1V_to_cal
+	
+p_vdd_reference_inter3V_calculate_by_mode_gpio:
+	setarg 1000
+	store 2,mem_reference_voltage
+	fetcht 2,mem_adc_reference3v_gpio1v_ft_data
+	fetch 2,mem_adc_reference3v_gpio2v_ft_data
+	arg 1000,regc
+	call vdd_calculate
+p_mul1V_div1V_to_cal:
+	fetcht 2,mem_adc_reference3v_inter1v_ft_data
+	imul32 temp,pdata
+	fetcht 2,mem_adc_reference3v_inter1v_now_data
+	idiv temp
+	branch get_div_result
+	
+p_enable_adc_init_config:
+	call p_sadc_cal_write
+	fetch 1,core_gpadc_cfg1
+	set0 7,pdata
+	store 1,core_gpadc_cfg1
+	jam 0x77,core_gpadc_ctrl
+	jam 0xc1,core_gpadc_cfg0
+	jam 0x61,core_vtest_ctrl0
+	jam 0x00,core_gpadc_cfg3
+	rtn
+
+p_enable_adc:
+ifdef ADC_1121SB_1V8_MODE
+	fetch 1,mem_adc_reference_mode
+	beq SADC_REFERENCE_INTER3V,p_enable_adc_reference_source_inter3V
+	beq SADC_REFERENCE_INTER1P8V_DIV2,p_enable_adc_reference_source_inter1p8V
+	branch p_enable_adc_reference_source_inter3V
+endif		
+p_enable_adc_reference_source_inter3V:
+	call p_enable_adc_init_config
+	call sadc_channel
+	fetch 1,mem_adc_clkdiv
+	store 1,core_sadc_clkdiv
+	call sadc_read
+	jam 0x60,core_vtest_ctrl0
+	jam 0x00,core_sadc_clkdiv	
+//	rtn
+	
+p_read_adc_inter1V:
+	call p_enable_adc_init_config
+	fetch 1,mem_adc_clkdiv
+	store 1,core_sadc_clkdiv
+	jam 0x50,core_gpadc_cfg3
+	jam 0xc0,core_vtest_ctrl1//select vref1v
+
+	arg 0xb,regext_index
+	fetchr regext, 2,mem_adc_current_value
+	
+	jam 0x03,core_sadc_ctrl	
+	call p_sar_adc_read_wait
+	fetcht 2,core_sadc_data
+	storet 2,mem_adc_reference3v_inter1v_now_data 
+	call sadc_read_wait+4
+	
+	arg 0xb,regext_index
+	storer regext,2,mem_adc_current_value
+
+	jam 0x60,core_vtest_ctrl0
+	jam 0x00,core_sadc_clkdiv
+	jam 0x00,core_sadc_ctrl
+	rtn
+
+
+p_sar_adc_read_wait:
+	fetch 1,core_perf_status
+	bbit0 SARADC_DONE,p_sar_adc_read_wait
+	rtn
+
+ifdef ADC_1121SB_1V8_MODE
+p_vdd_reference_inter1p8V_calculate:
+	fetch 1,mem_adc_config_flag
+	beq ADC_CONFIG_HVIN,p_vdd_reference_inter1p8V_calculate_by_mode_vdcdc
+	beq ADC_CONFIG_GPIO,p_vdd_reference_inter1p8V_div2_calculate_by_mode_gpio
+	rtn
+	
+p_vdd_reference_inter1p8V_calculate_by_mode_vdcdc:
+	setarg 2000
+	store 2,mem_reference_voltage
+	fetcht 2,mem_reference_inter1p8v_2p6v_adc_vdcdc_data
+	fetch 2,mem_reference_inter1p8v_4p6v_adc_vdcdc_data
+	arg 2600,regc
+	branch vdd_calculate
+
+p_vdd_reference_inter1p8V_div2_calculate_by_mode_gpio:
+	setarg 1000
+	store 2,mem_reference_voltage
+	fetcht 2,mem_reference_inter1p8v_2v_adc_io_data
+	fetch 2,mem_reference_inter1p8v_1v_adc_io_data
+	arg 2000,regc
+	branch p_vdd_calculate00
+	
+p_vdd_calculate00:
+	isub temp,rega
+	fetch 2,mem_adc_current_value
+	isub temp,pdata
+	nbranch p_vdd_calculate11,positive
+	fetcht 2,mem_reference_voltage
+	imul32 temp,regb
+	copy regc,pdata
+	imul32 rega,pdata
+	isub regb,pdata
+	nbranch set_pdata_0,positive
+	branch vdd_calculate2
+	
+p_vdd_calculate11:
+	copy temp,pdata
+	fetcht 2,mem_adc_current_value
+	isub temp,pdata
+	fetcht 2,mem_reference_voltage
+	imul32 temp,regb
+	copy regc,pdata
+	imul32 rega,pdata
+	iadd regb,pdata
+	branch vdd_calculate2
+
+p_enable_adc_reference_source_inter1p8V:	
+	fetch 1,mem_adc_config_flag
+	beq ADC_CONFIG_HVIN,p_enable_adc_reference_source_inter1p8V_vdcdc
+p_enable_adc_reference_source_inter1p8V_div2_gpio:	
+	call p_sadc_cal_write
+	fetch 1,core_gpadc_cfg1
+	set0 7,pdata
+	store 1,core_gpadc_cfg1
+	jam 0x77,core_gpadc_ctrl
+	jam 0x41,core_gpadc_cfg0
+	jam 0x14,0x8ac6			//div2
+	branch p_mouse_adc_reference_source_set
+	
+p_enable_adc_reference_source_inter1p8V_vdcdc:
+	call p_sadc_cal_write
+	fetch 1,core_gpadc_cfg1
+	set0 7,pdata
+	store 1,core_gpadc_cfg1
+	jam 0x77,core_gpadc_ctrl
+	jam 0x41,core_gpadc_cfg0
+	jam 0x10,0x8ac6			//not div2
+p_mouse_adc_reference_source_set:
+	jam 0x00,core_gpadc_cfg3
+	call sadc_channel
+	fetch 1,mem_adc_clkdiv
+	store 1,core_sadc_clkdiv
+	call sadc_read
+	
+	jam 0x00,core_sadc_clkdiv
+	jam 0x00,0x8ac6
+	rtn
+
+
+endif
+
 ifdef PWM_SET
 
 /*
@@ -1744,65 +2327,7 @@
 	branch mouse_p3212_sensor_motion_2
 
 	
-ifdef AUTO_TEST
-p_mouse_motion:
-	disable user
-	setarg 0
-	store 6,mem_mouse_x
-
-	arg 0x07,temp
-	call gpio_out_active
-	nop 12
-	
-	arg 0x07,temp
-	call gpio_out_inactive
-	nop 12
-	arg 0x07,temp
-	call gpio_out_active
 
-
-	fetch 1,0X4FF0
-	increase 1,pdata
-	store 1,0X4FF0
-	sub pdata,50,null
-	branch p_ms_x_right,positive
-
-	sub pdata,100,null
-	branch p_ms_y_up,positive
-
-	sub pdata,150,null
-	branch p_ms_x_left,positive
-	sub pdata,200,null
-	branch p_ms_y_down,positive
-	rtn
-
-p_ms_x_right:
-	setarg 5
-	store 2,mem_mouse_x
-p_data:
-	enable user
-	branch mouse_no_data_timer_init
-
-p_ms_y_up:
-	setarg 5
-	store 2,mem_mouse_y
-	branch p_data
-
-p_ms_x_left:
-	setarg -5
-	store 2,mem_mouse_x
-	branch p_data
-p_ms_y_down:
-	fetch 1,0X4FF0
-	beq 200,p_mem_usb_data_square_cnt_set0
-	setarg -5
-	store 2,mem_mouse_y
-	branch p_data
-p_mem_usb_data_square_cnt_set0:
-	jam 0,0X4FF0
-	branch p_ms_y_down+2
-
-else
 p_mouse_motion:
 	disable user
 	setarg 0
Index: sched/mouse.dat
===================================================================
--- /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/sched/mouse.dat	(revision 794)
+++ /1121s/branch/mouse/ZXS_Project/1m/mouse_public_switch_221-v10/sched/mouse.dat	(working copy)
@@ -29,7 +29,7 @@
 #bit5 MOUSE_ENABLE_ADC
 #bit6 MOUSE_ENABLE_KEYBOARD
 #bit7 MOUSE_ENABLE_DOUBLE_DPI_KEY
-12
+52
 
 #mouse flag byte4
 #bit0 MOUSE_ENABLE_24G_250Hz
@@ -104,7 +104,7 @@
 ff #mem_whee_tb_data_gpio
 ff #mem_matrix_public_gpio
 ff #mem_config_select_device_button_gpio
-ff #mem_customer_key_gpio
+15 #mem_customer_key_gpio
 ff #mem_firebutton_gpio
 ff #mem_dpi_another_button_gpio
 ff #mem_sensor_motion_gpio
@@ -158,6 +158,7 @@
 mem_lpm_mode:01
 mem_lpm_mult:20
 mem_lpm_mult_init:20
+mem_mouse_set_high_impedance_bit_set:00 00 00
 
 mem_device_flag:
 00		#00--24g 01--bt
@@ -167,30 +168,13 @@
 34
 #ff ff ff ff ff ff			#eeprom need
 mem_device3_type:
-33
+34
 #ff ff ff ff ff ff			#eeprom need
 
-#adc
-mem_mouse_vdd_full_vol:dc 05		#1.5V
-84 03#mem_mouse_vdd_empty_vol  :0.9V
-e8 03#mem_mouse_vdd_low_vol   :1.0V
-#mem_mouse_vdd_full_vol:e4 0c		#3.3V
-#b8 0b#mem_mouse_vdd_empty_vol  :3.0V
-#80 0c#mem_mouse_vdd_low_vol   :3.2V
-
-mem_adc_channel_gpio:04
-#04
-#02
-#01
-#03
-#00
-#05
-#06
-#07
-
 #bit0:mouse_key_l    bit1:mouse_key_r  bit2:mouse_key_m
 mem_mouse_commbination_key_24g:03
 mem_mouse_commbination_key_bt:07
+mem_mouse_commbination_key_dpi:ff
 
 mem_mouse_compare_addr:00 00 00 00 00 00#ff ff ff ff ff ff 		#otp/flash=0	eeprom=ff
 
@@ -205,12 +189,12 @@
 mem_mouse_sleep_deal_type:00	#00:old version	01 new version	
 mem_24g_rx_window:c0 12     #400us  ## e0 2e#1ms #transmitter long range min:520us
 
-mem_mouse_24g_short_sleep_set_4ms:ee 4d 00	#1662us
+mem_mouse_24g_short_sleep_set_4ms:d0 52 00#f0 55 00
 mem_mouse_24g_long_sleep_set_4ms:80 bb 00
 mem_mouse_24g_fast_hop_count_4ms:05
 mem_mouse_24g_tsniff_4ms:80 bb 00 00
 
-mem_mouse_24g_short_sleep_set_8ms:76 fd 00#ac 07 01	#5625us	40 19 01:72000:6ms
+mem_mouse_24g_short_sleep_set_8ms:70 11 01	#SB:70 11 01	SA:60 ea 00
 mem_mouse_24g_long_sleep_set_8ms:00 77 01
 mem_mouse_24g_fast_hop_count_8ms:0b
 mem_mouse_24g_tsniff_8ms:00 77 01 00
@@ -264,7 +248,7 @@
 
 mem_le_interval_min:
 06 00 #min interval
-09 00 #max interval
+06 00 #max interval
 20 00 #latency
 2c 01 #timeout
 
@@ -276,31 +260,31 @@
 mem_eeprom_block_size:80
 
 #otp write info offset
-mem_otp_offset_dpi:39 18										#6201 begin		3level:99count	----------info begin	
-mem_otp_offset_dpi_end:6a 18								#6250 end
+mem_otp_offset_dpi:b9 1a										#6841 begin		3level:99count	----------info begin	
+mem_otp_offset_dpi_end:ea 1a								#6890 end
 
-mem_otp_offset_device_flag:6b 18							#6251 begin		400 count
-mem_otp_offset_device_flag_end:32 19						#6450 end
+mem_otp_offset_device_flag:eb 1a							#6891 begin		400 count
+mem_otp_offset_device_flag_end:b2 1b						#7090 end
 
-mem_otp_offset_24g_addr:33 19								#6451 begin		50 count
-mem_otp_offset_24g_addr_end:fa 19						#6650 end
+mem_otp_offset_24g_addr:b3 1b								#7091 begin		30 count
+mem_otp_offset_24g_addr_end:2a 1c						#7210 end
 
-mem_otp_offset_le_addr1:fb 19								#6651 begin		50 count
-mem_otp_offset_le_addr1_end:26 1b						#6950 end
+mem_otp_offset_le_addr1:2b 1c								#7211 begin		30 count
+mem_otp_offset_le_addr1_end:de 1c							#7390 end
 
-mem_otp_offset_le_locall_addr1:27 1b						#6951 begin		50 count
-mem_otp_offset_le_locall_addr1_end:52 1c				#7250 end
+mem_otp_offset_le_locall_addr1:df 1c						#7391 begin		30 count
+mem_otp_offset_le_locall_addr1_end:92 1d				#7570 end
 
-mem_otp_offset_le_addr2:53 1c								#7251 begin		50 count
-mem_otp_offset_le_addr2_end:7e 1d						#7550 end
+mem_otp_offset_le_addr2:93 1d								#7571 begin		30 count
+mem_otp_offset_le_addr2_end:46 1e						#7750 end
 
-mem_otp_offset_le_locall_addr2:7f 1d						#7551 begin		50 count
-mem_otp_offset_le_locall_addr2_end:aa 1e				#7850  end
+mem_otp_offset_le_locall_addr2:47 1e						#7751 begin		30 count
+mem_otp_offset_le_locall_addr2_end:fa 1e					#7930  end
 
-mem_otp_offset_le_addr_increase_count:ab 1e			#7851 begin		140 count
-mem_otp_offset_le_addr_increase_count_end:c2 1f		#8130 end					----------info over	
+mem_otp_offset_le_addr_increase_count:fb 1e			#7931 begin		100 count
+mem_otp_offset_le_addr_increase_count_end:ac 1f		#8108 end					----------info over	
 
-mem_otp_offset_app_initflag:c4 1f		#8132 end
+mem_otp_offset_app_initflag:ae 1f		#8110 end
 
 #ui
 mem_ui_button_gpio:ff
@@ -309,7 +293,7 @@
 
 #rf
 mem_tx_power:03	#00--0db 01--3db  02--5db  03--f3db  04--f5db
-mem_mouse_24g_pair_tx_power:00 #94: -20dBm  9e: -30dBm  9f: -35dBm a0: -40dBm 
+mem_mouse_24g_pair_tx_power:94 #94: -20dBm  9e: -30dBm  9f: -35dBm a0: -40dBm 
 mem_rssi_buff_index:07
 mem_rssi_signal_buf_ptr:mem_mouse_rssi_signal_buf
 mem_rssi_dis_min_24g_init:85
@@ -362,7 +346,7 @@
 
 mem_sensor_ka8g2_init_new:
 09 a5
-26 34
+46 34
 19 04
 60 07
 69 04
@@ -385,30 +369,34 @@
 7d 80
 ff ff
 
-mem_sensor_ka8g2_init:
-09 a5
-26 34
-60 07
-69 04
-7d 20
-7e 00
-09 00
-ff ff
+#mem_sensor_ka8g2_init:
+#09 a5
+#26 34
+#60 07
+#69 04
+#7d 20
+#7e 00
+#09 00
+#ff ff
 
 mem_sensor_8650_init:
 09 5a
 ff 27
 ab 40
-be d1
-a0 41
-a1 12
-a5 84
+b3 56
+9b e6
+a8 12
+a9 c0
+be e6
+a5 af
+a0 21
+a1 02
+b8 10
+b9 0b
 a7 ff
 b5 d0
 b6 00
 ff 00
-35 c8
-25 af
 09 00
 ff ff
 
@@ -439,6 +427,41 @@
 09 00
 ff ff
 
+
+#adc config
+mem_adc_config_flag:01
+#01 ADC_CONFIG_HVIN
+#02 ADC_CONFIG_GPIO
+mem_adc_clkdiv:0a
+mem_adc_channel:00
+#00 ADC_CH_VBAT
+#01 ADC_CH_VDCDC5V
+#06 ADC_CH_GPIO18
+#07 ADC_CH_GPIO10
+#08 ADC_CH_GPIO9
+#09 ADC_CH_GPIO12
+#0a ADC_CH_GPIO6
+#0b ADC_CH_GPIO20
+#0c ADC_CH_GPIO21
+#0d ADC_CH_GPIO22
+#0e ADC_CH_GPIO13
+
+#adc
+#mem_mouse_vdd_full_vol:4a 01		#3.3V
+#2c 01#mem_mouse_vdd_empty_vol  :3.0V
+#40 01#mem_mouse_vdd_low_vol   :3.2V
+
+#mem_adc_channel_gpio:04
+#04
+#02
+#01
+#03
+#00
+#05
+#06
+#07
+
+
 # rf debug
 #bit7:0 means disable rf debug function
 #mem_rf_debug_rx_gpio:87
