Index: output/eeprom.dat
===================================================================
--- /YC1308AC/branch/mouse_project/YDN_Project/usb_16M/output/eeprom.dat	(revision 606)
+++ /YC1308AC/branch/mouse_project/YDN_Project/usb_16M/output/eeprom.dat	(working copy)
@@ -2,7 +2,7 @@
 02
 aa
 55
-9e
+b2
 01
 c2
 84
@@ -11,23 +11,23 @@
 c0
 41
 80
-1b
+1c
 c0
 45
 80
-11
+12
 c0
 57
 00
-24
+25
 c0
 5d
 80
-2d
+2e
 c0
 5e
 00
-2f
+34
 20
 20
 13
@@ -35,15 +35,19 @@
 c0
 48
 00
-50
+55
 c0
 4a
 80
-61
+66
 c0
 54
 80
-0b
+0c
+c0
+73
+00
+30
 20
 20
 13
@@ -135,7 +139,7 @@
 c0
 04
 00
-22
+23
 20
 20
 11
@@ -187,7 +191,7 @@
 20
 40
 00
-2b
+2c
 20
 20
 36
@@ -198,6 +202,22 @@
 bf
 c1
 80
+80
+00
+70
+41
+e8
+85
+20
+20
+24
+99
+6f
+e0
+c8
+bf
+c1
+80
 00
 00
 20
@@ -207,7 +227,7 @@
 20
 40
 00
-34
+39
 20
 20
 36
@@ -219,11 +239,11 @@
 20
 40
 00
-37
+3c
 20
 20
 00
-43
+48
 6f
 e0
 c9
@@ -339,7 +359,7 @@
 c0
 00
 00
-55
+5a
 20
 20
 7a
@@ -367,7 +387,7 @@
 c0
 00
 80
-5c
+61
 20
 20
 7a
@@ -379,7 +399,7 @@
 c0
 04
 80
-5f
+64
 20
 20
 7a
@@ -416,8 +436,8 @@
 20
 7c
 59
-5f
-4a
+c3
+51
 aa
 55
 40
@@ -484,7 +504,7 @@
 00
 00
 00
-00
+40
 00
 00
 00
@@ -529,8 +549,8 @@
 00
 a8
 40
-36
-26
+38
+27
 10
 30
 11
@@ -606,7 +626,7 @@
 aa
 aa
 55
-c6
-22
-01
-9e
+09
+23
+cf
+c2
Index: output/program.lis
===================================================================
--- /YC1308AC/branch/mouse_project/YDN_Project/usb_16M/output/program.lis	(revision 606)
+++ /YC1308AC/branch/mouse_project/YDN_Project/usb_16M/output/program.lis	(working copy)
@@ -1,142 +1,149 @@
               include "bt_format "
               org 0x0000
 0000 c2840007 bbit1 8 ,pf_patch_ext 
-0001 c041801b beq patch10_3 ,p_set_sync_on 
-0002 c0458011 beq patch11_3 ,p_initialize_radio_cont 
-0003 c0570024 beq patch15_6 ,p_app_init 
-0004 c05d802d beq patch17_3 ,p_dongle_usb_dispatch 
-0005 c05e002f beq patch17_4 ,p_dongle_work_mode_auto 
+0001 c041801c beq patch10_3 ,p_set_sync_on 
+0002 c0458012 beq patch11_3 ,p_initialize_radio_cont 
+0003 c0570025 beq patch15_6 ,p_app_init 
+0004 c05d802e beq patch17_3 ,p_dongle_usb_dispatch 
+0005 c05e0034 beq patch17_4 ,p_dongle_work_mode_auto 
 0006 2020137c branch loop 
 
 pf_patch_ext:
-0007 c0480050 beq patch32_0 ,p_usb_class_type 
-0008 c04a8061 beq patch32_5 ,p_usb_tx 
-0009 c054800b beq patch35_1 ,p_le_enable 
-000a 2020137c branch loop 
+0007 c0480055 beq patch32_0 ,p_usb_class_type 
+0008 c04a8066 beq patch32_5 ,p_usb_tx 
+0009 c054800c beq patch35_1 ,p_le_enable 
+000a c0730030 beq patch3c_6 ,p_g24_bind_mode_auto 
+000b 2020137c branch loop 
 
 p_le_enable:
-000b 204016a6 call le_enable + 1 
-000c 708a6d89 jam 0x89 ,core_rx_bq_cfg0 
-000d 6ff08a43 fetch 1 ,core_syn_cal_ctrl 
-000e 1fe1fe0f or pdata ,0x0f ,pdata 
-000f 67f08a43 store 1 ,core_syn_cal_ctrl 
-0010 20600000 rtn 
+000c 204016a6 call le_enable + 1 
+000d 708a6d89 jam 0x89 ,core_rx_bq_cfg0 
+000e 6ff08a43 fetch 1 ,core_syn_cal_ctrl 
+000f 1fe1fe0f or pdata ,0x0f ,pdata 
+0010 67f08a43 store 1 ,core_syn_cal_ctrl 
+0011 20600000 rtn 
 
 p_initialize_radio_cont:
-0011 204012d1 call init_lpm_ctrl 
-0012 20000064 nop 100 
-0013 708a0e0b jam 0x0b ,core_rf_ldo_cfg2 
-0014 708a0f05 jam 0x05 ,core_rf_ldo_cfg3 
-0015 708a8390 jam 0x90 ,core_syn_pfd_lkd_cfg 
-0016 708a8500 jam 0x00 ,core_syn_loopdiv_dsm_cfg 
-0017 70892140 jam 0x40 ,0x8921 
-0018 70896876 jam 0x76 ,core_agc_wb_sat_th 
-0019 70896976 jam 0x76 ,core_agc_nb_sat_th 
-001a 20201256 branch initialize_radio_cont + 1 
+0012 204012d1 call init_lpm_ctrl 
+0013 20000064 nop 100 
+0014 708a0e0b jam 0x0b ,core_rf_ldo_cfg2 
+0015 708a0f05 jam 0x05 ,core_rf_ldo_cfg3 
+0016 708a8390 jam 0x90 ,core_syn_pfd_lkd_cfg 
+0017 708a8500 jam 0x00 ,core_syn_loopdiv_dsm_cfg 
+0018 70892140 jam 0x40 ,0x8921 
+0019 70896876 jam 0x76 ,core_agc_wb_sat_th 
+001a 70896976 jam 0x76 ,core_agc_nb_sat_th 
+001b 20201256 branch initialize_radio_cont + 1 
 
 p_set_sync_on:
-001b 70890005 jam 0x5 ,modem_en 
-001c 20000002 nop 2 
-001d 70890000 jam 0x0 ,modem_en 
-001e 6fe0c0c5 fetch 1 ,mem_fcomp_div 
-001f c00c1168 beq xtal_24m ,set_sync_on_24m 
-0020 c0040022 beq xtal_16m ,p_set_sync_on_16m 
-0021 20201168 branch set_sync_on_24m 
+001c 70890005 jam 0x5 ,modem_en 
+001d 20000002 nop 2 
+001e 70890000 jam 0x0 ,modem_en 
+001f 6fe0c0c5 fetch 1 ,mem_fcomp_div 
+0020 c00c1168 beq xtal_24m ,set_sync_on_24m 
+0021 c0040023 beq xtal_16m ,p_set_sync_on_16m 
+0022 20201168 branch set_sync_on_24m 
 
 p_set_sync_on_16m:
-0022 708a8729 jam 0x29 ,core_syn_afc_cfg1 
-0023 2020117d branch set_sync_on_16m 
+0023 708a8729 jam 0x29 ,core_syn_afc_cfg1 
+0024 2020117d branch set_sync_on_16m 
 
 p_app_init:
-0024 d840aa00 arg 0xaa00 ,temp 
-0025 20402320 call g24_rx_window_store 
-0026 70486402 jam 0x02 ,mem_24g_rx_phy 
-0027 70486502 jam 0x02 ,mem_24g_tx_phy 
-0028 70487b4a jam 0x4a ,mem_24g_pair_ch 
-0029 20403620 call dongle_init 
-002a 2040623c call wdt_set_enable 
+0025 d840aa00 arg 0xaa00 ,temp 
+0026 20402320 call g24_rx_window_store 
+0027 70486402 jam 0x02 ,mem_24g_rx_phy 
+0028 70486502 jam 0x02 ,mem_24g_tx_phy 
+0029 70487b4a jam 0x4a ,mem_24g_pair_ch 
+002a 20403620 call dongle_init 
+002b 2040623c call wdt_set_enable 
 
 p_wdt_kick:
-002b 5800007d setarg 125 
-002c 2020622d branch wdt_init_config 
+002c 5800007d setarg 125 
+002d 2020622d branch wdt_init_config 
 
 p_dongle_usb_dispatch:
-002d 2040002b call p_wdt_kick 
-002e 202036b5 branch dongle_usb_dispatch + 1 
+002e 2040002c call p_wdt_kick 
+002f 202036b5 branch dongle_usb_dispatch + 1 
+
+p_g24_bind_mode_auto:
+0030 6fe0c8bf fetch 1 ,mem_24g_work_mode 
+0031 c1808000 rtnne dongle_bind 
+0032 7041e885 jam tx_power_f5db ,mem_tx_power 
+0033 20202499 branch g24_bind_mode_auto + 3 
 
 p_dongle_work_mode_auto:
-002f 6fe0c8bf fetch 1 ,mem_24g_work_mode 
-0030 c1800000 rtnne dongle_work 
-0031 20402491 call g24_work_mode_start 
-0032 20400034 call p_dongle_g24_blank_data_process 
-0033 202036f2 branch dongle_work_mode_auto + 5 
+0034 6fe0c8bf fetch 1 ,mem_24g_work_mode 
+0035 c1800000 rtnne dongle_work 
+0036 20402491 call g24_work_mode_start 
+0037 20400039 call p_dongle_g24_blank_data_process 
+0038 202036f2 branch dongle_work_mode_auto + 5 
 
 p_dongle_g24_blank_data_process:
-0034 2040368a call dongle_g24_ms_blank_data 
-0035 20400037 call p_dongle_g24_kb_blank_data 
-0036 20200043 branch p_dongle_g24_kb_mul_blank_data 
+0039 2040368a call dongle_g24_ms_blank_data 
+003a 2040003c call p_dongle_g24_kb_blank_data 
+003b 20200048 branch p_dongle_g24_kb_mul_blank_data 
 
 p_dongle_g24_kb_blank_data:
-0037 6fe0c906 fetch 1 ,mem_dg_kb_blank_data_enable 
-0038 207a0000 rtn blank 
-0039 d8e0000e arg timer_kb_blank ,queue 
-003a 20407d74 call timer_check 
-003b 247a0000 nrtn blank 
-003c 70490600 jam 0 ,mem_dg_kb_blank_data_enable 
-003d d8a00c0f arg mem_usb_kb_data ,contw 
-003e df200002 arg 2 ,loopcnt 
-003f 20407d17 call memset0 
-0040 6fe40c0f fetch 8 ,mem_usb_kb_data 
-0041 67e448f2 store 8 ,mem_dg_kb_data_last_data 
-0042 202036a2 branch dongle_usb_tx_kb_data 
+003c 6fe0c906 fetch 1 ,mem_dg_kb_blank_data_enable 
+003d 207a0000 rtn blank 
+003e d8e0000e arg timer_kb_blank ,queue 
+003f 20407d74 call timer_check 
+0040 247a0000 nrtn blank 
+0041 70490600 jam 0 ,mem_dg_kb_blank_data_enable 
+0042 d8a00c0f arg mem_usb_kb_data ,contw 
+0043 df200002 arg 2 ,loopcnt 
+0044 20407d17 call memset0 
+0045 6fe40c0f fetch 8 ,mem_usb_kb_data 
+0046 67e448f2 store 8 ,mem_dg_kb_data_last_data 
+0047 202036a2 branch dongle_usb_tx_kb_data 
 
 p_dongle_g24_kb_mul_blank_data:
-0043 6fe0c907 fetch 1 ,mem_dg_kb_mul_blank_data_enable 
-0044 207a0000 rtn blank 
-0045 d8e0000c arg timer_kb_mul_blank ,queue 
-0046 20407d74 call timer_check 
-0047 247a0000 nrtn blank 
-0048 70490700 jam 0 ,mem_dg_kb_mul_blank_data_enable 
-0049 d8a00c1f arg mem_usb_kb_multikey ,contw 
-004a df200002 arg 2 ,loopcnt 
-004b 20407d17 call memset0 
-004c 700c1f03 jam kb_multikey_report_id ,mem_usb_kb_multikey 
-004d 6fe18c1f fetch 3 ,mem_usb_kb_multikey 
-004e 67e1c8fd store 3 ,mem_dg_kb_multikey_last_data 
-004f 202036b2 branch dongle_usb_tx_multikey_data 
+0048 6fe0c907 fetch 1 ,mem_dg_kb_mul_blank_data_enable 
+0049 207a0000 rtn blank 
+004a d8e0000c arg timer_kb_mul_blank ,queue 
+004b 20407d74 call timer_check 
+004c 247a0000 nrtn blank 
+004d 70490700 jam 0 ,mem_dg_kb_mul_blank_data_enable 
+004e d8a00c1f arg mem_usb_kb_multikey ,contw 
+004f df200002 arg 2 ,loopcnt 
+0050 20407d17 call memset0 
+0051 700c1f03 jam kb_multikey_report_id ,mem_usb_kb_multikey 
+0052 6fe18c1f fetch 3 ,mem_usb_kb_multikey 
+0053 67e1c8fd store 3 ,mem_dg_kb_multikey_last_data 
+0054 202036b2 branch dongle_usb_tx_multikey_data 
 
 p_usb_class_type:
-0050 793f8023 set0 mark_isstr ,mark 
-0051 6fe08b59 fetch 1 ,mem_usb_setup_bmrequesttype 
-0052 1fe17e80 and_into 0x80 ,pdata 
-0053 c0000055 beq out_device ,p_usb_out_device 
-0054 20207a34 branch usb_class_type + 4 
+0055 793f8023 set0 mark_isstr ,mark 
+0056 6fe08b59 fetch 1 ,mem_usb_setup_bmrequesttype 
+0057 1fe17e80 and_into 0x80 ,pdata 
+0058 c000005a beq out_device ,p_usb_out_device 
+0059 20207a34 branch usb_class_type + 4 
 
 p_usb_out_device:
-0055 6fe08b59 fetch 1 ,mem_usb_setup_bmrequesttype 
-0056 1ff1fe00 rshift4 pdata ,pdata 
-0057 1fe37e00 rshift pdata ,pdata 
-0058 1fe17e03 and_into 0x03 ,pdata 
-0059 c0007a53 beq standard_req ,usb_out_standard_req 
-005a c000805c beq class_req ,p_usb_out_class_req 
-005b 20207a43 branch usb_out_device + 4 
+005a 6fe08b59 fetch 1 ,mem_usb_setup_bmrequesttype 
+005b 1ff1fe00 rshift4 pdata ,pdata 
+005c 1fe37e00 rshift pdata ,pdata 
+005d 1fe17e03 and_into 0x03 ,pdata 
+005e c0007a53 beq standard_req ,usb_out_standard_req 
+005f c0008061 beq class_req ,p_usb_out_class_req 
+0060 20207a43 branch usb_out_device + 4 
 
 p_usb_out_class_req:
-005c 6fe08b5a fetch 1 ,mem_usb_setup_brequest 
-005d c004805f beq set_report ,p_usb_set_report 
-005e 20207a5c branch usb_out_class_req + 1 
+0061 6fe08b5a fetch 1 ,mem_usb_setup_brequest 
+0062 c0048064 beq set_report ,p_usb_set_report 
+0063 20207a5c branch usb_out_class_req + 1 
 
 p_usb_set_report:
-005f 20003a98 nop 15000 
-0060 20207bd8 branch usb_set_report 
+0064 20003a98 nop 15000 
+0065 20207bd8 branch usb_set_report 
 
 p_usb_tx:
-0061 6fe08bf9 fetch 1 ,mem_usb_tx_enable 
-0062 207a0000 rtn blank 
-0063 6ff08c24 fetch 1 ,core_usb_txbusy 
-0064 1fe17e0f and_into 0x0f ,pdata 
-0065 243a7ca4 nbranch usb_inwake_state_tx_dispose ,blank 
-0066 20207c59 branch usb_tx + 3 
+0066 6fe08bf9 fetch 1 ,mem_usb_tx_enable 
+0067 207a0000 rtn blank 
+0068 6ff08c24 fetch 1 ,core_usb_txbusy 
+0069 1fe17e0f and_into 0x0f ,pdata 
+006a 243a7ca4 nbranch usb_inwake_state_tx_dispose ,blank 
+006b 20207c59 branch usb_tx + 3 
               org 0x800
 
 start:
Index: program/patch.prog
===================================================================
--- /YC1308AC/branch/mouse_project/YDN_Project/usb_16M/program/patch.prog	(revision 606)
+++ /YC1308AC/branch/mouse_project/YDN_Project/usb_16M/program/patch.prog	(working copy)
@@ -11,6 +11,7 @@
 	beq patch32_0,p_usb_class_type
 	beq patch32_5,p_usb_tx
 	beq patch35_1,p_le_enable
+	beq patch3c_6,p_g24_bind_mode_auto
 	branch loop
 p_le_enable:
 	call le_enable+1
@@ -77,6 +78,11 @@
 	call p_wdt_kick
 	branch dongle_usb_dispatch+1
 
+p_g24_bind_mode_auto:
+	fetch 1,mem_24g_work_mode
+	rtnne DONGLE_BIND
+	jam TX_POWER_F5DB,mem_tx_power
+	branch g24_bind_mode_auto+3
 
 /************************keyboard blank patch**********/
 p_dongle_work_mode_auto:
Index: sched/dongle.dat
===================================================================
--- /YC1308AC/branch/mouse_project/YDN_Project/usb_16M/sched/dongle.dat	(revision 606)
+++ /YC1308AC/branch/mouse_project/YDN_Project/usb_16M/sched/dongle.dat	(working copy)
@@ -24,7 +24,7 @@
 
 
 #rf config
-mem_lap:36 26 10 30 11 12#low 4B used for 24g rxaddr
+mem_lap:38 27 10 30 11 12#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
