Index: output/flash.dat
===================================================================
--- /branch/mouse_project/YJX_Project/YJX_1066/Standard_PLM_MousePen_28/output/flash.dat	(revision 5787)
+++ /branch/mouse_project/YJX_Project/YJX_1066/Standard_PLM_MousePen_28/output/flash.dat	(working copy)
@@ -6375,7 +6375,7 @@
 70
 11
 c6
-00
+31
 20
 20
 07
@@ -8116,8 +8116,8 @@
 20
 07
 e7
-02
-be
+e0
+ad
 aa
 55
 08
@@ -11566,7 +11566,67 @@
 c0
 18
 00
-03
+12
+c0
+18
+80
+04
+20
+60
+00
+00
+68
+00
+80
+0e
+1f
+e0
+fe
+01
+60
+00
+80
+0e
+20
+40
+24
+35
+79
+20
+00
+2c
+20
+40
+22
+f2
+20
+2c
+00
+0f
+79
+3f
+80
+2c
+20
+40
+24
+55
+24
+3a
+00
+08
+20
+20
+20
+fc
+79
+3f
+80
+2c
+20
+20
+21
+5f
 20
 60
 00
@@ -11654,7 +11714,7 @@
 20
 42
 80
-1e
+2d
 68
 00
 cb
@@ -11662,7 +11722,7 @@
 24
 5a
 00
-1e
+2d
 68
 00
 c0
@@ -11755,66 +11815,6 @@
 00
 00
 00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
-00
 20
 20
 00
@@ -12333,72 +12333,16 @@
 40
 c0
 00
-00
-05
-c0
-00
 80
-12
+04
 c0
 01
 00
-2c
+1e
 20
 60
 00
 00
-68
-00
-80
-0e
-1f
-e0
-fe
-01
-60
-00
-80
-0e
-20
-40
-24
-35
-79
-20
-00
-2c
-20
-40
-22
-f2
-20
-2c
-00
-10
-79
-3f
-80
-2c
-20
-40
-24
-55
-24
-3a
-00
-09
-20
-20
-20
-fc
-79
-3f
-80
-2c
-20
-20
-21
-5f
 70
 48
 08
@@ -12426,15 +12370,15 @@
 c2
 80
 80
-1c
+0e
 c2
 81
 00
-1f
+11
 c2
 81
 80
-1f
+11
 20
 20
 42
@@ -12442,11 +12386,11 @@
 c2
 82
 80
-1f
+11
 c2
 81
 80
-1f
+11
 20
 20
 42
@@ -12470,7 +12414,7 @@
 c0
 03
 80
-29
+1b
 68
 00
 c6
@@ -12478,7 +12422,7 @@
 20
 3a
 00
-29
+1b
 68
 00
 cb
@@ -12530,11 +12474,11 @@
 c0
 03
 80
-35
+27
 c0
 00
 80
-3c
+2e
 20
 20
 4d
@@ -12583,9 +12527,65 @@
 00
 00
 00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
+00
 aa
 55
 00
 00
-6e
-63
+35
+c9
Index: output/program.lis
===================================================================
--- /branch/mouse_project/YJX_Project/YJX_1066/Standard_PLM_MousePen_28/output/program.lis	(revision 5787)
+++ /branch/mouse_project/YJX_Project/YJX_1066/Standard_PLM_MousePen_28/output/program.lis	(working copy)
@@ -2218,7 +2218,7 @@
 0637 202063f4 branch twspi_enable_next 
 
 p_page_wait_fhs_reply_ok:
-0638 7011c600 jam zcode_00 ,mem_zcode_temp_param0 
+0638 7011c631 jam zcode_31 ,mem_zcode_temp_param0 
 0639 20200735 branch p_zcode_entrance 
 
 p_role_switch_master:
@@ -35462,88 +35462,68 @@
               org 0x10001
 
 z_entrance0:
-10001 c0000005 beq zcode_00 ,z_page_wait_fhs_reply_ok 
-10002 c0008012 beq zcode_01 ,z_mouse_bb_disconnected 
-10003 c001002c beq zcode_02 ,z_hid_rx_process 
-10004 20600000 rtn 
-
-z_page_wait_fhs_reply_ok:
-10005 6800800e fetch 1 ,mem_page_rcv_fhs 
-10006 1fe0fe01 increase 1 ,pdata 
-10007 6000800e store 1 ,mem_page_rcv_fhs 
-10008 20402435 call prepare_newconn 
-
-z_master_newconn_loop:
-10009 7920002c set1 mark_first_packet ,mark 
-1000a 204022f2 call master_newconn_once 
-1000b 202c0010 branch z_newconn_poll_responded ,sync 
-1000c 793f802c set0 mark_first_packet ,mark 
-1000d 20402455 call new_conn_timeout 
-1000e 243a0009 nbranch z_master_newconn_loop ,blank 
-1000f 202020fc branch page_restart 
-
-z_newconn_poll_responded:
-10010 793f802c set0 mark_first_packet ,mark 
-10011 2020215f branch newconn_poll_responded 
+10001 c0008004 beq zcode_01 ,z_mouse_bb_disconnected 
+10002 c001001e beq zcode_02 ,z_hid_rx_process 
+10003 20600000 rtn 
 
 z_mouse_bb_disconnected:
-10012 70480800 jam 0 ,mem_mouse_enter_sniff_count 
-10013 7041e30e jam 0x0e ,mem_sniff_param_interval 
-10014 204041e7 call mouse_bb_discon_clear_stack 
-10015 68014208 fetch app_disc_rsn_size ,mem_app_disconn_reason 
-10016 c283c1f5 bbit1 app_disc_ble ,mouse4_0_event_bb_disconn 
-10017 c28033a9 bbit1 app_disc_by_button ,app_disconn_reason_clear 
-10018 c280801c bbit1 app_disc_after_pairing ,z_mouse_event_light_state_pairing 
-10019 c281001f bbit1 app_disc_after_reconn ,z_mouse_event_light_state_hibernate 
-1001a c281801f bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate 
-1001b 202042b0 branch mouse_start_discovery 
+10004 70480800 jam 0 ,mem_mouse_enter_sniff_count 
+10005 7041e30e jam 0x0e ,mem_sniff_param_interval 
+10006 204041e7 call mouse_bb_discon_clear_stack 
+10007 68014208 fetch app_disc_rsn_size ,mem_app_disconn_reason 
+10008 c283c1f5 bbit1 app_disc_ble ,mouse4_0_event_bb_disconn 
+10009 c28033a9 bbit1 app_disc_by_button ,app_disconn_reason_clear 
+1000a c280800e bbit1 app_disc_after_pairing ,z_mouse_event_light_state_pairing 
+1000b c2810011 bbit1 app_disc_after_reconn ,z_mouse_event_light_state_hibernate 
+1000c c2818011 bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate 
+1000d 202042b0 branch mouse_start_discovery 
 
 z_mouse_event_light_state_pairing:
-1001c c282801f bbit1 app_disc_after_handshake ,z_mouse_event_light_state_hibernate 
-1001d c281801f bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate 
-1001e 202042b0 branch mouse_start_discovery 
+1000e c2828011 bbit1 app_disc_after_handshake ,z_mouse_event_light_state_hibernate 
+1000f c2818011 bbit1 app_disc_after_sniff ,z_mouse_event_light_state_hibernate 
+10010 202042b0 branch mouse_start_discovery 
 
 z_mouse_event_light_state_hibernate:
-1001f 68014682 fetch 2 ,mem_ui_state_map 
-10020 c28642b0 bbit1 ui_state_btn_down ,mouse_start_discovery 
-10021 204033a9 call app_disconn_reason_clear 
-10022 20400517 call p_mouse_check_key_gpio 
-10023 c0038029 beq mouse_lmr_button ,z_mouse_null_enter_hibernate_enable 
-10024 6800c6b6 fetch 1 ,mem_mouse_dpi_button_state 
-10025 203a0029 branch z_mouse_null_enter_hibernate_enable ,blank 
-10026 6800cbb7 fetch 1 ,mem_mouse_power_on_time 
-10027 247a0000 nrtn blank 
-10028 202033a7 branch app_bb_hibernate 
+10011 68014682 fetch 2 ,mem_ui_state_map 
+10012 c28642b0 bbit1 ui_state_btn_down ,mouse_start_discovery 
+10013 204033a9 call app_disconn_reason_clear 
+10014 20400517 call p_mouse_check_key_gpio 
+10015 c003801b beq mouse_lmr_button ,z_mouse_null_enter_hibernate_enable 
+10016 6800c6b6 fetch 1 ,mem_mouse_dpi_button_state 
+10017 203a001b branch z_mouse_null_enter_hibernate_enable ,blank 
+10018 6800cbb7 fetch 1 ,mem_mouse_power_on_time 
+10019 247a0000 nrtn blank 
+1001a 202033a7 branch app_bb_hibernate 
 
 z_mouse_null_enter_hibernate_enable:
-10029 70479f01 jam 1 ,mem_mouse_null_enter_hibernate_flag 
-1002a 7047a028 jam 40 ,mem_mouse_null_enter_hibernate_timer 
-1002b 20600000 rtn 
+1001b 70479f01 jam 1 ,mem_mouse_null_enter_hibernate_flag 
+1001c 7047a028 jam 40 ,mem_mouse_null_enter_hibernate_timer 
+1001d 20600000 rtn 
 
 z_hid_rx_process:
-1002c 68010264 fetch 2 ,mem_l2cap_payload_ptr 
-1002d 1fe20c00 copy pdata ,contr 
-1002e e8c08000 ifetch 1 ,contr 
-1002f 6000cb02 store 1 ,mem_l2cap_rcv 
-10030 1fe1040f and pdata ,0x0f ,temp 
-10031 1ff1fe00 rshift4 pdata ,pdata 
-10032 c0038035 beq hid_type_set_protocol ,z_hid_rx_set_protocol 
-10033 c000803c beq hid_type_control ,z_hid_rx_process_hid_control 
-10034 20204d39 branch hid_rx_process + 6 
+1001e 68010264 fetch 2 ,mem_l2cap_payload_ptr 
+1001f 1fe20c00 copy pdata ,contr 
+10020 e8c08000 ifetch 1 ,contr 
+10021 6000cb02 store 1 ,mem_l2cap_rcv 
+10022 1fe1040f and pdata ,0x0f ,temp 
+10023 1ff1fe00 rshift4 pdata ,pdata 
+10024 c0038027 beq hid_type_set_protocol ,z_hid_rx_set_protocol 
+10025 c000802e beq hid_type_control ,z_hid_rx_process_hid_control 
+10026 20204d39 branch hid_rx_process + 6 
 
 z_hid_rx_set_protocol:
-10035 20404d53 call hid_rx_process_handshake 
-10036 704b0300 jam 0 ,mem_mouse_bt_boot_mode 
-10037 6800cb02 fetch 1 ,mem_l2cap_rcv 
-10038 2feffe00 isolate1 0 ,pdata 
-10039 20608000 rtn true 
-1003a 704b0301 jam 1 ,mem_mouse_bt_boot_mode 
-1003b 20600000 rtn 
+10027 20404d53 call hid_rx_process_handshake 
+10028 704b0300 jam 0 ,mem_mouse_bt_boot_mode 
+10029 6800cb02 fetch 1 ,mem_l2cap_rcv 
+1002a 2feffe00 isolate1 0 ,pdata 
+1002b 20608000 rtn true 
+1002c 704b0301 jam 1 ,mem_mouse_bt_boot_mode 
+1002d 20600000 rtn 
 
 z_hid_rx_process_hid_control:
-1003c 18427e00 copy temp ,pdata 
-1003d c00283b2 beq hid_control_p_virtualcableunplug ,p_mouse_irtual_cable_unplug 
-1003e 20204d41 branch hid_rx_process_hid_control + 2 
+1002e 18427e00 copy temp ,pdata 
+1002f c00283b2 beq hid_control_p_virtualcableunplug ,p_mouse_irtual_cable_unplug 
+10030 20204d41 branch hid_rx_process_hid_control + 2 
               org 0x20001
 
 z_entrance1:
@@ -35697,45 +35677,66 @@
               org 0x40001
 
 z_entrance3:
-40001 c0180003 beq zcode_30 ,z_mouse_start_discovery 
-40002 20600000 rtn 
+40001 c0180012 beq zcode_30 ,z_mouse_start_discovery 
+40002 c0188004 beq zcode_31 ,z_page_wait_fhs_reply_ok 
+40003 20600000 rtn 
+
+z_page_wait_fhs_reply_ok:
+40004 6800800e fetch 1 ,mem_page_rcv_fhs 
+40005 1fe0fe01 increase 1 ,pdata 
+40006 6000800e store 1 ,mem_page_rcv_fhs 
+40007 20402435 call prepare_newconn 
+
+z_master_newconn_loop:
+40008 7920002c set1 mark_first_packet ,mark 
+40009 204022f2 call master_newconn_once 
+4000a 202c000f branch z_newconn_poll_responded ,sync 
+4000b 793f802c set0 mark_first_packet ,mark 
+4000c 20402455 call new_conn_timeout 
+4000d 243a0008 nbranch z_master_newconn_loop ,blank 
+4000e 202020fc branch page_restart 
+
+z_newconn_poll_responded:
+4000f 793f802c set0 mark_first_packet ,mark 
+40010 2020215f branch newconn_poll_responded 
+40011 20600000 rtn 
 
 z_mouse_start_discovery:
-40003 2040025b call p_mouse_tx_power_init 
-40004 704b6e00 jam 0 ,mem_le_send_security_request_flag 
-40005 704b6b01 jam 1 ,mem_mouse_start_discovery_enable 
-40006 70472001 jam mode_bt_device1 ,mem_device_flag 
-40007 70479e00 jam 0 ,mem_mouse_clear_sensor_data_flag 
+40012 2040025b call p_mouse_tx_power_init 
+40013 704b6e00 jam 0 ,mem_le_send_security_request_flag 
+40014 704b6b01 jam 1 ,mem_mouse_start_discovery_enable 
+40015 70472001 jam mode_bt_device1 ,mem_device_flag 
+40016 70479e00 jam 0 ,mem_mouse_clear_sensor_data_flag 
 
 z_mouse_start_discovery_norandom:
-40008 68034b62 fetch 6 ,mem_le_normal_lap 
-40009 600344a0 store 6 ,mem_le_lap 
-4000a 204002d4 call p_mouse_fast_conn_disable 
-4000b 20403418 call app_lpm_mult_disable 
-4000c 68014687 fetch 2 ,mem_discovery_timeout 
-4000d 600146ac store 2 ,mem_mouse_discovery_timer 
-4000e 70016d06 jam 6 ,mem_connection_options 
-4000f 58000000 setarg 0 
-40010 600146b0 store 2 ,mem_mouse_no_data_timer 
-40011 600146ae store 2 ,mem_mouse_direct_timer 
-40012 2040041a call p_mouse_store_eeprom_enable 
-40013 204043ca call mouse_bt_discovery_button_down_disable 
-40014 204002c1 call p_mouse_load_flash_device_info 
-40015 6800c210 fetch 1 ,mem_xrecord_mode 
-40016 1fe67c33 sub pdata ,rec_3_mode ,null 
-40017 2042801e call z3_check_51cmd_adv ,zero 
-40018 6800cb6c fetch 1 ,mem_mouse_le_adv_start 
-40019 245a001e ncall z3_check_51cmd_adv ,blank 
-4001a 6800c092 fetch 1 ,mem_device_option 
-4001b 2feffe00 isolate1 mode_3_mouse ,pdata 
-4001c 2040fddd call check_51cmd_start_discovery ,true 
-4001d 20200492 branch p_mouse_discovery_multi_led_blink 
+40017 68034b62 fetch 6 ,mem_le_normal_lap 
+40018 600344a0 store 6 ,mem_le_lap 
+40019 204002d4 call p_mouse_fast_conn_disable 
+4001a 20403418 call app_lpm_mult_disable 
+4001b 68014687 fetch 2 ,mem_discovery_timeout 
+4001c 600146ac store 2 ,mem_mouse_discovery_timer 
+4001d 70016d06 jam 6 ,mem_connection_options 
+4001e 58000000 setarg 0 
+4001f 600146b0 store 2 ,mem_mouse_no_data_timer 
+40020 600146ae store 2 ,mem_mouse_direct_timer 
+40021 2040041a call p_mouse_store_eeprom_enable 
+40022 204043ca call mouse_bt_discovery_button_down_disable 
+40023 204002c1 call p_mouse_load_flash_device_info 
+40024 6800c210 fetch 1 ,mem_xrecord_mode 
+40025 1fe67c33 sub pdata ,rec_3_mode ,null 
+40026 2042802d call z3_check_51cmd_adv ,zero 
+40027 6800cb6c fetch 1 ,mem_mouse_le_adv_start 
+40028 245a002d ncall z3_check_51cmd_adv ,blank 
+40029 6800c092 fetch 1 ,mem_device_option 
+4002a 2feffe00 isolate1 mode_3_mouse ,pdata 
+4002b 2040fddd call check_51cmd_start_discovery ,true 
+4002c 20200492 branch p_mouse_discovery_multi_led_blink 
 
 z3_check_51cmd_adv:
-4001e 68034b62 fetch 6 ,mem_le_normal_lap 
-4001f 600344a0 store 6 ,mem_le_lap 
-40020 20400412 call p_mouse_le_adv_data_update 
-40021 20207df4 branch check_51cmd_adv 
+4002d 68034b62 fetch 6 ,mem_le_normal_lap 
+4002e 600344a0 store 6 ,mem_le_lap 
+4002f 20400412 call p_mouse_le_adv_data_update 
+40030 20207df4 branch check_51cmd_adv 
               org 0x50001
 
 z_entrance4:
Index: output/romcode.rom
===================================================================
--- /branch/mouse_project/YJX_Project/YJX_1066/Standard_PLM_MousePen_28/output/romcode.rom	(revision 5787)
+++ /branch/mouse_project/YJX_Project/YJX_1066/Standard_PLM_MousePen_28/output/romcode.rom	(working copy)
@@ -24572,43 +24572,29 @@
 e0a08000
 c2007ff9
 20600000
-c0000005
-c0008012
-c001002c
+c0008004
+c001001e
 20600000
-6800800e
-1fe0fe01
-6000800e
-20402435
-7920002c
-204022f2
-202c0010
-793f802c
-20402455
-243a0009
-202020fc
-793f802c
-2020215f
 70480800
 7041e30e
 204041e7
 68014208
 c283c1f5
 c28033a9
-c280801c
-c281001f
-c281801f
+c280800e
+c2810011
+c2818011
 202042b0
-c282801f
-c281801f
+c2828011
+c2818011
 202042b0
 68014682
 c28642b0
 204033a9
 20400517
-c0038029
+c003801b
 6800c6b6
-203a0029
+203a001b
 6800cbb7
 247a0000
 202033a7
@@ -24621,8 +24607,8 @@
 6000cb02
 1fe1040f
 1ff1fe00
-c0038035
-c000803c
+c0038027
+c000802e
 20204d39
 20404d53
 704b0300
@@ -24740,7 +24726,22 @@
 20405cf7
 20404d6b
 2020246e
-c0180003
+c0180012
+c0188004
+20600000
+6800800e
+1fe0fe01
+6000800e
+20402435
+7920002c
+204022f2
+202c000f
+793f802c
+20402455
+243a0008
+202020fc
+793f802c
+2020215f
 20600000
 2040025b
 704b6e00
@@ -24762,9 +24763,9 @@
 204002c1
 6800c210
 1fe67c33
-2042801e
+2042802d
 6800cb6c
-245a001e
+245a002d
 6800c092
 2feffe00
 2040fddd
@@ -25188,4 +25189,4 @@
 793ffe1c
 60024c9d
 20207fe7
-0000dd3c
+00002aee
Index: program/patch.prog
===================================================================
--- /branch/mouse_project/YJX_Project/YJX_1066/Standard_PLM_MousePen_28/program/patch.prog	(revision 5787)
+++ /branch/mouse_project/YJX_Project/YJX_1066/Standard_PLM_MousePen_28/program/patch.prog	(working copy)
@@ -2914,7 +2914,7 @@
 
 ifdef CLASSIC_BT
 p_page_wait_fhs_reply_ok:
-	jam ZCODE_00,mem_zcode_temp_param0
+	jam ZCODE_31,mem_zcode_temp_param0
 	branch p_zcode_entrance
 
 p_role_switch_master:
Index: program/z.prog
===================================================================
--- /branch/mouse_project/YJX_Project/YJX_1066/Standard_PLM_MousePen_28/program/z.prog	(revision 5752)
+++ /branch/mouse_project/YJX_Project/YJX_1066/Standard_PLM_MousePen_28/program/z.prog	(working copy)
@@ -1,28 +1,10 @@
 
 org 0x10001
 z_entrance0:
-	beq ZCODE_00,z_page_wait_fhs_reply_ok
 	beq ZCODE_01,z_mouse_bb_disconnected
 	beq ZCODE_02,z_hid_rx_process
 	rtn
 
-z_page_wait_fhs_reply_ok:
- 	fetch 1, mem_page_rcv_fhs
-	increase 1,pdata
-	store 1, mem_page_rcv_fhs
-	call prepare_newconn
-z_master_newconn_loop:
- 	set1 mark_first_packet,mark
-	call master_newconn_once
-	branch z_newconn_poll_responded,sync
-	set0 mark_first_packet,mark
-	call new_conn_timeout
-	nbranch z_master_newconn_loop,blank
-	branch page_restart
-z_newconn_poll_responded:
-	set0 mark_first_packet,mark
-	branch newconn_poll_responded
-
 z_mouse_bb_disconnected:
 	jam 0,mem_mouse_enter_sniff_count
 	jam 0x0e,mem_sniff_param_interval	//115Hz
@@ -240,6 +222,25 @@
 
 z_entrance3:
 	beq ZCODE_30,z_mouse_start_discovery
+	beq ZCODE_31,z_page_wait_fhs_reply_ok
+	rtn
+
+z_page_wait_fhs_reply_ok:
+ 	fetch 1, mem_page_rcv_fhs
+	increase 1,pdata
+	store 1, mem_page_rcv_fhs
+	call prepare_newconn
+z_master_newconn_loop:
+ 	set1 mark_first_packet,mark
+	call master_newconn_once
+	branch z_newconn_poll_responded,sync
+	set0 mark_first_packet,mark
+	call new_conn_timeout
+	nbranch z_master_newconn_loop,blank
+	branch page_restart
+z_newconn_poll_responded:
+	set0 mark_first_packet,mark
+	branch newconn_poll_responded
 	rtn
 
 z_mouse_start_discovery:
@@ -922,4 +923,4 @@
 	nrtn positive
 	set0 28,pdata
 	store 4,mem_24g_tx_btclk
-	branch enable_user
\ No newline at end of file
+	branch enable_user
