Index: 1305_otp_download/download/output/otp.dat
===================================================================
--- /1121s/branch/1305_otp_download/download/output/otp.dat	(revision 278)
+++ /1121s/branch/1305_otp_download/download/output/otp.dat	(working copy)
@@ -11,76 +11,84 @@
 00
 aa
 55
-22
+b6
 04
 c2
 84
 00
-0f
+11
 c0
 01
 00
-13
+15
 c0
 07
 80
-6b
+90
+c0
+08
+80
+1e
 c0
 0a
 00
-c8
+ed
 c0
 0a
 80
-4c
+64
 c0
 0c
 00
-5a
+72
+c0
+0c
+80
+31
 c0
 0d
 00
-1c
+2c
 c0
 0d
 80
-96
+bb
 c0
 0e
 80
-98
+bd
 c0
 12
-80
-ea
+81
+0f
 c0
 58
 80
-64
+7c
 c0
 62
 80
-61
+79
 c0
 6d
 00
-99
+be
 c0
 6e
 00
-a9
+ce
 20
 20
 23
 5a
 c0
 1c
-80
-e4
+81
+09
 c0
 26
-80
-e8
+81
+0d
 c1
 7f
 80
@@ -124,7 +132,63 @@
 20
 20
 00
-13
+15
+70
+8a
+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
+70
+8a
+23
+dd
+20
+60
+00
+00
 70
 89
 46
@@ -140,15 +204,47 @@
 20
 40
 00
-21
+39
 20
 20
 22
 49
+6f
+e0
+c1
+41
+c0
+05
+00
+34
+20
+20
+22
+0e
+70
+8a
+14
+25
+58
+a9
+3f
+3f
+67
+f1
+8a
+60
+70
+8a
+63
+1f
+20
+60
+00
+00
 20
 35
 80
-48
+60
 6f
 e2
 02
@@ -316,7 +412,7 @@
 20
 20
 00
-32
+4a
 20
 40
 68
@@ -368,7 +464,7 @@
 70
 8a
 16
-9e
+fe
 20
 20
 21
@@ -396,7 +492,7 @@
 70
 8a
 16
-96
+f6
 20
 20
 22
@@ -413,6 +509,38 @@
 20
 6b
 38
+70
+8a
+00
+9f
+70
+8a
+16
+fe
+6f
+f0
+81
+38
+79
+3f
+fe
+03
+79
+3f
+fe
+05
+79
+3f
+fe
+06
+67
+f0
+81
+38
+37
+d9
+82
+00
 20
 40
 73
@@ -421,6 +549,26 @@
 75
 80
 00
+58
+00
+00
+0e
+67
+e1
+44
+f2
+58
+00
+00
+a0
+67
+e1
+44
+f4
+67
+e1
+43
+89
 6f
 e4
 48
@@ -492,7 +640,7 @@
 20
 40
 00
-88
+ad
 2a
 2f
 fe
@@ -524,7 +672,7 @@
 20
 40
 00
-88
+ad
 d8
 a0
 8a
@@ -552,7 +700,7 @@
 20
 21
 00
-7d
+a2
 20
 20
 21
@@ -656,7 +804,7 @@
 20
 40
 00
-c1
+e6
 70
 8a
 08
@@ -692,7 +840,7 @@
 20
 40
 00
-b7
+dc
 6f
 f0
 8a
@@ -736,7 +884,7 @@
 20
 40
 00
-c1
+e6
 70
 80
 cd
@@ -796,7 +944,7 @@
 c3
 02
 80
-c2
+e7
 68
 59
 01
@@ -831,8 +979,8 @@
 99
 c0
 08
-00
-e1
+01
+06
 58
 00
 57
@@ -875,8 +1023,8 @@
 99
 c0
 08
-00
-de
+01
+03
 58
 00
 2b
@@ -912,7 +1060,7 @@
 20
 20
 00
-da
+ff
 58
 00
 83
@@ -924,7 +1072,7 @@
 20
 20
 00
-cf
+f4
 6f
 e0
 c3
@@ -971,8 +1119,8 @@
 ad
 20
 40
-00
-f1
+01
+16
 20
 20
 24
@@ -1040,7 +1188,7 @@
 20
 22
 81
-03
+28
 e7
 e0
 80
@@ -1059,8 +1207,8 @@
 01
 c2
 00
-00
-fd
+01
+22
 1a
 42
 04
@@ -1069,8 +1217,8 @@
 60
 00
 00
-82
-d4
+f1
+09
 aa
 55
 40
@@ -1079,8 +1227,8 @@
 40
 04
 80
-30
-2d
+32
+2f
 20
 00
 00
@@ -1168,12 +1316,12 @@
 00
 db
 42
-21
+20
 31
 67
 98
 07
-2a
+2d
 aa
 55
 0c
@@ -1191,7 +1339,7 @@
 74
 65
 72
-33
+34
 aa
 55
 06
@@ -1288,7 +1436,7 @@
 00
 1c
 41
-6e
+7f
 aa
 55
 0c
@@ -1432,7 +1580,7 @@
 aa
 aa
 55
-f2
-4c
-87
-c2
+0b
+4d
+52
+e7
Index: 1305_otp_download/download_otp.bat
===================================================================
--- /1121s/branch/1305_otp_download/download_otp.bat	(revision 278)
+++ /1121s/branch/1305_otp_download/download_otp.bat	(working copy)
@@ -4,7 +4,7 @@
 e pu
 e 8043 00
 call updateADDR.bat
-e otp output/otp.dat 0
+e otp output/otp.dat 800
 e otr 0 10
 e ku
 e pu
Index: keyboard/customer_FW/Yecai_Project/HB030_SDK/do_sdk.bat
===================================================================
--- /1121s/branch/keyboard/customer_FW/Yecai_Project/HB030_SDK/do_sdk.bat	(revision 1479)
+++ /1121s/branch/keyboard/customer_FW/Yecai_Project/HB030_SDK/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,19 @@
 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
+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
Index: keyboard/keyboard_base/do.bat
===================================================================
--- /1121s/branch/keyboard/keyboard_base/do.bat	(revision 1479)
+++ /1121s/branch/keyboard/keyboard_base/do.bat	(working copy)
@@ -20,6 +20,10 @@
 @rem set device_option=flippen
 @echo off
 
+set now_path=%~dp0
+set util_path=%now_path%util
+set/p mode=Please press mode SA or SB:
+
 setlocal enabledelayedexpansion
 for %%f in (program\ble_protocol_stack\*.prog) do @set progs=!progs! %%f
 for %%f in (program\g24_protocol_stack\*.prog) do @set progs=!progs! %%f
@@ -74,9 +78,19 @@
 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
+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
Index: module/trunk/do.bat
===================================================================
--- /1121s/branch/module/trunk/do.bat	(revision 1468)
+++ /1121s/branch/module/trunk/do.bat	(working copy)
@@ -21,18 +21,6 @@
 @echo off
 
 setlocal enabledelayedexpansion
-for %%f in (program\ble_protocol_stack\*.prog) do @set progs=!progs! %%f
-for %%f in (program\g24_protocol_stack\*.prog) do @set progs=!progs! %%f
-for %%f in (program\mesh_protocol_stack\*.prog) do @set progs=!progs! %%f
-for %%f in (program\*.prog) do @if not %%f==program\bt.prog if not %%f==program\patch.prog if not %%f==program\sim.prog set progs=!progs! %%f
-type program\bt.prog %progs% %light_progs% > output\bt_program23.meta
-
-for %%f in (format\ble_protocol_stack\*.format) do set fmts=!fmts! %%f
-for %%f in (format\g24_protocol_stack\*.format) do set fmts=!fmts! %%f
-for %%f in (format\mesh_protocol_stack\*.format) do set fmts=!fmts! %%f
-for %%f in (format\*.format) do @if not %%f==format\bt.format if not %%f==format\command.format set fmts=!fmts! %%f
-type format\bt.format %fmts% format\command.format > output\bt_format.meta
-::perl util/memalloc.pl output/bt_format.meta
 
 if "%device_option%" equ "hci" (
   copy sched\hci_boot.dat output\sched.rom
Index: shutter/shutter_public/format/app_shutter.format
===================================================================
--- /1121s/branch/shutter/shutter_public/format/app_shutter.format	(revision 276)
+++ /1121s/branch/shutter/shutter_public/format/app_shutter.format	(working copy)
@@ -123,6 +123,15 @@
 40 mem_shutter_key_value_list
 8 mem_shutter_discovery_time_conf
 8 mem_shutter_reconn_or_discovery_blink_time_conf
+
+2 mem_le_anchor_ptr
+2 mem_le_clke_ptr
+2 mem_le_clke_offset_ptr
+2 mem_le_clkn_ptr
+32 mem_le_clke_offset_buffer
+32 mem_le_anchor_buffer
+32 mem_le_clke_buffer
+32 mem_le_clkn_buffer
 )
 
 
Index: shutter/shutter_public/output/eeprom.dat
===================================================================
--- /1121s/branch/shutter/shutter_public/output/eeprom.dat	(revision 276)
+++ /1121s/branch/shutter/shutter_public/output/eeprom.dat	(working copy)
@@ -2,84 +2,92 @@
 02
 aa
 55
-96
-04
+66
+05
 c2
 84
 00
-11
+12
+c0
+00
+00
+17
 c0
 01
 00
-15
+42
 c0
 07
 80
-88
+bc
 c0
 08
 80
-1e
+52
 c0
 0a
-00
-e5
+01
+19
 c0
 0a
 80
-64
+98
 c0
 0c
 00
-72
+a6
 c0
 0c
 80
-31
+65
 c0
 0d
 00
-2c
+60
 c0
 0d
 80
-b3
+e7
 c0
 0e
 80
-b5
+e9
 c0
 12
 81
-07
+3b
 c0
 58
 80
-7c
+b0
 c0
 62
 80
-79
+ad
 c0
 6d
 00
-b6
+ea
 c0
 6e
 00
-c6
+fa
 20
 20
 23
 5a
 c0
+11
+80
+4b
+c0
 1c
 81
-01
+35
 c0
 26
 81
-05
+39
 c1
 7f
 80
@@ -89,6 +97,178 @@
 23
 5a
 20
+80
+00
+00
+20
+40
+42
+a3
+20
+40
+22
+3d
+20
+40
+00
+1c
+20
+20
+20
+05
+20
+75
+80
+00
+20
+40
+00
+1f
+20
+20
+00
+2a
+df
+20
+00
+64
+da
+20
+02
+91
+70
+80
+cb
+08
+70
+80
+06
+80
+6f
+f0
+81
+29
+c3
+00
+80
+23
+6f
+f1
+81
+5b
+e7
+e1
+80
+11
+1a
+20
+a2
+03
+c2
+00
+00
+22
+20
+60
+00
+00
+20
+40
+00
+2d
+20
+40
+7d
+7c
+20
+20
+00
+37
+6f
+e1
+82
+91
+d8
+c0
+02
+94
+df
+20
+00
+64
+e8
+41
+80
+06
+98
+40
+fe
+00
+c2
+00
+00
+30
+1f
+e6
+fc
+64
+20
+40
+7d
+5f
+67
+e1
+86
+70
+20
+60
+00
+00
+df
+20
+00
+64
+da
+20
+02
+94
+da
+60
+00
+00
+6f
+e1
+86
+70
+e8
+41
+80
+11
+98
+46
+30
+00
+9a
+60
+a6
+00
+1a
+20
+a2
+03
+c2
+00
+00
+3a
+20
+40
+7d
+7c
+20
+60
+00
+00
+20
 40
 75
 52
@@ -123,7 +303,35 @@
 20
 20
 00
-15
+42
+20
+40
+26
+be
+78
+28
+7c
+00
+6f
+e1
+01
+76
+68
+4a
+43
+1d
+98
+40
+96
+00
+20
+40
+25
+cc
+20
+20
+26
+59
 70
 8a
 0f
@@ -195,7 +403,7 @@
 20
 40
 00
-39
+6d
 20
 20
 22
@@ -207,7 +415,7 @@
 c0
 05
 00
-34
+68
 20
 20
 22
@@ -235,7 +443,7 @@
 20
 35
 80
-60
+94
 6f
 e2
 02
@@ -403,7 +611,7 @@
 20
 20
 00
-4a
+7e
 20
 40
 68
@@ -599,7 +807,7 @@
 20
 40
 00
-a5
+d9
 2a
 2f
 fe
@@ -631,7 +839,7 @@
 20
 40
 00
-a5
+d9
 d8
 a0
 8a
@@ -659,7 +867,7 @@
 20
 21
 00
-9a
+ce
 20
 20
 21
@@ -762,8 +970,8 @@
 b8
 20
 40
-00
-de
+01
+12
 70
 8a
 08
@@ -798,8 +1006,8 @@
 00
 20
 40
-00
-d4
+01
+08
 6f
 f0
 8a
@@ -842,8 +1050,8 @@
 b8
 20
 40
-00
-de
+01
+12
 70
 80
 cd
@@ -902,8 +1110,8 @@
 29
 c3
 02
-80
-df
+81
+13
 68
 59
 01
@@ -938,8 +1146,8 @@
 99
 c0
 08
-00
-fe
+01
+32
 58
 00
 57
@@ -982,8 +1190,8 @@
 99
 c0
 08
-00
-fb
+01
+2f
 58
 00
 2b
@@ -1018,8 +1226,8 @@
 07
 20
 20
-00
-f7
+01
+2b
 58
 00
 83
@@ -1030,8 +1238,8 @@
 07
 20
 20
-00
-ec
+01
+20
 6f
 e0
 c3
@@ -1079,7 +1287,7 @@
 20
 40
 01
-0e
+42
 20
 20
 24
@@ -1147,7 +1355,7 @@
 20
 22
 81
-20
+54
 e7
 e0
 80
@@ -1167,7 +1375,7 @@
 c2
 00
 01
-1a
+4e
 1a
 42
 04
@@ -1176,15 +1384,15 @@
 60
 00
 00
-de
-bd
+b4
+04
 aa
 55
 40
 00
 00
 40
-04
+05
 80
 32
 2f
@@ -1220,7 +1428,7 @@
 00
 00
 00
-00
+08
 00
 00
 02
@@ -1298,7 +1506,7 @@
 74
 65
 72
-33
+34
 aa
 55
 06
@@ -1317,7 +1525,7 @@
 00
 41
 41
-05
+06
 aa
 55
 01
@@ -1349,6 +1557,14 @@
 03
 aa
 55
+02
+00
+3f
+44
+87
+88
+aa
+55
 01
 00
 48
@@ -1395,7 +1611,7 @@
 00
 1c
 41
-7f
+6e
 aa
 55
 0c
@@ -1439,7 +1655,7 @@
 9a
 40
 00
-0c
+0e
 aa
 55
 05
@@ -1539,226 +1755,10 @@
 aa
 aa
 55
-07
-4d
-38
-15
-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
-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
-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
+96
+4f
+b5
+61
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-50
-0f
+33
+c3
Index: shutter/shutter_public/output/flash.dat
===================================================================
--- /1121s/branch/shutter/shutter_public/output/flash.dat	(revision 276)
+++ /1121s/branch/shutter/shutter_public/output/flash.dat	(working copy)
@@ -2,84 +2,92 @@
 02
 aa
 55
-96
-04
+66
+05
 c2
 84
 00
-11
+12
+c0
+00
+00
+17
 c0
 01
 00
-15
+42
 c0
 07
 80
-88
+bc
 c0
 08
 80
-1e
+52
 c0
 0a
-00
-e5
+01
+19
 c0
 0a
 80
-64
+98
 c0
 0c
 00
-72
+a6
 c0
 0c
 80
-31
+65
 c0
 0d
 00
-2c
+60
 c0
 0d
 80
-b3
+e7
 c0
 0e
 80
-b5
+e9
 c0
 12
 81
-07
+3b
 c0
 58
 80
-7c
+b0
 c0
 62
 80
-79
+ad
 c0
 6d
 00
-b6
+ea
 c0
 6e
 00
-c6
+fa
 20
 20
 23
 5a
 c0
+11
+80
+4b
+c0
 1c
 81
-01
+35
 c0
 26
 81
-05
+39
 c1
 7f
 80
@@ -89,6 +97,178 @@
 23
 5a
 20
+80
+00
+00
+20
+40
+42
+a3
+20
+40
+22
+3d
+20
+40
+00
+1c
+20
+20
+20
+05
+20
+75
+80
+00
+20
+40
+00
+1f
+20
+20
+00
+2a
+df
+20
+00
+64
+da
+20
+02
+91
+70
+80
+cb
+08
+70
+80
+06
+80
+6f
+f0
+81
+29
+c3
+00
+80
+23
+6f
+f1
+81
+5b
+e7
+e1
+80
+11
+1a
+20
+a2
+03
+c2
+00
+00
+22
+20
+60
+00
+00
+20
+40
+00
+2d
+20
+40
+7d
+7c
+20
+20
+00
+37
+6f
+e1
+82
+91
+d8
+c0
+02
+94
+df
+20
+00
+64
+e8
+41
+80
+06
+98
+40
+fe
+00
+c2
+00
+00
+30
+1f
+e6
+fc
+64
+20
+40
+7d
+5f
+67
+e1
+86
+70
+20
+60
+00
+00
+df
+20
+00
+64
+da
+20
+02
+94
+da
+60
+00
+00
+6f
+e1
+86
+70
+e8
+41
+80
+11
+98
+46
+30
+00
+9a
+60
+a6
+00
+1a
+20
+a2
+03
+c2
+00
+00
+3a
+20
+40
+7d
+7c
+20
+60
+00
+00
+20
 40
 75
 52
@@ -123,7 +303,35 @@
 20
 20
 00
-15
+42
+20
+40
+26
+be
+78
+28
+7c
+00
+6f
+e1
+01
+76
+68
+4a
+43
+1d
+98
+40
+96
+00
+20
+40
+25
+cc
+20
+20
+26
+59
 70
 8a
 0f
@@ -195,7 +403,7 @@
 20
 40
 00
-39
+6d
 20
 20
 22
@@ -207,7 +415,7 @@
 c0
 05
 00
-34
+68
 20
 20
 22
@@ -235,7 +443,7 @@
 20
 35
 80
-60
+94
 6f
 e2
 02
@@ -403,7 +611,7 @@
 20
 20
 00
-4a
+7e
 20
 40
 68
@@ -599,7 +807,7 @@
 20
 40
 00
-a5
+d9
 2a
 2f
 fe
@@ -631,7 +839,7 @@
 20
 40
 00
-a5
+d9
 d8
 a0
 8a
@@ -659,7 +867,7 @@
 20
 21
 00
-9a
+ce
 20
 20
 21
@@ -762,8 +970,8 @@
 b8
 20
 40
-00
-de
+01
+12
 70
 8a
 08
@@ -798,8 +1006,8 @@
 00
 20
 40
-00
-d4
+01
+08
 6f
 f0
 8a
@@ -842,8 +1050,8 @@
 b8
 20
 40
-00
-de
+01
+12
 70
 80
 cd
@@ -902,8 +1110,8 @@
 29
 c3
 02
-80
-df
+81
+13
 68
 59
 01
@@ -938,8 +1146,8 @@
 99
 c0
 08
-00
-fe
+01
+32
 58
 00
 57
@@ -982,8 +1190,8 @@
 99
 c0
 08
-00
-fb
+01
+2f
 58
 00
 2b
@@ -1018,8 +1226,8 @@
 07
 20
 20
-00
-f7
+01
+2b
 58
 00
 83
@@ -1030,8 +1238,8 @@
 07
 20
 20
-00
-ec
+01
+20
 6f
 e0
 c3
@@ -1079,7 +1287,7 @@
 20
 40
 01
-0e
+42
 20
 20
 24
@@ -1147,7 +1355,7 @@
 20
 22
 81
-20
+54
 e7
 e0
 80
@@ -1167,7 +1375,7 @@
 c2
 00
 01
-1a
+4e
 1a
 42
 04
@@ -1176,15 +1384,15 @@
 60
 00
 00
-de
-bd
+b4
+04
 aa
 55
 40
 00
 00
 40
-04
+05
 80
 32
 2f
@@ -1220,7 +1428,7 @@
 00
 00
 00
-00
+08
 00
 00
 02
@@ -1298,7 +1506,7 @@
 74
 65
 72
-33
+34
 aa
 55
 06
@@ -1317,7 +1525,7 @@
 00
 41
 41
-05
+06
 aa
 55
 01
@@ -1349,6 +1557,14 @@
 03
 aa
 55
+02
+00
+3f
+44
+87
+88
+aa
+55
 01
 00
 48
@@ -1395,7 +1611,7 @@
 00
 1c
 41
-7f
+6e
 aa
 55
 0c
@@ -1439,7 +1655,7 @@
 9a
 40
 00
-0c
+0e
 aa
 55
 05
@@ -1539,226 +1755,10 @@
 aa
 aa
 55
-07
-4d
-38
-15
-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
-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
-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
+96
+4f
+b5
+61
 ff
 ff
 ff
@@ -8188,5 +8188,5 @@
 ff
 ff
 ff
-50
-0f
+33
+c3
Index: shutter/shutter_public/output/memmap.format
===================================================================
--- /1121s/branch/shutter/shutter_public/output/memmap.format	(revision 276)
+++ /1121s/branch/shutter/shutter_public/output/memmap.format	(working copy)
@@ -2258,162 +2258,170 @@
 0x4876 mem_shutter_key_value_list
 0x489e mem_shutter_discovery_time_conf
 0x48a6 mem_shutter_reconn_or_discovery_blink_time_conf
-0x48ae mem_shutter_1s_timer
-0x48af mem_shutter_timer_625us
-0x48b1 mem_rf_init_data_new
-0x48bc mem_key_value_xmem
-0x48be mem_shutter_le_hid_map
-0x49e0 mem_shutter_le_map_len_android
-0x49e2 mem_shutter_le_map_len_ios
-0x49e4 mem_dy_le_search_service_uuid
-0x49f4 mem_iphone_flag
-0x49f5 mem_send_data_delay
-0x49f6 mem_key_send_clk
-0x49fa mem_shutter_key_state0
-0x4a04 mem_shutter_key_state1
-0x4a0e mem_shutter_key_state2
-0x4a18 mem_shutter_key_state3
-0x4a22 mem_shutter_key_state4
-0x4a2c mem_shutter_key_state5
-0x4a36 mem_shutter_key_state6
-0x4a40 mem_key0_release_new
-0x4a4f mem_key1_release_new
-0x4a5e mem_key2_release_new
-0x4a6d mem_key3_release_new
-0x4a7c mem_key4_release_new
-0x4a8b mem_key5_release_new
-0x4a9a mem_key6_release_new
-0x4aa9 mem_key0_long_press
-0x4aac mem_key1_long_press
-0x4aaf mem_key2_long_press
-0x4ab2 mem_key3_long_press
-0x4ab5 mem_key4_long_press
-0x4ab8 mem_key5_long_press
-0x4abb mem_key6_long_press
-0x4abe mem_key0_long_release
-0x4ac1 mem_key1_long_release
-0x4ac4 mem_key2_long_release
-0x4ac7 mem_key3_long_release
-0x4aca mem_key4_long_release
-0x4acd mem_key5_long_release
-0x4ad0 mem_key6_long_release
-0x4ad3 mem_combine_key0
-0x4ad5 mem_combine_key1
-0x4ad7 mem_combine_key2
-0x4ad9 mem_combine_key3
-0x4adb mem_combine_key4
-0x4add mem_combine_key5
-0x4adf mem_combine_key_state0
-0x4ae1 mem_combine_key0_press
-0x4aeb mem_combine_key1_press
-0x4af5 mem_combine_key2_press
-0x4aff mem_combine_key3_press
-0x4b09 mem_combine_key4_press
-0x4b13 mem_combine_key5_press
-0x4b1d mem_combine_key_release
-0x4b27 mem_shutter_move_data
-0x4b2b mem_key0_press_i
-0x4b35 mem_key1_press_i
-0x4b3f mem_key2_press_i
-0x4b49 mem_key3_press_i
-0x4b53 mem_key4_press_i
-0x4b5d mem_key5_press_i
-0x4b67 mem_key0_release_new_i
-0x4b76 mem_key1_release_new_i
-0x4b85 mem_key2_release_new_i
-0x4b94 mem_key3_release_new_i
-0x4ba3 mem_key4_release_new_i
-0x4bb2 mem_key5_release_new_i
-0x4bc1 mem_key6_release_new_i
-0x4bd0 mem_key0_long_press_i
-0x4bd3 mem_key1_long_press_i
-0x4bd6 mem_key2_long_press_i
-0x4bd9 mem_key3_long_press_i
-0x4bdc mem_key4_long_press_i
-0x4bdf mem_key5_long_press_i
-0x4be2 mem_key6_long_press_i
-0x4be5 mem_key0_long_release_i
-0x4be8 mem_key1_long_release_i
-0x4beb mem_key2_long_release_i
-0x4bee mem_key3_long_release_i
-0x4bf1 mem_key4_long_release_i
-0x4bf4 mem_key5_long_release_i
-0x4bf7 mem_key6_long_release_i
-0x4bfa mem_key3_release_new_t
-0x4c04 mem_key3_release_new_i_t
-0x4c0e mem_key3_press_count
-0x4c0f mem_shutter_like_timeout
-0x4c10 mem_shutter_key_pressed
-0x4c11 mem_shutter_combine_key_release
-0x4c12 mem_shutter_mousekey_value_list
-0x4eba mem_shutter_back_count
-0x4ebb mem_shutter_le_conned
-0x4ebc mem_move_config
-0x4ebc mem_shutter_iphone_beyond_x_count
-0x4ebd mem_shutter_iphone_beyond_y_count
-0x4ebe mem_shutter_move_data_x
-0x4ec0 mem_shutter_move_data_y
-0x4ec2 mem_last_shutter_le_iphone_flag
-0x4ec3 mem_move_config_end
-0x4ec3 mem_shutter_back_count_cache
-0x4ec4 mem_shutter_iphone_beyond_x_cache
-0x4ec5 mem_shutter_iphone_beyond_y_cache
-0x4ec6 mem_shutter_iphone_move_mid
-0x4ed0 mem_shutter_long_key_released_flag
-0x4ed1 mem_shutter_move_mid_timer
-0x4ed2 mem_shutter_pairing_success
-0x4ed3 mem_combine_key_release_value
-0x4ed5 mem_last_press_key_value
-0x4ed6 mem_shutter_first_move
-0x4ed7 mem_move_mode_set
-0x4ed8 mem_move_mode_key_index
-0x4ed9 mem_move_mode_trigger_enable
-0x4eda mem_shutter_android_move_mid
-0x4edf mem_shutter_iphone_up_mid
-0x4ee9 mem_shutter_iphone_like_mid
-0x4ef3 mem_shutter_key_num_conf
-0x4ef4 mem_shutter_dy_key_conf
-0x4efb mem_le_dy_adv_data
-0x4f06 mem_le_dy_scan_data
-0x4f12 mem_ble_shutter_dy_interval_min_new
-0x4f1a mem_shutter_ble_discovery_time_conf
-0x4f22 mem_queue_dy_each_size
-0x4f24 mem_dy_key0_press
-0x4f2e mem_dy_key1_press
-0x4f38 mem_dy_key2_press
-0x4f42 mem_dy_key3_press
-0x4f4c mem_dy_key4_press
-0x4f56 mem_dy_key5_press
-0x4f60 mem_dy_key6_press
-0x4f6a mem_shutter_led_on_light_dark_led_conf
-0x4f71 mem_shutter_led_off_light_dark_led_conf
-0x4f78 mem_shutter_reconn_blink_on_time_conf
-0x4f7c mem_shutter_discovery_blink_on_time_conf
-0x4f80 mem_shutter_efuse_start_offset
-0x4f82 mem_shutter_efuse_end_offset
-0x4f84 mem_initial_move_conf
-0x4f84 mem_android_initial_move_x
-0x4f86 mem_android_initial_move_y
-0x4f88 mem_iphone_initial_move_x
-0x4f8a mem_iphone_initial_move_y
-0x4f8c mem_otp_move_config
-0x4f8c mem_otp_shutter_move_data_x
-0x4f8e mem_otp_shutter_move_data_y
-0x4f90 mem_otp_last_shutter_le_iphone_flag
-0x4f91 mem_otp_move_config_end
-0x4f91 mem_otp_write_offset_addr
-0x4f93 mem_otp_read_offset_addr
-0x4f95 mem_otp_read_ios_android_addr
-0x4f97 mem_shutter_le_pairing_handle
-0x4f99 mem_shutter_temp_count
-0x4f9b mem_shutter_first_read_flag
-0x4f9c mem_shutter_valid_data_flag
-0x4f9d mem_shutter_volume_timer
-0x4f9e mem_shutter_link_timer
-0x4f9f mem_shutter_link_data
-0x4fa7 mem_shutter_link_data_i
-0x4faf mem_shutter_link_loop_flag
-0x4fb0 mem_shutter_end
+0x48ae mem_le_anchor_ptr
+0x48b0 mem_le_clke_ptr
+0x48b2 mem_le_clke_offset_ptr
+0x48b4 mem_le_clkn_ptr
+0x48b6 mem_le_clke_offset_buffer
+0x48d6 mem_le_anchor_buffer
+0x48f6 mem_le_clke_buffer
+0x4916 mem_le_clkn_buffer
+0x4936 mem_shutter_1s_timer
+0x4937 mem_shutter_timer_625us
+0x4939 mem_rf_init_data_new
+0x4944 mem_key_value_xmem
+0x4946 mem_shutter_le_hid_map
+0x4a68 mem_shutter_le_map_len_android
+0x4a6a mem_shutter_le_map_len_ios
+0x4a6c mem_dy_le_search_service_uuid
+0x4a7c mem_iphone_flag
+0x4a7d mem_send_data_delay
+0x4a7e mem_key_send_clk
+0x4a82 mem_shutter_key_state0
+0x4a8c mem_shutter_key_state1
+0x4a96 mem_shutter_key_state2
+0x4aa0 mem_shutter_key_state3
+0x4aaa mem_shutter_key_state4
+0x4ab4 mem_shutter_key_state5
+0x4abe mem_shutter_key_state6
+0x4ac8 mem_key0_release_new
+0x4ad7 mem_key1_release_new
+0x4ae6 mem_key2_release_new
+0x4af5 mem_key3_release_new
+0x4b04 mem_key4_release_new
+0x4b13 mem_key5_release_new
+0x4b22 mem_key6_release_new
+0x4b31 mem_key0_long_press
+0x4b34 mem_key1_long_press
+0x4b37 mem_key2_long_press
+0x4b3a mem_key3_long_press
+0x4b3d mem_key4_long_press
+0x4b40 mem_key5_long_press
+0x4b43 mem_key6_long_press
+0x4b46 mem_key0_long_release
+0x4b49 mem_key1_long_release
+0x4b4c mem_key2_long_release
+0x4b4f mem_key3_long_release
+0x4b52 mem_key4_long_release
+0x4b55 mem_key5_long_release
+0x4b58 mem_key6_long_release
+0x4b5b mem_combine_key0
+0x4b5d mem_combine_key1
+0x4b5f mem_combine_key2
+0x4b61 mem_combine_key3
+0x4b63 mem_combine_key4
+0x4b65 mem_combine_key5
+0x4b67 mem_combine_key_state0
+0x4b69 mem_combine_key0_press
+0x4b73 mem_combine_key1_press
+0x4b7d mem_combine_key2_press
+0x4b87 mem_combine_key3_press
+0x4b91 mem_combine_key4_press
+0x4b9b mem_combine_key5_press
+0x4ba5 mem_combine_key_release
+0x4baf mem_shutter_move_data
+0x4bb3 mem_key0_press_i
+0x4bbd mem_key1_press_i
+0x4bc7 mem_key2_press_i
+0x4bd1 mem_key3_press_i
+0x4bdb mem_key4_press_i
+0x4be5 mem_key5_press_i
+0x4bef mem_key0_release_new_i
+0x4bfe mem_key1_release_new_i
+0x4c0d mem_key2_release_new_i
+0x4c1c mem_key3_release_new_i
+0x4c2b mem_key4_release_new_i
+0x4c3a mem_key5_release_new_i
+0x4c49 mem_key6_release_new_i
+0x4c58 mem_key0_long_press_i
+0x4c5b mem_key1_long_press_i
+0x4c5e mem_key2_long_press_i
+0x4c61 mem_key3_long_press_i
+0x4c64 mem_key4_long_press_i
+0x4c67 mem_key5_long_press_i
+0x4c6a mem_key6_long_press_i
+0x4c6d mem_key0_long_release_i
+0x4c70 mem_key1_long_release_i
+0x4c73 mem_key2_long_release_i
+0x4c76 mem_key3_long_release_i
+0x4c79 mem_key4_long_release_i
+0x4c7c mem_key5_long_release_i
+0x4c7f mem_key6_long_release_i
+0x4c82 mem_key3_release_new_t
+0x4c8c mem_key3_release_new_i_t
+0x4c96 mem_key3_press_count
+0x4c97 mem_shutter_like_timeout
+0x4c98 mem_shutter_key_pressed
+0x4c99 mem_shutter_combine_key_release
+0x4c9a mem_shutter_mousekey_value_list
+0x4f42 mem_shutter_back_count
+0x4f43 mem_shutter_le_conned
+0x4f44 mem_move_config
+0x4f44 mem_shutter_iphone_beyond_x_count
+0x4f45 mem_shutter_iphone_beyond_y_count
+0x4f46 mem_shutter_move_data_x
+0x4f48 mem_shutter_move_data_y
+0x4f4a mem_last_shutter_le_iphone_flag
+0x4f4b mem_move_config_end
+0x4f4b mem_shutter_back_count_cache
+0x4f4c mem_shutter_iphone_beyond_x_cache
+0x4f4d mem_shutter_iphone_beyond_y_cache
+0x4f4e mem_shutter_iphone_move_mid
+0x4f58 mem_shutter_long_key_released_flag
+0x4f59 mem_shutter_move_mid_timer
+0x4f5a mem_shutter_pairing_success
+0x4f5b mem_combine_key_release_value
+0x4f5d mem_last_press_key_value
+0x4f5e mem_shutter_first_move
+0x4f5f mem_move_mode_set
+0x4f60 mem_move_mode_key_index
+0x4f61 mem_move_mode_trigger_enable
+0x4f62 mem_shutter_android_move_mid
+0x4f67 mem_shutter_iphone_up_mid
+0x4f71 mem_shutter_iphone_like_mid
+0x4f7b mem_shutter_key_num_conf
+0x4f7c mem_shutter_dy_key_conf
+0x4f83 mem_le_dy_adv_data
+0x4f8e mem_le_dy_scan_data
+0x4f9a mem_ble_shutter_dy_interval_min_new
+0x4fa2 mem_shutter_ble_discovery_time_conf
+0x4faa mem_queue_dy_each_size
+0x4fac mem_dy_key0_press
+0x4fb6 mem_dy_key1_press
+0x4fc0 mem_dy_key2_press
+0x4fca mem_dy_key3_press
+0x4fd4 mem_dy_key4_press
+0x4fde mem_dy_key5_press
+0x4fe8 mem_dy_key6_press
+0x4ff2 mem_shutter_led_on_light_dark_led_conf
+0x4ff9 mem_shutter_led_off_light_dark_led_conf
+0x5000 mem_shutter_reconn_blink_on_time_conf
+0x5004 mem_shutter_discovery_blink_on_time_conf
+0x5008 mem_shutter_efuse_start_offset
+0x500a mem_shutter_efuse_end_offset
+0x500c mem_initial_move_conf
+0x500c mem_android_initial_move_x
+0x500e mem_android_initial_move_y
+0x5010 mem_iphone_initial_move_x
+0x5012 mem_iphone_initial_move_y
+0x5014 mem_otp_move_config
+0x5014 mem_otp_shutter_move_data_x
+0x5016 mem_otp_shutter_move_data_y
+0x5018 mem_otp_last_shutter_le_iphone_flag
+0x5019 mem_otp_move_config_end
+0x5019 mem_otp_write_offset_addr
+0x501b mem_otp_read_offset_addr
+0x501d mem_otp_read_ios_android_addr
+0x501f mem_shutter_le_pairing_handle
+0x5021 mem_shutter_temp_count
+0x5023 mem_shutter_first_read_flag
+0x5024 mem_shutter_valid_data_flag
+0x5025 mem_shutter_volume_timer
+0x5026 mem_shutter_link_timer
+0x5027 mem_shutter_link_data
+0x502f mem_shutter_link_data_i
+0x5037 mem_shutter_link_loop_flag
+0x5038 mem_shutter_end
 
 0x45ed mem_mesh_vendor_timer_timing_index_cyclic
 0x45ee mem_mesh_vendor_timer_timing_time_cyclic
Index: shutter/shutter_public/output/otp.dat
===================================================================
--- /1121s/branch/shutter/shutter_public/output/otp.dat	(revision 276)
+++ /1121s/branch/shutter/shutter_public/output/otp.dat	(working copy)
@@ -11,84 +11,92 @@
 00
 aa
 55
-96
-04
+66
+05
 c2
 84
 00
-11
+12
+c0
+00
+00
+17
 c0
 01
 00
-15
+42
 c0
 07
 80
-88
+bc
 c0
 08
 80
-1e
+52
 c0
 0a
-00
-e5
+01
+19
 c0
 0a
 80
-64
+98
 c0
 0c
 00
-72
+a6
 c0
 0c
 80
-31
+65
 c0
 0d
 00
-2c
+60
 c0
 0d
 80
-b3
+e7
 c0
 0e
 80
-b5
+e9
 c0
 12
 81
-07
+3b
 c0
 58
 80
-7c
+b0
 c0
 62
 80
-79
+ad
 c0
 6d
 00
-b6
+ea
 c0
 6e
 00
-c6
+fa
 20
 20
 23
 5a
 c0
+11
+80
+4b
+c0
 1c
 81
-01
+35
 c0
 26
 81
-05
+39
 c1
 7f
 80
@@ -98,6 +106,178 @@
 23
 5a
 20
+80
+00
+00
+20
+40
+42
+a3
+20
+40
+22
+3d
+20
+40
+00
+1c
+20
+20
+20
+05
+20
+75
+80
+00
+20
+40
+00
+1f
+20
+20
+00
+2a
+df
+20
+00
+64
+da
+20
+02
+91
+70
+80
+cb
+08
+70
+80
+06
+80
+6f
+f0
+81
+29
+c3
+00
+80
+23
+6f
+f1
+81
+5b
+e7
+e1
+80
+11
+1a
+20
+a2
+03
+c2
+00
+00
+22
+20
+60
+00
+00
+20
+40
+00
+2d
+20
+40
+7d
+7c
+20
+20
+00
+37
+6f
+e1
+82
+91
+d8
+c0
+02
+94
+df
+20
+00
+64
+e8
+41
+80
+06
+98
+40
+fe
+00
+c2
+00
+00
+30
+1f
+e6
+fc
+64
+20
+40
+7d
+5f
+67
+e1
+86
+70
+20
+60
+00
+00
+df
+20
+00
+64
+da
+20
+02
+94
+da
+60
+00
+00
+6f
+e1
+86
+70
+e8
+41
+80
+11
+98
+46
+30
+00
+9a
+60
+a6
+00
+1a
+20
+a2
+03
+c2
+00
+00
+3a
+20
+40
+7d
+7c
+20
+60
+00
+00
+20
 40
 75
 52
@@ -132,7 +312,35 @@
 20
 20
 00
-15
+42
+20
+40
+26
+be
+78
+28
+7c
+00
+6f
+e1
+01
+76
+68
+4a
+43
+1d
+98
+40
+96
+00
+20
+40
+25
+cc
+20
+20
+26
+59
 70
 8a
 0f
@@ -204,7 +412,7 @@
 20
 40
 00
-39
+6d
 20
 20
 22
@@ -216,7 +424,7 @@
 c0
 05
 00
-34
+68
 20
 20
 22
@@ -244,7 +452,7 @@
 20
 35
 80
-60
+94
 6f
 e2
 02
@@ -412,7 +620,7 @@
 20
 20
 00
-4a
+7e
 20
 40
 68
@@ -608,7 +816,7 @@
 20
 40
 00
-a5
+d9
 2a
 2f
 fe
@@ -640,7 +848,7 @@
 20
 40
 00
-a5
+d9
 d8
 a0
 8a
@@ -668,7 +876,7 @@
 20
 21
 00
-9a
+ce
 20
 20
 21
@@ -771,8 +979,8 @@
 b8
 20
 40
-00
-de
+01
+12
 70
 8a
 08
@@ -807,8 +1015,8 @@
 00
 20
 40
-00
-d4
+01
+08
 6f
 f0
 8a
@@ -851,8 +1059,8 @@
 b8
 20
 40
-00
-de
+01
+12
 70
 80
 cd
@@ -911,8 +1119,8 @@
 29
 c3
 02
-80
-df
+81
+13
 68
 59
 01
@@ -947,8 +1155,8 @@
 99
 c0
 08
-00
-fe
+01
+32
 58
 00
 57
@@ -991,8 +1199,8 @@
 99
 c0
 08
-00
-fb
+01
+2f
 58
 00
 2b
@@ -1027,8 +1235,8 @@
 07
 20
 20
-00
-f7
+01
+2b
 58
 00
 83
@@ -1039,8 +1247,8 @@
 07
 20
 20
-00
-ec
+01
+20
 6f
 e0
 c3
@@ -1088,7 +1296,7 @@
 20
 40
 01
-0e
+42
 20
 20
 24
@@ -1156,7 +1364,7 @@
 20
 22
 81
-20
+54
 e7
 e0
 80
@@ -1176,7 +1384,7 @@
 c2
 00
 01
-1a
+4e
 1a
 42
 04
@@ -1185,15 +1393,15 @@
 60
 00
 00
-de
-bd
+b4
+04
 aa
 55
 40
 00
 00
 40
-04
+05
 80
 32
 2f
@@ -1229,7 +1437,7 @@
 00
 00
 00
-00
+08
 00
 00
 02
@@ -1307,7 +1515,7 @@
 74
 65
 72
-33
+34
 aa
 55
 06
@@ -1326,7 +1534,7 @@
 00
 41
 41
-05
+06
 aa
 55
 01
@@ -1358,6 +1566,14 @@
 03
 aa
 55
+02
+00
+3f
+44
+87
+88
+aa
+55
 01
 00
 48
@@ -1404,7 +1620,7 @@
 00
 1c
 41
-7f
+6e
 aa
 55
 0c
@@ -1448,7 +1664,7 @@
 9a
 40
 00
-0c
+0e
 aa
 55
 05
@@ -1548,7 +1764,7 @@
 aa
 aa
 55
-07
-4d
-38
-15
+96
+4f
+b5
+61
Index: shutter/shutter_public/output/program.lis
===================================================================
--- /1121s/branch/shutter/shutter_public/output/program.lis	(revision 276)
+++ /1121s/branch/shutter/shutter_public/output/program.lis	(working copy)
@@ -1,370 +1,444 @@
               include "bt_format "
               org 0x0000
-0000 c2840011 bbit1 8 ,pf_patch_ext 
-0001 c0010015 beq patch00_2 ,p_main_loop 
-0002 c0078088 beq patch01_7 ,p_rx_dcoc 
-0003 c008801e beq patch02_1 ,p_set_sync_on 
-0004 c00a00e5 beq patch02_4 ,p_set_lemode 
-0005 c00a8064 beq patch02_5 ,p_rf_rx_enable 
-0006 c00c0072 beq patch03_0 ,p_txon 
-0007 c00c8031 beq patch03_1 ,p_set_tx_power 
-0008 c00d002c beq patch03_2 ,p_initialize_radio_cont 
-0009 c00d80b3 beq patch03_3 ,p_rfpll_aac_ghpc 
-000a c00e80b5 beq patch03_5 ,p_dpll_ring_ibias_calc 
-000b c0128107 beq patch04_5 ,p_lpm_sleep 
-000c c058807c beq patch16_1 ,p_shutter_init 
-000d c0628079 beq patch18_5 ,p_otp_read_data 
-000e c06d00b6 beq patch1b_2 ,p_sadc_calibration 
-000f c06e00c6 beq patch1b_4 ,p_enable_adc 
-0010 2020235a branch assert 
+0000 c2840012 bbit1 8 ,pf_patch_ext 
+0001 c0000017 beq patch00_0 ,p_soft_reset 
+0002 c0010042 beq patch00_2 ,p_main_loop 
+0003 c00780bc beq patch01_7 ,p_rx_dcoc 
+0004 c0088052 beq patch02_1 ,p_set_sync_on 
+0005 c00a0119 beq patch02_4 ,p_set_lemode 
+0006 c00a8098 beq patch02_5 ,p_rf_rx_enable 
+0007 c00c00a6 beq patch03_0 ,p_txon 
+0008 c00c8065 beq patch03_1 ,p_set_tx_power 
+0009 c00d0060 beq patch03_2 ,p_initialize_radio_cont 
+000a c00d80e7 beq patch03_3 ,p_rfpll_aac_ghpc 
+000b c00e80e9 beq patch03_5 ,p_dpll_ring_ibias_calc 
+000c c012813b beq patch04_5 ,p_lpm_sleep 
+000d c05880b0 beq patch16_1 ,p_shutter_init 
+000e c06280ad beq patch18_5 ,p_otp_read_data 
+000f c06d00ea beq patch1b_2 ,p_sadc_calibration 
+0010 c06e00fa beq patch1b_4 ,p_enable_adc 
+0011 2020235a branch assert 
 
 pf_patch_ext:
-0011 c01c8101 beq patch27_1 ,p_le_parse 
-0012 c0268105 beq patch29_5 ,p_le_init_adv 
-0013 c17f8000 rtneq patch3f_7 
-0014 2020235a branch assert 
+0012 c011804b beq patch24_3 ,p_le_receive_slave 
+0013 c01c8135 beq patch27_1 ,p_le_parse 
+0014 c0268139 beq patch29_5 ,p_le_init_adv 
+0015 c17f8000 rtneq patch3f_7 
+0016 2020235a branch assert 
+
+p_soft_reset:
+0017 20800000 clear_stack 
+0018 204042a3 call app_param_init 
+0019 2040223d call initialize_radio 
+001a 2040001c call p_lpo_calibration_jitter 
+001b 20202005 branch soft_reset + 4 
+
+p_lpo_calibration_jitter:
+001c 20758000 rtn wake 
+001d 2040001f call p_lpo_calibration 
+001e 2020002a branch p_lpo_jitter_calibration 
+
+p_lpo_calibration:
+001f df200064 arg 100 ,loopcnt 
+0020 da200291 arg mem_ax_256 ,rega 
+0021 7080cb08 jam 0x8 ,core_ccnt_bit 
+
+p_lpo_calibration_loop:
+0022 70800680 jam ccnt_start ,core_misc_ctrl 
+
+p_lpo_calibration_wait_done:
+0023 6ff08129 fetch 1 ,core_perf_status 
+0024 c3008023 bbit0 1 ,p_lpo_calibration_wait_done 
+0025 6ff1815b fetch 3 ,core_clk_counter 
+0026 e7e18011 istore 3 ,rega 
+0027 1a20a203 increase 3 ,rega 
+0028 c2000022 loop p_lpo_calibration_loop 
+0029 20600000 rtn 
+
+p_lpo_jitter_calibration:
+002a 2040002d call p_lpo_aver_cal 
+002b 20407d7c call ice_break 
+002c 20200037 branch p_lpo_var_cal 
+
+p_lpo_aver_cal:
+002d 6fe18291 fetch 3 ,mem_ax_256 
+002e d8c00294 arg mem_ax_256 + 3 ,contr 
+002f df200064 arg 100 ,loopcnt 
+
+p_lpo_aver_cal_loop:
+0030 e8418006 ifetcht 3 ,contr 
+0031 9840fe00 iadd temp ,pdata 
+0032 c2000030 loop p_lpo_aver_cal_loop 
+0033 1fe6fc64 div pdata ,100 
+0034 20407d5f call get_div_result 
+0035 67e18670 store 3 ,mem_pdatatemp 
+0036 20600000 rtn 
+
+p_lpo_var_cal:
+0037 df200064 arg 100 ,loopcnt 
+0038 da200294 arg mem_ax_256 + 3 ,rega 
+0039 da600000 arg 0 ,regc 
+
+p_lpo_var_cal_loop:
+003a 6fe18670 fetch 3 ,mem_pdatatemp 
+003b e8418011 ifetcht 3 ,rega 
+003c 98463000 isub temp ,regd 
+003d 9a60a600 iadd regc ,regc 
+003e 1a20a203 increase 3 ,rega 
+003f c200003a loop p_lpo_var_cal_loop 
+0040 20407d7c call ice_break 
+0041 20600000 rtn 
 
 p_main_loop:
-0015 20407552 call sp_calc_sequence_256 
-0016 20407448 call sp_calc_sequence_256_check 
-0017 20402a45 call le_advertising_dispatch 
-0018 2040202a call idle_dispatch 
-0019 204042ad call app_process_idle 
-001a 20402018 call connection_dispatch 
-001b 2040310f call g24_dispatch 
-001c 2040248c call lpm_dispatch 
-001d 20200015 branch p_main_loop 
+0042 20407552 call sp_calc_sequence_256 
+0043 20407448 call sp_calc_sequence_256_check 
+0044 20402a45 call le_advertising_dispatch 
+0045 2040202a call idle_dispatch 
+0046 204042ad call app_process_idle 
+0047 20402018 call connection_dispatch 
+0048 2040310f call g24_dispatch 
+0049 2040248c call lpm_dispatch 
+004a 20200042 branch p_main_loop 
+
+p_le_receive_slave:
+004b 204026be call le_dec_init 
+004c 78287c00 enable swfine 
+004d 6fe10176 fetch 2 ,mem_le_receive_window 
+004e 684a431d fetcht 4 ,mem_le_transmit_window 
+004f 98409600 iadd temp ,timeup 
+0050 204025cc call le_rx_setfreq 
+0051 20202659 branch le_receive_rxon 
 
 p_set_sync_on:
-001e 708a0f60 jam 0x60 ,0x8a0f 
-001f 708a10aa jam 0xaa ,0x8a10 
-0020 708a127a jam 0x7a ,0x8a12 
-0021 708a2500 jam 0x00 ,0x8a25 
-0022 708a2600 jam 0x00 ,0x8a26 
-0023 2000003c nop 60 
-0024 708a2020 jam 0x20 ,0x8a20 
-0025 708a23f5 jam 0xf5 ,0x8a23 
-0026 708a2412 jam 0x12 ,0x8a24 
-0027 708a2410 jam 0x10 ,0x8a24 
-0028 2000003c nop 60 
-0029 708a1260 jam 0x60 ,0x8a12 
-002a 708a23dd jam 0xdd ,0x8a23 
-002b 20600000 rtn 
+0052 708a0f60 jam 0x60 ,0x8a0f 
+0053 708a10aa jam 0xaa ,0x8a10 
+0054 708a127a jam 0x7a ,0x8a12 
+0055 708a2500 jam 0x00 ,0x8a25 
+0056 708a2600 jam 0x00 ,0x8a26 
+0057 2000003c nop 60 
+0058 708a2020 jam 0x20 ,0x8a20 
+0059 708a23f5 jam 0xf5 ,0x8a23 
+005a 708a2412 jam 0x12 ,0x8a24 
+005b 708a2410 jam 0x10 ,0x8a24 
+005c 2000003c nop 60 
+005d 708a1260 jam 0x60 ,0x8a12 
+005e 708a23dd jam 0xdd ,0x8a23 
+005f 20600000 rtn 
 
 p_initialize_radio_cont:
-002c 7089460d jam 0x0d ,0x8946 
-002d 70896f10 jam 0x10 ,0x896f 
-002e 708a8541 jam 0x41 ,0x8a85 
-002f 20400039 call p_set_otp_config 
-0030 20202249 branch initialize_radio_cont + 1 
+0060 7089460d jam 0x0d ,0x8946 
+0061 70896f10 jam 0x10 ,0x896f 
+0062 708a8541 jam 0x41 ,0x8a85 
+0063 2040006d call p_set_otp_config 
+0064 20202249 branch initialize_radio_cont + 1 
 
 p_set_tx_power:
-0031 6fe0c141 fetch 1 ,mem_tx_power 
-0032 c0050034 beq tx_power_10db ,p_set_tx_power_10db 
-0033 2020220e branch set_tx_power + 2 
+0065 6fe0c141 fetch 1 ,mem_tx_power 
+0066 c0050068 beq tx_power_10db ,p_set_tx_power_10db 
+0067 2020220e branch set_tx_power + 2 
 
 p_set_tx_power_10db:
-0034 708a1425 jam 0x25 ,0x8a14 
-0035 58a93f3f setarg 0xa93f3f 
-0036 67f18a60 store 3 ,0x8a60 
-0037 708a631f jam 0x1f ,0x8a63 
-0038 20600000 rtn 
+0068 708a1425 jam 0x25 ,0x8a14 
+0069 58a93f3f setarg 0xa93f3f 
+006a 67f18a60 store 3 ,0x8a60 
+006b 708a631f jam 0x1f ,0x8a63 
+006c 20600000 rtn 
 
 p_set_otp_config:
-0039 20358060 branch p_set_otp_config_wake ,wake 
-003a 6fe2020d fetch 4 ,mem_otp_core_ldo 
-003b 207a0000 rtn blank 
-003c 37d98200 until null ,lpo_edge 
-003d 6ff08136 fetch 1 ,0x8136 
-003e 1fe17ef0 and pdata ,0xf0 ,pdata 
-003f 6848820d fetcht 1 ,mem_otp_core_ldo 
-0040 9841fe00 ior temp ,pdata 
-0041 67f08136 store 1 ,0x8136 
-0042 37d98200 until null ,lpo_edge 
-0043 6ff08138 fetch 1 ,0x8138 
-0044 1fe17e07 and pdata ,0x7 ,pdata 
-0045 6848820e fetcht 1 ,mem_otp_verf_bg 
-0046 18498400 lshift3 temp ,temp 
-0047 9841fe00 ior temp ,pdata 
-0048 67f08138 store 1 ,0x8138 
-0049 37d98200 until null ,lpo_edge 
+006d 20358094 branch p_set_otp_config_wake ,wake 
+006e 6fe2020d fetch 4 ,mem_otp_core_ldo 
+006f 207a0000 rtn blank 
+0070 37d98200 until null ,lpo_edge 
+0071 6ff08136 fetch 1 ,0x8136 
+0072 1fe17ef0 and pdata ,0xf0 ,pdata 
+0073 6848820d fetcht 1 ,mem_otp_core_ldo 
+0074 9841fe00 ior temp ,pdata 
+0075 67f08136 store 1 ,0x8136 
+0076 37d98200 until null ,lpo_edge 
+0077 6ff08138 fetch 1 ,0x8138 
+0078 1fe17e07 and pdata ,0x7 ,pdata 
+0079 6848820e fetcht 1 ,mem_otp_verf_bg 
+007a 18498400 lshift3 temp ,temp 
+007b 9841fe00 ior temp ,pdata 
+007c 67f08138 store 1 ,0x8138 
+007d 37d98200 until null ,lpo_edge 
 
 p_set_otp_config2:
-004a 6ff08acb fetch 1 ,0x8acb 
-004b 1fe17ef0 and pdata ,0xf0 ,pdata 
-004c 6848820f fetcht 1 ,mem_otp_charge_pump 
-004d 6048c15b storet 1 ,mem_otp_charge_pump_x 
-004e 9841fe00 ior temp ,pdata 
-004f 67f08acb store 1 ,0x8acb 
-0050 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
-0051 67e0c15c store 1 ,mem_otp_dpll_ibais_x 
-0052 2feffe03 isolate1 3 ,pdata 
-0053 6ff08a06 fetch 1 ,0x8a06 
-0054 7920fe07 setflag true ,7 ,pdata 
-0055 67f08a06 store 1 ,0x8a06 
-0056 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
-0057 1fe10407 and pdata ,7 ,temp 
-0058 18520400 lshift4 temp ,temp 
-0059 18438400 lshift temp ,temp 
-005a 6048c438 storet 1 ,mem_ring_ibias_trim 
-005b 6ff08a02 fetch 1 ,0x8a02 
-005c 1fe17e1f and pdata ,0x1f ,pdata 
-005d 9841fe00 ior temp ,pdata 
-005e 67f08a02 store 1 ,0x8a02 
-005f 20600000 rtn 
+007e 6ff08acb fetch 1 ,0x8acb 
+007f 1fe17ef0 and pdata ,0xf0 ,pdata 
+0080 6848820f fetcht 1 ,mem_otp_charge_pump 
+0081 6048c15b storet 1 ,mem_otp_charge_pump_x 
+0082 9841fe00 ior temp ,pdata 
+0083 67f08acb store 1 ,0x8acb 
+0084 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
+0085 67e0c15c store 1 ,mem_otp_dpll_ibais_x 
+0086 2feffe03 isolate1 3 ,pdata 
+0087 6ff08a06 fetch 1 ,0x8a06 
+0088 7920fe07 setflag true ,7 ,pdata 
+0089 67f08a06 store 1 ,0x8a06 
+008a 6fe08210 fetch 1 ,mem_otp_dpll_ibais 
+008b 1fe10407 and pdata ,7 ,temp 
+008c 18520400 lshift4 temp ,temp 
+008d 18438400 lshift temp ,temp 
+008e 6048c438 storet 1 ,mem_ring_ibias_trim 
+008f 6ff08a02 fetch 1 ,0x8a02 
+0090 1fe17e1f and pdata ,0x1f ,pdata 
+0091 9841fe00 ior temp ,pdata 
+0092 67f08a02 store 1 ,0x8a02 
+0093 20600000 rtn 
 
 p_set_otp_config_wake:
-0060 6fe1415b fetch 2 ,mem_otp_charge_pump_x 
-0061 207a0000 rtn blank 
-0062 67e1020f store 2 ,mem_otp_charge_pump 
-0063 2020004a branch p_set_otp_config2 
+0094 6fe1415b fetch 2 ,mem_otp_charge_pump_x 
+0095 207a0000 rtn blank 
+0096 67e1020f store 2 ,mem_otp_charge_pump 
+0097 2020007e branch p_set_otp_config2 
 
 p_rf_rx_enable:
-0064 2040686f call rf_debug_rx_gpio_high 
-0065 204021ba call rf_rx_agc_set 
-0066 18002a08 force 8 ,radio_ctrl 
-0067 18002a00 force 0 ,radio_ctrl 
-0068 580aaada setarg 0x0aaada 
-0069 67f18a0f store 3 ,0x8a0f 
-006a 708a2540 jam 0x40 ,0x8a25 
-006b 708a2610 jam 0x10 ,0x8a26 
-006c 2000003c nop 60 
-006d 708a01fb jam 0xfb ,0x8a01 
-006e 708a25ff jam 0xff ,0x8a25 
-006f 708a2630 jam 0x30 ,0x8a26 
-0070 708a169e jam 0x9e ,0x8a16 
-0071 202021b4 branch rf_rx_enable + 14 
+0098 2040686f call rf_debug_rx_gpio_high 
+0099 204021ba call rf_rx_agc_set 
+009a 18002a08 force 8 ,radio_ctrl 
+009b 18002a00 force 0 ,radio_ctrl 
+009c 580aaada setarg 0x0aaada 
+009d 67f18a0f store 3 ,0x8a0f 
+009e 708a2540 jam 0x40 ,0x8a25 
+009f 708a2610 jam 0x10 ,0x8a26 
+00a0 2000003c nop 60 
+00a1 708a01fb jam 0xfb ,0x8a01 
+00a2 708a25ff jam 0xff ,0x8a25 
+00a3 708a2630 jam 0x30 ,0x8a26 
+00a4 708a169e jam 0x9e ,0x8a16 
+00a5 202021b4 branch rf_rx_enable + 14 
 
 p_txon:
-0072 580aaa7e setarg 0x0aaa7e 
-0073 67f18a0f store 3 ,0x8a0f 
-0074 2000003c nop 60 
-0075 708a2500 jam 0x00 ,0x8a25 
-0076 708a260d jam 0x0d ,0x8a26 
-0077 708a1696 jam 0x96 ,0x8a16 
-0078 20202203 branch txon + 7 
+00a6 580aaa7e setarg 0x0aaa7e 
+00a7 67f18a0f store 3 ,0x8a0f 
+00a8 2000003c nop 60 
+00a9 708a2500 jam 0x00 ,0x8a25 
+00aa 708a260d jam 0x0d ,0x8a26 
+00ab 708a1696 jam 0x96 ,0x8a16 
+00ac 20202203 branch txon + 7 
 
 p_otp_read_data:
-0079 20406b3a call enable_otp_read 
-007a 20406b75 call otp_read_data + 1 
-007b 20206b38 branch otp_disable_chgpump 
+00ad 20406b3a call enable_otp_read 
+00ae 20406b75 call otp_read_data + 1 
+00af 20206b38 branch otp_disable_chgpump 
 
 p_shutter_init:
-007c 20407396 call enable_authrom 
-007d 20758000 rtn wake 
-007e 5800000e setarg 0x000e 
-007f 67e144f2 store 2 ,mem_ble_shutter_reconn_adv_interval 
-0080 580000a0 setarg 0x00a0 
-0081 67e144f4 store 2 ,mem_ble_shutter_discovery_adv_interval 
-0082 67e14389 store 2 ,mem_le_adv_interval 
-0083 6fe4489e fetch 8 ,mem_shutter_discovery_time_conf 
-0084 67e44512 store 8 ,mem_ble_shutter_discovery_timeout 
-0085 6fe448a6 fetch 8 ,mem_shutter_reconn_or_discovery_blink_time_conf 
-0086 67e444fa store 8 ,mem_ble_shutter_reconn_blink_on_time 
-0087 202062b0 branch shutter_init + 2 
+00b0 20407396 call enable_authrom 
+00b1 20758000 rtn wake 
+00b2 5800000e setarg 0x000e 
+00b3 67e144f2 store 2 ,mem_ble_shutter_reconn_adv_interval 
+00b4 580000a0 setarg 0x00a0 
+00b5 67e144f4 store 2 ,mem_ble_shutter_discovery_adv_interval 
+00b6 67e14389 store 2 ,mem_le_adv_interval 
+00b7 6fe4489e fetch 8 ,mem_shutter_discovery_time_conf 
+00b8 67e44512 store 8 ,mem_ble_shutter_discovery_timeout 
+00b9 6fe448a6 fetch 8 ,mem_shutter_reconn_or_discovery_blink_time_conf 
+00ba 67e444fa store 8 ,mem_ble_shutter_reconn_blink_on_time 
+00bb 202062b0 branch shutter_init + 2 
 
 p_rx_dcoc:
-0088 20758000 rtn wake 
-0089 20402160 call set_sync_on 
-008a d8400027 arg 39 ,temp 
-008b 2040216f call set_freq_rx 
-008c 204021a6 call rf_rx_enable 
-008d 708a257f jam 0x7f ,0x8a25 
-008e 708a301a jam 0x1a ,0x8a30 
-008f 708a3178 jam 0x78 ,0x8a31 
-0090 708a8fb2 jam 0xb2 ,0x8a8f 
-0091 708ac200 jam 0 ,0x8ac2 
-0092 708ac300 jam 0 ,0x8ac3 
-0093 d8e00006 arg 6 ,queue 
-0094 204000a5 call p_rx_dcoc_avg 
-0095 2a2ffe0d isolate1 13 ,rega 
-0096 2040211d call qset_start 
-0097 2a4ffe0d isolate1 13 ,regb 
-0098 2040211e call qset_p 
-0099 d8e00005 arg 5 ,queue 
+00bc 20758000 rtn wake 
+00bd 20402160 call set_sync_on 
+00be d8400027 arg 39 ,temp 
+00bf 2040216f call set_freq_rx 
+00c0 204021a6 call rf_rx_enable 
+00c1 708a257f jam 0x7f ,0x8a25 
+00c2 708a301a jam 0x1a ,0x8a30 
+00c3 708a3178 jam 0x78 ,0x8a31 
+00c4 708a8fb2 jam 0xb2 ,0x8a8f 
+00c5 708ac200 jam 0 ,0x8ac2 
+00c6 708ac300 jam 0 ,0x8ac3 
+00c7 d8e00006 arg 6 ,queue 
+00c8 204000d9 call p_rx_dcoc_avg 
+00c9 2a2ffe0d isolate1 13 ,rega 
+00ca 2040211d call qset_start 
+00cb 2a4ffe0d isolate1 13 ,regb 
+00cc 2040211e call qset_p 
+00cd d8e00005 arg 5 ,queue 
 
 p_rx_dcoc_loop2:
-009a 2040211c call qset1_p 
-009b 2040211e call qset_p 
-009c 204000a5 call p_rx_dcoc_avg 
-009d d8a08ac2 arg 0x8ac2 ,contw 
-009e 1a31fe00 rshift4 rega ,pdata 
-009f 20402117 call qsetxor 
-00a0 1a51fe00 rshift4 regb ,pdata 
-00a1 20402117 call qsetxor 
-00a2 18e08fff increase -1 ,queue 
-00a3 2021009a branch p_rx_dcoc_loop2 ,positive 
-00a4 2020214f branch rx_dcoc_loop2 + 10 
+00ce 2040211c call qset1_p 
+00cf 2040211e call qset_p 
+00d0 204000d9 call p_rx_dcoc_avg 
+00d1 d8a08ac2 arg 0x8ac2 ,contw 
+00d2 1a31fe00 rshift4 rega ,pdata 
+00d3 20402117 call qsetxor 
+00d4 1a51fe00 rshift4 regb ,pdata 
+00d5 20402117 call qsetxor 
+00d6 18e08fff increase -1 ,queue 
+00d7 202100ce branch p_rx_dcoc_loop2 ,positive 
+00d8 2020214f branch rx_dcoc_loop2 + 10 
 
 p_rx_dcoc_avg:
-00a5 2000003c nop 60 
-00a6 58000f00 setarg mem_dcoc_buf 
-00a7 67f10982 store 2 ,0x8982 
-00a8 58000ff0 setarg mem_dcoc_buf_end 
-00a9 67f10984 store 2 ,0x8984 
-00aa 70898109 jam 0x9 ,0x8981 
-00ab 70898103 jam 0x3 ,0x8981 
-00ac 70898006 jam 0x6 ,0x8980 
-00ad 2000003c nop 60 
-00ae da200000 arg 0 ,rega 
-00af da400000 arg 0 ,regb 
-00b0 df200010 arg 16 ,loopcnt 
-00b1 d8c00f00 arg mem_dcoc_buf ,contr 
-00b2 2020212d branch rx_dcoc_loop 
+00d9 2000003c nop 60 
+00da 58000f00 setarg mem_dcoc_buf 
+00db 67f10982 store 2 ,0x8982 
+00dc 58000ff0 setarg mem_dcoc_buf_end 
+00dd 67f10984 store 2 ,0x8984 
+00de 70898109 jam 0x9 ,0x8981 
+00df 70898103 jam 0x3 ,0x8981 
+00e0 70898006 jam 0x6 ,0x8980 
+00e1 2000003c nop 60 
+00e2 da200000 arg 0 ,rega 
+00e3 da400000 arg 0 ,regb 
+00e4 df200010 arg 16 ,loopcnt 
+00e5 d8c00f00 arg mem_dcoc_buf ,contr 
+00e6 2020212d branch rx_dcoc_loop 
 
 p_rfpll_aac_ghpc:
-00b3 20758000 rtn wake 
-00b4 20202272 branch rfpll_aac_ghpc + 1 
+00e7 20758000 rtn wake 
+00e8 20202272 branch rfpll_aac_ghpc + 1 
 
 p_dpll_ring_ibias_calc:
-00b5 20600000 rtn 
+00e9 20600000 rtn 
 
 p_sadc_calibration:
-00b6 20758000 rtn wake 
-00b7 708a0777 jam 0x77 ,core_gpadc_ctrl 
-00b8 708a08c9 jam 0xc9 ,core_gpadc_cfg0 
-00b9 708a0b01 jam 0x01 ,core_gpadc_cfg3 
-00ba 6fe0c409 fetch 1 ,mem_adc_clkdiv 
-00bb 67f080cd store 1 ,core_sadc_clkdiv 
-00bc 20000bb8 nop 3000 
-00bd 204000de call p_sadc_read 
-00be 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
-00bf 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
-00c0 df200008 arg 8 ,loopcnt 
-00c1 20406f58 call sadc_cal_read + 1 
-00c2 6fe0c419 fetch 1 ,mem_spi_write_addr 
-00c3 67e0c433 store 1 ,mem_adc_cal_c7 
-00c4 6240c419 storer regb ,1 ,mem_spi_write_addr 
-00c5 20600000 rtn 
+00ea 20758000 rtn wake 
+00eb 708a0777 jam 0x77 ,core_gpadc_ctrl 
+00ec 708a08c9 jam 0xc9 ,core_gpadc_cfg0 
+00ed 708a0b01 jam 0x01 ,core_gpadc_cfg3 
+00ee 6fe0c409 fetch 1 ,mem_adc_clkdiv 
+00ef 67f080cd store 1 ,core_sadc_clkdiv 
+00f0 20000bb8 nop 3000 
+00f1 20400112 call p_sadc_read 
+00f2 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
+00f3 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
+00f4 df200008 arg 8 ,loopcnt 
+00f5 20406f58 call sadc_cal_read + 1 
+00f6 6fe0c419 fetch 1 ,mem_spi_write_addr 
+00f7 67e0c433 store 1 ,mem_adc_cal_c7 
+00f8 6240c419 storer regb ,1 ,mem_spi_write_addr 
+00f9 20600000 rtn 
 
 p_enable_adc:
-00c6 204000d4 call p_sadc_cal_write 
-00c7 6ff08a09 fetch 1 ,core_gpadc_cfg1 
-00c8 793ffe07 set0 7 ,pdata 
-00c9 67f08a09 store 1 ,core_gpadc_cfg1 
-00ca 708a0777 jam 0x77 ,core_gpadc_ctrl 
-00cb 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
-00cc 708a0b01 jam 0x01 ,core_gpadc_cfg3 
-00cd 20406f90 call sadc_channel 
-00ce 6fe0c409 fetch 1 ,mem_adc_clkdiv 
-00cf 67f080cd store 1 ,core_sadc_clkdiv 
-00d0 20000bb8 nop 3000 
-00d1 204000de call p_sadc_read 
-00d2 7080cd00 jam 0 ,core_sadc_clkdiv 
-00d3 20206fa1 branch sadc_dma 
+00fa 20400108 call p_sadc_cal_write 
+00fb 6ff08a09 fetch 1 ,core_gpadc_cfg1 
+00fc 793ffe07 set0 7 ,pdata 
+00fd 67f08a09 store 1 ,core_gpadc_cfg1 
+00fe 708a0777 jam 0x77 ,core_gpadc_ctrl 
+00ff 708a08c1 jam 0xc1 ,core_gpadc_cfg0 
+0100 708a0b01 jam 0x01 ,core_gpadc_cfg3 
+0101 20406f90 call sadc_channel 
+0102 6fe0c409 fetch 1 ,mem_adc_clkdiv 
+0103 67f080cd store 1 ,core_sadc_clkdiv 
+0104 20000bb8 nop 3000 
+0105 20400112 call p_sadc_read 
+0106 7080cd00 jam 0 ,core_sadc_clkdiv 
+0107 20206fa1 branch sadc_dma 
 
 p_sadc_cal_write:
-00d4 6ff080cc fetch 1 ,core_sadc_ctrl 
-00d5 79207e01 set1 1 ,pdata 
-00d6 67f080cc store 1 ,core_sadc_ctrl 
-00d7 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
-00d8 6fe0c433 fetch 1 ,mem_adc_cal_c7 
-00d9 67e0c419 store 1 ,mem_spi_write_addr 
-00da df200008 arg 8 ,loopcnt 
-00db 20406f67 call sadc_cal_write + 4 
-00dc 6240c419 storer regb ,1 ,mem_spi_write_addr 
-00dd 20600000 rtn 
+0108 6ff080cc fetch 1 ,core_sadc_ctrl 
+0109 79207e01 set1 1 ,pdata 
+010a 67f080cc store 1 ,core_sadc_ctrl 
+010b 6a40c419 fetchr regb ,1 ,mem_spi_write_addr 
+010c 6fe0c433 fetch 1 ,mem_adc_cal_c7 
+010d 67e0c419 store 1 ,mem_spi_write_addr 
+010e df200008 arg 8 ,loopcnt 
+010f 20406f67 call sadc_cal_write + 4 
+0110 6240c419 storer regb ,1 ,mem_spi_write_addr 
+0111 20600000 rtn 
 
 p_sadc_read:
-00de 7080cc03 jam 0x03 ,core_sadc_ctrl 
+0112 7080cc03 jam 0x03 ,core_sadc_ctrl 
 
 p_sadc_read_wait:
-00df 6ff08129 fetch 1 ,core_perf_status 
-00e0 c30280df bbit0 saradc_done ,p_sadc_read_wait 
-00e1 68590164 fetcht 2 ,core_sadc_data 
-00e2 6049440a storet 2 ,mem_adc_current_value 
-00e3 7080cc00 jam 0x00 ,core_sadc_ctrl 
-00e4 20600000 rtn 
+0113 6ff08129 fetch 1 ,core_perf_status 
+0114 c3028113 bbit0 saradc_done ,p_sadc_read_wait 
+0115 68590164 fetcht 2 ,core_sadc_data 
+0116 6049440a storet 2 ,mem_adc_current_value 
+0117 7080cc00 jam 0x00 ,core_sadc_ctrl 
+0118 20600000 rtn 
 
 p_set_lemode:
-00e5 708a8211 jam 0x11 ,0x8a82 
-00e6 708a8d12 jam 0x12 ,0x8a8d 
-00e7 708a8e0a jam 0x0a ,0x8a8e 
-00e8 6fe0c099 fetch 1 ,mem_fcomp_div 
-00e9 c00800fe beq xtal_16m ,p_set_lemode_2m_16m 
-00ea 58005762 setarg 0x5762 
-00eb 67f10907 store 2 ,0x8907 
+0119 708a8211 jam 0x11 ,0x8a82 
+011a 708a8d12 jam 0x12 ,0x8a8d 
+011b 708a8e0a jam 0x0a ,0x8a8e 
+011c 6fe0c099 fetch 1 ,mem_fcomp_div 
+011d c0080132 beq xtal_16m ,p_set_lemode_2m_16m 
+011e 58005762 setarg 0x5762 
+011f 67f10907 store 2 ,0x8907 
 
 p_set_lemode_2m:
-00ec 70890103 jam 3 ,0x8901 
-00ed 70893003 jam 3 ,0x8930 
-00ee c6168000 rtnmark1 mark_ble_2m 
-00ef 70890101 jam 1 ,0x8901 
-00f0 708a8207 jam 0x07 ,0x8a82 
-00f1 708a8d44 jam 0x44 ,0x8a8d 
-00f2 708a8e0a jam 0x0a ,0x8a8e 
-00f3 6fe0c099 fetch 1 ,mem_fcomp_div 
-00f4 c00800fb beq xtal_16m ,p_set_lemode_1m_16m 
-00f5 58002bb1 setarg 0x2bb1 
-00f6 67f10907 store 2 ,0x8907 
+0120 70890103 jam 3 ,0x8901 
+0121 70893003 jam 3 ,0x8930 
+0122 c6168000 rtnmark1 mark_ble_2m 
+0123 70890101 jam 1 ,0x8901 
+0124 708a8207 jam 0x07 ,0x8a82 
+0125 708a8d44 jam 0x44 ,0x8a8d 
+0126 708a8e0a jam 0x0a ,0x8a8e 
+0127 6fe0c099 fetch 1 ,mem_fcomp_div 
+0128 c008012f beq xtal_16m ,p_set_lemode_1m_16m 
+0129 58002bb1 setarg 0x2bb1 
+012a 67f10907 store 2 ,0x8907 
 
 p_set_lemode_1m:
-00f7 c6978000 rtnmark0 mark_ble_lr 
-00f8 70893024 jam 0x24 ,0x8930 
-00f9 70890105 jam 5 ,0x8901 
-00fa 20600000 rtn 
+012b c6978000 rtnmark0 mark_ble_lr 
+012c 70893024 jam 0x24 ,0x8930 
+012d 70890105 jam 5 ,0x8901 
+012e 20600000 rtn 
 
 p_set_lemode_1m_16m:
-00fb 58004189 setarg 0x4189 
-00fc 67f10907 store 2 ,0x8907 
-00fd 202000f7 branch p_set_lemode_1m 
+012f 58004189 setarg 0x4189 
+0130 67f10907 store 2 ,0x8907 
+0131 2020012b branch p_set_lemode_1m 
 
 p_set_lemode_2m_16m:
-00fe 58008312 setarg 0x8312 
-00ff 67f10907 store 2 ,0x8907 
-0100 202000ec branch p_set_lemode_2m 
+0132 58008312 setarg 0x8312 
+0133 67f10907 store 2 ,0x8907 
+0134 20200120 branch p_set_lemode_2m 
 
 p_le_parse:
-0101 6fe0c334 fetch 1 ,mem_le_packet_llid 
-0102 c1000000 rtneq llid_reserved 
-0103 c001b04a beq llid_le_ll ,le_parse_ll 
-0104 202028e1 branch le_parse_l2cap 
+0135 6fe0c334 fetch 1 ,mem_le_packet_llid 
+0136 c1000000 rtneq llid_reserved 
+0137 c001b04a beq llid_le_ll ,le_parse_ll 
+0138 202028e1 branch le_parse_l2cap 
 
 p_le_init_adv:
-0105 793f8030 set0 mark_ble_crc_fail ,mark 
-0106 20202af6 branch le_init_adv + 1 
+0139 793f8030 set0 mark_ble_crc_fail ,mark 
+013a 20202af6 branch le_init_adv + 1 
 
 p_lpm_sleep:
-0107 6fe143e9 fetch 2 ,mem_cb_before_lpm_sleep 
-0108 20407d79 call callback_func 
+013b 6fe143e9 fetch 2 ,mem_cb_before_lpm_sleep 
+013c 20407d79 call callback_func 
 
 p_lpm_sleep_skip_cb_function:
-0109 6fe240ad fetch 4 ,mem_sleep_counter_all 
-010a 9840fe00 iadd temp ,pdata 
-010b 67e240ad store 4 ,mem_sleep_counter_all 
-010c 2040010e call p_lpm_save_context 
-010d 20202425 branch lpm_sleep_skip_cb_function + 4 
+013d 6fe240ad fetch 4 ,mem_sleep_counter_all 
+013e 9840fe00 iadd temp ,pdata 
+013f 67e240ad store 4 ,mem_sleep_counter_all 
+0140 20400142 call p_lpm_save_context 
+0141 20202425 branch lpm_sleep_skip_cb_function + 4 
 
 p_lpm_save_context:
-010e 600440e7 storer mark ,8 ,mem_saved_mark 
-010f d8c08070 arg core_gpio_conf ,contr 
-0110 d8a040cc arg mem_saved_gpio ,contw 
-0111 20407c8f call memcpy16 
-0112 d8c080d4 arg core_gpio_conf_hi ,contr 
-0113 20407c89 call memcpy8 
-0114 6ff08080 fetch 1 ,core_spid_ctrl 
-0115 67e0c0ef store 1 ,mem_saved_spidctrl 
-0116 18422400 copy temp ,regb 
+0142 600440e7 storer mark ,8 ,mem_saved_mark 
+0143 d8c08070 arg core_gpio_conf ,contr 
+0144 d8a040cc arg mem_saved_gpio ,contw 
+0145 20407c8f call memcpy16 
+0146 d8c080d4 arg core_gpio_conf_hi ,contr 
+0147 20407c89 call memcpy8 
+0148 6ff08080 fetch 1 ,core_spid_ctrl 
+0149 67e0c0ef store 1 ,mem_saved_spidctrl 
+014a 18422400 copy temp ,regb 
 
 p_lpm_write_gpio_wakeup:
-0117 df20000c arg 12 ,loopcnt 
-0118 da200016 arg mem_gpio_wakeup_cfg ,rega 
-0119 da60814d arg core_gpio_wakeup_cfg ,regc 
+014b df20000c arg 12 ,loopcnt 
+014c da200016 arg mem_gpio_wakeup_cfg ,rega 
+014d da60814d arg core_gpio_wakeup_cfg ,regc 
 
 p_lpm_write_gpio_loop:
-011a efe08011 ifetch 1 ,rega 
-011b e8408013 ifetcht 1 ,regc 
-011c 98467c00 isub temp ,null 
-011d 20228120 branch p_lpm_write_gpio_loop_next ,zero 
-011e e7e08013 istore 1 ,regc 
-011f 37d98200 until null ,lpo_edge 
+014e efe08011 ifetch 1 ,rega 
+014f e8408013 ifetcht 1 ,regc 
+0150 98467c00 isub temp ,null 
+0151 20228154 branch p_lpm_write_gpio_loop_next ,zero 
+0152 e7e08013 istore 1 ,regc 
+0153 37d98200 until null ,lpo_edge 
 
 p_lpm_write_gpio_loop_next:
-0120 1a20a201 increase 1 ,rega 
-0121 1a60a601 increase 1 ,regc 
-0122 c200011a loop p_lpm_write_gpio_loop 
-0123 1a420400 copy regb ,temp 
-0124 20600000 rtn 
+0154 1a20a201 increase 1 ,rega 
+0155 1a60a601 increase 1 ,regc 
+0156 c200014e loop p_lpm_write_gpio_loop 
+0157 1a420400 copy regb ,temp 
+0158 20600000 rtn 
               org 0x2000
 
 start:
@@ -23804,7 +23878,7 @@
 6441 20600000 rtn 
 
 shutter_dy_6_key_conf:
-6442 6fe34ef4 fetch shutter_six_key ,mem_shutter_dy_key_conf 
+6442 6fe34f7c fetch shutter_six_key ,mem_shutter_dy_key_conf 
 6443 67e34526 store shutter_six_key ,mem_shutter_key_conf0 
 6444 70452306 jam shutter_six_key ,mem_shutter_key_num 
 6445 58004523 setarg mem_shutter_key_num 
@@ -23812,7 +23886,7 @@
 6447 20600000 rtn 
 
 shutter_dy_7_key_conf:
-6448 6fe3cef4 fetch shutter_seven_key ,mem_shutter_dy_key_conf 
+6448 6fe3cf7c fetch shutter_seven_key ,mem_shutter_dy_key_conf 
 6449 67e3c526 store shutter_seven_key ,mem_shutter_key_conf0 
 644a 70452307 jam shutter_seven_key ,mem_shutter_key_num 
 644b 58004523 setarg mem_shutter_key_num 
@@ -23820,7 +23894,7 @@
 644d 20600000 rtn 
 
 shutter_dy_8_key_conf:
-644e 6fe44ef4 fetch shutter_eight_key ,mem_shutter_dy_key_conf 
+644e 6fe44f7c fetch shutter_eight_key ,mem_shutter_dy_key_conf 
 644f 67e44526 store shutter_eight_key ,mem_shutter_key_conf0 
 6450 70452308 jam shutter_eight_key ,mem_shutter_key_num 
 6451 58004523 setarg mem_shutter_key_num 
@@ -23828,7 +23902,7 @@
 6453 20600000 rtn 
 
 shutter_dy_key_conf:
-6454 6fe0cef3 fetch 1 ,mem_shutter_key_num_conf 
+6454 6fe0cf7b fetch 1 ,mem_shutter_key_num_conf 
 6455 c0036442 beq shutter_six_key ,shutter_dy_6_key_conf 
 6456 c003e448 beq shutter_seven_key ,shutter_dy_7_key_conf 
 6457 c004644e beq shutter_eight_key ,shutter_dy_8_key_conf 
@@ -23836,24 +23910,24 @@
 
 shutter_dy_adv_conf:
 6459 44d0c014 bpatch patch14_1 ,mem_patch14 
-645a 6fe44f1a fetch 8 ,mem_shutter_ble_discovery_time_conf 
+645a 6fe44fa2 fetch 8 ,mem_shutter_ble_discovery_time_conf 
 645b 67e44512 store 8 ,mem_ble_shutter_discovery_timeout 
 645c 58000096 setarg 0x0096 
 645d 67e144f6 store 2 ,mem_ble_shutter_reconn_timeout 
-645e 6fe3cf6a fetch 7 ,mem_shutter_led_on_light_dark_led_conf 
+645e 6fe3cff2 fetch 7 ,mem_shutter_led_on_light_dark_led_conf 
 645f 67e3c6a7 store 7 ,mem_shutter_led_struct_app_led 
-6460 6fe3cf71 fetch 7 ,mem_shutter_led_off_light_dark_led_conf 
+6460 6fe3cff9 fetch 7 ,mem_shutter_led_off_light_dark_led_conf 
 6461 67e3c6b2 store 7 ,mem_shutter_power_off_led_style 
-6462 6fe24f78 fetch 4 ,mem_shutter_reconn_blink_on_time_conf 
+6462 6fe25000 fetch 4 ,mem_shutter_reconn_blink_on_time_conf 
 6463 67e244fa store 4 ,mem_ble_shutter_reconn_blink_on_time 
-6464 6fe24f7c fetch 4 ,mem_shutter_discovery_blink_on_time_conf 
+6464 6fe25004 fetch 4 ,mem_shutter_discovery_blink_on_time_conf 
 6465 67e244fe store 4 ,mem_ble_shutter_discovery_blink_on_time 
 6466 5800000e setarg 0x000e 
 6467 67e144f2 store 2 ,mem_ble_shutter_reconn_adv_interval 
 6468 58000140 setarg 0x0140 
 6469 67e144f4 store 2 ,mem_ble_shutter_discovery_adv_interval 
 646a 67e14389 store 2 ,mem_le_adv_interval 
-646b 6fe44f12 fetch 8 ,mem_ble_shutter_dy_interval_min_new 
+646b 6fe44f9a fetch 8 ,mem_ble_shutter_dy_interval_min_new 
 646c 67e4450a store 8 ,mem_ble_shutter_interval_min_new 
 646d 20600000 rtn 
 
@@ -23873,7 +23947,7 @@
 647a 58006505 setarg shutter_dy_key_change 
 647b 67e14524 store 2 ,mem_cb_shutter_keycan 
 647c 204062c2 call shutter_common_init 
-647d 6fe14f97 fetch 2 ,mem_shutter_le_pairing_handle 
+647d 6fe1501f fetch 2 ,mem_shutter_le_pairing_handle 
 647e 67e14332 store 2 ,mem_le_pairing_handle 
 647f 6fe4450a fetch 8 ,mem_ble_shutter_interval_min_new 
 6480 67e44502 store 8 ,mem_ble_shutter_interval_min 
@@ -23896,7 +23970,7 @@
 shutter_dy_iphone_every_move_max_set:
 648e 5800001f setarg 0x1f 
 648f 1feffe0a mul32 pdata ,every_payload_len ,pdata 
-6490 d8404c12 arg mem_shutter_mousekey_value_list ,temp 
+6490 d8404c9a arg mem_shutter_mousekey_value_list ,temp 
 6491 9840a200 iadd temp ,rega 
 6492 1a20a203 increase 3 ,rega 
 6493 d8400062 arg iphone_once_max_move_value ,temp 
@@ -23920,23 +23994,23 @@
 64a1 247a0000 nrtn blank 
 64a2 204078fa call queue_empty 
 64a3 207a0000 rtn blank 
-64a4 684a49f6 fetcht 4 ,mem_key_send_clk 
+64a4 684a4a7e fetcht 4 ,mem_key_send_clk 
 64a5 1c427e00 copy clkn_bt ,pdata 
 64a6 98460400 isub temp ,temp 
 64a7 20628000 rtn zero 
 64a8 242164ac nbranch shutter_dy_pop_queue_to_ble_data2 ,positive 
-64a9 6fe0c9f5 fetch 1 ,mem_send_data_delay 
+64a9 6fe0ca7d fetch 1 ,mem_send_data_delay 
 64aa 98467c00 isub temp ,null 
 64ab 20610000 rtn positive 
 
 shutter_dy_pop_queue_to_ble_data2:
 64ac 1c427e00 copy clkn_bt ,pdata 
-64ad 67e249f6 store 4 ,mem_key_send_clk 
+64ad 67e24a7e store 4 ,mem_key_send_clk 
 64ae 20406385 call queue_pop_one_byte 
 64af 24740000 nrtn user 
 64b0 1fe0ffff pincrease -1 
 64b1 1feffe0a mul32 pdata ,10 ,pdata 
-64b2 d8404c12 arg mem_shutter_mousekey_value_list ,temp 
+64b2 d8404c9a arg mem_shutter_mousekey_value_list ,temp 
 64b3 98408c00 iadd temp ,contr 
 64b4 202063cb branch le_send_notify_from_list 
 
@@ -23950,14 +24024,14 @@
 64bb 202064d9 branch shutter_dy_check_power_off_timer 
 
 shutter_dy_iphone_move_mid_timer:
-64bc da604ed1 arg mem_shutter_move_mid_timer ,regc 
+64bc da604f59 arg mem_shutter_move_mid_timer ,regc 
 64bd da4064bf arg shutter_dy_iphone_move_mid_timeout ,regb 
 64be 202042e0 branch timer_single_step 
 
 shutter_dy_iphone_move_mid_timeout:
 64bf 204078fa call queue_empty 
 64c0 247a0000 nrtn blank 
-64c1 6fe148bc fetch 2 ,mem_key_value_xmem 
+64c1 6fe14944 fetch 2 ,mem_key_value_xmem 
 64c2 247a0000 nrtn blank 
 
 shutter_dy_iphone_move_mid:
@@ -23969,29 +24043,29 @@
 64c8 18e27e00 copy queue ,pdata 
 64c9 2fe00e01 compare 0x01 ,pdata ,0x07 
 64ca 2020e4d1 branch shutter_dy_iphone_like_mid ,true 
-64cb da604ec6 arg mem_shutter_iphone_move_mid ,regc 
+64cb da604f4e arg mem_shutter_iphone_move_mid ,regc 
 64cc 20206371 branch push_buffer_in_queue 
 
 shutter_dy_android_like_loaction_mid:
-64cd da604eda arg mem_shutter_android_move_mid ,regc 
+64cd da604f62 arg mem_shutter_android_move_mid ,regc 
 64ce 20206371 branch push_buffer_in_queue 
 
 shutter_dy_iphone_up_mid:
-64cf da604edf arg mem_shutter_iphone_up_mid ,regc 
+64cf da604f67 arg mem_shutter_iphone_up_mid ,regc 
 64d0 20206371 branch push_buffer_in_queue 
 
 shutter_dy_iphone_like_mid:
-64d1 da604ee9 arg mem_shutter_iphone_like_mid ,regc 
+64d1 da604f71 arg mem_shutter_iphone_like_mid ,regc 
 64d2 20206371 branch push_buffer_in_queue 
 
 shutter_dy_clear_key_state_timer:
-64d3 da604c0f arg mem_shutter_like_timeout ,regc 
+64d3 da604c97 arg mem_shutter_like_timeout ,regc 
 64d4 da4064d6 arg shutter_dy_clear_key_state_timeout ,regb 
 64d5 202042e0 branch timer_single_step 
 
 shutter_dy_clear_key_state_timeout:
 64d6 df20000a arg shutter_key_conf_sate_bytes ,loopcnt 
-64d7 d8a04a04 arg mem_shutter_key_state1 ,contw 
+64d7 d8a04a8c arg mem_shutter_key_state1 ,contw 
 64d8 20207ca1 branch clear_mem 
 
 shutter_dy_check_power_off_timer:
@@ -24014,26 +24088,26 @@
 64e5 202062d9 branch shutter_process_bb_event 
 
 ble_shutter_dy_pairing_success:
-64e6 704ed201 jam 1 ,mem_shutter_pairing_success 
+64e6 704f5a01 jam 1 ,mem_shutter_pairing_success 
 64e7 20406783 call shutter_dy_clear_move_config 
-64e8 6fe14f84 fetch 2 ,mem_android_initial_move_x 
-64e9 67e14ebe store 2 ,mem_shutter_move_data_x 
-64ea 68494f86 fetcht 2 ,mem_android_initial_move_y 
+64e8 6fe1500c fetch 2 ,mem_android_initial_move_x 
+64e9 67e14f46 store 2 ,mem_shutter_move_data_x 
+64ea 6849500e fetcht 2 ,mem_android_initial_move_y 
 64eb 58000fff setarg 0xfff 
 64ec 98467e00 isub temp ,pdata 
-64ed 67e14ec0 store 2 ,mem_shutter_move_data_y 
+64ed 67e14f48 store 2 ,mem_shutter_move_data_y 
 64ee 20600000 rtn 
 
 ble_shutter_dy_process_baseband_disconnect:
-64ef 704ebb00 jam 0 ,mem_shutter_le_conned 
-64f0 704ed200 jam 0 ,mem_shutter_pairing_success 
+64ef 704f4300 jam 0 ,mem_shutter_le_conned 
+64f0 704f5a00 jam 0 ,mem_shutter_pairing_success 
 64f1 204065ad call shutter_dy_move_mode_disable 
 64f2 20406500 call shutter_dy_over_clear 
 64f3 202062e6 branch ble_shutter_process_baseband_disconnect 
 
 ble_shutter_dy_process_baseband_connect:
 64f4 1c427e00 copy clkn_bt ,pdata 
-64f5 67e249f6 store 4 ,mem_key_send_clk 
+64f5 67e24a7e store 4 ,mem_key_send_clk 
 64f6 20406729 call shutter_dy_remote_not_iphone 
 64f7 202062e2 branch ble_shutter_process_baseband_connect 
 
@@ -24048,7 +24122,7 @@
 64ff 20207dbe branch enable_user2 
 
 shutter_dy_over_clear:
-6500 704ed500 jam 0 ,mem_last_press_key_value 
+6500 704f5d00 jam 0 ,mem_last_press_key_value 
 6501 20600000 rtn 
 
 shutter_dy_key_value_filter:
@@ -24064,25 +24138,25 @@
 
 shutter_dy_key_press:
 6509 44d1c014 bpatch patch14_3 ,mem_patch14 
-650a 6fe0cfaf fetch 1 ,mem_shutter_link_loop_flag 
+650a 6fe0d037 fetch 1 ,mem_shutter_link_loop_flag 
 650b 243a6502 nbranch shutter_dy_key_value_filter ,blank 
 
 shutter_dy_key_press_next:
-650c 704c1001 jam 1 ,mem_shutter_key_pressed 
+650c 704c9801 jam 1 ,mem_shutter_key_pressed 
 650d 20404323 call app_led_on 
 650e 2040652c call shutter_dy_key_press_clk 
 650f 20406561 call shutter_dy_jude_queue_size 
 6510 20216500 branch shutter_dy_over_clear ,positive 
 6511 18e27e00 copy queue ,pdata 
-6512 6848ced5 fetcht 1 ,mem_last_press_key_value 
+6512 6848cf5d fetcht 1 ,mem_last_press_key_value 
 6513 98467c00 isub temp ,null 
 6514 2442e526 ncall shutter_dy_iphone_check_move_mid ,zero 
 6515 18e27e00 copy queue ,pdata 
-6516 67e0ced5 store 1 ,mem_last_press_key_value 
-6517 6848ced8 fetcht 1 ,mem_move_mode_key_index 
+6516 67e0cf5d store 1 ,mem_last_press_key_value 
+6517 6848cf60 fetcht 1 ,mem_move_mode_key_index 
 6518 98467c00 isub temp ,null 
 6519 2022e524 branch shutter_dy_key_move_to_specify_location ,zero 
-651a 6fe0ced9 fetch 1 ,mem_move_mode_trigger_enable 
+651a 6fe0cf61 fetch 1 ,mem_move_mode_trigger_enable 
 651b 243a651f nbranch shutter_dy_move_set ,blank 
 
 shutter_dy_page_set:
@@ -24098,12 +24172,12 @@
 6523 202065f4 branch shutter_dy_move_to_specify_location 
 
 shutter_dy_key_move_to_specify_location:
-6524 704ed601 jam 1 ,mem_shutter_first_move 
+6524 704f5e01 jam 1 ,mem_shutter_first_move 
 6525 202065f4 branch shutter_dy_move_to_specify_location 
 
 shutter_dy_iphone_check_move_mid:
 6526 44d24014 bpatch patch14_4 ,mem_patch14 
-6527 6fe0ced9 fetch 1 ,mem_move_mode_trigger_enable 
+6527 6fe0cf61 fetch 1 ,mem_move_mode_trigger_enable 
 6528 203a64c3 branch shutter_dy_iphone_move_mid ,blank 
 6529 18e27e00 copy queue ,pdata 
 652a c000e4c3 beq shutter_like_key_num ,shutter_dy_iphone_move_mid 
@@ -24112,7 +24186,7 @@
 shutter_dy_key_press_clk:
 652c dfe0000a arg shutter_key_conf_sate_bytes ,pdata 
 652d 98effe00 imul32 queue ,pdata 
-652e da6049fa arg mem_shutter_key_state0 ,regc 
+652e da604a82 arg mem_shutter_key_state0 ,regc 
 652f 9a60a600 iadd regc ,regc 
 6530 1c427e00 copy clkn_bt ,pdata 
 6531 e7e20013 istore key_state_press_clk_length ,regc 
@@ -24124,13 +24198,13 @@
 
 shutter_dy_shutter_key_release:
 6537 44d2c014 bpatch patch14_5 ,mem_patch14 
-6538 6fe0ced9 fetch 1 ,mem_move_mode_trigger_enable 
+6538 6fe0cf61 fetch 1 ,mem_move_mode_trigger_enable 
 6539 205a654b call shutter_dy_key_release_led ,blank 
 
 shutter_dy_shutter_key_release_time:
 653a dfe0000a arg shutter_key_conf_sate_bytes ,pdata 
 653b 98effe00 imul32 queue ,pdata 
-653c da6049fa arg mem_shutter_key_state0 ,regc 
+653c da604a82 arg mem_shutter_key_state0 ,regc 
 653d 9a60a600 iadd regc ,regc 
 653e e8420013 ifetcht 4 ,regc 
 653f 18467c00 sub temp ,0 ,null 
@@ -24147,7 +24221,7 @@
 654a 20600000 rtn 
 
 shutter_dy_key_release_led:
-654b 6fe0cfaf fetch 1 ,mem_shutter_link_loop_flag 
+654b 6fe0d037 fetch 1 ,mem_shutter_link_loop_flag 
 654c 243a4323 nbranch app_led_on ,blank 
 654d 20204325 branch app_led_off 
 
@@ -24158,7 +24232,7 @@
 
 shutter_dy_push_queue_release1:
 6551 2040656b call shutter_clear_dy_key_state 
-6552 6fe0ced9 fetch 1 ,mem_move_mode_trigger_enable 
+6552 6fe0cf61 fetch 1 ,mem_move_mode_trigger_enable 
 6553 243a655d nbranch shutter_dy_move_mode_queue_release ,blank 
 
 shutter_dy_push_queue_release1_next:
@@ -24188,9 +24262,9 @@
 6565 20600000 rtn 
 
 shutter_dy_push_queue_long_release:
-6566 704ed001 jam 1 ,mem_shutter_long_key_released_flag 
+6566 704f5801 jam 1 ,mem_shutter_long_key_released_flag 
 6567 2040656b call shutter_clear_dy_key_state 
-6568 da604abe arg mem_key0_long_release ,regc 
+6568 da604b46 arg mem_key0_long_release ,regc 
 6569 dfe00003 arg max_queue_num_long_release ,pdata 
 656a 2020655a branch shutter_dy_push_queue_press_or_release 
 
@@ -24200,15 +24274,15 @@
 656d 20207ca1 branch clear_mem 
 
 shutter_dy_keyscan_key_process:
-656e 6fe148bc fetch 2 ,mem_key_value_xmem 
+656e 6fe14944 fetch 2 ,mem_key_value_xmem 
 656f 67e1442e store 2 ,mem_key_value_retention 
 6570 204065be call shutter_dy_keyscan_key_process_next 
 6571 6fe1442e fetch 2 ,mem_key_value_retention 
-6572 67e148bc store 2 ,mem_key_value_xmem 
+6572 67e14944 store 2 ,mem_key_value_xmem 
 6573 d8e00000 arg 0 ,queue 
 6574 6fe0c523 fetch 1 ,mem_shutter_key_num 
 6575 1fe27200 copy pdata ,loopcnt 
-6576 da6049fa arg mem_shutter_key_state0 ,regc 
+6576 da604a82 arg mem_shutter_key_state0 ,regc 
 
 shutter_dy_keyscan_key_check_release_loop:
 6577 1f227e00 copy loopcnt ,pdata 
@@ -24247,12 +24321,12 @@
 6596 1a60a609 increase key_state_longpress_offset ,regc 
 6597 58000001 setarg 1 
 6598 e7e08013 istore key_state_longpress_length ,regc 
-6599 6fe0ced0 fetch 1 ,mem_shutter_long_key_released_flag 
+6599 6fe0cf58 fetch 1 ,mem_shutter_long_key_released_flag 
 659a 207a0000 rtn blank 
-659b 704ed000 jam 0 ,mem_shutter_long_key_released_flag 
+659b 704f5800 jam 0 ,mem_shutter_long_key_released_flag 
 659c 44d34014 bpatch patch14_6 ,mem_patch14 
 659d 20406755 call shutter_dy_long_key_function 
-659e 6fe0ced7 fetch 1 ,mem_move_mode_set 
+659e 6fe0cf5f fetch 1 ,mem_move_mode_set 
 659f c00065a2 beq move_combine_key ,shutter_dy_key_long_press_set_key_normal 
 65a0 c000e5a5 beq move_single_key ,shutter_dy_key_long_press_set_move_trigger 
 65a1 20600000 rtn 
@@ -24264,23 +24338,23 @@
 
 shutter_dy_key_long_press_set_move_trigger:
 65a5 18e27e00 copy queue ,pdata 
-65a6 6848ced8 fetcht 1 ,mem_move_mode_key_index 
+65a6 6848cf60 fetcht 1 ,mem_move_mode_key_index 
 65a7 98467c00 isub temp ,null 
 65a8 2422e5a2 nbranch shutter_dy_key_long_press_set_key_normal ,zero 
-65a9 6fe0ced9 fetch 1 ,mem_move_mode_trigger_enable 
+65a9 6fe0cf61 fetch 1 ,mem_move_mode_trigger_enable 
 65aa 79407e00 setflip 0 ,pdata 
-65ab 67e0ced9 store 1 ,mem_move_mode_trigger_enable 
+65ab 67e0cf61 store 1 ,mem_move_mode_trigger_enable 
 65ac 247a0000 nrtn blank 
 
 shutter_dy_move_mode_disable:
-65ad 704ed900 jam 0 ,mem_move_mode_trigger_enable 
+65ad 704f6100 jam 0 ,mem_move_mode_trigger_enable 
 65ae 20204325 branch app_led_off 
 
 shutter_dy_long_press_android_or_ios:
-65af da604aa9 arg mem_key0_long_press ,regc 
+65af da604b31 arg mem_key0_long_press ,regc 
 65b0 20406730 call shutter_dy_check_iphone 
 65b1 207a0000 rtn blank 
-65b2 da604bd0 arg mem_key0_long_press_i ,regc 
+65b2 da604c58 arg mem_key0_long_press_i ,regc 
 65b3 20600000 rtn 
 
 shutter_dy_keyscan_key_check_release:
@@ -24308,7 +24382,7 @@
 65c7 6fe0c388 fetch 1 ,mem_le_adv_enable 
 65c8 247a0000 nrtn blank 
 65c9 44d3c014 bpatch patch14_7 ,mem_patch14 
-65ca 6fe0ced7 fetch 1 ,mem_move_mode_set 
+65ca 6fe0cf5f fetch 1 ,mem_move_mode_set 
 65cb c000e5cf beq move_single_key ,shutter_dy_skip_check_combine_key 
 65cc 20406628 call shutter_dy_check_combine_key_release 
 65cd 204065dc call shutter_dy_check_combine_key 
@@ -24323,11 +24397,11 @@
 65d4 2020703b branch keyscan_key_lp1 
 
 shutter_dy_single_key_led:
-65d5 6fe0ced5 fetch 1 ,mem_last_press_key_value 
-65d6 6848ced8 fetcht 1 ,mem_move_mode_key_index 
+65d5 6fe0cf5d fetch 1 ,mem_last_press_key_value 
+65d6 6848cf60 fetcht 1 ,mem_move_mode_key_index 
 65d7 98467c00 isub temp ,null 
 65d8 2022c323 branch app_led_on ,zero 
-65d9 6fe0ced9 fetch 1 ,mem_move_mode_trigger_enable 
+65d9 6fe0cf61 fetch 1 ,mem_move_mode_trigger_enable 
 65da 243a4325 nbranch app_led_off ,blank 
 65db 20600000 rtn 
 
@@ -24335,7 +24409,7 @@
 65dc d8e00000 arg 0 ,queue 
 
 shutter_dy_check_combine_key_loop:
-65dd da404ad3 arg mem_combine_key0 ,regb 
+65dd da404b5b arg mem_combine_key0 ,regb 
 65de dfe00002 arg 2 ,pdata 
 65df 98effe00 imul32 queue ,pdata 
 65e0 9a40a400 iadd regb ,regb 
@@ -24348,9 +24422,9 @@
 65e7 202065dd branch shutter_dy_check_combine_key_loop 
 
 shutter_dy_check_combine_key_parse:
-65e8 67e14adf store 2 ,mem_combine_key_state0 
+65e8 67e14b67 store 2 ,mem_combine_key_state0 
 65e9 20404323 call app_led_on 
-65ea da604ae1 arg mem_combine_key0_press ,regc 
+65ea da604b69 arg mem_combine_key0_press ,regc 
 65eb dfe0000a arg max_queue_num_combinekey ,pdata 
 65ec 98effe00 imul32 queue ,pdata 
 65ed 9a60a600 iadd regc ,regc 
@@ -24372,75 +24446,75 @@
 65f9 20406382 call queue_push_one_byte 
 65fa 20406730 call shutter_dy_check_iphone 
 65fb 207a0000 rtn blank 
-65fc 7049f578 jam 120 ,mem_send_data_delay 
+65fc 704a7d78 jam 120 ,mem_send_data_delay 
 65fd dfe00006 arg 0x06 ,pdata 
 65fe 20206382 branch queue_push_one_byte 
 
 shutter_dy_move_down_left_corner_count_set:
-65ff 6848ceba fetcht 1 ,mem_shutter_back_count 
+65ff 6848cf42 fetcht 1 ,mem_shutter_back_count 
 6600 20406730 call shutter_dy_check_iphone 
 6601 207a0000 rtn blank 
-6602 6848cebd fetcht 1 ,mem_shutter_iphone_beyond_y_count 
+6602 6848cf45 fetcht 1 ,mem_shutter_iphone_beyond_y_count 
 6603 18408401 increase 1 ,temp 
-6604 6fe0ced6 fetch 1 ,mem_shutter_first_move 
+6604 6fe0cf5e fetch 1 ,mem_shutter_first_move 
 6605 207a0000 rtn blank 
-6606 6848ceba fetcht 1 ,mem_shutter_back_count 
-6607 704ed600 jam 0 ,mem_shutter_first_move 
+6606 6848cf42 fetcht 1 ,mem_shutter_back_count 
+6607 704f5e00 jam 0 ,mem_shutter_first_move 
 6608 20600000 rtn 
 
 shutter_dy_move_down_left_corner:
 6609 204065ff call shutter_dy_move_down_left_corner_count_set 
 660a 18427e00 copy temp ,pdata 
 660b 207a0000 rtn blank 
-660c 67e0cec3 store 1 ,mem_shutter_back_count_cache 
+660c 67e0cf4b store 1 ,mem_shutter_back_count_cache 
 
 shutter_dy_move_down_left_corner_loop:
 660d dfe00013 arg 0x13 ,pdata 
 660e 20406382 call queue_push_one_byte 
-660f 6fe0cec3 fetch 1 ,mem_shutter_back_count_cache 
+660f 6fe0cf4b fetch 1 ,mem_shutter_back_count_cache 
 6610 1fe0ffff increase -1 ,pdata 
-6611 67e0cec3 store 1 ,mem_shutter_back_count_cache 
+6611 67e0cf4b store 1 ,mem_shutter_back_count_cache 
 6612 207a0000 rtn blank 
 6613 2020660d branch shutter_dy_move_down_left_corner_loop 
 
 shutter_dy_move_x_max:
-6614 6fe0cebc fetch 1 ,mem_shutter_iphone_beyond_x_count 
+6614 6fe0cf44 fetch 1 ,mem_shutter_iphone_beyond_x_count 
 6615 207a0000 rtn blank 
-6616 67e0cec4 store 1 ,mem_shutter_iphone_beyond_x_cache 
+6616 67e0cf4c store 1 ,mem_shutter_iphone_beyond_x_cache 
 
 shutter_dy_move_x_max_number:
 6617 dfe00020 arg 0x20 ,pdata 
 6618 20406382 call queue_push_one_byte 
-6619 6fe0cec4 fetch 1 ,mem_shutter_iphone_beyond_x_cache 
+6619 6fe0cf4c fetch 1 ,mem_shutter_iphone_beyond_x_cache 
 661a 1fe0ffff increase -1 ,pdata 
-661b 67e0cec4 store 1 ,mem_shutter_iphone_beyond_x_cache 
+661b 67e0cf4c store 1 ,mem_shutter_iphone_beyond_x_cache 
 661c 207a0000 rtn blank 
 661d 20206617 branch shutter_dy_move_x_max_number 
 
 shutter_dy_move_y_max:
-661e 6fe0cebd fetch 1 ,mem_shutter_iphone_beyond_y_count 
+661e 6fe0cf45 fetch 1 ,mem_shutter_iphone_beyond_y_count 
 661f 207a0000 rtn blank 
-6620 67e0cec5 store 1 ,mem_shutter_iphone_beyond_y_cache 
+6620 67e0cf4d store 1 ,mem_shutter_iphone_beyond_y_cache 
 
 shutter_dy_move_y_max_number:
 6621 dfe00021 arg 0x21 ,pdata 
 6622 20406382 call queue_push_one_byte 
-6623 6fe0cec5 fetch 1 ,mem_shutter_iphone_beyond_y_cache 
+6623 6fe0cf4d fetch 1 ,mem_shutter_iphone_beyond_y_cache 
 6624 1fe0ffff increase -1 ,pdata 
-6625 67e0cec5 store 1 ,mem_shutter_iphone_beyond_y_cache 
+6625 67e0cf4d store 1 ,mem_shutter_iphone_beyond_y_cache 
 6626 207a0000 rtn blank 
 6627 20206621 branch shutter_dy_move_y_max_number 
 
 shutter_dy_check_combine_key_release:
-6628 6fe14adf fetch 2 ,mem_combine_key_state0 
+6628 6fe14b67 fetch 2 ,mem_combine_key_state0 
 6629 207a0000 rtn blank 
 662a 684906f1 fetcht 2 ,mem_key_value_temp 
 662b 18467c00 sub temp ,0 ,null 
 662c 2022e636 branch shutter_dy_check_combine_key_release_all ,zero 
 662d 98467c00 isub temp ,null 
 662e 20628000 rtn zero 
-662f 60494adf storet 2 ,mem_combine_key_state0 
-6630 6fe14ed3 fetch 2 ,mem_combine_key_release_value 
+662f 60494b67 storet 2 ,mem_combine_key_state0 
+6630 6fe14f5b fetch 2 ,mem_combine_key_release_value 
 6631 98467c00 isub temp ,null 
 6632 2042c325 call app_led_off ,zero 
 
@@ -24450,22 +24524,22 @@
 6635 20207dba branch enable_user 
 
 shutter_dy_check_combine_key_release_all:
-6636 704ed001 jam 1 ,mem_shutter_long_key_released_flag 
+6636 704f5801 jam 1 ,mem_shutter_long_key_released_flag 
 6637 20404325 call app_led_off 
-6638 da604b1d arg mem_combine_key_release ,regc 
+6638 da604ba5 arg mem_combine_key_release ,regc 
 6639 204065f0 call shutter_dy_push_buffer_in_queue 
 663a 58000000 setarg 0 
-663b 67e14adf store 2 ,mem_combine_key_state0 
-663c 7048ae32 jam 50 ,mem_shutter_1s_timer 
+663b 67e14b67 store 2 ,mem_combine_key_state0 
+663c 70493632 jam 50 ,mem_shutter_1s_timer 
 663d 20406633 call shutter_dy_combine_key_enableuser 
 663e 6fe0c523 fetch 1 ,mem_shutter_key_num 
 663f 1feff20a mul32 pdata ,shutter_key_conf_sate_bytes ,loopcnt 
-6640 d8a049fa arg mem_shutter_key_state0 ,contw 
+6640 d8a04a82 arg mem_shutter_key_state0 ,contw 
 6641 20207ca1 branch clear_mem 
 
 shutter_dy_check_move_data:
 6642 44d44015 bpatch patch15_0 ,mem_patch15 
-6643 6fe0ced7 fetch 1 ,mem_move_mode_set 
+6643 6fe0cf5f fetch 1 ,mem_move_mode_set 
 6644 c000e647 beq move_single_key ,shutter_dy_check_move_data_single_key 
 6645 c000664d beq move_combine_key ,shutter_dy_check_move_data_combine_key 
 6646 20600000 rtn 
@@ -24492,33 +24566,33 @@
 6655 243a665e nbranch shutter_dy_get_move_data_iphone ,blank 
 6656 58000004 setarg 4 
 6657 1feffe0a mul32 pdata ,every_payload_len ,pdata 
-6658 d8404c12 arg mem_shutter_mousekey_value_list ,temp 
+6658 d8404c9a arg mem_shutter_mousekey_value_list ,temp 
 6659 98408a00 iadd temp ,contw 
 665a 18a08a03 increase 3 ,contw 
-665b 6fe1cb27 fetch 3 ,mem_shutter_move_data 
+665b 6fe1cbaf fetch 3 ,mem_shutter_move_data 
 665c e7e18005 istore 3 ,contw 
 665d 20600000 rtn 
 
 shutter_dy_get_move_data_iphone:
 665e 58000004 setarg 4 
 665f 1feffe0a mul32 pdata ,every_payload_len ,pdata 
-6660 d8404c12 arg mem_shutter_mousekey_value_list ,temp 
+6660 d8404c9a arg mem_shutter_mousekey_value_list ,temp 
 6661 98408a00 iadd temp ,contw 
 6662 18a08a03 increase 3 ,contw 
-6663 6fe14ebe fetch 2 ,mem_shutter_move_data_x 
+6663 6fe14f46 fetch 2 ,mem_shutter_move_data_x 
 6664 e7e18005 istore 3 ,contw 
 6665 18a08a07 increase 7 ,contw 
-6666 6fe14ec0 fetch 2 ,mem_shutter_move_data_y 
+6666 6fe14f48 fetch 2 ,mem_shutter_move_data_y 
 6667 1ff27e00 lshift4 pdata ,pdata 
 6668 1fed7e00 lshift8 pdata ,pdata 
 6669 e7e18005 istore 3 ,contw 
 666a 20600000 rtn 
 
 shutter_dy_move_x_empty_check:
-666b 6fe0cebc fetch 1 ,mem_shutter_iphone_beyond_x_count 
+666b 6fe0cf44 fetch 1 ,mem_shutter_iphone_beyond_x_count 
 666c 207a0000 rtn blank 
 666d 1fe0ffff increase -1 ,pdata 
-666e 67e0cebc store 1 ,mem_shutter_iphone_beyond_x_count 
+666e 67e0cf44 store 1 ,mem_shutter_iphone_beyond_x_count 
 666f dfe00062 arg iphone_once_max_move_value ,pdata 
 6670 20600000 rtn 
 
@@ -24531,40 +24605,40 @@
 
 shutter_dy_move_left:
 6676 20406671 call shutter_dy_every_move_size_set 
-6677 6fe14ebe fetch 2 ,mem_shutter_move_data_x 
+6677 6fe14f46 fetch 2 ,mem_shutter_move_data_x 
 6678 98467c00 isub temp ,null 
 6679 2441666b ncall shutter_dy_move_x_empty_check ,positive 
 667a 24610000 nrtn positive 
 667b 98467e00 isub temp ,pdata 
 
 shutter_dy_move_store_x:
-667c 67e14ebe store 2 ,mem_shutter_move_data_x 
+667c 67e14f46 store 2 ,mem_shutter_move_data_x 
 
 shutter_dy_move_data_store:
 667d 44d4c015 bpatch patch15_1 ,mem_patch15 
-667e 6fe14ebe fetch 2 ,mem_shutter_move_data_x 
-667f 68494ec0 fetcht 2 ,mem_shutter_move_data_y 
+667e 6fe14f46 fetch 2 ,mem_shutter_move_data_x 
+667f 68494f48 fetcht 2 ,mem_shutter_move_data_y 
 6680 184d0400 lshift8 temp ,temp 
 6681 18520400 lshift4 temp ,temp 
 6682 9840fe00 iadd temp ,pdata 
-6683 67e1cb27 store 3 ,mem_shutter_move_data 
+6683 67e1cbaf store 3 ,mem_shutter_move_data 
 6684 20206654 branch shutter_dy_get_move_data 
 
 shutter_dy_move_x_check_max:
-6685 6fe14ebe fetch 2 ,mem_shutter_move_data_x 
+6685 6fe14f46 fetch 2 ,mem_shutter_move_data_x 
 6686 d8400062 arg iphone_once_max_move_value ,temp 
 6687 98460400 isub temp ,temp 
 6688 24610000 nrtn positive 
 6689 18427e00 copy temp ,pdata 
-668a 6848cebc fetcht 1 ,mem_shutter_iphone_beyond_x_count 
+668a 6848cf44 fetcht 1 ,mem_shutter_iphone_beyond_x_count 
 668b 18467c03 sub temp ,0x03 ,null 
 668c 2022e690 branch shutter_dy_clear_move_x ,zero 
 668d 18408401 increase 1 ,temp 
-668e 6048cebc storet 1 ,mem_shutter_iphone_beyond_x_count 
+668e 6048cf44 storet 1 ,mem_shutter_iphone_beyond_x_count 
 668f 2020667c branch shutter_dy_move_store_x 
 
 shutter_dy_clear_move_x:
-6690 704ebc00 jam 0 ,mem_shutter_iphone_beyond_x_count 
+6690 704f4400 jam 0 ,mem_shutter_iphone_beyond_x_count 
 6691 dfe00000 arg 0 ,pdata 
 6692 2020667c branch shutter_dy_move_store_x 
 
@@ -24572,7 +24646,7 @@
 6693 20406730 call shutter_dy_check_iphone 
 6694 245a6685 ncall shutter_dy_move_x_check_max ,blank 
 6695 20406671 call shutter_dy_every_move_size_set 
-6696 6fe14ebe fetch 2 ,mem_shutter_move_data_x 
+6696 6fe14f46 fetch 2 ,mem_shutter_move_data_x 
 
 shutter_dy_move_right_next:
 6697 9840fe00 iadd temp ,pdata 
@@ -24582,12 +24656,12 @@
 
 shutter_dy_move_up:
 669b 20406671 call shutter_dy_every_move_size_set 
-669c 6fe14ec0 fetch 2 ,mem_shutter_move_data_y 
+669c 6fe14f48 fetch 2 ,mem_shutter_move_data_y 
 669d 98467e00 isub temp ,pdata 
-669e 67e14ec0 store 2 ,mem_shutter_move_data_y 
+669e 67e14f48 store 2 ,mem_shutter_move_data_y 
 
 shutter_dy_move_y_check_max:
-669f 68494ec0 fetcht 2 ,mem_shutter_move_data_y 
+669f 68494f48 fetcht 2 ,mem_shutter_move_data_y 
 66a0 20406730 call shutter_dy_check_iphone 
 66a1 203a667d branch shutter_dy_move_data_store ,blank 
 66a2 58000fff setarg 0xfff 
@@ -24597,15 +24671,15 @@
 66a6 2421667d nbranch shutter_dy_move_data_store ,positive 
 66a7 58000fff setarg 0xfff 
 66a8 98467e00 isub temp ,pdata 
-66a9 6848cebd fetcht 1 ,mem_shutter_iphone_beyond_y_count 
+66a9 6848cf45 fetcht 1 ,mem_shutter_iphone_beyond_y_count 
 66aa 18467c05 sub temp ,0x05 ,null 
 66ab 2022e6af branch shutter_dy_clear_move_y ,zero 
 66ac 18408401 increase 1 ,temp 
-66ad 6048cebd storet 1 ,mem_shutter_iphone_beyond_y_count 
+66ad 6048cf45 storet 1 ,mem_shutter_iphone_beyond_y_count 
 66ae 202066bc branch shutter_dy_move_store_y 
 
 shutter_dy_clear_move_y:
-66af 704ebd00 jam 0 ,mem_shutter_iphone_beyond_y_count 
+66af 704f4500 jam 0 ,mem_shutter_iphone_beyond_y_count 
 
 shutter_dy_android_move_y_empty_check:
 66b0 58000fff setarg 0xfff 
@@ -24614,22 +24688,22 @@
 shutter_dy_move_y_empty_check:
 66b2 20406730 call shutter_dy_check_iphone 
 66b3 203a66b0 branch shutter_dy_android_move_y_empty_check ,blank 
-66b4 6fe0cebd fetch 1 ,mem_shutter_iphone_beyond_y_count 
+66b4 6fe0cf45 fetch 1 ,mem_shutter_iphone_beyond_y_count 
 66b5 203a66b0 branch shutter_dy_android_move_y_empty_check ,blank 
 66b6 1fe0ffff increase -1 ,pdata 
-66b7 67e0cebd store 1 ,mem_shutter_iphone_beyond_y_count 
+66b7 67e0cf45 store 1 ,mem_shutter_iphone_beyond_y_count 
 66b8 58000fff setarg 0xfff 
 66b9 d8400062 arg iphone_once_max_move_value ,temp 
 66ba 98467e00 isub temp ,pdata 
 66bb 9a20fe00 iadd rega ,pdata 
 
 shutter_dy_move_store_y:
-66bc 67e14ec0 store 2 ,mem_shutter_move_data_y 
+66bc 67e14f48 store 2 ,mem_shutter_move_data_y 
 66bd 2020667d branch shutter_dy_move_data_store 
 
 shutter_dy_move_down:
 66be 20406671 call shutter_dy_every_move_size_set 
-66bf 6fe14ec0 fetch 2 ,mem_shutter_move_data_y 
+66bf 6fe14f48 fetch 2 ,mem_shutter_move_data_y 
 
 shutter_dy_move_down_next:
 66c0 9840fe00 iadd temp ,pdata 
@@ -24655,7 +24729,7 @@
 66d0 e7e10005 istore 2 ,contw 
 66d1 58002800 setarg 0x2800 
 66d2 e7e10005 istore 2 ,contw 
-66d3 d8c049e4 arg mem_dy_le_search_service_uuid ,contr 
+66d3 d8c04a6c arg mem_dy_le_search_service_uuid ,contr 
 66d4 20207c8f branch memcpy16 
 
 shutter_dy_le_parse_att:
@@ -24679,14 +24753,14 @@
 66e4 2422ad50 nbranch le_send_att_read_blob_response ,zero 
 66e5 20406730 call shutter_dy_check_iphone 
 66e6 243a66e9 nbranch shutter_dy_le_parse_att_read_blob_request_ios ,blank 
-66e7 684949e0 fetcht 2 ,mem_shutter_le_map_len_android 
+66e7 68494a68 fetcht 2 ,mem_shutter_le_map_len_android 
 66e8 202066ea branch shutter_dy_le_parse_att_read_blob_request2 
 
 shutter_dy_le_parse_att_read_blob_request_ios:
-66e9 684949e2 fetcht 2 ,mem_shutter_le_map_len_ios 
+66e9 68494a6a fetcht 2 ,mem_shutter_le_map_len_ios 
 
 shutter_dy_le_parse_att_read_blob_request2:
-66ea d8c048be arg mem_shutter_le_hid_map ,contr 
+66ea d8c04946 arg mem_shutter_le_hid_map ,contr 
 66eb 20407c6d call store_contr 
 66ec 18427e00 copy temp ,pdata 
 66ed 9a267e00 isub rega ,pdata 
@@ -24715,7 +24789,7 @@
 66fe 6fe14332 fetch 2 ,mem_le_pairing_handle 
 66ff 98467c00 isub temp ,null 
 6700 2422ad1d nbranch le_send_att_read_response ,zero 
-6701 d8c048be arg mem_shutter_le_hid_map ,contr 
+6701 d8c04946 arg mem_shutter_le_hid_map ,contr 
 6702 18007e17 force 23 ,pdata 
 6703 20202d2d branch le_send_att_read_response_less 
 
@@ -24723,30 +24797,30 @@
 
 shutter_dy_le_remote_iphone:
 6704 44d5c015 bpatch patch15_3 ,mem_patch15 
-6705 704eba05 jam 5 ,mem_shutter_back_count 
-6706 7049f401 jam 1 ,mem_iphone_flag 
-6707 704ec201 jam 1 ,mem_last_shutter_le_iphone_flag 
-6708 7049f5f0 jam 240 ,mem_send_data_delay 
-6709 704ed10a jam 10 ,mem_shutter_move_mid_timer 
-670a 704ed601 jam 1 ,mem_shutter_first_move 
+6705 704f4205 jam 5 ,mem_shutter_back_count 
+6706 704a7c01 jam 1 ,mem_iphone_flag 
+6707 704f4a01 jam 1 ,mem_last_shutter_le_iphone_flag 
+6708 704a7df0 jam 240 ,mem_send_data_delay 
+6709 704f590a jam 10 ,mem_shutter_move_mid_timer 
+670a 704f5e01 jam 1 ,mem_shutter_first_move 
 670b 204067bf call shutter_dy_load_move_config_info 
-670c 6fe0ced2 fetch 1 ,mem_shutter_pairing_success 
+670c 6fe0cf5a fetch 1 ,mem_shutter_pairing_success 
 670d 207a0000 rtn blank 
 670e 20406783 call shutter_dy_clear_move_config 
 670f d8400062 arg iphone_once_max_move_value ,temp 
-6710 6fe14f88 fetch 2 ,mem_iphone_initial_move_x 
-6711 da204ebe arg mem_shutter_move_data_x ,rega 
-6712 da404ebc arg mem_shutter_iphone_beyond_x_count ,regb 
+6710 6fe15010 fetch 2 ,mem_iphone_initial_move_x 
+6711 da204f46 arg mem_shutter_move_data_x ,rega 
+6712 da404f44 arg mem_shutter_iphone_beyond_x_count ,regb 
 6713 2040671e call shutter_dy_iphone_move_initial_set 
 6714 d8400062 arg iphone_once_max_move_value ,temp 
-6715 6fe14f8a fetch 2 ,mem_iphone_initial_move_y 
-6716 da204ec0 arg mem_shutter_move_data_y ,rega 
-6717 da404ebd arg mem_shutter_iphone_beyond_y_count ,regb 
+6715 6fe15012 fetch 2 ,mem_iphone_initial_move_y 
+6716 da204f48 arg mem_shutter_move_data_y ,rega 
+6717 da404f45 arg mem_shutter_iphone_beyond_y_count ,regb 
 6718 2040671e call shutter_dy_iphone_move_initial_set 
 6719 58000fff setarg 0xfff 
-671a 68494ec0 fetcht 2 ,mem_shutter_move_data_y 
+671a 68494f48 fetcht 2 ,mem_shutter_move_data_y 
 671b 98467e00 isub temp ,pdata 
-671c 67e14ec0 store 2 ,mem_shutter_move_data_y 
+671c 67e14f48 store 2 ,mem_shutter_move_data_y 
 671d 20600000 rtn 
 
 shutter_dy_iphone_move_initial_set:
@@ -24765,10 +24839,10 @@
 6728 20600000 rtn 
 
 shutter_dy_remote_not_iphone:
-6729 704eba01 jam 1 ,mem_shutter_back_count 
-672a 7049f400 jam 0 ,mem_iphone_flag 
-672b 704ec200 jam 0 ,mem_last_shutter_le_iphone_flag 
-672c 7049f50a jam 10 ,mem_send_data_delay 
+6729 704f4201 jam 1 ,mem_shutter_back_count 
+672a 704a7c00 jam 0 ,mem_iphone_flag 
+672b 704f4a00 jam 0 ,mem_last_shutter_le_iphone_flag 
+672c 704a7d0a jam 10 ,mem_send_data_delay 
 672d 20600000 rtn 
 
 shutter_dy_not_iphone_read_conf:
@@ -24776,34 +24850,34 @@
 672f 202067bf branch shutter_dy_load_move_config_info 
 
 shutter_dy_check_iphone:
-6730 6fe0c9f4 fetch 1 ,mem_iphone_flag 
+6730 6fe0ca7c fetch 1 ,mem_iphone_flag 
 6731 20600000 rtn 
 
 shutter_dy_le_get_press_ptr:
-6732 da604f24 arg mem_dy_key0_press ,regc 
+6732 da604fac arg mem_dy_key0_press ,regc 
 6733 20406730 call shutter_dy_check_iphone 
 6734 207a0000 rtn blank 
-6735 7049f578 jam 120 ,mem_send_data_delay 
-6736 da604b2b arg mem_key0_press_i ,regc 
+6735 704a7d78 jam 120 ,mem_send_data_delay 
+6736 da604bb3 arg mem_key0_press_i ,regc 
 6737 20600000 rtn 
 
 shutter_dy_le_get_release_ptr:
 
 shutter_dy_le_get_release_ptr_set:
-6738 da604a40 arg mem_key0_release_new ,regc 
+6738 da604ac8 arg mem_key0_release_new ,regc 
 6739 20406730 call shutter_dy_check_iphone 
 673a 207a0000 rtn blank 
-673b da604b67 arg mem_key0_release_new_i ,regc 
-673c 7049f50c jam 12 ,mem_send_data_delay 
+673b da604bef arg mem_key0_release_new_i ,regc 
+673c 704a7d0c jam 12 ,mem_send_data_delay 
 673d 18e27e00 copy queue ,pdata 
 673e c1008000 rtneq shutter_like_key_num 
 673f 20600000 rtn 
 
 shutter_dy_le_get_release_ptr_volume:
 6740 44d64015 bpatch patch15_4 ,mem_patch15 
-6741 6fe0cc0e fetch 1 ,mem_key3_press_count 
+6741 6fe0cc96 fetch 1 ,mem_key3_press_count 
 6742 79407e00 setflip 0 ,pdata 
-6743 67e0cc0e store 1 ,mem_key3_press_count 
+6743 67e0cc96 store 1 ,mem_key3_press_count 
 6744 c0006749 beq 0 ,shutter_dy_le_get_release_ptr_set_volume_inc 
 6745 c000e747 beq 1 ,shutter_dy_le_get_release_ptr_set_volume_dec 
 6746 20600000 rtn 
@@ -24817,17 +24891,17 @@
 674a 20206371 branch push_buffer_in_queue 
 
 shutter_dy_le_get_vol_inc_ptr:
-674b da604a6d arg mem_key3_release_new ,regc 
+674b da604af5 arg mem_key3_release_new ,regc 
 674c 20406730 call shutter_dy_check_iphone 
 674d 207a0000 rtn blank 
-674e da604b94 arg mem_key3_release_new_i ,regc 
+674e da604c1c arg mem_key3_release_new_i ,regc 
 674f 20600000 rtn 
 
 shutter_dy_le_get_vol_dec_ptr:
-6750 da604bfa arg mem_key3_release_new_t ,regc 
+6750 da604c82 arg mem_key3_release_new_t ,regc 
 6751 20406730 call shutter_dy_check_iphone 
 6752 207a0000 rtn blank 
-6753 da604c04 arg mem_key3_release_new_i_t ,regc 
+6753 da604c8c arg mem_key3_release_new_i_t ,regc 
 6754 20600000 rtn 
 
 shutter_dy_long_key_function:
@@ -24838,71 +24912,71 @@
 6759 20600000 rtn 
 
 shutter_dy_long_key_volume_timer:
-675a da604f9d arg mem_shutter_volume_timer ,regc 
+675a da605025 arg mem_shutter_volume_timer ,regc 
 675b da40675d arg shutter_dy_long_key_volume_timeout ,regb 
 675c 202042e0 branch timer_single_step 
 
 shutter_dy_long_key_volume_timeout:
-675d 704f9d04 jam 4 ,mem_shutter_volume_timer 
-675e 6fe0cc0e fetch 1 ,mem_key3_press_count 
+675d 70502504 jam 4 ,mem_shutter_volume_timer 
+675e 6fe0cc96 fetch 1 ,mem_key3_press_count 
 675f 203a6761 branch shutter_dy_loop_send_volume_inc_page ,blank 
 6760 20206765 branch shutter_dy_loop_send_volume_dec_page 
 
 shutter_dy_loop_send_volume_inc_page:
-6761 704c0e00 jam 0 ,mem_key3_press_count 
-6762 704f9d04 jam 4 ,mem_shutter_volume_timer 
-6763 da604ab5 arg mem_key4_long_press ,regc 
+6761 704c9600 jam 0 ,mem_key3_press_count 
+6762 70502504 jam 4 ,mem_shutter_volume_timer 
+6763 da604b3d arg mem_key4_long_press ,regc 
 6764 20206371 branch push_buffer_in_queue 
 
 shutter_dy_loop_send_volume_dec_page:
-6765 704c0e01 jam 1 ,mem_key3_press_count 
-6766 704f9d04 jam 4 ,mem_shutter_volume_timer 
-6767 da604aaf arg mem_key2_long_press ,regc 
+6765 704c9601 jam 1 ,mem_key3_press_count 
+6766 70502504 jam 4 ,mem_shutter_volume_timer 
+6767 da604b37 arg mem_key2_long_press ,regc 
 6768 20206371 branch push_buffer_in_queue 
 
 shutter_dy_clear_volume_timer:
-6769 704c0e00 jam 0 ,mem_key3_press_count 
-676a 704f9d00 jam 0 ,mem_shutter_volume_timer 
+6769 704c9600 jam 0 ,mem_key3_press_count 
+676a 70502500 jam 0 ,mem_shutter_volume_timer 
 676b 20600000 rtn 
 
 shutter_dy_link_key_loop_timer:
-676c da604f9e arg mem_shutter_link_timer ,regc 
+676c da605026 arg mem_shutter_link_timer ,regc 
 676d da40676f arg shutter_dy_link_key_loop_timeout ,regb 
 676e 202042e0 branch timer_single_step 
 
 shutter_dy_link_key_loop_timeout:
-676f 704f9e02 jam 2 ,mem_shutter_link_timer 
+676f 70502602 jam 2 ,mem_shutter_link_timer 
 6770 20406772 call shutter_dy_link_data_android_or_ios 
 6771 20206371 branch push_buffer_in_queue 
 
 shutter_dy_link_data_android_or_ios:
-6772 da604f9f arg mem_shutter_link_data ,regc 
+6772 da605027 arg mem_shutter_link_data ,regc 
 6773 20406730 call shutter_dy_check_iphone 
 6774 207a0000 rtn blank 
-6775 da604fa7 arg mem_shutter_link_data_i ,regc 
+6775 da60502f arg mem_shutter_link_data_i ,regc 
 6776 20600000 rtn 
 
 shutter_dy_link_key_long_press:
-6777 6fe0cfaf fetch 1 ,mem_shutter_link_loop_flag 
+6777 6fe0d037 fetch 1 ,mem_shutter_link_loop_flag 
 6778 243a677c nbranch shutter_dy_clear_link_key_timer ,blank 
-6779 704faf01 jam 1 ,mem_shutter_link_loop_flag 
-677a 704f9e02 jam 2 ,mem_shutter_link_timer 
+6779 70503701 jam 1 ,mem_shutter_link_loop_flag 
+677a 70502602 jam 2 ,mem_shutter_link_timer 
 677b 20600000 rtn 
 
 shutter_dy_clear_link_key_timer:
-677c 704faf00 jam 0 ,mem_shutter_link_loop_flag 
-677d 704f9e00 jam 0 ,mem_shutter_link_timer 
+677c 70503700 jam 0 ,mem_shutter_link_loop_flag 
+677d 70502600 jam 0 ,mem_shutter_link_timer 
 677e 20600000 rtn 
 
 shutter_dy_jude_clear_move_config:
-677f 6fe0cebb fetch 1 ,mem_shutter_le_conned 
+677f 6fe0cf43 fetch 1 ,mem_shutter_le_conned 
 6780 247a0000 nrtn blank 
-6781 704ebb01 jam 1 ,mem_shutter_le_conned 
+6781 704f4301 jam 1 ,mem_shutter_le_conned 
 6782 2020667d branch shutter_dy_move_data_store 
 
 shutter_dy_clear_move_config:
 6783 58000000 setarg 0 
-6784 67e3cebc store 7 ,mem_move_config 
+6784 67e3cf44 store 7 ,mem_move_config 
 6785 20600000 rtn 
 
 shutter_dy_write_otp_convert_data:
@@ -24912,65 +24986,65 @@
 6789 20600000 rtn 
 
 shutter_dy_read_otp_convert_data:
-678a 6fe0cf90 fetch 1 ,mem_otp_last_shutter_le_iphone_flag 
+678a 6fe0d018 fetch 1 ,mem_otp_last_shutter_le_iphone_flag 
 678b c000e7a7 beq 0x01 ,shutter_dy_get_ios_config 
 678c c00067b9 beq 0x00 ,shutter_dy_get_android_config 
 678d 20600000 rtn 
 
 shutter_dy_store_ios_config_data:
-678e 6fe0cebc fetch 1 ,mem_shutter_iphone_beyond_x_count 
+678e 6fe0cf44 fetch 1 ,mem_shutter_iphone_beyond_x_count 
 678f 1feffe62 mul32 pdata ,iphone_once_max_move_value ,pdata 
 6790 1fe20400 copy pdata ,temp 
-6791 6fe14ebe fetch 2 ,mem_shutter_move_data_x 
+6791 6fe14f46 fetch 2 ,mem_shutter_move_data_x 
 6792 9840fe00 iadd temp ,pdata 
-6793 67e14f8c store 2 ,mem_otp_shutter_move_data_x 
-6794 6fe0cebd fetch 1 ,mem_shutter_iphone_beyond_y_count 
+6793 67e15014 store 2 ,mem_otp_shutter_move_data_x 
+6794 6fe0cf45 fetch 1 ,mem_shutter_iphone_beyond_y_count 
 6795 1feffe62 mul32 pdata ,iphone_once_max_move_value ,pdata 
 6796 1fe20400 copy pdata ,temp 
-6797 6fe14ec0 fetch 2 ,mem_shutter_move_data_y 
+6797 6fe14f48 fetch 2 ,mem_shutter_move_data_y 
 6798 1fe22200 copy pdata ,rega 
 6799 58000fff setarg 0xfff 
 679a 9a267e00 isub rega ,pdata 
 679b 9840fe00 iadd temp ,pdata 
-679c 67e14f8e store 2 ,mem_otp_shutter_move_data_y 
+679c 67e15016 store 2 ,mem_otp_shutter_move_data_y 
 679d 20406730 call shutter_dy_check_iphone 
-679e 67e0cf90 store 1 ,mem_otp_last_shutter_le_iphone_flag 
+679e 67e0d018 store 1 ,mem_otp_last_shutter_le_iphone_flag 
 679f 20600000 rtn 
 
 shutter_dy_store_android_config:
-67a0 6fe14ebe fetch 2 ,mem_shutter_move_data_x 
-67a1 67e14f8c store 2 ,mem_otp_shutter_move_data_x 
-67a2 6fe14ec0 fetch 2 ,mem_shutter_move_data_y 
-67a3 67e14f8e store 2 ,mem_otp_shutter_move_data_y 
+67a0 6fe14f46 fetch 2 ,mem_shutter_move_data_x 
+67a1 67e15014 store 2 ,mem_otp_shutter_move_data_x 
+67a2 6fe14f48 fetch 2 ,mem_shutter_move_data_y 
+67a3 67e15016 store 2 ,mem_otp_shutter_move_data_y 
 67a4 20406730 call shutter_dy_check_iphone 
-67a5 67e0cf90 store 1 ,mem_otp_last_shutter_le_iphone_flag 
+67a5 67e0d018 store 1 ,mem_otp_last_shutter_le_iphone_flag 
 67a6 20600000 rtn 
 
 shutter_dy_get_ios_config:
-67a7 6fe14f8c fetch 2 ,mem_otp_shutter_move_data_x 
+67a7 6fe15014 fetch 2 ,mem_otp_shutter_move_data_x 
 67a8 1fe6fc62 div pdata ,iphone_once_max_move_value 
 67a9 20407d62 call wait_div_end 
 67aa 1807fe00 quotient pdata 
 67ab 18070400 remainder temp 
-67ac 67e0cebc store 1 ,mem_shutter_iphone_beyond_x_count 
+67ac 67e0cf44 store 1 ,mem_shutter_iphone_beyond_x_count 
 67ad 18427e00 copy temp ,pdata 
-67ae 67e14ebe store 2 ,mem_shutter_move_data_x 
-67af 6fe14f8e fetch 2 ,mem_otp_shutter_move_data_y 
+67ae 67e14f46 store 2 ,mem_shutter_move_data_x 
+67af 6fe15016 fetch 2 ,mem_otp_shutter_move_data_y 
 67b0 1fe6fc62 div pdata ,iphone_once_max_move_value 
 67b1 20407d62 call wait_div_end 
 67b2 1807fe00 quotient pdata 
 67b3 18070400 remainder temp 
-67b4 67e0cebd store 1 ,mem_shutter_iphone_beyond_y_count 
+67b4 67e0cf45 store 1 ,mem_shutter_iphone_beyond_y_count 
 67b5 58000fff setarg 0xfff 
 67b6 98467e00 isub temp ,pdata 
-67b7 67e14ec0 store 2 ,mem_shutter_move_data_y 
+67b7 67e14f48 store 2 ,mem_shutter_move_data_y 
 67b8 20600000 rtn 
 
 shutter_dy_get_android_config:
-67b9 6fe14f8c fetch 2 ,mem_otp_shutter_move_data_x 
-67ba 67e14ebe store 2 ,mem_shutter_move_data_x 
-67bb 6fe14f8e fetch 2 ,mem_otp_shutter_move_data_y 
-67bc 67e14ec0 store 2 ,mem_shutter_move_data_y 
+67b9 6fe15014 fetch 2 ,mem_otp_shutter_move_data_x 
+67ba 67e14f46 store 2 ,mem_shutter_move_data_x 
+67bb 6fe15016 fetch 2 ,mem_otp_shutter_move_data_y 
+67bc 67e14f48 store 2 ,mem_shutter_move_data_y 
 67bd 20600000 rtn 
 
 shutter_dy_store_move_config_info:
@@ -24981,42 +25055,42 @@
 
 shutter_dy_shutter_uart_config_loop:
 67c0 204067e2 call shutter_dy_update_read_check_addr 
-67c1 6fe14f93 fetch 2 ,mem_otp_read_offset_addr 
+67c1 6fe1501b fetch 2 ,mem_otp_read_offset_addr 
 67c2 2040684f call shutter_dy_shutter_read_move_config_from_otp_addr 
-67c3 704f9b00 jam 0 ,mem_shutter_first_read_flag 
-67c4 6fe2cf8c fetch 5 ,mem_otp_move_config 
-67c5 704f9c00 jam 0 ,mem_shutter_valid_data_flag 
-67c6 704f9900 jam 0 ,mem_shutter_temp_count 
+67c3 70502300 jam 0 ,mem_shutter_first_read_flag 
+67c4 6fe2d014 fetch 5 ,mem_otp_move_config 
+67c5 70502400 jam 0 ,mem_shutter_valid_data_flag 
+67c6 70502100 jam 0 ,mem_shutter_temp_count 
 67c7 204067e6 call shutter_dy_campare_otp_data 
-67c8 6fe0cf99 fetch 1 ,mem_shutter_temp_count 
+67c8 6fe0d021 fetch 1 ,mem_shutter_temp_count 
 67c9 c1000000 rtneq 0 
 67ca 202067c0 branch shutter_dy_shutter_uart_config_loop 
 
 shutter_dy_shutter_get_first_read_addr:
-67cb 6fe14f80 fetch 2 ,mem_shutter_efuse_start_offset 
+67cb 6fe15008 fetch 2 ,mem_shutter_efuse_start_offset 
 67cc 1fe0fffb increase -5 ,pdata 
-67cd 67e14f93 store 2 ,mem_otp_read_offset_addr 
+67cd 67e1501b store 2 ,mem_otp_read_offset_addr 
 67ce 20600000 rtn 
 
 shutter_dy_shutter_next_read_addr:
-67cf 6fe14f93 fetch 2 ,mem_otp_read_offset_addr 
+67cf 6fe1501b fetch 2 ,mem_otp_read_offset_addr 
 67d0 1fe0fffb increase -5 ,pdata 
-67d1 67e14f93 store 2 ,mem_otp_read_offset_addr 
+67d1 67e1501b store 2 ,mem_otp_read_offset_addr 
 67d2 20600000 rtn 
 
 shutter_dy_shutter_last_read_addr:
-67d3 6fe14f93 fetch 2 ,mem_otp_read_offset_addr 
+67d3 6fe1501b fetch 2 ,mem_otp_read_offset_addr 
 67d4 1fe0fe05 pincrease 5 
-67d5 67e14f93 store 2 ,mem_otp_read_offset_addr 
+67d5 67e1501b store 2 ,mem_otp_read_offset_addr 
 67d6 20600000 rtn 
 
 shutter_dy_shutter_read_ios_android_addr:
-67d7 6fe14f95 fetch 2 ,mem_otp_read_ios_android_addr 
+67d7 6fe1501d fetch 2 ,mem_otp_read_ios_android_addr 
 67d8 1fe0fe05 pincrease 5 
-67d9 67e14f95 store 2 ,mem_otp_read_ios_android_addr 
-67da 6fe14f95 fetch 2 ,mem_otp_read_ios_android_addr 
+67d9 67e1501d store 2 ,mem_otp_read_ios_android_addr 
+67da 6fe1501d fetch 2 ,mem_otp_read_ios_android_addr 
 67db 1fe20400 copy pdata ,temp 
-67dc 6fe14f80 fetch 2 ,mem_shutter_efuse_start_offset 
+67dc 6fe15008 fetch 2 ,mem_shutter_efuse_start_offset 
 67dd 98467e00 isub temp ,pdata 
 67de d8400005 arg shutter_para_total_num ,temp 
 67df 98467c00 isub temp ,null 
@@ -25024,7 +25098,7 @@
 67e1 20600000 rtn 
 
 shutter_dy_update_read_check_addr:
-67e2 6fe0cf9b fetch 1 ,mem_shutter_first_read_flag 
+67e2 6fe0d023 fetch 1 ,mem_shutter_first_read_flag 
 67e3 c000e7cb beq 0x01 ,shutter_dy_shutter_get_first_read_addr 
 67e4 c00067cf beq 0x00 ,shutter_dy_shutter_next_read_addr 
 67e5 20600000 rtn 
@@ -25032,38 +25106,38 @@
 shutter_dy_campare_otp_data:
 67e6 da400000 arg 0x0 ,regb 
 67e7 1a420400 copy regb ,temp 
-67e8 6fe14f8c fetch 2 ,mem_otp_shutter_move_data_x 
+67e8 6fe15014 fetch 2 ,mem_otp_shutter_move_data_x 
 67e9 a843fe00 icompare 0xffff ,temp 
 67ea 2440e7f6 ncall shutter_dy_set_shutter_valid_data_flag ,true 
 67eb da400000 arg 0x0 ,regb 
 67ec 1a420400 copy regb ,temp 
-67ed 6fe14f8e fetch 2 ,mem_otp_shutter_move_data_y 
+67ed 6fe15016 fetch 2 ,mem_otp_shutter_move_data_y 
 67ee a843fe00 icompare 0xffff ,temp 
 67ef 2440e7f6 ncall shutter_dy_set_shutter_valid_data_flag ,true 
 67f0 da400000 arg 0x0 ,regb 
 67f1 1a420400 copy regb ,temp 
-67f2 6fe0cf90 fetch 1 ,mem_otp_last_shutter_le_iphone_flag 
+67f2 6fe0d018 fetch 1 ,mem_otp_last_shutter_le_iphone_flag 
 67f3 a841fe00 icompare 0xff ,temp 
 67f4 2440e7f6 ncall shutter_dy_set_shutter_valid_data_flag ,true 
 67f5 20600000 rtn 
 
 shutter_dy_set_shutter_valid_data_flag:
-67f6 6fe0cf99 fetch 1 ,mem_shutter_temp_count 
+67f6 6fe0d021 fetch 1 ,mem_shutter_temp_count 
 67f7 1fe0fe01 pincrease 1 
-67f8 67e0cf99 store 1 ,mem_shutter_temp_count 
+67f8 67e0d021 store 1 ,mem_shutter_temp_count 
 67f9 20600000 rtn 
 
 shutter_dy_shutter_judge_ios_or_android:
-67fa 704f9901 jam 1 ,mem_shutter_temp_count 
+67fa 70502101 jam 1 ,mem_shutter_temp_count 
 67fb 204067d7 call shutter_dy_shutter_read_ios_android_addr 
-67fc 6fe14f95 fetch 2 ,mem_otp_read_ios_android_addr 
+67fc 6fe1501d fetch 2 ,mem_otp_read_ios_android_addr 
 67fd 2040684f call shutter_dy_shutter_read_move_config_from_otp_addr 
 67fe 20406730 call shutter_dy_check_iphone 
 67ff 1fe20400 copy pdata ,temp 
-6800 6fe0cf90 fetch 1 ,mem_otp_last_shutter_le_iphone_flag 
+6800 6fe0d018 fetch 1 ,mem_otp_last_shutter_le_iphone_flag 
 6801 a841fe00 icompare 0xff ,temp 
 6802 2040e821 call shutter_dy_clear_temp_count ,true 
-6803 6fe0cf99 fetch 1 ,mem_shutter_temp_count 
+6803 6fe0d021 fetch 1 ,mem_shutter_temp_count 
 6804 c1000000 rtneq 0 
 6805 202067fa branch shutter_dy_shutter_judge_ios_or_android 
 
@@ -25075,80 +25149,80 @@
 680a 20206812 branch shutter_dy_shutter_ios_save_init_loaction 
 
 shutter_dy_shutter_android_save_init_loaction:
-680b 6fe14f84 fetch 2 ,mem_android_initial_move_x 
-680c 67e14ebe store 2 ,mem_shutter_move_data_x 
-680d 68494f86 fetcht 2 ,mem_android_initial_move_y 
+680b 6fe1500c fetch 2 ,mem_android_initial_move_x 
+680c 67e14f46 store 2 ,mem_shutter_move_data_x 
+680d 6849500e fetcht 2 ,mem_android_initial_move_y 
 680e 58000fff setarg 0xfff 
 680f 98467e00 isub temp ,pdata 
-6810 67e14ec0 store 2 ,mem_shutter_move_data_y 
+6810 67e14f48 store 2 ,mem_shutter_move_data_y 
 6811 202067be branch shutter_dy_store_move_config_info 
 
 shutter_dy_shutter_ios_save_init_loaction:
 6812 d8400062 arg iphone_once_max_move_value ,temp 
-6813 6fe14f88 fetch 2 ,mem_iphone_initial_move_x 
-6814 da204ebe arg mem_shutter_move_data_x ,rega 
-6815 da404ebc arg mem_shutter_iphone_beyond_x_count ,regb 
+6813 6fe15010 fetch 2 ,mem_iphone_initial_move_x 
+6814 da204f46 arg mem_shutter_move_data_x ,rega 
+6815 da404f44 arg mem_shutter_iphone_beyond_x_count ,regb 
 6816 2040671e call shutter_dy_iphone_move_initial_set 
 6817 d8400062 arg iphone_once_max_move_value ,temp 
-6818 6fe14f8a fetch 2 ,mem_iphone_initial_move_y 
-6819 da204ec0 arg mem_shutter_move_data_y ,rega 
-681a da404ebd arg mem_shutter_iphone_beyond_y_count ,regb 
+6818 6fe15012 fetch 2 ,mem_iphone_initial_move_y 
+6819 da204f48 arg mem_shutter_move_data_y ,rega 
+681a da404f45 arg mem_shutter_iphone_beyond_y_count ,regb 
 681b 2040671e call shutter_dy_iphone_move_initial_set 
 681c 58000fff setarg 0xfff 
-681d 68494ec0 fetcht 2 ,mem_shutter_move_data_y 
+681d 68494f48 fetcht 2 ,mem_shutter_move_data_y 
 681e 98467e00 isub temp ,pdata 
-681f 67e14ec0 store 2 ,mem_shutter_move_data_y 
+681f 67e14f48 store 2 ,mem_shutter_move_data_y 
 6820 202067be branch shutter_dy_store_move_config_info 
 
 shutter_dy_clear_temp_count:
-6821 704f9900 jam 0 ,mem_shutter_temp_count 
+6821 70502100 jam 0 ,mem_shutter_temp_count 
 6822 20600000 rtn 
 
 shutter_dy_campare_effective_addr_read_otp:
 6823 44d74015 bpatch patch15_6 ,mem_patch15 
-6824 704f9b01 jam 1 ,mem_shutter_first_read_flag 
+6824 70502301 jam 1 ,mem_shutter_first_read_flag 
 6825 204067c0 call shutter_dy_shutter_uart_config_loop 
-6826 6fe14f82 fetch 2 ,mem_shutter_efuse_end_offset 
+6826 6fe1500a fetch 2 ,mem_shutter_efuse_end_offset 
 6827 1fe20400 copy pdata ,temp 
-6828 6fe14f93 fetch 2 ,mem_otp_read_offset_addr 
+6828 6fe1501b fetch 2 ,mem_otp_read_offset_addr 
 6829 98467e00 isub temp ,pdata 
 682a d8400000 arg 0x0 ,temp 
 682b 98467c00 isub temp ,null 
 682c 24610000 nrtn positive 
-682d 6fe14f93 fetch 2 ,mem_otp_read_offset_addr 
+682d 6fe1501b fetch 2 ,mem_otp_read_offset_addr 
 682e 1fe20400 copy pdata ,temp 
-682f 6fe14f80 fetch 2 ,mem_shutter_efuse_start_offset 
+682f 6fe15008 fetch 2 ,mem_shutter_efuse_start_offset 
 6830 1fe0fffb increase -5 ,pdata 
 6831 98467e00 isub temp ,pdata 
-6832 6fe14f93 fetch 2 ,mem_otp_read_offset_addr 
-6833 67e14f95 store 2 ,mem_otp_read_ios_android_addr 
+6832 6fe1501b fetch 2 ,mem_otp_read_offset_addr 
+6833 67e1501d store 2 ,mem_otp_read_ios_android_addr 
 6834 204067fa call shutter_dy_shutter_judge_ios_or_android 
-6835 6fe14f95 fetch 2 ,mem_otp_read_ios_android_addr 
+6835 6fe1501d fetch 2 ,mem_otp_read_ios_android_addr 
 6836 2442e84f ncall shutter_dy_shutter_read_move_config_from_otp_addr ,zero 
-6837 704f9900 jam 0 ,mem_shutter_temp_count 
+6837 70502100 jam 0 ,mem_shutter_temp_count 
 6838 204067e6 call shutter_dy_campare_otp_data 
-6839 6fe0cf99 fetch 1 ,mem_shutter_temp_count 
+6839 6fe0d021 fetch 1 ,mem_shutter_temp_count 
 683a c1000000 rtneq 0 
 683b 2020678a branch shutter_dy_read_otp_convert_data 
 
 shutter_dy_campare_effective_addr_write_otp:
 683c 44d7c015 bpatch patch15_7 ,mem_patch15 
-683d 704f9b01 jam 1 ,mem_shutter_first_read_flag 
+683d 70502301 jam 1 ,mem_shutter_first_read_flag 
 683e 204067c0 call shutter_dy_shutter_uart_config_loop 
-683f 68494f82 fetcht 2 ,mem_shutter_efuse_end_offset 
-6840 6fe14f93 fetch 2 ,mem_otp_read_offset_addr 
+683f 6849500a fetcht 2 ,mem_shutter_efuse_end_offset 
+6840 6fe1501b fetch 2 ,mem_otp_read_offset_addr 
 6841 98467e00 isub temp ,pdata 
 6842 d8400000 arg 0x0 ,temp 
 6843 98467c00 isub temp ,null 
 6844 24610000 nrtn positive 
-6845 68494f93 fetcht 2 ,mem_otp_read_offset_addr 
-6846 6fe14f80 fetch 2 ,mem_shutter_efuse_start_offset 
+6845 6849501b fetcht 2 ,mem_otp_read_offset_addr 
+6846 6fe15008 fetch 2 ,mem_shutter_efuse_start_offset 
 6847 98467e00 isub temp ,pdata 
 6848 d8400000 arg 0x0 ,temp 
 6849 98467c00 isub temp ,null 
 684a 24610000 nrtn positive 
-684b 6fe14f93 fetch 2 ,mem_otp_read_offset_addr 
-684c 67e14f91 store 2 ,mem_otp_write_offset_addr 
+684b 6fe1501b fetch 2 ,mem_otp_read_offset_addr 
+684c 67e15019 store 2 ,mem_otp_write_offset_addr 
 684d 20406786 call shutter_dy_write_otp_convert_data 
 684e 20206854 branch shutter_dy_shutter_write_move_config_to_otp_addr 
 
@@ -25156,17 +25230,17 @@
 684f 44d84016 bpatch patch16_0 ,mem_patch16 
 6850 1fe22400 copy pdata ,regb 
 6851 df200005 arg shutter_para_total_num ,loopcnt 
-6852 da204f8c arg mem_otp_move_config ,rega 
+6852 da205014 arg mem_otp_move_config ,rega 
 6853 20206b74 branch otp_read_data 
 
 shutter_dy_shutter_write_move_config_to_otp_addr:
 6854 df200005 arg shutter_para_total_num ,loopcnt 
-6855 da204f8c arg mem_otp_move_config ,rega 
-6856 6a414f91 fetchr regb ,2 ,mem_otp_write_offset_addr 
+6855 da205014 arg mem_otp_move_config ,rega 
+6856 6a415019 fetchr regb ,2 ,mem_otp_write_offset_addr 
 6857 20206b45 branch otp_write 
 
 shutter_dy_shutter_1s_timer:
-6858 da6048ae arg mem_shutter_1s_timer ,regc 
+6858 da604936 arg mem_shutter_1s_timer ,regc 
 6859 da4067be arg shutter_dy_store_move_config_info ,regb 
 685a 202042e0 branch timer_single_step 
 
Index: shutter/shutter_public/output/ramcode.rom
===================================================================
--- /1121s/branch/shutter/shutter_public/output/ramcode.rom	(revision 276)
+++ /1121s/branch/shutter/shutter_public/output/ramcode.rom	(working copy)
@@ -1,24 +1,69 @@
-c2840011
-c0010015
-c0078088
-c008801e
-c00a00e5
-c00a8064
-c00c0072
-c00c8031
-c00d002c
-c00d80b3
-c00e80b5
-c0128107
-c058807c
-c0628079
-c06d00b6
-c06e00c6
+c2840012
+c0000017
+c0010042
+c00780bc
+c0088052
+c00a0119
+c00a8098
+c00c00a6
+c00c8065
+c00d0060
+c00d80e7
+c00e80e9
+c012813b
+c05880b0
+c06280ad
+c06d00ea
+c06e00fa
 2020235a
-c01c8101
-c0268105
+c011804b
+c01c8135
+c0268139
 c17f8000
 2020235a
+20800000
+204042a3
+2040223d
+2040001c
+20202005
+20758000
+2040001f
+2020002a
+df200064
+da200291
+7080cb08
+70800680
+6ff08129
+c3008023
+6ff1815b
+e7e18011
+1a20a203
+c2000022
+20600000
+2040002d
+20407d7c
+20200037
+6fe18291
+d8c00294
+df200064
+e8418006
+9840fe00
+c2000030
+1fe6fc64
+20407d5f
+67e18670
+20600000
+df200064
+da200294
+da600000
+6fe18670
+e8418011
+98463000
+9a60a600
+1a20a203
+c200003a
+20407d7c
+20600000
 20407552
 20407448
 20402a45
@@ -27,7 +72,14 @@
 20402018
 2040310f
 2040248c
-20200015
+20200042
+204026be
+78287c00
+6fe10176
+684a431d
+98409600
+204025cc
+20202659
 708a0f60
 708a10aa
 708a127a
@@ -45,17 +97,17 @@
 7089460d
 70896f10
 708a8541
-20400039
+2040006d
 20202249
 6fe0c141
-c0050034
+c0050068
 2020220e
 708a1425
 58a93f3f
 67f18a60
 708a631f
 20600000
-20358060
+20358094
 6fe2020d
 207a0000
 37d98200
@@ -97,7 +149,7 @@
 6fe1415b
 207a0000
 67e1020f
-2020004a
+2020007e
 2040686f
 204021ba
 18002a08
@@ -146,7 +198,7 @@
 708ac200
 708ac300
 d8e00006
-204000a5
+204000d9
 2a2ffe0d
 2040211d
 2a4ffe0d
@@ -154,14 +206,14 @@
 d8e00005
 2040211c
 2040211e
-204000a5
+204000d9
 d8a08ac2
 1a31fe00
 20402117
 1a51fe00
 20402117
 18e08fff
-2021009a
+202100ce
 2020214f
 2000003c
 58000f00
@@ -187,7 +239,7 @@
 6fe0c409
 67f080cd
 20000bb8
-204000de
+20400112
 708a08c1
 6a40c419
 df200008
@@ -196,7 +248,7 @@
 67e0c433
 6240c419
 20600000
-204000d4
+20400108
 6ff08a09
 793ffe07
 67f08a09
@@ -207,7 +259,7 @@
 6fe0c409
 67f080cd
 20000bb8
-204000de
+20400112
 7080cd00
 20206fa1
 6ff080cc
@@ -222,7 +274,7 @@
 20600000
 7080cc03
 6ff08129
-c30280df
+c3028113
 68590164
 6049440a
 7080cc00
@@ -231,7 +283,7 @@
 708a8d12
 708a8e0a
 6fe0c099
-c00800fe
+c0080132
 58005762
 67f10907
 70890103
@@ -242,7 +294,7 @@
 708a8d44
 708a8e0a
 6fe0c099
-c00800fb
+c008012f
 58002bb1
 67f10907
 c6978000
@@ -251,10 +303,10 @@
 20600000
 58004189
 67f10907
-202000f7
+2020012b
 58008312
 67f10907
-202000ec
+20200120
 6fe0c334
 c1000000
 c001b04a
@@ -266,7 +318,7 @@
 6fe240ad
 9840fe00
 67e240ad
-2040010e
+20400142
 20202425
 600440e7
 d8c08070
@@ -283,11 +335,11 @@
 efe08011
 e8408013
 98467c00
-20228120
+20228154
 e7e08013
 37d98200
 1a20a201
 1a60a601
-c200011a
+c200014e
 1a420400
 20600000
Index: shutter/shutter_public/output/romcode.rom
===================================================================
--- /1121s/branch/shutter/shutter_public/output/romcode.rom	(revision 276)
+++ /1121s/branch/shutter/shutter_public/output/romcode.rom	(working copy)
@@ -17472,48 +17472,48 @@
 c00063d3
 c000e3d6
 20600000
-6fe34ef4
+6fe34f7c
 67e34526
 70452306
 58004523
 67e1442c
 20600000
-6fe3cef4
+6fe3cf7c
 67e3c526
 70452307
 58004523
 67e1442c
 20600000
-6fe44ef4
+6fe44f7c
 67e44526
 70452308
 58004523
 67e1442c
 20600000
-6fe0cef3
+6fe0cf7b
 c0036442
 c003e448
 c004644e
 20600000
 44d0c014
-6fe44f1a
+6fe44fa2
 67e44512
 58000096
 67e144f6
-6fe3cf6a
+6fe3cff2
 67e3c6a7
-6fe3cf71
+6fe3cff9
 67e3c6b2
-6fe24f78
+6fe25000
 67e244fa
-6fe24f7c
+6fe25004
 67e244fe
 5800000e
 67e144f2
 58000140
 67e144f4
 67e14389
-6fe44f12
+6fe44f9a
 67e4450a
 20600000
 20407396
@@ -17531,7 +17531,7 @@
 58006505
 67e14524
 204062c2
-6fe14f97
+6fe1501f
 67e14332
 6fe4450a
 67e44502
@@ -17550,7 +17550,7 @@
 2020656e
 5800001f
 1feffe0a
-d8404c12
+d8404c9a
 9840a200
 1a20a203
 d8400062
@@ -17570,21 +17570,21 @@
 247a0000
 204078fa
 207a0000
-684a49f6
+684a4a7e
 1c427e00
 98460400
 20628000
 242164ac
-6fe0c9f5
+6fe0ca7d
 98467c00
 20610000
 1c427e00
-67e249f6
+67e24a7e
 20406385
 24740000
 1fe0ffff
 1feffe0a
-d8404c12
+d8404c9a
 98408c00
 202063cb
 20406858
@@ -17594,12 +17594,12 @@
 204064d3
 20406311
 202064d9
-da604ed1
+da604f59
 da4064bf
 202042e0
 204078fa
 247a0000
-6fe148bc
+6fe14944
 247a0000
 20406730
 203a64cd
@@ -17609,19 +17609,19 @@
 18e27e00
 2fe00e01
 2020e4d1
-da604ec6
+da604f4e
 20206371
-da604eda
+da604f62
 20206371
-da604edf
+da604f67
 20206371
-da604ee9
+da604f71
 20206371
-da604c0f
+da604c97
 da4064d6
 202042e0
 df20000a
-d8a04a04
+d8a04a8c
 20207ca1
 da6046ca
 da4064dc
@@ -17636,22 +17636,22 @@
 c1200000
 c01966c8
 202062d9
-704ed201
+704f5a01
 20406783
-6fe14f84
-67e14ebe
-68494f86
+6fe1500c
+67e14f46
+6849500e
 58000fff
 98467e00
-67e14ec0
+67e14f48
 20600000
-704ebb00
-704ed200
+704f4300
+704f5a00
 204065ad
 20406500
 202062e6
 1c427e00
-67e249f6
+67e24a7e
 20406729
 202062e2
 78567c00
@@ -17662,7 +17662,7 @@
 20406351
 24740000
 20207dbe
-704ed500
+704f5d00
 20600000
 18e27e00
 c1808000
@@ -17672,23 +17672,23 @@
 1a227e00
 203a6537
 44d1c014
-6fe0cfaf
+6fe0d037
 243a6502
-704c1001
+704c9801
 20404323
 2040652c
 20406561
 20216500
 18e27e00
-6848ced5
+6848cf5d
 98467c00
 2442e526
 18e27e00
-67e0ced5
-6848ced8
+67e0cf5d
+6848cf60
 98467c00
 2022e524
-6fe0ced9
+6fe0cf61
 243a651f
 20406732
 dfe0000a
@@ -17698,17 +17698,17 @@
 c000e51c
 20406642
 202065f4
-704ed601
+704f5e01
 202065f4
 44d24014
-6fe0ced9
+6fe0cf61
 203a64c3
 18e27e00
 c000e4c3
 20600000
 dfe0000a
 98effe00
-da6049fa
+da604a82
 9a60a600
 1c427e00
 e7e20013
@@ -17718,11 +17718,11 @@
 e7e08013
 20600000
 44d2c014
-6fe0ced9
+6fe0cf61
 205a654b
 dfe0000a
 98effe00
-da6049fa
+da604a82
 9a60a600
 e8420013
 18467c00
@@ -17737,14 +17737,14 @@
 1c427e00
 e7e20013
 20600000
-6fe0cfaf
+6fe0d037
 243a4323
 20204325
 1a608c04
 efe08006
 20206551
 2040656b
-6fe0ced9
+6fe0cf61
 243a655d
 20406561
 20216500
@@ -17764,23 +17764,23 @@
 98467e00
 1fe67c0a
 20600000
-704ed001
+704f5801
 2040656b
-da604abe
+da604b46
 dfe00003
 2020655a
 df20000a
 1a620a00
 20207ca1
-6fe148bc
+6fe14944
 67e1442e
 204065be
 6fe1442e
-67e148bc
+67e14944
 d8e00000
 6fe0c523
 1fe27200
-da6049fa
+da604a82
 1f227e00
 67e10678
 1a627e00
@@ -17815,12 +17815,12 @@
 1a60a609
 58000001
 e7e08013
-6fe0ced0
+6fe0cf58
 207a0000
-704ed000
+704f5800
 44d34014
 20406755
-6fe0ced7
+6fe0cf5f
 c00065a2
 c000e5a5
 20600000
@@ -17828,19 +17828,19 @@
 dfe00003
 2020655a
 18e27e00
-6848ced8
+6848cf60
 98467c00
 2422e5a2
-6fe0ced9
+6fe0cf61
 79407e00
-67e0ced9
+67e0cf61
 247a0000
-704ed900
+704f6100
 20204325
-da604aa9
+da604b31
 20406730
 207a0000
-da604bd0
+da604c58
 20600000
 1a60a405
 efe20012
@@ -17864,7 +17864,7 @@
 6fe0c388
 247a0000
 44d3c014
-6fe0ced7
+6fe0cf5f
 c000e5cf
 20406628
 204065dc
@@ -17875,15 +17875,15 @@
 7006fa00
 18000e00
 2020703b
-6fe0ced5
-6848ced8
+6fe0cf5d
+6848cf60
 98467c00
 2022c323
-6fe0ced9
+6fe0cf61
 243a4325
 20600000
 d8e00000
-da404ad3
+da404b5b
 dfe00002
 98effe00
 9a40a400
@@ -17894,9 +17894,9 @@
 2022e5e8
 18e08e01
 202065dd
-67e14adf
+67e14b67
 20404323
-da604ae1
+da604b69
 dfe0000a
 98effe00
 9a60a600
@@ -17914,78 +17914,78 @@
 20406382
 20406730
 207a0000
-7049f578
+704a7d78
 dfe00006
 20206382
-6848ceba
+6848cf42
 20406730
 207a0000
-6848cebd
+6848cf45
 18408401
-6fe0ced6
+6fe0cf5e
 207a0000
-6848ceba
-704ed600
+6848cf42
+704f5e00
 20600000
 204065ff
 18427e00
 207a0000
-67e0cec3
+67e0cf4b
 dfe00013
 20406382
-6fe0cec3
+6fe0cf4b
 1fe0ffff
-67e0cec3
+67e0cf4b
 207a0000
 2020660d
-6fe0cebc
+6fe0cf44
 207a0000
-67e0cec4
+67e0cf4c
 dfe00020
 20406382
-6fe0cec4
+6fe0cf4c
 1fe0ffff
-67e0cec4
+67e0cf4c
 207a0000
 20206617
-6fe0cebd
+6fe0cf45
 207a0000
-67e0cec5
+67e0cf4d
 dfe00021
 20406382
-6fe0cec5
+6fe0cf4d
 1fe0ffff
-67e0cec5
+67e0cf4d
 207a0000
 20206621
-6fe14adf
+6fe14b67
 207a0000
 684906f1
 18467c00
 2022e636
 98467c00
 20628000
-60494adf
-6fe14ed3
+60494b67
+6fe14f5b
 98467c00
 2042c325
 6fe106f1
 67e1442e
 20207dba
-704ed001
+704f5801
 20404325
-da604b1d
+da604ba5
 204065f0
 58000000
-67e14adf
-7048ae32
+67e14b67
+70493632
 20406633
 6fe0c523
 1feff20a
-d8a049fa
+d8a04a82
 20207ca1
 44d44015
-6fe0ced7
+6fe0cf5f
 c000e647
 c000664d
 20600000
@@ -18006,29 +18006,29 @@
 243a665e
 58000004
 1feffe0a
-d8404c12
+d8404c9a
 98408a00
 18a08a03
-6fe1cb27
+6fe1cbaf
 e7e18005
 20600000
 58000004
 1feffe0a
-d8404c12
+d8404c9a
 98408a00
 18a08a03
-6fe14ebe
+6fe14f46
 e7e18005
 18a08a07
-6fe14ec0
+6fe14f48
 1ff27e00
 1fed7e00
 e7e18005
 20600000
-6fe0cebc
+6fe0cf44
 207a0000
 1fe0ffff
-67e0cebc
+67e0cf44
 dfe00062
 20600000
 d840000a
@@ -18037,47 +18037,47 @@
 d8400007
 20600000
 20406671
-6fe14ebe
+6fe14f46
 98467c00
 2441666b
 24610000
 98467e00
-67e14ebe
+67e14f46
 44d4c015
-6fe14ebe
-68494ec0
+6fe14f46
+68494f48
 184d0400
 18520400
 9840fe00
-67e1cb27
+67e1cbaf
 20206654
-6fe14ebe
+6fe14f46
 d8400062
 98460400
 24610000
 18427e00
-6848cebc
+6848cf44
 18467c03
 2022e690
 18408401
-6048cebc
+6048cf44
 2020667c
-704ebc00
+704f4400
 dfe00000
 2020667c
 20406730
 245a6685
 20406671
-6fe14ebe
+6fe14f46
 9840fe00
 d8400fff
 20407d6c
 2020667c
 20406671
-6fe14ec0
+6fe14f48
 98467e00
-67e14ec0
-68494ec0
+67e14f48
+68494f48
 20406730
 203a667d
 58000fff
@@ -18087,29 +18087,29 @@
 2421667d
 58000fff
 98467e00
-6848cebd
+6848cf45
 18467c05
 2022e6af
 18408401
-6048cebd
+6048cf45
 202066bc
-704ebd00
+704f4500
 58000fff
 202066bc
 20406730
 203a66b0
-6fe0cebd
+6fe0cf45
 203a66b0
 1fe0ffff
-67e0cebd
+67e0cf45
 58000fff
 d8400062
 98467e00
 9a20fe00
-67e14ec0
+67e14f48
 2020667d
 20406671
-6fe14ec0
+6fe14f48
 9840fe00
 d8400fff
 98462200
@@ -18129,7 +18129,7 @@
 e7e10005
 58002800
 e7e10005
-d8c049e4
+d8c04a6c
 20207c8f
 44d54015
 1a220c00
@@ -18149,10 +18149,10 @@
 2422ad50
 20406730
 243a66e9
-684949e0
+68494a68
 202066ea
-684949e2
-d8c048be
+68494a6a
+d8c04946
 20407c6d
 18427e00
 9a267e00
@@ -18175,34 +18175,34 @@
 6fe14332
 98467c00
 2422ad1d
-d8c048be
+d8c04946
 18007e17
 20202d2d
 44d5c015
-704eba05
-7049f401
-704ec201
-7049f5f0
-704ed10a
-704ed601
+704f4205
+704a7c01
+704f4a01
+704a7df0
+704f590a
+704f5e01
 204067bf
-6fe0ced2
+6fe0cf5a
 207a0000
 20406783
 d8400062
-6fe14f88
-da204ebe
-da404ebc
+6fe15010
+da204f46
+da404f44
 2040671e
 d8400062
-6fe14f8a
-da204ec0
-da404ebd
+6fe15012
+da204f48
+da404f45
 2040671e
 58000fff
-68494ec0
+68494f48
 98467e00
-67e14ec0
+67e14f48
 20600000
 9846fc00
 20407d62
@@ -18215,33 +18215,33 @@
 efe08006
 c003672e
 20600000
-704eba01
-7049f400
-704ec200
-7049f50a
+704f4201
+704a7c00
+704f4a00
+704a7d0a
 20600000
 20406729
 202067bf
-6fe0c9f4
+6fe0ca7c
 20600000
-da604f24
+da604fac
 20406730
 207a0000
-7049f578
-da604b2b
+704a7d78
+da604bb3
 20600000
-da604a40
+da604ac8
 20406730
 207a0000
-da604b67
-7049f50c
+da604bef
+704a7d0c
 18e27e00
 c1008000
 20600000
 44d64015
-6fe0cc0e
+6fe0cc96
 79407e00
-67e0cc0e
+67e0cc96
 c0006749
 c000e747
 20600000
@@ -18249,191 +18249,191 @@
 20206371
 2040674b
 20206371
-da604a6d
+da604af5
 20406730
 207a0000
-da604b94
+da604c1c
 20600000
-da604bfa
+da604c82
 20406730
 207a0000
-da604c04
+da604c8c
 20600000
 18e27e00
 c000e777
 c0016765
 c0026761
 20600000
-da604f9d
+da605025
 da40675d
 202042e0
-704f9d04
-6fe0cc0e
+70502504
+6fe0cc96
 203a6761
 20206765
-704c0e00
-704f9d04
-da604ab5
+704c9600
+70502504
+da604b3d
 20206371
-704c0e01
-704f9d04
-da604aaf
+704c9601
+70502504
+da604b37
 20206371
-704c0e00
-704f9d00
+704c9600
+70502500
 20600000
-da604f9e
+da605026
 da40676f
 202042e0
-704f9e02
+70502602
 20406772
 20206371
-da604f9f
+da605027
 20406730
 207a0000
-da604fa7
+da60502f
 20600000
-6fe0cfaf
+6fe0d037
 243a677c
-704faf01
-704f9e02
+70503701
+70502602
 20600000
-704faf00
-704f9e00
+70503700
+70502600
 20600000
-6fe0cebb
+6fe0cf43
 247a0000
-704ebb01
+704f4301
 2020667d
 58000000
-67e3cebc
+67e3cf44
 20600000
 20406730
 c000e78e
 c00067a0
 20600000
-6fe0cf90
+6fe0d018
 c000e7a7
 c00067b9
 20600000
-6fe0cebc
+6fe0cf44
 1feffe62
 1fe20400
-6fe14ebe
+6fe14f46
 9840fe00
-67e14f8c
-6fe0cebd
+67e15014
+6fe0cf45
 1feffe62
 1fe20400
-6fe14ec0
+6fe14f48
 1fe22200
 58000fff
 9a267e00
 9840fe00
-67e14f8e
+67e15016
 20406730
-67e0cf90
+67e0d018
 20600000
-6fe14ebe
-67e14f8c
-6fe14ec0
-67e14f8e
+6fe14f46
+67e15014
+6fe14f48
+67e15016
 20406730
-67e0cf90
+67e0d018
 20600000
-6fe14f8c
+6fe15014
 1fe6fc62
 20407d62
 1807fe00
 18070400
-67e0cebc
+67e0cf44
 18427e00
-67e14ebe
-6fe14f8e
+67e14f46
+6fe15016
 1fe6fc62
 20407d62
 1807fe00
 18070400
-67e0cebd
+67e0cf45
 58000fff
 98467e00
-67e14ec0
+67e14f48
 20600000
-6fe14f8c
-67e14ebe
-6fe14f8e
-67e14ec0
+6fe15014
+67e14f46
+6fe15016
+67e14f48
 20600000
 2020683c
 20206823
 204067e2
-6fe14f93
+6fe1501b
 2040684f
-704f9b00
-6fe2cf8c
-704f9c00
-704f9900
+70502300
+6fe2d014
+70502400
+70502100
 204067e6
-6fe0cf99
+6fe0d021
 c1000000
 202067c0
-6fe14f80
+6fe15008
 1fe0fffb
-67e14f93
+67e1501b
 20600000
-6fe14f93
+6fe1501b
 1fe0fffb
-67e14f93
+67e1501b
 20600000
-6fe14f93
+6fe1501b
 1fe0fe05
-67e14f93
+67e1501b
 20600000
-6fe14f95
+6fe1501d
 1fe0fe05
-67e14f95
-6fe14f95
+67e1501d
+6fe1501d
 1fe20400
-6fe14f80
+6fe15008
 98467e00
 d8400005
 98467c00
 24216806
 20600000
-6fe0cf9b
+6fe0d023
 c000e7cb
 c00067cf
 20600000
 da400000
 1a420400
-6fe14f8c
+6fe15014
 a843fe00
 2440e7f6
 da400000
 1a420400
-6fe14f8e
+6fe15016
 a843fe00
 2440e7f6
 da400000
 1a420400
-6fe0cf90
+6fe0d018
 a841fe00
 2440e7f6
 20600000
-6fe0cf99
+6fe0d021
 1fe0fe01
-67e0cf99
+67e0d021
 20600000
-704f9901
+70502101
 204067d7
-6fe14f95
+6fe1501d
 2040684f
 20406730
 1fe20400
-6fe0cf90
+6fe0d018
 a841fe00
 2040e821
-6fe0cf99
+6fe0d021
 c1000000
 202067fa
 44d6c015
@@ -18441,84 +18441,84 @@
 20406730
 203a680b
 20206812
-6fe14f84
-67e14ebe
-68494f86
+6fe1500c
+67e14f46
+6849500e
 58000fff
 98467e00
-67e14ec0
+67e14f48
 202067be
 d8400062
-6fe14f88
-da204ebe
-da404ebc
+6fe15010
+da204f46
+da404f44
 2040671e
 d8400062
-6fe14f8a
-da204ec0
-da404ebd
+6fe15012
+da204f48
+da404f45
 2040671e
 58000fff
-68494ec0
+68494f48
 98467e00
-67e14ec0
+67e14f48
 202067be
-704f9900
+70502100
 20600000
 44d74015
-704f9b01
+70502301
 204067c0
-6fe14f82
+6fe1500a
 1fe20400
-6fe14f93
+6fe1501b
 98467e00
 d8400000
 98467c00
 24610000
-6fe14f93
+6fe1501b
 1fe20400
-6fe14f80
+6fe15008
 1fe0fffb
 98467e00
-6fe14f93
-67e14f95
+6fe1501b
+67e1501d
 204067fa
-6fe14f95
+6fe1501d
 2442e84f
-704f9900
+70502100
 204067e6
-6fe0cf99
+6fe0d021
 c1000000
 2020678a
 44d7c015
-704f9b01
+70502301
 204067c0
-68494f82
-6fe14f93
+6849500a
+6fe1501b
 98467e00
 d8400000
 98467c00
 24610000
-68494f93
-6fe14f80
+6849501b
+6fe15008
 98467e00
 d8400000
 98467c00
 24610000
-6fe14f93
-67e14f91
+6fe1501b
+67e15019
 20406786
 20206854
 44d84016
 1fe22400
 df200005
-da204f8c
+da205014
 20206b74
 df200005
-da204f8c
-6a414f91
+da205014
+6a415019
 20206b45
-da6048ae
+da604936
 da4067be
 202042e0
 6fe10912
@@ -24573,4 +24573,4 @@
 00000000
 00000000
 00000000
-0000def0
\ No newline at end of file
+00005b51
\ No newline at end of file
Index: shutter/shutter_public/output/sched.rom
===================================================================
--- /1121s/branch/shutter/shutter_public/output/sched.rom	(revision 276)
+++ /1121s/branch/shutter/shutter_public/output/sched.rom	(working copy)
@@ -1,5 +1,5 @@
 mem_patch00:
-04   #mem_patch00
+05   #mem_patch00
 80   #mem_patch01
 32   #mem_patch02
 2f   #mem_patch03
@@ -35,7 +35,7 @@
 00   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
-00   #mem_patch24
+08   #mem_patch24
 00   #mem_patch25
 00   #mem_patch26
 02   #mem_patch27
@@ -71,13 +71,13 @@
 
 mem_le_lap:20 31 67 98 07 2a
 mem_le_name_len:
-'AB Shutter3
+'AB Shutter4
 
 mem_shutter_key_conf0_temp:11 ff 90 00 ff
 
 mem_shutter_soft_switch_first_power_on:00
 
-mem_tx_power:05
+mem_tx_power:06
 
 mem_shutter_dy_conf:00
 mem_shutter_discovery_time_conf:
@@ -92,6 +92,9 @@
 20 03 #mem_ble_shutter_discovery_blink_on_time
 20 03 #mem_ble_shutter_discovery_blink_off_time
 
+mem_rf_debug_rx_gpio:8788
+
+
 
 
 mem_system_clk:0c
@@ -103,13 +106,13 @@
 mem_lpm_hv_sel:b4
 
 mem_fcomp_div:18
-mem_xtal_c_sel:7f
+mem_xtal_c_sel:6e
 mem_gpio_wakeup_cfg:00 00 20 00 00 00 00 00 00 00 00 00
 
 mem_version:08 0e 05 03 00
 mem_le_tx2m_delay:20
 
-mem_rx_window_sniff:00 0c
+mem_rx_window_sniff:00 0e
 
 mem_gain_fix:ff	#00:soft agc; ff:hw agc
 mem_gain_table:04 00 00
Index: shutter/shutter_public/program/patch.prog
===================================================================
--- /1121s/branch/shutter/shutter_public/program/patch.prog	(revision 276)
+++ /1121s/branch/shutter/shutter_public/program/patch.prog	(working copy)
@@ -2,6 +2,7 @@
 //define AUTO_TEST
 
 	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_1,p_set_sync_on
@@ -17,14 +18,71 @@
 	beq patch18_5,p_otp_read_data
 	beq patch1b_2,p_sadc_calibration
 	beq patch1b_4,p_enable_adc
+	
 	branch assert
 
 pf_patch_ext:
+	beq patch24_3,p_le_receive_slave
 	beq patch27_1,p_le_parse
 	beq patch29_5,p_le_init_adv
 	rtneq patch3f_7
 	branch assert
-
+p_soft_reset:
+	clear_stack
+	call app_param_init
+	call initialize_radio
+	call p_lpo_calibration_jitter
+	branch soft_reset+4
+p_lpo_calibration_jitter:
+	rtn wake
+	call p_lpo_calibration
+	branch p_lpo_jitter_calibration
+p_lpo_calibration:
+	arg 100,loopcnt
+	arg mem_ax_256,rega
+	jam 0x8,core_ccnt_bit
+p_lpo_calibration_loop:
+	jam ccnt_start,core_misc_ctrl
+p_lpo_calibration_wait_done:
+	fetch 1,core_perf_status
+	bbit0 1,p_lpo_calibration_wait_done
+	fetch 3,core_clk_counter
+	istore 3,rega
+	increase 3,rega
+	loop p_lpo_calibration_loop
+	rtn
+p_lpo_jitter_calibration:
+	call p_lpo_aver_cal
+	call ice_break
+	branch p_lpo_var_cal
+
+p_lpo_aver_cal:
+	fetch 3,mem_ax_256
+	arg mem_ax_256+3,contr
+	arg 100,loopcnt
+p_lpo_aver_cal_loop:	
+	ifetcht 3,contr
+	iadd temp,pdata
+	loop p_lpo_aver_cal_loop
+	div pdata,100
+	call get_div_result
+	store 3,mem_pdatatemp
+	rtn
+p_lpo_var_cal:	
+	arg 100,loopcnt
+	arg mem_ax_256+3,rega
+	arg 0,regc
+p_lpo_var_cal_loop:
+	fetch 3,mem_pdatatemp
+	ifetcht 3,rega
+	isub temp,regc
+	ncall p_lpo_var_cal_check,positive
+	increase 3,rega
+	loop p_lpo_var_cal_loop
+	call ice_break
+	rtn
+p_lpo_var_cal_check:
+	
 p_main_loop:
 	ifdef SECURE_CONNECTION
 	call sp_calc_sequence_256
@@ -38,7 +96,14 @@
 	call lpm_dispatch
 	branch p_main_loop
 
-
+p_le_receive_slave:
+ 	call le_dec_init
+	enable swfine
+	fetch 2,mem_le_receive_window
+	fetcht 4,mem_le_transmit_window
+	iadd temp,timeup
+	call le_rx_setfreq
+	branch le_receive_rxon
 p_set_sync_on:
 	jam 0x60,0x8a0f 
 	jam 0xaa,0x8a10 
@@ -162,7 +227,7 @@
 p_shutter_init:
 	call enable_authrom
 	rtn wake
-
+//	jam 0,mem_lpm_mode
 	setarg 0x000e
 	store 2,mem_ble_shutter_reconn_adv_interval
 	setarg 0x00a0
Index: shutter/shutter_public/sched/1305.dat
===================================================================
--- /1121s/branch/shutter/shutter_public/sched/1305.dat	(revision 276)
+++ /1121s/branch/shutter/shutter_public/sched/1305.dat	(working copy)
@@ -9,13 +9,13 @@
 mem_lpm_hv_sel:b4
 
 mem_fcomp_div:18
-mem_xtal_c_sel:7f
+mem_xtal_c_sel:6e
 mem_gpio_wakeup_cfg:00 00 20 00 00 00 00 00 00 00 00 00
 
 mem_version:08 0e 05 03 00
 mem_le_tx2m_delay:20
 
-mem_rx_window_sniff:00 0c
+mem_rx_window_sniff:00 0e
 
 mem_gain_fix:ff	#00:soft agc; ff:hw agc
 mem_gain_table:04 00 00
Index: shutter/shutter_public/sched/fpga.dat
===================================================================
--- /1121s/branch/shutter/shutter_public/sched/fpga.dat	(revision 276)
+++ /1121s/branch/shutter/shutter_public/sched/fpga.dat	(working copy)
@@ -1,7 +1,7 @@
 mem_xtal_freq:18
 mem_le_adv_enable:01
 
-mem_rx_window_sniff:00 0e
+mem_rx_window_sniff:00 1e
 
 mem_version:08 0e 05 03 00
 
Index: shutter/shutter_public/sched/shutter.dat
===================================================================
--- /1121s/branch/shutter/shutter_public/sched/shutter.dat	(revision 276)
+++ /1121s/branch/shutter/shutter_public/sched/shutter.dat	(working copy)
@@ -4,13 +4,13 @@
 
 mem_le_lap:20 31 67 98 07 2a
 mem_le_name_len:
-'AB Shutter3
+'AB Shutter4
 
 mem_shutter_key_conf0_temp:11 ff 90 00 ff
 
 mem_shutter_soft_switch_first_power_on:00
 
-mem_tx_power:05
+mem_tx_power:06
 
 mem_shutter_dy_conf:00
 mem_shutter_discovery_time_conf:
@@ -25,3 +25,6 @@
 20 03 #mem_ble_shutter_discovery_blink_on_time
 20 03 #mem_ble_shutter_discovery_blink_off_time
 
+mem_rf_debug_rx_gpio:8788
+
+
