Index: do_sdk.bat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/do_sdk.bat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/do_sdk.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
 copy program\patch_sdk.prog + program\patch.prog  output\bt_program23.meta
 copy format\rom.format + format\labels.format + format\command.format  output\bt_format.meta > nul
@@ -66,9 +70,18 @@
 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
@@ -87,8 +100,7 @@
 copy eeprom.dat ..\output\flash.dat 
 )
 
+cd ..
+call set_chip_type_flag.bat 
 
-:end
-
-
-
+:end
\ No newline at end of file
Index: format/labels.format
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/format/labels.format	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/format/labels.format	(working copy)
@@ -64,6 +64,7 @@
 0x2145 rx_dcoc_loop2
 0x2152 shutdown_radio
 0x2160 set_sync_on
+0x2169 set_sync_on_next
 0x216f set_freq_rx
 0x2179 aac_res_lookup
 0x2187 aac_res_lookup_end
@@ -881,6 +882,7 @@
 0x360c g24_transmit_start
 0x3610 g24_transmit_start_next
 0x3616 g24_short_sleep
+0x361b g24_short_sleep_next
 0x361d g24_long_sleep
 0x3622 g24_long_seep2
 0x3625 g24_txdata_prep
@@ -2209,6 +2211,7 @@
 0x54d3 mouse_app_enter_hibernate_next
 0x54d5 mouse_before_hibernate
 0x54dc mouse_setgpio_hibernate
+0x54e2 mouse_setgpio_hibernate_next
 0x54e8 mouse_wheel_gpio_set_before_hibernate
 0x54ea mouse_wheel_gpio_clr_wakeup
 0x54f2 mouse_adc_gpio_set_before_hibernate
@@ -2300,6 +2303,7 @@
 0x56ee mouse_dpi_up_next
 0x56f2 mouse_dpi_up_after_long_press
 0x56f7 mouse_dpi_process
+0x56fa mouse_dpi_process_next
 0x5701 mouse_dpi_level_store
 0x5704 mouse_double_dpi_check
 0x5706 mouse_dpi_increase
@@ -2320,6 +2324,7 @@
 0x5737 mouse_discovery_by_dpi_button
 0x573c mouse_long_dpi_button_bt_discovery
 0x573e mouse_setting_dpi_4_level
+0x5742 mouse_dpi_reinit_set
 0x5744 mouse_setting_dpi
 0x5747 mouse_setting_sensor_type
 0x5751 mouse_set_cpi1
@@ -2444,6 +2449,7 @@
 0x5968 mouse_s210x_3205_3t_judge
 0x596c mouse_s201x_init_param
 0x596e mouse_mx8650_init_param
+0x5972 mouse_sensor_init_end
 0x5974 mouse_8009_init_param
 0x5983 mouse_3205_3t_init_param
 0x598c mouse_3204_3l_init_param
@@ -2680,6 +2686,7 @@
 0x5e33 mouse_read_otp_le_addr_increase_count_loop
 0x5e3d mouse_read_otp_le_addr_increase_count_common
 0x5e40 mouse_le_addr_increase_count_load
+0x5e41 mouse_le_addr_increase_store
 0x5e43 mouse_read_otp_dpi
 0x5e47 mouse_read_otp_dpi_loop
 0x5e51 mouse_read_otp_dpi_common
@@ -2703,6 +2710,7 @@
 0x5eae mouse_select_device_ghost_check
 0x5eb1 mouse_ghost_key_value_check
 0x5eb6 mouse_check_select_device_by_switch
+0x5ebb mouse_switch_gpio_connect_gnd
 0x5ebe mouse_select_btdevice
 0x5ec2 mouse_check_select_24g_device
 0x5ec6 mouse_ready_reconnection_by_button
@@ -2795,6 +2803,7 @@
 0x603f mouse_24g_first_bb_event_reconn_timeout
 0x6042 mouse_24g_first_store_reconn_info
 0x6047 mouse_24g_start_pair_mode
+0x604e mouse_24g_pair_mode_check
 0x6053 mouse_24g_attempt_fail
 0x6059 mouse_24g_attempt_fail_enter_hibernate
 0x605f mouse_24g_fast_conn_attempt_fail
@@ -2820,6 +2829,7 @@
 0x60f2 mouse_g24_ackpayload_parse
 0x60f9 mouse_g24_retransmit
 0x60fe mouse_select_device_by_dpi_button_once
+0x6102 mouse_g24_retransmit_event_set
 0x6103 mouse_g24_retransmit_100ms_timer_init
 0x6106 mouse_dpi_check_once
 0x6109 mouse_24g_before_lpm_sleep
Index: format/rom.format
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/format/rom.format	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/format/rom.format	(working copy)
@@ -973,10 +973,11 @@
 )
 (//mem_24g_reconn_type
 0 DEFAULT_24G_DEVICE
-1 FAST_CONN_AND_RECEIVER
+1 FAST_CONN_AND_RECEIVER	
 2 FAST_CONN_AND_3_0_ADDR
 3 RECEIVER_AND_3_0_ADDR
 4 PAIR_AND_3_0_ADDR
+5 PAIR_AND_RECEIVER
 )
 (
 0x50 RSSI_THRESH_NOISE
@@ -1857,6 +1858,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
@@ -1989,6 +1991,10 @@
 0x0e ADC_CH_GPIO13
 )
 (
+1 SADC_REFERENCE_INTER3V
+2 SADC_REFERENCE_INTER1P8V_DIV2
+)
+(
 //20ms
 0x0020	FAST_ADV_INTERVAL_VALUE_CAR
 )
@@ -2535,6 +2541,9 @@
 7 BIT_OF_WRITE_AUTHENTICATED
 )
 (
+0x20 MOUSE_BLE_L2CAP_TXBUFF_SIZE_NEW
+)
+(
 (
 0x00 PEN_KEY0
 0x01 PEN_KEY1
@@ -2665,6 +2674,7 @@
 0x3c MOUSE_ENABLE_WHEEL_WAKE_UP_CANCEL
 0x3d MOUSE_ENABLE_24G_2M_PHY
 0x3e MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING
+0x3f MOUSE_ENABLE_SWITCH_GPIO_CONNECT_VIN
 //mouse dpi level
 0x00 MOUSE_DPI_LEVEL1
 0x01 MOUSE_DPI_LEVEL2
@@ -5895,8 +5905,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
 
@@ -6111,10 +6131,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
@@ -7655,6 +7684,15 @@
 3 mem_tx_power_factory_param_new
 18 mem_sensor_ka8g2_init_new
 
+64 mem_le_tx_buffer0_omemalloc_new
+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
 )
 xmemalloc g24_tx_hid_mouse_flippen(
 16 mem_24g_txpayload_buf
@@ -7748,6 +7786,11 @@
 1 mem_g24_connected_state
 1 mem_g24_pairing_stop_flag
 1 mem_send_package_before_check
+1 mem_le_conn_rcv_new
+1 mem_le_conn_first_rcv
+1 mem_le_check_retransmit_flag
+1 mem_le_retransmit_cnt
+1 mem_le_check_retransmit_discon_flag
 )
 xmemalloc g24_tx_remote(
 1 mem_remote_car_hard_soft_switch
Index: output/memmap.format
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/output/memmap.format	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/output/memmap.format	(working copy)
@@ -723,6 +723,14 @@
 0x4147 mem_gain_second_agc_en
 0x4148 mem_system_clk
 0x4149 mem_rf_init_data
+0x414e mem_adc_reference3v_ft_data
+0x414e mem_adc_reference3v_gpio1v_ft_data
+0x4150 mem_adc_reference3v_gpio2v_ft_data
+0x4152 mem_adc_reference3v_vdcdc3p6v_ft_data
+0x4154 mem_adc_reference3v_vdcdc4p6v_ft_data
+0x4156 mem_adc_reference3v_inter1v_ft_data
+0x4158 mem_adc_reference3v_inter1v_now_data
+0x415a mem_adc_reference_mode
 0x415b mem_otp_charge_pump_x
 0x415c mem_otp_dpll_ibais_x
 0x415d mem_xtal_freq
@@ -863,10 +871,19 @@
 0x43f8 mem_nv_data_ptr
 0x43fa mem_nv_data_number
 0x43fb mem_queue_ptr
+0x43fd mem_reference_inter1p8v_2v_adc_io_data
+0x43fd mem_inter1v_adc_ft_data
 0x43fd mem_3v_adc_io_data
+0x43ff mem_reference_inter1p8v_2p6v_adc_vdcdc_data
+0x43ff mem_inter1p2v_adc_ft_data
 0x43ff mem_2v_adc_hvin_data
+0x4401 mem_reference_inter1p8v_1v_adc_io_data
+0x4401 mem_io1v_adc_ft_data
 0x4401 mem_1v_adc_io_data
+0x4403 mem_reference_inter1p8v_4p6v_adc_vdcdc_data
+0x4403 mem_io2v_adc_ft_data
 0x4403 mem_3v_adc_hvin_data
+0x4405 mem_adc_ratio
 0x4405 mem_reference_voltage
 0x4407 mem_adc_config_flag
 0x4408 mem_adc_channel
@@ -1951,85 +1968,97 @@
 0x4a07 mem_normal_tx_power
 0x4a08 mem_tx_power_factory_param_new
 0x4a0b mem_sensor_ka8g2_init_new
-0x4a1d mem_24g_txpayload_buf
-0x4a2d mem_release_data_from_receiver_enable
-0x4a2e mem_release_data_from_transmiter_enable
-0x4a2f mem_flippen_key0_gpio
-0x4a30 mem_flippen_key1_gpio
-0x4a31 mem_flippen_key2_gpio
-0x4a32 mem_flippen_key3_gpio
-0x4a33 mem_flippen_key4_gpio
-0x4a34 mem_flippen_key5_gpio
-0x4a35 mem_flippen_key6_gpio
-0x4a36 mem_flippen_key7_gpio
-0x4a37 mem_flippen_key0_press_status
-0x4a38 mem_flippen_key1_press_status
-0x4a39 mem_flippen_key2_press_status
-0x4a3a mem_flippen_key3_press_status
-0x4a3b mem_flippen_key4_press_status
-0x4a3c mem_flippen_key5_press_status
-0x4a3d mem_flippen_key6_press_status
-0x4a3e mem_flippen_key7_press_status
-0x4a3f mem_key_press_data
-0x4a3f mem_key_pageup_data
-0x4a48 mem_key_pagedown_data
-0x4a51 mem_key_shift_f5_data
-0x4a5a mem_key_esc_data
-0x4a63 mem_key_b_data
-0x4a6c mem_key_tab
-0x4a75 mem_key_enter
-0x4a7e mem_key_alt_tab
-0x4a87 mem_key_alt_f4
-0x4a90 mem_key_play_pause
-0x4a99 mem_key_vol_up
-0x4aa2 mem_key_vol_down
-0x4aab mem_standard_key_release
-0x4ab4 mem_system_ctrl_key_release
-0x4abd mem_media_key_release
-0x4ac6 mem_key0_long_press_flag
-0x4ac7 mem_key1_long_press_flag
-0x4ac8 mem_key2_long_press_flag
-0x4ac9 mem_key3_long_press_flag
-0x4aca mem_key4_long_press_flag
-0x4acb mem_key0_long_press_event
-0x4acc mem_key1_long_press_event
-0x4acd mem_key2_long_press_event
-0x4ace mem_key3_long_press_event
-0x4acf mem_key4_long_press_event
-0x4ad0 mem_key0_short_press_flag
-0x4ad1 mem_key1_short_press_flag
-0x4ad2 mem_key2_short_press_flag
-0x4ad3 mem_key3_short_press_flag
-0x4ad4 mem_key4_short_press_flag
-0x4ad5 mem_key0_press_timer_count
-0x4ad6 mem_key1_press_timer_count
-0x4ad7 mem_key2_press_timer_count
-0x4ad8 mem_key3_press_timer_count
-0x4ad9 mem_key4_press_timer_count
-0x4ada mem_combination_key_down_flag
-0x4adb mem_combination_key_longpress_flag
-0x4adc mem_key_disable_timer
-0x4add mem_24g_calculate_package_id_disable
-0x4ade mem_24g_package_id_abandon_flag
-0x4adf mem_24g_package_id
-0x4ae0 mem_key_state
-0x4ae1 mem_key_press_state
-0x4ae2 mem_poweron_first_blank_data_enable
-0x4ae3 mem_flippen_no_data_timeout
-0x4ae5 mem_flippen_start_pair_no_data_timeout
-0x4ae7 mem_key_longpress_timer_init
-0x4ae9 mem_key_longpress_timer
-0x4aeb mem_low_voltage_led_blink_flag
-0x4aec mem_low_voltage_led_blink_start_timer
-0x4aed mem_poweron_led_blink_flag
-0x4aee mem_24g_pair_enable_flag
-0x4aef mem_24g_ch_work
-0x4af0 mem_24g_pair_key_down_flag
-0x4af1 mem_24g_pairing_stop_flag
-0x4af2 mem_longpress_24g_enter_hibernate_flag
-0x4af3 mem_g24_connected_state
-0x4af4 mem_g24_pairing_stop_flag
-0x4af5 mem_send_package_before_check
+0x4a1d mem_le_tx_buffer0_omemalloc_new
+0x4a5d mem_le_tx_buffer1_omemalloc_new
+0x4a9d mem_le_tx_buffer2_omemalloc_new
+0x4add mem_le_tx_buffer3_omemalloc_new
+0x4b1d mem_mouse_qdec_set_flag
+0x4b1e mem_commbination_dpi_timer
+0x4b1f mem_mouse_commbination_key_dpi
+0x4b20 mem_24g_txpayload_buf
+0x4b30 mem_release_data_from_receiver_enable
+0x4b31 mem_release_data_from_transmiter_enable
+0x4b32 mem_flippen_key0_gpio
+0x4b33 mem_flippen_key1_gpio
+0x4b34 mem_flippen_key2_gpio
+0x4b35 mem_flippen_key3_gpio
+0x4b36 mem_flippen_key4_gpio
+0x4b37 mem_flippen_key5_gpio
+0x4b38 mem_flippen_key6_gpio
+0x4b39 mem_flippen_key7_gpio
+0x4b3a mem_flippen_key0_press_status
+0x4b3b mem_flippen_key1_press_status
+0x4b3c mem_flippen_key2_press_status
+0x4b3d mem_flippen_key3_press_status
+0x4b3e mem_flippen_key4_press_status
+0x4b3f mem_flippen_key5_press_status
+0x4b40 mem_flippen_key6_press_status
+0x4b41 mem_flippen_key7_press_status
+0x4b42 mem_key_press_data
+0x4b42 mem_key_pageup_data
+0x4b4b mem_key_pagedown_data
+0x4b54 mem_key_shift_f5_data
+0x4b5d mem_key_esc_data
+0x4b66 mem_key_b_data
+0x4b6f mem_key_tab
+0x4b78 mem_key_enter
+0x4b81 mem_key_alt_tab
+0x4b8a mem_key_alt_f4
+0x4b93 mem_key_play_pause
+0x4b9c mem_key_vol_up
+0x4ba5 mem_key_vol_down
+0x4bae mem_standard_key_release
+0x4bb7 mem_system_ctrl_key_release
+0x4bc0 mem_media_key_release
+0x4bc9 mem_key0_long_press_flag
+0x4bca mem_key1_long_press_flag
+0x4bcb mem_key2_long_press_flag
+0x4bcc mem_key3_long_press_flag
+0x4bcd mem_key4_long_press_flag
+0x4bce mem_key0_long_press_event
+0x4bcf mem_key1_long_press_event
+0x4bd0 mem_key2_long_press_event
+0x4bd1 mem_key3_long_press_event
+0x4bd2 mem_key4_long_press_event
+0x4bd3 mem_key0_short_press_flag
+0x4bd4 mem_key1_short_press_flag
+0x4bd5 mem_key2_short_press_flag
+0x4bd6 mem_key3_short_press_flag
+0x4bd7 mem_key4_short_press_flag
+0x4bd8 mem_key0_press_timer_count
+0x4bd9 mem_key1_press_timer_count
+0x4bda mem_key2_press_timer_count
+0x4bdb mem_key3_press_timer_count
+0x4bdc mem_key4_press_timer_count
+0x4bdd mem_combination_key_down_flag
+0x4bde mem_combination_key_longpress_flag
+0x4bdf mem_key_disable_timer
+0x4be0 mem_24g_calculate_package_id_disable
+0x4be1 mem_24g_package_id_abandon_flag
+0x4be2 mem_24g_package_id
+0x4be3 mem_key_state
+0x4be4 mem_key_press_state
+0x4be5 mem_poweron_first_blank_data_enable
+0x4be6 mem_flippen_no_data_timeout
+0x4be8 mem_flippen_start_pair_no_data_timeout
+0x4bea mem_key_longpress_timer_init
+0x4bec mem_key_longpress_timer
+0x4bee mem_low_voltage_led_blink_flag
+0x4bef mem_low_voltage_led_blink_start_timer
+0x4bf0 mem_poweron_led_blink_flag
+0x4bf1 mem_24g_pair_enable_flag
+0x4bf2 mem_24g_ch_work
+0x4bf3 mem_24g_pair_key_down_flag
+0x4bf4 mem_24g_pairing_stop_flag
+0x4bf5 mem_longpress_24g_enter_hibernate_flag
+0x4bf6 mem_g24_connected_state
+0x4bf7 mem_g24_pairing_stop_flag
+0x4bf8 mem_send_package_before_check
+0x4bf9 mem_le_conn_rcv_new
+0x4bfa mem_le_conn_first_rcv
+0x4bfb mem_le_check_retransmit_flag
+0x4bfc mem_le_retransmit_cnt
+0x4bfd mem_le_check_retransmit_discon_flag
 0x462d mem_remote_car_hard_soft_switch
 0x462e mem_remote_car_queue_each_size
 0x462f mem_remote_car_queue_length
Index: output/otp.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/output/otp.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/output/otp.dat	(working copy)
@@ -9,3235 +9,5477 @@
 00
 00
 00
+8f
+ab
+f1
+00
+3c
+ae
+c6
+03
+78
+5c
+8d
+07
+e0
+71
+35
+1e
 aa
 55
-8e
-0c
-c2
-84
-00
-1d
-c0
-01
-00
-24
-c0
-08
-80
-2d
-c0
-0a
-01
-41
-c0
-0a
-80
-a8
-c0
-0c
-00
-c0
-c0
-0c
-80
+40
+15
+4e
+06
+a3
+10
+a2
+a1
+1a
+60
+23
+16
+29
+8a
+50
+e2
+3b
+f1
+04
+50
 c7
-c0
-0d
-00
 3b
-c0
-12
-81
-89
-c0
-34
-01
+27
+04
+c7
+19
+53
+b3
 aa
+0d
+ae
+4a
+7a
 c0
+5f
+16
+cf
+7b
+41
+0b
+59
+9b
+32
+eb
+3c
+72
+42
+ec
+fb
+51
+21
 34
-81
-b2
-c0
-39
-82
+55
+d1
+54
+74
+8e
+e5
+9e
+af
+86
+76
+6f
+e2
+3b
+ec
+04
+57
+2d
+fb
+35
+5a
+d3
+17
+fb
 f0
-c0
-3d
-03
-0f
-c0
-3f
-82
-d0
-c0
-40
-83
-03
-c0
-42
-02
-58
-c0
-42
-82
+24
+5b
+61
+67
+7a
+a0
+9a
+2a
+65
+64
+f7
+dc
+c3
+ae
+ca
+93
+eb
+5a
+f6
+fd
+fe
+92
+0d
+b9
 88
-c0
-43
-82
-81
-c0
-44
-02
-86
-c0
-45
-02
-6b
-c0
-46
-01
-e5
-c0
-47
-02
-ba
-c0
-45
-81
-c0
-c0
-4a
-82
-e7
-c0
-4b
-02
-fa
-c0
-62
-81
-a7
-c0
-6d
-01
-12
-c0
 6e
-01
-22
-20
-20
-23
+50
+83
+9b
+bb
+6f
+31
+5b
+05
+f3
+0e
+9d
+bd
+2b
+50
+d1
 5a
-c0
-1c
-81
-5d
-c0
-1d
-01
-63
-c0
-26
-81
-61
-c0
-4b
-02
-db
-c0
+9d
+89
+54
+3b
+6a
+da
 4e
-80
-b6
-c1
+dc
+8b
+0d
+8b
+fb
+9b
+d7
+9e
+47
+79
+d1
+10
+8c
+28
+2c
+69
+53
+bc
+c3
+e2
+fe
+41
+15
+1e
+06
+ad
+41
+02
+e2
+43
+10
+48
+22
+59
+a1
+fa
+6c
+c6
+33
+f8
+3c
+b9
+85
+d6
+a7
+67
+fd
+68
+19
+5d
+52
+3d
+77
+5f
+a3
+e8
+fd
+37
+89
+b1
+5b
+9f
+f9
+8d
+44
+04
+a3
+4d
+5e
+f3
+60
+37
+64
+d9
+c3
+e3
+30
+99
+7b
+13
+b9
+3d
+c8
 7f
+95
+c6
+b8
+22
+fa
+2f
+8d
+a5
+cb
+54
+3c
+ab
+b6
+7b
+f1
+ab
+57
+0f
+c6
+cf
+62
+ad
+28
+c7
+25
+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
+17
+27
+1b
+77
+8d
+3f
+8e
+55
+0e
+40
+b6
+ad
+05
+c6
+f5
+65
+b1
+c8
+e9
+8f
+b5
+12
+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
+ca
+2a
+49
+4f
+5b
+ff
+dd
+ef
+d8
+a7
+9c
+ca
+ed
+ef
+d9
+34
+7f
+d2
+48
+c7
+d9
+ee
+48
+f6
+98
+71
+25
+d3
+b2
+56
+d9
+83
+40
+ed
+a2
+5c
+a3
+9c
+e3
+58
+9f
+cf
+bf
+e4
+27
+66
+b5
+fc
+25
+0e
+8c
+c0
+b7
+76
+28
+16
+06
+bb
+51
+d6
+0f
+99
+1f
+22
+f4
+51
+d3
+87
+36
+3c
+42
+70
+9d
+0a
+bb
+f9
+f6
+71
+da
+86
+35
+21
+15
+a2
+c7
+1a
+3d
+31
+d1
+44
+ab
+37
+85
+80
+0f
+97
+00
+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
+2c
+49
+75
+67
+a7
+54
+56
+64
+f6
+27
+8b
+66
+99
+d4
+28
+15
+90
+a0
+37
+9a
+e9
+f7
+09
+b3
+52
+f7
+b2
+92
+9e
+e7
+82
+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
+77
+f9
+8b
+08
+8e
+f3
+1b
+0f
+f8
+96
+07
+79
+c1
+66
+d9
+2e
+1e
+89
+06
+9f
+cc
+3a
+13
+a0
+fb
+8d
+44
+c4
+f6
+34
+d1
+86
 80
+c3
+66
+27
+a2
+51
+b6
+42
+d6
+62
+04
+bd
 00
-20
-20
+e4
+02
+9c
+4b
+a6
+98
+2a
+be
+eb
+48
+27
+b0
+1d
+d6
+62
+27
+f8
+d9
+c1
+c3
+c5
+9f
+81
+ca
+8e
+53
+29
+9b
+f4
+7f
+72
+b4
+1b
+8f
+5d
+6d
+de
 23
+91
+b9
+1b
 5a
-20
-40
-75
-52
-20
-40
-74
-48
-20
-40
-2a
-45
-20
-40
-20
-2a
-20
-40
-42
-ad
-20
-40
-20
-18
-20
-40
-31
+27
+9a
+fa
+c2
+d5
+90
+cf
+6a
+93
+82
+02
+14
+1c
 0f
-20
-40
-24
-8c
-20
-20
-00
-24
-70
-8a
+dd
+88
+ae
 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
-3c
-70
-8a
-12
-60
+81
+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
+1a
+01
+b7
+31
+aa
+49
+32
+dc
+11
+c8
+1e
+30
+b2
+f4
+9d
+a4
+04
+a7
 23
-dd
-20
-60
-00
-00
-70
-89
-46
 0d
-70
-89
-6f
-10
-70
-8a
+13
+e1
+7e
+24
 06
-10
-70
-8a
-84
+82
+72
+ce
+79
+3b
+b6
+4f
+58
+c9
+bb
+71
+76
+3d
+83
+98
+90
+da
+a7
+6f
+c5
+8f
+89
+78
+28
+97
 4a
-70
-8a
-85
+fa
+9b
+c8
 40
-70
+f6
+b6
+c2
+60
+23
+b7
+d2
+ae
+93
+55
+15
+4b
+50
+c1
+09
+9d
+eb
+4d
+fb
+6f
+db
+7d
+a3
+45
+fd
+79
+4e
+02
+b5
+c6
+87
+b3
+51
+01
+0b
+ac
+c5
+a8
+9f
+de
+50
+dd
+6d
+bc
+92
+99
+62
+67
+cd
+08
+e1
+6b
+35
+8d
+bb
+3d
+2d
+2c
+39
+0c
+94
+96
+36
+d8
+0c
+4b
 8a
-16
-fe
-20
+05
+49
+f4
+29
+db
+83
+99
+7e
 40
-00
-7d
-6f
-e0
+df
+ca
+54
+0c
+a4
 c4
+3c
+f3
+47
+f9
+b5
+58
 36
-20
-5a
-70
-d7
-37
+0d
+87
+a4
+3e
+f7
+10
+76
+8a
+a4
+4b
 d9
-82
-00
-70
-81
-3b
-5f
-6f
-e0
-c0
-99
-c0
-08
+5d
 00
-72
-6f
-e0
-c4
-38
-1f
+d0
+ce
+e5
+3f
+0c
 e1
-fe
-04
-67
-f0
-8a
-02
-70
-89
+65
+66
 0f
-01
-70
-8a
-80
-24
-70
-8a
-81
+6c
+3e
+d4
+17
+1a
+bf
+e8
+b0
+79
+cb
 62
-58
-e6
-12
-12
-67
-f1
-8a
-73
-70
-8a
-86
-60
-70
+f7
+b1
+6d
+bb
+92
+7c
+bd
+16
+09
+06
+97
+0a
+ac
 8a
-8b
+bb
+78
+ab
+19
 3b
-20
-40
-00
-64
-70
-80
-43
-00
-70
-80
-42
-05
-58
-55
-74
-74
-67
-f1
-89
-68
 70
-89
-60
-6e
-20
-40
-00
-e4
-20
-40
-01
-0f
+79
+f0
+fe
+4e
+91
 20
 40
+52
+fe
+33
+ec
+93
+ac
+07
+21
+aa
 00
+34
+cd
 5e
-70
-41
-48
-0c
-20
-40
-6f
-4e
-20
+6b
+b9
+80
+e2
 20
-01
 11
-20
-75
-80
-00
-37
-d9
-82
-00
-6f
-e0
-c1
+72
+63
+96
+23
+05
+1e
+5d
+33
+c6
+6a
+d6
+95
+fd
+b0
+b5
+32
+98
+b3
+77
+1a
+08
+0c
+f2
+fd
+d5
+30
+4a
+d1
+1a
+25
+9a
 1c
-67
-f0
-81
+e2
+d8
+de
+3d
+39
 3a
-37
-d9
-82
-00
-20
-60
-00
-00
-6f
-e0
-c0
-99
-c0
-0c
-00
-6a
-6f
-e0
-c4
-38
-1f
-e1
-fe
-06
-67
-f0
-8a
-02
-70
-8a
-05
-e0
-70
-8a
-00
+f6
+d6
+22
+74
+56
+d3
+46
+86
+9d
+85
+a6
+ef
+5f
+c1
+94
+f4
+56
+6c
+17
+43
+8b
+f4
 d8
-20
-00
-00
-3c
-70
-8a
-01
-a0
-70
-8a
-00
-df
-70
-8a
-01
-fa
-20
-00
-00
-14
-70
-8a
-00
-9f
-20
-60
-00
-00
-6f
-e0
-c4
-38
-1f
-e1
-fe
-06
+8c
 67
-f0
+39
+f4
+50
+eb
+e2
+d9
+31
 8a
+5c
+e6
+bf
+c9
+d2
+b0
+f7
+d3
+6d
+49
+1c
+13
+d5
+c8
+28
 02
-70
-89
-0f
+73
+28
+91
+ff
+49
+b1
+2f
+79
+e6
+fe
+85
+4e
+a6
+c3
+97
+d6
+55
+c6
+a7
+8c
+26
+52
+46
 00
-70
-8a
-80
-23
-70
-8a
-81
-b0
-58
-e4
-09
 09
+41
 67
-f1
-8a
-73
-70
-8a
-76
-2a
-70
-89
-02
-04
-20
+d1
+71
+61
+f6
+32
+9f
+7a
+24
+d1
+1f
+d3
+79
+79
+0a
+e3
+af
+61
+99
+dd
+23
+83
+7a
+e1
+53
+56
+ea
+e5
 20
-00
+52
+81
+c6
+9a
+d8
+e5
+aa
+b5
+61
+b4
+e1
+7b
 50
-20
-35
-80
-a4
 6f
-e2
-02
-0d
-20
-7a
-00
-00
-37
-d9
-82
+0f
+66
+df
+ee
+ed
+1e
+99
+c3
+94
+c3
+50
+2f
+bf
 00
-6f
-f0
-81
-36
-1f
-e1
+05
+2f
+dd
+f3
+cb
+16
+a3
 7e
-f0
-68
-48
-82
-0d
-98
-41
+29
+13
+d6
+45
+c5
 fe
-00
-67
-f0
-81
-36
-37
-d9
-82
-00
-6f
-f0
-81
-38
-1f
+21
+91
+28
+11
+5a
+d0
+05
+db
+b3
+ac
 e1
-7e
+7c
+27
+64
+9a
+19
+29
+dc
+25
+5a
+33
+14
+4e
+4e
+30
+83
+a7
+49
+1e
+ce
+99
+8a
+59
+f7
+03
+b2
+0c
+22
+a6
+78
+3b
+ad
+ef
+ae
+8c
 07
-68
-48
+eb
+99
+3e
+a3
+13
+dd
+f6
+11
+5f
+65
+93
+f7
+d7
+29
+bc
+9b
+97
+77
+4d
+ab
+a9
+51
+85
+34
+da
+76
+5b
+6d
+58
+2a
 82
-0e
-18
-49
-84
-00
+1e
+ae
+39
+d8
+4a
+8e
+c1
+0a
+97
+d7
+83
 98
-41
-fe
-00
+3e
+17
+72
+7a
+de
+dd
+67
+fd
+af
+66
+bb
+12
+3f
+f9
+de
+1e
+2b
+80
+f1
+2e
+9c
+a1
+be
+83
+da
 67
-f0
-81
-38
-37
-d9
-82
+1b
+b3
+6d
+14
+be
+13
+c0
+28
+1b
+0b
+91
+66
+b1
+9c
 00
-6f
-f0
-8a
-cb
-1f
+0f
+52
+4e
+13
+13
+55
 e1
+ca
+e8
+fd
+b0
+2f
+44
+f7
+e3
+f6
+98
+c2
+f8
+fe
+75
+25
+16
+18
+d8
+ec
+22
+43
+02
+f9
+21
+d4
+14
+44
+50
+9a
+64
+9a
 7e
-f0
-68
-48
-82
-0f
-60
-48
-c1
+98
+b9
+13
+36
+cf
+f6
+14
+bf
+e2
+11
+90
+5b
+80
+f3
+af
+24
+ae
+91
+f6
+d2
+21
+96
+d1
+eb
+3f
+e9
 5b
+44
+bf
+53
+68
+bf
+ad
+08
+aa
+d0
+17
+cd
+29
+46
+32
+ae
+78
+f2
 98
-41
-fe
-00
-67
-f0
-8a
-cb
-6f
-e0
-82
+6b
+03
+c4
+d5
+c2
+68
+71
+3b
+b8
+84
+08
+99
+14
+44
+e4
+65
+fa
 10
-67
-e0
-c1
-5c
-2f
+45
+f4
+ff
+11
+97
+1a
+12
+de
+56
+d5
+32
+c4
+cc
 ef
+51
+f4
+83
+ea
+c8
+85
+32
+96
+a9
+30
+b6
+a1
+2b
+3d
+58
+40
+f6
+e6
+84
+05
+e0
+b8
+a5
 fe
-03
-6f
-f0
-8a
-06
-79
-20
-fe
-07
-67
+df
+f6
+cc
+f3
+08
 f0
-8a
-06
-6f
-e0
-82
-10
+ff
+c1
+80
+c7
+94
+03
+2e
+5a
+fb
+7f
+cb
+d9
+35
+2c
+d5
+74
+f7
+08
+40
+0d
+c3
+99
+68
+85
+e9
 1f
-e1
-04
-07
-18
-52
-04
-00
+22
+82
+71
+fe
+11
+27
+f7
+ae
+2a
 18
-43
-84
-00
-60
+ff
+f9
+2b
+54
+3e
+0c
+0e
+56
+7e
+2a
+5e
+9f
+5a
+b0
+2c
 48
+22
+7f
+b9
+a2
+3c
 c4
-38
-6f
-f0
-8a
-02
+03
+af
 1f
-e1
-7e
+be
+92
+ab
 1f
-98
-41
-fe
-00
-67
-f0
-8a
-02
-20
-60
-00
-00
-6f
-e1
-41
-5b
-20
-7a
-00
-00
-67
-e1
+e0
+e9
+24
+b0
+de
 02
+6b
+9b
+2c
+c1
+3a
+1f
+7c
+dd
+de
+7d
+8d
+88
+25
+39
+a7
+1f
+a8
+6a
+b6
+72
+f1
+dd
+ed
 0f
-20
-20
-00
-8e
-20
-40
-68
-6f
-20
-40
-21
-ba
-18
+4d
+1c
+f8
+ce
+c5
+97
+86
+c4
+6d
+a8
+4e
+95
+bf
+79
 00
-2a
+7e
+fd
+d0
+14
+93
+6a
+e4
+db
+95
+03
+59
+63
+85
+ed
 08
-18
-00
-2a
-00
-58
+4e
+cd
+91
+0b
+a7
+36
+4b
 0a
-aa
-da
-67
-f1
-8a
+27
 0f
-70
-8a
-25
-40
-70
-8a
-26
+c4
 10
-20
-00
-00
-3c
-70
-8a
-01
-fb
-70
-8a
-25
-ff
-70
-8a
-26
-30
-70
-8a
-16
-fe
-20
-20
-21
+36
+10
+1c
 b4
-68
+a9
+03
+d6
+8c
+15
+aa
+be
+2d
+05
+12
+8b
+07
+e7
+25
+bc
+66
+cb
+c8
+b2
 48
-c6
-01
-6f
-e0
-c6
-21
-98
-46
-7c
-00
-24
-21
-00
-bb
-20
-20
-36
-81
-6f
-e2
-45
-8f
-68
+d4
+1b
+79
+f6
+78
+a7
+7f
+6c
+c3
+d8
+3f
+56
+2b
+f1
+11
+42
 4a
-45
-e4
-98
+df
+5c
+bd
+b8
+a1
 46
-7c
-00
-20
-22
-b2
-22
-20
-20
-36
-9a
-58
-0a
-aa
-7e
-67
+6c
+66
+82
+d7
+79
+b4
+43
+25
+14
+78
+80
+5d
+01
+70
+0d
+87
+5d
+b5
+34
+b0
+83
+3c
+9f
+b3
+7b
+7a
 f1
-8a
-0f
-20
-00
-00
+db
+e0
+fd
+94
+10
+5e
 3c
-70
-8a
+21
+a4
+b4
+44
+75
+d8
+66
+de
+3b
+ac
+54
+07
+a2
+f5
+58
+d8
+13
+ac
+b2
+65
+c2
+04
+98
+b1
+06
+9b
+1d
+40
+aa
+cf
+06
 25
-00
-70
-8a
-26
-0d
+a6
+fc
+bc
+08
+b4
+f3
+54
 70
+db
+e0
+f1
+84
 8a
-16
-f6
-20
-20
-22
 03
-6f
-e0
+33
+2a
+c5
+81
+64
+a0
 c1
-41
-c0
+d7
+1d
+63
+91
+ee
+e5
+23
+bd
+87
+d8
+fe
 03
-22
 25
-c0
-05
-00
-cf
-c0
-4f
-00
-d8
-c0
-4f
-80
-dc
-c0
-50
-00
-e0
-c0
-55
-00
-d4
-20
-20
-22
+e5
+46
+3a
+46
+7f
+b4
+46
+66
+f8
+29
+5f
+68
+ba
+92
+ed
+3d
+46
+28
+85
+97
+bf
+fa
+8e
+62
+be
+d5
+1d
+84
+5c
 0e
-70
-8a
-14
-25
-58
-a9
-3f
-3f
+9e
+a3
+1e
+e3
+e5
+f6
+4f
+cf
+f7
+f7
 67
-f1
-8a
-60
-70
-8a
-63
-1f
-20
-60
-00
-00
-70
-8a
+57
+e9
+b8
+3d
+5f
 14
-17
-6f
-e1
-ca
-08
+d8
+0b
+33
+27
+a8
+73
+ab
+4e
+7a
+fb
 67
-f1
-8a
-60
-20
-20
+0d
+87
+73
+b1
+a2
+9e
+29
+7d
+fa
+e4
+ce
+b5
+a3
+a2
+a0
+58
+e6
+d6
+38
+66
 22
-1a
+da
+9d
+ca
+7a
+27
+8a
+a0
+0b
+4f
+07
+43
+75
+a4
+9d
+f0
+e8
+87
+9d
+e3
+56
+6b
+62
+e2
+bd
+6f
+c4
+68
+26
+01
+3e
+23
+d5
+da
+a6
+bd
+83
+72
+61
+3d
+27
+40
+ac
+27
+b0
+3c
+75
+52
+cd
+44
+08
+d9
+fb
+a8
+7d
+69
+87
 70
-8a
-14
-17
-58
-25
-03
-00
-67
-f1
-8a
+dd
+68
+be
+c5
+e0
+3f
+ce
+4a
+f2
+2c
+37
+4b
+e2
+f8
+0b
+cb
+3b
+b3
+09
+39
 60
+90
 20
-20
-22
-1a
-70
-8a
-14
-17
+3f
+ba
+0d
+cc
+a9
+d6
+6e
+0f
+cf
+8d
+23
+36
+7c
+fb
+d7
+ff
+89
+e5
+69
+0a
+07
 58
-25
-01
-00
-67
-f1
-8a
-60
-20
-20
-22
-1a
-70
-8a
-14
-17
+f2
+f6
+b0
 58
-25
-00
-00
-67
-f1
-8a
-60
-20
-20
-22
-1a
-20
-75
-80
-00
-20
-40
-21
-60
-d8
-40
-00
+aa
+54
+b3
+41
+49
+d2
 27
-20
-40
-21
-6f
-20
-40
-21
-a6
-70
-8a
-25
-7f
-70
-8a
+ca
+17
+19
+00
+c4
+07
+35
+cc
+28
+34
+0c
+a9
+36
+90
+59
+ad
+2f
+e2
+73
+61
+99
+79
 30
-1a
-70
-8a
-31
-78
-70
-8a
-8f
+82
 b2
-70
-8a
-c2
-00
-70
-8a
-c3
-00
+87
+9c
+f2
+07
 d8
-e0
-00
-06
-20
-40
-01
-01
-2a
+57
+13
+b4
+07
+a4
+25
 2f
-fe
-0d
-20
-40
-21
-1d
-2a
-4f
-fe
+49
+fd
+04
+b5
 0d
-20
-40
-21
+fa
+d2
+6c
+71
+16
+f0
+68
+44
+2f
+ac
+9b
+6c
+85
+f9
+cb
+61
+99
+3c
+3c
 1e
+50
+71
+53
+bc
+c7
+49
+39
+8e
+6b
+a7
+ca
+89
+c6
+b7
+cc
+ae
+5a
+b5
+f2
+cc
+cc
+b3
+6f
+43
+b8
+ea
+49
+92
+29
+83
+84
+55
+3c
+98
+6c
+0f
+02
+fb
+af
+3e
+bf
+3a
+28
+95
 d8
-e0
-00
-05
-20
-40
-21
-1c
-20
-40
-21
+e3
+bf
+48
 1e
-20
-40
-01
-01
-d8
-a0
-8a
-c2
+a8
+c0
+ab
+ce
+78
+5b
+48
+54
+ba
+d6
+62
 1a
+85
+c4
+44
+46
+78
+9d
+ad
 31
-fe
-00
-20
-40
-21
-17
+34
+c9
+8e
+e7
+7e
+94
+8f
 1a
-51
-fe
-00
-20
-40
-21
+8f
+3b
+bd
+26
+db
+74
+49
+15
+e8
+6a
+bd
+9c
+80
+d8
+e4
+d0
+29
+45
+b8
+d8
+6c
+82
+33
+7b
+e1
+ea
+df
+41
+56
+4a
+85
+97
+70
+25
 17
-18
-e0
+94
+bc
+72
+c2
+54
+a9
+e6
+33
+47
+5a
+b9
+e3
+ae
+70
+8e
+78
+b9
+bc
+96
+94
 8f
+c6
+8f
+31
+05
+77
+fb
+3d
+eb
+73
+ed
+94
+1b
+09
+63
+bb
+98
+56
+96
+fe
+46
 ff
+0f
+34
+9b
+c7
+38
+43
+78
+6e
+87
+c3
 20
-21
-00
-f6
-20
-20
-21
-4f
-20
-00
-00
+5d
+a7
+0a
+6e
+26
+97
+c2
+41
+ea
+7c
+a8
+d1
+9c
+24
+02
+f2
+57
+d2
+86
+b6
+4d
+1b
+9c
+3a
+a6
+46
+8e
+55
+c1
+10
+22
+c6
+ee
+5e
+96
+1e
+ff
+95
+7c
 3c
-58
-00
-0f
-00
-67
-f1
-09
+9a
+d0
+62
 82
-58
-00
-0f
-f0
+d7
 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
+6e
+c4
+85
+5a
+aa
+1a
+ee
+3f
+ef
+71
 00
+27
+b8
+e8
+e8
+af
+fe
+63
+2a
+ef
+28
+16
+7f
+95
+17
+47
+b9
 df
-20
-00
+7f
+3e
+f4
+30
+b4
+d9
+b9
+c2
 10
+24
+74
+1e
+8b
+df
+6d
+47
+c4
+1e
+cb
+4a
+7f
+d5
+45
+66
+91
+fd
+78
+d6
+d5
+a3
+31
+d2
+04
+59
+a5
+a2
+94
+84
+9e
+a9
+5e
+29
+6a
+11
+4a
+45
+4f
+a5
+15
+2b
 d8
-c0
-0f
-00
-20
-20
-21
-2d
-20
-75
-80
-00
-20
+e2
+43
 20
+b6
+4c
+b1
+c5
 22
-72
-20
-60
-00
-00
+38
+11
+05
 20
-75
-80
-00
-70
-8a
-07
-77
-70
-8a
-08
-c9
-70
-8a
-0b
-01
-6f
-e0
-c4
-09
+6b
+0c
+ec
+46
+41
+6c
+02
+31
+38
 67
-f0
-80
-cd
-20
-00
-0b
-b8
-20
-40
+83
+c8
+1c
+3d
+cb
+2e
 01
-3a
-70
-8a
-08
-c1
-6a
-40
-c4
-19
-df
-20
-00
-08
-20
-40
-6f
-58
-6f
-e0
-c4
-19
-67
-e0
-c4
-33
+6e
+8f
+ca
 62
-40
-c4
-19
-20
-60
-00
+58
+8f
+69
+ca
+fc
+9c
+1c
+66
+04
+92
+ab
+59
+e4
+a7
+8d
 00
-20
-40
-01
-30
-6f
-f0
-8a
-09
-79
-3f
-fe
-07
-67
-f0
-8a
-09
-70
-8a
-07
-77
-70
+57
+e0
+f9
+18
+46
+34
+4f
+37
+86
+56
 8a
-08
+65
+2a
 c1
-70
-8a
-0b
-01
-20
-40
+4b
+b4
+1b
+4e
+78
+9d
+3e
+af
+cb
+9c
+fb
+bd
+7b
+50
+1f
+65
+a1
+c8
 6f
-90
+71
+a4
+0e
+68
+54
+9e
+b6
+27
+9c
+63
+2d
+af
+ec
+3f
+d9
+7f
+2a
+b4
+8b
+42
+de
+05
+76
+a7
+28
+db
+61
+35
 6f
+69
+07
+b7
+44
+fb
+93
+d7
+df
+4c
+ac
+e5
+81
+48
+08
+45
 e0
-c4
-09
-67
-f0
-80
-cd
-20
-00
+8a
+b3
 0b
 b8
-20
-40
-01
-3a
-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
+43
+ff
+16
+55
 3b
-68
-59
-01
-64
 60
-49
-44
-0a
-70
-80
-cc
-00
-20
-60
-00
-00
-70
-8a
-82
-11
-70
-8a
+db
+6e
+fd
+b0
+cb
+65
+69
+76
+75
+6e
+e9
+b8
+e9
+ec
+bf
+88
+7a
+ff
+2b
+73
+96
+bb
+fa
+90
+84
+68
+4f
+dc
+9b
 8d
-12
-70
-8a
-8e
-0a
-6f
-e0
-c0
-99
-c0
-08
-01
-5a
-58
-00
+37
+4f
+04
+5b
+8b
+6e
+ae
+97
+7a
+6a
+e9
+51
+85
+4c
+29
+8c
+15
+5c
+52
+42
+be
+ef
+06
+19
+fb
+76
+f6
+2e
+f9
+39
+fa
 57
-62
-67
-f1
+b0
+84
+b9
+a7
 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
-57
+72
+61
+69
+5b
+33
+24
+69
 58
-00
-2b
-b1
-67
-f1
-09
-07
-c6
-97
-80
-00
+e7
+2e
 70
-89
+bc
+0b
+0b
+9b
+2f
+43
+ff
+52
+0d
+b8
+cf
+ef
+c5
+5b
+3b
+d4
 30
-24
-70
+f9
+87
+b9
+af
+c6
+8a
+f2
+df
+fd
+3c
+0a
 89
-01
-05
+2e
+9b
+e9
+e1
+a1
+bd
+90
+75
+1a
+c9
+88
+03
+83
+2e
+34
+1f
+72
+d7
+df
+2b
+34
+6b
+ab
+1a
+cb
+bb
+33
 20
-60
-00
-00
-58
-00
-41
-89
-67
-f1
-09
 07
-20
-20
-01
-53
-58
 00
-83
-12
-67
+52
+7e
+e2
+61
+aa
+50
+3f
+5f
+d1
 f1
+d1
+14
+8d
+04
+a6
+55
+66
+6d
+5c
+4b
+bc
+46
+78
+3f
+f2
+3b
+e7
+5b
+d6
+6b
+8f
+ba
+c5
 09
-07
-20
-20
-01
-48
-6f
-e0
-c3
-34
-c1
-00
-00
-00
-c0
-01
-b0
-4a
-20
-20
-28
-e1
-79
+b5
+51
+bc
+33
+9b
 3f
+e7
+10
+32
+e5
+f0
+b9
+31
+d4
+31
+bc
+1e
 80
-30
-20
-20
-2a
-f6
-ef
-e1
+56
+45
 00
-06
-c0
-02
-01
+7e
+3e
+a3
+05
+36
+ad
+ca
+54
+e8
+dd
+3d
+54
+8d
+f9
+23
+b2
+45
+f8
+48
+3c
 66
-20
-20
-28
+c6
+1e
 eb
-ef
-e1
-80
-06
-67
-e1
-c3
-97
-c0
-05
-01
-6b
-c0
-09
-01
-7a
-20
-20
-2b
-96
-6f
+b5
+29
+82
+33
+af
+65
 e4
-47
-13
-c3
-1d
-ad
-19
-20
-40
+ff
+b3
+71
+3a
+d3
+f1
+8d
+ec
+ea
+71
+10
+e3
+23
 2d
-c7
-68
-49
-43
-98
-6f
-e0
-c3
-21
-c2
-81
-81
-75
+51
+66
+61
+51
+9c
+e4
+f3
+ce
+9d
+e4
+73
+b9
+b3
+d5
+7e
+09
 6f
+f1
+b9
+72
+eb
+0e
+92
+d9
+88
+2c
+bd
+9c
+99
+d1
+49
+45
+3f
+e6
+92
+ad
+64
+ea
+38
+7c
+80
+b7
+e9
+1a
+2b
+38
+87
+df
+9b
+0f
+d6
+f5
+10
+48
+d5
+7d
+35
+f4
 e1
-43
-98
-c0
-18
+a0
+55
+2c
+78
+7a
 2e
-03
+f7
+c1
+67
+c3
+93
+d1
 68
-49
-43
-98
-20
-20
-2d
+b0
+69
+9f
 1d
-6f
-e1
-43
-32
-98
-46
+c4
+7a
+18
+3d
+e8
+dd
+27
+b2
+76
 7c
-00
-24
-22
+1a
+3f
+bb
+7d
+b4
 81
-71
-24
-34
-01
-71
-20
-20
-2d
-46
-18
-c2
-22
-00
-6f
-e1
-43
-35
-1f
-e0
-a5
+45
+3b
+e3
+a0
 fd
-20
-40
-29
-29
-6f
-e0
-c7
-8f
-c0
+92
+b0
+17
+0d
+61
+cd
+54
+3b
+e3
+a9
+ae
+bc
+87
 7f
-ad
-ac
-6f
-e0
-c7
-95
-20
-3a
-2d
-ac
-6f
-e0
-c8
-43
-c2
-80
-ad
-ac
-58
-00
+45
 00
-1a
-68
-49
-43
-98
-98
-46
+1f
+d6
+35
+d9
+70
 7c
-00
-24
-22
-ad
-ac
-20
-20
-2d
-46
-6f
-e1
-43
+cb
+b9
+72
+14
+f2
+b4
+0d
+b1
+4e
+a6
+f0
+3d
+7a
 e9
-20
-40
-7d
-79
-6f
-e2
-40
-ad
-98
-40
-fe
-00
-67
 e2
+e4
+86
+7e
+74
+b7
+9e
+d5
+0e
+35
+66
+dc
+b2
+7f
+9d
+57
+e1
+b6
+a2
+8b
+2c
+be
+3e
+4f
+b3
+97
+13
+44
+ef
+2a
+9b
+e4
+60
+9d
+1f
+e9
+35
+4b
+6c
+b3
+7c
+1d
+53
+b7
+52
+84
+58
+8f
+73
+3d
+70
+ac
+fb
+7a
+f4
+66
+5f
+0f
+03
+ae
+71
+2e
+37
+b0
+cd
+3f
+3d
+90
+61
 40
-ad
-20
+97
+e1
+07
+72
+f1
+83
+59
+c9
+8c
+d6
+15
+71
+f2
+17
+a2
+db
+37
+8b
+56
+b8
+96
+e8
+28
 40
-01
 90
-20
-20
-24
-25
-60
-04
-40
-e7
+22
+d7
+38
+87
+2d
+dd
+44
+56
+e2
+1d
+fc
+e0
+ee
+57
+a3
+94
+69
+f7
+b1
+89
+f4
+e9
+0d
+d6
+b0
+2c
+5d
+57
+d0
+14
+51
+48
+8a
 d8
-c0
-80
+3c
+6d
+9e
+3d
 70
-d8
+0d
+f1
+3d
+22
+34
+94
+41
+55
+1c
+b0
+b8
+02
+d3
+ed
+a6
+e4
+42
+73
+3d
+1a
 a0
-40
-cc
-20
-40
-7c
-8f
-d8
-c0
-80
-d4
-20
-40
 7c
-89
-6f
-f0
-80
-80
-67
+c6
+47
+4a
+df
+84
 e0
-c0
-ef
-18
-42
-24
+51
+38
+e4
+d2
+79
+a9
+be
+1e
+ce
+bd
+f1
+d4
+76
+41
+2b
+16
+5e
+ac
+6e
+4b
+3f
+b8
+0a
+13
+af
+48
+64
+a4
+fd
+d9
+64
+3e
+9a
+a9
+6a
+d6
 00
-df
+b5
 20
-00
+2d
+51
+c2
+73
+b2
+ce
+66
+4d
+7d
+dc
+61
+91
+87
+e1
+6d
+f0
+d3
+41
+a6
+76
+79
+a9
+5c
+6b
+04
+29
+33
+91
+b3
+93
+49
+f3
+53
+4e
+69
+f2
+28
+36
+91
+cd
+43
+7a
 0c
-da
-20
-00
-16
-da
 60
-81
+1f
+ac
+d7
+d3
+17
+8c
+a4
+a3
+e3
+7b
+d6
+d1
+76
+9b
+98
+2f
+8a
+39
+b8
+39
+d1
+42
+b9
+39
+ab
+d4
+8d
 4d
-ef
-e0
-80
-11
-e8
-40
-80
 13
-98
-46
+36
+4a
+f1
+77
+cf
+59
+5b
+ac
+e2
+82
+b4
+b4
+b8
+86
+6d
 7c
+47
+d0
+54
+86
+88
+1b
 00
-20
-22
-81
-a2
-e7
-e0
-80
-13
-37
-d9
+7d
+40
 82
-00
-1a
-20
+9b
+a5
+e0
+38
+b3
+1e
+69
+0f
 a2
-01
-1a
-60
-a6
-01
-c2
-00
-01
-9c
-1a
-42
+83
+dd
+df
+12
+21
+77
+bd
+ea
+ad
+11
 04
+46
+ef
+b3
+cd
+7e
+19
 00
-20
-60
-00
-00
-20
-40
-6b
-3a
-20
-40
-6b
-75
-20
-20
-6b
-38
-58
-00
-62
-35
-67
-e1
-45
-f8
-58
-00
-62
-2b
-67
-e1
-45
-fa
-58
-00
-01
-b1
-67
+8b
 e1
-43
-e9
-20
-20
-53
-f3
-20
-60
-00
-00
-20
-40
-02
-b4
+75
+72
+1a
+b7
+7f
+9e
+ee
 6f
-e4
-47
-13
-c2
+dc
+9a
+22
+92
 89
+99
+12
+90
+b4
 dd
-60
-c2
-89
-5d
-6e
-c2
-8a
-01
-b8
-20
-60
-00
-00
-6f
-e0
-c6
-66
-67
-e0
+3c
+d9
+dd
+d0
+23
+2b
+0b
 ca
-06
-20
-40
-5e
-43
-20
-40
-5d
-b4
-20
-40
-01
-ce
-20
-40
-5d
-cc
-20
-40
-01
+0a
+48
+a2
+8f
+05
+c5
+f3
+73
+14
+ac
+21
+e7
 d4
-20
-20
-5d
-aa
-6f
+4d
+52
+ba
+4b
+61
+47
+72
+f4
+fd
+b3
 e1
-46
-8e
-d8
-40
-aa
-55
+18
+41
+ba
+c0
+bb
+8d
+9d
+9f
+da
+9f
+a8
+90
+19
+c2
+f5
+37
+ce
+64
+ee
+fe
+14
+3e
+dc
+99
+d3
+51
+48
+b1
+d9
 98
-46
-7c
-00
-20
+d4
+fc
+ee
+18
+31
+be
+47
+25
+15
+29
+a8
+18
 22
-82
-41
-60
-49
-46
-8e
-20
-40
-5c
-9c
-6f
-e0
-c9
-a1
-67
-e0
-c6
-66
-20
-40
-5c
-8c
-58
-00
+51
+7a
+b0
+84
+23
+1b
+dd
+91
+51
+43
+f6
+70
+68
+8a
+77
+15
+d1
+2b
+a0
+e5
+19
+f2
+2a
+48
+18
+f9
+63
+bc
+7a
 11
-22
-67
-e1
-46
-95
-6f
-e0
-ca
-06
-67
+80
+e6
+d4
+c4
+2f
+84
+79
+63
+f5
+09
+f3
+0f
+61
+f0
+94
+b9
+b9
+d6
+f6
+0b
 e0
-c6
-66
-20
+38
+2f
+ee
 60
-00
-00
-6f
-e0
-c6
-66
-c0
-00
+63
+4d
+c1
+64
+6d
+83
+b9
+ca
+48
+e3
+40
+85
+4c
+86
 01
+24
+0e
+92
 cb
-c0
-02
-01
-d2
-20
-60
-00
-00
+61
+0e
+51
 70
-46
-66
-00
-20
-60
-00
-00
+8a
+d2
+65
+45
+77
 6f
-e0
-c6
-66
-c1
-00
-00
-00
-6a
-41
-49
-fe
-1a
-42
-26
-00
-20
-40
-5e
-3d
+e6
 6f
-e1
-49
-e0
-20
-3a
-01
-e2
-67
-e1
-49
+8a
+ce
+43
+c0
+7f
+55
+2d
+4d
+d3
+54
+bb
+43
 de
-1a
+b9
+51
+9e
+b6
+a4
+5e
+19
+a1
+a5
+9d
+f4
+29
+e6
+9e
+ae
+ab
 60
-a6
-02
-6f
-e1
-4a
-00
-9a
-66
-7c
-00
-24
-21
-01
-e2
-1a
+14
 62
-24
-00
-20
-20
-01
-d8
-6f
-e1
-49
-de
+9e
+85
+ad
+d4
+93
+4a
+aa
+fa
+db
+fa
+ae
+e0
+63
+f8
+07
+8d
+ce
+5b
+bd
+10
+48
+6c
+98
+45
+a5
+08
+29
 67
-e1
-46
-95
-20
-60
-00
-00
+05
+8c
+f3
+8a
+54
 6f
-e4
-47
+3f
+9c
+97
+1b
+da
+da
+28
+0d
+99
+14
+df
+7d
+37
+e9
+f0
+ef
+25
+57
+a0
+af
+e2
+41
+d5
+8d
+ab
+79
+d0
+48
+55
 13
+04
+09
+24
+10
+ca
+ae
+64
+81
+9f
 c2
-89
-dc
-b1
-c2
-89
-5c
-b9
-c2
-8a
-01
+a2
+63
+e0
+56
+9e
+9d
+d4
+84
+ca
+5a
+21
+d2
+5e
+47
+a0
+68
+bd
+6c
+87
+44
+ad
+c4
+f3
+07
 ea
-20
-60
-00
-00
-20
-40
-01
-ed
-20
-40
-01
+ee
+c8
+e3
+d9
+d6
+cc
+45
+22
+2d
+54
+05
+0f
+0c
+b4
+a0
+9b
+a9
+30
+bd
+58
+02
+a9
+ba
+ca
+52
+4d
+7b
+e5
+82
+f0
+70
+e4
+04
 f2
-20
-20
-5c
-c1
-6f
-e0
-c6
-66
-c1
-00
-00
-00
-c0
-00
 82
-19
-c0
-01
-02
+4e
+cd
+fd
+f2
+3b
+3a
+4b
+f0
+a1
+f8
+a7
+38
+15
+29
+1f
+8d
+7a
+e8
+9a
+9b
+15
+24
+58
+86
+29
+a3
+29
+d0
+50
+15
+18
+38
+6d
+30
 2d
-20
-60
-00
-00
+88
+50
+2a
+3e
+ae
+e3
+e1
+cb
+31
+be
+10
 6a
-41
-49
-e2
-1a
-42
-26
-00
-20
-40
-5d
-c0
+1e
+e7
 6f
-e0
-c9
-a1
-20
+10
+82
+96
+e9
+7e
+f6
+a5
+79
+0f
+34
+90
+8a
+63
+7f
+e8
+2b
+81
+e8
+57
+99
 3a
-01
-fe
-67
-e0
-c9
-a0
-1a
-60
-a6
-01
-6f
-e1
-49
+fa
+9b
+56
+ff
+fa
+32
+c5
+42
+87
 e4
-9a
-66
-7c
-00
-24
-61
-00
-00
-1a
-62
+f8
+18
+5b
+18
+cc
+6a
+0b
+af
+68
+f9
+99
+ad
+88
+3a
+93
+47
+f8
+83
+cc
+94
+1c
 24
-00
-20
-20
-01
 f4
-6f
-e0
+2a
+09
+bd
 c9
-a0
-1f
-e1
-7e
-f0
-20
-3a
-02
-08
+d2
+c1
+2e
+5a
+4d
+71
+97
+f1
+ea
+e3
+b3
+db
+8f
+2e
+95
 6f
-e0
-c6
-66
-20
-40
-02
-16
-67
-e0
-c9
-a2
-df
-20
-00
-01
-1a
-62
-24
-00
-da
-20
+eb
+1c
+74
+57
+d0
+05
+1f
+69
+74
+a5
+d4
+69
+c2
+fb
+44
+55
+81
+fc
+4e
+60
+33
+3d
+89
+90
+70
+c4
+6c
+2b
+1c
+97
+8c
+04
+04
+7b
+fc
+bb
+2a
+b9
+75
+71
+74
+72
 49
-a2
-20
-20
-6b
-45
-68
-48
-c9
-a0
-6f
-e0
-c6
-66
-20
+15
+52
+2d
+cd
+a5
 40
-02
-16
-98
-46
-7c
 00
+0f
+ba
 20
-62
-80
-00
-1f
-f2
-7e
-00
+86
 98
-40
-fe
-00
+1c
 67
-e0
-c9
-a2
-1a
-62
-7e
-00
-68
-49
-49
-e2
-98
-46
+2b
+64
+2d
+87
+7a
+85
+6d
 7c
-00
-20
-22
+79
+32
+62
+79
+5b
+fe
+88
+41
+19
+2e
+b4
+07
+12
+5d
+d1
+28
+36
+8a
+c2
 82
-04
-1a
-60
-a7
+33
+63
+6b
+7c
+c5
+48
+4a
+eb
+a9
+d6
+da
+44
+0a
+94
+95
+ba
+55
+dd
+bc
+c6
+f4
+35
+15
+9e
+4d
+31
+81
+03
+08
+e2
+3f
+e2
+66
+9f
+9a
+d6
+da
+77
 ff
-20
-20
-02
+ed
+99
+5c
+42
+dd
+22
+e3
+7b
+24
+2b
+cb
+96
+54
+19
+89
+74
+1b
+ce
+90
+2b
+79
+e9
+56
+8a
+dd
 04
+a5
+67
+8a
+ea
+7f
+e5
+61
+29
+b4
+0b
+bc
+6e
+08
 c1
-80
-00
-00
-1f
-e0
-fe
-04
-20
+95
+6b
+b4
+0f
 60
-00
-00
-6a
-41
-49
 ee
-1a
-42
-26
-00
+8d
+24
+82
+27
+b3
+87
+c3
+80
+69
+e9
+c0
+e9
+3e
+0a
+9c
+a6
+15
+ae
+a6
+cc
+6b
+bc
+31
+73
+65
+4d
+19
 20
-40
-5d
+16
+83
+89
+a3
+fe
+2b
+f9
+99
+44
 f3
-6f
-e3
-49
-b5
-20
-3a
-02
-25
-67
-e3
-49
-af
-1a
-60
-a6
-06
-6f
-e1
-49
+9c
+c2
+96
+b2
 f0
-9a
-66
-7c
-00
-24
-61
-00
-00
-1a
+fc
+75
+cb
+72
+27
+d8
+be
+01
+f7
+14
 62
-24
-00
-20
-20
-02
-1b
-6f
+f6
 e3
-49
-af
-68
-4b
-46
-6e
-98
-46
-7c
-00
-20
-62
-80
-00
+0f
+a6
+db
+c2
+7d
 df
-20
-00
-06
-da
-20
-46
-6e
-1a
-62
+f1
+96
+94
+b4
+f5
+1c
+7b
+5f
+e0
+9f
+b1
+99
+22
+10
+2b
+94
+27
+79
+ff
+a0
+25
 24
-00
-20
-20
-6b
-45
-6a
-41
-49
-f6
-1a
-42
-26
-00
-20
-40
+b9
+fa
+56
+ae
+9a
+60
+67
+21
+ce
+e0
+0b
+bb
+61
+11
+1f
+ee
+8a
+d7
+34
+b1
+56
+6c
+b4
+37
+be
+ca
+c5
+f1
+e5
+18
+4f
+e8
+03
+b7
+10
 5e
-17
-6f
-e3
-49
-cd
-20
-3a
-02
+c1
+38
+b8
+d6
 39
-67
-e3
-49
-c7
-1a
-60
-a6
+68
+ff
+4b
+59
+9e
+85
+3a
+92
+cd
+c0
+65
+34
+e5
+cf
+e0
+05
+b3
+10
+41
+4d
+1c
+fc
+54
+51
 06
-6f
-e1
-49
+95
+83
+21
+78
+c8
+1e
+d1
+76
+ff
+cc
+ad
 f8
-9a
-66
-7c
-00
-24
-61
-00
-00
-1a
-62
-24
-00
-20
-20
-02
-2f
-6f
-e3
-49
-c7
-68
+52
+f4
+9b
+74
+f9
+77
+df
 4b
-46
+48
+70
+4a
+ff
+d0
+41
 7b
-98
-46
-7c
-00
-20
 62
-80
-00
-df
-20
-00
-06
+21
 da
-20
-46
-7b
-1a
-62
+3d
+ae
+3d
+9a
+5b
+04
+1b
+86
+94
+6e
+8b
+8e
+0c
+36
+8b
+b2
+69
 24
-00
-20
-20
+99
+75
+e8
+12
+03
+a1
+67
+ac
+15
+eb
+9f
 6b
-45
-20
-40
-02
-44
-20
-40
-02
-5a
-20
-20
-5c
-8f
-6f
-e0
-c6
-66
+4d
 c1
-00
-00
-00
-c0
-00
-82
-49
-c0
+c9
+05
+a1
+6b
+ae
+14
+2b
+e5
 01
-02
-50
-20
-60
-00
-00
-6f
-e3
-46
-6e
-68
+d9
 4b
-46
-e6
-98
-46
+ac
+fe
+65
+55
+2a
+c9
+73
+c4
+8f
+91
+2e
+75
+f9
+2a
 7c
-00
+98
+b1
+a1
+7b
+ad
+fa
+06
+4a
+6a
+3f
+67
+0d
+ee
+7e
 24
-62
-80
-00
-6f
-e3
+a6
+3e
 42
+cb
+a9
+21
+bf
+4c
 db
-67
-e3
+bb
+f2
+c4
+45
+95
+50
+db
+3c
+3a
+fe
+df
+d3
+43
+db
+c6
+3d
+bc
+1b
+2f
+5c
+9e
+b3
+60
+7d
+c4
+79
+ab
+88
+de
+c3
+c1
+79
+88
+93
 46
+3a
+35
+44
+24
+a3
+84
+ac
+12
+bf
+fe
+c4
+8e
+b2
+72
+17
+d8
+2d
+f4
+41
+0f
+70
+35
+78
+3b
+7d
+1c
+a8
+71
+a5
+55
+39
+61
+ac
+e7
 6e
-20
+70
+07
+d9
+0d
+93
+1d
+9c
+a7
+a6
+db
+f8
+cf
+65
+43
+a1
 60
-00
-00
+a6
+12
 6f
-e3
-46
-6e
-68
+f6
+f3
+cf
+a6
+ae
+01
+2d
+71
+17
+5e
+6c
+47
+b1
+1b
+69
+3e
+ad
+d1
+15
+11
+82
+63
+61
 4b
-46
-e6
-98
-46
-7c
 00
-24
-62
+66
+14
+bd
+71
+38
+5d
+e4
+25
+d8
+2d
+88
+d7
+6a
+71
+61
+36
+55
+1c
+1a
+97
+bb
+e1
+52
+1d
+0a
+ea
+43
+ec
+05
+6d
+16
+0c
+8b
+4e
+ad
+3b
+e2
+08
+9d
+d7
+4a
+e1
+14
+ce
+07
+77
+b0
+49
+45
+44
+84
+f7
+ac
+31
+86
+a7
+ec
+bd
+45
+f7
+b4
+e2
+9e
+50
+d2
+79
+61
+9c
 80
-00
-6f
-e3
+2b
+3e
+aa
+fc
+d2
+2d
+a9
+a5
+27
+0b
+9a
+75
+3b
+ea
+ef
+c2
+b8
+90
+f5
+3e
 42
-db
-1f
-e0
-ff
-00
-67
-e3
-46
-6e
-20
-60
-00
-00
-20
-40
-02
-5a
-20
-20
-5a
+50
 9c
-6f
-e4
-47
-13
-c3
+83
+7a
+15
+3d
+38
+26
 0a
-5c
-6f
-6f
-e0
-c6
-66
-c1
-00
-00
-00
-c0
+ca
+6c
+1f
+96
+5f
+13
+95
+75
+6c
+7d
+7d
+b5
+ef
+b7
+54
+d5
+40
+e2
+2d
+74
+0f
+95
+fb
+86
+8e
+b8
+dd
 00
-82
-61
-c0
-01
-02
+3a
+e0
+09
+5b
 66
-20
+90
+5d
+d1
+73
+2a
+3b
+dd
+b7
+05
+3c
+39
+1c
+de
+8c
+0f
+3e
 60
-00
-00
-6f
-e3
-46
-68
-67
-e3
+0d
+bc
+20
+dd
+a3
+b5
+b0
+5e
+6b
+14
+5b
+5f
+94
+e8
+0c
+12
 41
-16
-6f
-e3
-46
-6e
-67
-e3
-42
+a1
 db
-20
-60
-00
-00
+19
+2b
+bc
+ec
+b4
+54
+bb
+48
+28
+c5
+57
+48
+81
+f5
+92
+dd
+eb
+d6
+85
+94
+0a
+39
+9f
+b5
+88
+b0
+91
+c9
+dd
+80
+18
+91
 6f
-e3
-46
+31
+95
+3a
+bc
+90
+ed
+f8
 75
-67
-e3
-41
+b3
+95
+e7
+74
 16
-6f
-e3
-46
-7b
-67
-e3
-42
-db
-20
-60
-00
-00
-6f
+35
+9d
+5b
+71
+d0
+e7
+8c
+0e
+0e
 e4
-47
-13
-c4
+30
+3b
+98
+88
+0d
+b5
+d6
+8c
+92
+71
+b6
+b4
 01
-00
-00
-c3
+ea
+90
+a2
+ea
+0f
+0c
+d1
+ea
 0a
-5c
-43
-d8
-e0
-00
-02
-20
-40
-5f
-04
-20
-40
-5c
-4a
 20
-40
-02
-73
-20
-20
-5c
-a3
-6f
-e0
-c6
-66
-c0
-00
-82
-77
-c0
-01
-02
-7c
-20
-60
-00
-00
-6f
-e3
-01
-78
-67
-e3
-46
-68
-6f
-e3
-42
-db
-67
-e3
+b2
+49
+52
 46
 6e
-20
-60
-00
-00
-6f
-e3
-01
-78
-67
-e3
-46
-75
-6f
-e3
-42
+4d
+30
+51
+8f
+e0
+c4
+e8
+ab
+31
 db
-67
-e3
-46
-7b
-20
+6d
 60
-00
-00
-20
-40
-02
-83
-20
-20
-5b
-86
-da
+39
+0d
+0c
+f5
+46
+c4
+a7
+3c
+06
+25
+5d
+d8
+b3
+a4
+b0
+15
+74
 60
-4a
-05
-da
-40
-5a
-ef
-20
-20
-42
-e0
-20
-40
-59
-ed
-20
-20
-5c
-1b
-1a
-62
-7e
-00
-c0
-20
-02
-92
+09
+19
+f2
+28
+8d
+36
+44
 c0
-0a
-82
+65
+e2
+8d
+fb
+45
+11
+51
+33
+63
+cc
+05
+d0
+03
+ef
+d9
+d8
+6c
+54
+14
+58
+5f
+cf
+60
+5b
+03
+86
+7d
+99
+44
 97
+32
 c0
-1e
-02
-9b
-c0
-1c
-82
-ac
-c0
-1d
-02
-af
-c0
-0a
-02
-90
-20
-20
-5a
-c3
-20
-40
-59
-e7
-20
-20
-5a
-d0
-6f
-e0
+32
+51
+5e
 ca
-04
-24
+76
+48
+ef
+b6
+48
+69
+89
+3b
+f8
+98
+65
+bc
+63
+d8
+9c
+e7
+df
+9b
+ef
+14
+df
+d3
+97
+a8
+84
+cd
+11
 7a
-00
-00
-70
-4a
-04
-01
+64
+0f
+85
+a6
+d9
+ec
+23
 70
-4a
-05
-1e
-20
-60
-00
-00
-58
-00
-00
-00
-67
-e0
-ca
-04
+5a
+98
+64
+df
+a9
+bd
+76
+9a
+f0
+92
+31
+8b
+e3
+0b
+87
+b6
+c7
 67
+a6
 e0
-ca
+3b
+7e
+42
+ab
+6a
+1a
+27
+a3
+42
+f8
+da
+d1
+23
+9e
+6c
+17
+87
+4d
+81
+d2
+c3
+24
+89
 05
-20
-20
-5a
-e0
-6f
-e2
-45
-8f
-67
-e2
+92
+15
+9e
+e5
+44
+fb
+96
+09
+9c
+71
 45
-e8
-67
-e2
-46
-91
-20
-40
-35
-5a
-20
-40
-5c
-0b
-20
-40
-61
-8e
-20
-40
-5a
-73
-70
+b3
+c8
+f7
 47
-7d
-00
-70
-45
-fc
-00
-70
-45
-e2
-00
-6f
-e2
-45
-e8
-68
-4a
-45
-e4
+b4
+65
+d1
+a2
+4c
+ce
+6c
+7f
+9c
+cd
+1c
+6e
+21
 98
-46
-7c
-00
+7d
+5c
+af
+9e
+4c
+02
+c5
+8b
+89
+be
+0d
+13
+a6
+f8
+73
+67
 20
-62
+92
+06
+2a
+cf
+b3
+39
 80
-00
-20
-40
-60
+c7
+59
+e2
+12
+9b
+0b
+93
+7a
+a2
+f4
+41
+ed
+bb
+0d
+64
+8b
+52
+a3
+17
+fb
+1d
+3c
+0e
+e9
+91
+b6
+23
+ea
+0e
+96
+3a
+0c
+48
+e6
+ef
+b8
+db
+49
 16
-20
-40
-02
-b7
-20
-20
-60
-42
-20
+82
+5e
+b9
+e6
+f5
+1d
 40
-60
+25
+ef
+9c
+f6
+74
+f1
+85
+ea
+15
+3b
+2d
+fb
+0a
+0a
+33
+3f
+bc
 16
-20
-40
-02
-b7
-20
-20
-60
-84
-20
-40
+cb
+bd
+d2
+b8
+8d
+74
+e9
+a4
+2b
+ed
+70
+fc
+d7
+1a
+7d
+37
+b8
 60
-16
+fe
+65
+3a
+f1
+b8
+11
+0e
+cb
+3a
 20
-40
-02
-b7
-6f
-e0
-c8
+c6
+80
 7a
+c4
+f5
+d7
+b1
+36
+e4
+6a
+6e
+d1
+a3
+7d
+c0
+4f
+8c
+c5
+a7
+6f
+a2
+6a
+df
+e5
+fb
+01
+2d
+6b
+4c
+15
+ba
+76
+98
+6f
+0a
+60
+1a
+08
+db
+9e
+5b
+f2
+3a
+f3
+cd
+df
+51
+d4
+1b
+90
+63
+78
+c0
+de
+76
+98
+1d
+99
+49
+69
+3f
+a8
+b1
+bb
+86
+1c
+c6
+9b
+cc
+a2
+ea
+6e
+70
+f1
+f0
+59
+22
+6c
+a3
+d4
+46
+8f
+5d
+0f
+45
+bd
 c1
-00
-80
-00
-20
-20
+a5
+67
+77
+57
 60
+da
+7c
+ea
+83
+dd
+12
+c4
+f1
+ca
+75
+da
+76
+c0
+4d
+66
+7e
 53
-6f
-e0
-c1
+ef
+a5
+84
+0c
+2f
+17
+da
+d1
+32
+6e
+d2
+11
+79
+ac
+41
+81
+03
+f4
+d5
+73
+96
+3f
+0d
+1c
+05
+dd
+a8
+13
+b1
+a5
+c6
+f8
+70
+57
+37
+b1
+f4
+58
+77
+e6
+b2
+5c
+42
+66
+c6
+1e
 41
-67
+af
+cd
+5b
+fa
+cc
+7f
+2a
+50
+e3
+ba
+3a
+dc
+70
+12
+a1
+52
+31
+5f
+25
 e0
+49
+10
+f5
+f6
+2b
+59
 ca
-07
-20
-60
-00
-00
-6f
-e0
+dd
+37
+37
+99
+b8
+58
+8e
+8a
+f5
+f2
+dd
+7b
+9b
+74
+dc
+fa
+5e
+bd
+43
+c6
+96
+42
+63
+ec
+b2
+50
+d9
+54
+38
+14
+01
+fd
+79
+c0
+fe
+6a
+fa
+a2
+dd
+4f
+61
 ca
-07
-67
-e0
-c1
-41
-20
-60
-00
-00
-20
-40
+f4
+6a
+d1
+93
+e6
+a4
+c8
+3b
+5b
+57
+db
+8d
+43
+7d
+b1
+a0
+f4
+9b
+a3
+c9
+f0
+f1
 62
-0e
-20
-40
-78
-aa
-20
-40
-02
-be
-20
-20
-5e
 61
+d3
+33
+90
 6f
-e0
-c6
-49
+fe
+93
+74
+da
+8c
+56
+b0
+43
+14
+63
+92
+03
+df
+19
 c1
+e6
+8e
+31
+b3
+54
+b9
+96
+be
+82
+76
+1b
+14
+64
+45
+1b
+d6
+6b
+2c
+d3
+ca
 7f
-80
-00
-da
-20
-00
-00
-70
-49
-77
-05
 68
-48
-c6
-49
-20
-40
-02
-c5
-20
-20
-56
+83
+b0
+9f
+b8
+54
+a0
+f8
+43
+71
+9b
+0e
+ec
+ca
+84
+86
+94
+d2
+bc
 c1
-6f
+57
+62
+4c
+b0
+a7
+c1
+38
+db
+92
+a1
+41
+6e
+4e
 e4
-47
-13
-c2
-95
-d6
-de
+53
+ab
+59
+68
 6f
-e0
+e2
+11
+15
+e9
+e5
+1c
+f3
+b6
+63
+78
+21
+3f
+2b
+01
+25
+a5
+e6
+4e
+79
+23
+90
+19
+83
+77
+16
+8b
+dc
+19
+eb
+5c
+75
+f9
+ab
+2a
+b0
+b0
+a7
+a8
+b8
+f6
 c9
-74
-1f
-e2
-26
-00
-6f
-e0
-c6
-54
-c0
-7f
+88
+e3
+19
+92
 82
+a3
+a2
+43
+7e
+4d
+66
 cc
-20
-20
-56
-ce
-6f
-e0
 c6
-49
+a2
+db
 20
-40
+a9
+18
+dd
+3d
+1d
+a0
+35
+a4
+5c
+de
+b5
+e3
+2a
+32
+0a
+15
+30
 59
-46
-68
-48
-c6
-49
-20
-20
-02
-d0
-1a
-62
-7e
-00
-67
-e0
+72
+f8
+1c
+e6
+44
+81
+23
 c9
-78
-1f
-e3
-fe
-00
-1f
-e2
-24
-00
-18
-42
-26
-00
-20
-40
-55
-b1
+e1
+17
+17
+49
+cd
+b5
+d3
+d3
+cb
+ca
+be
+3a
+87
+7d
 1a
-62
-04
-00
-20
+77
+50
 40
-6e
+65
+85
+6a
+a2
+e8
+fe
+f4
+6b
 e6
-7d
-20
+34
+21
+11
+54
+80
+96
+6a
+71
+df
+0f
+dd
+50
+50
+76
+ab
+f7
+4f
+90
+bb
+e0
+61
 a4
-00
-20
-40
-59
+e7
+dc
+89
+96
+65
+95
+3c
+e6
+91
+6a
+87
 3d
-20
-20
-59
-29
-20
-40
-36
-b4
 24
-74
-00
-00
-20
-40
-36
+d1
+72
+37
+04
+f2
 be
-20
-40
-02
-e1
-6f
+ff
+65
+d0
+f6
+01
+09
+99
+f8
+96
+a5
+43
+53
+3d
+9d
 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
+4c
+ea
+bf
+a5
+3b
+64
+84
+d3
+02
+31
+8e
+10
+fa
 1e
-20
-60
-00
-00
-70
-46
-00
+39
+be
+c3
+68
+80
+a3
+fb
+2f
+13
+1a
+a2
+1a
+07
+b5
+eb
+81
 00
-20
-40
-36
+7f
+be
+4f
+c8
+5b
+83
+a6
+fb
+b7
 47
+3b
+b5
+65
+89
+cc
 5f
+fe
+57
+fa
+81
+c2
+d9
+da
+0a
+f4
+b9
+f9
+2c
+68
+89
+49
+28
+d0
+d3
+94
+71
+85
+37
+8f
+21
+e5
+c3
+a2
 ff
-ff
-ff
-67
-e2
-45
-af
+2b
+c9
+e3
+88
+81
+ee
+c0
+3a
+ee
+b5
+91
+5f
+8b
+39
+b1
 58
+83
+10
+69
+d6
+53
+32
+7a
 00
-00
-00
-67
-e3
-c8
-46
-70
-47
-3f
+81
+8f
+c2
+c9
+79
+56
+a8
+b9
+71
+b5
+23
+f0
+ba
+e7
 01
-20
-40
-59
-ed
-20
-20
-62
+33
+b8
+71
+df
+77
+7a
+af
+91
+34
+38
+3e
+9f
+ad
+0c
+23
+23
+5d
+b9
+ab
+51
+5b
+af
+9d
+27
+bf
+06
+ca
+16
+d1
+e9
+4a
 2b
-20
-40
-5a
-92
-20
-40
-02
-e1
-20
-40
-56
-a9
-68
-48
-c6
-54
-20
-40
-6e
-f7
-68
-48
-c6
-54
-20
-40
-6e
-d3
-6f
-e0
-c6
-4d
-20
-40
-59
-43
-20
-20
-54
+63
+a8
+90
+07
+04
+8a
+e4
 df
-c6
-93
-00
-00
-20
-40
-56
-01
-24
-74
-00
-00
-6f
-e0
+97
+13
 c7
-7c
-70
-47
-7c
-00
-24
-5a
-03
+18
+17
+f5
+fd
+31
+ae
+87
+2e
+6c
+ea
+d8
+7b
 01
-20
-20
-60
-9d
-20
+c4
+ac
+ef
+d6
+d0
+45
 40
-02
-e1
-20
-20
+9d
+ec
+84
+50
+4f
+02
+da
+9b
+35
+fd
+39
+f9
+64
 01
-99
-20
-40
-59
-58
-c0
-18
-59
-5f
-c0
-18
+ab
+1a
+45
 d9
-c6
-c0
+97
+b3
+8f
+0e
+9c
 2c
-03
-08
-20
-20
-59
-52
-20
-40
-59
-e7
-6f
-e0
-c8
-5a
-c0
+d1
+02
+55
+be
+f2
+d5
+9c
+ac
+61
+b3
+fa
+ed
+11
+bb
+65
+4d
+c4
+fd
+15
+3d
+df
+de
 2c
-83
-0c
-20
-20
-59
-5f
+7f
+fb
+ba
+76
+72
+af
+6e
+37
 70
-49
-57
-0b
-da
-60
-4a
-0b
-20
-20
-59
-95
-78
-54
-7c
-00
-58
-00
-00
-00
+b6
+3f
+65
+2a
+f0
+42
+a4
+51
+44
+12
 67
-e3
-48
-47
-20
-40
-03
-14
-20
-20
-56
-06
-6f
-e0
-c4
-20
-c1
-80
+ab
 00
+41
+90
+c3
+43
+a8
+6c
+0e
+ec
+6b
+71
 00
-6f
-e0
+e7
+3f
+f9
+86
+3d
+7c
+8a
+75
+6c
+73
 c9
-57
-c0
-05
-83
-19
-20
-20
-59
-f8
-20
-40
-5a
+c2
+f3
+fb
+79
+27
+e1
+7e
+9a
 6d
-6f
-e0
-c6
-59
-c0
-7f
-83
-1f
-68
-48
-c6
-59
-20
-40
+bd
+d0
+ae
+35
+13
+25
+15
+4c
+88
+8b
+43
+d9
+6d
+0b
+1d
+bb
+7b
+9c
+eb
+0c
+c9
+0c
+fe
+b1
 6e
-e6
-24
-60
-80
-00
-58
-00
-00
-00
-20
-40
-69
-e5
-c0
+82
+4f
 ac
-59
+47
+a7
+c7
+06
+98
+78
+35
+66
+0f
+c0
+be
+88
+5b
+f5
+fd
+36
+d0
+d8
+7f
+9c
 55
-20
-20
-5a
-2f
-83
-03
+63
+9b
+23
+ad
+13
+34
+ce
+35
+6a
 aa
 55
 40
 00
 00
 40
-04
+05
 00
-32
+73
 07
-20
+a0
 00
 00
 00
@@ -3246,12 +5488,12 @@
 00
 00
 00
-03
-08
+d7
+18
 84
-b2
-5d
-60
+f2
+7d
+69
 00
 00
 00
@@ -3259,22 +5501,22 @@
 00
 20
 00
-00
-14
-00
-00
-00
+60
+04
 00
 00
 00
 00
 00
 00
+10
+04
+70
 00
 00
 06
 00
-20
+30
 00
 00
 00
@@ -3283,8 +5525,8 @@
 00
 00
 00
-40
-20
+45
+a4
 00
 00
 00
@@ -3320,8 +5562,8 @@
 06
 08
 07
-ff
-ff
+06
+07
 08
 12
 14
@@ -3505,6 +5747,15 @@
 20
 aa
 55
+03
+00
+3c
+47
+00
+00
+00
+aa
+55
 02
 00
 66
@@ -3524,26 +5775,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
@@ -3560,6 +5792,13 @@
 07
 aa
 55
+01
+00
+1f
+4b
+ff
+aa
+55
 06
 00
 e6
@@ -3576,9 +5815,9 @@
 00
 f1
 44
-02
-11
-36
+05
+22
+26
 55
 51
 61
@@ -3642,8 +5881,8 @@
 00
 43
 47
-ee
-4d
+d0
+52
 00
 80
 bb
@@ -3665,9 +5904,9 @@
 00
 4a
 47
-76
-fd
-00
+70
+11
+01
 00
 77
 01
@@ -3728,7 +5967,7 @@
 00
 db
 42
-71
+51
 81
 91
 a1
@@ -3961,51 +6200,51 @@
 00
 fa
 49
-5d
-1c
-7a
-1c
+b9
+1a
+ea
+1a
 aa
 55
 18
 00
 e2
 49
-7b
+eb
+1a
+b2
+1b
+b3
+1b
+2a
 1c
-a2
+2b
 1c
-a3
+de
 1c
-06
-1d
-07
-1d
-9c
+df
+1c
+92
 1d
-9d
+93
 1d
-32
-1e
-33
+46
 1e
-c8
+47
 1e
-c9
+fa
 1e
-5e
-1f
 aa
 55
 06
 00
 fe
 49
-5f
-1f
-c2
+fb
+1e
+ac
 1f
-c4
+ae
 1f
 aa
 55
@@ -4034,14 +6273,14 @@
 00
 41
 41
-07
+03
 aa
 55
 01
 00
 3e
 46
-9e
+94
 aa
 55
 01
@@ -4093,7 +6332,7 @@
 00
 37
 44
-01
+00
 aa
 55
 03
@@ -4169,7 +6408,7 @@
 4a
 09
 a5
-26
+46
 34
 19
 04
@@ -4219,29 +6458,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
+1a
 00
 d6
 48
@@ -4257,20 +6474,16 @@
 41
 a1
 12
-a5
-84
 a7
 ff
-b5
-d0
 b6
 00
-ff
-00
-35
+b5
 c8
-25
+a5
 af
+ff
+00
 09
 00
 ff
@@ -4331,6 +6544,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
@@ -4340,8 +6574,8 @@
 00
 c3
 40
-10
-20
+35
+3f
 64
 db
 7b
@@ -4359,7 +6593,7 @@
 00
 c9
 40
-02
+00
 08
 b4
 aa
@@ -4375,7 +6609,7 @@
 00
 1c
 41
-64
+3e
 aa
 55
 0c
@@ -4442,44 +6676,6 @@
 55
 01
 00
-07
-44
-01
-aa
-55
-01
-00
-09
-44
-0a
-aa
-55
-01
-00
-08
-44
-00
-aa
-55
-01
-00
-11
-44
-00
-aa
-55
-04
-00
-0d
-44
-00
-07
-ff
-07
-aa
-55
-01
-00
 38
 44
 a0
@@ -4526,7 +6722,8 @@
 aa
 aa
 55
-18
-5e
-cf
-48
+47
+54
+4b
+79
+20
Index: output/program.lis
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/output/program.lis	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/output/program.lis	(working copy)
@@ -1,1048 +1,1810 @@
               include "bt_format "
               org 0x0000
-0000 c284001d bbit1 8 ,pf_patch_ext 
-0001 c0010024 beq patch00_2 ,p_main_loop 
-0002 c008802d beq patch02_1 ,p_set_sync_on 
-0003 c00a0141 beq patch02_4 ,p_set_lemode 
-0004 c00a80a8 beq patch02_5 ,p_rf_rx_enable 
-0005 c00c00c0 beq patch03_0 ,p_txon 
-0006 c00c80c7 beq patch03_1 ,p_set_tx_power 
-0007 c00d003b beq patch03_2 ,p_initialize_radio_cont 
-0008 c0128189 beq patch04_5 ,p_lpm_sleep 
-0009 c03401aa beq patch0d_0 ,p_mouse_cb_fuction 
-000a c03481b2 beq patch0d_1 ,p_mouse_load_device_info_check 
-000b c03982f0 beq patch0e_3 ,p_mouse_setgpio_hibernate 
-000c c03d030f beq patch0f_2 ,p_mouse_motion 
-000d c03f82d0 beq patch0f_7 ,p_mouse_3io6key_check 
-000e c0408303 beq patch10_1 ,p_mouse_init_sensor 
-000f c0420258 beq patch10_4 ,p_mouse_buletooth_fast_conn_end 
-0010 c0428288 beq patch10_5 ,p_mouse_priority_bb_event 
-0011 c0438281 beq patch10_7 ,p_mouse_bb_event_timer 
-0012 c0440286 beq patch11_0 ,p_mouse_start_discovery 
-0013 c045026b beq patch11_2 ,p_mouse_store_remote_bdaddr 
-0014 c04601e5 beq patch11_4 ,p_mouse_store_device_info 
-0015 c04702ba beq patch11_6 ,p_mouse_idle 
-0016 c04581c0 beq patch11_3 ,p_mouse_app_initflag_check 
-0017 c04a82e7 beq patch12_5 ,p_mouse_24g_hibernate_set 
-0018 c04b02fa beq patch12_6 ,p_mouse_24g_package_data 
-0019 c06281a7 beq patch18_5 ,p_otp_read_data 
-001a c06d0112 beq patch1b_2 ,p_sadc_calibration 
-001b c06e0122 beq patch1b_4 ,p_enable_adc 
-001c 2020235a branch assert 
+0000 c284002b bbit1 8 ,pf_patch_ext 
+0001 c00002c5 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 c00a0149 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 c0128240 beq patch04_5 ,p_lpm_sleep 
+000c c01381d4 beq patch04_7 ,p_lpm_adjust_clk 
+000d c03402c0 beq patch0d_0 ,p_mouse_cb_fuction 
+000e c03482d2 beq patch0d_1 ,p_mouse_load_device_info_check 
+000f c03502ce beq patch0d_2 ,p_mouse_default_init 
+0010 c0360284 beq patch0d_4 ,p_mouse_param_init 
+0011 c037046c beq patch0d_6 ,p_mouse_start_work 
+0012 c037d4b6 beq patch0d_7 ,mouse4_0_check_reconn_target 
+0013 c03984bc beq patch0e_3 ,p_mouse_setgpio_hibernate 
+0014 c03a0234 beq patch0e_4 ,p_mouse_lpm_before_common 
+0015 c03d050d beq patch0f_2 ,p_mouse_motion 
+0016 c03f849f beq patch0f_7 ,p_mouse_3io6key_check 
+0017 c04084f2 beq patch10_1 ,p_mouse_init_sensor 
+0018 c04203b6 beq patch10_4 ,p_mouse_buletooth_fast_conn_end 
+0019 c0428401 beq patch10_5 ,p_mouse_priority_bb_event 
+001a c0430209 beq patch10_6 ,p_mouse_le 
+001b c04383df beq patch10_7 ,p_mouse_bb_event_timer 
+001c c04403ff beq patch11_0 ,p_mouse_start_discovery 
+001d c04503c9 beq patch11_2 ,p_mouse_store_remote_bdaddr 
+001e c04582ea beq patch11_3 ,p_mouse_app_initflag_check 
+001f c046030d beq patch11_4 ,p_mouse_store_device_info 
+0020 c0468373 beq patch11_5 ,p_mouse_store_dpi_info_check 
+0021 c0470487 beq patch11_6 ,p_mouse_idle 
+0022 c04804df beq patch12_0 ,p_mouse_check_select_device_by_switch 
+0023 c0498518 beq patch12_3 ,p_mouse_drawing_optima 
+0024 c04a84b3 beq patch12_5 ,p_mouse_24g_hibernate_set 
+0025 c04b04c8 beq patch12_6 ,p_mouse_24g_package_data 
+0026 c0628262 beq patch18_5 ,p_otp_read_data 
+0027 c06a8228 beq patch1a_5 ,p_gpio_set_wake_by_current_state 
+0028 c06b0221 beq patch1a_6 ,p_gpio_set_wake 
+0029 c06d0083 beq patch1b_2 ,p_sadc_calibration 
+002a 2020235a branch assert 
 
 pf_patch_ext:
-001d c01c815d beq patch27_1 ,p_le_parse 
-001e c01d0163 beq patch27_2 ,p_le_parse_l2cap 
-001f c0268161 beq patch29_5 ,p_le_init_adv 
-0020 c04b02db beq patch32_6 ,p_g24_short_sleep 
-0021 c04e80b6 beq patch33_5 ,p_g24_transmit_hop_process 
-0022 c17f8000 rtneq patch3f_7 
-0023 2020235a branch assert 
+002b c00a0169 beq patch22_4 ,p_le_slave_match 
+002c c00d0188 beq patch23_2 ,p_le_got_first_packet_new 
+002d c01201ad beq patch24_4 ,p_le_receive_rxon 
+002e c0128190 beq patch24_5 ,p_le_rx_dec 
+002f c0130195 beq patch24_6 ,p_le_rx_nopayload 
+0030 c01c81a7 beq patch27_1 ,p_le_parse 
+0031 c01d01e3 beq patch27_2 ,p_le_parse_l2cap 
+0032 c02601df beq patch29_4 ,p_le_adv_not_match 
+0033 c02681ab beq patch29_5 ,p_le_init_adv 
+0034 c0480265 beq patch32_0 ,p_g24_reconn_dispatch 
+0035 c0490279 beq patch32_2 ,p_g24_reconn_device_fail 
+0036 c04b04aa 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 c04f8291 beq patch33_7 ,p_power_ctrl_start 
+003a c17f8000 rtneq patch3f_7 
+003b 2020235a branch assert 
 
 p_main_loop:
-0024 20407552 call sp_calc_sequence_256 
-0025 20407448 call sp_calc_sequence_256_check 
-0026 20402a45 call le_advertising_dispatch 
-0027 2040202a call idle_dispatch 
-0028 204042ad call app_process_idle 
-0029 20402018 call connection_dispatch 
-002a 2040310f call g24_dispatch 
-002b 2040248c call lpm_dispatch 
-002c 20200024 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:
+0045 70890000 jam 0 ,0x8900 
+0046 20202153 branch shutdown_radio + 1 
 
 p_set_sync_on:
-002d 708a0f60 jam 0x60 ,0x8a0f 
-002e 708a10aa jam 0xaa ,0x8a10 
-002f 708a127a jam 0x7a ,0x8a12 
-0030 708a2500 jam 0x00 ,0x8a25 
-0031 708a2600 jam 0x00 ,0x8a26 
-0032 2000003c nop 60 
-0033 708a2020 jam 0x20 ,0x8a20 
-0034 708a23f5 jam 0xf5 ,0x8a23 
-0035 708a2412 jam 0x12 ,0x8a24 
-0036 708a2410 jam 0x10 ,0x8a24 
-0037 2000003c nop 60 
-0038 708a1260 jam 0x60 ,0x8a12 
-0039 708a23dd jam 0xdd ,0x8a23 
-003a 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:
-003b 7089460d jam 0x0d ,0x8946 
-003c 70896f10 jam 0x10 ,0x896f 
-003d 708a0610 jam 0x10 ,0x8a06 
-003e 708a844a jam 0x4a ,0x8a84 
-003f 708a8540 jam 0x40 ,0x8a85 
-0040 708a16fe jam 0xfe ,0x8a16 
-0041 2040007d call p_set_otp_config 
-0042 6fe0c436 fetch 1 ,mem_wdt_always_work 
-0043 205a70d7 call wdt_set_disable ,blank 
-0044 37d98200 until null ,lpo_edge 
-0045 70813b5f jam 0x5f ,0x813b 
-0046 6fe0c099 fetch 1 ,mem_fcomp_div 
-0047 c0080072 beq xtal_16m ,p_initialize_radio_16m 
-0048 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
-0049 1fe1fe04 or_into 0x04 ,pdata 
-004a 67f08a02 store 1 ,0x8a02 
-004b 70890f01 jam 0x01 ,0x890f 
-004c 708a8024 jam 0x24 ,0x8a80 
-004d 708a8162 jam 0x62 ,0x8a81 
-004e 58e61212 setarg 0xe61212 
-004f 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:
-0050 708a8660 jam 0x60 ,0x8a86 
-0051 708a8b3b jam 0x3b ,0x8a8b 
-0052 20400064 call p_dpll_on 
-0053 70804300 jam 0 ,core_config 
-0054 70804205 jam clksel_dpll ,core_clksel 
-0055 58557474 setarg 0x557474 
-0056 67f18968 store 3 ,0x8968 
-0057 7089606e jam 0x6e ,0x8960 
-0058 204000e4 call p_rx_dcoc 
-0059 2040010f call p_rfpll_aac_ghpc 
-005a 2040005e call p_set_xtal_cap 
-005b 7041480c jam system_clk_12m ,mem_system_clk 
-005c 20406f4e call sadc_calibration 
-005d 20200111 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 2040011c call p_rx_dcoc 
+0080 20400147 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:
-005e 20758000 rtn wake 
-005f 37d98200 until null ,lpo_edge 
-0060 6fe0c11c fetch 1 ,mem_xtal_c_sel 
-0061 67f0813a store 1 ,core_xtal_cap 
-0062 37d98200 until null ,lpo_edge 
-0063 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:
-0064 6fe0c099 fetch 1 ,mem_fcomp_div 
-0065 c00c006a beq xtal_24m ,p_dpll_on_24m 
-0066 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
-0067 1fe1fe06 or_into 0x06 ,pdata 
-0068 67f08a02 store 1 ,0x8a02 
-0069 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:
-006a 708a00d8 jam 0xd8 ,0x8a00 
-006b 2000003c nop 60 
-006c 708a01a0 jam 0xa0 ,0x8a01 
-006d 708a00df jam 0xdf ,0x8a00 
-006e 708a01fa jam 0xfa ,0x8a01 
-006f 20000014 nop 20 
-0070 708a009f jam 0x9f ,0x8a00 
-0071 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:
-0072 6fe0c438 fetch 1 ,mem_ring_ibias_trim 
-0073 1fe1fe06 or_into 0x06 ,pdata 
-0074 67f08a02 store 1 ,0x8a02 
-0075 70890f00 jam 0x00 ,0x890f 
-0076 708a8023 jam 0x23 ,0x8a80 
-0077 708a81b0 jam 0xb0 ,0x8a81 
-0078 58e40909 setarg 0xe40909 
-0079 67f18a73 store 3 ,0x8a73 
-007a 708a762a jam 0x2a ,0x8a76 
-007b 70890204 jam 0x04 ,0x8902 
-007c 20200050 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:
-007d 203580a4 branch p_set_otp_config_wake ,wake 
-007e 6fe2020d fetch 4 ,mem_otp_core_ldo 
-007f 207a0000 rtn blank 
-0080 37d98200 until null ,lpo_edge 
-0081 6ff08136 fetch 1 ,0x8136 
-0082 1fe17ef0 and pdata ,0xf0 ,pdata 
-0083 6848820d fetcht 1 ,mem_otp_core_ldo 
-0084 9841fe00 ior temp ,pdata 
-0085 67f08136 store 1 ,0x8136 
-0086 37d98200 until null ,lpo_edge 
-0087 6ff08138 fetch 1 ,0x8138 
-0088 1fe17e07 and pdata ,0x7 ,pdata 
-0089 6848820e fetcht 1 ,mem_otp_verf_bg 
-008a 18498400 lshift3 temp ,temp 
-008b 9841fe00 ior temp ,pdata 
-008c 67f08138 store 1 ,0x8138 
-008d 37d98200 until null ,lpo_edge 
-
-p_set_otp_config2:
-008e 6ff08acb fetch 1 ,0x8acb 
-008f 1fe17ef0 and pdata ,0xf0 ,pdata 
-0090 6848820f fetcht 1 ,mem_otp_charge_pump 
-0091 6048c15b storet 1 ,mem_otp_charge_pump_x 
-0092 9841fe00 ior temp ,pdata 
-0093 67f08acb store 1 ,0x8acb 
-0094 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
-0095 67e0c15c store 1 ,mem_otp_dpll_ibais_x 
-0096 2feffe03 isolate1 3 ,pdata 
-0097 6ff08a06 fetch 1 ,0x8a06 
-0098 7920fe07 setflag true ,7 ,pdata 
-0099 67f08a06 store 1 ,0x8a06 
-009a 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
-009b 1fe10407 and pdata ,7 ,temp 
-009c 18520400 lshift4 temp ,temp 
-009d 18438400 lshift temp ,temp 
-009e 6048c438 storet 1 ,mem_ring_ibias_trim 
-009f 6ff08a02 fetch 1 ,0x8a02 
-00a0 1fe17e1f and pdata ,0x1f ,pdata 
-00a1 9841fe00 ior temp ,pdata 
-00a2 67f08a02 store 1 ,0x8a02 
-00a3 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:
-00a4 6fe1415b fetch 2 ,mem_otp_charge_pump_x 
-00a5 207a0000 rtn blank 
-00a6 67e1020f store 2 ,mem_otp_charge_pump 
-00a7 2020008e 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:
-00a8 2040686f call rf_debug_rx_gpio_high 
-00a9 204021ba call rf_rx_agc_set 
-00aa 18002a08 force 8 ,radio_ctrl 
-00ab 18002a00 force 0 ,radio_ctrl 
-00ac 580aaada setarg 0x0aaada 
-00ad 67f18a0f store 3 ,0x8a0f 
-00ae 708a2540 jam 0x40 ,0x8a25 
-00af 708a2610 jam 0x10 ,0x8a26 
-00b0 2000003c nop 60 
-00b1 708a01fb jam 0xfb ,0x8a01 
-00b2 708a25ff jam 0xff ,0x8a25 
-00b3 708a2630 jam 0x30 ,0x8a26 
-00b4 708a16fe jam 0xfe ,0x8a16 
-00b5 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:
+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:
+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 2040048b call p_mouse_dpi_check_retransmit 
+00fd 20206102 branch mouse_g24_retransmit_event_set 
 
 p_g24_transmit_hop_process:
-00b6 6848c601 fetcht 1 ,mem_24g_retry 
-00b7 6fe0c621 fetch 1 ,mem_24g_fast_hop_count 
-00b8 98467c00 isub temp ,null 
-00b9 242100bb nbranch p_g24_tx_fast_hop ,positive 
-00ba 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:
-00bb 6fe2458f fetch 4 ,mem_24g_addr 
-00bc 684a45e4 fetcht 4 ,mem_24g_fast_conn_addr 
-00bd 98467c00 isub temp ,null 
-00be 2022b222 branch g24_ch ,zero 
-00bf 2020369a branch g24_tx_fast_hop 
+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 204002b6 call p_power_ctrl_txpower_incrs 
+0108 2020369b branch g24_tx_fast_hop + 1 
 
 p_txon:
-00c0 580aaa7e setarg 0x0aaa7e 
-00c1 67f18a0f store 3 ,0x8a0f 
-00c2 2000003c nop 60 
-00c3 708a2500 jam 0x00 ,0x8a25 
-00c4 708a260d jam 0x0d ,0x8a26 
-00c5 708a16f6 jam 0xf6 ,0x8a16 
-00c6 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:
-00c7 6fe0c141 fetch 1 ,mem_tx_power 
-00c8 c0032225 beq tx_power_6db ,set_tx_power_7db 
-00c9 c00500cf beq tx_power_10db ,p_set_tx_power_10db 
-00ca c04f00d8 beq tx_power_f30db ,p_set_tx_power_f30db 
-00cb c04f80dc beq tx_power_f35db ,p_set_tx_power_f35db 
-00cc c05000e0 beq tx_power_f40db ,p_set_tx_power_f40db 
-00cd c05500d4 beq tx_power_factory ,p_set_tx_power_factory 
-00ce 2020220e branch set_tx_power + 2 
-
-p_set_tx_power_10db:
-00cf 708a1425 jam 0x25 ,0x8a14 
-00d0 58a93f3f setarg 0xa93f3f 
-00d1 67f18a60 store 3 ,0x8a60 
-00d2 708a631f jam 0x1f ,0x8a63 
-00d3 20600000 rtn 
+0110 6fe0c141 fetch 1 ,mem_tx_power 
+0111 c0032225 beq tx_power_6db ,set_tx_power_7db 
+0112 c04f0119 beq tx_power_f30db ,p_set_tx_power_f30db 
+0113 c0550115 beq tx_power_factory ,p_set_tx_power_factory 
+0114 2020220e branch set_tx_power + 2 
 
 p_set_tx_power_factory:
-00d4 708a1417 jam 0x17 ,0x8a14 
-00d5 6fe1ca08 fetch 3 ,mem_tx_power_factory_param_new 
-00d6 67f18a60 store 3 ,0x8a60 
-00d7 2020221a branch set_tx_power_8a63_28 
+0115 708a1417 jam 0x17 ,0x8a14 
+0116 6fe1ca08 fetch 3 ,mem_tx_power_factory_param_new 
+
+p_mouse_tx_power_set:
+0117 67f18a60 store 3 ,0x8a60 
+0118 2020221a branch set_tx_power_8a63_28 
 
 p_set_tx_power_f30db:
-00d8 708a1417 jam 0x17 ,0x8a14 
-00d9 58250300 setarg 0x250300 
-00da 67f18a60 store 3 ,0x8a60 
-00db 2020221a branch set_tx_power_8a63_28 
-
-p_set_tx_power_f35db:
-00dc 708a1417 jam 0x17 ,0x8a14 
-00dd 58250100 setarg 0x250100 
-00de 67f18a60 store 3 ,0x8a60 
-00df 2020221a branch set_tx_power_8a63_28 
-
-p_set_tx_power_f40db:
-00e0 708a1417 jam 0x17 ,0x8a14 
-00e1 58250000 setarg 0x250000 
-00e2 67f18a60 store 3 ,0x8a60 
-00e3 2020221a branch set_tx_power_8a63_28 
+0119 708a1417 jam 0x17 ,0x8a14 
+011a 58250300 setarg 0x250300 
+011b 20200117 branch p_mouse_tx_power_set 
 
 p_rx_dcoc:
-00e4 20758000 rtn wake 
-00e5 20402160 call set_sync_on 
-00e6 d8400027 arg 39 ,temp 
-00e7 2040216f call set_freq_rx 
-00e8 204021a6 call rf_rx_enable 
-00e9 708a257f jam 0x7f ,0x8a25 
-00ea 708a301a jam 0x1a ,0x8a30 
-00eb 708a3178 jam 0x78 ,0x8a31 
-00ec 708a8fb2 jam 0xb2 ,0x8a8f 
-00ed 708ac200 jam 0 ,0x8ac2 
-00ee 708ac300 jam 0 ,0x8ac3 
-00ef d8e00006 arg 6 ,queue 
-00f0 20400101 call p_rx_dcoc_avg 
-00f1 2a2ffe0d isolate1 13 ,rega 
-00f2 2040211d call qset_start 
-00f3 2a4ffe0d isolate1 13 ,regb 
-00f4 2040211e call qset_p 
-00f5 d8e00005 arg 5 ,queue 
+011c 20758000 rtn wake 
+011d 20402160 call set_sync_on 
+011e d8400027 arg 39 ,temp 
+011f 2040216f call set_freq_rx 
+0120 204021a6 call rf_rx_enable 
+0121 708a257f jam 0x7f ,0x8a25 
+0122 708a301a jam 0x1a ,0x8a30 
+0123 708a3178 jam 0x78 ,0x8a31 
+0124 708a8fb2 jam 0xb2 ,0x8a8f 
+0125 708ac200 jam 0 ,0x8ac2 
+0126 708ac300 jam 0 ,0x8ac3 
+0127 d8e00006 arg 6 ,queue 
+0128 20400139 call p_rx_dcoc_avg 
+0129 2a2ffe0d isolate1 13 ,rega 
+012a 2040211d call qset_start 
+012b 2a4ffe0d isolate1 13 ,regb 
+012c 2040211e call qset_p 
+012d d8e00005 arg 5 ,queue 
 
 p_rx_dcoc_loop2:
-00f6 2040211c call qset1_p 
-00f7 2040211e call qset_p 
-00f8 20400101 call p_rx_dcoc_avg 
-00f9 d8a08ac2 arg 0x8ac2 ,contw 
-00fa 1a31fe00 rshift4 rega ,pdata 
-00fb 20402117 call qsetxor 
-00fc 1a51fe00 rshift4 regb ,pdata 
-00fd 20402117 call qsetxor 
-00fe 18e08fff increase -1 ,queue 
-00ff 202100f6 branch p_rx_dcoc_loop2 ,positive 
-0100 2020214f branch rx_dcoc_loop2 + 10 
+012e 2040211c call qset1_p 
+012f 2040211e call qset_p 
+0130 20400139 call p_rx_dcoc_avg 
+0131 d8a08ac2 arg 0x8ac2 ,contw 
+0132 1a31fe00 rshift4 rega ,pdata 
+0133 20402117 call qsetxor 
+0134 1a51fe00 rshift4 regb ,pdata 
+0135 20402117 call qsetxor 
+0136 18e08fff increase -1 ,queue 
+0137 2021012e branch p_rx_dcoc_loop2 ,positive 
+0138 2020214f branch rx_dcoc_loop2 + 10 
 
 p_rx_dcoc_avg:
-0101 2000003c nop 60 
-0102 58000f00 setarg mem_dcoc_buf 
-0103 67f10982 store 2 ,0x8982 
-0104 58000ff0 setarg mem_dcoc_buf_end 
-0105 67f10984 store 2 ,0x8984 
-0106 70898109 jam 0x9 ,0x8981 
-0107 70898103 jam 0x3 ,0x8981 
-0108 70898006 jam 0x6 ,0x8980 
-0109 2000003c nop 60 
-010a da200000 arg 0 ,rega 
-010b da400000 arg 0 ,regb 
-010c df200010 arg 16 ,loopcnt 
-010d d8c00f00 arg mem_dcoc_buf ,contr 
-010e 2020212d branch rx_dcoc_loop 
+0139 2000003c nop 60 
+013a 58000f00 setarg mem_dcoc_buf 
+013b 67f10982 store 2 ,0x8982 
+013c 58000ff0 setarg mem_dcoc_buf_end 
+013d 67f10984 store 2 ,0x8984 
+013e 70898109 jam 0x9 ,0x8981 
+013f 70898103 jam 0x3 ,0x8981 
+0140 70898006 jam 0x6 ,0x8980 
+0141 2000003c nop 60 
+0142 da200000 arg 0 ,rega 
+0143 da400000 arg 0 ,regb 
+0144 df200010 arg 16 ,loopcnt 
+0145 d8c00f00 arg mem_dcoc_buf ,contr 
+0146 2020212d branch rx_dcoc_loop 
 
 p_rfpll_aac_ghpc:
-010f 20758000 rtn wake 
-0110 20202272 branch rfpll_aac_ghpc + 1 
-
-p_dpll_ring_ibias_calc:
-0111 20600000 rtn 
-
-p_sadc_calibration:
-0112 20758000 rtn wake 
-0113 708a0777 jam 0x77 ,core_gpadc_ctrl 
-0114 708a08c9 jam 0xc9 ,core_gpadc_cfg0 
-0115 708a0b01 jam 0x01 ,core_gpadc_cfg3 
-0116 6fe0c409 fetch 1 ,mem_adc_clkdiv 
-0117 67f080cd store 1 ,core_sadc_clkdiv 
-0118 20000bb8 nop 3000 
-0119 2040013a call p_sadc_read 
-011a 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
-011b 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
-011c df200008 arg 8 ,loopcnt 
-011d 20406f58 call sadc_cal_read + 1 
-011e 6fe0c419 fetch 1 ,mem_spi_write_addr 
-011f 67e0c433 store 1 ,mem_adc_cal_c7 
-0120 6240c419 storer regb ,1 ,mem_spi_write_addr 
-0121 20600000 rtn 
-
-p_enable_adc:
-0122 20400130 call p_sadc_cal_write 
-0123 6ff08a09 fetch 1 ,core_gpadc_cfg1 
-0124 793ffe07 set0 7 ,pdata 
-0125 67f08a09 store 1 ,core_gpadc_cfg1 
-0126 708a0777 jam 0x77 ,core_gpadc_ctrl 
-0127 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
-0128 708a0b01 jam 0x01 ,core_gpadc_cfg3 
-0129 20406f90 call sadc_channel 
-012a 6fe0c409 fetch 1 ,mem_adc_clkdiv 
-012b 67f080cd store 1 ,core_sadc_clkdiv 
-012c 20000bb8 nop 3000 
-012d 2040013a call p_sadc_read 
-012e 7080cd00 jam 0 ,core_sadc_clkdiv 
-012f 20206fa1 branch sadc_dma 
-
-p_sadc_cal_write:
-0130 6ff080cc fetch 1 ,core_sadc_ctrl 
-0131 79207e01 set1 1 ,pdata 
-0132 67f080cc store 1 ,core_sadc_ctrl 
-0133 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
-0134 6fe0c433 fetch 1 ,mem_adc_cal_c7 
-0135 67e0c419 store 1 ,mem_spi_write_addr 
-0136 df200008 arg 8 ,loopcnt 
-0137 20406f67 call sadc_cal_write + 4 
-0138 6240c419 storer regb ,1 ,mem_spi_write_addr 
-0139 20600000 rtn 
-
-p_sadc_read:
-013a 7080cc03 jam 0x03 ,core_sadc_ctrl 
-
-p_sadc_read_wait:
-013b 6ff08129 fetch 1 ,core_perf_status 
-013c c302813b bbit0 saradc_done ,p_sadc_read_wait 
-013d 68590164 fetcht 2 ,core_sadc_data 
-013e 6049440a storet 2 ,mem_adc_current_value 
-013f 7080cc00 jam 0x00 ,core_sadc_ctrl 
-0140 20600000 rtn 
+0147 20758000 rtn wake 
+0148 20202272 branch rfpll_aac_ghpc + 1 
 
 p_set_lemode:
-0141 708a8211 jam 0x11 ,0x8a82 
-0142 708a8d12 jam 0x12 ,0x8a8d 
-0143 708a8e0a jam 0x0a ,0x8a8e 
-0144 6fe0c099 fetch 1 ,mem_fcomp_div 
-0145 c008015a beq xtal_16m ,p_set_lemode_2m_16m 
-0146 58005762 setarg 0x5762 
-0147 67f10907 store 2 ,0x8907 
+0149 708a8211 jam 0x11 ,0x8a82 
+014a 708a8d12 jam 0x12 ,0x8a8d 
+014b 708a8e0a jam 0x0a ,0x8a8e 
+014c 6fe0c099 fetch 1 ,mem_fcomp_div 
+014d c0080162 beq xtal_16m ,p_set_lemode_2m_16m 
+014e 58005762 setarg 0x5762 
+014f 67f10907 store 2 ,0x8907 
 
 p_set_lemode_2m:
-0148 70890103 jam 3 ,0x8901 
-0149 70893003 jam 3 ,0x8930 
-014a c6168000 rtnmark1 mark_ble_2m 
-014b 70890101 jam 1 ,0x8901 
-014c 708a8207 jam 0x07 ,0x8a82 
-014d 708a8d44 jam 0x44 ,0x8a8d 
-014e 708a8e0a jam 0x0a ,0x8a8e 
-014f 6fe0c099 fetch 1 ,mem_fcomp_div 
-0150 c0080157 beq xtal_16m ,p_set_lemode_1m_16m 
-0151 58002bb1 setarg 0x2bb1 
-0152 67f10907 store 2 ,0x8907 
+0150 70890103 jam 3 ,0x8901 
+0151 70893003 jam 3 ,0x8930 
+0152 c6168000 rtnmark1 mark_ble_2m 
+0153 70890101 jam 1 ,0x8901 
+0154 708a8207 jam 0x07 ,0x8a82 
+0155 708a8d44 jam 0x44 ,0x8a8d 
+0156 708a8e0a jam 0x0a ,0x8a8e 
+0157 6fe0c099 fetch 1 ,mem_fcomp_div 
+0158 c008015f beq xtal_16m ,p_set_lemode_1m_16m 
+0159 58002bb1 setarg 0x2bb1 
+015a 67f10907 store 2 ,0x8907 
 
 p_set_lemode_1m:
-0153 c6978000 rtnmark0 mark_ble_lr 
-0154 70893024 jam 0x24 ,0x8930 
-0155 70890105 jam 5 ,0x8901 
-0156 20600000 rtn 
+015b c6978000 rtnmark0 mark_ble_lr 
+015c 70893024 jam 0x24 ,0x8930 
+015d 70890105 jam 5 ,0x8901 
+015e 20600000 rtn 
 
 p_set_lemode_1m_16m:
-0157 58004189 setarg 0x4189 
-0158 67f10907 store 2 ,0x8907 
-0159 20200153 branch p_set_lemode_1m 
+015f 58004189 setarg 0x4189 
+0160 67f10907 store 2 ,0x8907 
+0161 2020015b branch p_set_lemode_1m 
 
 p_set_lemode_2m_16m:
-015a 58008312 setarg 0x8312 
-015b 67f10907 store 2 ,0x8907 
-015c 20200148 branch p_set_lemode_2m 
+0162 58008312 setarg 0x8312 
+0163 67f10907 store 2 ,0x8907 
+0164 20200150 branch p_set_lemode_2m 
+
+p_le_check_retransmit_timesout:
+0165 6fe0cbf9 fetch 1 ,mem_le_conn_rcv_new 
+0166 da600100 arg 256 ,regc 
+0167 9a60fe00 iadd regc ,pdata 
+0168 20600000 rtn 
+
+p_le_slave_match:
+0169 2040016b call p_le_check_retransmit 
+016a 20202563 branch le_slave_match + 1 
+
+p_le_check_retransmit:
+016b 6fe0cbfa fetch 1 ,mem_le_conn_first_rcv 
+016c 207a0000 rtn blank 
+016d 6fe0cbfb fetch 1 ,mem_le_check_retransmit_flag 
+016e 247a0000 nrtn blank 
+016f 6848cbfa fetcht 1 ,mem_le_conn_first_rcv 
+0170 6fe0cbf9 fetch 1 ,mem_le_conn_rcv_new 
+0171 98467c00 isub temp ,null 
+0172 24410165 ncall p_le_check_retransmit_timesout ,positive 
+0173 98467e00 isub temp ,pdata 
+0174 1fe67c64 sub pdata ,100 ,null 
+0175 2021017d branch p_le_check_retransmit_count ,positive 
+0176 6fe0cbfc fetch 1 ,mem_le_retransmit_cnt 
+0177 1fe67c14 sub pdata ,20 ,null 
+0178 2441017b ncall p_app_ble_disconnect ,positive 
+0179 704bfb01 jam 1 ,mem_le_check_retransmit_flag 
+017a 20600000 rtn 
+
+p_app_ble_disconnect:
+017b 704bfd01 jam 1 ,mem_le_check_retransmit_discon_flag 
+017c 2020431f branch app_ble_disconnect 
+
+p_le_check_retransmit_count:
+017d 6848817f fetcht 1 ,mem_le_arq 
+017e 6fe0804c fetch 1 ,mem_le_rxbuf_data_header 
+017f 1fe37e00 rshift pdata ,pdata 
+0180 9842fe00 ixor temp ,pdata 
+0181 2feffe02 isolate1 nesn ,pdata 
+0182 58000000 setarg 0 
+0183 6848cbfc fetcht 1 ,mem_le_retransmit_cnt 
+0184 7920fe00 setflag true ,0 ,pdata 
+0185 98408400 iadd temp ,temp 
+0186 6048cbfc storet 1 ,mem_le_retransmit_cnt 
+0187 20600000 rtn 
+
+p_le_got_first_packet_new:
+0188 6fe08005 fetch 1 ,mem_le_conn_rcv 
+0189 1fe0fe01 increase 1 ,pdata 
+018a 67e08005 store 1 ,mem_le_conn_rcv 
+018b 2436818f nbranch p_le_got_first_packet_new + 7 ,match 
+018c 6fe0cbf9 fetch 1 ,mem_le_conn_rcv_new 
+018d 1fe0fe01 increase 1 ,pdata 
+018e 67e0cbf9 store 1 ,mem_le_conn_rcv_new 
+018f 2020259b branch le_got_first_packet + 4 
+
+p_le_rx_dec:
+0190 2040281c call le_check_retransmit 
+0191 6a20804d fetchr rega ,1 ,mem_le_rxbuf_data_length 
+0192 1a20a3fc increase -4 ,rega 
+0193 242126fa nbranch le_crc_fail_consecutive ,positive 
+0194 2020268e branch le_rx_dec + 6 
+
+p_le_rx_nopayload:
+0195 09800018 parse demod ,bucket ,24 
+0196 1fef7e00 rshift32 pdata ,pdata 
+0197 1ff17e00 rshift16 pdata ,pdata 
+0198 e7e18005 istore 3 ,contw 
+0199 78287c00 enable swfine 
+019a 2040270d call le_set_until_tx_timer 
+019b 202326f6 branch le_crc_fail ,crc_failed 
+019c c59926af bmark0 mark_ble_encryption ,le_rx_match 
+019d 6fe0804d fetch 1 ,mem_le_rxbuf_data_length 
+019e 203a26af branch le_rx_match ,blank 
+019f 1fe0fffc increase -4 ,pdata 
+01a0 67e0804d store 1 ,mem_le_rxbuf_data_length 
+01a1 204072cb call wait_ccm_done 
+01a2 6ff08108 fetch 1 ,core_misc_status 
+01a3 c303a6fa bbit0 7 ,le_crc_fail_consecutive 
+01a4 1800700c force regidx_result ,regext_index 
+01a5 65e20154 storer regext ,4 ,mem_le_peer_mic 
+01a6 202026af branch le_rx_match 
 
 p_le_parse:
-015d 6fe0c334 fetch 1 ,mem_le_packet_llid 
-015e c1000000 rtneq llid_reserved 
-015f c001b04a beq llid_le_ll ,le_parse_ll 
-0160 202028e1 branch le_parse_l2cap 
+01a7 6fe0c334 fetch 1 ,mem_le_packet_llid 
+01a8 c1000000 rtneq llid_reserved 
+01a9 c001b04a beq llid_le_ll ,le_parse_ll 
+01aa 202028e1 branch le_parse_l2cap 
 
 p_le_init_adv:
-0161 793f8030 set0 mark_ble_crc_fail ,mark 
-0162 20202af6 branch le_init_adv + 1 
+01ab 793f8030 set0 mark_ble_crc_fail ,mark 
+01ac 20202af6 branch le_init_adv + 1 
+
+p_le_receive_rxon:
+01ad 204025c2 call le_prep 
+01ae c59781b3 bmark0 mark_ble_lr ,p_le_receive_nolr 
+01af 783cfc00 pulse dewhiten_code_calc 
+01b0 2000001e nop 30 
+01b1 204025c2 call le_prep 
+01b2 19699600 lshift3 timeup ,timeup 
+
+p_le_receive_nolr:
+01b3 7856fc00 disable match 
+01b4 7826fc00 enable decode_fec0 
+01b5 7830fc00 enable is_rx 
+01b6 78507c00 disable is_tx 
+01b7 19623600 copy timeup ,stop_watch 
+01b8 37c18400 correlate null ,timeout 
+01b9 203701bc branch p_le_receive_on_attempt ,attempt 
+01ba 1b420400 copy clke ,temp 
+01bb 604b000f storet 6 ,mem_sync_clke 
+
+p_le_receive_on_attempt:
+01bc 242c26fa nbranch le_unsync_end ,sync 
+01bd 78287c00 enable swfine 
+01be 6fe0c167 fetch 1 ,mem_le_tx_ifs_defference 
+01bf d8404e20 arg param_20ms_init ,temp 
+01c0 98408400 iadd temp ,temp 
+01c1 6fe0c148 fetch 1 ,mem_system_clk 
+01c2 984fb600 imul32 temp ,stop_watch 
+01c3 20406877 call rf_debug_rx_sync_line 
+01c4 20372677 branch le_receive_skip ,attempt 
+01c5 204001ca call p_calc_clke_all_modem 
+01c6 6fe08168 fetch 1 ,mem_le_state 
+01c7 c301a677 bbit0 lestate_got_first_packet ,le_receive_skip 
+01c8 2055a477 call lpm_adjust_clk ,wake 
+01c9 20202677 branch le_receive_skip 
+
+p_calc_clke_all_modem:
+01ca 684b000f fetcht 6 ,mem_sync_clke 
+01cb 1b427e00 copy clke ,pdata 
+01cc 20407d12 call clk_diff 
+01cd 1fe20400 copy pdata ,temp 
+01ce 204026ff call calc_clke_all_modem 
+01cf 1b425600 copy clke ,rege 
+01d0 1d227e00 copy clke_rt ,pdata 
+01d1 9840fe00 iadd temp ,pdata 
+01d2 1fe25200 copy pdata ,clke_rt 
+01d3 20600000 rtn 
+
+p_lpm_adjust_clk:
+01d4 c584a489 bmark0 mark_context ,lpm_clear_counter 
+01d5 684a40ad fetcht 4 ,mem_sleep_counter_all 
+01d6 dfe00600 arg 0x600 ,pdata 
+01d7 98467c00 isub temp ,null 
+01d8 20610000 rtn positive 
+01d9 18422200 copy temp ,rega 
+01da 684b000f fetcht 6 ,mem_sync_clke 
+01db 1d627e00 deposit rege 
+01dc 20407d10 call clk_diff_rt 
+01dd 1a220400 copy rega ,temp 
+01de 2020247d branch lpm_adjust_clk + 6 
+
+p_le_adv_not_match:
+01df 20402152 call shutdown_radio 
+01e0 70890000 jam 0 ,0x8900 
+01e1 793f8030 set0 mark_ble_crc_fail ,mark 
+01e2 20202ae3 branch le_adv_not_match + 1 
 
 p_le_parse_l2cap:
-0163 efe10006 ifetch 2 ,contr 
-0164 c0020166 beq le_l2cap_cid_att ,p_le_parse_att 
-0165 202028eb branch le_parse_l2cap_next + 2 
+01e3 efe10006 ifetch 2 ,contr 
+01e4 c00201e6 beq le_l2cap_cid_att ,p_le_parse_att 
+01e5 202028eb branch le_parse_l2cap_next + 2 
 
 p_le_parse_att:
-0166 efe18006 ifetch 3 ,contr 
-0167 67e1c397 store 3 ,mem_le_att_opcode 
-0168 c005016b beq attop_read_request ,p_le_parse_att_read_request 
-0169 c009017a beq attop_write_request ,p_le_parse_att_write_request 
-016a 20202b96 branch le_parse_att2 
+01e6 efe18006 ifetch 3 ,contr 
+01e7 67e1c397 store 3 ,mem_le_att_opcode 
+01e8 c00501eb beq attop_read_request ,p_le_parse_att_read_request 
+01e9 c00901fa beq attop_write_request ,p_le_parse_att_write_request 
+01ea 20202b96 branch le_parse_att2 
 
 p_le_parse_att_read_request:
-016b 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-016c c31dad19 bbit0 mouse_enable_le_battery_service_cancel ,le_parse_att_read_request 
-016d 20402dc7 call le_check_encrypt_state 
-016e 68494398 fetcht 2 ,mem_le_att_handle 
-016f 6fe0c321 fetch 1 ,mem_le_configuration 
-0170 c2818175 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
+01eb 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+01ec c31dad19 bbit0 mouse_enable_le_battery_service_cancel ,le_parse_att_read_request 
+01ed 20402dc7 call le_check_encrypt_state 
+01ee 68494398 fetcht 2 ,mem_le_att_handle 
+01ef 6fe0c321 fetch 1 ,mem_le_configuration 
+01f0 c28181f5 bbit1 bit_ble_read_auth ,p_le_send_att_read_response_check_auth 
 
 p_le_send_att_read_response:
-0171 6fe14398 fetch 2 ,mem_le_att_handle 
-0172 c0182e03 beq 0x30 ,le_send_att_error_response_notfound 
-0173 68494398 fetcht 2 ,mem_le_att_handle 
-0174 20202d1d branch le_send_att_read_response 
+01f1 6fe14398 fetch 2 ,mem_le_att_handle 
+01f2 c0182e03 beq 0x30 ,le_send_att_error_response_notfound 
+01f3 68494398 fetcht 2 ,mem_le_att_handle 
+01f4 20202d1d branch le_send_att_read_response 
 
 p_le_send_att_read_response_check_auth:
-0175 6fe14332 fetch 2 ,mem_le_pairing_handle 
-0176 98467c00 isub temp ,null 
-0177 24228171 nbranch p_le_send_att_read_response ,zero 
-0178 24340171 nbranch p_le_send_att_read_response ,user 
-0179 20202d46 branch le_send_att_read_response_error_insufficient_auth 
+01f5 6fe14332 fetch 2 ,mem_le_pairing_handle 
+01f6 98467c00 isub temp ,null 
+01f7 242281f1 nbranch p_le_send_att_read_response ,zero 
+01f8 243401f1 nbranch p_le_send_att_read_response ,user 
+01f9 20202d46 branch le_send_att_read_response_error_insufficient_auth 
 
 p_le_parse_att_write_request:
-017a 18c22200 copy contr ,rega 
-017b 6fe14335 fetch 2 ,mem_le_l2cap_size 
-017c 1fe0a5fd add pdata ,-3 ,regb 
-017d 20402929 call le_writeatt_cb 
-017e 6fe0c78f fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
-017f c07fadac beq 0xff ,le_send_att_write_response_check_auth 
-0180 6fe0c795 fetch 1 ,mem_mouse_le_reconnect_flag 
-0181 203a2dac branch le_send_att_write_response_check_auth ,blank 
-0182 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
-0183 c280adac bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
-0184 5800001a setarg 0x001a 
-0185 68494398 fetcht 2 ,mem_le_att_handle 
-0186 98467c00 isub temp ,null 
-0187 2422adac nbranch le_send_att_write_response_check_auth ,zero 
-0188 20202d46 branch le_send_att_read_response_error_insufficient_auth 
+01fa 18c22200 copy contr ,rega 
+01fb 6fe14335 fetch 2 ,mem_le_l2cap_size 
+01fc 1fe0a5fd add pdata ,-3 ,regb 
+01fd 20402929 call le_writeatt_cb 
+01fe 6fe0c78f fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
+01ff c07fadac beq 0xff ,le_send_att_write_response_check_auth 
+0200 6fe0c795 fetch 1 ,mem_mouse_le_reconnect_flag 
+0201 203a2dac branch le_send_att_write_response_check_auth ,blank 
+0202 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
+0203 c280adac bbit1 ll_start_enc_flag ,le_send_att_write_response_check_auth 
+0204 5800001a setarg 0x001a 
+0205 68494398 fetcht 2 ,mem_le_att_handle 
+0206 98467c00 isub temp ,null 
+0207 2422adac nbranch le_send_att_write_response_check_auth ,zero 
+0208 20202d46 branch le_send_att_read_response_error_insufficient_auth 
+
+p_mouse_le:
+0209 20402a28 call le_fifo_check_nearly_full 
+020a 247a0000 nrtn blank 
+020b 6fe0c78f fetch 1 ,mem_mouse_bluetooth_fast_conn_flag 
+020c c07f8214 beq 0xff ,p_mouse_le_next 
+020d 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
+020e 1fe17e03 and pdata ,0x03 ,pdata 
+020f c1818000 rtnne 0x03 
+0210 6fe0cbfb fetch 1 ,mem_le_check_retransmit_flag 
+0211 207a0000 rtn blank 
+0212 6fe0cbfd fetch 1 ,mem_le_check_retransmit_discon_flag 
+0213 247a0000 nrtn blank 
+
+p_mouse_le_next:
+0214 6fe0c956 fetch 1 ,mem_mouse_clear_sensor_data_flag 
+0215 205a5a71 call mouse_clear_sensor_data_by_reset ,blank 
+0216 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0217 c280db5b bbit1 mouse_24g_pairing_flag ,mouse_le_send_empty_packet 
+0218 c2805b5b bbit1 mouse_select_device_flag ,mouse_le_send_empty_packet 
+0219 c282db5b bbit1 mouse_bt_discovery_button_down_flag ,mouse_le_send_empty_packet 
+021a c2835b5b bbit1 mouse_bt_discovery_button_long_down_flag ,mouse_le_send_empty_packet 
+021b 20405601 call mouse_motion 
+021c 20405ab2 call mouse_check_125hz 
+021d 24740000 nrtn user 
+021e 20405abc call mouse_current_mult_update 
+021f 204004d4 call p_mouse_data_xy_release 
+0220 20205b37 branch mouse_le_next + 12 
+
+p_gpio_set_wake:
+0221 18467cff sub temp ,ui_button_gpio_disable ,null 
+0222 20628000 rtn zero 
+0223 d9000004 arg 4 ,debug 
+0224 284ffe07 isolate1 gpio_active_bit ,temp 
+0225 2020eebd branch gpio_set_wake_high ,true 
+0226 d9000003 arg 3 ,debug 
+0227 20206ebd branch gpio_set_wake_high 
+
+p_gpio_set_wake_by_current_state:
+0228 18467cff sub temp ,gpio_disable ,null 
+0229 20628000 rtn zero 
+022a 20406ee6 call gpio_get_bit 
+022b 2020822e branch p_gpio_set_qdec_mode ,true 
+
+p_gpio_set_low_wake:
+022c d9000003 arg 3 ,debug 
+022d 20206ebd branch gpio_set_wake_high 
+
+p_gpio_set_qdec_mode:
+022e 704b1d01 jam 1 ,mem_mouse_qdec_set_flag 
+
+p_mouse_qdec_lpm_cfg:
+022f d9000006 arg 6 ,debug 
+0230 20206ebd branch gpio_set_wake_high 
+
+p_mouse_puchk_disable:
+0231 58000010 setarg 0x10 
+
+p_mouse_puchk_set:
+0232 67f08141 store 1 ,core_puwakeup 
+0233 202023e2 branch lpm_write_wait 
+
+p_mouse_lpm_before_common:
+0234 204004af call p_clear_wake 
+0235 704b1d00 jam 0 ,mem_mouse_qdec_set_flag 
+0236 6848c654 fetcht 1 ,mem_matrix_public_gpio 
+0237 20406ef7 call gpio_out_active 
+0238 6848c654 fetcht 1 ,mem_matrix_public_gpio 
+0239 20406ed3 call gpio_clr_wake 
+023a 2040550d call mouse_lpm_before_common + 1 
+023b 204054f9 call mouse_gpio_pd_idle 
+
+p_mouse_wheel_set_impedance:
+023c 6848c64a fetcht 1 ,mem_whee_a_data_gpio 
+023d 20406f0f call gpio_set_high_impedance 
+023e 6848c64b fetcht 1 ,mem_whee_b_data_gpio 
+023f 20206f0f branch gpio_set_high_impedance 
 
 p_lpm_sleep:
-0189 6fe143e9 fetch 2 ,mem_cb_before_lpm_sleep 
-018a 20407d79 call callback_func 
 
 p_lpm_sleep_skip_cb_function:
-018b 6fe240ad fetch 4 ,mem_sleep_counter_all 
-018c 9840fe00 iadd temp ,pdata 
-018d 67e240ad store 4 ,mem_sleep_counter_all 
-018e 20400190 call p_lpm_save_context 
-018f 20202425 branch lpm_sleep_skip_cb_function + 4 
+0240 6fe240ad fetch 4 ,mem_sleep_counter_all 
+0241 9840fe00 iadd temp ,pdata 
+0242 67e240ad store 4 ,mem_sleep_counter_all 
+0243 2040024a call p_lpm_save_context 
+0244 20400246 call p_mouse_puchk_set_check 
+0245 20202425 branch lpm_sleep_skip_cb_function + 4 
+
+p_mouse_puchk_set_check:
+0246 6fe0cb1d fetch 1 ,mem_mouse_qdec_set_flag 
+0247 203a0231 branch p_mouse_puchk_disable ,blank 
+
+p_mouse_puchk_enable:
+0248 58000080 setarg 0x80 
+0249 20200232 branch p_mouse_puchk_set 
 
 p_lpm_save_context:
-0190 600440e7 storer mark ,8 ,mem_saved_mark 
-0191 d8c08070 arg core_gpio_conf ,contr 
-0192 d8a040cc arg mem_saved_gpio ,contw 
-0193 20407c8f call memcpy16 
-0194 d8c080d4 arg core_gpio_conf_hi ,contr 
-0195 20407c89 call memcpy8 
-0196 6ff08080 fetch 1 ,core_spid_ctrl 
-0197 67e0c0ef store 1 ,mem_saved_spidctrl 
-0198 18422400 copy temp ,regb 
+024a 600440e7 storer mark ,8 ,mem_saved_mark 
+024b d8c08070 arg core_gpio_conf ,contr 
+024c d8a040cc arg mem_saved_gpio ,contw 
+024d 20407c8f call memcpy16 
+024e d8c080d4 arg core_gpio_conf_hi ,contr 
+024f 20407c89 call memcpy8 
+0250 6ff08080 fetch 1 ,core_spid_ctrl 
+0251 67e0c0ef store 1 ,mem_saved_spidctrl 
+0252 18422400 copy temp ,regb 
 
 p_lpm_write_gpio_wakeup:
-0199 df20000c arg 12 ,loopcnt 
-019a da200016 arg mem_gpio_wakeup_cfg ,rega 
-019b da60814d arg core_gpio_wakeup_cfg ,regc 
+0253 df20000c arg 12 ,loopcnt 
+0254 da200016 arg mem_gpio_wakeup_cfg ,rega 
+0255 da60814d arg core_gpio_wakeup_cfg ,regc 
+0256 37d98200 until null ,lpo_edge 
 
 p_lpm_write_gpio_loop:
-019c efe08011 ifetch 1 ,rega 
-019d e8408013 ifetcht 1 ,regc 
-019e 98467c00 isub temp ,null 
-019f 202281a2 branch p_lpm_write_gpio_loop_next ,zero 
-01a0 e7e08013 istore 1 ,regc 
-01a1 37d98200 until null ,lpo_edge 
+0257 efe08011 ifetch 1 ,rega 
+0258 e8408013 ifetcht 1 ,regc 
+0259 98467c00 isub temp ,null 
+025a 2022825d branch p_lpm_write_gpio_loop_next ,zero 
+025b e7e08013 istore 1 ,regc 
+025c 37d98200 until null ,lpo_edge 
 
 p_lpm_write_gpio_loop_next:
-01a2 1a20a201 increase 1 ,rega 
-01a3 1a60a601 increase 1 ,regc 
-01a4 c200019c loop p_lpm_write_gpio_loop 
-01a5 1a420400 copy regb ,temp 
-01a6 20600000 rtn 
+025d 1a20a201 increase 1 ,rega 
+025e 1a60a601 increase 1 ,regc 
+025f c2000257 loop p_lpm_write_gpio_loop 
+0260 1a420400 copy regb ,temp 
+0261 20600000 rtn 
 
 p_otp_read_data:
-01a7 20406b3a call enable_otp_read 
-01a8 20406b75 call otp_read_data + 1 
-01a9 20206b38 branch otp_disable_chgpump 
+0262 20406b3a call enable_otp_read 
+0263 20406b75 call otp_read_data + 1 
+0264 20206b38 branch otp_disable_chgpump 
+
+p_g24_reconn_dispatch:
+0265 6fe145e0 fetch 2 ,mem_24g_reconn_count 
+0266 d84001f8 arg 0x01f8 ,temp 
+0267 98417e00 iand temp ,pdata 
+0268 203a026a branch p_g24_reconn_dispatch_next ,blank 
+0269 20203561 branch g24_reconn_dispatch + 5 
+
+p_g24_reconn_dispatch_next:
+026a 2040357f call g24_reconn_data_prep 
+026b 20403651 call g24_transmit_receive_ack 
+026c 242c3586 nbranch g24_reconn_device_fail ,sync 
+026d 2437b586 nbranch g24_reconn_device_fail ,user3 
+026e 2040366e call g24_ackpayload_parse 
+026f 6fe0c57d fetch 1 ,mem_24g_rxdata_length 
+0270 203a028a branch p_recv_addr_zero_skip ,blank 
+
+p_g24_reconn_dispatch_next_2:
+0271 6fe245cc fetch 4 ,mem_24g_pair_addr 
+0272 684a458f fetcht 4 ,mem_24g_addr 
+0273 98467c00 isub temp ,null 
+0274 20228276 branch p_g24_reconn_mode_judge ,zero 
+0275 2020356e branch g24_reconn_dispatch_next + 9 
+
+p_g24_reconn_mode_judge:
+0276 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0277 c298604e bbit1 mouse_enable_auto_24g_paring ,mouse_24g_pair_mode_check 
+0278 20203549 branch g24_reconn_receiver_addr 
+
+p_g24_reconn_device_fail:
+0279 6fe0c5e3 fetch 1 ,mem_24g_fast_conn_enable 
+027a 203a3222 branch g24_ch ,blank 
+027b 6fe145e0 fetch 2 ,mem_24g_reconn_count 
+027c 1fe0fe01 increase 1 ,pdata 
+027d 67e145e0 store 2 ,mem_24g_reconn_count 
+027e 2feffe09 isolate1 9 ,pdata 
+027f 6fe0c5e2 fetch 1 ,mem_24g_reconn_type 
+0280 c0028282 beq pair_and_receiver ,p_g24_reconn_pair_and_receiver 
+0281 2020358d branch g24_reconn_device_fail + 7 
+
+p_g24_reconn_pair_and_receiver:
+0282 2020b549 branch g24_reconn_receiver_addr ,true 
+0283 2020329c branch g24_pair_init_param 
+
+p_mouse_param_init:
+0284 2040543b call mouse_param_common_init 
+0285 58004a1d setarg mem_le_tx_buffer0_omemalloc_new 
+0286 67e1433f store 2 ,mem_ble_l2cap_tx_buff0_ptr 
+0287 58000020 setarg mouse_ble_l2cap_txbuff_size_new 
+0288 67e14341 store 2 ,mem_ble_l2cap_tx_buff_size_ptr 
+0289 2020544c branch mouse_param_init + 2 
+
+p_recv_addr_zero_skip:
+028a 6fe245e4 fetch 4 ,mem_24g_fast_conn_addr 
+028b 684a458f fetcht 4 ,mem_24g_addr 
+028c 98467c00 isub temp ,null 
+028d 20228271 branch p_g24_reconn_dispatch_next_2 ,zero 
+028e 6fe2455f fetch 4 ,mem_24g_rxpayload + 2 
+028f 207a0000 rtn blank 
+0290 20200271 branch p_g24_reconn_dispatch_next_2 
+
+p_power_ctrl_start:
+0291 6fe0c437 fetch 1 ,mem_power_ctrl_disable 
+0292 247a0000 nrtn blank 
+0293 6fe144e9 fetch 2 ,mem_ui_state_map 
+0294 c3858000 rtnbit1 ui_state_ble_adv 
+0295 6a2145f0 fetchr rega ,2 ,mem_rssi_signal_buf_ptr 
+0296 204035b4 call rssi_average 
+0297 6048c624 storet 1 ,mem_rssi_avg_received 
+0298 6fe0c629 fetch 1 ,mem_rssi_dis_max_24g 
+0299 c513029b bmark1 mark_24g ,p_power_ctrl_start_next 
+029a 6fe0c62c fetch 1 ,mem_rssi_dis_max_ble 
+
+p_power_ctrl_start_next:
+029b 98467c00 isub temp ,null 
+029c 242102b5 nbranch p_power_ctrl_txpower_incrs_force ,positive 
+029d 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+029e 1fe67c02 sub pdata ,2 ,null 
+029f 242102a3 nbranch p_power_ctrl_txpower_decrs_check ,positive 
+02a0 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+02a1 c00002b6 beq 0 ,p_power_ctrl_txpower_incrs 
+02a2 20600000 rtn 
+
+p_power_ctrl_txpower_decrs_check:
+02a3 6fe0c626 fetch 1 ,mem_power_ctrl_pac_succ_cnt 
+02a4 6848c627 fetcht 1 ,mem_power_ctrl_pac_succ_cnt_init 
+02a5 98467c00 isub temp ,null 
+02a6 24628000 nrtn zero 
+02a7 70462600 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+
+p_power_ctrl_txpower_decrs:
+02a8 6848c624 fetcht 1 ,mem_rssi_avg_received 
+02a9 6fe0c628 fetch 1 ,mem_rssi_dis_min_24g 
+02aa c51302ac bmark1 mark_24g ,p_power_ctrl_txpower_decrs_next 
+02ab 6fe0c62b fetch 1 ,mem_rssi_dis_min_ble 
+
+p_power_ctrl_txpower_decrs_next:
+02ac 98467c00 isub temp ,null 
+02ad 24610000 nrtn positive 
+02ae 6fe0c625 fetch 1 ,mem_power_ctrl_level 
+02af c0003715 beq 0 ,power_ctrl_decrs_level0 
+02b0 1fe0ffff increase -1 ,pdata 
+02b1 67e0c625 store 1 ,mem_power_ctrl_level 
+02b2 c00102be beq 2 ,p_power_ctrl_decrs_level2 
+02b3 c000b70b beq 1 ,power_ctrl_decrs_level1 
+02b4 20203715 branch power_ctrl_decrs_level0 
+
+p_power_ctrl_txpower_incrs_force:
+02b5 70462600 jam 0 ,mem_power_ctrl_pac_succ_cnt 
+
+p_power_ctrl_txpower_incrs:
+02b6 6fe0c625 fetch 1 ,mem_power_ctrl_level 
+02b7 c00182bc beq 3 ,p_power_ctrl_incrs_level3 
+02b8 1fe0fe01 increase 1 ,pdata 
+02b9 67e0c625 store 1 ,mem_power_ctrl_level 
+02ba c000b70b beq 1 ,power_ctrl_incrs_level1 
+02bb c00102be beq 2 ,p_power_ctrl_incrs_level2 
+
+p_power_ctrl_incrs_level3:
+02bc 70414105 jam tx_power_5db ,mem_tx_power 
+02bd 20600000 rtn 
+
+p_power_ctrl_decrs_level2:
+
+p_power_ctrl_incrs_level2:
+02be 70414103 jam tx_power_3db ,mem_tx_power 
+02bf 20600000 rtn 
 
 p_mouse_cb_fuction:
-01aa 58006235 setarg mouse_24g_short_sleep 
-01ab 67e145f8 store 2 ,mem_cb_24g_transmit_short_sleep 
-01ac 5800622b setarg mouse_24g_long_sleep 
-01ad 67e145fa store 2 ,mem_cb_24g_transmit_long_sleep 
-01ae 580001b1 setarg p_mouse_24g_before_lpm_sleep 
-01af 67e143e9 store 2 ,mem_cb_before_lpm_sleep 
-01b0 202053f3 branch mouse_cb_fuction + 7 
-
-p_mouse_24g_before_lpm_sleep:
-01b1 20600000 rtn 
+02c0 58006235 setarg mouse_24g_short_sleep 
+02c1 67e145f8 store 2 ,mem_cb_24g_transmit_short_sleep 
+02c2 5800622b setarg mouse_24g_long_sleep 
+02c3 67e145fa store 2 ,mem_cb_24g_transmit_long_sleep 
+02c4 202053f3 branch mouse_cb_fuction + 7 
+
+p_soft_reset:
+02c5 2435a002 nbranch soft_reset + 1 ,wake 
+02c6 37d98200 until null ,lpo_edge 
+02c7 37d98200 until null ,lpo_edge 
+02c8 20800000 clear_stack 
+02c9 205582cb call p_mouse_wheel_init_set ,wake 
+02ca 20202003 branch soft_reset + 2 
+
+p_mouse_wheel_init_set:
+02cb 20400231 call p_mouse_puchk_disable 
+02cc 204058df call mouse_matrix_public_gpio_reset 
+02cd 20206004 branch mouse_wheel_gpio_init 
+
+p_mouse_default_init:
+02ce 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+02cf 2feffe16 isolate1 mouse_enable_keyboard ,pdata 
+02d0 2040df08 call mouse_customer_key_enable ,true 
+02d1 2020542c branch mouse_default_parm_init 
 
 p_mouse_load_device_info_check:
-01b2 204002b4 call p_mouse_store_normal_tx_power 
-01b3 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-01b4 c289dd60 bbit1 mouse_enable_eeprom ,mouse_load_eeprom_info_check 
-01b5 c2895d6e bbit1 mouse_enable_flash ,mouse_load_flash_info_check 
-01b6 c28a01b8 bbit1 mouse_enable_otp ,p_mouse_load_otp_info_check 
-01b7 20600000 rtn 
+02d2 20400484 call p_mouse_store_normal_tx_power 
+02d3 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+02d4 c289dd60 bbit1 mouse_enable_eeprom ,mouse_load_eeprom_info_check 
+02d5 c2895d6e bbit1 mouse_enable_flash ,mouse_load_flash_info_check 
+02d6 c28a02d8 bbit1 mouse_enable_otp ,p_mouse_load_otp_info_check 
+02d7 20600000 rtn 
 
 p_mouse_load_otp_info_check:
-01b8 6fe0c666 fetch 1 ,mem_device_flag 
-01b9 67e0ca06 store 1 ,mem_mouse_device_flag_temp 
-01ba 20405e43 call mouse_read_otp_dpi 
-01bb 20405db4 call mouse_read_otp_device_flag 
-01bc 204001ce call p_mouse_device_flag_check 
-01bd 20405dcc call mouse_read_otp_device_info 
-01be 204001d4 call p_mouse_read_otp_le_addr_increase_count_info 
-01bf 20205daa branch mouse_otp_load_app_initflag 
+02d8 204002e3 call p_mouse_device_flag_temp_store 
+02d9 20405e43 call mouse_read_otp_dpi 
+02da 20405db4 call mouse_read_otp_device_flag 
+02db 204002f5 call p_mouse_device_flag_check 
+02dc 204002e0 call p_mouse_select_device_by_switch_check 
+02dd 204002e6 call p_mouse_read_otp_device_info 
+02de 204002fd call p_mouse_read_otp_le_addr_increase_count_info 
+02df 20205daa branch mouse_otp_load_app_initflag 
+
+p_mouse_select_device_by_switch_check:
+02e0 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+02e1 c4150000 rtnbit0 mouse_enable_select_device_by_switch_gpio 
+02e2 204004df call p_mouse_check_select_device_by_switch 
+
+p_mouse_device_flag_temp_store:
+02e3 6fe0c666 fetch 1 ,mem_device_flag 
+02e4 67e0ca06 store 1 ,mem_mouse_device_flag_temp 
+02e5 20600000 rtn 
+
+p_mouse_read_otp_device_info:
+02e6 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+02e7 2feffe3e isolate1 mouse_enable_24g_first_auto_pairing ,pdata 
+02e8 2040ddd1 call mouse_read_otp_le_device1 ,true 
+02e9 20205dcc branch mouse_read_otp_device_info 
 
 p_mouse_app_initflag_check:
-01c0 6fe1468e fetch 2 ,mem_store_flag 
-01c1 d840aa55 arg eeprom_init_flag ,temp 
-01c2 98467c00 isub temp ,null 
-01c3 20228241 branch p_mouse_load_device_info ,zero 
-01c4 6049468e storet 2 ,mem_store_flag 
-01c5 20405c9c call mouse_ble_init_address 
-01c6 6fe0c9a1 fetch 1 ,mem_device_flag_temp 
-01c7 67e0c666 store 1 ,mem_device_flag 
-01c8 20405c8c call mouse_load_default_dpi 
-01c9 58001122 setarg 0x1122 
-01ca 67e14695 store 2 ,mem_random_addr_increase_count 
-
-p_mouse_device_flag_reinit:
-01cb 6fe0ca06 fetch 1 ,mem_mouse_device_flag_temp 
-01cc 67e0c666 store 1 ,mem_device_flag 
-01cd 20600000 rtn 
+02ea 6fe1468e fetch 2 ,mem_store_flag 
+02eb d840aa55 arg eeprom_init_flag ,temp 
+02ec 98467c00 isub temp ,null 
+02ed 20228369 branch p_mouse_load_device_info ,zero 
+02ee 6049468e storet 2 ,mem_store_flag 
+02ef 20405c9c call mouse_ble_init_address 
+02f0 20405c8c call mouse_load_default_dpi 
+02f1 58001122 setarg 0x1122 
+02f2 67e14695 store 2 ,mem_random_addr_increase_count 
+
+p_mouse_device_flag_temp_load:
+02f3 6fe0ca06 fetch 1 ,mem_mouse_device_flag_temp 
+02f4 20205dca branch mouse_device_flag_load_end 
 
 p_mouse_device_flag_check:
-01ce 6fe0c666 fetch 1 ,mem_device_flag 
-01cf c00001cb beq 0 ,p_mouse_device_flag_reinit 
-01d0 c00201d2 beq 4 ,p_mouse_24g_init 
-01d1 20600000 rtn 
+02f5 6fe0c666 fetch 1 ,mem_device_flag 
+02f6 1fe67c00 sub pdata ,0 ,null 
+02f7 202282f3 branch p_mouse_device_flag_temp_load ,zero 
+02f8 1fe67c04 sub pdata ,4 ,null 
+02f9 202282fb branch p_mouse_24g_init ,zero 
+02fa 20610000 rtn positive 
 
 p_mouse_24g_init:
-01d2 70466600 jam mode_24g_device ,mem_device_flag 
-01d3 20600000 rtn 
+02fb 70466600 jam mode_24g_device ,mem_device_flag 
+02fc 20600000 rtn 
 
 p_mouse_read_otp_le_addr_increase_count_info:
-01d4 6fe0c666 fetch 1 ,mem_device_flag 
-01d5 c1000000 rtneq mode_24g_device 
-01d6 6a4149fe fetchr regb ,2 ,mem_otp_offset_le_addr_increase_count 
-01d7 1a422600 copy regb ,regc 
+02fd 6fe0c666 fetch 1 ,mem_device_flag 
+02fe c1000000 rtneq mode_24g_device 
+02ff 6a4149fe fetchr regb ,2 ,mem_otp_offset_le_addr_increase_count 
+0300 1a422600 copy regb ,regc 
 
 p_mouse_read_otp_le_addr_increase_count_loop:
-01d8 20405e3d call mouse_read_otp_le_addr_increase_count_common 
-01d9 6fe149e0 fetch 2 ,mem_random_addr_increase_count_temp 
-01da 203a01e2 branch p_mouse_le_addr_increase_count_load ,blank 
-01db 67e149de store 2 ,mem_random_addr_increase_count_last 
-01dc 1a60a602 increase 2 ,regc 
-01dd 6fe14a00 fetch 2 ,mem_otp_offset_le_addr_increase_count_end 
-01de 9a667c00 isub regc ,null 
-01df 242101e2 nbranch p_mouse_le_addr_increase_count_load ,positive 
-01e0 1a622400 copy regc ,regb 
-01e1 202001d8 branch p_mouse_read_otp_le_addr_increase_count_loop 
+0301 20405e3d call mouse_read_otp_le_addr_increase_count_common 
+0302 6fe149e0 fetch 2 ,mem_random_addr_increase_count_temp 
+0303 203a030b branch p_mouse_le_addr_increase_count_load ,blank 
+0304 67e149de store 2 ,mem_random_addr_increase_count_last 
+0305 1a60a602 increase 2 ,regc 
+0306 6fe14a00 fetch 2 ,mem_otp_offset_le_addr_increase_count_end 
+0307 9a667c00 isub regc ,null 
+0308 2421030b nbranch p_mouse_le_addr_increase_count_load ,positive 
+0309 1a622400 copy regc ,regb 
+030a 20200301 branch p_mouse_read_otp_le_addr_increase_count_loop 
 
 p_mouse_le_addr_increase_count_load:
-01e2 6fe149de fetch 2 ,mem_random_addr_increase_count_last 
-01e3 67e14695 store 2 ,mem_random_addr_increase_count 
-01e4 20600000 rtn 
+030b 6fe149de fetch 2 ,mem_random_addr_increase_count_last 
+030c 20205e41 branch mouse_le_addr_increase_store 
 
 p_mouse_store_device_info:
-01e5 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-01e6 c289dcb1 bbit1 mouse_enable_eeprom ,mouse_store_eeprom_device_info 
-01e7 c2895cb9 bbit1 mouse_enable_flash ,mouse_store_flash_device_info 
-01e8 c28a01ea bbit1 mouse_enable_otp ,p_mouse_store_otp_device_info 
-01e9 20600000 rtn 
+030d 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+030e c289dcb1 bbit1 mouse_enable_eeprom ,mouse_store_eeprom_device_info 
+030f c2895cb9 bbit1 mouse_enable_flash ,mouse_store_flash_device_info 
+0310 c28a0312 bbit1 mouse_enable_otp ,p_mouse_store_otp_device_info 
+0311 20600000 rtn 
 
 p_mouse_store_otp_device_info:
-01ea 204001ed call p_mouse_write_otp_locall_addr 
-01eb 204001f2 call p_mouse_write_otp_device_flag 
-01ec 20205cc1 branch mouse_store_otp_device_info + 1 
+0312 20400315 call p_mouse_write_otp_locall_addr 
+0313 2040031a call p_mouse_write_otp_device_flag 
+0314 20205cc1 branch mouse_store_otp_device_info + 1 
 
 p_mouse_write_otp_locall_addr:
-01ed 6fe0c666 fetch 1 ,mem_device_flag 
-01ee c1000000 rtneq mode_24g_device 
-01ef c0008219 beq mode_bt_device1 ,p_mouse_write_otp_le_locall_addr1 
-01f0 c001022d beq mode_bt_device2 ,p_mouse_write_otp_le_locall_addr2 
-01f1 20600000 rtn 
+0315 6fe0c666 fetch 1 ,mem_device_flag 
+0316 c1000000 rtneq mode_24g_device 
+0317 c0008341 beq mode_bt_device1 ,p_mouse_write_otp_le_locall_addr1 
+0318 c0010355 beq mode_bt_device2 ,p_mouse_write_otp_le_locall_addr2 
+0319 20600000 rtn 
 
 p_mouse_write_otp_device_flag:
-01f2 6a4149e2 fetchr regb ,2 ,mem_otp_offset_device_flag 
-01f3 1a422600 copy regb ,regc 
+031a 6a4149e2 fetchr regb ,2 ,mem_otp_offset_device_flag 
+031b 1a422600 copy regb ,regc 
 
 p_mouse_write_otp_device_flag_loop:
-01f4 20405dc0 call mouse_read_otp_device_flag_common 
-01f5 6fe0c9a1 fetch 1 ,mem_device_flag_temp 
-01f6 203a01fe branch p_mouse_device_flag_store ,blank 
-01f7 67e0c9a0 store 1 ,mem_device_flag_last 
-01f8 1a60a601 increase 1 ,regc 
-01f9 6fe149e4 fetch 2 ,mem_otp_offset_device_flag_end 
-01fa 9a667c00 isub regc ,null 
-01fb 24610000 nrtn positive 
-01fc 1a622400 copy regc ,regb 
-01fd 202001f4 branch p_mouse_write_otp_device_flag_loop 
+031c 20405dc0 call mouse_read_otp_device_flag_common 
+031d 6fe0c9a1 fetch 1 ,mem_device_flag_temp 
+031e 203a0326 branch p_mouse_device_flag_store ,blank 
+031f 67e0c9a0 store 1 ,mem_device_flag_last 
+0320 1a60a601 increase 1 ,regc 
+0321 6fe149e4 fetch 2 ,mem_otp_offset_device_flag_end 
+0322 9a667c00 isub regc ,null 
+0323 24610000 nrtn positive 
+0324 1a622400 copy regc ,regb 
+0325 2020031c branch p_mouse_write_otp_device_flag_loop 
 
 p_mouse_device_flag_store:
-01fe 6fe0c9a0 fetch 1 ,mem_device_flag_last 
-01ff 1fe17ef0 and pdata ,0xf0 ,pdata 
-0200 203a0208 branch p_mouse_device_flag_store_check ,blank 
-0201 6fe0c666 fetch 1 ,mem_device_flag 
-0202 20400216 call p_mouse_device_flag_otp_store_judge 
-0203 67e0c9a2 store 1 ,mem_device_flag_value 
-
-p_mouse_devoce_flag_store_end:
-0204 df200001 arg 1 ,loopcnt 
-0205 1a622400 copy regc ,regb 
-0206 da2049a2 arg mem_device_flag_value ,rega 
-0207 20206b45 branch otp_write 
+0326 6fe0c9a0 fetch 1 ,mem_device_flag_last 
+0327 1fe17ef0 and pdata ,0xf0 ,pdata 
+0328 203a0330 branch p_mouse_device_flag_store_check ,blank 
+0329 6fe0c666 fetch 1 ,mem_device_flag 
+032a 2040033e call p_mouse_device_flag_otp_store_judge 
+032b 67e0c9a2 store 1 ,mem_device_flag_value 
+
+p_mouse_device_flag_store_end:
+032c df200001 arg 1 ,loopcnt 
+032d 1a622400 copy regc ,regb 
+032e da2049a2 arg mem_device_flag_value ,rega 
+032f 20206b45 branch otp_write 
 
 p_mouse_device_flag_store_check:
-0208 6848c9a0 fetcht 1 ,mem_device_flag_last 
-0209 6fe0c666 fetch 1 ,mem_device_flag 
-020a 20400216 call p_mouse_device_flag_otp_store_judge 
-020b 98467c00 isub temp ,null 
-020c 20628000 rtn zero 
-020d 1ff27e00 lshift4 pdata ,pdata 
-020e 9840fe00 iadd temp ,pdata 
-020f 67e0c9a2 store 1 ,mem_device_flag_value 
-0210 1a627e00 copy regc ,pdata 
-0211 684949e2 fetcht 2 ,mem_otp_offset_device_flag 
-0212 98467c00 isub temp ,null 
-0213 20228204 branch p_mouse_devoce_flag_store_end ,zero 
-0214 1a60a7ff increase -1 ,regc 
-0215 20200204 branch p_mouse_devoce_flag_store_end 
+0330 6848c9a0 fetcht 1 ,mem_device_flag_last 
+0331 6fe0c666 fetch 1 ,mem_device_flag 
+0332 2040033e call p_mouse_device_flag_otp_store_judge 
+0333 98467c00 isub temp ,null 
+0334 20628000 rtn zero 
+0335 1ff27e00 lshift4 pdata ,pdata 
+0336 9840fe00 iadd temp ,pdata 
+0337 67e0c9a2 store 1 ,mem_device_flag_value 
+0338 1a627e00 copy regc ,pdata 
+0339 684949e2 fetcht 2 ,mem_otp_offset_device_flag 
+033a 98467c00 isub temp ,null 
+033b 2022832c branch p_mouse_device_flag_store_end ,zero 
+033c 1a60a7ff increase -1 ,regc 
+033d 2020032c branch p_mouse_device_flag_store_end 
 
 p_mouse_device_flag_otp_store_judge:
-0216 c1800000 rtnne mode_24g_device 
-0217 1fe0fe04 increase 4 ,pdata 
-0218 20600000 rtn 
+033e c1800000 rtnne mode_24g_device 
+033f 1fe0fe04 increase 4 ,pdata 
+0340 20600000 rtn 
 
 p_mouse_write_otp_le_locall_addr1:
-0219 6a4149ee fetchr regb ,2 ,mem_otp_offset_le_locall_addr1 
-021a 1a422600 copy regb ,regc 
+0341 6a4149ee fetchr regb ,2 ,mem_otp_offset_le_locall_addr1 
+0342 1a422600 copy regb ,regc 
 
 p_mouse_write_otp_le_locall_addr1_loop:
-021b 20405df3 call mouse_read_otp_le_locall_addr1_common 
-021c 6fe349b5 fetch 6 ,mem_mouse_le_locall_addr1_temp 
-021d 203a0225 branch p_mouse_le_local_addr1_store ,blank 
-021e 67e349af store 6 ,mem_mouse_le_locall_addr1_last 
-021f 1a60a606 increase 6 ,regc 
-0220 6fe149f0 fetch 2 ,mem_otp_offset_le_locall_addr1_end 
-0221 9a667c00 isub regc ,null 
-0222 24610000 nrtn positive 
-0223 1a622400 copy regc ,regb 
-0224 2020021b branch p_mouse_write_otp_le_locall_addr1_loop 
+0343 20405df3 call mouse_read_otp_le_locall_addr1_common 
+0344 6fe349b5 fetch 6 ,mem_mouse_le_locall_addr1_temp 
+0345 203a034d branch p_mouse_le_local_addr1_store ,blank 
+0346 67e349af store 6 ,mem_mouse_le_locall_addr1_last 
+0347 1a60a606 increase 6 ,regc 
+0348 6fe149f0 fetch 2 ,mem_otp_offset_le_locall_addr1_end 
+0349 9a667c00 isub regc ,null 
+034a 24610000 nrtn positive 
+034b 1a622400 copy regc ,regb 
+034c 20200343 branch p_mouse_write_otp_le_locall_addr1_loop 
 
 p_mouse_le_local_addr1_store:
-0225 6fe349af fetch 6 ,mem_mouse_le_locall_addr1_last 
-0226 684b466e fetcht 6 ,mem_device1_locall_addr 
-0227 98467c00 isub temp ,null 
-0228 20628000 rtn zero 
-0229 df200006 arg 6 ,loopcnt 
-022a da20466e arg mem_device1_locall_addr ,rega 
-022b 1a622400 copy regc ,regb 
-022c 20206b45 branch otp_write 
+034d 6fe349af fetch 6 ,mem_mouse_le_locall_addr1_last 
+034e 684b466e fetcht 6 ,mem_device1_locall_addr 
+034f 98467c00 isub temp ,null 
+0350 20628000 rtn zero 
+0351 df200006 arg 6 ,loopcnt 
+0352 da20466e arg mem_device1_locall_addr ,rega 
+0353 1a622400 copy regc ,regb 
+0354 20206b45 branch otp_write 
 
 p_mouse_write_otp_le_locall_addr2:
-022d 6a4149f6 fetchr regb ,2 ,mem_otp_offset_le_locall_addr2 
-022e 1a422600 copy regb ,regc 
+0355 6a4149f6 fetchr regb ,2 ,mem_otp_offset_le_locall_addr2 
+0356 1a422600 copy regb ,regc 
 
 p_mouse_write_otp_le_locall_addr2_loop:
-022f 20405e17 call mouse_read_otp_le_locall_addr2_common 
-0230 6fe349cd fetch 6 ,mem_mouse_le_locall_addr2_temp 
-0231 203a0239 branch p_mouse_le_local_addr2_store ,blank 
-0232 67e349c7 store 6 ,mem_mouse_le_locall_addr2_last 
-0233 1a60a606 increase 6 ,regc 
-0234 6fe149f8 fetch 2 ,mem_otp_offset_le_locall_addr2_end 
-0235 9a667c00 isub regc ,null 
-0236 24610000 nrtn positive 
-0237 1a622400 copy regc ,regb 
-0238 2020022f branch p_mouse_write_otp_le_locall_addr2_loop 
+0357 20405e17 call mouse_read_otp_le_locall_addr2_common 
+0358 6fe349cd fetch 6 ,mem_mouse_le_locall_addr2_temp 
+0359 203a0361 branch p_mouse_le_local_addr2_store ,blank 
+035a 67e349c7 store 6 ,mem_mouse_le_locall_addr2_last 
+035b 1a60a606 increase 6 ,regc 
+035c 6fe149f8 fetch 2 ,mem_otp_offset_le_locall_addr2_end 
+035d 9a667c00 isub regc ,null 
+035e 24610000 nrtn positive 
+035f 1a622400 copy regc ,regb 
+0360 20200357 branch p_mouse_write_otp_le_locall_addr2_loop 
 
 p_mouse_le_local_addr2_store:
-0239 6fe349c7 fetch 6 ,mem_mouse_le_locall_addr2_last 
-023a 684b467b fetcht 6 ,mem_device2_locall_addr 
-023b 98467c00 isub temp ,null 
-023c 20628000 rtn zero 
-023d df200006 arg 6 ,loopcnt 
-023e da20467b arg mem_device2_locall_addr ,rega 
-023f 1a622400 copy regc ,regb 
-0240 20206b45 branch otp_write 
+0361 6fe349c7 fetch 6 ,mem_mouse_le_locall_addr2_last 
+0362 684b467b fetcht 6 ,mem_device2_locall_addr 
+0363 98467c00 isub temp ,null 
+0364 20628000 rtn zero 
+0365 df200006 arg 6 ,loopcnt 
+0366 da20467b arg mem_device2_locall_addr ,rega 
+0367 1a622400 copy regc ,regb 
+0368 20206b45 branch otp_write 
 
 p_mouse_load_device_info:
-0241 20400244 call p_mouse_le_addr_init_check 
-0242 2040025a call p_mouse_select_reconn_device 
-0243 20205c8f branch mouse_load_device_info 
-
-p_mouse_le_addr_init_check:
-0244 6fe0c666 fetch 1 ,mem_device_flag 
-0245 c1000000 rtneq mode_24g_device 
-0246 c0008249 beq mode_bt_device1 ,p_mouse_le_addr1_init_check 
-0247 c0010250 beq mode_bt_device2 ,p_mouse_le_addr2_init_check 
-0248 20600000 rtn 
+0369 204003a0 call p_mouse_le_locall_addr_init_check 
+036a 204003b8 call p_mouse_select_reconn_device 
+036b 2040036d call p_mouse_otp_load_dpi 
+036c 20205c90 branch mouse_load_device_info + 1 
+
+p_mouse_otp_load_dpi:
+036d 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+036e c4078000 rtnbit0 mouse_enable_load_and_store_dpi 
+036f 6fe0c690 fetch 1 ,mem_mouse_dpi 
+0370 c0005c94 beq 0 ,mouse_otp_load_dpi 
+0371 c0035742 beq 6 ,mouse_dpi_reinit_set 
+0372 20600000 rtn 
+
+p_mouse_store_dpi_info_check:
+0373 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0374 c289dcb5 bbit1 mouse_enable_eeprom ,mouse_store_eerpom_dpi 
+0375 c28a0377 bbit1 mouse_enable_otp ,p_mouse_store_otp_dpi 
+0376 20600000 rtn 
+
+p_mouse_store_otp_dpi:
+0377 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0378 c4078000 rtnbit0 mouse_enable_load_and_store_dpi 
+0379 6a4149fa fetchr regb ,2 ,mem_otp_offset_dpi 
+037a 1a422600 copy regb ,regc 
+
+p_mouse_otp_store_dpi_loop:
+037b 20405e51 call mouse_read_otp_dpi_common 
+037c 6fe0c9d4 fetch 1 ,mem_mouse_dpi_temp 
+037d 203a0385 branch p_mouse_otp_dpi_store ,blank 
+037e 67e0c9d3 store 1 ,mem_mouse_dpi_last 
+037f 1a60a601 increase 1 ,regc 
+0380 6fe149fc fetch 2 ,mem_otp_offset_dpi_end 
+0381 9a667c00 isub regc ,null 
+0382 24610000 nrtn positive 
+0383 1a622400 copy regc ,regb 
+0384 2020037b branch p_mouse_otp_store_dpi_loop 
+
+p_mouse_otp_dpi_store:
+0385 6fe0c9d3 fetch 1 ,mem_mouse_dpi_last 
+0386 1fe17ef0 and pdata ,0xf0 ,pdata 
+0387 203a038f branch p_mouse_dpi_store_last_check ,blank 
+0388 6fe0c690 fetch 1 ,mem_mouse_dpi 
+0389 2040039d call p_mouse_dpi_otp_store_judge 
+038a 67e0c9d5 store 1 ,mem_mouse_otp_dpi_value 
+
+p_mouse_dpi_store_end:
+038b df200001 arg 1 ,loopcnt 
+038c 1a622400 copy regc ,regb 
+038d da2049d5 arg mem_mouse_otp_dpi_value ,rega 
+038e 20206b45 branch otp_write 
+
+p_mouse_dpi_store_last_check:
+038f 6848c9d3 fetcht 1 ,mem_mouse_dpi_last 
+0390 6fe0c690 fetch 1 ,mem_mouse_dpi 
+0391 2040039d call p_mouse_dpi_otp_store_judge 
+0392 98467c00 isub temp ,null 
+0393 20628000 rtn zero 
+0394 1ff27e00 lshift4 pdata ,pdata 
+0395 9840fe00 iadd temp ,pdata 
+0396 67e0c9d5 store 1 ,mem_mouse_otp_dpi_value 
+0397 1a627e00 copy regc ,pdata 
+0398 684949fa fetcht 2 ,mem_otp_offset_dpi 
+0399 98467c00 isub temp ,null 
+039a 2022838b branch p_mouse_dpi_store_end ,zero 
+039b 1a60a7ff increase -1 ,regc 
+039c 2020038b branch p_mouse_dpi_store_end 
+
+p_mouse_dpi_otp_store_judge:
+039d c1800000 rtnne mouse_dpi_level1 
+039e 1fe0fe06 increase 6 ,pdata 
+039f 20600000 rtn 
+
+p_mouse_le_locall_addr_init_check:
+03a0 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+03a1 c29f03a7 bbit1 mouse_enable_24g_first_auto_pairing ,p_mouse_le_addr1_init_check 
+03a2 6fe0c666 fetch 1 ,mem_device_flag 
+03a3 c1000000 rtneq mode_24g_device 
+03a4 c00083a7 beq mode_bt_device1 ,p_mouse_le_addr1_init_check 
+03a5 c00103ae beq mode_bt_device2 ,p_mouse_le_addr2_init_check 
+03a6 20600000 rtn 
 
 p_mouse_le_addr1_init_check:
-0249 6fe3466e fetch 6 ,mem_device1_locall_addr 
-024a 684b46e6 fetcht 6 ,mem_mouse_compare_addr 
-024b 98467c00 isub temp ,null 
-024c 24628000 nrtn zero 
-024d 6fe342db fetch 6 ,mem_le_lap 
-024e 67e3466e store 6 ,mem_device1_locall_addr 
-024f 20600000 rtn 
+03a7 6fe3466e fetch 6 ,mem_device1_locall_addr 
+03a8 684b46e6 fetcht 6 ,mem_mouse_compare_addr 
+03a9 98467c00 isub temp ,null 
+03aa 24628000 nrtn zero 
+03ab 6fe342db fetch 6 ,mem_le_lap 
+03ac 67e3466e store 6 ,mem_device1_locall_addr 
+03ad 20600000 rtn 
 
 p_mouse_le_addr2_init_check:
-0250 6fe3466e fetch 6 ,mem_device1_locall_addr 
-0251 684b46e6 fetcht 6 ,mem_mouse_compare_addr 
-0252 98467c00 isub temp ,null 
-0253 24628000 nrtn zero 
-0254 6fe342db fetch 6 ,mem_le_lap 
-0255 1fe0ff00 add pdata ,0x0100 ,pdata 
-0256 67e3466e store 6 ,mem_device1_locall_addr 
-0257 20600000 rtn 
+03ae 6fe3467b fetch 6 ,mem_device2_locall_addr 
+03af 684b46e6 fetcht 6 ,mem_mouse_compare_addr 
+03b0 98467c00 isub temp ,null 
+03b1 24628000 nrtn zero 
+03b2 6fe342db fetch 6 ,mem_le_lap 
+03b3 1fe0ff00 add pdata ,0x0100 ,pdata 
+03b4 67e3467b store 6 ,mem_device2_locall_addr 
+03b5 20600000 rtn 
 
 p_mouse_buletooth_fast_conn_end:
-0258 2040025a call p_mouse_select_reconn_device 
-0259 20205a9c branch mouse_buletooth_fast_conn_end + 2 
+03b6 204003b8 call p_mouse_select_reconn_device 
+03b7 20205a9c branch mouse_buletooth_fast_conn_end + 2 
 
 p_mouse_select_reconn_device:
-025a 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-025b c30a5c6f bbit0 mouse_enable_otp ,mouse_select_reconn_device 
+03b8 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+03b9 c30a5c6f bbit0 mouse_enable_otp ,mouse_select_reconn_device 
+03ba c29f03c0 bbit1 mouse_enable_24g_first_auto_pairing ,p_mouse_load_le_device1 
 
 p_mouse_select_reconn_device_start:
-025c 6fe0c666 fetch 1 ,mem_device_flag 
-025d c1000000 rtneq mode_24g_device 
-025e c0008261 beq mode_bt_device1 ,p_mouse_load_le_device1 
-025f c0010266 beq mode_bt_device2 ,p_mouse_load_le_device2 
-0260 20600000 rtn 
+03bb 6fe0c666 fetch 1 ,mem_device_flag 
+03bc c1000000 rtneq mode_24g_device 
+03bd c00083c0 beq mode_bt_device1 ,p_mouse_load_le_device1 
+03be c00103c5 beq mode_bt_device2 ,p_mouse_load_le_device2 
+03bf 20600000 rtn 
 
 p_mouse_load_le_device1:
-0261 6fe34668 fetch 6 ,mem_device1_addr 
-0262 67e34116 store 6 ,mem_hci_plap 
-0263 6fe3466e fetch 6 ,mem_device1_locall_addr 
-0264 67e342db store 6 ,mem_le_lap 
-0265 20600000 rtn 
+03c0 6fe34668 fetch 6 ,mem_device1_addr 
+03c1 67e34116 store 6 ,mem_hci_plap 
+03c2 6fe3466e fetch 6 ,mem_device1_locall_addr 
+
+p_mouse_le_lap_store:
+03c3 67e342db store 6 ,mem_le_lap 
+03c4 20600000 rtn 
 
 p_mouse_load_le_device2:
-0266 6fe34675 fetch 6 ,mem_device2_addr 
-0267 67e34116 store 6 ,mem_hci_plap 
-0268 6fe3467b fetch 6 ,mem_device2_locall_addr 
-0269 67e342db store 6 ,mem_le_lap 
-026a 20600000 rtn 
+03c5 6fe34675 fetch 6 ,mem_device2_addr 
+03c6 67e34116 store 6 ,mem_hci_plap 
+03c7 6fe3467b fetch 6 ,mem_device2_locall_addr 
+03c8 202003c3 branch p_mouse_le_lap_store 
 
 p_mouse_store_remote_bdaddr:
-026b 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-026c c4010000 rtnbit0 mouse_store_eeprom_flag 
-026d c30a5c43 bbit0 mouse_enable_otp ,mouse_store_remote_bdaddr + 1 
-026e d8e00002 arg mouse_store_eeprom_flag ,queue 
-026f 20405f04 call mouse_disable_function_flag 
-0270 20405c4a call mouse_check_device_addr 
-0271 20400273 call p_mouse_before_store_reconn_info 
-0272 20205ca3 branch mouse_store_device_info_delay 
+03c9 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+03ca c4010000 rtnbit0 mouse_store_eeprom_flag 
+03cb c30a5c43 bbit0 mouse_enable_otp ,mouse_store_remote_bdaddr + 1 
+03cc d8e00002 arg mouse_store_eeprom_flag ,queue 
+03cd 20405f04 call mouse_disable_function_flag 
+03ce 20405c4a call mouse_check_device_addr 
+03cf 204003d1 call p_mouse_before_store_reconn_info 
+03d0 20205ca3 branch mouse_store_device_info_delay 
 
 p_mouse_before_store_reconn_info:
-0273 6fe0c666 fetch 1 ,mem_device_flag 
-0274 c0008277 beq mode_bt_device1 ,p_mouse_store_le_device1 
-0275 c001027c beq mode_bt_device2 ,p_mouse_store_le_device2 
-0276 20600000 rtn 
+03d1 6fe0c666 fetch 1 ,mem_device_flag 
+03d2 c00083d5 beq mode_bt_device1 ,p_mouse_store_le_device1 
+03d3 c00103da beq mode_bt_device2 ,p_mouse_store_le_device2 
+03d4 20600000 rtn 
 
 p_mouse_store_le_device1:
-0277 6fe30178 fetch 6 ,mem_le_plap 
-0278 67e34668 store 6 ,mem_device1_addr 
-0279 6fe342db fetch 6 ,mem_le_lap 
-027a 67e3466e store 6 ,mem_device1_locall_addr 
-027b 20600000 rtn 
+03d5 6fe30178 fetch 6 ,mem_le_plap 
+03d6 67e34668 store 6 ,mem_device1_addr 
+03d7 6fe342db fetch 6 ,mem_le_lap 
+03d8 67e3466e store 6 ,mem_device1_locall_addr 
+03d9 20600000 rtn 
 
 p_mouse_store_le_device2:
-027c 6fe30178 fetch 6 ,mem_le_plap 
-027d 67e34675 store 6 ,mem_device2_addr 
-027e 6fe342db fetch 6 ,mem_le_lap 
-027f 67e3467b store 6 ,mem_device2_locall_addr 
-0280 20600000 rtn 
+03da 6fe30178 fetch 6 ,mem_le_plap 
+03db 67e34675 store 6 ,mem_device2_addr 
+03dc 6fe342db fetch 6 ,mem_le_lap 
+03dd 67e3467b store 6 ,mem_device2_locall_addr 
+03de 20600000 rtn 
 
 p_mouse_bb_event_timer:
-0281 20400283 call p_mouse_le_send_conn_param_update_timer 
-0282 20205b86 branch mouse_bb_event_timer + 1 
+03df 204003f5 call p_mouse_le_send_conn_param_update_timer 
+03e0 2040614d call mouse_low_voltage_led_timer 
+03e1 2040553d call mouse_adc_read 
+03e2 20406110 call mouse_logo_led_on_timer 
+03e3 204061b1 call mouse_led_multi_timer 
+03e4 2040611e call mouse_dpi_led_blink_delay_timer 
+03e5 2040328e call g24_pair_timeout_timer 
+03e6 20403531 call g24_reconn_timeout_timer 
+03e7 20405fdd call mouse_24g_long_sleep_param_update_timer 
+03e8 2040572c call mouse_dpi_key_check_long_press 
+03e9 20405b9b call mouse_bt_discovery_check 
+03ea 20405bab call mouse_commbination_key_process 
+03eb 20405bce call mouse_check_discovery_timeout_timer 
+03ec 20405bd3 call mouse_check_direct_timeout_timer 
+03ed 20405be1 call mouse_le_enable_att_list_timer 
+03ee 20405bee call mouse_le_battery_updata_timer 
+03ef 20405be4 call mouse_le_send_smp_security_request_timer 
+03f0 20405bfb call mouse_check_reconnect_delay_long_sleep 
+03f1 204003f8 call p_mouse_current_mult_update_timer 
+03f2 204056b6 call mouse_wheel_trigger_timer 
+03f3 20405c0e call mouse_store_information_delay_timer 
+03f4 20205c05 branch mouse_check_no_data_timeout_timer 
 
 p_mouse_le_send_conn_param_update_timer:
-0283 da604a05 arg mem_mouse_le_send_conn_param_update_timer ,regc 
-0284 da405aef arg mouse_updata_le_param ,regb 
-0285 202042e0 branch timer_single_step 
+03f5 da604a05 arg mem_mouse_le_send_conn_param_update_timer ,regc 
+03f6 da405aef arg mouse_updata_le_param ,regb 
+03f7 202042e0 branch timer_single_step 
+
+p_mouse_current_mult_update_timer:
+03f8 da60477e arg mem_mouse_current_mult_timer ,regc 
+03f9 da4003fb arg p_mouse_current_mult_reinit ,regb 
+03fa 202042e0 branch timer_single_step 
+
+p_mouse_current_mult_reinit:
+03fb 6fe0c96b fetch 1 ,mem_lpm_mult_init 
+03fc 67e0c0c0 store 1 ,mem_lpm_mult 
+03fd 70477d03 jam 3 ,mem_mouse_long_mult_flag 
+03fe 20600000 rtn 
 
 p_mouse_start_discovery:
-0286 204059ed call mouse_sensor_powerdown 
-0287 20205c1b branch mouse_start_discovery + 1 
+03ff 204059ed call mouse_sensor_powerdown 
+0400 20205c1b branch mouse_start_discovery + 1 
 
 p_mouse_priority_bb_event:
-0288 1a627e00 copy regc ,pdata 
-0289 c0200292 beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
-028a c00a8297 beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
-028b c01e029b beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
-028c c01c82ac beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
-028d c01d02af beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
-028e c00a0290 beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
-028f 20205ac3 branch mouse_priority_bb_event + 2 
+0401 1a627e00 copy regc ,pdata 
+0402 c0200416 beq bt_evt_le_parse_conn_papa_update_rsp ,p_mouse_le_conn_param_update_rsp_recieved 
+0403 c00a841b beq bt_evt_le_disconnected ,p_mouse_le_bb_disconnected 
+0404 c019040d beq bt_evt_le_start_enc ,p_mouse_le_ll_start_encryt 
+0405 c01e0438 beq bt_evt_24g_attempt_success ,p_mouse_24g_attempt_success 
+0406 c01c8448 beq bt_evt_24g_pairing_complete ,p_mouse_24g_pairing_complete 
+0407 c01d044d beq bt_evt_24g_attempt_fail ,p_mouse_24g_attempt_fail 
+0408 c00a040a beq bt_evt_le_connected ,p_mouse_le_bb_event_connected 
+0409 20205ac3 branch mouse_priority_bb_event + 2 
 
 p_mouse_le_bb_event_connected:
-0290 204059e7 call mouse_sensor_poweron 
-0291 20205ad0 branch mouse_le_bb_event_connected 
+040a 58000000 setarg 0 
+040b 67e24bfa store 4 ,mem_le_conn_first_rcv 
+040c 20205ad0 branch mouse_le_bb_event_connected 
+
+p_mouse_le_ll_start_encryt:
+040d 6fe0c795 fetch 1 ,mem_mouse_le_reconnect_flag 
+040e c0008411 beq 1 ,p_mouse_le_ll_reconn_start_encryt 
+040f 70484414 jam 20 ,mem_le_start_encrypt_timer 
+0410 20200413 branch p_mouse_le_ll_reconn_start_encryt_new 
+
+p_mouse_le_ll_reconn_start_encryt:
+0411 20405aef call mouse_updata_le_param 
+0412 70484405 jam 5 ,mem_le_start_encrypt_timer 
+
+p_mouse_le_ll_reconn_start_encryt_new:
+0413 6fe0cbf9 fetch 1 ,mem_le_conn_rcv_new 
+0414 67e0cbfa store 1 ,mem_le_conn_first_rcv 
+0415 20205af6 branch mouse_le_ll_enable_start_enc_flag 
 
 p_mouse_le_conn_param_update_rsp_recieved:
-0292 6fe0ca04 fetch 1 ,mem_mouse_le_send_conn_param_update 
-0293 247a0000 nrtn blank 
-0294 704a0401 jam 1 ,mem_mouse_le_send_conn_param_update 
-0295 704a051e jam 30 ,mem_mouse_le_send_conn_param_update_timer 
-0296 20600000 rtn 
+0416 6fe0ca04 fetch 1 ,mem_mouse_le_send_conn_param_update 
+0417 247a0000 nrtn blank 
+0418 704a0401 jam 1 ,mem_mouse_le_send_conn_param_update 
+0419 704a051e jam 30 ,mem_mouse_le_send_conn_param_update_timer 
+041a 20600000 rtn 
 
 p_mouse_le_bb_disconnected:
-0297 58000000 setarg 0 
-0298 67e0ca04 store 1 ,mem_mouse_le_send_conn_param_update 
-0299 67e0ca05 store 1 ,mem_mouse_le_send_conn_param_update_timer 
-029a 20205ae0 branch mouse_le_bb_disconnected 
+041b 58000000 setarg 0 
+041c 67e0ca04 store 1 ,mem_mouse_le_send_conn_param_update 
+041d 67e0ca05 store 1 ,mem_mouse_le_send_conn_param_update_timer 
+041e 58000000 setarg 0 
+041f 67e147c0 store 2 ,mem_le_battery_level_updata_timer 
+0420 70479400 jam 0 ,mem_mouse_le_bb_connected_flag 
+0421 d8400006 arg le_interval_7_5ms ,temp 
+0422 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0423 c28d8425 bbit1 mouse_enable_bt_125hz ,p_mouse_le_bb_disconnected_next 
+0424 d8400007 arg le_interval_8_75ms ,temp 
+
+p_mouse_le_bb_disconnected_next:
+0425 604942d3 storet 2 ,mem_le_interval_min 
+0426 604942d5 storet 2 ,mem_le_interval_min + 2 
+0427 7047c200 jam le_lpm_enable ,mem_mouse_le_conn_param_reject 
+0428 70495600 jam 0 ,mem_mouse_clear_sensor_data_flag 
+0429 204029cb call le_clr_config_more_data 
+
+p_mouse_bb_disconnected:
+042a 20405b7b call mouse_bb_discon_clear_stack 
+042b 6fe143ef fetch app_disc_rsn_size ,mem_app_disconn_reason 
+042c c283842f bbit1 app_disc_ble ,p_mouse4_0_event_bb_disconn 
+042d c28042fc bbit1 app_disc_by_button ,app_disconn_reason_clear 
+042e 20205c1a branch mouse_start_discovery 
+
+p_mouse4_0_event_bb_disconn:
+042f 6fe143ef fetch app_disc_rsn_size ,mem_app_disconn_reason 
+0430 c28042fc bbit1 app_disc_by_button ,app_disconn_reason_clear 
+0431 6fe0c843 fetch 1 ,mem_le_connect_status_flag 
+0432 1fe17e03 and pdata ,0x03 ,pdata 
+0433 20405b21 call mouse_le_clean_connect_flag 
+0434 c081d4a9 bne 0x03 ,mouse_start_reconnect 
+0435 6fe0cbfd fetch 1 ,mem_le_check_retransmit_discon_flag 
+0436 243a54a9 nbranch mouse_start_reconnect ,blank 
+0437 202054cd branch mouse_app_enter_hibernate 
 
 p_mouse_24g_attempt_success:
-029b 6fe2458f fetch 4 ,mem_24g_addr 
-029c 67e245e8 store 4 ,mem_24g_receiver_addr 
-029d 67e24691 store 4 ,mem_mouse_24g_addr 
-029e 2040355a call g24_ch_syncword_crc8_init 
-029f 20405c0b call mouse_no_data_timer_init 
-02a0 2040618e call mouse_device_poweron_led_config 
-02a1 20405a73 call mouse_init_sensor_reset 
-02a2 70477d00 jam 0 ,mem_mouse_long_mult_flag 
-02a3 7045fc00 jam 0 ,mem_24g_conn_sm 
-02a4 7045e200 jam 0 ,mem_24g_reconn_type 
-02a5 6fe245e8 fetch 4 ,mem_24g_receiver_addr 
-02a6 684a45e4 fetcht 4 ,mem_24g_fast_conn_addr 
-02a7 98467c00 isub temp ,null 
-02a8 20628000 rtn zero 
-02a9 20406016 call mouse_soft_agc_disable 
-02aa 204002b7 call p_mouse_fetch_normal_tx_power 
-02ab 20206042 branch mouse_24g_first_store_reconn_info 
+0438 6fe2458f fetch 4 ,mem_24g_addr 
+0439 67e245e8 store 4 ,mem_24g_receiver_addr 
+043a 67e24691 store 4 ,mem_mouse_24g_addr 
+043b 2040355a call g24_ch_syncword_crc8_init 
+043c 20405c0b call mouse_no_data_timer_init 
+043d 2040618e call mouse_device_poweron_led_config 
+043e 20405a73 call mouse_init_sensor_reset 
+043f 70477d00 jam 0 ,mem_mouse_long_mult_flag 
+0440 7045fc00 jam 0 ,mem_24g_conn_sm 
+0441 7045e200 jam 0 ,mem_24g_reconn_type 
+0442 6fe245e8 fetch 4 ,mem_24g_receiver_addr 
+0443 684a45e4 fetcht 4 ,mem_24g_fast_conn_addr 
+0444 98467c00 isub temp ,null 
+0445 20628000 rtn zero 
+0446 2040044a call p_mouse_fetch_normal_tx_power 
+0447 20206042 branch mouse_24g_first_store_reconn_info 
 
 p_mouse_24g_pairing_complete:
-02ac 20406016 call mouse_soft_agc_disable 
-02ad 204002b7 call p_mouse_fetch_normal_tx_power 
-02ae 20206084 branch mouse_24g_pairing_complete 
+0448 2040044a call p_mouse_fetch_normal_tx_power 
+0449 20206084 branch mouse_24g_pairing_complete 
+
+p_mouse_fetch_normal_tx_power:
+044a 6fe0ca07 fetch 1 ,mem_normal_tx_power 
+044b 67e0c141 store 1 ,mem_tx_power 
+044c 20206016 branch mouse_soft_agc_disable 
 
 p_mouse_24g_attempt_fail:
-02af 20406016 call mouse_soft_agc_disable 
-02b0 204002b7 call p_mouse_fetch_normal_tx_power 
-02b1 6fe0c87a fetch 1 ,mem_mouse_dpi_button_state 
-02b2 c1008000 rtneq dpi_button_state_down 
-02b3 20206053 branch mouse_24g_attempt_fail 
+044d 2040044a call p_mouse_fetch_normal_tx_power 
+044e 6fe0c87a fetch 1 ,mem_mouse_dpi_button_state 
+044f c1008000 rtneq dpi_button_state_down 
+0450 6fe0c600 fetch 1 ,mem_24g_attempt_fail_flag 
+0451 243a5ff2 nbranch mouse_24g_hibernate_set ,blank 
+0452 6fe0c5e2 fetch 1 ,mem_24g_reconn_type 
+0453 c002845f beq pair_and_receiver ,p_mouse_24g_auto_pair_attempt_fail 
+0454 c0008457 beq fast_conn_and_receiver ,p_mouse_24g_fast_conn_attempt_fail 
+0455 c0018466 beq receiver_and_3_0_addr ,p_mouse_reconn_dongle_attempt_fail 
+0456 20206055 branch mouse_24g_attempt_fail + 2 
+
+p_mouse_24g_fast_conn_attempt_fail:
+0457 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0458 c29f045b bbit1 mouse_enable_24g_first_auto_pairing ,p_mouse_24g_start_auto_pair 
+0459 c298045b bbit1 mouse_enable_auto_24g_paring ,p_mouse_24g_start_auto_pair 
+045a 20206062 branch mouse_24g_fast_conn_attempt_fail + 3 
+
+p_mouse_24g_start_auto_pair:
+045b 6fe145d6 fetch 2 ,mem_24g_pair_timeout_init 
+045c 67e145de store 2 ,mem_24g_reconn_timeout 
+045d 7045e205 jam pair_and_receiver ,mem_24g_reconn_type 
+045e 20203534 branch g24_reconn_start 
+
+p_mouse_24g_auto_pair_attempt_fail:
+045f 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0460 c31f6059 bbit0 mouse_enable_24g_first_auto_pairing ,mouse_24g_attempt_fail_enter_hibernate 
+0461 6fe0c71b fetch 1 ,mem_device_number 
+0462 c000e059 beq 1 ,mouse_24g_attempt_fail_enter_hibernate 
+
+p_mouse_24g_first_bluetooth_reconnect:
+0463 20406018 call mouse_24g_stop 
+0464 70466601 jam mode_bt_device1 ,mem_device_flag 
+0465 20205491 branch mouse_le_fast_conn_judge 
+
+p_mouse_reconn_dongle_attempt_fail:
+0466 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0467 c31f6059 bbit0 mouse_enable_24g_first_auto_pairing ,mouse_24g_attempt_fail_enter_hibernate 
+0468 c289e059 bbit1 mouse_enable_eeprom ,mouse_24g_attempt_fail_enter_hibernate 
+0469 c28a6059 bbit1 mouse_enable_otp ,mouse_24g_attempt_fail_enter_hibernate 
+046a c2896059 bbit1 mouse_enable_flash ,mouse_24g_attempt_fail_enter_hibernate 
+046b 2020045b branch p_mouse_24g_start_auto_pair 
+
+p_mouse_start_work:
+046c 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+046d c29f0471 bbit1 mouse_enable_24g_first_auto_pairing ,p_mouse_24g_first_start_auto_pair_mode 
+046e 6fe0c666 fetch 1 ,mem_device_flag 
+046f c000047c beq mode_24g_device ,p_mouse_24g_start_mode 
+0470 20205491 branch mouse_le_fast_conn_judge 
+
+p_mouse_24g_first_start_auto_pair_mode:
+0471 204054ac call mouse_wakeup_from_power_check 
+0472 20340478 branch p_mouse_24g_first_start_reconn ,user 
+
+p_mouse_24g_reconn_general_dongle:
+0473 70466600 jam mode_24g_device ,mem_device_flag 
+0474 6fe14721 fetch 2 ,mem_mouse_24g_power_on_fast_conn_timer 
+0475 67e145de store 2 ,mem_24g_reconn_timeout 
+0476 7045e201 jam fast_conn_and_receiver ,mem_24g_reconn_type 
+0477 20203534 branch g24_reconn_start 
+
+p_mouse_24g_first_start_reconn:
+0478 6fe0c666 fetch 1 ,mem_device_flag 
+0479 c0006067 beq mode_24g_device ,mouse_24g_reconn_dongle_start 
+047a 20405aa8 call mouse_bluetooth_fast_conn_disable 
+047b 20200463 branch p_mouse_24g_first_bluetooth_reconnect 
+
+p_mouse_24g_start_mode:
+047c 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+047d c308e02a bbit0 mouse_enable_24g ,mouse_24g_mode_setup_error 
+047e 20406195 call mouse_device_24g_pair_led_config 
+047f 204054ac call mouse_wakeup_from_power_check 
+0480 20346067 branch mouse_24g_reconn_dongle_start ,user 
+0481 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0482 c2980473 bbit1 mouse_enable_auto_24g_paring ,p_mouse_24g_reconn_general_dongle 
+0483 20206023 branch mouse_24g_start_mode + 7 
 
 p_mouse_store_normal_tx_power:
-02b4 6fe0c141 fetch 1 ,mem_tx_power 
-02b5 67e0ca07 store 1 ,mem_normal_tx_power 
-02b6 20600000 rtn 
-
-p_mouse_fetch_normal_tx_power:
-02b7 6fe0ca07 fetch 1 ,mem_normal_tx_power 
-02b8 67e0c141 store 1 ,mem_tx_power 
-02b9 20600000 rtn 
+0484 6fe0c141 fetch 1 ,mem_tx_power 
+0485 67e0ca07 store 1 ,mem_normal_tx_power 
+0486 20600000 rtn 
 
 p_mouse_idle:
-02ba 2040620e call mouse_low_voltage_led_no_enter_lpm 
-02bb 204078aa call ui_check_paring_button 
-02bc 204002be call p_mouse_dpi_check 
-02bd 20205e61 branch mouse_idle + 4 
+0487 2040620e call mouse_low_voltage_led_no_enter_lpm 
+0488 204078aa call ui_check_paring_button 
+0489 2040048d call p_mouse_dpi_check 
+048a 20205e61 branch mouse_idle + 4 
+
+p_mouse_dpi_check_retransmit:
+048b 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+048c c4140000 rtnbit0 mouse_enable_select_device_by_dpi_button 
 
 p_mouse_dpi_check:
-02be 6fe0c649 fetch 1 ,mem_dpi_button_gpio 
-02bf c17f8000 rtneq gpio_disable 
-02c0 da200000 arg 0 ,rega 
-02c1 70497705 jam mouse_dpi_key ,mem_mouse_key_temp 
-02c2 6848c649 fetcht 1 ,mem_dpi_button_gpio 
-02c3 204002c5 call p_mouse_dpi_key_check 
-02c4 202056c1 branch mouse_dpi_check_next 
+048d 6fe0c649 fetch 1 ,mem_dpi_button_gpio 
+048e c17f8000 rtneq gpio_disable 
+048f da200000 arg 0 ,rega 
+0490 70497705 jam mouse_dpi_key ,mem_mouse_key_temp 
+0491 6848c649 fetcht 1 ,mem_dpi_button_gpio 
+0492 20400494 call p_mouse_dpi_key_check 
+0493 202056c1 branch mouse_dpi_check_next 
 
 p_mouse_dpi_key_check:
-02c5 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
-02c6 c295d6de bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
-02c7 6fe0c974 fetch 1 ,mem_mouse_dpikey_press_status 
-02c8 1fe22600 copy pdata ,regc 
-02c9 6fe0c654 fetch 1 ,mem_matrix_public_gpio 
-02ca c07f82cc beq gpio_disable ,p_mouse_3io6key_dpi_check 
-02cb 202056ce branch mouse_dpi_key_check_next 
+0494 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+0495 c295d6de bbit1 mouse_enable_dpi_key_connect_gnd ,mouse_dpi_key_connect_gnd 
+0496 6fe0c974 fetch 1 ,mem_mouse_dpikey_press_status 
+0497 1fe22600 copy pdata ,regc 
+0498 6fe0c654 fetch 1 ,mem_matrix_public_gpio 
+0499 c07f849b beq gpio_disable ,p_mouse_3io6key_dpi_check 
+049a 202056ce branch mouse_dpi_key_check_next 
 
 p_mouse_3io6key_dpi_check:
-02cc 6fe0c649 fetch 1 ,mem_dpi_button_gpio 
-02cd 20405946 call mouse_gpio_config_output_low 
-02ce 6848c649 fetcht 1 ,mem_dpi_button_gpio 
-02cf 202002d0 branch p_mouse_3io6key_check 
+049b 6fe0c649 fetch 1 ,mem_dpi_button_gpio 
+049c 20405946 call mouse_gpio_config_output_low 
+049d 6848c649 fetcht 1 ,mem_dpi_button_gpio 
+049e 2020049f branch p_mouse_3io6key_check 
 
 p_mouse_3io6key_check:
-02d0 1a627e00 copy regc ,pdata 
-02d1 67e0c978 store 1 ,mem_mouse_key_status 
-02d2 1fe3fe00 lshift pdata ,pdata 
-02d3 1fe22400 copy pdata ,regb 
-02d4 18422600 copy temp ,regc 
-02d5 204055b1 call mouse_gpio_config_input_pd 
-02d6 1a620400 copy regc ,temp 
-02d7 20406ee6 call gpio_get_bit 
-02d8 7d20a400 nsetflag true ,0 ,regb 
-02d9 2040593d call mouse_check_press 
-02da 20205929 branch mouse_check_key_connect_gnd_1 
+049f 1a627e00 copy regc ,pdata 
+04a0 67e0c978 store 1 ,mem_mouse_key_status 
+04a1 1fe3fe00 lshift pdata ,pdata 
+04a2 1fe22400 copy pdata ,regb 
+04a3 18422600 copy temp ,regc 
+04a4 204055b1 call mouse_gpio_config_input_pd 
+04a5 1a620400 copy regc ,temp 
+04a6 20406ee6 call gpio_get_bit 
+04a7 7d20a400 nsetflag true ,0 ,regb 
+04a8 2040593d call mouse_check_press 
+04a9 20205929 branch mouse_check_key_connect_gnd_1 
 
 p_g24_short_sleep:
-02db 204036b4 call g24_lpm_wait 
-02dc 24740000 nrtn user 
-02dd 204036be call g24_setgpio_lpm_before 
-02de 204002e1 call p_clear_wake 
-02df 6fe1c608 fetch 3 ,mem_24g_short_sleep_set 
-02e0 20203622 branch g24_long_seep2 
+04aa 204036b4 call g24_lpm_wait 
+04ab 24740000 nrtn user 
+04ac 204036be call g24_setgpio_lpm_before 
+04ad 204004af call p_clear_wake 
+04ae 2020361b branch g24_short_sleep_next 
 
 p_clear_wake:
-02e1 58000000 setarg 0 
-02e2 79207e15 set1 21 ,pdata 
-02e3 67e40016 store 8 ,mem_gpio_wakeup_cfg 
-02e4 58000000 setarg 0 
-02e5 67e2001e store 4 ,mem_gpio_wakeup_cfg + 8 
-02e6 20600000 rtn 
+04af 58000000 setarg 0 
+04b0 67e40016 store 8 ,mem_gpio_wakeup_cfg 
+04b1 67e2001e store 4 ,mem_gpio_wakeup_cfg + 8 
+04b2 20600000 rtn 
 
 p_mouse_24g_hibernate_set:
-02e7 70460000 jam 0 ,mem_24g_attempt_fail_flag 
-02e8 20403647 call g24_transmit_next_packet 
-02e9 5fffffff setarg -1 
-02ea 67e245af store 4 ,mem_24g_enter_hibernate 
-02eb 58000000 setarg 0 
-02ec 67e3c846 store 7 ,mem_mouse_key 
-02ed 70473f01 jam 1 ,mem_sensor_shutdown_flag 
-02ee 204059ed call mouse_sensor_powerdown 
-02ef 2020622b branch mouse_24g_long_sleep 
+04b3 70460000 jam 0 ,mem_24g_attempt_fail_flag 
+04b4 20403647 call g24_transmit_next_packet 
+04b5 5fffffff setarg -1 
+04b6 67e245af store 4 ,mem_24g_enter_hibernate 
+04b7 58000000 setarg 0 
+04b8 67e3c846 store 7 ,mem_mouse_key 
+04b9 70473f01 jam 1 ,mem_sensor_shutdown_flag 
+04ba 204059ed call mouse_sensor_powerdown 
+04bb 2020622b branch mouse_24g_long_sleep 
 
 p_mouse_setgpio_hibernate:
-02f0 20405a92 call mouse_set_sdio_high 
-02f1 204002e1 call p_clear_wake 
-02f2 204056a9 call mouse_before_hibernate_wheel_gpio_set 
-02f3 6848c654 fetcht 1 ,mem_matrix_public_gpio 
-02f4 20406ef7 call gpio_out_active 
-02f5 6848c654 fetcht 1 ,mem_matrix_public_gpio 
-02f6 20406ed3 call gpio_clr_wake 
-02f7 6fe0c64d fetch 1 ,mem_mouse_sensor_sdio_gpio 
-02f8 20405943 call mouse_gpio_config_output_high 
-02f9 202054df branch mouse_setgpio_hibernate + 3 
+04bc 20405a92 call mouse_set_sdio_high 
+04bd 204004af call p_clear_wake 
+04be 204056a9 call mouse_before_hibernate_wheel_gpio_set 
+04bf 6fe0c64d fetch 1 ,mem_mouse_sensor_sdio_gpio 
+04c0 20405943 call mouse_gpio_config_output_high 
+04c1 6848c65a fetcht 1 ,mem_device_switch_gpio 
+04c2 204055ab call mouse_gpio_set_pupd_by_input 
+04c3 d8400015 arg 21 ,temp 
+04c4 204055b5 call mouse_gpio_config_input_pu 
+04c5 2040611a call mouse_logo_led_off 
+04c6 20400234 call p_mouse_lpm_before_common 
+04c7 202054e2 branch mouse_setgpio_hibernate_next 
 
 p_mouse_24g_package_data:
-02fa c6930000 rtnmark0 mark_24g 
-02fb 20405601 call mouse_motion 
-02fc 24740000 nrtn user 
-02fd 6fe0c77c fetch 1 ,mem_mouse_24g_long_sleep_flag 
-02fe 70477c00 jam 0 ,mem_mouse_24g_long_sleep_flag 
-02ff 245a0301 ncall p_mouse_24g_short_sleep_clear_wake ,blank 
-0300 2020609d branch mouse_24g_package_data + 7 
+04c8 c6930000 rtnmark0 mark_24g 
+04c9 20405601 call mouse_motion 
+04ca 24740000 nrtn user 
+04cb 6fe0c77c fetch 1 ,mem_mouse_24g_long_sleep_flag 
+04cc 70477c00 jam 0 ,mem_mouse_24g_long_sleep_flag 
+04cd 245a04dd ncall p_mouse_24g_short_sleep_clear_wake ,blank 
+04ce 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+04cf c30b04d2 bbit0 mouse_enable_keyboard ,p_mouse_24g_mouse_package_data 
+04d0 6fe0c96c fetch 1 ,mem_customer_key 
+04d1 243a60b6 nbranch mouse_24g_keyboard_package_data ,blank 
+
+p_mouse_24g_mouse_package_data:
+04d2 204004d4 call p_mouse_data_xy_release 
+04d3 202060a2 branch mouse_24g_mouse_package_data + 1 
+
+p_mouse_data_xy_release:
+04d4 6fe0c659 fetch 1 ,mem_sensor_motion_gpio 
+04d5 c1ff8000 rtnne gpio_disable 
+04d6 6fe0c77d fetch 1 ,mem_mouse_long_mult_flag 
+04d7 207a0000 rtn blank 
+04d8 1fe0ffff increase -1 ,pdata 
+04d9 67e0c77d store 1 ,mem_mouse_long_mult_flag 
+04da 58000000 setarg 0 
+04db 67e24847 store 4 ,mem_mouse_x 
+04dc 20205a73 branch mouse_init_sensor_reset 
 
 p_mouse_24g_short_sleep_clear_wake:
-0301 204002e1 call p_clear_wake 
-0302 20200199 branch p_lpm_write_gpio_wakeup 
+04dd 204004af call p_clear_wake 
+04de 20200253 branch p_lpm_write_gpio_wakeup 
+
+p_mouse_check_select_device_by_switch:
+04df 6fe44713 fetch mouse_flag_len ,mem_mouse_flag 
+04e0 c4150000 rtnbit0 mouse_enable_select_device_by_switch_gpio 
+04e1 c31f84ec bbit0 mouse_enable_switch_gpio_connect_vin ,p_mouse_switch_gpio_connect_gnd 
+
+p_mouse_switch_gpio_connect_vin_check:
+04e2 204004ee call p_mouse_switch_gpio_pd_set 
+04e3 204004e8 call p_mouse_switch_gpio_connect_vin 
+
+p_mouse_switch_gpio_pu_set:
+04e4 6848c65a fetcht 1 ,mem_device_switch_gpio 
+04e5 20406ef3 call gpio_out_inactive 
+04e6 6848c65a fetcht 1 ,mem_device_switch_gpio 
+04e7 202055b5 branch mouse_gpio_config_input_pu 
+
+p_mouse_switch_gpio_connect_vin:
+04e8 6848c65a fetcht 1 ,mem_device_switch_gpio 
+04e9 20406ee6 call gpio_get_bit 
+04ea 2420dec2 nbranch mouse_check_select_24g_device ,true 
+04eb 20205ebe branch mouse_select_btdevice 
+
+p_mouse_switch_gpio_connect_gnd:
+04ec 204004e4 call p_mouse_switch_gpio_pu_set 
+04ed 20405ebb call mouse_switch_gpio_connect_gnd 
+
+p_mouse_switch_gpio_pd_set:
+04ee 6848c65a fetcht 1 ,mem_device_switch_gpio 
+04ef 20406ef7 call gpio_out_active 
+04f0 6848c65a fetcht 1 ,mem_device_switch_gpio 
+04f1 202055b1 branch mouse_gpio_config_input_pd 
 
 p_mouse_init_sensor:
-0303 20405958 call mouse_read_sensor_id 
-0304 c018595f beq p32xx_id1 ,mouse_init_p32xx_id2_judge 
-0305 c018d9c6 beq p3065_id1 ,mouse_init_p3065 
-0306 c02c0308 beq pka8g2_id1 ,p_mouse_ka8g2_id2_judge 
-0307 20205952 branch mouse_init_sensor + 5 
+04f2 20405958 call mouse_read_sensor_id 
+04f3 c018595f beq p32xx_id1 ,mouse_init_p32xx_id2_judge 
+04f4 c018d9c6 beq p3065_id1 ,mouse_init_p3065 
+04f5 c02c04f7 beq pka8g2_id1 ,p_mouse_ka8g2_id2_judge 
+04f6 20205952 branch mouse_init_sensor + 5 
 
 p_mouse_ka8g2_id2_judge:
-0308 204059e7 call mouse_sensor_poweron 
-0309 6fe0c85a fetch 1 ,mem_sensor_id2 
-030a c02c830c beq pka8g2_id2 ,p_mouse_ka8g2_init_param 
-030b 2020595f branch mouse_init_p32xx_id2_judge 
+04f7 204059e7 call mouse_sensor_poweron 
+04f8 6fe0c85a fetch 1 ,mem_sensor_id2 
+04f9 c02c84fb beq pka8g2_id2 ,p_mouse_ka8g2_init_param 
+04fa 2020595f branch mouse_init_p32xx_id2_judge 
 
 p_mouse_ka8g2_init_param:
-030c 7049570b jam ka8g2 ,mem_config_sensor_type 
-030d da604a0b arg mem_sensor_ka8g2_init_new ,regc 
-030e 20205995 branch mouse_sensor_wr_seq 
-
-p_mouse_motion:
-030f 78547c00 disable user 
-0310 58000000 setarg 0 
-0311 67e34847 store 6 ,mem_mouse_x 
-0312 20400314 call p_mouse_check_sensor_data 
-0313 20205606 branch mouse_motion + 5 
+04fb 7049570b jam ka8g2 ,mem_config_sensor_type 
+04fc da604a0b arg mem_sensor_ka8g2_init_new ,regc 
+04fd 20205995 branch mouse_sensor_wr_seq 
 
 p_mouse_check_sensor_data:
-0314 6fe0c420 fetch 1 ,mem_spi_write_flash_sm 
-0315 c1800000 rtnne flash_sm_no_buys 
-0316 6fe0c957 fetch 1 ,mem_config_sensor_type 
-0317 c0058319 beq ka8g2 ,p_mouse_pka8g2_sensor_motion 
-0318 202059f8 branch mouse_check_sensor_data + 2 
+04fe 6fe0c420 fetch 1 ,mem_spi_write_flash_sm 
+04ff c1800000 rtnne flash_sm_no_buys 
+0500 6fe0c957 fetch 1 ,mem_config_sensor_type 
+0501 c0058503 beq ka8g2 ,p_mouse_pka8g2_sensor_motion 
+0502 202059f8 branch mouse_check_sensor_data + 2 
 
 p_mouse_pka8g2_sensor_motion:
-0319 20405a6d call mouse_clear_sensor_data 
-031a 6fe0c659 fetch 1 ,mem_sensor_motion_gpio 
-031b c07f831f beq gpio_disable ,p_mouse_pka8g2_sensor_motion_1 
-031c 6848c659 fetcht 1 ,mem_sensor_motion_gpio 
-031d 20406ee6 call gpio_get_bit 
-031e 24608000 nrtn true 
+0503 20405a6d call mouse_clear_sensor_data 
+0504 6fe0c659 fetch 1 ,mem_sensor_motion_gpio 
+0505 c07f8509 beq gpio_disable ,p_mouse_pka8g2_sensor_motion_1 
+0506 6848c659 fetcht 1 ,mem_sensor_motion_gpio 
+0507 20406ee6 call gpio_get_bit 
+0508 24608000 nrtn true 
 
 p_mouse_pka8g2_sensor_motion_1:
-031f 58000000 setarg pan_reg_pid_l 
-0320 204069e5 call twspi_read 
-0321 c0ac5955 bne pka8g2_id1 ,mouse_twspi_reset 
-0322 20205a2f branch mouse_p3212_sensor_motion_2 
+0509 58000000 setarg pan_reg_pid_l 
+050a 204069e5 call twspi_read 
+050b c0ac5955 bne pka8g2_id1 ,mouse_twspi_reset 
+050c 20205a2f branch mouse_p3212_sensor_motion_2 
+
+p_mouse_motion:
+050d 78547c00 disable user 
+050e 58000000 setarg 0 
+050f 67e34847 store 6 ,mem_mouse_x 
+0510 204004fe call p_mouse_check_sensor_data 
+0511 58000089 setarg 0x0089 
+0512 204069e4 call twspi_write 
+0513 20405747 call mouse_setting_sensor_type 
+0514 20405612 call mouse_zwheel 
+0515 20405617 call mouse_t_zwheel 
+0516 2040051b call p_mouse_key 
+0517 2020560c branch mouse_motion + 11 
+
+p_mouse_drawing_optima:
+0518 6fe0c957 fetch 1 ,mem_config_sensor_type 
+0519 c1058000 rtneq ka8g2 
+051a 20205f27 branch mouse_drawing_optima + 1 
+
+p_mouse_key:
+051b 2040584c call mouse_check_firekey_gpio 
+051c 6fe0c987 fetch 1 ,mem_fire_key_flag 
+051d 243a5860 nbranch fire_key_press ,blank 
+051e 6fe0c982 fetch 1 ,mem_fire_key_status 
+051f 243a585f nbranch fire_key_process ,blank 
+0520 20405888 call mouse_check_key_gpio 
+0521 20400523 call p_mouse_ghost_key_check 
+0522 202057ad branch mouse_key + 7 
+
+p_mouse_ghost_key_check:
+0523 70497900 jam 0 ,mem_mouse_matrix_key_cow_count 
+0524 70497a00 jam 0 ,mem_mouse_matrix_key_row_count 
+0525 70497b00 jam 0 ,mem_mouse_ghost_flag 
+0526 1fe22400 copy pdata ,regb 
+0527 6848c644 fetcht 1 ,mem_lbutton_gpio 
+0528 6fe0c647 fetch 1 ,mem_bk_button_gpio 
+0529 98467c00 isub temp ,null 
+052a 20228535 branch p_mouse_matrix_ghost_key_l_bk ,zero 
+052b 6fe0c648 fetch 1 ,mem_fw_button_gpio 
+052c 98467c00 isub temp ,null 
+052d 2022853b branch p_mouse_matrix_ghost_key_l_fw ,zero 
+052e 6848c645 fetcht 1 ,mem_mbutton_gpio 
+052f 6fe0c647 fetch 1 ,mem_bk_button_gpio 
+0530 98467c00 isub temp ,null 
+0531 20228544 branch p_mouse_ghost_key_mbk_rfw ,zero 
+
+p_mouse_ghost_key_mfw_rbk:
+0532 204057fb call mouse_ghost_key_check_m_fw 
+
+p_mouse_ghost_key_rbk:
+0533 20400549 call p_mouse_ghost_key_check_r_bk 
+0534 202057e5 branch mouse_ghost_key_check_next 
+
+p_mouse_matrix_ghost_key_l_bk:
+0535 6848c645 fetcht 1 ,mem_mbutton_gpio 
+0536 6fe0c648 fetch 1 ,mem_fw_button_gpio 
+0537 98467c00 isub temp ,null 
+0538 2022d7d6 branch mouse_ghost_key_lbk_mfw ,zero 
+
+p_mouse_ghost_key_lbk_rfw:
+0539 204057ef call mouse_ghost_key_check_l_bk 
+053a 20200545 branch p_mouse_ghost_key_rfw 
+
+p_mouse_matrix_ghost_key_l_fw:
+053b 6848c645 fetcht 1 ,mem_mbutton_gpio 
+053c 6fe0c647 fetch 1 ,mem_bk_button_gpio 
+053d 98467c00 isub temp ,null 
+053e 20228541 branch p_mouse_ghost_key_lfw_mbk ,zero 
+
+p_mouse_ghost_key_lfw_rbk:
+053f 2040054b call p_mouse_ghost_key_check_l_fw 
+0540 20200533 branch p_mouse_ghost_key_rbk 
+
+p_mouse_ghost_key_lfw_mbk:
+0541 2040054b call p_mouse_ghost_key_check_l_fw 
+0542 20400547 call p_mouse_ghost_key_check_m_bk 
+0543 202057e5 branch mouse_ghost_key_check_next 
+
+p_mouse_ghost_key_mbk_rfw:
+0544 20400547 call p_mouse_ghost_key_check_m_bk 
+
+p_mouse_ghost_key_rfw:
+0545 2040054d call p_mouse_ghost_key_check_r_fw 
+0546 202057e5 branch mouse_ghost_key_check_next 
+
+p_mouse_ghost_key_check_m_bk:
+0547 1a417e12 and regb ,mouse_m_bk_button ,pdata 
+0548 202057f3 branch mouse_ghost_key_check_m_bk + 1 
+
+p_mouse_ghost_key_check_r_bk:
+0549 1a417e0a and regb ,mouse_r_bk_button ,pdata 
+054a 202057f6 branch mouse_ghost_key_check_r_bk + 1 
+
+p_mouse_ghost_key_check_l_fw:
+054b 1a417e11 and regb ,mouse_l_fw_button ,pdata 
+054c 202057f9 branch mouse_ghost_key_check_l_fw + 1 
+
+p_mouse_ghost_key_check_r_fw:
+054d 1a417e12 and regb ,mouse_r_fw_button ,pdata 
+054e 202057ff branch mouse_ghost_key_check_r_fw + 1 
 
Index: output/romcode.rom
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/output/romcode.rom	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/output/romcode.rom	(working copy)
@@ -30895,562 +30895,6 @@
 00000000
 00000000
 00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
-00000000
 00020001
 18000228
 03020002
@@ -31962,4 +31406,4 @@
 00000000
 00000000
 00000000
-0000a965
\ No newline at end of file
+000002f7
\ No newline at end of file
Index: program/patch.prog
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/program/patch.prog	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/program/patch.prog	(working copy)
@@ -1,57 +1,97 @@
 
-//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
+	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
 	beq patch0f_7,p_mouse_3io6key_check
 	beq patch10_1,p_mouse_init_sensor
 	beq patch10_4,p_mouse_buletooth_fast_conn_end
 	beq patch10_5,p_mouse_priority_bb_event
+	beq patch10_6,p_mouse_le
 	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_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
+ifdef POWER_CTRL
+	beq patch33_7,p_power_ctrl_start
+endif
 	rtneq patch3f_7
 	branch assert
 
 /****************************************COMMON PATCH*****************************************/
 
 p_main_loop:
-	ifdef SECURE_CONNECTION
+ifdef SECURE_CONNECTION
 	call sp_calc_sequence_256
 	call sp_calc_sequence_256_check
 endif
@@ -62,6 +102,10 @@
 	call g24_dispatch
 	call lpm_dispatch
 	branch p_main_loop
+	
+p_shutdown_radio:
+	jam 0,0x8900
+	branch shutdown_radio+1
 
 p_set_sync_on:
 	jam 0x60,0x8a0f 
@@ -72,28 +116,46 @@
 	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
+	jam 0,mem_cmd_le_create_conn
+	until null,lpo_edge
+	
 	jam 0x0d,0x8946
 	jam 0x10,0x896f
-	
+	jam 0xcd,0x8a13
 	jam 0x10,0x8a06
 	jam 0x4a,0x8a84
 	jam 0x40,0x8a85
 	jam 0xfe,0x8a16
 	call p_set_otp_config
 //	branch initialize_radio_cont+1
-	fetch 1,mem_wdt_always_work
-	call wdt_set_disable,blank
+	//fetch 1,mem_wdt_always_work
+	call wdt_set_disable
 
 	until null,lpo_edge
 	jam 0x5f,0x813b 
+	until null,lpo_edge
+	jam 0x88,0x813c 
+	until null,lpo_edge
 	fetch 1,mem_fcomp_div
 	beq XTAL_16M,p_initialize_radio_16m
 	fetch 1,mem_ring_ibias_trim
@@ -117,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
@@ -167,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
 
@@ -178,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
@@ -204,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
@@ -227,6 +315,25 @@
 	jam 0xfe,0x8a16
 	branch rf_rx_enable+14
 
+p_mouse_g24_retransmit:
+	fetch 1,mem_mouse_need_soft_reset
+	nrtn blank
+	call p_mouse_retransmit_select_device_by_pb_button
+	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
@@ -239,7 +346,12 @@
 	fetcht 4,mem_24g_fast_conn_addr
 	isub temp,null
 	branch g24_ch,zero		//fast conn->power no chage
+ifndef POWER_CTRL
 	branch g24_tx_fast_hop
+else
+	call p_power_ctrl_txpower_incrs
+	branch g24_tx_fast_hop+1
+endif
 	
 p_txon:
 	setarg 0x0aaa7e
@@ -253,32 +365,24 @@
 p_set_tx_power:	
 	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_F35DB,p_set_tx_power_f35db
-	beq TX_POWER_F40DB,p_set_tx_power_f40db
+	//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 
 	setarg 0x250100
@@ -290,7 +394,7 @@
 	setarg 0x250000
 	store 3,0x8a60
 	branch set_tx_power_8a63_28	
-/*
+
 p_set_tx_power_f45db:
 	jam 0x17,0x8a14
 	setarg 0x000000
@@ -378,66 +482,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
@@ -474,6 +518,83 @@
 	setarg 0x8312
 	store 2,0x8907
 	branch p_set_lemode_2m
+p_le_check_retransmit_timesout:
+	fetch 1,mem_le_conn_rcv_new
+	arg 256,regc
+	iadd regc,pdata
+	rtn
+	
+p_le_slave_match:
+	call p_le_check_retransmit
+	branch le_slave_match+1
+p_le_check_retransmit:
+	fetch 1,mem_le_conn_first_rcv
+	rtn blank
+	fetch 1,mem_le_check_retransmit_flag
+	nrtn blank
+	fetcht 1,mem_le_conn_first_rcv
+	fetch 1,mem_le_conn_rcv_new
+	isub temp,null
+	ncall p_le_check_retransmit_timesout,positive	
+	isub temp,pdata
+	sub pdata,100,null
+	branch p_le_check_retransmit_count,positive
+	fetch 1,mem_le_retransmit_cnt
+	sub pdata,20,null
+	ncall p_app_ble_disconnect,positive
+	jam 1,mem_le_check_retransmit_flag
+	rtn 
+p_app_ble_disconnect:
+	jam 1,mem_le_check_retransmit_discon_flag
+	branch app_ble_disconnect
+p_le_check_retransmit_count:
+	fetcht 1,mem_le_arq
+	fetch 1,mem_le_rxbuf_data_header
+	rshift pdata,pdata
+	ixor temp,pdata
+	isolate1 nesn,pdata
+	setarg 0
+	fetcht 1,mem_le_retransmit_cnt
+	setflag true,0,pdata
+	iadd temp,temp
+	storet 1,mem_le_retransmit_cnt
+	rtn
+p_le_got_first_packet_new:
+	fetch 1,mem_le_conn_rcv
+	increase 1,pdata
+	store 1,mem_le_conn_rcv
+	nbranch p_le_got_first_packet_new+7,match
+	fetch 1,mem_le_conn_rcv_new			//lpm  use retention mem
+	increase 1,pdata
+	store 1,mem_le_conn_rcv_new
+	branch le_got_first_packet+4
+	
+p_le_rx_dec:
+	call le_check_retransmit	
+	fetchr rega, 1,mem_le_rxbuf_data_length
+	increase -4,rega
+	nbranch le_crc_fail_consecutive,positive
+	branch le_rx_dec+6
+
+p_le_rx_nopayload:
+	parse demod,bucket,24	
+	rshift32 pdata,pdata
+	rshift16 pdata,pdata
+	istore 3,contw
+	enable swfine
+	call le_set_until_tx_timer
+	branch le_crc_fail,crc_failed
+	bmark0 mark_ble_encryption,le_rx_match
+	fetch 1,mem_le_rxbuf_data_length
+	branch le_rx_match,blank
+	increase -4,pdata
+	store 1,mem_le_rxbuf_data_length
+	call wait_ccm_done
+ 	fetch 1,core_misc_status
+	bbit0 7, le_crc_fail_consecutive
+ 	force regidx_result,regext_index
+	storer regext, 4,mem_le_peer_mic
+	branch le_rx_match
 
 p_le_parse:
 	fetch 1,mem_le_packet_llid
@@ -485,6 +606,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
@@ -534,17 +720,102 @@
 	nbranch le_send_att_write_response_check_auth,zero
 	branch le_send_att_read_response_error_insufficient_auth
 
+
+p_mouse_le:
+	call le_fifo_check_nearly_full
+	nrtn blank
+	fetch 1,mem_mouse_bluetooth_fast_conn_flag
+	beq 0xff,p_mouse_le_next
+	fetch 1,mem_le_connect_status_flag
+	and pdata,0x03,pdata
+	rtnne 0x03
+	fetch 1,mem_le_check_retransmit_flag
+	rtn blank
+	fetch 1,mem_le_check_retransmit_discon_flag
+	nrtn blank	
+p_mouse_le_next:	
+	fetch 1,mem_mouse_clear_sensor_data_flag
+	call mouse_clear_sensor_data_by_reset,blank
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_24G_PAIRING_FLAG,mouse_le_send_empty_packet
+	bbit1 MOUSE_SELECT_DEVICE_FLAG,mouse_le_send_empty_packet
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG,mouse_le_send_empty_packet
+	bbit1 MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG,mouse_le_send_empty_packet
+	call mouse_motion
+	call mouse_check_125Hz
+	nrtn user
+	call mouse_current_mult_update
+	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
@@ -559,6 +830,7 @@
 	arg 12,loopcnt
 	arg mem_gpio_wakeup_cfg,rega
 	arg core_gpio_wakeup_cfg,regc
+	until null,lpo_edge
 p_lpm_write_gpio_loop:
 	ifetch 1,rega
 	ifetcht 1,regc
@@ -578,6 +850,140 @@
 	call otp_read_data+1
 	branch otp_disable_chgpump	//disable otp
 
+p_g24_reconn_dispatch:
+	fetch 2,mem_24g_reconn_count
+	arg 0x01f8,temp
+	iand temp,pdata
+	branch p_g24_reconn_dispatch_next,blank
+	branch g24_reconn_dispatch+5
+
+p_g24_reconn_dispatch_next:
+	call g24_reconn_data_prep
+	call g24_transmit_receive_ack
+	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:	
+	fetch 4,mem_24g_pair_addr
+	fetcht 4,mem_24g_addr
+	isub temp,null
+	branch p_g24_reconn_mode_judge,zero
+	branch g24_reconn_dispatch_next+9
+
+p_g24_reconn_mode_judge:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_AUTO_24G_PARING,mouse_24g_pair_mode_check
+	branch g24_reconn_receiver_addr
+
+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
+	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
+	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:
+	fetch 1,mem_power_ctrl_disable
+	nrtn blank
+	fetch 2,mem_ui_state_map
+	rtnbit1 UI_STATE_BLE_ADV
+	fetchr rega,2,mem_rssi_signal_buf_ptr
+	call rssi_average
+	storet 1,mem_rssi_avg_received
+	fetch 1,mem_rssi_dis_max_24g
+	bmark1 mark_24g,p_power_ctrl_start_next
+	fetch 1,mem_rssi_dis_max_ble
+p_power_ctrl_start_next:
+	isub temp,null
+	nbranch p_power_ctrl_txpower_incrs_force,positive
+	fetch 1,mem_power_ctrl_pac_succ_cnt
+	sub pdata,2,null
+	nbranch p_power_ctrl_txpower_decrs_check,positive
+	fetch 1,mem_power_ctrl_pac_succ_cnt
+	beq 0,p_power_ctrl_txpower_incrs
+	rtn
+
+p_power_ctrl_txpower_decrs_check:
+	fetch 1,mem_power_ctrl_pac_succ_cnt
+	fetcht 1,mem_power_ctrl_pac_succ_cnt_init
+	isub temp,null
+	nrtn zero
+	jam 0,mem_power_ctrl_pac_succ_cnt
+p_power_ctrl_txpower_decrs:
+	fetcht 1,mem_rssi_avg_received
+	fetch 1,mem_rssi_dis_min_24g
+	bmark1 mark_24g,p_power_ctrl_txpower_decrs_next
+	fetch 1,mem_rssi_dis_min_ble
+p_power_ctrl_txpower_decrs_next:	
+	isub temp,null
+	nrtn positive
+	fetch 1,mem_power_ctrl_level
+	beq 0,power_ctrl_decrs_level0
+	increase -1,pdata
+	store 1,mem_power_ctrl_level
+ifdef MORE_POWER_CTRL	
+	beq 3,p_power_ctrl_decrs_level3
+endif
+	beq 2,p_power_ctrl_decrs_level2
+	beq 1,power_ctrl_decrs_level1	//0dBm
+	branch power_ctrl_decrs_level0 //-5dBm
+
+p_power_ctrl_txpower_incrs_force:
+	jam 0,mem_power_ctrl_pac_succ_cnt
+p_power_ctrl_txpower_incrs:
+	fetch 1,mem_power_ctrl_level
+ifdef MORE_POWER_CTRL		
+	beq 4,p_power_ctrl_incrs_level4
+else
+	beq 3,p_power_ctrl_incrs_level3
+endif
+	increase 1,pdata
+	store 1,mem_power_ctrl_level
+	beq 1,power_ctrl_incrs_level1	//0dBm
+	beq 2,p_power_ctrl_incrs_level2
+ifdef MORE_POWER_CTRL	
+	beq 3,p_power_ctrl_incrs_level3
+p_power_ctrl_incrs_level4:	//+7dBm
+	jam TX_POWER_7DB,mem_tx_power
+	rtn		
+p_power_ctrl_decrs_level3:	
+endif
+p_power_ctrl_incrs_level3:	//+5dBm
+	jam TX_POWER_5DB,mem_tx_power
+	rtn	
+p_power_ctrl_decrs_level2:	
+p_power_ctrl_incrs_level2:	//+6dBm
+	jam TX_POWER_3DB,mem_tx_power
+	rtn
+endif
 /****************************************COMMON PATCH END*****************************************/
 
 
@@ -588,88 +994,145 @@
 	store 2,mem_cb_24g_transmit_short_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_mouse_24g_before_lpm_sleep:
-	rtn
+p_soft_reset:
+	nbranch soft_reset+1,wake
+	until null,lpo_edge
+	until null,lpo_edge
+	clear_stack
+	call p_mouse_wheel_init_set,wake
+	branch soft_reset+2
+
+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:
-	fetch 1,mem_device_flag
-	store 1,mem_mouse_device_flag_temp
+	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 mouse_read_otp_device_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
 
+p_mouse_select_device_by_switch_check:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_SELECT_DEVICE_BY_SWITCH_GPIO
+	call p_mouse_check_select_device_by_switch
+p_mouse_device_flag_temp_store:		//can remove:before start work check once again
+	fetch 1,mem_device_flag
+	store 1,mem_mouse_device_flag_temp
+	rtn	
+
+p_mouse_read_otp_device_info:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	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:
 	fetch 2,mem_store_flag
 	arg EEPROM_INIT_FLAG,temp
@@ -678,23 +1141,23 @@
 //	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_reinit:
+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
-	beq 0,p_mouse_device_flag_reinit
-	beq 4,p_mouse_24g_init
-	rtn
-
+	sub pdata,0,null
+	branch p_mouse_device_flag_temp_load,zero
+	sub pdata,4,null
+	branch p_mouse_24g_init,zero
+	rtn positive
 p_mouse_24g_init:
 	jam MODE_24G_DEVICE,mem_device_flag
 	rtn
@@ -718,8 +1181,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:
@@ -765,7 +1227,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
@@ -784,10 +1246,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
@@ -849,11 +1311,83 @@
 /**************store le local addr end**********/
 
 p_mouse_load_device_info:
-	call p_mouse_le_addr_init_check
+	call p_mouse_le_locall_addr_init_check
 	call p_mouse_select_reconn_device
-	branch mouse_load_device_info
+	call p_mouse_otp_load_dpi
+	branch mouse_load_device_info+1
+
+p_mouse_otp_load_dpi:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_LOAD_AND_STORE_DPI
+	fetch 1,mem_mouse_dpi
+	beq 0,mouse_otp_load_dpi
+	beq 6,mouse_dpi_reinit_set
+	rtn
+
+p_mouse_store_dpi_info_check:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_EEPROM,mouse_store_eerpom_dpi
+	bbit1 MOUSE_ENABLE_OTP,p_mouse_store_otp_dpi
+	rtn
 
-p_mouse_le_addr_init_check:
+p_mouse_store_otp_dpi:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	rtnbit0 MOUSE_ENABLE_LOAD_AND_STORE_DPI
+	fetchr regb,2,mem_otp_offset_dpi
+	copy regb,regc
+p_mouse_otp_store_dpi_loop:
+	call mouse_read_otp_dpi_common
+	fetch 1,mem_mouse_dpi_temp
+	branch p_mouse_otp_dpi_store,blank
+	store 1,mem_mouse_dpi_last
+	increase 1,regc
+	fetch 2,mem_otp_offset_dpi_end
+	isub regc,null
+	nrtn positive
+	copy regc,regb
+	branch p_mouse_otp_store_dpi_loop
+
+p_mouse_otp_dpi_store:
+	fetch 1,mem_mouse_dpi_last
+	and pdata,0xf0,pdata
+	branch p_mouse_dpi_store_last_check,blank
+	fetch 1,mem_mouse_dpi
+
+	call p_mouse_dpi_otp_store_judge		//add dpi check
+	
+	store 1,mem_mouse_otp_dpi_value
+p_mouse_dpi_store_end:	
+	arg 1,loopcnt
+	copy regc,regb
+	arg mem_mouse_otp_dpi_value,rega
+	branch otp_write			/* regb = otp address, rega pointers data, loopcnt is count */
+
+p_mouse_dpi_store_last_check:
+	fetcht 1,mem_mouse_dpi_last
+	fetch 1,mem_mouse_dpi
+	call p_mouse_dpi_otp_store_judge
+	isub temp,null
+	rtn zero
+	lshift4 pdata,pdata
+	iadd temp,pdata
+	store 1,mem_mouse_otp_dpi_value
+	
+	copy regc,pdata
+	fetcht 2,mem_otp_offset_dpi
+	isub temp,null
+	branch p_mouse_dpi_store_end,zero
+	
+	increase -1,regc
+	branch p_mouse_dpi_store_end
+
+p_mouse_dpi_otp_store_judge:
+	rtnne MOUSE_DPI_LEVEL1
+	increase 6,pdata
+	rtn
+
+p_mouse_le_locall_addr_init_check:
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,p_mouse_le_addr1_init_check
 	fetch 1,mem_device_flag
 	rtneq MODE_24G_DEVICE
 	beq MODE_BT_DEVICE1,p_mouse_le_addr1_init_check
@@ -870,13 +1404,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:
@@ -886,6 +1420,7 @@
 p_mouse_select_reconn_device:
 	fetch MOUSE_FLAG_LEN,mem_mouse_flag
 	bbit0 MOUSE_ENABLE_OTP,mouse_select_reconn_device			//linkkey 16 byte delete,need add
+	bbit1 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING,p_mouse_load_le_device1
 p_mouse_select_reconn_device_start:
 	fetch 1,mem_device_flag
 	rtneq MODE_24G_DEVICE
@@ -896,20 +1431,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
@@ -944,13 +1475,76 @@
 
 p_mouse_bb_event_timer:
 	call p_mouse_le_send_conn_param_update_timer
-	branch mouse_bb_event_timer+1
+	call mouse_low_voltage_led_timer
+	call mouse_adc_read
+	//led
+	call mouse_logo_led_on_timer
+	call mouse_led_multi_timer
+	call mouse_dpi_led_blink_delay_timer
+	//24g
+	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
+	call mouse_commbination_key_process
+	call mouse_check_discovery_timeout_timer
+	//ble
+	call mouse_check_direct_timeout_timer
+	call mouse_le_enable_att_list_timer
+	call mouse_le_battery_updata_timer
+	call mouse_le_send_smp_security_request_timer
+	//bt
+	call mouse_check_reconnect_delay_long_sleep		//delete 3.0,reconnect fail
+	call p_mouse_current_mult_update_timer
+	call mouse_wheel_trigger_timer
+	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
 	branch timer_single_step
 
+p_mouse_current_mult_update_timer:
+	arg mem_mouse_current_mult_timer,regc
+	arg p_mouse_current_mult_reinit,regb
+	branch timer_single_step
+p_mouse_current_mult_reinit:
+	fetch 1,mem_lpm_mult_init
+	store 1,mem_lpm_mult
+	jam 3,mem_mouse_long_mult_flag
+	rtn
+
 p_mouse_start_discovery:
 	call mouse_sensor_powerdown
 	branch mouse_start_discovery+1
@@ -959,6 +1553,7 @@
 	copy regc,pdata
 	beq BT_EVT_LE_PARSE_CONN_PAPA_UPDATE_RSP,p_mouse_le_conn_param_update_rsp_recieved
 	beq BT_EVT_LE_DISCONNECTED,p_mouse_le_bb_disconnected
+	beq BT_EVT_LE_START_ENC,p_mouse_le_ll_start_encryt
 	beq BT_EVT_24G_ATTEMPT_SUCCESS,p_mouse_24g_attempt_success
 	beq BT_EVT_24G_PAIRING_COMPLETE,p_mouse_24g_pairing_complete
 	beq BT_EVT_24G_ATTEMPT_FAIL,p_mouse_24g_attempt_fail
@@ -966,8 +1561,24 @@
 	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
+
+p_mouse_le_ll_start_encryt:
+	fetch 1,mem_mouse_le_reconnect_flag
+	beq 1,p_mouse_le_ll_reconn_start_encryt
+	jam 20,mem_le_start_encrypt_timer
+	branch p_mouse_le_ll_reconn_start_encryt_new
+p_mouse_le_ll_reconn_start_encryt:
+	call mouse_updata_le_param
+	jam 5,mem_le_start_encrypt_timer
+p_mouse_le_ll_reconn_start_encryt_new:	
+	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
@@ -980,7 +1591,36 @@
 	setarg 0
 	store 1,mem_mouse_le_send_conn_param_update
 	store 1,mem_mouse_le_send_conn_param_update_timer
-	branch mouse_le_bb_disconnected
+	setarg 0
+	store 2,mem_le_battery_level_updata_timer
+	jam 0,mem_mouse_le_bb_connected_flag
+	arg LE_INTERVAL_7_5MS,temp
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit1 MOUSE_ENABLE_BT_125Hz,p_mouse_le_bb_disconnected_next
+	arg LE_INTERVAL_8_75MS,temp
+p_mouse_le_bb_disconnected_next:	
+	storet 2,mem_le_interval_min
+	storet 2,mem_le_interval_min+2
+	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
+p_mouse_bb_disconnected:
+	call mouse_bb_discon_clear_stack
+	fetch APP_DISC_RSN_SIZE,mem_app_disconn_reason
+	bbit1 APP_DISC_BLE,p_mouse4_0_event_bb_disconn
+	bbit1 APP_DISC_BY_BUTTON,app_disconn_reason_clear
+	branch mouse_start_discovery
+p_mouse4_0_event_bb_disconn:
+	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
+	branch mouse_app_enter_hibernate
 
 p_mouse_24g_attempt_success:
 	fetch 4,mem_24g_addr
@@ -997,31 +1637,98 @@
 	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
-	branch mouse_24g_attempt_fail
+	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_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
+	fetch 1,mem_device_number
+	beq 1,mouse_24g_attempt_fail_enter_hibernate		//24g first mode and only 2.4g device
+p_mouse_24g_first_bluetooth_reconnect:
+	call mouse_24g_stop
+	jam MODE_BT_DEVICE1,mem_device_flag
+	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
@@ -1029,6 +1736,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
@@ -1071,15 +1781,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
 	
@@ -1099,14 +1806,42 @@
 	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
-	branch mouse_setgpio_hibernate+3
+	
+	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 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
@@ -1114,39 +1849,58 @@
 	fetch 1,mem_mouse_24g_long_sleep_flag
 	jam 0,mem_mouse_24g_long_sleep_flag
 	ncall p_mouse_24g_short_sleep_clear_wake,blank
-	branch mouse_24g_package_data+7
+
+	fetch MOUSE_FLAG_LEN,mem_mouse_flag
+	bbit0 MOUSE_ENABLE_KEYBOARD,p_mouse_24g_mouse_package_data
+	fetch 1,mem_customer_key
+	nbranch mouse_24g_keyboard_package_data,blank
+p_mouse_24g_mouse_package_data:
+	call p_mouse_data_xy_release
+	branch mouse_24g_mouse_package_data+1
+
+p_mouse_data_xy_release:
+	fetch 1,mem_sensor_motion_gpio
+	rtnne GPIO_DISABLE
+	fetch 1,mem_mouse_long_mult_flag
+	rtn blank
+	increase -1,pdata
+	store 1,mem_mouse_long_mult_flag
+	setarg 0
+	store 4,mem_mouse_x
+	branch mouse_init_sensor_reset
 
 p_mouse_24g_short_sleep_clear_wake:
 	call p_clear_wake
 	branch p_lpm_write_gpio_wakeup
 
-ifdef PWM_SET
-
-/*
-core_clksel
-[7:6]pwm clock select
-	0:sysclk 
-	1:sysclk undivided
-	2:rc2M
-	3:lpo
-*/
-p_pwm_clk_set:
-	fetch 1,core_clksel
-	and pdata,0xc0,pdata
-	beq 0x40,pwm_24m_clk_set
-	beq 0x80,p_pwm_2m_clk_set
-	beq 0xc0,pwm_33k_clk_set
-	branch pwm_12m_clk_set
-p_pwm_2m_clk_set:
-	setarg 2000000
-	rtn
-
-p_pwm_out_set:
-	fetcht 3,mem_pdatatemp+2
-	call p_pwm_clk_set
-	branch pwm_out_set+2
-endif
+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,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_inactive
+	fetcht 1,mem_device_switch_gpio
+	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
@@ -1164,13 +1918,6 @@
 	arg mem_sensor_ka8g2_init_new,regc
 	branch mouse_sensor_wr_seq
 
-p_mouse_motion:
-	disable user
-	setarg 0
-	store 6,mem_mouse_x
-	call p_mouse_check_sensor_data
-	branch mouse_motion+5
-
 p_mouse_check_sensor_data:
 	fetch 1,mem_spi_write_flash_sm
 	rtnne FLASH_SM_NO_BUYS
@@ -1191,51 +1938,346 @@
 	bne PKA8G2_ID1,mouse_twspi_reset
 	branch mouse_p3212_sensor_motion_2
 
-	
-ifdef AUTO_TEST
 p_mouse_motion:
 	disable user
 	setarg 0
 	store 6,mem_mouse_x
-	fetch 1,0X4FF0
-	increase 1,pdata
-	store 1,0X4FF0
-	sub pdata,50,null
-	branch p_ms_x_right,positive
+	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
 
-	sub pdata,100,null
-	branch p_ms_y_up,positive
+p_mouse_drawing_optima:
+	fetch 1,mem_config_sensor_type
+	rtneq KA8G2
+	branch mouse_drawing_optima+1
 
-	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
+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
+
+/*
+core_clksel
+[7:6]pwm clock select
+	0:sysclk 
+	1:sysclk undivided
+	2:rc2M
+	3:lpo
+*/
+p_pwm_clk_set:
+	fetch 1,core_clksel
+	and pdata,0xc0,pdata
+	beq 0x40,pwm_24m_clk_set
+	beq 0x80,p_pwm_2m_clk_set
+	beq 0xc0,pwm_33k_clk_set
+	branch pwm_12m_clk_set
+p_pwm_2m_clk_set:
+	setarg 2000000
+	rtn
+
+p_pwm_out_set:
+	fetcht 3,mem_pdatatemp+2
+	call p_pwm_clk_set
+	branch pwm_out_set+2
+endif
\ No newline at end of file
Index: sched/1305.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/1305.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/1305.dat	(working copy)
@@ -1,7 +1,7 @@
 
 
 mem_system_clk:0c
-mem_lpm_xtalcnt:10 20 64
+mem_lpm_xtalcnt:35 3f 64
 mem_lpm_isogate:db 7b 3b
 mem_lpm_hibernate_switch:20
 mem_lpm_ldo_sel:00
@@ -9,7 +9,7 @@
 mem_lpm_hv_sel:b4
 
 mem_fcomp_div:18
-mem_xtal_c_sel:64
+mem_xtal_c_sel:3e
 mem_gpio_wakeup_cfg:00 00 20 00 00 00 00 00 00 00 00 00
 
 mem_version:08 0e 05 03 00
@@ -22,28 +22,6 @@
 mem_gain_second_agc_en:08	#hw agc: 0:second agc disable
 mem_otp_load_check_sum:5a
 
-#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
-
-mem_adc_dma_enable:00
-mem_adc_saddr_ptr:00 07
-mem_adc_eaddr_ptr:ff 07
-
 mem_ring_ibias_trim:a0
 mem_ring_ibias_vtune_high:bc 02 #700mv
 mem_ring_ibias_vtune_low:90 01 #400mv
Index: sched/DM_module.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/DM_module.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/DM_module.dat	(nonexistent)
@@ -1,242 +0,0 @@
-
-
-mem_device_option:0a
-
-mem_module_connect_state_gpio:FF
-mem_module_mcu_wake_pin:FF
-##############ADC CONFIG##############
-mem_module_read_vdd_count:01
-mem_module_read_vdd_flag:01
-#####################################
-
-##############NVRAM CONFIG##############
-mem_nv_data_ptr:mem_module_nv_data
-mem_nv_data_number:05
-#####################################
-
-
-#####################################
-
-##############UART CONFIG##############
-mem_module_uarta_baud_rate:D0 00
-mem_module_uart_rx_buffer:00 4d
-mem_module_uart_rx_buffer_end:7f 4e
-mem_module_uart_tx_buffer:80 4e
-mem_module_uart_tx_buffer_end:ef 4f
-#####################################
-
-
-
-##############BLUETOOTH CONFIG##############
-###commom###
-mem_soft_version_num:00 11
-mem_module_state:03
-mem_module_bluetooth_stauts_by_command:07
-
-mem_module_flag:00 00
-#bit0 MODULE_FLAG_UART_FLOW_CONTROL
-#bit1 MODULE_FLAG_BLE_SEND_MTU23
-#bit2 MODULE_FLAG_BLE_DATA_ENCRYPT
-
-mem_ui_button_gpio:ff
-mem_lpm_mode:01
-mem_lpm_interval:00 01
-mem_lpm_overhead:08
-mem_lpm_mult_timeout:02
-
-mem_module_wake_up_gpio:04
-
-
-
-###ble###
-mem_le_pairing_handle:2a 00
-mem_le_configuration:08
-
-mem_le_adv_channel_map:07
-mem_le_pairing_mode:01
-
-mem_module_ble_data_uart_max_length:f0
-
-mem_le_scan_enable:00
-mem_le_scan_type:01
-mem_le_scan_interval:00 02
-mem_le_scan_window:00 01
-#mem_le_conn_peer_addr:2a 31 00 33 02 3b
-#mem_cmd_le_create_conn:1b
-
-mem_le_adv_enable:01
-mem_le_adv_interval:f0 00
-mem_module_le_lpm_mult:05
-mem_le_lap:11 fa 0d 43 05 13
-mem_le_name_len:
-'Yichip 1121s
-
-mem_le_adv_data_len:03
-mem_le_adv_data:
-02 01 0e
-
-mem_le_scan_data_len:0e
-
-mem_le_scan_data:# 1 byte length + 1 byte type + N bytes data
-'\09Yichip 1121s
-
-mem_le_pres:02 03 00 05 10 02 03
-
-mem_le_interval_min:
-08 00 #min interval
-10 00 #max interval
-00 00 #latency
-2c 01 #timeout
-
-mem_le_conn_interval:90 00
-mem_le_local_mtu:20 00
-mem_local_rx_max_octets:fb 00 48 08 fb 00 48 08  # 1b
-mem_le_local_feature:21 09 
-mem_le_tx_phys:0707
-#####################################
-
-
-mem_ui_le_uuid_table:mem_module_le_att_list
-
-#attribute list: handle 2bytes, uuid 2bytes, length 1bytes, attribute Nbytes
-mem_module_le_att_list:
-#Primary service GAP ------
-01 00 02 00 28 02 00 18
-
-
-#Appearance
-02 00 02 03 28 01 02
-03 00 02 01 2a 02 c8 00 #3c2=hid mouse
-
-#Device name
-04 00 02 03 28 01 02
-05 00 02 00 2a 14 41 73 74 20 4c 45 20 4d 6f 75 73 65 20 20 20 20 20 20 20 20
-
-
-#Peripheral Preferred Connection Parameters
-06 00 02 03 28 01 02
-07 00 02 04 2a 08 06 00 06 00 64 00 2c 01 # interval 6ms, latency 100, timeout 300
-
-
-#privcy flag
-08 00 02 03 28 01 02
-09 00 02 02 2a 01 01
-
-#reconnecting addr 
-0a 00 02 03 28 01 08
-0b 00 02 03 2a 06 00 00 00 00 00 00
-
-#Primary service GATT ------
-0c 00 02 00 28 02 01 18
-
-#Service changed
-0d 00 02 03 28 01 20
-0e 00 02 05 2a 00
-#Client Characteristic Configuration
-0f 00 02 02 29 02 00 00
-
-#Primary service TX power ------
-10 00 02 00 28 02 04 18
-#Characteristic Tx power level
-11 00 02 03 28 01 16
-12 00 02 07 2a 01 00
-13 00 02 02 29 02 00 00
-
-#Primary service Battery ------
-14 00 02 00 28 02 0f 18
-#Characteristic Battery level
-15 00 02 03 28 01 12
-16 00 02 19 2a 01 38
-
-#Primary service device infomation
-17 00 02 00 28 02 0a 18
-#Characteristic system id
-18 00 02 03 28 01 02
-19 00 02 23 2a 03 00 00 00
-
-#Characteristic manufactor name
-1a 00 02 03 28 01 02
-1b 00 02 29 2a 06 79 69 63 68 69 70
-
-#Characteristic module number
-1c 00 02 03 28 01 02
-1d 00 02 24 2a 06 79 69 63 68 69 70
-
-#Characteristic serial number
-1e 00 02 03 28 01 02
-1f 00 02 25 2a 04 63 6f 6d 33
-
-#Characteristic firmware version
-20 00 02 03 28 01 02
-21 00 02 26 2a 03 31 2e 30
-
-#Characteristic software version
-22 00 02 03 28 01 02
-23 00 02 28 2a 03 31 2e 30
-
-#Characteristic hardware version
-24 00 02 03 28 01 02
-25 00 02 2a 2a 03 31 2e 30
-
-#Characteristic regulatory version
-26 00 02 03 28 01 02
-27 00 02 25 2a 04 63 6f 6d 33
-
-#Primary service yichip transmit ------
-28 00 02 00 28 10 55 e4 05 d2 af 9f a9 8f e5 4a 7d fe 43 53 53 49
-#Characteristic tx--notify read
-29 00 02 03 28 01 12
-2a 00 10 16 96 24 47 C6 23 61 BA D9 4B 4D 1E 43 53 53 49 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-#Client Characteristic Configuration
-2b 00 02 02 29 02 00 00
-
-#Characteristic rx--write
-2c 00 02 03 28 01 08
-2d 00 10 b3 9b 72 34 be ec d4 a8 f4 43 41 88 43 53 53 49 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-
-#Characteristic rx-- write without Response
-2e 00 02 03 28 01 04
-2f 00 10 fe 69 ca 9a 56 19 f6 ab 02 4d aa 6d 43 53 53 49 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-
-#Characteristic rx tx --read write notify
-30 00 02 03 28 01 2a
-31 0010 18 03 A6 28 5E D8 EC 91 1C 48 A3 AC 43 53 53 49 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-#Client Characteristic Configuration
-32 00 02 02 29 02 00 00
-
-
-#End of Attribute list
-00 00
-
-#mem_le_wechat_air_sync_ptr:mem_module_wechat_indication_handle
-#mem_module_wechat_indication_handle:35 38 
-
-#mem_module_wechat_tx_buffer_ptr:mem_wechat_tx_buffer
-#mem_module_wechat_rx_buffer_ptr:mem_wechat_rx_buffer
-
-#mem_le_adv_data_len:03
-#mem_le_adv_data:
-#02 
-#01 #GAP_ADTYPE_FLAGS
-#06 #GAP_ADTYPE_FLAGS_GENERAL |GAP_ADTYPE_FLAGS_BREDR_NOT_SUPPORTED
-
-#05 
-#02 #GAP_ADTYPE_16BIT_MORE
-#E7 FE 00 18
-
-#09 
-#FF #GAP_ADTYPE_MANUFACTURER_SPECIFIC
-#0e 05 #Yichip Microelectronics (Hangzhou) Co.,Ltd.
-#81 E8 2F 96 FD 64
-
-#mem_le_scan_data_len:0e
-
-#mem_le_scan_data:# 1 byte length + 1 byte type + N bytes data
-#'\09Yichip 1305 le
-
-
-
-#eeprom gpio config
-
-
-
Index: sched/adpcm.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/adpcm.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/adpcm.dat	(nonexistent)
@@ -1,95 +0,0 @@
-
-mem_ad_indexTable:ff ff ff ff 02 04 06 08 ff ff ff ff 02 04 06 08
-
-mem_ad_stepsizeTable:
-07 00 00 00
-08 00 00 00
-09 00 00 00
-0a 00 00 00
-0b 00 00 00
-0c 00 00 00
-0d 00 00 00
-0e 00 00 00
-10 00 00 00
-11 00 00 00
-13 00 00 00
-15 00 00 00
-17 00 00 00
-19 00 00 00
-1c 00 00 00
-1f 00 00 00
-22 00 00 00
-25 00 00 00
-29 00 00 00
-2d 00 00 00
-32 00 00 00
-37 00 00 00
-3c 00 00 00
-42 00 00 00
-49 00 00 00
-50 00 00 00
-58 00 00 00
-61 00 00 00
-6b 00 00 00
-76 00 00 00
-82 00 00 00
-8f 00 00 00
-9d 00 00 00
-ad 00 00 00
-be 00 00 00
-d1 00 00 00
-e6 00 00 00
-fd 00 00 00
-17 01 00 00
-33 01 00 00
-51 01 00 00
-73 01 00 00
-98 01 00 00
-c1 01 00 00
-ee 01 00 00
-20 02 00 00
-56 02 00 00
-92 02 00 00
-d4 02 00 00
-1c 03 00 00
-6c 03 00 00
-c3 03 00 00
-24 04 00 00
-8e 04 00 00
-02 05 00 00
-83 05 00 00
-10 06 00 00
-ab 06 00 00
-56 07 00 00
-12 08 00 00
-e0 08 00 00
-c3 09 00 00
-bd 0a 00 00
-d0 0b 00 00
-ff 0c 00 00
-4c 0e 00 00
-ba 0f 00 00
-4c 11 00 00
-07 13 00 00
-ee 14 00 00
-06 17 00 00
-54 19 00 00
-dc 1b 00 00
-a5 1e 00 00
-b6 21 00 00
-15 25 00 00
-ca 28 00 00
-df 2c 00 00
-5b 31 00 00
-4b 36 00 00
-b9 3b 00 00
-b2 41 00 00
-44 48 00 00
-7e 4f 00 00
-71 57 00 00
-2f 60 00 00
-ce 69 00 00
-62 74 00 00
-ff 7f 00 00
-
-
Index: sched/car.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/car.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/car.dat	(nonexistent)
@@ -1,235 +0,0 @@
-mem_device_option:0e
-mem_le_adv_channel_map:07 
-mem_le_adv_enable:00
-
-
-mem_spi_ncs_gpio:ff
-
-mem_le_pres_auth:01
-mem_le_local_mtu:17
-mem_le_adv_interval:60 01 
-mem_local_rx_max_octets:fb 00 48 08 fb 00 48 08  # 1b
-
-
-mem_le_lap:34 75 07 99 07 2b
-mem_le_name_len:
-'YC-CAR-34
-
-mem_le_adv_data_len:1f
-mem_le_adv_data:
-17 09 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 02 01 05 03 02 ff f0
-
-mem_le_scan_data_len:1f
-mem_le_scan_data:
-1e 09 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
-
-
-mem_le_interval_min:
-18 00 #min interval
-20 00 #max interval
-10 00 #latency
-2c 01 #timeout
-
-
-#mem_ui_le_uuid_table:21 95  #0x9E62 BLE_CAR_ATT_LIST
-mem_ui_le_uuid_table:mem_ble_att_list
-
-
-mem_ble_att_list:
-#Primary service GAP ------
-01 00 02 00 28 02 00 18
-#Device name
-02 00 02 03 28 01 0a
-03 00 02 00 2a
-'CAR-BLE-OTA
-
-#Appearance
-04 00 02 03 28 01 02
-05 00 02 01 2a 02 40 14
-#Peripheral Preferred Connection Parameters
-06 00 02 03 28 01 02
-07 00 02 04 2a 08 08 00 20 00 10 00 58 02 # interval 6ms, latency 100, timeout 600
-
-#Primary service device information ------
-08 00 02 00 28 02 0a 18
-
-#Manufacturer Name
-09 00 02 03 28 01 02
-0a 00 02 29 2a 06 59 69 43 68 69 70
-
-#Model Number
-0b 00 02 03 28 01 02
-0c 00 02 24 2a 04 4c 52 32 31
-
-#Software Revision
-0d 00 02 03 28 01 02
-0e 00 02 28 2a 04 56 2e 30 31
-
-#Hardware Revision
-0f 00 02 03 28 01 02
-10 00 02 27 2a 04 56 2e 30 31
-
-#PNP id
-11 00 02 03 28 01 02
-12 00 02 50 2a 07 02 35 12 22 aa 51 31
-
-#Client Characteristic
-13 00 02 02 29 02 00 00
-
-#Primary service yichip transmit ------
-14 00 02 00 28 02 f0 ff
-
-15 00 02 03 28 01 12
-16 00 02 f1 ff 08 00 00 00 00 00 00 00 00
-17 00 02 02 29 02 00 00
-
-18 00 02 03 28 01 08
-19 00 02 f2 ff 08 00 00 00 00 00 00 00 00
-00 00    
-
-##############BLE ATT LIST END####################
-
-mem_lpm_mode:00
-mem_lpm_overhead:06
-mem_lpm_mult_timeout:02
-mem_car_hard_soft_switch:00
-
-mem_power_param_ptr:mem_car_soft_power
-mem_car_power_off_timeout:0c 0c
-
-mem_ui_button_gpio:ff
-mem_ui_button_timeout:14
-mem_ui_button_last_state:01
-
-
-mem_ui_led_struct_ptr:mem_car_style1_led_type
-mem_ui_led_struct_num:01
-
-#style:01
-mem_car_style1_blink_count:ff
-mem_car_style1_struct_led_gpio:05
-mem_car_style1_on_time:20 03
-mem_car_style1_off_time:20 03
-
-#style:02
-mem_car_style2_blink_count:ff
-mem_car_style2_struct_led_gpio:ff
-mem_car_style2_on_time:20 03
-mem_car_style2_off_time:20 03
-
-mem_car_led_num:01
-mem_car_led_map:
-05
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-
-mem_car_config_blood_led1_gpio:ff
-mem_car_config_pairing_led_gpio:ff
-mem_car_config_low_voltage_led_gpio:ff
-
-mem_keyscan_ptr:mem_car_keyscan
-mem_car_key_num:00
-
-
-mem_car_queue_each_size:14 06
-
-mem_queue_ptr:mem_car_queue_each_size
-
-mem_car_config_pairing_led_conn_status:00
-mem_car_config_soft_switch_enable:00
-mem_car_config_pairing_led_gpio:ff
-mem_car_config_low_voltage_led_gpio:ff
-mem_car_config_soft_switch_gpio:ff
-mem_car_config_low_voltage_percent:14
-mem_car_config_bat_notify_enable:01
-mem_car_config_device_select:03
-mem_car_config_ir_enable:00
-mem_car_config_motor_layout:03
-mem_car_config_ir_rx_gpio:ff
-mem_car_config_led_num:ff
-mem_car_config_blood_led_gpio:ff 09 0a 0b 0c 0d 0e 0f
-
-
-mem_motor1_speed:04
-mem_motor2_speed:04
-mem_motor3_speed:09
-mem_motor1_pwm_set:ff ff 00 05 e8 03 00 00
-mem_motor2_pwm_set:ff ff 00 04 e8 03 00 00
-mem_motor3_pwm_set:ff ff 00 03 e8 03 00 00
-mem_motor_pwm_pin1_set:ff ff 00 02 e8 03 00 00
-
-
-mem_car_notify_vdd_count:14
-mem_notify_bat_packet:07 11 00 5a 6b 01 00 01 00 00
-
-mem_vdd_calculate_set:e0 01 90 01 9a 01 00 00	#full_vol;	empty_vol;	low_vol;	now_vol
-
-mem_ir_notify_data:08 11 00 5a 6b 06 00 02 00 00 00
-
-mem_adc_config_flag:01
-
-mem_car_info_request:0e 11 00 5a 6b 08 00 08 00 00 00 00 00 00 00 00 00
-
-mem_car_led_control_timer:05
-
-
-#mem_car_led_control:01 01 01 01 01 01 01 01
-
-mem_car_motor_gpio_num:04
-mem_car_motor_gpio_map:
-00		#left	INC
-01		#right	IND
-02 		#front	INA
-09		#back	INB
-
-#eeprom config
-mem_eeprom_base:80 1f
-mem_eeprom_wp_gpio:06
-mem_eeprom_scl_gpio:07
-mem_eeprom_sda_gpio:08
-
-
-
-
-#rf config
-mem_24g_data_type:01        #mouse 1,kb 2
-mem_24g_lap:38 74 2f 74 07 2b#low 4B used for 24g rxaddr
-mem_tx_power:03	#3dBm
-mem_24g_tx_phy:84#0x01:1M/0x02:2M/0x04:S2/0x84:S8
-mem_24g_rx_phy:84#0x01:1M/0x02:2M/0x04:S2/0x84:S8
-mem_24g_no_ack:00#no ack
-mem_24g_rx_window:60 ea#rx
-mem_24g_hop_interval:1e
-mem_24g_ackpayload_enable:00#ack payload enable
-mem_24g_ch_map1:00 13 2c 42
-mem_24g_ch_map2:06 15 36 48
-mem_24g_ch_map3:0f 1a 3a 4c
-mem_24g_ch_map4:11 23 31 4d
-mem_24g_pair_switch:01
-mem_24g_pair_mode:00
-mem_24g_pair_ch:4e
-mem_24g_pair_tx_power:85 #-5dBm
-mem_24g_pair_addr:56 34 02 01
-mem_24g_enter_hibernate:00 48 60#200ms
-mem_rssi_buff_index:07
-mem_rssi_noise_buffer_ptr:mem_car_rssi_noise_buffer
-mem_rssi_noise_self_buffer_ptr:mem_car_rssi_noise_car_buffer
-mem_rssi_noise_device1_buffer_ptr:mem_car_rssi_noise_remote_buffer
-
-#24g rx init end
-
-mem_car_24g_bind_enable_delay_count:0a#500ms
-mem_car_24g_no_data_timeout_count:64 00#10s
-mem_car_enter_lpm_timer_count:b8 0b#5min
-
-mem_car_save_addr_flag:00
-mem_car_24g_go_die_flag:00
-
-
Index: sched/dongle.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/dongle.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/dongle.dat	(nonexistent)
@@ -1,69 +0,0 @@
-
-mem_device_option:04
-mem_ui_button_gpio:ff
-
-
-#efuse size:28 bytes
-
-#sys config
-#bit7:enable 16M xtal#0:24M#1:16M
-#bit6:enable new channel map
-#bit5:enable eeprom
-#bit4:enable kb icon
-#bit3:enable 24g 2M
-#bit2-0:retention
-mem_dg_sys_config:00  #24M
-
-#24g new process #default value 00,if need new process set value 01
-mem_24g_disable_fec1:00
-mem_dg_24g_tx_power_default:06	#6dBm
-
-#usb config
-#mem_dg_usb_vid_pid:
-#00 #disable
-#mouse only#auto pair
-#51 31#VID
-#20 10#PID
-#mouse & keyboard
-#51 31#VID
-#20 30#PID
-#mem_dg_usb_tx_interval:00
-#mem_dg_usb_device_name:
-#'123456
-
-
-#rf config
-mem_24g_lap:36 26 10 30 12 23#low 4B used for 24g rxaddr
-#mem_24g_tx_phy:01#0x01:1M/0x02:2M/0x04:S2/0x84:S8
-#mem_24g_rx_phy:01#0x01:1M/0x02:2M/0x04:S2/0x84:S8
-#mem_24g_no_ack:00#no ack
-mem_24g_rx_window:78 69#rx
-mem_24g_hop_interval:1e
-#mem_24g_ackpayload_enable:00#ack payload enable
-#mem_24g_ch_map1:00 13 2c 42
-#mem_24g_ch_map2:06 15 36 48
-#mem_24g_ch_map3:0f 1a 3a 4c
-#mem_24g_ch_map4:11 23 31 4d
-#mem_24g_pair_switch:00
-mem_24g_pair_mode:00
-#mem_24g_pair_ch:4e
-#mem_24g_pair_tx_power:85
-#mem_24g_pair_addr:20 15 10 05
-#mem_24g_ch_map_update:00
-#mem_24g_ch_update_map1
-#mem_24g_ch_update_map2
-#mem_24g_ch_update_map3
-#mem_24g_ch_update_map4
-
-#mem_rssi_buff_index:ff
-#mem_rssi_noise_buffer_ptr:mem_dg_rssi_noise_buffer
-#mem_rssi_noise_self_buffer_ptr:mem_dg_rssi_noise_dg_buffer
-#mem_rssi_noise_device1_buffer_ptr:mem_dg_rssi_noise_ms_buffer
-#mem_rssi_noise_device2_buffer_ptr:mem_dg_rssi_noise_kb_buffer
-
-
-
-#mem_rf_debug_rx_gpio:8c
-#mem_rf_debug_tx_gpio:8b
-
-
Index: sched/ff.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/ff.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/ff.dat	(nonexistent)
@@ -1,88 +0,0 @@
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-ff
Index: sched/flippen.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/flippen.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/flippen.dat	(nonexistent)
@@ -1,31 +0,0 @@
-
-
-mem_flippen_no_data_timeout:14 00 #2s
-mem_flippen_start_pair_no_data_timeout:36 01 #31s
-mem_key_longpress_timer_init:08 07	#3min
-
-
-mem_key_press_data:
-00 00 00 4B 00 00 00 00 00	#Page Up
-00 00 00 4E 00 00 00 00 00	#Page Down	
-00 02 00 3E 00 00 00 00 00	#Shift+F5
-00 00 00 29 00 00 00 00 00	#Esc
-00 00 00 05 00 00 00 00 00	#B
-00 00 00 2B 00 00 00 00 00	#tab
-00 00 00 28 00 00 00 00 00	#enter
-00 04 00 2B 00 00 00 00 00	#alt tab
-00 04 00 3D 00 00 00 00 00	#alt f4
-03 CD 00 00 00 00 00 00 00	#play/pause
-03 E9 00 00 00 00 00 00 00	#vol up
-03 EA 00 00 00 00 00 00 00	#vol down
-
-
-mem_standard_key_release:
-00 00 00 00 00 00 00 00 00
-mem_system_ctrl_key_release:
-02 00 00 00 00 00 00 00 00
-mem_media_key_release:
-03 00 00 00 00 00 00 00 00
-
-
-
Index: sched/fpga.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/fpga.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/fpga.dat	(nonexistent)
@@ -1,28 +0,0 @@
-mem_xtal_freq:18
-mem_le_adv_enable:01
-
-mem_rx_window_sniff:00 0e
-
-mem_version:08 0e 05 03 00
-
-mem_le_lap:11 22 35
-mem_le_adv_data_len:03
-mem_le_adv_data:
-02 01 0e
-
-mem_le_scan_data_len:0b
-mem_le_scan_data:
-'\09FPGA1121S
-
-mem_le_adv_interval:20 00
-mem_le_scan_window:20 00
-mem_le_scan_type:01
-mem_le_adv_own_addr_type:01
-mem_le_adv_channel_map:07
-
-mem_device_option:05
-
-mem_rf_init_data:
-ff
-mem_rf_init_ptr:mem_rf_init_data
-
Index: sched/gatt.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/gatt.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/gatt.dat	(nonexistent)
@@ -1,85 +0,0 @@
-
-#attribute list: handle 2bytes, uuid 2bytes, length 1bytes, attribute Nbytes
-mem_le_att_list:
-
-#Primary service GAP ------
-01 00 00 28 02 00 18
-
-#Device name
-02 00 03 28 01 0a
-03 00 00 2a 0c 41 73 74 20 4c 45 20 4d 6f 75 73 65
-
-#Appearance
-04 00 03 28 01 02
-05 00 01 2a 02 c2 03 #3c2=hid mouse
-
-#Peripheral Preferred Connection Parameters
-06 00 03 28 01 02
-07 00 04 2a 08 06 00 06 00 64 00 2c 01 # interval 6ms, latency 100, timeout 300
-
-#Primary service GATT ------
-08 00 00 28 02 01 18
-
-#Service changed
-09 00 03 28 01 20
-0a 00 05 2a 00
-
-#Client Characteristic Configuration
-0b 00 02 29 02 00 00
-
-#Primary service TX power ------
-0c 00 00 28 02 04 18
-#Characteristic Tx power level
-0d 00 03 28 01 06
-0e 00 07 2a 01 00
-
-
-#Primary service Battery ------
-0f 00 00 28 02 0f 18
-#Characteristic Battery level
-10 00 03 28 01 12
-11 00 19 2a 01 38
-
-#Primary service yichip transmit ------
-12 00 00 28 02 f0 18
-#Characteristic tx--notify
-13 00 03 28 01 12
-14 00 f1 2a 14	# for Android device, ATT MTU is just 23 bytes, so payload is 20 bytes max
-'Test read initial va
-#Client Characteristic Configuration
-15 00 02 29 02 00 00
-#Characteristic rx--write
-16 00 03 28 01 0c
-17 00 f0 2a 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-
-#End of Attribute list
-00 00
-
-mem_le_adv_enable:01
-mem_le_adv_data_len:03
-
-mem_le_adv_data:02 01 05
-#flags NOTE: should be included here, or Android will not do connectgatt()
-
-
-mem_le_scan_data_len:17
-
-mem_le_scan_data:	# 1 byte length + 1 byte type + N bytes data
-
-#complete local name
-0e 09 
-#'Ast LE2Serial
-'YiChip BLE2IR
-
-#16bit uuid
-03 03 00 f0
-
-#Apperance
-03 19 40 02
-
-
-mem_le_adv_interval:00 08 
-mem_le_adv_channel_map:07 
-
-mem_24g_lap:77 11 00 33 00 00
-
Index: sched/hci_boot.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/hci_boot.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/hci_boot.dat	(nonexistent)
@@ -1,7 +0,0 @@
-
-mem_device_option:0c
-
-mem_rf_init_data:
-ff
-mem_rf_init_ptr:mem_rf_init_data
-
Index: sched/keyboard.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/keyboard.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/keyboard.dat	(nonexistent)
@@ -1,378 +0,0 @@
-mem_mouse_flag:
-#mouse flag byte1
-#bit0 MOUSE_SELECT_DEVICE_FLAG
-#bit1 MOUSE_24G_PAIRING_FLAG
-#bit2 MOUSE_STORE_EEPROM_FLAG
-#bit3 MOUSE_BT_CANNEL_RECONN_FLAG
-#bit4 MOUSE_LOW_VOLTAGE_FLAG
-#bit5 MOUSE_BT_DISCOVERY_BUTTON_DOWN_FLAG
-#bit6 MOUSE_BT_DISCOVERY_BUTTON_LONG_DOWN_FLAG
-04
-
-#mouse flag byte2
-#bit0 MOUSE_ENABLE_BLE_RANDOM_ADDRE
-#bit1 MOUSE_ENABLE_2K_EEPROM
-#bit2 MOUSE_ENABLE_INIT_DELAY
-#bit3 MOUSE_ENABLE_WAKEUP_FROM_POWER
-#bit4 MOUSE_ENABLE_16M
-#bit5 MOUSE_ENABLE_USB
-#bit6 MOUSE_ENABLE_24G_SEARCH_DONGLE
-#bit7 MOUSE_ENABLE_LOAD_AND_STORE_DPI
-09
-
-#mouse flag byte3
-#bit0 MOUSE_ENABLE_SPI2
-#bit1 MOUSE_ENABLE_24G
-#bit2 MOUSE_ENABLE_FLASH
-#bit3 MOUSE_ENABLE_EEPROM
-#bit4 MOUSE_ENABLE_OTP
-#bit5 MOUSE_ENABLE_ADC
-#bit6 MOUSE_ENABLE_KEYBOARD
-#bit7 MOUSE_ENABLE_DOUBLE_DPI_KEY
-50
-
-#mouse flag byte4
-#bit0 MOUSE_ENABLE_24G_250Hz
-#bit1 MOUSE_ENABLE_24G_500Hz
-#bit2 MOUSE_ENABLE_24G_1000
-#bit3 MOUSE_ENABLE_BT_125Hz
-#bit4 MOUSE_ENABLE_DPI_LEVEL_4
-#bit5 MOUSE_ENABLE_USB_250
-#bit6 MOUSE_ENABLE_USB_500
-#bit7 MOUSE_ENABLE_USB_1000
-00
-
-
-#mouse flag byte5
-#bit0 MOUSE_ENABLE_1IO2LED
-#bit1 MOUSE_ENABLE_BT_RECONN_LED_EFFECT
-#bit2 MOUSE_ENABLE_LOW_LED_BLINK_LIMIT
-#bit3 MOUSE_ENABLE_LOW_LED
-#bit4 MOUSE_ENABLE_LOW_FOR_LED
-#bit5 MOUSE_ENABLE_DPI_FOR_LED
-#bit6 MOUSE_ENABLE_DPI_LOW_FOR_LED
-00
-
-#mouse flag byte6 
-#bit0 MOUSE_ENABLE_SELECT_DEVICE_BY_DPI_BUTTON
-#bit1 MOUSE_ENABLE_SELECT_DEVICE_BY_PB_BUTTON
-#bit2 MOUSE_ENABLE_SELECT_DEVICE_BY_SWITCH_GPIO
-#bit3 MOUSE_ENABLE_CUSTOMER_KEY_CONNECT_VIN_OR_MATRIX
-#bit4 MOUSE_ENABLE_DPI_KEY_CONNECT_GND
-#bit5 MOUSE_ENABLE_PB_BUTTON_CONNECT_GND
-#bit6 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING 
-00
-#mouse flag byte7
-#bit0 MOUSE_ENABLE_AUTO_24G_PARING
-#bit1 MOUSE_ENABLE_24G_POWER_ON_PAIRING
-#bit2 MOUSE_ENABLE_COMMBINATION_KEY_BY_24G_PAIRING
-#bit3 MOUSE_ENABLE_BT_RECONNECT_TIMEOUT_ENTER_DISCOVERY
-#bit4 MOUSE_ENABLE_PB_BUTTON_SHORT_PRESS_ENTER_DISCOVERY
-#bit5 MOUSE_ENABLE_COMMBINATION_KEY_BY_BT_DISCOVERY
-#bit6 MOUSE_ENABLE_DPI_KEY_LONG_PRESS_DISCONVERY
-#bit7 MOUSE_ENABLE_PB_BUTTON_LONG_PRESS_DISCONVERY
-00
-
-#mouse flag byte8
-#bit0 MOUSE_ENABLE_SMOOTHER
-#bit1 MOUSE_ENABLE_XY_OFFSET
-#bit2 MOUSE_ENABLE_24G_AUTO_PAIR_NERVER_BEEN_PAIRED
-#bit3 MOUSE_ENABLE_LE_BATTERY_SERVICE_CANCEL
-#bit4 MOUSE_ENABLE_WHEEL_WAKE_UP_CANCEL
-#bit5 MOUSE_ENABLE_24G_2M_PHY
-#bit6 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING
-1c
-
-
-mem_device_option:0f
-mem_device_number:01
-mem_power_on_flag:01
-
-#ui
-
-mem_ui_button_gpio:ff
-mem_ui_button_timeout:1e
-mem_ui_led_struct_num:00
-
-
-
-#rf
-mem_tx_power:01	#00--0db 01--3db  02--5db  03--f3db  04--f5db
-mem_rssi_buff_index:07
-mem_rssi_signal_buf_ptr:mem_mouse_rssi_signal_buf
-mem_rssi_dis_min_24g_init:85
-mem_rssi_dis_max_24g_init:90
-mem_rssi_dis_min_ble_init:75
-mem_rssi_dis_max_ble_init:80
-mem_rssi_hex_received_max_value_init:63
-mem_power_ctrl_pac_succ_cnt_init:7d
-
-#usb
-mem_usb_offline_check_gpio:ff
-
-
-
-
-#2.4g
-mem_24g_data_type:02	#01--mouse  02--keyboard
-mem_24g_fast_conn_enable:01
-mem_24g_fast_conn_addr:0f 0f 0f 0f
-mem_24g_ch_map_update:00   #00--disable   01--enable
-mem_24g_long_sleep_set_level:02    #00--30ms   01--50ms  02--80ms  03--100ms
-mem_24g_disable_fec1:00	 #00--default mode  01--new process
-mem_24g_rx_window:c0 12     #400us  ## e0 2e#1ms #transmitter long range min:520us
-mem_mouse_24g_pair_tx_power:94 #-20dBm
-
-mem_24g_enter_hibernate:00 48 60
-mem_24g_long_sleep_param_update_timer_init:0a 00	#1s
-mem_24g_transmit_by_interrupt_exit_count_init:50 00
-mem_mouse_24g_power_on_fast_conn_timer:02 00	#1s
-mem_mouse_24g_search_dongle_time_init:32 00	#3mins
-mem_store_information_delay_timer_init:02
-mem_local_rx_max_octets:fb 00 48 08 fb 00 48 08  # 1b
-
-#bt
-mem_lpm_mode:00
-mem_lpm_mult:20
-mem_lpm_mult_init:20
-
-#rf_debug
-mem_rf_debug_rx_gpio:97
-mem_rf_debug_tx_gpio:97
-
-
-
-
-
-#ble
-mem_le_lap:73 83 92 a1 b1 c1
-mem_le_adv_channel_map:07
-
-mem_le_battery_level_updata_timer_init:96 00
-mem_le_keyboard_handle:15 00
-mem_le_notify_handle:19 00
-mem_le_multimedia_handle:1d 00
-mem_le_systemctrl_handle:21 00
-mem_le_pairing_handle:28 00
-mem_le_battery_level_handle:30 00
-
-mem_le_adv_data_len:1f
-mem_le_adv_data:
-#flag
-02 01 05 
-#uuid
-03 03 12 18 
-#appearance
-03 19 c1 03
-
-mem_le_adv_swift_pair:
-#microsoft swift pair
-#06 ff 06 00 03 00 80	
-#name
-'\09BT5.2 Keyboard
-
-mem_le_scan_data_len:1f
-mem_le_scan_data:
-#name
-'\09BT5.2 Keyboard
-
-#max 20bytes, att list data rom limits
-mem_le_name_len:
-'BT5.2 Keyboard
-
-mem_le_interval_min:
-07 00 #min interval
-07 00 #max interval
-20 00 #latency
-2c 01 #timeout
-
-mem_le_adv_ind:03 12 18
-mem_le_adv_direct_ind:ff 00 00
-
-
-
-
-
-#adc
-#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
-
-#led
-
-
-#system
-mem_mouse_24g_pair_timeout_init:58 02  #1min
-mem_mouse_discovery_timeout:58 02  #1min
-mem_mouse_no_data_timeout:70 17   #10mins
-mem_mouse_24g_reconn_timeout_init:64 #10s
-mem_mouse_direct_timeout:64  #10s
-mem_mouse_fast_direct_timeout:64 #10s
-mem_mouse_page_to:00 40		# 16384*0.625ms=10s
-mem_mouse_fast_page_to:00 40		# 16384*0.625ms=10s
-
-mem_same_keyvalue_timer_init:B8 0B		#5min
-mem_keyboard_caps_led_on_timer:58 02	#1min
-
-
-mem_device_flag:00	#00--24g 01--bt/ble
-mem_device1_type:34
-mem_device1_addr:00 00 00 00 00 00
-
-
-
-mem_le_search_mac_manu_name:
-41 70 70 6c 65 20 49 6e 63
-mem_le_search_mac_uuid:
-0a 18
-mem_le_search_service_uuid:
-D0 00 2D 12 1E 4B 0F A4 99 4E CE B5 31 F4 05 79
-
-##												bt button connct gnd          bt button in matrix        two button commbination
-mem_keyboard_pairing_type:00					#                 00                                    00                                 01
-mem_config_select_device_button_gpio:05#              00~16			               ff					ff
-mem_keyboard_commbination_key_bt:7f 06			#		 not care				   not care			     Fn+C
-mem_keyboard_commbination_key_24g:29 14		#		 not care				   not care			     Esc+Q
-mem_keyboard_bt_button_flag:01
-
-
-mem_keyboard_caps_led_gpio:ff
-mem_keyboard_num_led_gpio:ff
-mem_keyboard_power_led_gpio:ff
-
-mem_keyboard_led_r_gpio:ff
-mem_keyboard_led_g_gpio:ff
-mem_keyboard_led_b_gpio:ff
-
-mem_keybord_appearance:c1 03
-
-
-mem_mcu_stb_gpio:15
-mem_mcu_clk_gpio:14
-mem_mcu_rstb_gpio:12
-
-mem_mouse_param_config:
-ff #mem_lbutton_gpio
-ff #mem_mbutton_gpio
-ff #mem_rbutton_gpio
-ff #mem_bk_button_gpio
-ff #mem_fw_button_gpio
-ff #mem_dpi_button_gpio
-ff #mem_whee_a_data_gpio
-ff #mem_whee_b_data_gpio
-ff #mem_mouse_sensor_sclk_gpio
-ff #mem_mouse_sensor_sdio_gpio
-ff #mem_select_sensor_angle_gpio
-ff #mem_sensor_angle_default
-ff #mem_sensor_angle_switch
-ff #mem_config_sensor_dpi	#power on default dpi 00--1200  01--1600
-ff #mem_whee_ta_data_gpio
-ff #mem_whee_tb_data_gpio
-ff #mem_matrix_public_gpio
-ff #mem_config_select_device_button_gpio
-ff #mem_customer_key_gpio
-ff #mem_firebutton_gpio
-ff #mem_dpi_another_button_gpio
-ff #mem_sensor_motion_gpio
-ff #mem_device_switch_gpio
-ff #mem_mouse_reuse_2ice_gpio
-ff #mem_mouse_logo_led_gpio
-ff #mem_mouse_1io2led_multi_24gled
-ff #mem_mouse_1io2led_multi_bt1led
-ff #mem_mouse_1io2led_multi_bt2led
-ff #mem_mouse_low_voltage_alarm_gpio
-ff #mem_mouse_dpi_gpio
-mem_key_excol_gpio:c2 c1 85 84 83 82 81 80 c7 c6 c4
-
-#gpio00~16
-mem_key_row_gpio:
-09 		#r0
-0a 		#r1
-0b 		#r2
-0c 		#r3
-0d 		#r4
-0e 		#r5
-03 		#r6
-07		#r7
-
-#gpio00~16   portA:8x,portB:cx
-mem_key_col_gpio:
-0f		#c0
-10		#c1
-11		#c2
-08		#c14
-16		#c15
-c2		#c3
-c1		#c4
-c4		#c5
-c6		#c6
-c7		#c7
-85		#c8
-84		#c9
-83		#c10
-82		#c11
-80		#c12
-81		#c13
-ff		#c16
-ff		#c17
-ff		#c18
-ff		#c19
-
-mem_keyboard_keyvalue_map:
-#r0 ~ r7
-4c 00 00 00 44 00 2c 51 			#c0
-00 00 00 00 00 00 00 4f 				#c1
-00 e1 00 00 00 e5 00 00 			#c2
-42 2a 43 00 28 31 00 00 			#c3
-00 00 00 00 00 00 52 50 			#c4
-00 00 45 00 00 e0 e3 E7 			#c5
-00 e2 00 00 00 00 00 00 			#c6
-2e 30 25 0c 36 0e 3f 00 				#c7
-2d 2f 27 13 00 33 34 38 				#c8
-41 40 26 12 37 0f 00 00 				#c9
-23 1c 24 18 10 0d 0b 11 			#c10
-7f 00 3e 00 E6 00 00 00 			#c11
-22 17 21 15 19 09 0a 05 			#c12
-3a 39 1f 1a 1b 16 00 00 				#c13
-3b 3c 20 08 06 07 3d 00 			#c14
-35 2b 1e 14 1d 04 29 00 			#c15
-
-mem_keyboard_fn_first:	00			#fn first  00:press f1~f12=f1~f12      01:press fn+f1~f12=f1~f12
-mem_keyboard_fn_esc:	fb			#esc
-mem_keyboard_fn_f1:	f7			#f1
-mem_keyboard_fn_f2:	fa			#f2
-mem_keyboard_fn_f3:	a5			#f3
-mem_keyboard_fn_f4:	a6			#f4
-mem_keyboard_fn_f5:	a7			#f5
-mem_keyboard_fn_f6:	a8			#f6
-mem_keyboard_fn_f7:	eb			#f7
-mem_keyboard_fn_f8:	e9			#f8
-mem_keyboard_fn_f9:	ec			#f9
-mem_keyboard_fn_f10:	ed			#f10
-mem_keyboard_fn_f11:	ee			#f11
-mem_keyboard_fn_f12:	a9			#f12
-mem_keyboard_fn_del:	4c			#delete
-
-# 00: disable           01: enable
-mem_keyboard_fn_arrow_enable_flag:01
-mem_keyboard_fn_left_ctrl_enable_flag:01
-mem_keyboard_fn_space_enable_flag:01
-mem_keyboard_fn_system_switch_enable_flag:00
-
-
-mem_keyboard_commbination_fast_conn_bt:2a 10	# bs+M
-
Index: sched/le_prcp.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/le_prcp.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/le_prcp.dat	(nonexistent)
@@ -1,77 +0,0 @@
-#attribute list: handle 2bytes, uuid 2bytes, length 1bytes, attribute Nbytes
-mem_le_att_list:
-
-#Primary service GAP ------
-01 00 00 28 02 00 18
-
-#Device name
-02 00 03 28 01 0a
-03 00 00 2a 0c 41 73 74 20 4c 45 20 4d 6f 75 73 65
-
-#Appearance
-04 00 03 28 01 02
-05 00 01 2a 02 c2 03 #3c2=hid mouse
-
-#Peripheral Preferred Connection Parameters
-06 00 03 28 01 02
-07 00 04 2a 08 06 00 06 00 64 00 2c 01 # interval 6ms, latency 100, timeout 300
-
-#Primary service GATT ------
-08 00 00 28 02 01 18
-
-#Service changed
-09 00 03 28 01 20
-0a 00 05 2a 00
-
-#Client Characteristic Configuration
-0b 00 02 29 02 00 00
-
-#Primary service TX power ------
-0c 00 00 28 02 04 18
-#Characteristic Tx power level
-0d 00 03 28 01 06
-0e 00 07 2a 01 00
-
-
-#Primary service Battery ------
-0f 00 00 28 02 0f 18
-#Characteristic Battery level
-10 00 03 28 01 12
-11 00 19 2a 01 38
-
-#Primary service yichip PRCP ------
-12 00 00 28 02 f1 18
-#Characteristic device tx
-13 00 03 28 01 12
-14 00 f3 2a 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-#Client Characteristic Configuration
-15 00 02 29 02 00 00
-#Characteristic device rx
-16 00 03 28 01 0e
-17 00 f2 2a 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-#End of Attribute list
-00 00
-
-mem_le_adv_data_len:1b
-mem_le_adv_data:0c 09
-'Yichip Temp
- 03 19 40 02 02 01 05 02 0a 00 03 03 f1 18
-mem_le_scan_data_len:00
-#mem_le_adv_param:00 08 00 08 00 01 00 00 00 00 00 00 00 07 00
-mem_le_adv_enable:01
-
-
-mem_le_adv_interval:20 00 
-mem_le_adv_type:00 
-mem_le_adv_own_addr_type:01 
-mem_le_adv_direct_addr:00 00 00 00 00 00 
-mem_le_adv_channel_map:07 
-
-mem_le_notify_handle:14
-
-mem_lpm_mode:00
-#mem_lpm_ctrl:0f 0f 10 06
-mem_lpm_xtalcnt:0c 10 ca 1f
-mem_device_option:0d
-mem_le_lap:45 67 78 89 90 56
-
Index: sched/le_transmit_uuid.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/le_transmit_uuid.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/le_transmit_uuid.dat	(nonexistent)
@@ -1,62 +0,0 @@
-mem_device_option: 01
-
-#attribute list: handle 2bytes, uuid 2bytes, length 1bytes, attribute Nbytes
-mem_le_att_list:
-
-#Primary service GAP ------
-01 00 00 28 02 00 18
-
-#Device name
-02 00 03 28 01 0a
-03 00 00 2a 0c 41 73 74 20 4c 45 20 4d 6f 75 73 65
-
-#Appearance
-04 00 03 28 01 02
-05 00 01 2a 02 c2 03 #3c2=hid mouse
-
-#Peripheral Preferred Connection Parameters
-06 00 03 28 01 02
-07 00 04 2a 08 06 00 06 00 64 00 2c 01 # interval 6ms, latency 100, timeout 300
-
-#Primary service GATT ------
-08 00 00 28 02 01 18
-
-#Service changed
-09 00 03 28 01 20
-0a 00 05 2a 00
-
-#Client Characteristic Configuration
-0b 00 02 29 02 00 00
-
-#Primary service TX power ------
-0c 00 00 28 02 04 18
-#Characteristic Tx power level
-0d 00 03 28 01 06
-0e 00 07 2a 01 00
-
-
-#Primary service Battery ------
-0f 00 00 28 02 0f 18
-#Characteristic Battery level
-10 00 03 28 01 12
-11 00 19 2a 01 38
-
-#Primary service yichip transmit ------
-12 00 00 28 02 f0 18
-#Characteristic tx--notify
-13 00 03 28 01 12
-14 00 f1 2a 17 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-#Client Characteristic Configuration
-15 00 02 29 02 00 00
-#Characteristic rx--write
-16 00 03 28 01 0c
-17 00 f0 2a 17 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-
-#End of Attribute list
-00 00
-
-mem_le_adv_data_len:1b
-mem_le_adv_data:0c 09 52 74 72 69 76 72 5f 52 36 32 31 03 19 40 02 02 01 05 02 0a 00 03 03 00 f0
-mem_le_scan_data_len:00
-mem_le_adv_param:00 08 00 08 00 01 00 00 00 00 00 00 00 07 00
-mem_le_adv_enable:01
Index: sched/mesh.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/mesh.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/mesh.dat	(nonexistent)
@@ -1,211 +0,0 @@
-
-
-mem_le_adv_enable: 01
-
-#mem_mesh_three_tuple_ProductID:
-#灯
-#00 5F 74 FC
-#18 14 6c 11 eb f1
-#33 42 99 b0 e7 0b f6 5e 68 67 bd 9a a7 42 b9 b9
-
-#风扇灯
-#00 5F 7A D1
-#486e703cafa8
-#55c742493aac4fba2d9aae6c5b6cc061
-
-#00 5F 7A D1
-#486e703cafa9
-#c435c7f0e6e2b4c6a9dc4f6f3eaf9fa3
-
-#四键开关
-#00 5F 7C 48
-#486e703efaff
-#f5816553a881fbc734b6562ebdeb6d58
-
-mem_le_scan_interval:0a 00	#6.25ms
-mem_le_scan_window:03 00	#40ms
-
-mem_le_adv_type:00
-#ADV_NONCONN_IND
-
-
-#########mesh fast pairing setting#############
-mem_mesh_Device_PID:51 
-# Bit0,1,2,3:  BLE ADV VERSION   
-#bit4:1 (defult) 
-#bit5:suport OTA 1(defult) 
-#bit 6,7:
-#00	(BLE 4.0)
-#01 (defult BLE 4.2) 
-#10 (BLE 5.0) 
-#11 (BLE above 5.0 )
-
-mem_mesh_UUID_FeatureFlag:02 #bit 1-7:UUID VERSION bit0:ADV STATE
-mem_mesh_UUID_FeatureFlag1:83
-mem_mesh_PDU_RFU: 20
-#Bit0: 支锟街硷拷锟斤拷锟斤拷锟斤拷锟斤拷志位
-#Bit1: 锟斤拷展AuthValue锟斤拷志位
-#Bit2: 支锟斤拷Tiny Mesh app 锟斤拷锟斤拷锟斤拷志位
-#Bit3: RFU
-#Bit7~4: Genie Bt Mesh Stack锟斤拷志锟斤拷未使锟斤拷锟斤拷0
-#Bit7~4:1锟斤拷示锟斤拷锟斤拷TG7111B (YC1059)锟斤拷锟斤拷锟
-
-mem_mesh_OOB_information:00 00
-
-#################
-
-
-mem_device_option:0b
-
-mem_mesh_send_message_TTL:05
-
-
-mem_mesh_sha256_ConfirmationKey_ascii:
-43 6f 6e 66 69 72 6d 61 74 69 6f 6e
-4b 65 79
-
-mem_mesh_sha256_SessionKey_ascii:
-53 65 73 73 69 6f 6e
-4b 65 79
-
-mem_mesh_sha256_DeviceKey_ascii:
-44 65 76 69 63 65
-4b 65 79
-
-
-mem_k2_P_len:
-01 00
-mem_k2_SALT:
-4f 90 48 0c 18 71 bf bf fd 16 97 1f 4d 8d 10 b1
-
-mem_k3_SALT:
-00 36 44 35 03 f1 95 cc 8a 71 6e 13 62 91 c3 02
-mem_k3_id64_01:
-69 64 36 34 01
-
-mem_k4_SALT:
-0e 9a c1 b7 ce fa 66 87 4c 97 ee 54 ac 5f 49 be
-mem_k4_id6_01:
-69 64 36 01
-
-
-mem_mesh_element_number:
-01
-mem_mesh_element_device_ptr:mem_mesh_element_device
-
-mem_mesh_element_device_length:
-1B 00
-
-mem_mesh_element_device:
-#c1 03     #锟斤拷锟斤拷毯锟介播锟斤拷址
-c0 00	#锟斤拷锟介播锟斤拷址
-#c0 01	#锟斤拷锟斤拷锟介播锟斤拷址
-
-
-mem_mesh_network_relay_queue_each_size:
-22 04 
-
-mem_mesh_element_device1:
-c0 01	#锟斤拷锟斤拷锟介播锟斤拷址
-
-mem_mesh_element_device2:
-c0 01	#锟斤拷锟斤拷锟介播锟斤拷址
-#00 00
-
-
-mem_mesh_core_feature:
-00
-#bit0 MESH_FEATURE_LOG
-#bit1 
-
-
-#proxy adv init
-mem_le_adv_interval:f0 00
-mem_le_adv_channel_map:07
-
-mem_le_local_mtu:28
-
-mem_le_scan_data_len:0e
-02 01 06
-'\09Tiny Mesh
-
-
-mem_ui_le_uuid_table:mem_mesh_le_att_list
-mem_mesh_le_att_list:
-#Primary service yichip transmit ------
-01 00 02 00 28 02 01 18
-#Service Changed
-02 00 02 03 28 01 20
-03 00 02 05 2a 01 00
-#Client Characteristic Configuration
-04 00 02 02 29 02 01 00
-
-#Primary service GAP ------
-05 00 02 00 28 02 00 18
-
-#Device name
-06 00 02 03 28 01 4e
-07 00 02 00 2a 13 41 73 74 20 4c 45 20 4d 6f 75 73 65 20 20 20 20 20 20 20
-
-#Apperance
-08 00 02 03 28 01 4e
-09 00 02 01 2a 02 00 00
-
-#Perpheral Preferred Connection Parameters
-0a 00 02 03 28 01 02
-0b 00 02 04 2a 08 10 00 20 00 05 00 2c 01
-
-#Mesh Proxy Service Declaration
-0c 00 02 00 28 02 28 18
-#Mesh Proxy Data In Characteristic Declaration
-#Mesh Proxy Data In Characteristic Value
-#Characteristic --write without response
-0d 00 02 03 28 01 04
-0e 00 02 DD 2A 01 00
-#Mesh Proxy Data Out Characteristic Declaration
-#Mesh Proxy Data Out Characteristic Value
-#Mesh Proxy Data Out Client Characteristic Configuration
-#Characteristic --notify
-0f 00 02 03 28 01 10
-10 00 02 DE 2A 01 00
-#Client Characteristic Configuration
-11 00 02 02 29 02 00 00
-
-#Mesh Provisioning Service Declaration
-12 00 02 00 28 02 27 18
-#Mesh Provisioning Data In Characteristic Declaration
-#Mesh Provisioning Data In Characteristic Value
-#Characteristic --write without response
-13 00 02 03 28 01 04
-14 00 02 DB 2A 01 00
-#Mesh Provisioning Data Out Characteristic Declaration
-#Mesh Provisioning Data Out Characteristic Value
-#Mesh Provisioning Data Out Client Characteristic Configuration
-#Characteristic --notify
-15 00 02 03 28 01 10
-16 00 02 DC 2A 01 00
-#Client Characteristic Configuration
-17 00 02 02 29 02 00 00
-
-
-00 00
-
-
-
-
-
-
-
-
-mem_rf_init_data:
-# xtal 16M
-ff
-mem_rf_init_ptr:mem_rf_init_data
-
-mem_mesh_segmented_access_message_SegN_upper_limit:01
-mem_mesh_segmented_access_message_Segment_ptr:mem_mesh_segmented_access_message_Segment
-
-mem_mesh_vendor_mesh_receive_tid: ff
-
-mem_mesh_chip_select: 02
-
Index: sched/mouse.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/mouse.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/mouse.dat	(working copy)
@@ -82,14 +82,15 @@
 #bit4 MOUSE_ENABLE_WHEEL_WAKE_UP_CANCEL
 #bit5 MOUSE_ENABLE_24G_2M_PHY
 #bit6 MOUSE_ENABLE_24G_FIRST_AUTO_PAIRING
+#bit7 MOUSE_ENABLE_SWITCH_GPIO_CONNECT_VIN
 1b
 
 mem_mouse_param_config:
 06 #mem_lbutton_gpio
 08 #mem_mbutton_gpio
 07 #mem_rbutton_gpio
-ff #mem_bk_button_gpio
-ff #mem_fw_button_gpio
+06 #mem_bk_button_gpio
+07 #mem_fw_button_gpio
 08 #mem_dpi_button_gpio
 12 #mem_whee_a_data_gpio
 14 #mem_whee_b_data_gpio
@@ -157,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
@@ -166,35 +168,18 @@
 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
 
 #2.4g
-mem_24g_lap: 02 11 36 55 51 61
+mem_24g_lap: 05 22 26 55 51 61
 mem_24g_data_type:01	#01--mouse  02--keyboard
 mem_24g_fast_conn_enable:01
 mem_24g_fast_conn_addr:0f 0f 0f 0f
@@ -204,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
@@ -222,7 +207,7 @@
 
 
 #ble
-mem_le_lap:71 81 91 a1 b3 c1
+mem_le_lap:51 81 91 a1 b3 c1
 mem_le_adv_channel_map:07
 mem_local_rx_max_octets:fb 00 48 08 fb 00 48 08  # 1b
 mem_le_battery_level_updata_timer_init:96 00
@@ -275,31 +260,31 @@
 mem_eeprom_block_size:80
 
 #otp write info offset
-mem_otp_offset_dpi:5d 1c										#7261 begin		3level:89count		4levle:59count	----------info begin	
-mem_otp_offset_dpi_end:7a 1c								#7290 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:7b 1c							#7291 begin		79 count
-mem_otp_offset_device_flag_end:a2 1c						#7330 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:a3 1c								#7331 begin		25 count
-mem_otp_offset_24g_addr_end:06 1d						#7430 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:07 1d								#7431 begin		25 count
-mem_otp_offset_le_addr1_end:9c 1d						#7580 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:9d 1d						#7581 begin		25 count
-mem_otp_offset_le_locall_addr1_end:32 1e				#7730 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:33 1e								#7731 begin		25 count
-mem_otp_offset_le_addr2_end:c8 1e						#7880 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:c9 1e						#7881 begin		25 count
-mem_otp_offset_le_locall_addr2_end:5e 1f				#8030  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:5f 1f			#8031 begin		100 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
@@ -307,8 +292,8 @@
 mem_ui_led_struct_num:00
 
 #rf
-mem_tx_power:07	#00--0db 01--3db  02--5db  03--f3db  04--f5db
-mem_mouse_24g_pair_tx_power:9e #94: -20dBm  9e: -30dBm  9f: -35dBm a0: -40dBm 
+mem_tx_power:03	#00--0db 01--3db  02--5db  03--f3db  04--f5db
+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
@@ -317,7 +302,7 @@
 mem_rssi_dis_max_ble_init:80
 mem_rssi_hex_received_max_value_init:63
 mem_power_ctrl_pac_succ_cnt_init:7d
-mem_power_ctrl_disable:01	#01,disable   00,enable
+mem_power_ctrl_disable:00	#01,disable   00,enable
 mem_tx_power_factory_param_new:00 03 25  #-35db
 
 #usb
@@ -361,7 +346,7 @@
 
 mem_sensor_ka8g2_init_new:
 09 a5
-26 34
+46 34
 19 04
 60 07
 69 04
@@ -384,15 +369,15 @@
 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
@@ -401,13 +386,11 @@
 be d1
 a0 41
 a1 12
-a5 84
 a7 ff
-b5 d0
 b6 00
+b5 c8
+a5 af
 ff 00
-35 c8
-25 af
 09 00
 ff ff
 
@@ -438,6 +421,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
Index: sched/remote_car.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/remote_car.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/remote_car.dat	(nonexistent)
@@ -1,46 +0,0 @@
-
-mem_device_option:0d
-mem_ui_button_gpio:ff
-
-mem_remote_style_struct_led_gpio:06
-mem_remote_car_led_num:01
-mem_remote_car_led_map:
-06
-ff
-ff
-ff
-ff
-ff
-ff
-ff
-
-
-mem_remote_car_key_num:04
-mem_remote_car_key_conf0:
-#0
-03
-#1
-04
-#2
-05
-#3
-07
-#4
-02
-#5
-0a
-#6
-17
-
-mem_24g_tx_phy:84#0x01:1M/0x02:2M/0x04:S2/0x84:S8
-mem_24g_rx_phy:84#0x01:1M/0x02:2M/0x04:S2/0x84:S8
-mem_24g_pair_tx_power:85 #-5dBm
-
-
-mem_24g_lap:01 02 03 04 05 06
-mem_24g_pair_addr:56 34 02 01
-mem_eeprom_base:80 1f		//2keeprom:f0 00
-mem_24g_pair_ch:4e
-
-mem_remote_save_addr_flag: 01
-
Index: sched/rtrivr_uuid.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/rtrivr_uuid.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/rtrivr_uuid.dat	(nonexistent)
@@ -1,75 +0,0 @@
-#attribute list: handle 2bytes, uuid 2bytes, length 1bytes, attribute Nbytes
-mem_le_att_list:
-
-#Primary service GAP ------
-01 00 00 28 02 00 18
-
-#Device name
-02 00 03 28 01 0a
-03 00 00 2a 0c 41 73 74 20 4c 45 20 4d 6f 75 73 65
-
-#Appearance
-04 00 03 28 01 02
-05 00 01 2a 02 c2 03 #3c2=hid mouse
-
-#Peripheral Preferred Connection Parameters
-06 00 03 28 01 02
-07 00 04 2a 08 06 00 06 00 64 00 2c 01 # interval 6ms, latency 100, timeout 300
-
-#Primary service GATT ------
-08 00 00 28 02 01 18
-
-#Service changed
-09 00 03 28 01 20
-0a 00 05 2a 00
-
-#Client Characteristic Configuration
-0b 00 02 29 02 00 00
-
-#Primary service TX power ------
-0c 00 00 28 02 04 18
-#Characteristic Tx power level
-0d 00 03 28 01 06
-0e 00 07 2a 01 00
-
-#Primary service Immediate alert ------
-0f 00 00 28 02 02 18
-#Characteristic Alert level
-10 00 03 28 01 04
-11 00 06 2a 01 00
-
-#Primary service UUID:f003 ------
-12 00 00 28 02 03 f0
-#Characteristic UUID:f803
-13 00 03 28 01 04
-14 00 03 f8 01 00
-
-
-#Primary service Link loss alert ------
-15 00 00 28 02 03 f0
-#Characteristic Alert level
-16 00 03 28 01 0a
-17 00 06 2a 01 00
-
-#Primary service UUID:f002 ------
-18 00 00 28 02 02 f0
-#Characteristic UUID:f802
-19 00 03 28 01 12
-1a 00 02 f8 01 28
-1b 00 02 29 02 00 00
-
-#Primary service Battery ------
-1c 00 00 28 02 0f 18
-#Characteristic Battery level
-1d 00 03 28 01 12
-1e 00 19 2a 01 38
-
-
-#End of Attribute list
-00 00
-
-mem_le_adv_data_len:1b
-mem_le_adv_data:0c 09 52 74 72 69 76 72 5f 52 36 32 31 03 19 40 02 02 01 05 02 0a 00 03 03 00 f0
-mem_le_scan_data_len:00
-mem_le_adv_param:00 08 00 08 00 01 00 00 00 00 00 00 00 07 00
-mem_le_adv_enable:01
Index: sched/shutter.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/shutter.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/shutter.dat	(nonexistent)
@@ -1,26 +0,0 @@
-mem_device_option:09
-mem_ui_button_gpio:ff
-
-mem_le_lap:20 31 27 98 07 2a
-mem_le_name_len:
-'AB Shutter3
-
-mem_shutter_key_conf0_temp:17 0c 95 00 ff
-
-mem_shutter_soft_switch_first_power_on:00
-
-mem_tx_power:06
-
-mem_shutter_dy_conf:00
-mem_shutter_discovery_time_conf:
-b8 0b #discovery_timeout
-70 17 #connect_timeout
-70 17 #sleep_timeout
-70 17 #sleep_timer
-
-mem_shutter_reconn_or_discovery_blink_time_conf:
-96 00 #mem_ble_shutter_reconn_blink_on_time
-96 00 #mem_ble_shutter_reconn_blink_off_time
-20 03 #mem_ble_shutter_discovery_blink_on_time
-20 03 #mem_ble_shutter_discovery_blink_off_time
-
Index: sched/shutter_dy.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/shutter_dy.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/shutter_dy.dat	(nonexistent)
@@ -1,543 +0,0 @@
-#device option
-mem_device_option:06
-#power on config
-mem_ui_button_gpio:ff
-
-mem_le_lap:61 21 20 98 07 2a
-mem_le_name_len:
-'BLE-M3
-
-mem_tx_power:06
-
-//save otp addr
-mem_shutter_efuse_start_offset: b0 1f
-mem_shutter_efuse_end_offset: 70 19
-
-mem_shutter_le_pairing_handle:2b 00
-
-#榛樿鐩告満鍦
-#mem_initial_move_conf:aa 00 78 00 69 00 38 00
-#宸︿笅瑙
-#mem_initial_move_conf:0a 00 1e 00 07 00 06 00
-#瀹夊崜涓棿锛孖OS宸︿笅瑙
-mem_initial_move_conf:aa 00 78 00 07 00 06 00
-
-mem_shutter_dy_conf:01
-#soft switch first power on
-mem_shutter_soft_switch_first_power_on:00
-
-#led config
-mem_shutter_led_on_light_dark_led_conf:
-00		#type:stop blink
-00		#blink count:no blink
-88		#led gpio number:GPIO01
-46 00	#led blink light time
-96 00	#led blink dark time
-mem_shutter_led_off_light_dark_led_conf:
-01		#type:start blink
-03		#blink count:no blink
-88		#led gpio number:GPIO01
-46 00	#led blink light time
-96 00	#led blink dark time
-
-
-mem_shutter_reconn_blink_on_time_conf:
-20 01
-20 03
-mem_shutter_discovery_blink_on_time_conf:
-20 01
-20 03
-
-#hard_soft_switch config
-mem_shutter_hard_soft_switch_case_temp:00
-mem_shutter_soft_switch_button_gpio_temp:ff
-
-#100ms timer 
-mem_shutter_ble_discovery_time_conf:
-b8 0b #discovery_timeout
-70 17 #connect_timeout
-b8 0b #sleep_timeout
-b8 0b #sleep_timer
-
-
-#key config
-mem_shutter_key_num_conf:06
-mem_shutter_dy_key_conf:
-#test 6key
-0a   #right
-ff   #like
-07   #down
-ff   #photo
-05   #up
-09   #left
-ff   #move
-
-
-mem_combine_key0:
-#6key
-28 00 #left 2
-09 00 #right 2
-18 00 #up 2
-0c 00 #down 2
-
-#6key -key mirror
-#09 00 #left 2
-#28 00 #right 2
-#0c 00 #up 2
-#18 00 #down 2
-
-#7key
-#60 00 #left 2
-#41 00 #right 2
-#50 00 #up 2
-#44 00 #down 2
-#00 00
-
-#7key -key mirror
-#41 00 #left 2
-#60 00 #right 2
-#44 00 #up 2
-#50 00 #down 2
-#00 00
-
-
-mem_combine_key_release_value:
-#6key
-08 00
-#7key
-#40 00
-
-mem_shutter_iphone_move_mid:
-15 15 1a 16 12 12 00
-mem_shutter_iphone_up_mid:
-15 15 1a 37 12 12 00
-mem_shutter_iphone_like_mid:
-15 15 1a 38 12 12 
-mem_shutter_android_move_mid:
-13 36 12 12 00
-
-mem_key0_press_i:  #right
-00
-mem_key0_release_new_i:
-0e 11 11 12 2c 2e 2f 30 32 33 0f 0f 00
-
-mem_key0_long_press_i:
-3c 3a 00
-mem_key1_press_i:#like
-0e 2a 12 2b 00
-mem_key1_release_new_i:
-12 12 00
-
-mem_shutter_link_data_i:
-0e 12 12 0e 12 12 00
-
-mem_key2_press_i:#down
-00
-mem_key2_release_new_i:
-0e 14 14 12 22 23 24 25 26 29 17 17 00
-
-#toggle between vol-inc and vol-dec
-mem_key3_press_i:#photo
-00
-#05
-mem_key3_release_new_i:#volume increment
-#7key
-#07 09 00
-#6key
-0e 07 2a 09 2b 12 00
-mem_key3_release_new_i_t:#volume decrement
-#7key
-#08 09 00
-#6key
-0e 08 2a 09 2b 12 00
-
-mem_key4_press_i:#up
-00
-mem_key4_release_new_i:
-0e 17 17 12 29 26 25 24 23 22 34 14 14 00
-
-mem_key5_press_i:#left
-00
-mem_key5_release_new_i:
-0e 0f 0f 12 32 31 2f 2e 2c 35 11 11 00
-mem_key5_long_press_i: #lock
-39 3a 00
-
-mem_key6_release_new_i:#move
-0e 2a 12 2b 12 00
-mem_key6_release_new:#move
-0e 12 12 12 12 00
-
-mem_dy_key0_press:  #right
-00
-mem_key0_release_new:
-10 0b 0e 1d 1d 1d 12 15 19 00
-mem_key0_long_press: 
-3b 3a 00
-mem_dy_key1_press:#like
-0e 12 12 00
-mem_key1_release_new:
-12 12 00
-
-mem_shutter_link_data:
-0e 12 12 0e 12 12 12 00
-mem_dy_key2_press: #down
-00
-mem_key2_release_new:
-13 18 0e 1e 0c 0c 0c 12 15 19 00
-mem_key2_long_press:#volume decrement
-08 09 00
-mem_key2_long_release:
-00
-#toggle between vol-inc and vol-dec
-mem_dy_key3_press:#photo
-00
-mem_key3_release_new:#volume increment
-#7key
-#07 09 00
-#6key
-#0e 07 09 12 00
-0e 12 00
-mem_key3_release_new_t:#volume decrement
-#7key
-#08 09 00
-#6key
-#0e 08 09 12 00
-0e 12 00
-
-
-mem_dy_key4_press:#up
-00
-mem_key4_release_new:
-15 19 0e 1f 0d 0d 0d 12 15 19 00
-mem_key4_long_press:#volume increment
-07 09 00
-mem_key4_long_release:
-00
-
-
-mem_dy_key5_press:#left
-00
-mem_key5_release_new:
-15 0a 0e 1c 1c 1c 12 12 15 19 00
-mem_key5_long_press: #lock
-39 3a 00
-mem_combine_key0_press:
-01
-mem_combine_key1_press:
-02
-mem_combine_key2_press:
-03 
-mem_combine_key3_press:
-04
-mem_combine_key_release:
-00
-
-mem_move_mode_set:00 #00 combine key, 01 single key when another key has already triggered
-mem_move_mode_key_index:03 #move key index,SHUTTER_MOVE_KEY_NUM,SHUTTER_PHOTO_KEY_NUM
-mem_move_mode_trigger_enable:00
-
-mem_shutter_long_key_released_flag:01
-
-################ble kb val list#######################
-mem_shutter_mousekey_value_list:
-03 1f 00 ec 0f 00 00 00 00 00#1
-03 1f 00 14 00 00 00 00 00 00#2
-03 1f 00 00 c0 fe 00 00 00 00#3
-03 1f 00 00 40 01 00 00 00 00#4
-03 1f 00 00 00 00 00 00 00 00#5
-03 1f 00 00 00 00 00 00 00 00#6
-02 1b 00 e9 00 00 00 00 00 00#7 volume increment
-02 1b 00 ea 00 00 00 00 00 00#8 volume decrement
-02 1b 00 00 00 00 00 00 00 00#9 release
-03 1f 00 28 80 11 00 00 00 00#a
-03 1f 00 ae 8f 11 00 00 00 00#b
-03 1f 00 00 e0 fc 00 00 00 00#c
-03 1f 00 00 00 05 00 00 00 00#d
-03 17 00 01 00 00 00 00 00 00#e
-03 1f 00 27 00 00 00 00 00 00#f
-03 1f 00 ff 17 80 00 00 00 00#10
-03 1f 00 d8 0f 00 00 00 00 00#11
-03 17 00 00 00 00 00 00 00 00#12
-03 1f 00 01 f8 7f 00 00 00 00#13
-03 1f 00 00 40 fc 00 00 00 00#14
-03 1f 00 01 18 80 00 00 00 00#15 
-03 1f 00 3c 40 0b 00 00 00 00#16
-03 1f 00 00 c0 03 00 00 00 00#17
-03 1f 00 3c 40 ec 00 00 00 00#18
-03 1f 00 3c 80 0c 00 00 00 00#19
-03 1f 00 00 10 80 00 00 00 00#1a
-03 1f 00 3c 80 07 00 00 00 00#1b
-03 1f 00 96 00 00 00 00 00 00#1c
-03 1f 00 6a 0f 00 00 00 00 00#1d
-03 1f 00 02 d0 ff 00 00 00 00#1e
-03 1f 00 02 30 00 00 00 00 00#1f
-03 1f 00 64 00 00 00 00 00 00#20
-03 1f 00 00 b0 f9 00 00 00 00#21
-
-07 13 00 07 06 70 07 ac 0d 01#22
-07 13 00 07 06 70 07 80 0c 01#23
-07 13 00 07 06 70 07 54 0b 01#24
-07 13 00 07 06 70 07 28 0a 01#25
-07 13 00 07 06 70 07 fc 08 01#26
-07 13 00 07 06 70 07 d0 07 01#27
-07 13 00 07 06 70 07 a4 06 01#28
-07 13 00 00 06 70 07 78 05 00#29
-07 13 00 07 07 70 07 70 07 01#2a
-07 13 00 00 07 70 07 70 07 00#2b
-07 13 00 07 05 10 0c 70 04 01#2c
-07 13 00 07 05 48 0b 70 04 01#2d
-07 13 00 07 05 F0 0A 70 04 01#2e
-07 13 00 07 05 C4 09 70 04 01#2f 
-07 13 00 07 05 6C 07 70 04 01#30
-07 13 00 07 05 40 04 70 04 01#31
-07 13 00 07 05 E8 02 70 04 01#32
-07 13 00 00 05 00 02 70 04 00#33
-07 13 00 00 06 70 07 ac 0e 00#34
-07 13 00 00 05 10 0d 70 04 00#35
-
-#03 17 00 00 fa 00 00 00 00 00 #36
-#03 17 00 00 28 00 00 00 00 00 #37
-#03 17 00 00 d2 00 00 00 00 00 #38
-#03 17 00 00 32 00 00 00 00 00 #39
-#03 17 00 00 00 fa 00 00 00 00 #3a
-#03 17 00 00 00 05 00 00 00 00 #3b
-#03 17 00 00 00 f0 00 00 00 00 #3c
-#03 17 00 00 00 0f 00 00 00 00 #3d
-
-03 1f 00 a0 30 e8 00 00 00 00#36
-03 1f 00 3c 40 07 00 00 00 00#37
-03 1f 00 41 40 0b 00 00 00 00#38
-
-02 1b 00 30 00 00 00 00 00 00#39
-02 1b 00 00 00 00 00 00 00 00#3a
-02 1b 00 23 02 00 00 00 00 00#3b
-02 1b 00 40 00 00 00 00 00 00#3c
-
-mem_shutter_move_data:
-00 00 00  #defualt 
-
-#mem_le_dy_adv_data:
-#02 01 05
-#03 02 12 18
-#03 19 c1 03
-#mem_le_dy_scan_data:
-#0d 09 56 30 2d 53 68 75 74 74 65 72
-
-mem_ble_shutter_dy_interval_min_new:
-18 00
-1c 00
-10 00
-2c 01
-
-#attribute list: handle 2bytes, uuid 2bytes, length 1bytes, attribute Nbytes
-mem_shutter_le_uuid_sup:
-#Primary service GATT ------
-01 00 02 00 28 02 01 18 
-#Service changed
-02 00 02 03 28 01 20 
-03 00 02 05 2a 01 00
-#Client Characteristic Configuration
-04 00 02 02 29 02 00 00 
-
-#Primary service GAP ------
-05 00 02 00 28 02 00 18
-
-#Device name
-06 00 02 03 28 01 02 
-07 00 02 00 2a 13 43 68 69 70 73 65 61 2d 42 4c 45 20 20 20 20 20 20 20 20
-
-#Appearance
-08 00 02 03 28 01 02 
-09 00 02 01 2a 02 c1 03 
-
-#Peripheral Preferred Connection Parameters
-0a 00 02 03 28 01 02 
-0b 00 02 04 2a 08 06 00 06 00 64 00 2c 01 # interval 6ms, latency 100, timeout 300
-
-#Primary service device information ------
-0c 00 02 00 28 02 0a 18 
-#PNP id
-0d 00 02 03 28 01 02 
-0e 00 02 50 2a 07 01 05 0e 00 0a 02 40
-
-#Primary service hid ------
-0f 00 02 00 28 02 12 18 
-
-#Protocol mode
-10 00 02 03 28 01 06 
-11 00 02 4e 2a 01 01 
-
-
-#Hid report
-12 00 02 03 28 01 10
-13 00 02 4d 2a 07 00 00 00 00 00 00 00
-#Client Characteristic
-14 00 02 02 29 02 00 00
-#Report reference
-15 00 02 08 29 02 01 01 # report id=1, type=1 input
-
-#Hid report id 4
-16 00 02 03 28 01 10 
-17 00 02 4d 2a 03 00 00 00
-#Client Characteristic
-18 00 02 02 29 02 00 00 
-#Report reference
-19 00 02 08 29 02 04 01 # report id=4, type=1 input
-
-#Hid report id 3
-1a 00 02 03 28 01 10
-1b 00 02 4d 2a 02 00 00 
-#Client Characteristic
-1c 00 02 02 29 02 00 00 
-#Report reference
-1d 00 02 08 29 02 03 01 # report id=3, type=1 input
-
-#Hid report id 5
-1e 00 02 03 28 01 10
-1f 00 02 4d 2a 03 00 00 00
-#Client Characteristic
-20 00 02 02 29 02 00 00 
-#Report reference
-21 00 02 08 29 02 05 01 # report id=5, type=1 input
-
-#Hid report id 2
-22 00 02 03 28 01 12
-23 00 02 4d 2a 02 00 00 
-#00 00 00 00 00
-#Client Characteristic
-24 00 02 02 29 02 00 00
-#Report reference
-25 00 02 08 29 02 02 01 # report id=2, type=1 input
-
-#Hid report id 6
-26 00 02 03 28 01 12
-27 00 02 4d 2a 08 00 00 00 00 00 00 00 00
-#Client Characteristic
-28 00 02 02 29 02 00 00 
-#Report reference
-29 00 02 08 29 02 06 01 # report id=6, type=1 input
-#Report map
-2a 00 02 03 28 01 02 
-2b 00 02 4b 2a 01 00
-
-#Hid information
-2c 00 02 03 28 01 02
-2d 00 02 4a 2a 04 11 01 00 01 
-
-#Hid control point
-2e 00 02 03 28 01 04 
-2f 00 02 4c 2a 01 00 
-30 00 02 00 28 02 0f 18
-
-00 00
-
-mem_shutter_le_map_len_android:6d 00 #6d 00
-mem_shutter_le_map_len_ios:c4 00
-mem_shutter_le_hid_map:
-05 0c  # Usage Page(Consumer)
-09 01  # Usage(Consumer Control)
-a1 01  # Collection(Application)
-85 03  # Report ID(3)
-75 10  # Report Size(16)
-95 01  # Report Count(1)
-15 01  # Logical Minimum(1)
-26 ff 03 # Logical Maxmum(1023)
-19 01    # Usage Minimum(1)
-2a ff 03 # Usage Maximum(1023)
-81 60    #Input (Data, Array, Absolute, No Preferred, Null state)
-c0
-
-05 01 #Usage Page (Generic Desktop Controls)
-09 02 # Usage(Mouse)
-a1 01 # Collection(Application)
-85 04 # Report ID(4)
-09 01 # Usage(Pointer)
-a1 00 # Collection(Physical)
-95 05 # Report Count(5)
-75 01 # Report Size(1)
-05 09 # Usage Page(Buttons)
-19 01 # Usage Minimum(1)
-29 05 # Usage Maximum(5)
-15 00 # Logical Minimum(0)
-25 01 # Logical Maximum(1)
-81 02 #Input (Data, Variable, Absolute)
-95 01 # Report Count(1)
-75 03 # Report Size(3)
-81 01 #Input (Constant, Array, Absolute)
-75 08 # Report Size(8)
-95 01 # Report Count(1)
-05 01  #Usage Page (Generic Desktop Controls)
-09 38 #Usage (Wheel)
-15 81 # Logical Minimum(129)
-25 7f  # Logical Maximum(127)
-81 06 #Input (Data, Variable, Relative)
-05 0c #Usage page (Consumer)
-0a 38 02 	#Usage (AC Pan)
-95 01 # Report Count(1)
-81 06 #INPUT (Data, Variable, Relative)
-c0 
-
-85 05 # Report ID(5)
-09 01 # Usage(Consumer Control)
-a1 00 # Collection(Physical)
-75 0c # Report Size(12)
-95 02 # Report Count(2)
-05 01 #Usage Page (Generic Desktop Controls)
-09 30 #Usage (x)
-09 31 #Usage (y)
-16 01 f8  # Logical Minimum(63489)
-26 ff 07 # Logical Maximum(2047)
-81 06 #Input (Data, Variable, Relative)
-c0 c0
-
-
-05 0D  # Usage Page(Digitizer)
-09 02  # Usage(Pen)
-A1 01 # Collection(Application)
-85 01 # Report ID(1)
-09 22 #Usage (Finger)
-A1 02 #Collection (Logical (interrelated data))
-09 42 #Usage (Tip Switch)
-15 00 # Logical Minimum(0)
-25 01 # Logical Maximum(1)
-75 01 # Report Size(1)
-95 01 # Report Count(1)
-81 02 #Input (Data, Variable, Absolute)
-09 32 #Usage (In Range)
-81 02 #Input (Data, Variable, Absolute)
-95 06 # Report Count(6)
-81 03 #Input (Constant, Variable, Absolute)
-75 08 # Report Size(8)
-09 51 #Usage (Contact identifier)
-95 01 # Report Count(1)
-81 02 #Input (Data, Variable, Absolute)
-05 01 #Usage Page (Generic Desktop Controls)
-26 FF 0F # Logical Maximum(4095)
-75 10 # Report Size(16)
-55 0E #Unit Exponent (14)
-65 33 #Unit(51)
-09 30 #Usage (x)
-35 00 #Physical Minimum (0)
-46 B5 04 #Physical Maximum (1205)
-81 02 #Input (Data, Variable, Absolute)
-46 8A 03 #Physical Maximum (906)
-09 31 #Usage (y)
-81 02 #Input (Data, Variable, Absolute)
-C0 
-
-05 0D # Usage Page(Digitizer)
-09 54 # Usage(84)
-95 01 # Report Count(1)
-75 08 # Report Size(8)
-81 02 #Input (Data, Variable, Absolute)
-85 08 # Report ID(8)
-09 55 # Usage (Contact count mamimum)
-25 05 # Logical Maximum(5)
-B1 02 #Input (Data, Variable, Absolute)
-C0 
-
-##############BLE ATT LIST END####################
-mem_dy_le_search_service_uuid:
-D0 00 2D 12 1E 4B 0F A4 99 4E CE B5 31 F4 05 79
-
Index: sched/sim.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/sim.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/sim.dat	(nonexistent)
@@ -1,54 +0,0 @@
-
-mem_lpm_xtalcnt:10 20 64
-mem_lpm_isogate:8f 2f 3b
-mem_lpm_hibernate_switch:20
-mem_lpm_ldo_sel:19
-mem_fcomp_div:24
-
-mem_xtal_freq:18	#24MHz
-mem_set_cdb_on:00
-mem_syn_cal_ctrl:00
-
-mem_le_lap:11 22 33
-mem_le_adv_data_len:1b
-mem_le_adv_data:0c 09
-'Yichip Temp
- 03 19 40 02 02 01 05 02 0a 00 03 03 f1 18
-mem_le_ch_mapped:24
-mem_le_adv_interval:20 00
-mem_le_scan_window:20 00
-mem_le_scan_type:01
-mem_le_adv_own_addr_type:01
-
-
-mem_patch00:01
-
-
-4580:ff
-mem_rf_init_ptr:80 45		
-
-
-
-
-
-
-#ecb enc data
-4f00:
-0a94 0bb5 416e f045 f1c3 9458 c653 ea5a 
-
-
-#cbc xor data
-4e00:
-5a5a 5a5a 5a5a 5a5a 6363 6363 6363 6363
-
-#cbc enc data1
-4e20:
-7033 eafa b089 698f 43cb 1050 1e73 1109 
-
-#cbc enc data2
-4e30:
-3cfd e1a1 eb69 42b0 2593 3009 5238 53f9 
-
-
-
-
Index: sched/spp.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/spp.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/spp.dat	(nonexistent)
@@ -1,206 +0,0 @@
-#device option
-mem_device_option:04
-
-#spp uuid
-mem_uuid_list:
-04
-10
-02
-12
-00
-01
-00
-00
-01
-00
-01
-00
-01
-36
-00
-5a
-09
-00
-00
-0a
-00
-01
-00
-01
-09
-00
-01
-35
-03
-19
-12
-00
-09
-00
-04
-35
-0d
-35
-06
-19
-01
-00
-09
-00
-01
-35
-03
-19
-00
-01
-09
-00
-05
-35
-03
-19
-10
-02
-09
-00
-09
-35
-08
-35
-06
-19
-12
-00
-09
-01
-00
-09
-02
-00
-09
-01
-03
-09
-02
-01
-09
-05
-ac
-09
-02
-02
-09
-02
-39
-09
-02
-03
-09
-06
-44
-09
-02
-04
-28
-01
-09
-02
-05
-09
-00
-02
-03
-11
-01
-00
-03
-01
-00
-00
-01
-00
-03
-36
-00
-4e
-09
-00
-00
-0a
-00
-01
-00
-03
-09
-00
-01
-35
-03
-19
-11
-01
-09
-00
-02
-0a
-00
-00
-00
-00
-09
-00
-04
-35
-0c
-35
-03
-19
-01
-00
-35
-05
-19
-00
-03
-08
-01
-09
-00
-05
-35
-03
-19
-10
-02
-09
-00
-06
-35
-09
-09
-65
-6e
-09
-00
-6a
-09
-01
-00
-09
-01
-00
-25
-0a
-53
-50
-50
-20
-73
-6c
-61
-76
-65
-00
-00
-00
-01
Index: sched/test.dat
===================================================================
--- /1121s/branch/mouse/mouse_public_sdk_1M/sched/test.dat	(revision 2289)
+++ /1121s/branch/mouse/mouse_public_sdk_1M/sched/test.dat	(nonexistent)
@@ -1,139 +0,0 @@
-mem_device_option:ff
-mem_le_lap:11 22 33
-mem_le_adv_enable:01
-mem_le_adv_interval:00 02 
-mem_le_adv_channel_map:07
-mem_le_adv_data_len:03
-mem_le_adv_data:
-02 01 0e
-
-mem_le_scan_data_len:0a
-mem_le_scan_data:
-'\09test1305
-
-mem_ui_le_uuid_table:mem_module_le_att_list
-
-#attribute list: handle 2bytes, uuid 2bytes, length 1bytes, attribute Nbytes
-mem_module_le_att_list:
-#Primary service GAP ------
-01 00 02 00 28 02 00 18
-
-
-#Appearance
-02 00 02 03 28 01 02
-03 00 02 01 2a 02 c8 00 #3c2=hid mouse
-
-#Device name
-04 00 02 03 28 01 0a
-05 00 02 00 2a 14 41 73 74 20 4c 45 20 4d 6f 75 73 65 20 20 20 20 20 20 20 20
-
-
-#Peripheral Preferred Connection Parameters
-06 00 02 03 28 01 02
-07 00 02 04 2a 08 06 00 06 00 64 00 2c 01 # interval 6ms, latency 100, timeout 300
-
-
-#privcy flag
-08 00 02 03 28 01 02
-09 00 02 02 2a 01 01
-
-#reconnecting addr 
-0a 00 02 03 28 01 08
-0b 00 02 03 2a 06 00 00 00 00 00 00
-
-#Primary service GATT ------
-0c 00 02 00 28 02 01 18
-
-#Service changed
-0d 00 02 03 28 01 20
-0e 00 02 05 2a 00
-#Client Characteristic Configuration
-0f 00 02 02 29 02 00 00
-
-#Primary service TX power ------
-10 00 02 00 28 02 04 18
-#Characteristic Tx power level
-11 00 02 03 28 01 16
-12 00 02 07 2a 01 00
-13 00 02 02 29 02 00 00
-
-#Primary service Battery ------
-14 00 02 00 28 02 0f 18
-#Characteristic Battery level
-15 00 02 03 28 01 12
-16 00 02 19 2a 01 38
-
-#Primary service device infomation
-17 00 02 00 28 02 0a 18
-#Characteristic system id
-18 00 02 03 28 01 02
-19 00 02 23 2a 03 00 00 00
-
-#Characteristic manufactor name
-1a 00 02 03 28 01 02
-1b 00 02 29 2a 08 46 6c 61 67 74 72 69 70
-
-#Characteristic module number
-1c 00 02 03 28 01 02
-1d 00 02 24 2a 06 79 69 63 68 69 70
-
-#Characteristic serial number
-1e 00 02 03 28 01 02
-1f 00 02 25 2a 04 63 6f 6d 33
-
-#Characteristic firmware version
-20 00 02 03 28 01 02
-21 00 02 26 2a 03 31 2e 30
-
-#Characteristic software version
-22 00 02 03 28 01 02
-23 00 02 28 2a 03 31 2e 30
-
-#Characteristic hardware version
-24 00 02 03 28 01 02
-25 00 02 2a 2a 03 31 2e 30
-
-#Characteristic regulatory version
-26 00 02 03 28 01 02
-27 00 02 25 2a 04 63 6f 6d 33
-
-#Primary service yichip transmit ------
-28 00 02 00 28 10 55 e4 05 d2 af 9f a9 8f e5 4a 7d fe 43 53 53 49
-#Characteristic tx--notify read
-29 00 02 03 28 01 12
-2a 00 10 16 96 24 47 C6 23 61 BA D9 4B 4D 1E 43 53 53 49 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-#Client Characteristic Configuration
-2b 00 02 02 29 02 00 00
-
-#Characteristic rx--write
-2c 00 02 03 28 01 08
-2d 00 10 b3 9b 72 34 be ec d4 a8 f4 43 41 88 43 53 53 49 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-
-#Characteristic rx-- write without Response
-2e 00 02 03 28 01 04
-2f 00 10 fe 69 ca 9a 56 19 f6 ab 02 4d aa 6d 43 53 53 49 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-
-#Characteristic rx tx --read write notify
-30 00 02 03 28 01 2a
-31 0010 18 03 A6 28 5E D8 EC 91 1C 48 A3 AC 43 53 53 49 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-#Client Characteristic Configuration
-32 00 02 02 29 02 00 00
-
-#Primary service yichip transmit ------
-33 00 02 00 28 02 e7 fe 
-#Characteristic tx--indicate
-34 00 02 03 28 01 20
-35 00 02 c8 fe 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-#Client Characteristic Configuration
-36 00 02 02 29 02 00 00
-
-#Characteristic rx--write,read
-37 00 02 03 28 01 0a
-38 00 02 c7 fe 14 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
-
-#Characteristic - read
-39 00 02 03 28 01 02
-3a 00 02 c9 fe 06 11 22 33 44 55 66
-
-#End of Attribute list
-00 00
