Index: output/flash.dat
===================================================================
--- /branch/mouse_project/SA/YC1059/SI_9565_BD_DPI_2.4GAutoPair/output/flash.dat	(revision 3541)
+++ /branch/mouse_project/SA/YC1059/SI_9565_BD_DPI_2.4GAutoPair/output/flash.dat	(working copy)
@@ -2935,7 +2935,7 @@
 20
 22
 83
-19
+15
 60
 09
 47
@@ -2975,19 +2975,19 @@
 20
 40
 02
-f9
+f5
 20
 40
 03
-10
+0c
 20
 40
 03
-05
+01
 20
 40
 02
-fc
+f8
 20
 40
 02
@@ -3015,11 +3015,11 @@
 20
 40
 03
-05
+01
 20
 40
 02
-fc
+f8
 20
 40
 03
@@ -3032,22 +3032,6 @@
 20
 3d
 36
-d8
-40
-00
-04
-da
-20
-4e
-9c
-da
-40
-00
-5b
-20
-60
-00
-00
 68
 01
 c7
@@ -3091,7 +3075,7 @@
 c2
 80
 02
-fc
+f8
 20
 60
 00
@@ -3171,7 +3155,7 @@
 20
 40
 03
-10
+0c
 20
 20
 65
@@ -3179,16 +3163,32 @@
 20
 40
 03
-16
+12
 20
 40
 05
 a7
+68
+00
+c7
+20
+c0
+00
+83
+1c
+c0
+01
+03
+1c
 20
 40
 02
 94
 20
+20
+02
+de
+20
 40
 43
 1a
@@ -8176,8 +8176,8 @@
 20
 07
 f6
-81
-80
+6e
+b2
 aa
 55
 08
@@ -12877,9 +12877,15 @@
 00
 00
 00
+55
+aa
+aa
+55
+69
+43
 aa
 55
 00
 00
-fa
-3b
+4d
+90
Index: output/program.lis
===================================================================
--- /branch/mouse_project/SA/YC1059/SI_9565_BD_DPI_2.4GAutoPair/output/program.lis	(revision 3541)
+++ /branch/mouse_project/SA/YC1059/SI_9565_BD_DPI_2.4GAutoPair/output/program.lis	(working copy)
@@ -954,8 +954,10 @@
 02d9 68014778 fetch 2 ,mem_store_flag 
 02da d840aa55 arg eeprom_init_flag ,temp 
 02db 98467c00 isub temp ,null 
-02dc 20228319 branch p_mouse_load_flash_device_info ,zero 
+02dc 20228315 branch p_mouse_load_flash_device_info ,zero 
 02dd 60094778 storet 2 ,mem_store_flag 
+
+p_mouse_store_default_info:
 02de 2040441c call mouse_ble_init_address 
 02df 6800c6e1 fetch 1 ,mem_config_sensor_motion 
 02e0 6000c77a store 1 ,mem_mouse_dpi 
@@ -966,10 +968,10 @@
 
 p_mouse_store_flash_device_info:
 02e5 2040032d call p_flash_release_deep_power_down 
-02e6 204002f9 call p_flash_erase_sector 
-02e7 20400310 call p_mouse_information_flash_parameters 
-02e8 20400305 call p_spid_write_flash 
-02e9 204002fc call p_wait_flash_done 
+02e6 204002f5 call p_flash_erase_sector 
+02e7 2040030c call p_mouse_information_flash_parameters 
+02e8 20400301 call p_spid_write_flash 
+02e9 204002f8 call p_wait_flash_done 
 
 p_mouse_store_random_addr_increase_count:
 02ea 204002c9 call p_spid_init_flash 
@@ -978,66 +980,66 @@
 02ed da40005f arg mouse_random_addr_count_eeprom_offset ,regb 
 02ee 6801c700 fetch 3 ,mem_flash_base 
 02ef 9a40fe00 iadd regb ,pdata 
-02f0 20400305 call p_spid_write_flash 
-02f1 204002fc call p_wait_flash_done 
+02f0 20400301 call p_spid_write_flash 
+02f1 204002f8 call p_wait_flash_done 
 02f2 20400325 call p_flash_deep_power_down 
 
 p_mouse_spi_init:
 02f3 70421276 jam 0x76 ,mem_spi_init_clk 
 02f4 20203d36 branch mouse_spi_init 
 
-p_mouse_set_24g_addr_flash:
-02f5 d8400004 arg 4 ,temp 
-02f6 da204e9c arg mem_24g_addr ,rega 
-02f7 da40005b arg mouse_g24_addr_eeprom_offect ,regb 
-02f8 20600000 rtn 
-
 p_flash_erase_sector:
-02f9 6801c700 fetch 3 ,mem_flash_base 
-02fa 6001c232 store 3 ,mem_spi_write_addr 
-02fb 2040652a call flash_erase_sector + 2 
+02f5 6801c700 fetch 3 ,mem_flash_base 
+02f6 6001c232 store 3 ,mem_spi_write_addr 
+02f7 2040652a call flash_erase_sector + 2 
 
 p_wait_flash_done:
-02fc 580186a0 setarg 100000 
-02fd 20402a8f call sleep 
-02fe 2040650b call spid_unlock_flash 
-02ff 580001fa setarg mem_spid_rbuf 
-0300 6011008c hstore 2 ,core_spid_rxaddr 
-0301 58000005 setarg flash_read_satus 
-0302 204064f3 call spid_read_reg 
-0303 c28002fc bbit1 flash_status_wip ,p_wait_flash_done 
-0304 20600000 rtn 
+02f8 580186a0 setarg 100000 
+02f9 20402a8f call sleep 
+02fa 2040650b call spid_unlock_flash 
+02fb 580001fa setarg mem_spid_rbuf 
+02fc 6011008c hstore 2 ,core_spid_rxaddr 
+02fd 58000005 setarg flash_read_satus 
+02fe 204064f3 call spid_read_reg 
+02ff c28002f8 bbit1 flash_status_wip ,p_wait_flash_done 
+0300 20600000 rtn 
 
 p_spid_write_flash:
-0305 1fe22600 copy pdata ,regc 
-0306 1a227e00 copy rega ,pdata 
-0307 1fe0fffc increase -4 ,pdata 
-0308 1fe22400 copy pdata ,regb 
-0309 ea420000 ifetch 4 ,regb 
-030a 60024d19 store 4 ,mem_write_flash_head_temp 
-030b 1a627e00 copy regc ,pdata 
-030c 20406552 call spid_write_flash 
-030d 68024d19 fetch 4 ,mem_write_flash_head_temp 
-030e e2420000 istore 4 ,regb 
-030f 20600000 rtn 
+0301 1fe22600 copy pdata ,regc 
+0302 1a227e00 copy rega ,pdata 
+0303 1fe0fffc increase -4 ,pdata 
+0304 1fe22400 copy pdata ,regb 
+0305 ea420000 ifetch 4 ,regb 
+0306 60024d19 store 4 ,mem_write_flash_head_temp 
+0307 1a627e00 copy regc ,pdata 
+0308 20406552 call spid_write_flash 
+0309 68024d19 fetch 4 ,mem_write_flash_head_temp 
+030a e2420000 istore 4 ,regb 
+030b 20600000 rtn 
 
 p_mouse_information_flash_parameters:
-0310 5800477f setarg mem_mouse_information_end 
-0311 d8404720 arg mem_mouse_information_start ,temp 
-0312 98460400 isub temp ,temp 
-0313 6801c700 fetch 3 ,mem_flash_base 
-0314 da204720 arg mem_mouse_information_start ,rega 
-0315 20600000 rtn 
+030c 5800477f setarg mem_mouse_information_end 
+030d d8404720 arg mem_mouse_information_start ,temp 
+030e 98460400 isub temp ,temp 
+030f 6801c700 fetch 3 ,mem_flash_base 
+0310 da204720 arg mem_mouse_information_start ,rega 
+0311 20600000 rtn 
 
 p_mouse_read_flash:
-0316 2040032d call p_flash_release_deep_power_down 
-0317 20400310 call p_mouse_information_flash_parameters 
-0318 20206562 branch spid_read_flash 
+0312 2040032d call p_flash_release_deep_power_down 
+0313 2040030c call p_mouse_information_flash_parameters 
+0314 20206562 branch spid_read_flash 
 
 p_mouse_load_flash_device_info:
-0319 20400316 call p_mouse_read_flash 
-031a 204005a7 call p_mouse_load_random_addr_increase_count 
-031b 20400294 call p_mouse_check_select_device_by_switch 
+0315 20400312 call p_mouse_read_flash 
+0316 204005a7 call p_mouse_load_random_addr_increase_count 
+0317 6800c720 fetch 1 ,mem_device_flag 
+0318 c000831c beq mode_bt_device1 ,p_mouse_load_flash_device_info_next 
+0319 c001031c beq mode_24g_device ,p_mouse_load_flash_device_info_next 
+031a 20400294 call p_mouse_check_select_device_by_switch 
+031b 202002de branch p_mouse_store_default_info 
+
+p_mouse_load_flash_device_info_next:
 031c 2040431a call mouse_select_reconn_device 
 031d 6802477b fetch 4 ,mem_mouse_24g_addr 
 031e 60024e9c store 4 ,mem_24g_addr 
Index: program/patch.prog
===================================================================
--- /branch/mouse_project/SA/YC1059/SI_9565_BD_DPI_2.4GAutoPair/program/patch.prog	(revision 3541)
+++ /branch/mouse_project/SA/YC1059/SI_9565_BD_DPI_2.4GAutoPair/program/patch.prog	(working copy)
@@ -1243,6 +1243,7 @@
 	isub temp,null
 	branch p_mouse_load_flash_device_info,zero
 	storet 2,mem_store_flag
+p_mouse_store_default_info:
 	call mouse_ble_init_address
 	fetch 1,mem_config_sensor_motion
 	store 1,mem_mouse_dpi
@@ -1272,11 +1273,11 @@
 	jam 0x76,mem_spi_init_clk
 	branch mouse_spi_init
 
-p_mouse_set_24g_addr_flash:
-	arg 4,temp
-	arg mem_24g_addr,rega
-	arg MOUSE_G24_ADDR_EEPROM_OFFECT,regb
-	rtn
+//p_mouse_set_24g_addr_flash:
+//	arg 4,temp
+//	arg mem_24g_addr,rega
+//	arg MOUSE_G24_ADDR_EEPROM_OFFECT,regb
+//	rtn
 	
 p_flash_erase_sector:
 	fetch 3,mem_flash_base
@@ -1322,7 +1323,13 @@
 p_mouse_load_flash_device_info:	
 	call p_mouse_read_flash
 	call p_mouse_load_random_addr_increase_count
+	fetch 1,mem_device_flag
+	beq MODE_BT_DEVICE1,p_mouse_load_flash_device_info_next
+	beq MODE_24G_DEVICE,p_mouse_load_flash_device_info_next
 	call p_mouse_check_select_device_by_switch
+	branch p_mouse_store_default_info
+
+p_mouse_load_flash_device_info_next:
 	call mouse_select_reconn_device
 	fetch 4,mem_mouse_24g_addr
 	store 4,mem_24g_addr
