Index: tag/Soft/Librarier/bt_rom/format/headset.format
===================================================================
--- /YC1121E/SoftCode/MCU/tag/Soft/Librarier/bt_rom/format/headset.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/tag/Soft/Librarier/bt_rom/format/headset.format	(working copy)
@@ -89,6 +89,7 @@
 1 mem_xtal_gpio
 1 mem_adc_channel
 4 mem_hibernate_time
+4 mem_lpm_sleep_time
 
 32 mem_efuse_encryp_data
 2 mem_encryp_inital_value
Index: tag/Soft/Librarier/bt_rom/format/ui.format
===================================================================
--- /YC1121E/SoftCode/MCU/tag/Soft/Librarier/bt_rom/format/ui.format	(revision 4280)
+++ /YC1121E/SoftCode/MCU/tag/Soft/Librarier/bt_rom/format/ui.format	(working copy)
@@ -204,6 +204,7 @@
 0x26 BT_CMD_RMV_SCO_REQ
 0x2d BT_CMD_LOAD_FLASH_PARAMS
 0x2e BT_CMD_INCREASE_POWER_REQ
+0x2f BT_CMD_ENTER_LPM
 
 //user key action cmd
 0x32 BT_CMD_PLAY_PAUSE
Index: tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/BT/patch/patch.prog
===================================================================
--- /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/BT/patch/patch.prog	(revision 4313)
+++ /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/BT/patch/patch.prog	(working copy)
@@ -26,8 +26,10 @@
 	branch assert
 p_start_ext:
 	beq patch20_7,p_ipc_init
+	beq patch21_0,p_ipc_clear_mem_block
 	beq patch31_0,p_check_m0_qspi_lock_and_pause
 	beq patch31_1,p_check_m0_qspi_continue
+	beq patch3d_2,p_check_51cmd_once
 	branch assert
 	
 p_app_init:
@@ -46,6 +48,7 @@
 	rtn
 
 p_app_init_efuse_data:
+/*
 	// Load efuse data for por
 	setarg EFUSE_UCODE_BUCK_CAL
 	arg mem_temp,rega
@@ -72,6 +75,7 @@
 	arg mem_efuse_dc_offset_f6,rega
 	arg 4,temp
 	call efuse_read_data
+*/	
 
 	setarg EFUSE_UCODE_ADC_GPIO_0_5
 	arg mem_efuse_adc_offset,rega
@@ -97,36 +101,22 @@
 	branch saradc_check_gpio
 	
 p_headset_init:
-	jam 0x1c,0x1f000
-//	call ice_break
-	// Temp Code: Current CM0 load flash must work on dpll
-//	jam 0x5,0x8042
-	call p_app_init_for_power_save
 
-//	call ice_break
-//	call adc_init
 
-//	jam 0x3f,0x8093	
-	
-	setarg 0x1721
-	store 2,mem_encryp_inital_value
-	call p_efuse_custom_encryption	
-	
+	call p_app_init_for_power_save
+
 	// Must get before p_buck_setting
 	fetch 1,0x8341
-	store 1,mem_hibernate_flag
+	store 1,mem_hibernate_flag	
 
 	call p_app_init_efuse_data
 
-	call p_lpm_init
 ifdef FUNCTION_WATCH_DOG
 	call wdt_init_reset_with_start
 endif //FUNCTION_WATCH_DOG
 
-	call headset_init
-
+	call headset_init	
 
-	
 	//callback function init
 	setarg p_hp_user_evt
 	store 2,mem_cb_bb_event_process
@@ -135,25 +125,23 @@
 
 	setarg p_headset_cb_idle_process
 	store 2,mem_cb_idle_process
-	//call headset_check_reconnet
+	//call headset_check_reconnet	
 
 	setarg cb_enter_lpm
 	store 2,mem_cb_before_lpm
 	setarg cb_enter_hibernate
-	store 2,mem_cb_before_hibernate
-
-
+	store 2,mem_cb_before_hibernate 
 	
 	// Be-careful, when wake up from lpm, the gpio setting will loss, so need set again.
 	call p_set_gpio_after_lpm,wake
-
-	call enable_xip
-//	branch assert
 	nbranch wake_from_power,wake
 wake_for_lpm:
 	call ipc_lock_m0_lmp_wait_work_flag
+	call enable_xip	
 	jam BT_EVT_WAKEUP,mem_fifo_temp
-	branch ipc_tx_bt_event
+	branch ipc_tx_bt_event	
+
+
 
 p_headset_cb_idle_process:
 ifdef FUNCTION_WATCH_DOG
@@ -162,22 +150,37 @@
 	rtn
 
 wake_from_power:
+	setarg 0x1721
+	store 2,mem_encryp_inital_value
+	call p_efuse_custom_encryption	
+
+	call enable_xip
+	
 	// store local addr
 	fetch 6,mem_lap
 	store 6,mem_local_bdaddr
 
 	// Check if last is charge shutdown
 	fetch 1,mem_hibernate_flag
+	bbit0 2,p_evt_first_power_on
 	bbit1 5,p_evt_restart
 
 	jam BT_EVT_RESET,mem_fifo_temp
 	branch ipc_tx_bt_event
 
+p_evt_first_power_on:
+//	call p_lpm_charge_init_pwr_on
+//	jam BT_EVT_FIRST_PWR_ON,mem_fifo_temp
+//	branch ipc_tx_bt_event
+	rtn
 
 p_set_gpio_after_lpm:
-	jam 0x3f,core_gpio_conf+26
+//	jam 0x3f,core_gpio_conf+26
+//	call qspi_init_set
 	call qspi_gpio_init
-	nop 10000 // Delay for gpio26 work ready
+	nop 1500 // Delay for gpio26 work ready
+	call qspi_release_powerdown_flash
+	nop 100
 	rtn
 	
 
@@ -215,8 +218,16 @@
 	rtn blank
 	call p_ipc_notify_m0_wakeup_flag_init
 	call p_mram_clkon
-	branch ipc_init+5
 	
+	branch ipc_init+5
+
+p_ipc_clear_mem_block:
+	//166us
+	fetch 3,mem_param_ipc_mem_block_end_addr
+	fetcht 3,mem_param_ipc_mem_block_start_addr
+	copy temp,contw
+	isub contw,loopcnt
+	branch clear_mem_fast
 
 p_ipc_notify_m0_wakeup_flag_init:
 	jam 1,mem_wake_flag
@@ -297,7 +308,6 @@
 p_initialize_radio_cont_by_init_param:
 	call p_initialize_radio_process
 	branch init_param_cont
-
 p_initialize_radio_process:
 
 		// in efuse will enable wdt
@@ -366,7 +376,7 @@
 	store 1,rf_clkpll_int
 	set1 7,pdata
 	store 1,rf_clkpll_int
-	call adc_init
+	call adc_init	
 //	call ice_break
 	rtn
 
@@ -415,6 +425,15 @@
 
 cb_enter_lpm:
 	jam 0,mem_xlmp_clock_offset_valid
+	call qspi_powerdown_flash
+	// close gpio
+	jam 0x3f,core_gpio_conf+26
+	
+	fetcht 1,mem_xtal_gpio
+	setarg core_gpio_conf
+	iadd temp,contw
+	setarg 0x80
+	istore 1,contw	
 	branch clear_gpio_before_sleep
 
 
@@ -481,11 +500,33 @@
 	rtn
 
 p_main_loop:	
-	call app_process_idle
-	branch main_loop
+//	call app_process_idle
+	branch main_loop+1
 
 p_headset_evt_100ms_timer:
 	rtn
 p_hp_user_evt:
 	rtn
 	
+p_check_51cmd_once:
+	call ui_ipc_get_lock
+	arg mem_ipc_fifo_c512bt,rega
+	call fifo_out
+	copy pdata,temp
+	call ui_ipc_put_lock
+	copy temp,pdata
+	rtn blank
+	beq BT_CMD_ENTER_LPM,p_lpm_sleep
+	branch check_51cmd_once+8
+
+p_lpm_sleep:
+	jam MCU_STATE_LPM,mem_ipc_mcu_state
+	call ipc_check_ack0
+	fetcht 4,mem_lpm_sleep_time
+	storet 4,mem_sleep_counter
+	// wake flag for cm0 check
+	jam 0,mem_wake_flag
+	call app_will_enter_lpm
+	fetcht 4,mem_sleep_counter
+	branch lpm_sleep		
+	
Index: tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/BT/sched/patch.dat
===================================================================
--- /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/BT/sched/patch.dat	(revision 4287)
+++ /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/BT/sched/patch.dat	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
Index: tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/BT/sched/rf.dat
===================================================================
--- /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/BT/sched/rf.dat	(revision 4280)
+++ /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/BT/sched/rf.dat	(working copy)
@@ -14,7 +14,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/BT/sched/user.dat
===================================================================
--- /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/BT/sched/user.dat	(revision 4312)
+++ /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/BT/sched/user.dat	(working copy)
@@ -59,7 +59,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
Index: tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/Prj/MDK/yc11xx.uvoptx
===================================================================
--- /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/Prj/MDK/yc11xx.uvoptx	(revision 4313)
+++ /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/Prj/MDK/yc11xx.uvoptx	(working copy)
@@ -286,7 +286,7 @@
 
   <Group>
     <GroupName>startup</GroupName>
-    <tvExp>0</tvExp>
+    <tvExp>1</tvExp>
     <tvExpOptDlg>0</tvExpOptDlg>
     <cbSel>0</cbSel>
     <RteFlg>0</RteFlg>
Index: tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/Prj/MDK/yc11xx_asm.txt
===================================================================
--- /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/Prj/MDK/yc11xx_asm.txt	(revision 4313)
+++ /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/Prj/MDK/yc11xx_asm.txt	(working copy)
@@ -31,8 +31,8 @@
     Program header entries: 2
     Section header entries: 17
 
-    Program header offset: 109424 (0x0001ab70)
-    Section header offset: 109488 (0x0001abb0)
+    Program header offset: 109456 (0x0001ab90)
+    Section header offset: 109520 (0x0001abd0)
 
     Section header string table index: 16
 
@@ -46,7 +46,7 @@
 ====================================
 
 ** Program header #1 (PT_LOAD) [PF_X + PF_W + PF_R + PF_ARM_ENTRY]
-    Size : 8284 bytes (7980 bytes in file)
+    Size : 8304 bytes (8000 bytes in file)
     Virtual address: 0x00001000 (Alignment 4)
 
 
@@ -74,7 +74,7 @@
         0x00000030:    00000000    ....    DCD    0
         0x00000034:    00000000    ....    DCD    0
         0x00000038:    000000d9    ....    DCD    217
-        0x0000003c:    00001183    ....    DCD    4483
+        0x0000003c:    00001199    ....    DCD    4505
         0x00000040:    000000d9    ....    DCD    217
         0x00000044:    000000d9    ....    DCD    217
         0x00000048:    000000d9    ....    DCD    217
@@ -119,7 +119,7 @@
         0x000000ca:    4805        .H      LDR      r0,[pc,#20] ; [0xe0] = 0x1001
         0x000000cc:    4700        .G      BX       r0
     RUN_TO_MAIN
-        0x000000ce:    4805        .H      LDR      r0,[pc,#20] ; [0xe4] = 0x110d
+        0x000000ce:    4805        .H      LDR      r0,[pc,#20] ; [0xe4] = 0x1105
         0x000000d0:    4700        .G      BX       r0
     $d
         0x000000d2:    0000        ..      DCW    0
@@ -161,10 +161,10 @@
         0x000000da:    0000        ..      DCW    0
         0x000000dc:    000000d4    ....    DCD    212
         0x000000e0:    00001001    ....    DCD    4097
-        0x000000e4:    0000110d    ....    DCD    4365
+        0x000000e4:    00001105    ....    DCD    4357
 
 ** Section #2 'ER_IROM2' (SHT_PROGBITS) [SHF_ALLOC + SHF_EXECINSTR]
-    Size   : 7952 bytes (alignment 4)
+    Size   : 7972 bytes (alignment 4)
     Address: 0x00001000
 
     $t
@@ -176,7 +176,7 @@
         0x00001002:    4685        .F      MOV      sp,r0
     .ARM.Collect$$$$00000004
     _main_scatterload
-        0x00001004:    f001ff50    ..P.    BL       __scatterload ; 0x2ea8
+        0x00001004:    f001ff5a    ..Z.    BL       __scatterload ; 0x2ebc
     .ARM.Collect$$$$00000008
     .ARM.Collect$$$$0000000A
     .ARM.Collect$$$$0000000B
@@ -184,10 +184,10 @@
     _main_clock
     _main_cpp_init
     _main_init
-        0x00001008:    4800        .H      LDR      r0,[pc,#0] ; [0x100c] = 0x110d
+        0x00001008:    4800        .H      LDR      r0,[pc,#0] ; [0x100c] = 0x1105
         0x0000100a:    4700        .G      BX       r0
     $d
-        0x0000100c:    0000110d    ....    DCD    4365
+        0x0000100c:    00001105    ....    DCD    4357
     .ARM.Collect$$$$00002712
     __lit__00000000
     .ARM.Collect$$$$0000000D
@@ -200,3919 +200,3929 @@
     Bt_ActionBeforeHibernate
         0x00001014:    b510        ..      PUSH     {r4,lr}
         0x00001016:    2400        .$      MOVS     r4,#0
-        0x00001018:    e05a        Z.      B        0x10d0 ; Bt_ActionBeforeHibernate + 188
+        0x00001018:    e056        V.      B        0x10c8 ; Bt_ActionBeforeHibernate + 180
         0x0000101a:    2c1a        .,      CMP      r4,#0x1a
         0x0000101c:    d04d        M.      BEQ      0x10ba ; Bt_ActionBeforeHibernate + 166
-        0x0000101e:    485b        [H      LDR      r0,[pc,#364] ; [0x118c] = 0x10004fe0
+        0x0000101e:    4860        `H      LDR      r0,[pc,#384] ; [0x11a0] = 0x10004fe0
         0x00001020:    7fc0        ..      LDRB     r0,[r0,#0x1f]
         0x00001022:    2000        .       MOVS     r0,#0
-        0x00001024:    495a        ZI      LDR      r1,[pc,#360] ; [0x1190] = 0x10004340
+        0x00001024:    495f        _I      LDR      r1,[pc,#380] ; [0x11a4] = 0x10004340
         0x00001026:    7989        .y      LDRB     r1,[r1,#6]
         0x00001028:    4300        .C      ORRS     r0,r0,r0
-        0x0000102a:    4959        YI      LDR      r1,[pc,#356] ; [0x1190] = 0x10004340
+        0x0000102a:    495e        ^I      LDR      r1,[pc,#376] ; [0x11a4] = 0x10004340
         0x0000102c:    7989        .y      LDRB     r1,[r1,#6]
         0x0000102e:    4308        .C      ORRS     r0,r0,r1
         0x00001030:    06c0        ..      LSLS     r0,r0,#27
         0x00001032:    0ec0        ..      LSRS     r0,r0,#27
         0x00001034:    42a0        .B      CMP      r0,r4
         0x00001036:    d040        @.      BEQ      0x10ba ; Bt_ActionBeforeHibernate + 166
-        0x00001038:    4854        TH      LDR      r0,[pc,#336] ; [0x118c] = 0x10004fe0
+        0x00001038:    4859        YH      LDR      r0,[pc,#356] ; [0x11a0] = 0x10004fe0
         0x0000103a:    7fc0        ..      LDRB     r0,[r0,#0x1f]
         0x0000103c:    2000        .       MOVS     r0,#0
-        0x0000103e:    4954        TI      LDR      r1,[pc,#336] ; [0x1190] = 0x10004340
+        0x0000103e:    4959        YI      LDR      r1,[pc,#356] ; [0x11a4] = 0x10004340
         0x00001040:    79c9        .y      LDRB     r1,[r1,#7]
         0x00001042:    4300        .C      ORRS     r0,r0,r0
-        0x00001044:    4952        RI      LDR      r1,[pc,#328] ; [0x1190] = 0x10004340
+        0x00001044:    4957        WI      LDR      r1,[pc,#348] ; [0x11a4] = 0x10004340
         0x00001046:    79c9        .y      LDRB     r1,[r1,#7]
         0x00001048:    4308        .C      ORRS     r0,r0,r1
         0x0000104a:    06c0        ..      LSLS     r0,r0,#27
         0x0000104c:    0ec0        ..      LSRS     r0,r0,#27
         0x0000104e:    42a0        .B      CMP      r0,r4
         0x00001050:    d033        3.      BEQ      0x10ba ; Bt_ActionBeforeHibernate + 166
-        0x00001052:    484e        NH      LDR      r0,[pc,#312] ; [0x118c] = 0x10004fe0
+        0x00001052:    4853        SH      LDR      r0,[pc,#332] ; [0x11a0] = 0x10004fe0
         0x00001054:    7fc0        ..      LDRB     r0,[r0,#0x1f]
         0x00001056:    2000        .       MOVS     r0,#0
-        0x00001058:    494d        MI      LDR      r1,[pc,#308] ; [0x1190] = 0x10004340
+        0x00001058:    4952        RI      LDR      r1,[pc,#328] ; [0x11a4] = 0x10004340
         0x0000105a:    7a09        .z      LDRB     r1,[r1,#8]
         0x0000105c:    4300        .C      ORRS     r0,r0,r0
-        0x0000105e:    494c        LI      LDR      r1,[pc,#304] ; [0x1190] = 0x10004340
+        0x0000105e:    4951        QI      LDR      r1,[pc,#324] ; [0x11a4] = 0x10004340
         0x00001060:    7a09        .z      LDRB     r1,[r1,#8]
         0x00001062:    4308        .C      ORRS     r0,r0,r1
         0x00001064:    06c0        ..      LSLS     r0,r0,#27
         0x00001066:    0ec0        ..      LSRS     r0,r0,#27
         0x00001068:    42a0        .B      CMP      r0,r4
         0x0000106a:    d026        &.      BEQ      0x10ba ; Bt_ActionBeforeHibernate + 166
-        0x0000106c:    4847        GH      LDR      r0,[pc,#284] ; [0x118c] = 0x10004fe0
+        0x0000106c:    484c        LH      LDR      r0,[pc,#304] ; [0x11a0] = 0x10004fe0
         0x0000106e:    7fc0        ..      LDRB     r0,[r0,#0x1f]
         0x00001070:    2000        .       MOVS     r0,#0
-        0x00001072:    4947        GI      LDR      r1,[pc,#284] ; [0x1190] = 0x10004340
+        0x00001072:    494c        LI      LDR      r1,[pc,#304] ; [0x11a4] = 0x10004340
         0x00001074:    7a49        Iz      LDRB     r1,[r1,#9]
         0x00001076:    4300        .C      ORRS     r0,r0,r0
-        0x00001078:    4945        EI      LDR      r1,[pc,#276] ; [0x1190] = 0x10004340
+        0x00001078:    494a        JI      LDR      r1,[pc,#296] ; [0x11a4] = 0x10004340
         0x0000107a:    7a49        Iz      LDRB     r1,[r1,#9]
         0x0000107c:    4308        .C      ORRS     r0,r0,r1
         0x0000107e:    06c0        ..      LSLS     r0,r0,#27
         0x00001080:    0ec0        ..      LSRS     r0,r0,#27
         0x00001082:    42a0        .B      CMP      r0,r4
         0x00001084:    d019        ..      BEQ      0x10ba ; Bt_ActionBeforeHibernate + 166
-        0x00001086:    4841        AH      LDR      r0,[pc,#260] ; [0x118c] = 0x10004fe0
+        0x00001086:    4846        FH      LDR      r0,[pc,#280] ; [0x11a0] = 0x10004fe0
         0x00001088:    7fc0        ..      LDRB     r0,[r0,#0x1f]
         0x0000108a:    2000        .       MOVS     r0,#0
-        0x0000108c:    4940        @I      LDR      r1,[pc,#256] ; [0x1190] = 0x10004340
+        0x0000108c:    4945        EI      LDR      r1,[pc,#276] ; [0x11a4] = 0x10004340
         0x0000108e:    7a89        .z      LDRB     r1,[r1,#0xa]
         0x00001090:    4300        .C      ORRS     r0,r0,r0
-        0x00001092:    493f        ?I      LDR      r1,[pc,#252] ; [0x1190] = 0x10004340
+        0x00001092:    4944        DI      LDR      r1,[pc,#272] ; [0x11a4] = 0x10004340
         0x00001094:    7a89        .z      LDRB     r1,[r1,#0xa]
         0x00001096:    4308        .C      ORRS     r0,r0,r1
         0x00001098:    06c0        ..      LSLS     r0,r0,#27
         0x0000109a:    0ec0        ..      LSRS     r0,r0,#27
         0x0000109c:    42a0        .B      CMP      r0,r4
         0x0000109e:    d00c        ..      BEQ      0x10ba ; Bt_ActionBeforeHibernate + 166
-        0x000010a0:    483a        :H      LDR      r0,[pc,#232] ; [0x118c] = 0x10004fe0
+        0x000010a0:    483f        ?H      LDR      r0,[pc,#252] ; [0x11a0] = 0x10004fe0
         0x000010a2:    7fc0        ..      LDRB     r0,[r0,#0x1f]
         0x000010a4:    2000        .       MOVS     r0,#0
-        0x000010a6:    493a        :I      LDR      r1,[pc,#232] ; [0x1190] = 0x10004340
+        0x000010a6:    493f        ?I      LDR      r1,[pc,#252] ; [0x11a4] = 0x10004340
         0x000010a8:    7ac9        .z      LDRB     r1,[r1,#0xb]
         0x000010aa:    4300        .C      ORRS     r0,r0,r0
-        0x000010ac:    4938        8I      LDR      r1,[pc,#224] ; [0x1190] = 0x10004340
+        0x000010ac:    493d        =I      LDR      r1,[pc,#244] ; [0x11a4] = 0x10004340
         0x000010ae:    7ac9        .z      LDRB     r1,[r1,#0xb]
         0x000010b0:    4308        .C      ORRS     r0,r0,r1
         0x000010b2:    06c0        ..      LSLS     r0,r0,#27
         0x000010b4:    0ec0        ..      LSRS     r0,r0,#27
         0x000010b6:    42a0        .B      CMP      r0,r4
         0x000010b8:    d100        ..      BNE      0x10bc ; Bt_ActionBeforeHibernate + 168
-        0x000010ba:    e007        ..      B        0x10cc ; Bt_ActionBeforeHibernate + 184
-        0x000010bc:    2180        .!      MOVS     r1,#0x80
-        0x000010be:    4620         F      MOV      r0,r4
-        0x000010c0:    f000fa53    ..S.    BL       GPIO_SetGpioMultFunction ; 0x156a
-        0x000010c4:    4620         F      MOV      r0,r4
-        0x000010c6:    f000f9ef    ....    BL       GPIO_ClearWakeup ; 0x14a8
-        0x000010ca:    bf00        ..      NOP      
-        0x000010cc:    1c60        `.      ADDS     r0,r4,#1
-        0x000010ce:    b2c4        ..      UXTB     r4,r0
-        0x000010d0:    2c28        (,      CMP      r4,#0x28
-        0x000010d2:    dba2        ..      BLT      0x101a ; Bt_ActionBeforeHibernate + 6
-        0x000010d4:    bd10        ..      POP      {r4,pc}
+        0x000010ba:    e003        ..      B        0x10c4 ; Bt_ActionBeforeHibernate + 176
+        0x000010bc:    4620         F      MOV      r0,r4
+        0x000010be:    f000f9fd    ....    BL       GPIO_ClearWakeup ; 0x14bc
+        0x000010c2:    bf00        ..      NOP      
+        0x000010c4:    1c60        `.      ADDS     r0,r4,#1
+        0x000010c6:    b2c4        ..      UXTB     r4,r0
+        0x000010c8:    2c28        (,      CMP      r4,#0x28
+        0x000010ca:    dba6        ..      BLT      0x101a ; Bt_ActionBeforeHibernate + 6
+        0x000010cc:    bd10        ..      POP      {r4,pc}
     delay_us
-        0x000010d6:    2100        .!      MOVS     r1,#0
-        0x000010d8:    e005        ..      B        0x10e6 ; delay_us + 16
-        0x000010da:    2200        ."      MOVS     r2,#0
-        0x000010dc:    e000        ..      B        0x10e0 ; delay_us + 10
-        0x000010de:    1c52        R.      ADDS     r2,r2,#1
-        0x000010e0:    2a6e        n*      CMP      r2,#0x6e
-        0x000010e2:    dbfc        ..      BLT      0x10de ; delay_us + 8
-        0x000010e4:    1c49        I.      ADDS     r1,r1,#1
-        0x000010e6:    4281        .B      CMP      r1,r0
-        0x000010e8:    dbf7        ..      BLT      0x10da ; delay_us + 4
-        0x000010ea:    4770        pG      BX       lr
+        0x000010ce:    2100        .!      MOVS     r1,#0
+        0x000010d0:    e005        ..      B        0x10de ; delay_us + 16
+        0x000010d2:    2200        ."      MOVS     r2,#0
+        0x000010d4:    e000        ..      B        0x10d8 ; delay_us + 10
+        0x000010d6:    1c52        R.      ADDS     r2,r2,#1
+        0x000010d8:    2a6e        n*      CMP      r2,#0x6e
+        0x000010da:    dbfc        ..      BLT      0x10d6 ; delay_us + 8
+        0x000010dc:    1c49        I.      ADDS     r1,r1,#1
+        0x000010de:    4281        .B      CMP      r1,r0
+        0x000010e0:    dbf7        ..      BLT      0x10d2 ; delay_us + 4
+        0x000010e2:    4770        pG      BX       lr
     delay_ms
-        0x000010ec:    b510        ..      PUSH     {r4,lr}
-        0x000010ee:    4604        .F      MOV      r4,r0
-        0x000010f0:    217d        }!      MOVS     r1,#0x7d
-        0x000010f2:    00c9        ..      LSLS     r1,r1,#3
-        0x000010f4:    4361        aC      MULS     r1,r4,r1
-        0x000010f6:    4608        .F      MOV      r0,r1
-        0x000010f8:    f7ffffed    ....    BL       delay_us ; 0x10d6
-        0x000010fc:    bd10        ..      POP      {r4,pc}
+        0x000010e4:    b510        ..      PUSH     {r4,lr}
+        0x000010e6:    4604        .F      MOV      r4,r0
+        0x000010e8:    217d        }!      MOVS     r1,#0x7d
+        0x000010ea:    00c9        ..      LSLS     r1,r1,#3
+        0x000010ec:    4361        aC      MULS     r1,r4,r1
+        0x000010ee:    4608        .F      MOV      r0,r1
+        0x000010f0:    f7ffffed    ....    BL       delay_us ; 0x10ce
+        0x000010f4:    bd10        ..      POP      {r4,pc}
     changedpll
-        0x000010fe:    bf00        ..      NOP      
-        0x00001100:    2005        .       MOVS     r0,#5
-        0x00001102:    4924        $I      LDR      r1,[pc,#144] ; [0x1194] = 0x10008040
-        0x00001104:    7088        .p      STRB     r0,[r1,#2]
-        0x00001106:    7088        .p      STRB     r0,[r1,#2]
-        0x00001108:    bf00        ..      NOP      
-        0x0000110a:    4770        pG      BX       lr
+        0x000010f6:    bf00        ..      NOP      
+        0x000010f8:    2005        .       MOVS     r0,#5
+        0x000010fa:    492b        +I      LDR      r1,[pc,#172] ; [0x11a8] = 0x10008040
+        0x000010fc:    7088        .p      STRB     r0,[r1,#2]
+        0x000010fe:    7088        .p      STRB     r0,[r1,#2]
+        0x00001100:    bf00        ..      NOP      
+        0x00001102:    4770        pG      BX       lr
     main
-        0x0000110c:    bf00        ..      NOP      
-        0x0000110e:    bf00        ..      NOP      
-        0x00001110:    20ff        .       MOVS     r0,#0xff
-        0x00001112:    4921        !I      LDR      r1,[pc,#132] ; [0x1198] = 0x10004ee0
-        0x00001114:    72c8        .r      STRB     r0,[r1,#0xb]
-        0x00001116:    72c8        .r      STRB     r0,[r1,#0xb]
-        0x00001118:    bf00        ..      NOP      
+        0x00001104:    bf00        ..      NOP      
+        0x00001106:    bf00        ..      NOP      
+        0x00001108:    2000        .       MOVS     r0,#0
+        0x0000110a:    4928        (I      LDR      r1,[pc,#160] ; [0x11ac] = 0x10004ee0
+        0x0000110c:    73c8        .s      STRB     r0,[r1,#0xf]
+        0x0000110e:    73c8        .s      STRB     r0,[r1,#0xf]
+        0x00001110:    bf00        ..      NOP      
+        0x00001112:    bf00        ..      NOP      
+        0x00001114:    2019        .       MOVS     r0,#0x19
+        0x00001116:    7408        .t      STRB     r0,[r1,#0x10]
+        0x00001118:    7408        .t      STRB     r0,[r1,#0x10]
         0x0000111a:    bf00        ..      NOP      
-        0x0000111c:    7308        .s      STRB     r0,[r1,#0xc]
-        0x0000111e:    7308        .s      STRB     r0,[r1,#0xc]
-        0x00001120:    bf00        ..      NOP      
-        0x00001122:    bf00        ..      NOP      
-        0x00001124:    7348        Hs      STRB     r0,[r1,#0xd]
-        0x00001126:    7348        Hs      STRB     r0,[r1,#0xd]
-        0x00001128:    bf00        ..      NOP      
-        0x0000112a:    bf00        ..      NOP      
-        0x0000112c:    7388        .s      STRB     r0,[r1,#0xe]
-        0x0000112e:    7388        .s      STRB     r0,[r1,#0xe]
-        0x00001130:    bf00        ..      NOP      
-        0x00001132:    bf00        ..      NOP      
-        0x00001134:    2019        .       MOVS     r0,#0x19
-        0x00001136:    f001fc6b    ..k.    BL       IPC_TxControlCmd ; 0x2a10
-        0x0000113a:    e01f        ..      B        0x117c ; main + 112
-        0x0000113c:    4813        .H      LDR      r0,[pc,#76] ; [0x118c] = 0x10004fe0
-        0x0000113e:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00001140:    2000        .       MOVS     r0,#0
-        0x00001142:    4913        .I      LDR      r1,[pc,#76] ; [0x1190] = 0x10004340
-        0x00001144:    3180        .1      ADDS     r1,r1,#0x80
-        0x00001146:    7f49        I.      LDRB     r1,[r1,#0x1d]
-        0x00001148:    4300        .C      ORRS     r0,r0,r0
-        0x0000114a:    4911        .I      LDR      r1,[pc,#68] ; [0x1190] = 0x10004340
-        0x0000114c:    3180        .1      ADDS     r1,r1,#0x80
-        0x0000114e:    7f49        I.      LDRB     r1,[r1,#0x1d]
-        0x00001150:    4308        .C      ORRS     r0,r0,r1
-        0x00001152:    2800        .(      CMP      r0,#0
-        0x00001154:    d004        ..      BEQ      0x1160 ; main + 84
-        0x00001156:    2801        .(      CMP      r0,#1
-        0x00001158:    d003        ..      BEQ      0x1162 ; main + 86
+        0x0000111c:    bf00        ..      NOP      
+        0x0000111e:    2000        .       MOVS     r0,#0
+        0x00001120:    7448        Ht      STRB     r0,[r1,#0x11]
+        0x00001122:    7448        Ht      STRB     r0,[r1,#0x11]
+        0x00001124:    bf00        ..      NOP      
+        0x00001126:    bf00        ..      NOP      
+        0x00001128:    7488        .t      STRB     r0,[r1,#0x12]
+        0x0000112a:    7488        .t      STRB     r0,[r1,#0x12]
+        0x0000112c:    bf00        ..      NOP      
+        0x0000112e:    bf00        ..      NOP      
+        0x00001130:    202f        /       MOVS     r0,#0x2f
+        0x00001132:    f001fc77    ..w.    BL       IPC_TxControlCmd ; 0x2a24
+        0x00001136:    e02c        ,.      B        0x1192 ; main + 142
+        0x00001138:    4819        .H      LDR      r0,[pc,#100] ; [0x11a0] = 0x10004fe0
+        0x0000113a:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x0000113c:    2000        .       MOVS     r0,#0
+        0x0000113e:    4919        .I      LDR      r1,[pc,#100] ; [0x11a4] = 0x10004340
+        0x00001140:    3180        .1      ADDS     r1,r1,#0x80
+        0x00001142:    7f49        I.      LDRB     r1,[r1,#0x1d]
+        0x00001144:    4300        .C      ORRS     r0,r0,r0
+        0x00001146:    4917        .I      LDR      r1,[pc,#92] ; [0x11a4] = 0x10004340
+        0x00001148:    3180        .1      ADDS     r1,r1,#0x80
+        0x0000114a:    7f49        I.      LDRB     r1,[r1,#0x1d]
+        0x0000114c:    4308        .C      ORRS     r0,r0,r1
+        0x0000114e:    2800        .(      CMP      r0,#0
+        0x00001150:    d006        ..      BEQ      0x1160 ; main + 92
+        0x00001152:    2801        .(      CMP      r0,#1
+        0x00001154:    d010        ..      BEQ      0x1178 ; main + 116
+        0x00001156:    2802        .(      CMP      r0,#2
+        0x00001158:    d003        ..      BEQ      0x1162 ; main + 94
         0x0000115a:    2803        .(      CMP      r0,#3
-        0x0000115c:    d10d        ..      BNE      0x117a ; main + 110
-        0x0000115e:    e00b        ..      B        0x1178 ; main + 108
-        0x00001160:    e00b        ..      B        0x117a ; main + 110
+        0x0000115c:    d118        ..      BNE      0x1190 ; main + 140
+        0x0000115e:    e016        ..      B        0x118e ; main + 138
+        0x00001160:    e016        ..      B        0x1190 ; main + 140
         0x00001162:    b672        r.      CPSID    i
         0x00001164:    f7ffff56    ..V.    BL       Bt_ActionBeforeHibernate ; 0x1014
         0x00001168:    bf00        ..      NOP      
         0x0000116a:    2003        .       MOVS     r0,#3
-        0x0000116c:    4908        .I      LDR      r1,[pc,#32] ; [0x1190] = 0x10004340
+        0x0000116c:    490d        .I      LDR      r1,[pc,#52] ; [0x11a4] = 0x10004340
         0x0000116e:    3180        .1      ADDS     r1,r1,#0x80
         0x00001170:    7748        Hw      STRB     r0,[r1,#0x1d]
         0x00001172:    7748        Hw      STRB     r0,[r1,#0x1d]
         0x00001174:    bf00        ..      NOP      
-        0x00001176:    e000        ..      B        0x117a ; main + 110
-        0x00001178:    bf00        ..      NOP      
-        0x0000117a:    bf00        ..      NOP      
-        0x0000117c:    e7de        ..      B        0x113c ; main + 48
-    _assert_handler
+        0x00001176:    e00b        ..      B        0x1190 ; main + 140
+        0x00001178:    b672        r.      CPSID    i
+        0x0000117a:    f7ffff4b    ..K.    BL       Bt_ActionBeforeHibernate ; 0x1014
         0x0000117e:    bf00        ..      NOP      
-        0x00001180:    e7fe        ..      B        0x1180 ; _assert_handler + 2
+        0x00001180:    2003        .       MOVS     r0,#3
+        0x00001182:    4908        .I      LDR      r1,[pc,#32] ; [0x11a4] = 0x10004340
+        0x00001184:    3180        .1      ADDS     r1,r1,#0x80
+        0x00001186:    7748        Hw      STRB     r0,[r1,#0x1d]
+        0x00001188:    7748        Hw      STRB     r0,[r1,#0x1d]
+        0x0000118a:    bf00        ..      NOP      
+        0x0000118c:    e000        ..      B        0x1190 ; main + 140
+        0x0000118e:    bf00        ..      NOP      
+        0x00001190:    bf00        ..      NOP      
+        0x00001192:    e7d1        ..      B        0x1138 ; main + 52
+    _assert_handler
+        0x00001194:    bf00        ..      NOP      
+        0x00001196:    e7fe        ..      B        0x1196 ; _assert_handler + 2
     SysTick_Handler
-        0x00001182:    b510        ..      PUSH     {r4,lr}
-        0x00001184:    f000ff8f    ....    BL       SYStick_handle ; 0x20a6
-        0x00001188:    bd10        ..      POP      {r4,pc}
+        0x00001198:    b510        ..      PUSH     {r4,lr}
+        0x0000119a:    f000ff8e    ....    BL       SYStick_handle ; 0x20ba
+        0x0000119e:    bd10        ..      POP      {r4,pc}
     $d
-        0x0000118a:    0000        ..      DCW    0
-        0x0000118c:    10004fe0    .O..    DCD    268455904
-        0x00001190:    10004340    @C..    DCD    268452672
-        0x00001194:    10008040    @...    DCD    268468288
-        0x00001198:    10004ee0    .N..    DCD    268455648
+        0x000011a0:    10004fe0    .O..    DCD    268455904
+        0x000011a4:    10004340    @C..    DCD    268452672
+        0x000011a8:    10008040    @...    DCD    268468288
+        0x000011ac:    10004ee0    .N..    DCD    268455648
     $t
     .text
     GPIO_SetOut
-        0x0000119c:    b570        p.      PUSH     {r4-r6,lr}
-        0x0000119e:    4604        .F      MOV      r4,r0
-        0x000011a0:    460d        .F      MOV      r5,r1
-        0x000011a2:    f000fd4d    ..M.    BL       hw_delay ; 0x1c40
-        0x000011a6:    2c28        (,      CMP      r4,#0x28
-        0x000011a8:    d100        ..      BNE      0x11ac ; GPIO_SetOut + 16
-        0x000011aa:    bd70        p.      POP      {r4-r6,pc}
-        0x000011ac:    2080        .       MOVS     r0,#0x80
-        0x000011ae:    4020         @      ANDS     r0,r0,r4
-        0x000011b0:    2800        .(      CMP      r0,#0
-        0x000011b2:    d023        #.      BEQ      0x11fc ; GPIO_SetOut + 96
-        0x000011b4:    2d00        .-      CMP      r5,#0
-        0x000011b6:    d010        ..      BEQ      0x11da ; GPIO_SetOut + 62
-        0x000011b8:    bf00        ..      NOP      
-        0x000011ba:    203f        ?       MOVS     r0,#0x3f
-        0x000011bc:    06e1        ..      LSLS     r1,r4,#27
-        0x000011be:    0ec9        ..      LSRS     r1,r1,#27
-        0x000011c0:    4afb        .J      LDR      r2,[pc,#1004] ; [0x15b0] = 0x8080
-        0x000011c2:    1889        ..      ADDS     r1,r1,r2
-        0x000011c4:    0552        R.      LSLS     r2,r2,#21
-        0x000011c6:    1889        ..      ADDS     r1,r1,r2
-        0x000011c8:    7008        .p      STRB     r0,[r1,#0]
-        0x000011ca:    06e1        ..      LSLS     r1,r4,#27
-        0x000011cc:    0ec9        ..      LSRS     r1,r1,#27
-        0x000011ce:    4af8        .J      LDR      r2,[pc,#992] ; [0x15b0] = 0x8080
-        0x000011d0:    1889        ..      ADDS     r1,r1,r2
-        0x000011d2:    0552        R.      LSLS     r2,r2,#21
-        0x000011d4:    1889        ..      ADDS     r1,r1,r2
-        0x000011d6:    7008        .p      STRB     r0,[r1,#0]
-        0x000011d8:    e02c        ,.      B        0x1234 ; GPIO_SetOut + 152
-        0x000011da:    bf00        ..      NOP      
-        0x000011dc:    203e        >       MOVS     r0,#0x3e
+        0x000011b0:    b570        p.      PUSH     {r4-r6,lr}
+        0x000011b2:    4604        .F      MOV      r4,r0
+        0x000011b4:    460d        .F      MOV      r5,r1
+        0x000011b6:    f000fd4d    ..M.    BL       hw_delay ; 0x1c54
+        0x000011ba:    2c28        (,      CMP      r4,#0x28
+        0x000011bc:    d100        ..      BNE      0x11c0 ; GPIO_SetOut + 16
+        0x000011be:    bd70        p.      POP      {r4-r6,pc}
+        0x000011c0:    2080        .       MOVS     r0,#0x80
+        0x000011c2:    4020         @      ANDS     r0,r0,r4
+        0x000011c4:    2800        .(      CMP      r0,#0
+        0x000011c6:    d023        #.      BEQ      0x1210 ; GPIO_SetOut + 96
+        0x000011c8:    2d00        .-      CMP      r5,#0
+        0x000011ca:    d010        ..      BEQ      0x11ee ; GPIO_SetOut + 62
+        0x000011cc:    bf00        ..      NOP      
+        0x000011ce:    203f        ?       MOVS     r0,#0x3f
+        0x000011d0:    06e1        ..      LSLS     r1,r4,#27
+        0x000011d2:    0ec9        ..      LSRS     r1,r1,#27
+        0x000011d4:    4afb        .J      LDR      r2,[pc,#1004] ; [0x15c4] = 0x8080
+        0x000011d6:    1889        ..      ADDS     r1,r1,r2
+        0x000011d8:    0552        R.      LSLS     r2,r2,#21
+        0x000011da:    1889        ..      ADDS     r1,r1,r2
+        0x000011dc:    7008        .p      STRB     r0,[r1,#0]
         0x000011de:    06e1        ..      LSLS     r1,r4,#27
         0x000011e0:    0ec9        ..      LSRS     r1,r1,#27
-        0x000011e2:    4af3        .J      LDR      r2,[pc,#972] ; [0x15b0] = 0x8080
+        0x000011e2:    4af8        .J      LDR      r2,[pc,#992] ; [0x15c4] = 0x8080
         0x000011e4:    1889        ..      ADDS     r1,r1,r2
         0x000011e6:    0552        R.      LSLS     r2,r2,#21
         0x000011e8:    1889        ..      ADDS     r1,r1,r2
         0x000011ea:    7008        .p      STRB     r0,[r1,#0]
-        0x000011ec:    06e1        ..      LSLS     r1,r4,#27
-        0x000011ee:    0ec9        ..      LSRS     r1,r1,#27
-        0x000011f0:    4aef        .J      LDR      r2,[pc,#956] ; [0x15b0] = 0x8080
-        0x000011f2:    1889        ..      ADDS     r1,r1,r2
-        0x000011f4:    0552        R.      LSLS     r2,r2,#21
-        0x000011f6:    1889        ..      ADDS     r1,r1,r2
-        0x000011f8:    7008        .p      STRB     r0,[r1,#0]
-        0x000011fa:    e01b        ..      B        0x1234 ; GPIO_SetOut + 152
-        0x000011fc:    2d00        .-      CMP      r5,#0
-        0x000011fe:    d00c        ..      BEQ      0x121a ; GPIO_SetOut + 126
-        0x00001200:    bf00        ..      NOP      
-        0x00001202:    203e        >       MOVS     r0,#0x3e
-        0x00001204:    49ea        .I      LDR      r1,[pc,#936] ; [0x15b0] = 0x8080
-        0x00001206:    1861        a.      ADDS     r1,r4,r1
-        0x00001208:    2201        ."      MOVS     r2,#1
-        0x0000120a:    0712        ..      LSLS     r2,r2,#28
-        0x0000120c:    1889        ..      ADDS     r1,r1,r2
-        0x0000120e:    7008        .p      STRB     r0,[r1,#0]
-        0x00001210:    49e7        .I      LDR      r1,[pc,#924] ; [0x15b0] = 0x8080
-        0x00001212:    1861        a.      ADDS     r1,r4,r1
-        0x00001214:    1889        ..      ADDS     r1,r1,r2
-        0x00001216:    7008        .p      STRB     r0,[r1,#0]
-        0x00001218:    e00c        ..      B        0x1234 ; GPIO_SetOut + 152
-        0x0000121a:    bf00        ..      NOP      
-        0x0000121c:    203f        ?       MOVS     r0,#0x3f
-        0x0000121e:    49e4        .I      LDR      r1,[pc,#912] ; [0x15b0] = 0x8080
-        0x00001220:    1861        a.      ADDS     r1,r4,r1
-        0x00001222:    2201        ."      MOVS     r2,#1
-        0x00001224:    0712        ..      LSLS     r2,r2,#28
-        0x00001226:    1889        ..      ADDS     r1,r1,r2
-        0x00001228:    7008        .p      STRB     r0,[r1,#0]
-        0x0000122a:    49e1        .I      LDR      r1,[pc,#900] ; [0x15b0] = 0x8080
-        0x0000122c:    1861        a.      ADDS     r1,r4,r1
-        0x0000122e:    1889        ..      ADDS     r1,r1,r2
-        0x00001230:    7008        .p      STRB     r0,[r1,#0]
-        0x00001232:    bf00        ..      NOP      
-        0x00001234:    f000fd04    ....    BL       hw_delay ; 0x1c40
-        0x00001238:    bf00        ..      NOP      
-        0x0000123a:    e7b6        ..      B        0x11aa ; GPIO_SetOut + 14
+        0x000011ec:    e02c        ,.      B        0x1248 ; GPIO_SetOut + 152
+        0x000011ee:    bf00        ..      NOP      
+        0x000011f0:    203e        >       MOVS     r0,#0x3e
+        0x000011f2:    06e1        ..      LSLS     r1,r4,#27
+        0x000011f4:    0ec9        ..      LSRS     r1,r1,#27
+        0x000011f6:    4af3        .J      LDR      r2,[pc,#972] ; [0x15c4] = 0x8080
+        0x000011f8:    1889        ..      ADDS     r1,r1,r2
+        0x000011fa:    0552        R.      LSLS     r2,r2,#21
+        0x000011fc:    1889        ..      ADDS     r1,r1,r2
+        0x000011fe:    7008        .p      STRB     r0,[r1,#0]
+        0x00001200:    06e1        ..      LSLS     r1,r4,#27
+        0x00001202:    0ec9        ..      LSRS     r1,r1,#27
+        0x00001204:    4aef        .J      LDR      r2,[pc,#956] ; [0x15c4] = 0x8080
+        0x00001206:    1889        ..      ADDS     r1,r1,r2
+        0x00001208:    0552        R.      LSLS     r2,r2,#21
+        0x0000120a:    1889        ..      ADDS     r1,r1,r2
+        0x0000120c:    7008        .p      STRB     r0,[r1,#0]
+        0x0000120e:    e01b        ..      B        0x1248 ; GPIO_SetOut + 152
+        0x00001210:    2d00        .-      CMP      r5,#0
+        0x00001212:    d00c        ..      BEQ      0x122e ; GPIO_SetOut + 126
+        0x00001214:    bf00        ..      NOP      
+        0x00001216:    203e        >       MOVS     r0,#0x3e
+        0x00001218:    49ea        .I      LDR      r1,[pc,#936] ; [0x15c4] = 0x8080
+        0x0000121a:    1861        a.      ADDS     r1,r4,r1
+        0x0000121c:    2201        ."      MOVS     r2,#1
+        0x0000121e:    0712        ..      LSLS     r2,r2,#28
+        0x00001220:    1889        ..      ADDS     r1,r1,r2
+        0x00001222:    7008        .p      STRB     r0,[r1,#0]
+        0x00001224:    49e7        .I      LDR      r1,[pc,#924] ; [0x15c4] = 0x8080
+        0x00001226:    1861        a.      ADDS     r1,r4,r1
+        0x00001228:    1889        ..      ADDS     r1,r1,r2
+        0x0000122a:    7008        .p      STRB     r0,[r1,#0]
+        0x0000122c:    e00c        ..      B        0x1248 ; GPIO_SetOut + 152
+        0x0000122e:    bf00        ..      NOP      
+        0x00001230:    203f        ?       MOVS     r0,#0x3f
+        0x00001232:    49e4        .I      LDR      r1,[pc,#912] ; [0x15c4] = 0x8080
+        0x00001234:    1861        a.      ADDS     r1,r4,r1
+        0x00001236:    2201        ."      MOVS     r2,#1
+        0x00001238:    0712        ..      LSLS     r2,r2,#28
+        0x0000123a:    1889        ..      ADDS     r1,r1,r2
+        0x0000123c:    7008        .p      STRB     r0,[r1,#0]
+        0x0000123e:    49e1        .I      LDR      r1,[pc,#900] ; [0x15c4] = 0x8080
+        0x00001240:    1861        a.      ADDS     r1,r4,r1
+        0x00001242:    1889        ..      ADDS     r1,r1,r2
+        0x00001244:    7008        .p      STRB     r0,[r1,#0]
+        0x00001246:    bf00        ..      NOP      
+        0x00001248:    f000fd04    ....    BL       hw_delay ; 0x1c54
+        0x0000124c:    bf00        ..      NOP      
+        0x0000124e:    e7b6        ..      B        0x11be ; GPIO_SetOut + 14
     GPIO_SetInput
-        0x0000123c:    b510        ..      PUSH     {r4,lr}
-        0x0000123e:    4604        .F      MOV      r4,r0
-        0x00001240:    f000fcfe    ....    BL       hw_delay ; 0x1c40
-        0x00001244:    2c28        (,      CMP      r4,#0x28
-        0x00001246:    d100        ..      BNE      0x124a ; GPIO_SetInput + 14
-        0x00001248:    bd10        ..      POP      {r4,pc}
-        0x0000124a:    2080        .       MOVS     r0,#0x80
-        0x0000124c:    4020         @      ANDS     r0,r0,r4
-        0x0000124e:    2800        .(      CMP      r0,#0
-        0x00001250:    d010        ..      BEQ      0x1274 ; GPIO_SetInput + 56
-        0x00001252:    bf00        ..      NOP      
-        0x00001254:    2080        .       MOVS     r0,#0x80
-        0x00001256:    06e1        ..      LSLS     r1,r4,#27
-        0x00001258:    0ec9        ..      LSRS     r1,r1,#27
-        0x0000125a:    4ad5        .J      LDR      r2,[pc,#852] ; [0x15b0] = 0x8080
-        0x0000125c:    1889        ..      ADDS     r1,r1,r2
-        0x0000125e:    0542        B.      LSLS     r2,r0,#21
-        0x00001260:    1889        ..      ADDS     r1,r1,r2
-        0x00001262:    7008        .p      STRB     r0,[r1,#0]
-        0x00001264:    06e1        ..      LSLS     r1,r4,#27
-        0x00001266:    0ec9        ..      LSRS     r1,r1,#27
-        0x00001268:    4ad1        .J      LDR      r2,[pc,#836] ; [0x15b0] = 0x8080
-        0x0000126a:    1889        ..      ADDS     r1,r1,r2
-        0x0000126c:    0542        B.      LSLS     r2,r0,#21
-        0x0000126e:    1889        ..      ADDS     r1,r1,r2
-        0x00001270:    7008        .p      STRB     r0,[r1,#0]
-        0x00001272:    e00b        ..      B        0x128c ; GPIO_SetInput + 80
-        0x00001274:    bf00        ..      NOP      
-        0x00001276:    2040        @       MOVS     r0,#0x40
-        0x00001278:    49cd        .I      LDR      r1,[pc,#820] ; [0x15b0] = 0x8080
-        0x0000127a:    1861        a.      ADDS     r1,r4,r1
-        0x0000127c:    0582        ..      LSLS     r2,r0,#22
+        0x00001250:    b510        ..      PUSH     {r4,lr}
+        0x00001252:    4604        .F      MOV      r4,r0
+        0x00001254:    f000fcfe    ....    BL       hw_delay ; 0x1c54
+        0x00001258:    2c28        (,      CMP      r4,#0x28
+        0x0000125a:    d100        ..      BNE      0x125e ; GPIO_SetInput + 14
+        0x0000125c:    bd10        ..      POP      {r4,pc}
+        0x0000125e:    2080        .       MOVS     r0,#0x80
+        0x00001260:    4020         @      ANDS     r0,r0,r4
+        0x00001262:    2800        .(      CMP      r0,#0
+        0x00001264:    d010        ..      BEQ      0x1288 ; GPIO_SetInput + 56
+        0x00001266:    bf00        ..      NOP      
+        0x00001268:    2080        .       MOVS     r0,#0x80
+        0x0000126a:    06e1        ..      LSLS     r1,r4,#27
+        0x0000126c:    0ec9        ..      LSRS     r1,r1,#27
+        0x0000126e:    4ad5        .J      LDR      r2,[pc,#852] ; [0x15c4] = 0x8080
+        0x00001270:    1889        ..      ADDS     r1,r1,r2
+        0x00001272:    0542        B.      LSLS     r2,r0,#21
+        0x00001274:    1889        ..      ADDS     r1,r1,r2
+        0x00001276:    7008        .p      STRB     r0,[r1,#0]
+        0x00001278:    06e1        ..      LSLS     r1,r4,#27
+        0x0000127a:    0ec9        ..      LSRS     r1,r1,#27
+        0x0000127c:    4ad1        .J      LDR      r2,[pc,#836] ; [0x15c4] = 0x8080
         0x0000127e:    1889        ..      ADDS     r1,r1,r2
-        0x00001280:    7008        .p      STRB     r0,[r1,#0]
-        0x00001282:    49cb        .I      LDR      r1,[pc,#812] ; [0x15b0] = 0x8080
-        0x00001284:    1861        a.      ADDS     r1,r4,r1
-        0x00001286:    1889        ..      ADDS     r1,r1,r2
-        0x00001288:    7008        .p      STRB     r0,[r1,#0]
-        0x0000128a:    bf00        ..      NOP      
-        0x0000128c:    f000fcd8    ....    BL       hw_delay ; 0x1c40
-        0x00001290:    bf00        ..      NOP      
-        0x00001292:    e7d9        ..      B        0x1248 ; GPIO_SetInput + 12
+        0x00001280:    0542        B.      LSLS     r2,r0,#21
+        0x00001282:    1889        ..      ADDS     r1,r1,r2
+        0x00001284:    7008        .p      STRB     r0,[r1,#0]
+        0x00001286:    e00b        ..      B        0x12a0 ; GPIO_SetInput + 80
+        0x00001288:    bf00        ..      NOP      
+        0x0000128a:    2040        @       MOVS     r0,#0x40
+        0x0000128c:    49cd        .I      LDR      r1,[pc,#820] ; [0x15c4] = 0x8080
+        0x0000128e:    1861        a.      ADDS     r1,r4,r1
+        0x00001290:    0582        ..      LSLS     r2,r0,#22
+        0x00001292:    1889        ..      ADDS     r1,r1,r2
+        0x00001294:    7008        .p      STRB     r0,[r1,#0]
+        0x00001296:    49cb        .I      LDR      r1,[pc,#812] ; [0x15c4] = 0x8080
+        0x00001298:    1861        a.      ADDS     r1,r4,r1
+        0x0000129a:    1889        ..      ADDS     r1,r1,r2
+        0x0000129c:    7008        .p      STRB     r0,[r1,#0]
+        0x0000129e:    bf00        ..      NOP      
+        0x000012a0:    f000fcd8    ....    BL       hw_delay ; 0x1c54
+        0x000012a4:    bf00        ..      NOP      
+        0x000012a6:    e7d9        ..      B        0x125c ; GPIO_SetInput + 12
     GPIO_SetWakeup
-        0x00001294:    b530        0.      PUSH     {r4,r5,lr}
-        0x00001296:    4602        .F      MOV      r2,r0
-        0x00001298:    2a28        (*      CMP      r2,#0x28
-        0x0000129a:    d100        ..      BNE      0x129e ; GPIO_SetWakeup + 10
-        0x0000129c:    bd30        0.      POP      {r4,r5,pc}
-        0x0000129e:    06d3        ..      LSLS     r3,r2,#27
-        0x000012a0:    0f98        ..      LSRS     r0,r3,#30
-        0x000012a2:    0751        Q.      LSLS     r1,r2,#29
-        0x000012a4:    0f49        I.      LSRS     r1,r1,#29
-        0x000012a6:    2380        .#      MOVS     r3,#0x80
-        0x000012a8:    4013        .@      ANDS     r3,r3,r2
-        0x000012aa:    2b00        .+      CMP      r3,#0
-        0x000012ac:    d057        W.      BEQ      0x135e ; GPIO_SetWakeup + 202
-        0x000012ae:    bf00        ..      NOP      
-        0x000012b0:    4bc0        .K      LDR      r3,[pc,#768] ; [0x15b4] = 0x10004fe0
-        0x000012b2:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x000012b4:    2300        .#      MOVS     r3,#0
-        0x000012b6:    4604        .F      MOV      r4,r0
-        0x000012b8:    34ab        .4      ADDS     r4,r4,#0xab
-        0x000012ba:    2501        .%      MOVS     r5,#1
-        0x000012bc:    072d        -.      LSLS     r5,r5,#28
-        0x000012be:    1964        d.      ADDS     r4,r4,r5
-        0x000012c0:    7824        $x      LDRB     r4,[r4,#0]
-        0x000012c2:    431b        .C      ORRS     r3,r3,r3
-        0x000012c4:    4604        .F      MOV      r4,r0
-        0x000012c6:    34ab        .4      ADDS     r4,r4,#0xab
-        0x000012c8:    1964        d.      ADDS     r4,r4,r5
-        0x000012ca:    7824        $x      LDRB     r4,[r4,#0]
-        0x000012cc:    4323        #C      ORRS     r3,r3,r4
-        0x000012ce:    2401        .$      MOVS     r4,#1
-        0x000012d0:    408c        .@      LSLS     r4,r4,r1
-        0x000012d2:    43a3        .C      BICS     r3,r3,r4
-        0x000012d4:    4604        .F      MOV      r4,r0
-        0x000012d6:    34ab        .4      ADDS     r4,r4,#0xab
-        0x000012d8:    1964        d.      ADDS     r4,r4,r5
-        0x000012da:    7023        #p      STRB     r3,[r4,#0]
-        0x000012dc:    4bb5        .K      LDR      r3,[pc,#724] ; [0x15b4] = 0x10004fe0
-        0x000012de:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x000012e0:    2300        .#      MOVS     r3,#0
-        0x000012e2:    4604        .F      MOV      r4,r0
-        0x000012e4:    34ab        .4      ADDS     r4,r4,#0xab
-        0x000012e6:    1964        d.      ADDS     r4,r4,r5
-        0x000012e8:    7824        $x      LDRB     r4,[r4,#0]
-        0x000012ea:    431b        .C      ORRS     r3,r3,r3
-        0x000012ec:    4604        .F      MOV      r4,r0
-        0x000012ee:    34ab        .4      ADDS     r4,r4,#0xab
-        0x000012f0:    1964        d.      ADDS     r4,r4,r5
-        0x000012f2:    7824        $x      LDRB     r4,[r4,#0]
-        0x000012f4:    4323        #C      ORRS     r3,r3,r4
-        0x000012f6:    2401        .$      MOVS     r4,#1
-        0x000012f8:    408c        .@      LSLS     r4,r4,r1
-        0x000012fa:    43a3        .C      BICS     r3,r3,r4
-        0x000012fc:    4604        .F      MOV      r4,r0
-        0x000012fe:    34ab        .4      ADDS     r4,r4,#0xab
-        0x00001300:    1964        d.      ADDS     r4,r4,r5
-        0x00001302:    7023        #p      STRB     r3,[r4,#0]
-        0x00001304:    bf00        ..      NOP      
-        0x00001306:    bf00        ..      NOP      
-        0x00001308:    4baa        .K      LDR      r3,[pc,#680] ; [0x15b4] = 0x10004fe0
-        0x0000130a:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x0000130c:    2300        .#      MOVS     r3,#0
-        0x0000130e:    4604        .F      MOV      r4,r0
-        0x00001310:    34b0        .4      ADDS     r4,r4,#0xb0
-        0x00001312:    1964        d.      ADDS     r4,r4,r5
-        0x00001314:    7824        $x      LDRB     r4,[r4,#0]
-        0x00001316:    431b        .C      ORRS     r3,r3,r3
-        0x00001318:    4604        .F      MOV      r4,r0
-        0x0000131a:    34b0        .4      ADDS     r4,r4,#0xb0
-        0x0000131c:    1964        d.      ADDS     r4,r4,r5
-        0x0000131e:    7824        $x      LDRB     r4,[r4,#0]
-        0x00001320:    4323        #C      ORRS     r3,r3,r4
-        0x00001322:    2401        .$      MOVS     r4,#1
-        0x00001324:    408c        .@      LSLS     r4,r4,r1
-        0x00001326:    4323        #C      ORRS     r3,r3,r4
-        0x00001328:    b2dc        ..      UXTB     r4,r3
-        0x0000132a:    4603        .F      MOV      r3,r0
-        0x0000132c:    33b0        .3      ADDS     r3,r3,#0xb0
-        0x0000132e:    195b        [.      ADDS     r3,r3,r5
-        0x00001330:    701c        .p      STRB     r4,[r3,#0]
-        0x00001332:    4ba0        .K      LDR      r3,[pc,#640] ; [0x15b4] = 0x10004fe0
-        0x00001334:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x00001336:    2300        .#      MOVS     r3,#0
-        0x00001338:    4604        .F      MOV      r4,r0
-        0x0000133a:    34b0        .4      ADDS     r4,r4,#0xb0
-        0x0000133c:    1964        d.      ADDS     r4,r4,r5
-        0x0000133e:    7824        $x      LDRB     r4,[r4,#0]
-        0x00001340:    431b        .C      ORRS     r3,r3,r3
-        0x00001342:    4604        .F      MOV      r4,r0
-        0x00001344:    34b0        .4      ADDS     r4,r4,#0xb0
-        0x00001346:    1964        d.      ADDS     r4,r4,r5
-        0x00001348:    7824        $x      LDRB     r4,[r4,#0]
-        0x0000134a:    4323        #C      ORRS     r3,r3,r4
-        0x0000134c:    2401        .$      MOVS     r4,#1
-        0x0000134e:    408c        .@      LSLS     r4,r4,r1
-        0x00001350:    4323        #C      ORRS     r3,r3,r4
-        0x00001352:    b2dc        ..      UXTB     r4,r3
-        0x00001354:    4603        .F      MOV      r3,r0
-        0x00001356:    33b0        .3      ADDS     r3,r3,#0xb0
-        0x00001358:    195b        [.      ADDS     r3,r3,r5
-        0x0000135a:    701c        .p      STRB     r4,[r3,#0]
-        0x0000135c:    e057        W.      B        0x140e ; GPIO_SetWakeup + 378
-        0x0000135e:    bf00        ..      NOP      
-        0x00001360:    4b94        .K      LDR      r3,[pc,#592] ; [0x15b4] = 0x10004fe0
-        0x00001362:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x00001364:    2300        .#      MOVS     r3,#0
-        0x00001366:    4604        .F      MOV      r4,r0
-        0x00001368:    34b0        .4      ADDS     r4,r4,#0xb0
-        0x0000136a:    2501        .%      MOVS     r5,#1
-        0x0000136c:    072d        -.      LSLS     r5,r5,#28
-        0x0000136e:    1964        d.      ADDS     r4,r4,r5
-        0x00001370:    7824        $x      LDRB     r4,[r4,#0]
-        0x00001372:    431b        .C      ORRS     r3,r3,r3
-        0x00001374:    4604        .F      MOV      r4,r0
-        0x00001376:    34b0        .4      ADDS     r4,r4,#0xb0
-        0x00001378:    1964        d.      ADDS     r4,r4,r5
-        0x0000137a:    7824        $x      LDRB     r4,[r4,#0]
-        0x0000137c:    4323        #C      ORRS     r3,r3,r4
-        0x0000137e:    2401        .$      MOVS     r4,#1
-        0x00001380:    408c        .@      LSLS     r4,r4,r1
-        0x00001382:    43a3        .C      BICS     r3,r3,r4
-        0x00001384:    4604        .F      MOV      r4,r0
-        0x00001386:    34b0        .4      ADDS     r4,r4,#0xb0
-        0x00001388:    1964        d.      ADDS     r4,r4,r5
-        0x0000138a:    7023        #p      STRB     r3,[r4,#0]
-        0x0000138c:    4b89        .K      LDR      r3,[pc,#548] ; [0x15b4] = 0x10004fe0
-        0x0000138e:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x00001390:    2300        .#      MOVS     r3,#0
-        0x00001392:    4604        .F      MOV      r4,r0
-        0x00001394:    34b0        .4      ADDS     r4,r4,#0xb0
-        0x00001396:    1964        d.      ADDS     r4,r4,r5
-        0x00001398:    7824        $x      LDRB     r4,[r4,#0]
-        0x0000139a:    431b        .C      ORRS     r3,r3,r3
-        0x0000139c:    4604        .F      MOV      r4,r0
-        0x0000139e:    34b0        .4      ADDS     r4,r4,#0xb0
-        0x000013a0:    1964        d.      ADDS     r4,r4,r5
-        0x000013a2:    7824        $x      LDRB     r4,[r4,#0]
-        0x000013a4:    4323        #C      ORRS     r3,r3,r4
-        0x000013a6:    2401        .$      MOVS     r4,#1
-        0x000013a8:    408c        .@      LSLS     r4,r4,r1
-        0x000013aa:    43a3        .C      BICS     r3,r3,r4
-        0x000013ac:    4604        .F      MOV      r4,r0
-        0x000013ae:    34b0        .4      ADDS     r4,r4,#0xb0
-        0x000013b0:    1964        d.      ADDS     r4,r4,r5
-        0x000013b2:    7023        #p      STRB     r3,[r4,#0]
-        0x000013b4:    bf00        ..      NOP      
-        0x000013b6:    bf00        ..      NOP      
-        0x000013b8:    4b7e        ~K      LDR      r3,[pc,#504] ; [0x15b4] = 0x10004fe0
-        0x000013ba:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x000013bc:    2300        .#      MOVS     r3,#0
-        0x000013be:    4604        .F      MOV      r4,r0
-        0x000013c0:    34ab        .4      ADDS     r4,r4,#0xab
-        0x000013c2:    1964        d.      ADDS     r4,r4,r5
-        0x000013c4:    7824        $x      LDRB     r4,[r4,#0]
-        0x000013c6:    431b        .C      ORRS     r3,r3,r3
-        0x000013c8:    4604        .F      MOV      r4,r0
-        0x000013ca:    34ab        .4      ADDS     r4,r4,#0xab
-        0x000013cc:    1964        d.      ADDS     r4,r4,r5
-        0x000013ce:    7824        $x      LDRB     r4,[r4,#0]
-        0x000013d0:    4323        #C      ORRS     r3,r3,r4
-        0x000013d2:    2401        .$      MOVS     r4,#1
-        0x000013d4:    408c        .@      LSLS     r4,r4,r1
-        0x000013d6:    4323        #C      ORRS     r3,r3,r4
-        0x000013d8:    b2dc        ..      UXTB     r4,r3
-        0x000013da:    4603        .F      MOV      r3,r0
-        0x000013dc:    33ab        .3      ADDS     r3,r3,#0xab
-        0x000013de:    195b        [.      ADDS     r3,r3,r5
-        0x000013e0:    701c        .p      STRB     r4,[r3,#0]
-        0x000013e2:    4b74        tK      LDR      r3,[pc,#464] ; [0x15b4] = 0x10004fe0
-        0x000013e4:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x000013e6:    2300        .#      MOVS     r3,#0
-        0x000013e8:    4604        .F      MOV      r4,r0
-        0x000013ea:    34ab        .4      ADDS     r4,r4,#0xab
-        0x000013ec:    1964        d.      ADDS     r4,r4,r5
-        0x000013ee:    7824        $x      LDRB     r4,[r4,#0]
-        0x000013f0:    431b        .C      ORRS     r3,r3,r3
-        0x000013f2:    4604        .F      MOV      r4,r0
-        0x000013f4:    34ab        .4      ADDS     r4,r4,#0xab
-        0x000013f6:    1964        d.      ADDS     r4,r4,r5
-        0x000013f8:    7824        $x      LDRB     r4,[r4,#0]
-        0x000013fa:    4323        #C      ORRS     r3,r3,r4
-        0x000013fc:    2401        .$      MOVS     r4,#1
-        0x000013fe:    408c        .@      LSLS     r4,r4,r1
-        0x00001400:    4323        #C      ORRS     r3,r3,r4
-        0x00001402:    b2dc        ..      UXTB     r4,r3
-        0x00001404:    4603        .F      MOV      r3,r0
-        0x00001406:    33ab        .3      ADDS     r3,r3,#0xab
-        0x00001408:    195b        [.      ADDS     r3,r3,r5
-        0x0000140a:    701c        .p      STRB     r4,[r3,#0]
-        0x0000140c:    bf00        ..      NOP      
-        0x0000140e:    bf00        ..      NOP      
-        0x00001410:    e744        D.      B        0x129c ; GPIO_SetWakeup + 8
+        0x000012a8:    b530        0.      PUSH     {r4,r5,lr}
+        0x000012aa:    4602        .F      MOV      r2,r0
+        0x000012ac:    2a28        (*      CMP      r2,#0x28
+        0x000012ae:    d100        ..      BNE      0x12b2 ; GPIO_SetWakeup + 10
+        0x000012b0:    bd30        0.      POP      {r4,r5,pc}
+        0x000012b2:    06d3        ..      LSLS     r3,r2,#27
+        0x000012b4:    0f98        ..      LSRS     r0,r3,#30
+        0x000012b6:    0751        Q.      LSLS     r1,r2,#29
+        0x000012b8:    0f49        I.      LSRS     r1,r1,#29
+        0x000012ba:    2380        .#      MOVS     r3,#0x80
+        0x000012bc:    4013        .@      ANDS     r3,r3,r2
+        0x000012be:    2b00        .+      CMP      r3,#0
+        0x000012c0:    d057        W.      BEQ      0x1372 ; GPIO_SetWakeup + 202
+        0x000012c2:    bf00        ..      NOP      
+        0x000012c4:    4bc0        .K      LDR      r3,[pc,#768] ; [0x15c8] = 0x10004fe0
+        0x000012c6:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x000012c8:    2300        .#      MOVS     r3,#0
+        0x000012ca:    4604        .F      MOV      r4,r0
+        0x000012cc:    34ab        .4      ADDS     r4,r4,#0xab
+        0x000012ce:    2501        .%      MOVS     r5,#1
+        0x000012d0:    072d        -.      LSLS     r5,r5,#28
+        0x000012d2:    1964        d.      ADDS     r4,r4,r5
+        0x000012d4:    7824        $x      LDRB     r4,[r4,#0]
+        0x000012d6:    431b        .C      ORRS     r3,r3,r3
+        0x000012d8:    4604        .F      MOV      r4,r0
+        0x000012da:    34ab        .4      ADDS     r4,r4,#0xab
+        0x000012dc:    1964        d.      ADDS     r4,r4,r5
+        0x000012de:    7824        $x      LDRB     r4,[r4,#0]
+        0x000012e0:    4323        #C      ORRS     r3,r3,r4
+        0x000012e2:    2401        .$      MOVS     r4,#1
+        0x000012e4:    408c        .@      LSLS     r4,r4,r1
+        0x000012e6:    43a3        .C      BICS     r3,r3,r4
+        0x000012e8:    4604        .F      MOV      r4,r0
+        0x000012ea:    34ab        .4      ADDS     r4,r4,#0xab
+        0x000012ec:    1964        d.      ADDS     r4,r4,r5
+        0x000012ee:    7023        #p      STRB     r3,[r4,#0]
+        0x000012f0:    4bb5        .K      LDR      r3,[pc,#724] ; [0x15c8] = 0x10004fe0
+        0x000012f2:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x000012f4:    2300        .#      MOVS     r3,#0
+        0x000012f6:    4604        .F      MOV      r4,r0
+        0x000012f8:    34ab        .4      ADDS     r4,r4,#0xab
+        0x000012fa:    1964        d.      ADDS     r4,r4,r5
+        0x000012fc:    7824        $x      LDRB     r4,[r4,#0]
+        0x000012fe:    431b        .C      ORRS     r3,r3,r3
+        0x00001300:    4604        .F      MOV      r4,r0
+        0x00001302:    34ab        .4      ADDS     r4,r4,#0xab
+        0x00001304:    1964        d.      ADDS     r4,r4,r5
+        0x00001306:    7824        $x      LDRB     r4,[r4,#0]
+        0x00001308:    4323        #C      ORRS     r3,r3,r4
+        0x0000130a:    2401        .$      MOVS     r4,#1
+        0x0000130c:    408c        .@      LSLS     r4,r4,r1
+        0x0000130e:    43a3        .C      BICS     r3,r3,r4
+        0x00001310:    4604        .F      MOV      r4,r0
+        0x00001312:    34ab        .4      ADDS     r4,r4,#0xab
+        0x00001314:    1964        d.      ADDS     r4,r4,r5
+        0x00001316:    7023        #p      STRB     r3,[r4,#0]
+        0x00001318:    bf00        ..      NOP      
+        0x0000131a:    bf00        ..      NOP      
+        0x0000131c:    4baa        .K      LDR      r3,[pc,#680] ; [0x15c8] = 0x10004fe0
+        0x0000131e:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x00001320:    2300        .#      MOVS     r3,#0
+        0x00001322:    4604        .F      MOV      r4,r0
+        0x00001324:    34b0        .4      ADDS     r4,r4,#0xb0
+        0x00001326:    1964        d.      ADDS     r4,r4,r5
+        0x00001328:    7824        $x      LDRB     r4,[r4,#0]
+        0x0000132a:    431b        .C      ORRS     r3,r3,r3
+        0x0000132c:    4604        .F      MOV      r4,r0
+        0x0000132e:    34b0        .4      ADDS     r4,r4,#0xb0
+        0x00001330:    1964        d.      ADDS     r4,r4,r5
+        0x00001332:    7824        $x      LDRB     r4,[r4,#0]
+        0x00001334:    4323        #C      ORRS     r3,r3,r4
+        0x00001336:    2401        .$      MOVS     r4,#1
+        0x00001338:    408c        .@      LSLS     r4,r4,r1
+        0x0000133a:    4323        #C      ORRS     r3,r3,r4
+        0x0000133c:    b2dc        ..      UXTB     r4,r3
+        0x0000133e:    4603        .F      MOV      r3,r0
+        0x00001340:    33b0        .3      ADDS     r3,r3,#0xb0
+        0x00001342:    195b        [.      ADDS     r3,r3,r5
+        0x00001344:    701c        .p      STRB     r4,[r3,#0]
+        0x00001346:    4ba0        .K      LDR      r3,[pc,#640] ; [0x15c8] = 0x10004fe0
+        0x00001348:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x0000134a:    2300        .#      MOVS     r3,#0
+        0x0000134c:    4604        .F      MOV      r4,r0
+        0x0000134e:    34b0        .4      ADDS     r4,r4,#0xb0
+        0x00001350:    1964        d.      ADDS     r4,r4,r5
+        0x00001352:    7824        $x      LDRB     r4,[r4,#0]
+        0x00001354:    431b        .C      ORRS     r3,r3,r3
+        0x00001356:    4604        .F      MOV      r4,r0
+        0x00001358:    34b0        .4      ADDS     r4,r4,#0xb0
+        0x0000135a:    1964        d.      ADDS     r4,r4,r5
+        0x0000135c:    7824        $x      LDRB     r4,[r4,#0]
+        0x0000135e:    4323        #C      ORRS     r3,r3,r4
+        0x00001360:    2401        .$      MOVS     r4,#1
+        0x00001362:    408c        .@      LSLS     r4,r4,r1
+        0x00001364:    4323        #C      ORRS     r3,r3,r4
+        0x00001366:    b2dc        ..      UXTB     r4,r3
+        0x00001368:    4603        .F      MOV      r3,r0
+        0x0000136a:    33b0        .3      ADDS     r3,r3,#0xb0
+        0x0000136c:    195b        [.      ADDS     r3,r3,r5
+        0x0000136e:    701c        .p      STRB     r4,[r3,#0]
+        0x00001370:    e057        W.      B        0x1422 ; GPIO_SetWakeup + 378
+        0x00001372:    bf00        ..      NOP      
+        0x00001374:    4b94        .K      LDR      r3,[pc,#592] ; [0x15c8] = 0x10004fe0
+        0x00001376:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x00001378:    2300        .#      MOVS     r3,#0
+        0x0000137a:    4604        .F      MOV      r4,r0
+        0x0000137c:    34b0        .4      ADDS     r4,r4,#0xb0
+        0x0000137e:    2501        .%      MOVS     r5,#1
+        0x00001380:    072d        -.      LSLS     r5,r5,#28
+        0x00001382:    1964        d.      ADDS     r4,r4,r5
+        0x00001384:    7824        $x      LDRB     r4,[r4,#0]
+        0x00001386:    431b        .C      ORRS     r3,r3,r3
+        0x00001388:    4604        .F      MOV      r4,r0
+        0x0000138a:    34b0        .4      ADDS     r4,r4,#0xb0
+        0x0000138c:    1964        d.      ADDS     r4,r4,r5
+        0x0000138e:    7824        $x      LDRB     r4,[r4,#0]
+        0x00001390:    4323        #C      ORRS     r3,r3,r4
+        0x00001392:    2401        .$      MOVS     r4,#1
+        0x00001394:    408c        .@      LSLS     r4,r4,r1
+        0x00001396:    43a3        .C      BICS     r3,r3,r4
+        0x00001398:    4604        .F      MOV      r4,r0
+        0x0000139a:    34b0        .4      ADDS     r4,r4,#0xb0
+        0x0000139c:    1964        d.      ADDS     r4,r4,r5
+        0x0000139e:    7023        #p      STRB     r3,[r4,#0]
+        0x000013a0:    4b89        .K      LDR      r3,[pc,#548] ; [0x15c8] = 0x10004fe0
+        0x000013a2:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x000013a4:    2300        .#      MOVS     r3,#0
+        0x000013a6:    4604        .F      MOV      r4,r0
+        0x000013a8:    34b0        .4      ADDS     r4,r4,#0xb0
+        0x000013aa:    1964        d.      ADDS     r4,r4,r5
+        0x000013ac:    7824        $x      LDRB     r4,[r4,#0]
+        0x000013ae:    431b        .C      ORRS     r3,r3,r3
+        0x000013b0:    4604        .F      MOV      r4,r0
+        0x000013b2:    34b0        .4      ADDS     r4,r4,#0xb0
+        0x000013b4:    1964        d.      ADDS     r4,r4,r5
+        0x000013b6:    7824        $x      LDRB     r4,[r4,#0]
+        0x000013b8:    4323        #C      ORRS     r3,r3,r4
+        0x000013ba:    2401        .$      MOVS     r4,#1
+        0x000013bc:    408c        .@      LSLS     r4,r4,r1
+        0x000013be:    43a3        .C      BICS     r3,r3,r4
+        0x000013c0:    4604        .F      MOV      r4,r0
+        0x000013c2:    34b0        .4      ADDS     r4,r4,#0xb0
+        0x000013c4:    1964        d.      ADDS     r4,r4,r5
+        0x000013c6:    7023        #p      STRB     r3,[r4,#0]
+        0x000013c8:    bf00        ..      NOP      
+        0x000013ca:    bf00        ..      NOP      
+        0x000013cc:    4b7e        ~K      LDR      r3,[pc,#504] ; [0x15c8] = 0x10004fe0
+        0x000013ce:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x000013d0:    2300        .#      MOVS     r3,#0
+        0x000013d2:    4604        .F      MOV      r4,r0
+        0x000013d4:    34ab        .4      ADDS     r4,r4,#0xab
+        0x000013d6:    1964        d.      ADDS     r4,r4,r5
+        0x000013d8:    7824        $x      LDRB     r4,[r4,#0]
+        0x000013da:    431b        .C      ORRS     r3,r3,r3
+        0x000013dc:    4604        .F      MOV      r4,r0
+        0x000013de:    34ab        .4      ADDS     r4,r4,#0xab
+        0x000013e0:    1964        d.      ADDS     r4,r4,r5
+        0x000013e2:    7824        $x      LDRB     r4,[r4,#0]
+        0x000013e4:    4323        #C      ORRS     r3,r3,r4
+        0x000013e6:    2401        .$      MOVS     r4,#1
+        0x000013e8:    408c        .@      LSLS     r4,r4,r1
+        0x000013ea:    4323        #C      ORRS     r3,r3,r4
+        0x000013ec:    b2dc        ..      UXTB     r4,r3
+        0x000013ee:    4603        .F      MOV      r3,r0
+        0x000013f0:    33ab        .3      ADDS     r3,r3,#0xab
+        0x000013f2:    195b        [.      ADDS     r3,r3,r5
+        0x000013f4:    701c        .p      STRB     r4,[r3,#0]
+        0x000013f6:    4b74        tK      LDR      r3,[pc,#464] ; [0x15c8] = 0x10004fe0
+        0x000013f8:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x000013fa:    2300        .#      MOVS     r3,#0
+        0x000013fc:    4604        .F      MOV      r4,r0
+        0x000013fe:    34ab        .4      ADDS     r4,r4,#0xab
+        0x00001400:    1964        d.      ADDS     r4,r4,r5
+        0x00001402:    7824        $x      LDRB     r4,[r4,#0]
+        0x00001404:    431b        .C      ORRS     r3,r3,r3
+        0x00001406:    4604        .F      MOV      r4,r0
+        0x00001408:    34ab        .4      ADDS     r4,r4,#0xab
+        0x0000140a:    1964        d.      ADDS     r4,r4,r5
+        0x0000140c:    7824        $x      LDRB     r4,[r4,#0]
+        0x0000140e:    4323        #C      ORRS     r3,r3,r4
+        0x00001410:    2401        .$      MOVS     r4,#1
+        0x00001412:    408c        .@      LSLS     r4,r4,r1
+        0x00001414:    4323        #C      ORRS     r3,r3,r4
+        0x00001416:    b2dc        ..      UXTB     r4,r3
+        0x00001418:    4603        .F      MOV      r3,r0
+        0x0000141a:    33ab        .3      ADDS     r3,r3,#0xab
+        0x0000141c:    195b        [.      ADDS     r3,r3,r5
+        0x0000141e:    701c        .p      STRB     r4,[r3,#0]
+        0x00001420:    bf00        ..      NOP      
+        0x00001422:    bf00        ..      NOP      
+        0x00001424:    e744        D.      B        0x12b0 ; GPIO_SetWakeup + 8
     gpioGetBit
-        0x00001412:    b5f0        ..      PUSH     {r4-r7,lr}
-        0x00001414:    4602        .F      MOV      r2,r0
-        0x00001416:    2400        .$      MOVS     r4,#0
-        0x00001418:    2300        .#      MOVS     r3,#0
-        0x0000141a:    2500        .%      MOVS     r5,#0
-        0x0000141c:    0754        T.      LSLS     r4,r2,#29
-        0x0000141e:    0f64        d.      LSRS     r4,r4,#29
-        0x00001420:    06d0        ..      LSLS     r0,r2,#27
-        0x00001422:    0f83        ..      LSRS     r3,r0,#30
-        0x00001424:    4863        cH      LDR      r0,[pc,#396] ; [0x15b4] = 0x10004fe0
-        0x00001426:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00001428:    2000        .       MOVS     r0,#0
-        0x0000142a:    18ce        ..      ADDS     r6,r1,r3
-        0x0000142c:    2701        .'      MOVS     r7,#1
-        0x0000142e:    073f        ?.      LSLS     r7,r7,#28
-        0x00001430:    433e        >C      ORRS     r6,r6,r7
-        0x00001432:    7836        6x      LDRB     r6,[r6,#0]
-        0x00001434:    4300        .C      ORRS     r0,r0,r0
-        0x00001436:    18ce        ..      ADDS     r6,r1,r3
-        0x00001438:    433e        >C      ORRS     r6,r6,r7
-        0x0000143a:    7836        6x      LDRB     r6,[r6,#0]
-        0x0000143c:    4330        0C      ORRS     r0,r0,r6
-        0x0000143e:    4605        .F      MOV      r5,r0
-        0x00001440:    2001        .       MOVS     r0,#1
-        0x00001442:    40a0        .@      LSLS     r0,r0,r4
-        0x00001444:    4028        (@      ANDS     r0,r0,r5
-        0x00001446:    bdf0        ..      POP      {r4-r7,pc}
+        0x00001426:    b5f0        ..      PUSH     {r4-r7,lr}
+        0x00001428:    4602        .F      MOV      r2,r0
+        0x0000142a:    2400        .$      MOVS     r4,#0
+        0x0000142c:    2300        .#      MOVS     r3,#0
+        0x0000142e:    2500        .%      MOVS     r5,#0
+        0x00001430:    0754        T.      LSLS     r4,r2,#29
+        0x00001432:    0f64        d.      LSRS     r4,r4,#29
+        0x00001434:    06d0        ..      LSLS     r0,r2,#27
+        0x00001436:    0f83        ..      LSRS     r3,r0,#30
+        0x00001438:    4863        cH      LDR      r0,[pc,#396] ; [0x15c8] = 0x10004fe0
+        0x0000143a:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x0000143c:    2000        .       MOVS     r0,#0
+        0x0000143e:    18ce        ..      ADDS     r6,r1,r3
+        0x00001440:    2701        .'      MOVS     r7,#1
+        0x00001442:    073f        ?.      LSLS     r7,r7,#28
+        0x00001444:    433e        >C      ORRS     r6,r6,r7
+        0x00001446:    7836        6x      LDRB     r6,[r6,#0]
+        0x00001448:    4300        .C      ORRS     r0,r0,r0
+        0x0000144a:    18ce        ..      ADDS     r6,r1,r3
+        0x0000144c:    433e        >C      ORRS     r6,r6,r7
+        0x0000144e:    7836        6x      LDRB     r6,[r6,#0]
+        0x00001450:    4330        0C      ORRS     r0,r0,r6
+        0x00001452:    4605        .F      MOV      r5,r0
+        0x00001454:    2001        .       MOVS     r0,#1
+        0x00001456:    40a0        .@      LSLS     r0,r0,r4
+        0x00001458:    4028        (@      ANDS     r0,r0,r5
+        0x0000145a:    bdf0        ..      POP      {r4-r7,pc}
     GPIO_GetInputStatus
-        0x00001448:    b510        ..      PUSH     {r4,lr}
-        0x0000144a:    4604        .F      MOV      r4,r0
-        0x0000144c:    2c28        (,      CMP      r4,#0x28
-        0x0000144e:    d101        ..      BNE      0x1454 ; GPIO_GetInputStatus + 12
-        0x00001450:    bf00        ..      NOP      
-        0x00001452:    e7fe        ..      B        0x1452 ; GPIO_GetInputStatus + 10
-        0x00001454:    2080        .       MOVS     r0,#0x80
-        0x00001456:    4020         @      ANDS     r0,r0,r4
-        0x00001458:    2800        .(      CMP      r0,#0
-        0x0000145a:    d005        ..      BEQ      0x1468 ; GPIO_GetInputStatus + 32
-        0x0000145c:    06e0        ..      LSLS     r0,r4,#27
-        0x0000145e:    0ec0        ..      LSRS     r0,r0,#27
-        0x00001460:    4955        UI      LDR      r1,[pc,#340] ; [0x15b8] = 0x831c
-        0x00001462:    f7ffffd6    ....    BL       gpioGetBit ; 0x1412
-        0x00001466:    bd10        ..      POP      {r4,pc}
-        0x00001468:    06e0        ..      LSLS     r0,r4,#27
-        0x0000146a:    0ec0        ..      LSRS     r0,r0,#27
-        0x0000146c:    4952        RI      LDR      r1,[pc,#328] ; [0x15b8] = 0x831c
-        0x0000146e:    f7ffffd0    ....    BL       gpioGetBit ; 0x1412
-        0x00001472:    2800        .(      CMP      r0,#0
-        0x00001474:    d101        ..      BNE      0x147a ; GPIO_GetInputStatus + 50
-        0x00001476:    2001        .       MOVS     r0,#1
-        0x00001478:    e7f5        ..      B        0x1466 ; GPIO_GetInputStatus + 30
-        0x0000147a:    2000        .       MOVS     r0,#0
-        0x0000147c:    e7f3        ..      B        0x1466 ; GPIO_GetInputStatus + 30
+        0x0000145c:    b510        ..      PUSH     {r4,lr}
+        0x0000145e:    4604        .F      MOV      r4,r0
+        0x00001460:    2c28        (,      CMP      r4,#0x28
+        0x00001462:    d101        ..      BNE      0x1468 ; GPIO_GetInputStatus + 12
+        0x00001464:    bf00        ..      NOP      
+        0x00001466:    e7fe        ..      B        0x1466 ; GPIO_GetInputStatus + 10
+        0x00001468:    2080        .       MOVS     r0,#0x80
+        0x0000146a:    4020         @      ANDS     r0,r0,r4
+        0x0000146c:    2800        .(      CMP      r0,#0
+        0x0000146e:    d005        ..      BEQ      0x147c ; GPIO_GetInputStatus + 32
+        0x00001470:    06e0        ..      LSLS     r0,r4,#27
+        0x00001472:    0ec0        ..      LSRS     r0,r0,#27
+        0x00001474:    4955        UI      LDR      r1,[pc,#340] ; [0x15cc] = 0x831c
+        0x00001476:    f7ffffd6    ....    BL       gpioGetBit ; 0x1426
+        0x0000147a:    bd10        ..      POP      {r4,pc}
+        0x0000147c:    06e0        ..      LSLS     r0,r4,#27
+        0x0000147e:    0ec0        ..      LSRS     r0,r0,#27
+        0x00001480:    4952        RI      LDR      r1,[pc,#328] ; [0x15cc] = 0x831c
+        0x00001482:    f7ffffd0    ....    BL       gpioGetBit ; 0x1426
+        0x00001486:    2800        .(      CMP      r0,#0
+        0x00001488:    d101        ..      BNE      0x148e ; GPIO_GetInputStatus + 50
+        0x0000148a:    2001        .       MOVS     r0,#1
+        0x0000148c:    e7f5        ..      B        0x147a ; GPIO_GetInputStatus + 30
+        0x0000148e:    2000        .       MOVS     r0,#0
+        0x00001490:    e7f3        ..      B        0x147a ; GPIO_GetInputStatus + 30
     GPIO_SetWakeupByCurrentState
-        0x0000147e:    b530        0.      PUSH     {r4,r5,lr}
-        0x00001480:    4604        .F      MOV      r4,r0
-        0x00001482:    2180        .!      MOVS     r1,#0x80
-        0x00001484:    4321        !C      ORRS     r1,r1,r4
-        0x00001486:    4608        .F      MOV      r0,r1
-        0x00001488:    f7ffffde    ....    BL       GPIO_GetInputStatus ; 0x1448
-        0x0000148c:    4605        .F      MOV      r5,r0
-        0x0000148e:    2d00        .-      CMP      r5,#0
-        0x00001490:    d004        ..      BEQ      0x149c ; GPIO_SetWakeupByCurrentState + 30
-        0x00001492:    06e0        ..      LSLS     r0,r4,#27
-        0x00001494:    0ec0        ..      LSRS     r0,r0,#27
-        0x00001496:    f7fffefd    ....    BL       GPIO_SetWakeup ; 0x1294
-        0x0000149a:    e004        ..      B        0x14a6 ; GPIO_SetWakeupByCurrentState + 40
-        0x0000149c:    2180        .!      MOVS     r1,#0x80
-        0x0000149e:    4321        !C      ORRS     r1,r1,r4
-        0x000014a0:    4608        .F      MOV      r0,r1
-        0x000014a2:    f7fffef7    ....    BL       GPIO_SetWakeup ; 0x1294
-        0x000014a6:    bd30        0.      POP      {r4,r5,pc}
+        0x00001492:    b530        0.      PUSH     {r4,r5,lr}
+        0x00001494:    4604        .F      MOV      r4,r0
+        0x00001496:    2180        .!      MOVS     r1,#0x80
+        0x00001498:    4321        !C      ORRS     r1,r1,r4
+        0x0000149a:    4608        .F      MOV      r0,r1
+        0x0000149c:    f7ffffde    ....    BL       GPIO_GetInputStatus ; 0x145c
+        0x000014a0:    4605        .F      MOV      r5,r0
+        0x000014a2:    2d00        .-      CMP      r5,#0
+        0x000014a4:    d004        ..      BEQ      0x14b0 ; GPIO_SetWakeupByCurrentState + 30
+        0x000014a6:    06e0        ..      LSLS     r0,r4,#27
+        0x000014a8:    0ec0        ..      LSRS     r0,r0,#27
+        0x000014aa:    f7fffefd    ....    BL       GPIO_SetWakeup ; 0x12a8
+        0x000014ae:    e004        ..      B        0x14ba ; GPIO_SetWakeupByCurrentState + 40
+        0x000014b0:    2180        .!      MOVS     r1,#0x80
+        0x000014b2:    4321        !C      ORRS     r1,r1,r4
+        0x000014b4:    4608        .F      MOV      r0,r1
+        0x000014b6:    f7fffef7    ....    BL       GPIO_SetWakeup ; 0x12a8
+        0x000014ba:    bd30        0.      POP      {r4,r5,pc}
     GPIO_ClearWakeup
-        0x000014a8:    b530        0.      PUSH     {r4,r5,lr}
-        0x000014aa:    4602        .F      MOV      r2,r0
-        0x000014ac:    2a28        (*      CMP      r2,#0x28
-        0x000014ae:    d100        ..      BNE      0x14b2 ; GPIO_ClearWakeup + 10
-        0x000014b0:    bd30        0.      POP      {r4,r5,pc}
-        0x000014b2:    06d3        ..      LSLS     r3,r2,#27
-        0x000014b4:    0f98        ..      LSRS     r0,r3,#30
-        0x000014b6:    0751        Q.      LSLS     r1,r2,#29
-        0x000014b8:    0f49        I.      LSRS     r1,r1,#29
-        0x000014ba:    bf00        ..      NOP      
-        0x000014bc:    4b3d        =K      LDR      r3,[pc,#244] ; [0x15b4] = 0x10004fe0
-        0x000014be:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x000014c0:    2300        .#      MOVS     r3,#0
-        0x000014c2:    4604        .F      MOV      r4,r0
-        0x000014c4:    34ab        .4      ADDS     r4,r4,#0xab
-        0x000014c6:    2501        .%      MOVS     r5,#1
-        0x000014c8:    072d        -.      LSLS     r5,r5,#28
-        0x000014ca:    1964        d.      ADDS     r4,r4,r5
-        0x000014cc:    7824        $x      LDRB     r4,[r4,#0]
-        0x000014ce:    431b        .C      ORRS     r3,r3,r3
-        0x000014d0:    4604        .F      MOV      r4,r0
-        0x000014d2:    34ab        .4      ADDS     r4,r4,#0xab
-        0x000014d4:    1964        d.      ADDS     r4,r4,r5
-        0x000014d6:    7824        $x      LDRB     r4,[r4,#0]
-        0x000014d8:    4323        #C      ORRS     r3,r3,r4
-        0x000014da:    2401        .$      MOVS     r4,#1
-        0x000014dc:    408c        .@      LSLS     r4,r4,r1
-        0x000014de:    43a3        .C      BICS     r3,r3,r4
-        0x000014e0:    4604        .F      MOV      r4,r0
-        0x000014e2:    34ab        .4      ADDS     r4,r4,#0xab
-        0x000014e4:    1964        d.      ADDS     r4,r4,r5
-        0x000014e6:    7023        #p      STRB     r3,[r4,#0]
-        0x000014e8:    4b32        2K      LDR      r3,[pc,#200] ; [0x15b4] = 0x10004fe0
-        0x000014ea:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x000014ec:    2300        .#      MOVS     r3,#0
-        0x000014ee:    4604        .F      MOV      r4,r0
-        0x000014f0:    34ab        .4      ADDS     r4,r4,#0xab
-        0x000014f2:    1964        d.      ADDS     r4,r4,r5
-        0x000014f4:    7824        $x      LDRB     r4,[r4,#0]
-        0x000014f6:    431b        .C      ORRS     r3,r3,r3
-        0x000014f8:    4604        .F      MOV      r4,r0
-        0x000014fa:    34ab        .4      ADDS     r4,r4,#0xab
-        0x000014fc:    1964        d.      ADDS     r4,r4,r5
-        0x000014fe:    7824        $x      LDRB     r4,[r4,#0]
-        0x00001500:    4323        #C      ORRS     r3,r3,r4
-        0x00001502:    2401        .$      MOVS     r4,#1
-        0x00001504:    408c        .@      LSLS     r4,r4,r1
-        0x00001506:    43a3        .C      BICS     r3,r3,r4
-        0x00001508:    4604        .F      MOV      r4,r0
-        0x0000150a:    34ab        .4      ADDS     r4,r4,#0xab
-        0x0000150c:    1964        d.      ADDS     r4,r4,r5
-        0x0000150e:    7023        #p      STRB     r3,[r4,#0]
-        0x00001510:    bf00        ..      NOP      
-        0x00001512:    bf00        ..      NOP      
-        0x00001514:    4b27        'K      LDR      r3,[pc,#156] ; [0x15b4] = 0x10004fe0
-        0x00001516:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x00001518:    2300        .#      MOVS     r3,#0
-        0x0000151a:    4604        .F      MOV      r4,r0
-        0x0000151c:    34b0        .4      ADDS     r4,r4,#0xb0
-        0x0000151e:    1964        d.      ADDS     r4,r4,r5
-        0x00001520:    7824        $x      LDRB     r4,[r4,#0]
-        0x00001522:    431b        .C      ORRS     r3,r3,r3
-        0x00001524:    4604        .F      MOV      r4,r0
-        0x00001526:    34b0        .4      ADDS     r4,r4,#0xb0
-        0x00001528:    1964        d.      ADDS     r4,r4,r5
-        0x0000152a:    7824        $x      LDRB     r4,[r4,#0]
-        0x0000152c:    4323        #C      ORRS     r3,r3,r4
-        0x0000152e:    2401        .$      MOVS     r4,#1
-        0x00001530:    408c        .@      LSLS     r4,r4,r1
-        0x00001532:    43a3        .C      BICS     r3,r3,r4
-        0x00001534:    4604        .F      MOV      r4,r0
-        0x00001536:    34b0        .4      ADDS     r4,r4,#0xb0
-        0x00001538:    1964        d.      ADDS     r4,r4,r5
-        0x0000153a:    7023        #p      STRB     r3,[r4,#0]
-        0x0000153c:    4b1d        .K      LDR      r3,[pc,#116] ; [0x15b4] = 0x10004fe0
-        0x0000153e:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x00001540:    2300        .#      MOVS     r3,#0
-        0x00001542:    4604        .F      MOV      r4,r0
-        0x00001544:    34b0        .4      ADDS     r4,r4,#0xb0
-        0x00001546:    1964        d.      ADDS     r4,r4,r5
-        0x00001548:    7824        $x      LDRB     r4,[r4,#0]
-        0x0000154a:    431b        .C      ORRS     r3,r3,r3
-        0x0000154c:    4604        .F      MOV      r4,r0
-        0x0000154e:    34b0        .4      ADDS     r4,r4,#0xb0
-        0x00001550:    1964        d.      ADDS     r4,r4,r5
-        0x00001552:    7824        $x      LDRB     r4,[r4,#0]
-        0x00001554:    4323        #C      ORRS     r3,r3,r4
-        0x00001556:    2401        .$      MOVS     r4,#1
-        0x00001558:    408c        .@      LSLS     r4,r4,r1
-        0x0000155a:    43a3        .C      BICS     r3,r3,r4
-        0x0000155c:    4604        .F      MOV      r4,r0
-        0x0000155e:    34b0        .4      ADDS     r4,r4,#0xb0
-        0x00001560:    1964        d.      ADDS     r4,r4,r5
-        0x00001562:    7023        #p      STRB     r3,[r4,#0]
-        0x00001564:    bf00        ..      NOP      
-        0x00001566:    bf00        ..      NOP      
-        0x00001568:    e7a2        ..      B        0x14b0 ; GPIO_ClearWakeup + 8
+        0x000014bc:    b530        0.      PUSH     {r4,r5,lr}
+        0x000014be:    4602        .F      MOV      r2,r0
+        0x000014c0:    2a28        (*      CMP      r2,#0x28
+        0x000014c2:    d100        ..      BNE      0x14c6 ; GPIO_ClearWakeup + 10
+        0x000014c4:    bd30        0.      POP      {r4,r5,pc}
+        0x000014c6:    06d3        ..      LSLS     r3,r2,#27
+        0x000014c8:    0f98        ..      LSRS     r0,r3,#30
+        0x000014ca:    0751        Q.      LSLS     r1,r2,#29
+        0x000014cc:    0f49        I.      LSRS     r1,r1,#29
+        0x000014ce:    bf00        ..      NOP      
+        0x000014d0:    4b3d        =K      LDR      r3,[pc,#244] ; [0x15c8] = 0x10004fe0
+        0x000014d2:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x000014d4:    2300        .#      MOVS     r3,#0
+        0x000014d6:    4604        .F      MOV      r4,r0
+        0x000014d8:    34ab        .4      ADDS     r4,r4,#0xab
+        0x000014da:    2501        .%      MOVS     r5,#1
+        0x000014dc:    072d        -.      LSLS     r5,r5,#28
+        0x000014de:    1964        d.      ADDS     r4,r4,r5
+        0x000014e0:    7824        $x      LDRB     r4,[r4,#0]
+        0x000014e2:    431b        .C      ORRS     r3,r3,r3
+        0x000014e4:    4604        .F      MOV      r4,r0
+        0x000014e6:    34ab        .4      ADDS     r4,r4,#0xab
+        0x000014e8:    1964        d.      ADDS     r4,r4,r5
+        0x000014ea:    7824        $x      LDRB     r4,[r4,#0]
+        0x000014ec:    4323        #C      ORRS     r3,r3,r4
+        0x000014ee:    2401        .$      MOVS     r4,#1
+        0x000014f0:    408c        .@      LSLS     r4,r4,r1
+        0x000014f2:    43a3        .C      BICS     r3,r3,r4
+        0x000014f4:    4604        .F      MOV      r4,r0
+        0x000014f6:    34ab        .4      ADDS     r4,r4,#0xab
+        0x000014f8:    1964        d.      ADDS     r4,r4,r5
+        0x000014fa:    7023        #p      STRB     r3,[r4,#0]
+        0x000014fc:    4b32        2K      LDR      r3,[pc,#200] ; [0x15c8] = 0x10004fe0
+        0x000014fe:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x00001500:    2300        .#      MOVS     r3,#0
+        0x00001502:    4604        .F      MOV      r4,r0
+        0x00001504:    34ab        .4      ADDS     r4,r4,#0xab
+        0x00001506:    1964        d.      ADDS     r4,r4,r5
+        0x00001508:    7824        $x      LDRB     r4,[r4,#0]
+        0x0000150a:    431b        .C      ORRS     r3,r3,r3
+        0x0000150c:    4604        .F      MOV      r4,r0
+        0x0000150e:    34ab        .4      ADDS     r4,r4,#0xab
+        0x00001510:    1964        d.      ADDS     r4,r4,r5
+        0x00001512:    7824        $x      LDRB     r4,[r4,#0]
+        0x00001514:    4323        #C      ORRS     r3,r3,r4
+        0x00001516:    2401        .$      MOVS     r4,#1
+        0x00001518:    408c        .@      LSLS     r4,r4,r1
+        0x0000151a:    43a3        .C      BICS     r3,r3,r4
+        0x0000151c:    4604        .F      MOV      r4,r0
+        0x0000151e:    34ab        .4      ADDS     r4,r4,#0xab
+        0x00001520:    1964        d.      ADDS     r4,r4,r5
+        0x00001522:    7023        #p      STRB     r3,[r4,#0]
+        0x00001524:    bf00        ..      NOP      
+        0x00001526:    bf00        ..      NOP      
+        0x00001528:    4b27        'K      LDR      r3,[pc,#156] ; [0x15c8] = 0x10004fe0
+        0x0000152a:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x0000152c:    2300        .#      MOVS     r3,#0
+        0x0000152e:    4604        .F      MOV      r4,r0
+        0x00001530:    34b0        .4      ADDS     r4,r4,#0xb0
+        0x00001532:    1964        d.      ADDS     r4,r4,r5
+        0x00001534:    7824        $x      LDRB     r4,[r4,#0]
+        0x00001536:    431b        .C      ORRS     r3,r3,r3
+        0x00001538:    4604        .F      MOV      r4,r0
+        0x0000153a:    34b0        .4      ADDS     r4,r4,#0xb0
+        0x0000153c:    1964        d.      ADDS     r4,r4,r5
+        0x0000153e:    7824        $x      LDRB     r4,[r4,#0]
+        0x00001540:    4323        #C      ORRS     r3,r3,r4
+        0x00001542:    2401        .$      MOVS     r4,#1
+        0x00001544:    408c        .@      LSLS     r4,r4,r1
+        0x00001546:    43a3        .C      BICS     r3,r3,r4
+        0x00001548:    4604        .F      MOV      r4,r0
+        0x0000154a:    34b0        .4      ADDS     r4,r4,#0xb0
+        0x0000154c:    1964        d.      ADDS     r4,r4,r5
+        0x0000154e:    7023        #p      STRB     r3,[r4,#0]
+        0x00001550:    4b1d        .K      LDR      r3,[pc,#116] ; [0x15c8] = 0x10004fe0
+        0x00001552:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x00001554:    2300        .#      MOVS     r3,#0
+        0x00001556:    4604        .F      MOV      r4,r0
+        0x00001558:    34b0        .4      ADDS     r4,r4,#0xb0
+        0x0000155a:    1964        d.      ADDS     r4,r4,r5
+        0x0000155c:    7824        $x      LDRB     r4,[r4,#0]
+        0x0000155e:    431b        .C      ORRS     r3,r3,r3
+        0x00001560:    4604        .F      MOV      r4,r0
+        0x00001562:    34b0        .4      ADDS     r4,r4,#0xb0
+        0x00001564:    1964        d.      ADDS     r4,r4,r5
+        0x00001566:    7824        $x      LDRB     r4,[r4,#0]
+        0x00001568:    4323        #C      ORRS     r3,r3,r4
+        0x0000156a:    2401        .$      MOVS     r4,#1
+        0x0000156c:    408c        .@      LSLS     r4,r4,r1
+        0x0000156e:    43a3        .C      BICS     r3,r3,r4
+        0x00001570:    4604        .F      MOV      r4,r0
+        0x00001572:    34b0        .4      ADDS     r4,r4,#0xb0
+        0x00001574:    1964        d.      ADDS     r4,r4,r5
+        0x00001576:    7023        #p      STRB     r3,[r4,#0]
+        0x00001578:    bf00        ..      NOP      
+        0x0000157a:    bf00        ..      NOP      
+        0x0000157c:    e7a2        ..      B        0x14c4 ; GPIO_ClearWakeup + 8
     GPIO_SetGpioMultFunction
-        0x0000156a:    bf00        ..      NOP      
-        0x0000156c:    0682        ..      LSLS     r2,r0,#26
-        0x0000156e:    0e92        ..      LSRS     r2,r2,#26
-        0x00001570:    4b0f        .K      LDR      r3,[pc,#60] ; [0x15b0] = 0x8080
-        0x00001572:    18d2        ..      ADDS     r2,r2,r3
-        0x00001574:    055b        [.      LSLS     r3,r3,#21
-        0x00001576:    18d2        ..      ADDS     r2,r2,r3
-        0x00001578:    7011        .p      STRB     r1,[r2,#0]
-        0x0000157a:    0682        ..      LSLS     r2,r0,#26
-        0x0000157c:    0e92        ..      LSRS     r2,r2,#26
-        0x0000157e:    4b0c        .K      LDR      r3,[pc,#48] ; [0x15b0] = 0x8080
-        0x00001580:    18d2        ..      ADDS     r2,r2,r3
-        0x00001582:    055b        [.      LSLS     r3,r3,#21
-        0x00001584:    18d2        ..      ADDS     r2,r2,r3
-        0x00001586:    7011        .p      STRB     r1,[r2,#0]
-        0x00001588:    bf00        ..      NOP      
-        0x0000158a:    4770        pG      BX       lr
+        0x0000157e:    bf00        ..      NOP      
+        0x00001580:    0682        ..      LSLS     r2,r0,#26
+        0x00001582:    0e92        ..      LSRS     r2,r2,#26
+        0x00001584:    4b0f        .K      LDR      r3,[pc,#60] ; [0x15c4] = 0x8080
+        0x00001586:    18d2        ..      ADDS     r2,r2,r3
+        0x00001588:    055b        [.      LSLS     r3,r3,#21
+        0x0000158a:    18d2        ..      ADDS     r2,r2,r3
+        0x0000158c:    7011        .p      STRB     r1,[r2,#0]
+        0x0000158e:    0682        ..      LSLS     r2,r0,#26
+        0x00001590:    0e92        ..      LSRS     r2,r2,#26
+        0x00001592:    4b0c        .K      LDR      r3,[pc,#48] ; [0x15c4] = 0x8080
+        0x00001594:    18d2        ..      ADDS     r2,r2,r3
+        0x00001596:    055b        [.      LSLS     r3,r3,#21
+        0x00001598:    18d2        ..      ADDS     r2,r2,r3
+        0x0000159a:    7011        .p      STRB     r1,[r2,#0]
+        0x0000159c:    bf00        ..      NOP      
+        0x0000159e:    4770        pG      BX       lr
     GPIO_GetInputStatusWithJitter
-        0x0000158c:    b5f8        ..      PUSH     {r3-r7,lr}
-        0x0000158e:    4607        .F      MOV      r7,r0
-        0x00001590:    bf00        ..      NOP      
-        0x00001592:    4638        8F      MOV      r0,r7
-        0x00001594:    f7ffff58    ..X.    BL       GPIO_GetInputStatus ; 0x1448
-        0x00001598:    4606        .F      MOV      r6,r0
-        0x0000159a:    200a        .       MOVS     r0,#0xa
-        0x0000159c:    f000fdb8    ....    BL       SYS_delay_ms ; 0x2110
-        0x000015a0:    4638        8F      MOV      r0,r7
-        0x000015a2:    f7ffff51    ..Q.    BL       GPIO_GetInputStatus ; 0x1448
-        0x000015a6:    4604        .F      MOV      r4,r0
-        0x000015a8:    42a6        .B      CMP      r6,r4
-        0x000015aa:    d007        ..      BEQ      0x15bc ; GPIO_GetInputStatusWithJitter + 48
-        0x000015ac:    e00e        ..      B        0x15cc ; GPIO_GetInputStatusWithJitter + 64
+        0x000015a0:    b5f8        ..      PUSH     {r3-r7,lr}
+        0x000015a2:    4607        .F      MOV      r7,r0
+        0x000015a4:    bf00        ..      NOP      
+        0x000015a6:    4638        8F      MOV      r0,r7
+        0x000015a8:    f7ffff58    ..X.    BL       GPIO_GetInputStatus ; 0x145c
+        0x000015ac:    4606        .F      MOV      r6,r0
+        0x000015ae:    200a        .       MOVS     r0,#0xa
+        0x000015b0:    f000fdb8    ....    BL       SYS_delay_ms ; 0x2124
+        0x000015b4:    4638        8F      MOV      r0,r7
+        0x000015b6:    f7ffff51    ..Q.    BL       GPIO_GetInputStatus ; 0x145c
+        0x000015ba:    4604        .F      MOV      r4,r0
+        0x000015bc:    42a6        .B      CMP      r6,r4
+        0x000015be:    d007        ..      BEQ      0x15d0 ; GPIO_GetInputStatusWithJitter + 48
+        0x000015c0:    e00e        ..      B        0x15e0 ; GPIO_GetInputStatusWithJitter + 64
     $d
-        0x000015ae:    0000        ..      DCW    0
-        0x000015b0:    00008080    ....    DCD    32896
-        0x000015b4:    10004fe0    .O..    DCD    268455904
-        0x000015b8:    0000831c    ....    DCD    33564
+        0x000015c2:    0000        ..      DCW    0
+        0x000015c4:    00008080    ....    DCD    32896
+        0x000015c8:    10004fe0    .O..    DCD    268455904
+        0x000015cc:    0000831c    ....    DCD    33564
     $t
-        0x000015bc:    200a        .       MOVS     r0,#0xa
-        0x000015be:    f000fda7    ....    BL       SYS_delay_ms ; 0x2110
-        0x000015c2:    4638        8F      MOV      r0,r7
-        0x000015c4:    f7ffff40    ..@.    BL       GPIO_GetInputStatus ; 0x1448
-        0x000015c8:    4605        .F      MOV      r5,r0
-        0x000015ca:    bf00        ..      NOP      
-        0x000015cc:    42ac        .B      CMP      r4,r5
-        0x000015ce:    d1e0        ..      BNE      0x1592 ; GPIO_GetInputStatusWithJitter + 6
-        0x000015d0:    2001        .       MOVS     r0,#1
-        0x000015d2:    bdf8        ..      POP      {r3-r7,pc}
+        0x000015d0:    200a        .       MOVS     r0,#0xa
+        0x000015d2:    f000fda7    ....    BL       SYS_delay_ms ; 0x2124
+        0x000015d6:    4638        8F      MOV      r0,r7
+        0x000015d8:    f7ffff40    ..@.    BL       GPIO_GetInputStatus ; 0x145c
+        0x000015dc:    4605        .F      MOV      r5,r0
+        0x000015de:    bf00        ..      NOP      
+        0x000015e0:    42ac        .B      CMP      r4,r5
+        0x000015e2:    d1e0        ..      BNE      0x15a6 ; GPIO_GetInputStatusWithJitter + 6
+        0x000015e4:    2001        .       MOVS     r0,#1
+        0x000015e6:    bdf8        ..      POP      {r3-r7,pc}
     GPIO_CheckGpioIsInputFunction
-        0x000015d4:    4601        .F      MOV      r1,r0
-        0x000015d6:    48fd        .H      LDR      r0,[pc,#1012] ; [0x19cc] = 0x10004fe0
-        0x000015d8:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x000015da:    2000        .       MOVS     r0,#0
-        0x000015dc:    068a        ..      LSLS     r2,r1,#26
-        0x000015de:    0e92        ..      LSRS     r2,r2,#26
-        0x000015e0:    4bfb        .K      LDR      r3,[pc,#1004] ; [0x19d0] = 0x8080
-        0x000015e2:    18d2        ..      ADDS     r2,r2,r3
-        0x000015e4:    055b        [.      LSLS     r3,r3,#21
-        0x000015e6:    18d2        ..      ADDS     r2,r2,r3
-        0x000015e8:    7812        .x      LDRB     r2,[r2,#0]
-        0x000015ea:    4300        .C      ORRS     r0,r0,r0
-        0x000015ec:    068a        ..      LSLS     r2,r1,#26
-        0x000015ee:    0e92        ..      LSRS     r2,r2,#26
-        0x000015f0:    4bf7        .K      LDR      r3,[pc,#988] ; [0x19d0] = 0x8080
-        0x000015f2:    18d2        ..      ADDS     r2,r2,r3
-        0x000015f4:    055b        [.      LSLS     r3,r3,#21
+        0x000015e8:    4601        .F      MOV      r1,r0
+        0x000015ea:    48fd        .H      LDR      r0,[pc,#1012] ; [0x19e0] = 0x10004fe0
+        0x000015ec:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x000015ee:    2000        .       MOVS     r0,#0
+        0x000015f0:    068a        ..      LSLS     r2,r1,#26
+        0x000015f2:    0e92        ..      LSRS     r2,r2,#26
+        0x000015f4:    4bfb        .K      LDR      r3,[pc,#1004] ; [0x19e4] = 0x8080
         0x000015f6:    18d2        ..      ADDS     r2,r2,r3
-        0x000015f8:    7812        .x      LDRB     r2,[r2,#0]
-        0x000015fa:    4310        .C      ORRS     r0,r0,r2
-        0x000015fc:    0680        ..      LSLS     r0,r0,#26
-        0x000015fe:    0e80        ..      LSRS     r0,r0,#26
-        0x00001600:    2800        .(      CMP      r0,#0
-        0x00001602:    d101        ..      BNE      0x1608 ; GPIO_CheckGpioIsInputFunction + 52
-        0x00001604:    2001        .       MOVS     r0,#1
-        0x00001606:    4770        pG      BX       lr
-        0x00001608:    2000        .       MOVS     r0,#0
-        0x0000160a:    e7fc        ..      B        0x1606 ; GPIO_CheckGpioIsInputFunction + 50
+        0x000015f8:    055b        [.      LSLS     r3,r3,#21
+        0x000015fa:    18d2        ..      ADDS     r2,r2,r3
+        0x000015fc:    7812        .x      LDRB     r2,[r2,#0]
+        0x000015fe:    4300        .C      ORRS     r0,r0,r0
+        0x00001600:    068a        ..      LSLS     r2,r1,#26
+        0x00001602:    0e92        ..      LSRS     r2,r2,#26
+        0x00001604:    4bf7        .K      LDR      r3,[pc,#988] ; [0x19e4] = 0x8080
+        0x00001606:    18d2        ..      ADDS     r2,r2,r3
+        0x00001608:    055b        [.      LSLS     r3,r3,#21
+        0x0000160a:    18d2        ..      ADDS     r2,r2,r3
+        0x0000160c:    7812        .x      LDRB     r2,[r2,#0]
+        0x0000160e:    4310        .C      ORRS     r0,r0,r2
+        0x00001610:    0680        ..      LSLS     r0,r0,#26
+        0x00001612:    0e80        ..      LSRS     r0,r0,#26
+        0x00001614:    2800        .(      CMP      r0,#0
+        0x00001616:    d101        ..      BNE      0x161c ; GPIO_CheckGpioIsInputFunction + 52
+        0x00001618:    2001        .       MOVS     r0,#1
+        0x0000161a:    4770        pG      BX       lr
+        0x0000161c:    2000        .       MOVS     r0,#0
+        0x0000161e:    e7fc        ..      B        0x161a ; GPIO_CheckGpioIsInputFunction + 50
     GPIO_Set_High_Interrupt
-        0x0000160c:    b570        p.      PUSH     {r4-r6,lr}
-        0x0000160e:    4605        .F      MOV      r5,r0
-        0x00001610:    2400        .$      MOVS     r4,#0
-        0x00001612:    2600        .&      MOVS     r6,#0
-        0x00001614:    2080        .       MOVS     r0,#0x80
-        0x00001616:    4028        (@      ANDS     r0,r0,r5
-        0x00001618:    2800        .(      CMP      r0,#0
-        0x0000161a:    d07d        }.      BEQ      0x1718 ; GPIO_Set_High_Interrupt + 268
-        0x0000161c:    2180        .!      MOVS     r1,#0x80
-        0x0000161e:    4628        (F      MOV      r0,r5
-        0x00001620:    4388        .C      BICS     r0,r0,r1
+        0x00001620:    b570        p.      PUSH     {r4-r6,lr}
         0x00001622:    4605        .F      MOV      r5,r0
-        0x00001624:    2d1f        .-      CMP      r5,#0x1f
-        0x00001626:    dc53        S.      BGT      0x16d0 ; GPIO_Set_High_Interrupt + 196
-        0x00001628:    48e8        .H      LDR      r0,[pc,#928] ; [0x19cc] = 0x10004fe0
-        0x0000162a:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x0000162c:    2000        .       MOVS     r0,#0
-        0x0000162e:    49e9        .I      LDR      r1,[pc,#932] ; [0x19d4] = 0x10008340
-        0x00001630:    7989        .y      LDRB     r1,[r1,#6]
-        0x00001632:    4300        .C      ORRS     r0,r0,r0
-        0x00001634:    49e7        .I      LDR      r1,[pc,#924] ; [0x19d4] = 0x10008340
-        0x00001636:    7989        .y      LDRB     r1,[r1,#6]
-        0x00001638:    4308        .C      ORRS     r0,r0,r1
-        0x0000163a:    49e4        .I      LDR      r1,[pc,#912] ; [0x19cc] = 0x10004fe0
-        0x0000163c:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x0000163e:    2100        .!      MOVS     r1,#0
-        0x00001640:    4ae4        .J      LDR      r2,[pc,#912] ; [0x19d4] = 0x10008340
-        0x00001642:    79d2        .y      LDRB     r2,[r2,#7]
-        0x00001644:    4309        .C      ORRS     r1,r1,r1
-        0x00001646:    4ae3        .J      LDR      r2,[pc,#908] ; [0x19d4] = 0x10008340
-        0x00001648:    79d2        .y      LDRB     r2,[r2,#7]
-        0x0000164a:    4311        .C      ORRS     r1,r1,r2
-        0x0000164c:    0209        ..      LSLS     r1,r1,#8
-        0x0000164e:    4308        .C      ORRS     r0,r0,r1
-        0x00001650:    49de        .I      LDR      r1,[pc,#888] ; [0x19cc] = 0x10004fe0
-        0x00001652:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00001654:    2100        .!      MOVS     r1,#0
-        0x00001656:    4adf        .J      LDR      r2,[pc,#892] ; [0x19d4] = 0x10008340
-        0x00001658:    7a12        .z      LDRB     r2,[r2,#8]
-        0x0000165a:    4309        .C      ORRS     r1,r1,r1
-        0x0000165c:    4add        .J      LDR      r2,[pc,#884] ; [0x19d4] = 0x10008340
-        0x0000165e:    7a12        .z      LDRB     r2,[r2,#8]
-        0x00001660:    4311        .C      ORRS     r1,r1,r2
-        0x00001662:    0409        ..      LSLS     r1,r1,#16
-        0x00001664:    4308        .C      ORRS     r0,r0,r1
-        0x00001666:    49d9        .I      LDR      r1,[pc,#868] ; [0x19cc] = 0x10004fe0
-        0x00001668:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x0000166a:    2100        .!      MOVS     r1,#0
-        0x0000166c:    4ad9        .J      LDR      r2,[pc,#868] ; [0x19d4] = 0x10008340
-        0x0000166e:    7a52        Rz      LDRB     r2,[r2,#9]
-        0x00001670:    4309        .C      ORRS     r1,r1,r1
-        0x00001672:    4ad8        .J      LDR      r2,[pc,#864] ; [0x19d4] = 0x10008340
-        0x00001674:    7a52        Rz      LDRB     r2,[r2,#9]
-        0x00001676:    4311        .C      ORRS     r1,r1,r2
-        0x00001678:    0609        ..      LSLS     r1,r1,#24
-        0x0000167a:    4308        .C      ORRS     r0,r0,r1
-        0x0000167c:    4604        .F      MOV      r4,r0
-        0x0000167e:    2001        .       MOVS     r0,#1
-        0x00001680:    40a8        .@      LSLS     r0,r0,r5
-        0x00001682:    4304        .C      ORRS     r4,r4,r0
-        0x00001684:    bf00        ..      NOP      
-        0x00001686:    bf00        ..      NOP      
-        0x00001688:    49d3        .I      LDR      r1,[pc,#844] ; [0x19d8] = 0x10008040
-        0x0000168a:    730c        .s      STRB     r4,[r1,#0xc]
-        0x0000168c:    730c        .s      STRB     r4,[r1,#0xc]
-        0x0000168e:    bf00        ..      NOP      
-        0x00001690:    bf00        ..      NOP      
-        0x00001692:    0420         .      LSLS     r0,r4,#16
-        0x00001694:    0e00        ..      LSRS     r0,r0,#24
-        0x00001696:    7348        Hs      STRB     r0,[r1,#0xd]
-        0x00001698:    0420         .      LSLS     r0,r4,#16
-        0x0000169a:    0e00        ..      LSRS     r0,r0,#24
-        0x0000169c:    7348        Hs      STRB     r0,[r1,#0xd]
-        0x0000169e:    bf00        ..      NOP      
-        0x000016a0:    bf00        ..      NOP      
-        0x000016a2:    0220         .      LSLS     r0,r4,#8
-        0x000016a4:    0e00        ..      LSRS     r0,r0,#24
-        0x000016a6:    7388        .s      STRB     r0,[r1,#0xe]
-        0x000016a8:    0220         .      LSLS     r0,r4,#8
-        0x000016aa:    0e00        ..      LSRS     r0,r0,#24
-        0x000016ac:    7388        .s      STRB     r0,[r1,#0xe]
-        0x000016ae:    bf00        ..      NOP      
-        0x000016b0:    bf00        ..      NOP      
-        0x000016b2:    0e20         .      LSRS     r0,r4,#24
-        0x000016b4:    73c8        .s      STRB     r0,[r1,#0xf]
-        0x000016b6:    0e20         .      LSRS     r0,r4,#24
-        0x000016b8:    73c8        .s      STRB     r0,[r1,#0xf]
-        0x000016ba:    bf00        ..      NOP      
-        0x000016bc:    bf00        ..      NOP      
-        0x000016be:    bf00        ..      NOP      
-        0x000016c0:    2008        .       MOVS     r0,#8
-        0x000016c2:    49c5        .I      LDR      r1,[pc,#788] ; [0x19d8] = 0x10008040
-        0x000016c4:    3940        @9      SUBS     r1,r1,#0x40
-        0x000016c6:    7148        Hq      STRB     r0,[r1,#5]
-        0x000016c8:    bf00        ..      NOP      
-        0x000016ca:    2064        d       MOVS     r0,#0x64
-        0x000016cc:    f001fb5b    ..[.    BL       whileDelay ; 0x2d86
-        0x000016d0:    2d1f        .-      CMP      r5,#0x1f
-        0x000016d2:    dd4b        K.      BLE      0x176c ; GPIO_Set_High_Interrupt + 352
-        0x000016d4:    2d28        (-      CMP      r5,#0x28
-        0x000016d6:    da49        I.      BGE      0x176c ; GPIO_Set_High_Interrupt + 352
-        0x000016d8:    bf00        ..      NOP      
-        0x000016da:    2088        .       MOVS     r0,#0x88
-        0x000016dc:    49be        .I      LDR      r1,[pc,#760] ; [0x19d8] = 0x10008040
-        0x000016de:    7308        .s      STRB     r0,[r1,#0xc]
-        0x000016e0:    7308        .s      STRB     r0,[r1,#0xc]
-        0x000016e2:    bf00        ..      NOP      
-        0x000016e4:    48b9        .H      LDR      r0,[pc,#740] ; [0x19cc] = 0x10004fe0
-        0x000016e6:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x000016e8:    2000        .       MOVS     r0,#0
-        0x000016ea:    49ba        .I      LDR      r1,[pc,#744] ; [0x19d4] = 0x10008340
-        0x000016ec:    7a89        .z      LDRB     r1,[r1,#0xa]
-        0x000016ee:    4300        .C      ORRS     r0,r0,r0
-        0x000016f0:    49b8        .I      LDR      r1,[pc,#736] ; [0x19d4] = 0x10008340
-        0x000016f2:    7a89        .z      LDRB     r1,[r1,#0xa]
-        0x000016f4:    4308        .C      ORRS     r0,r0,r1
-        0x000016f6:    49b5        .I      LDR      r1,[pc,#724] ; [0x19cc] = 0x10004fe0
-        0x000016f8:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x000016fa:    4ab6        .J      LDR      r2,[pc,#728] ; [0x19d4] = 0x10008340
-        0x000016fc:    7ad2        .z      LDRB     r2,[r2,#0xb]
-        0x000016fe:    4311        .C      ORRS     r1,r1,r2
-        0x00001700:    4ab4        .J      LDR      r2,[pc,#720] ; [0x19d4] = 0x10008340
-        0x00001702:    7ad2        .z      LDRB     r2,[r2,#0xb]
-        0x00001704:    4311        .C      ORRS     r1,r1,r2
-        0x00001706:    0209        ..      LSLS     r1,r1,#8
+        0x00001624:    2400        .$      MOVS     r4,#0
+        0x00001626:    2600        .&      MOVS     r6,#0
+        0x00001628:    2080        .       MOVS     r0,#0x80
+        0x0000162a:    4028        (@      ANDS     r0,r0,r5
+        0x0000162c:    2800        .(      CMP      r0,#0
+        0x0000162e:    d07d        }.      BEQ      0x172c ; GPIO_Set_High_Interrupt + 268
+        0x00001630:    2180        .!      MOVS     r1,#0x80
+        0x00001632:    4628        (F      MOV      r0,r5
+        0x00001634:    4388        .C      BICS     r0,r0,r1
+        0x00001636:    4605        .F      MOV      r5,r0
+        0x00001638:    2d1f        .-      CMP      r5,#0x1f
+        0x0000163a:    dc53        S.      BGT      0x16e4 ; GPIO_Set_High_Interrupt + 196
+        0x0000163c:    48e8        .H      LDR      r0,[pc,#928] ; [0x19e0] = 0x10004fe0
+        0x0000163e:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x00001640:    2000        .       MOVS     r0,#0
+        0x00001642:    49e9        .I      LDR      r1,[pc,#932] ; [0x19e8] = 0x10008340
+        0x00001644:    7989        .y      LDRB     r1,[r1,#6]
+        0x00001646:    4300        .C      ORRS     r0,r0,r0
+        0x00001648:    49e7        .I      LDR      r1,[pc,#924] ; [0x19e8] = 0x10008340
+        0x0000164a:    7989        .y      LDRB     r1,[r1,#6]
+        0x0000164c:    4308        .C      ORRS     r0,r0,r1
+        0x0000164e:    49e4        .I      LDR      r1,[pc,#912] ; [0x19e0] = 0x10004fe0
+        0x00001650:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00001652:    2100        .!      MOVS     r1,#0
+        0x00001654:    4ae4        .J      LDR      r2,[pc,#912] ; [0x19e8] = 0x10008340
+        0x00001656:    79d2        .y      LDRB     r2,[r2,#7]
+        0x00001658:    4309        .C      ORRS     r1,r1,r1
+        0x0000165a:    4ae3        .J      LDR      r2,[pc,#908] ; [0x19e8] = 0x10008340
+        0x0000165c:    79d2        .y      LDRB     r2,[r2,#7]
+        0x0000165e:    4311        .C      ORRS     r1,r1,r2
+        0x00001660:    0209        ..      LSLS     r1,r1,#8
+        0x00001662:    4308        .C      ORRS     r0,r0,r1
+        0x00001664:    49de        .I      LDR      r1,[pc,#888] ; [0x19e0] = 0x10004fe0
+        0x00001666:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00001668:    2100        .!      MOVS     r1,#0
+        0x0000166a:    4adf        .J      LDR      r2,[pc,#892] ; [0x19e8] = 0x10008340
+        0x0000166c:    7a12        .z      LDRB     r2,[r2,#8]
+        0x0000166e:    4309        .C      ORRS     r1,r1,r1
+        0x00001670:    4add        .J      LDR      r2,[pc,#884] ; [0x19e8] = 0x10008340
+        0x00001672:    7a12        .z      LDRB     r2,[r2,#8]
+        0x00001674:    4311        .C      ORRS     r1,r1,r2
+        0x00001676:    0409        ..      LSLS     r1,r1,#16
+        0x00001678:    4308        .C      ORRS     r0,r0,r1
+        0x0000167a:    49d9        .I      LDR      r1,[pc,#868] ; [0x19e0] = 0x10004fe0
+        0x0000167c:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x0000167e:    2100        .!      MOVS     r1,#0
+        0x00001680:    4ad9        .J      LDR      r2,[pc,#868] ; [0x19e8] = 0x10008340
+        0x00001682:    7a52        Rz      LDRB     r2,[r2,#9]
+        0x00001684:    4309        .C      ORRS     r1,r1,r1
+        0x00001686:    4ad8        .J      LDR      r2,[pc,#864] ; [0x19e8] = 0x10008340
+        0x00001688:    7a52        Rz      LDRB     r2,[r2,#9]
+        0x0000168a:    4311        .C      ORRS     r1,r1,r2
+        0x0000168c:    0609        ..      LSLS     r1,r1,#24
+        0x0000168e:    4308        .C      ORRS     r0,r0,r1
+        0x00001690:    4604        .F      MOV      r4,r0
+        0x00001692:    2001        .       MOVS     r0,#1
+        0x00001694:    40a8        .@      LSLS     r0,r0,r5
+        0x00001696:    4304        .C      ORRS     r4,r4,r0
+        0x00001698:    bf00        ..      NOP      
+        0x0000169a:    bf00        ..      NOP      
+        0x0000169c:    49d3        .I      LDR      r1,[pc,#844] ; [0x19ec] = 0x10008040
+        0x0000169e:    730c        .s      STRB     r4,[r1,#0xc]
+        0x000016a0:    730c        .s      STRB     r4,[r1,#0xc]
+        0x000016a2:    bf00        ..      NOP      
+        0x000016a4:    bf00        ..      NOP      
+        0x000016a6:    0420         .      LSLS     r0,r4,#16
+        0x000016a8:    0e00        ..      LSRS     r0,r0,#24
+        0x000016aa:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x000016ac:    0420         .      LSLS     r0,r4,#16
+        0x000016ae:    0e00        ..      LSRS     r0,r0,#24
+        0x000016b0:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x000016b2:    bf00        ..      NOP      
+        0x000016b4:    bf00        ..      NOP      
+        0x000016b6:    0220         .      LSLS     r0,r4,#8
+        0x000016b8:    0e00        ..      LSRS     r0,r0,#24
+        0x000016ba:    7388        .s      STRB     r0,[r1,#0xe]
+        0x000016bc:    0220         .      LSLS     r0,r4,#8
+        0x000016be:    0e00        ..      LSRS     r0,r0,#24
+        0x000016c0:    7388        .s      STRB     r0,[r1,#0xe]
+        0x000016c2:    bf00        ..      NOP      
+        0x000016c4:    bf00        ..      NOP      
+        0x000016c6:    0e20         .      LSRS     r0,r4,#24
+        0x000016c8:    73c8        .s      STRB     r0,[r1,#0xf]
+        0x000016ca:    0e20         .      LSRS     r0,r4,#24
+        0x000016cc:    73c8        .s      STRB     r0,[r1,#0xf]
+        0x000016ce:    bf00        ..      NOP      
+        0x000016d0:    bf00        ..      NOP      
+        0x000016d2:    bf00        ..      NOP      
+        0x000016d4:    2008        .       MOVS     r0,#8
+        0x000016d6:    49c5        .I      LDR      r1,[pc,#788] ; [0x19ec] = 0x10008040
+        0x000016d8:    3940        @9      SUBS     r1,r1,#0x40
+        0x000016da:    7148        Hq      STRB     r0,[r1,#5]
+        0x000016dc:    bf00        ..      NOP      
+        0x000016de:    2064        d       MOVS     r0,#0x64
+        0x000016e0:    f001fb5b    ..[.    BL       whileDelay ; 0x2d9a
+        0x000016e4:    2d1f        .-      CMP      r5,#0x1f
+        0x000016e6:    dd4b        K.      BLE      0x1780 ; GPIO_Set_High_Interrupt + 352
+        0x000016e8:    2d28        (-      CMP      r5,#0x28
+        0x000016ea:    da49        I.      BGE      0x1780 ; GPIO_Set_High_Interrupt + 352
+        0x000016ec:    bf00        ..      NOP      
+        0x000016ee:    2088        .       MOVS     r0,#0x88
+        0x000016f0:    49be        .I      LDR      r1,[pc,#760] ; [0x19ec] = 0x10008040
+        0x000016f2:    7308        .s      STRB     r0,[r1,#0xc]
+        0x000016f4:    7308        .s      STRB     r0,[r1,#0xc]
+        0x000016f6:    bf00        ..      NOP      
+        0x000016f8:    48b9        .H      LDR      r0,[pc,#740] ; [0x19e0] = 0x10004fe0
+        0x000016fa:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x000016fc:    2000        .       MOVS     r0,#0
+        0x000016fe:    49ba        .I      LDR      r1,[pc,#744] ; [0x19e8] = 0x10008340
+        0x00001700:    7a89        .z      LDRB     r1,[r1,#0xa]
+        0x00001702:    4300        .C      ORRS     r0,r0,r0
+        0x00001704:    49b8        .I      LDR      r1,[pc,#736] ; [0x19e8] = 0x10008340
+        0x00001706:    7a89        .z      LDRB     r1,[r1,#0xa]
         0x00001708:    4308        .C      ORRS     r0,r0,r1
-        0x0000170a:    49b0        .I      LDR      r1,[pc,#704] ; [0x19cc] = 0x10004fe0
+        0x0000170a:    49b5        .I      LDR      r1,[pc,#724] ; [0x19e0] = 0x10004fe0
         0x0000170c:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x0000170e:    4ab1        .J      LDR      r2,[pc,#708] ; [0x19d4] = 0x10008340
-        0x00001710:    7b12        .{      LDRB     r2,[r2,#0xc]
+        0x0000170e:    4ab6        .J      LDR      r2,[pc,#728] ; [0x19e8] = 0x10008340
+        0x00001710:    7ad2        .z      LDRB     r2,[r2,#0xb]
         0x00001712:    4311        .C      ORRS     r1,r1,r2
-        0x00001714:    4aaf        .J      LDR      r2,[pc,#700] ; [0x19d4] = 0x10008340
-        0x00001716:    e000        ..      B        0x171a ; GPIO_Set_High_Interrupt + 270
-        0x00001718:    e028        (.      B        0x176c ; GPIO_Set_High_Interrupt + 352
-        0x0000171a:    7b12        .{      LDRB     r2,[r2,#0xc]
-        0x0000171c:    4311        .C      ORRS     r1,r1,r2
-        0x0000171e:    0409        ..      LSLS     r1,r1,#16
-        0x00001720:    4308        .C      ORRS     r0,r0,r1
-        0x00001722:    49aa        .I      LDR      r1,[pc,#680] ; [0x19cc] = 0x10004fe0
-        0x00001724:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00001726:    4aab        .J      LDR      r2,[pc,#684] ; [0x19d4] = 0x10008340
-        0x00001728:    7b52        R{      LDRB     r2,[r2,#0xd]
-        0x0000172a:    4311        .C      ORRS     r1,r1,r2
-        0x0000172c:    4aa9        .J      LDR      r2,[pc,#676] ; [0x19d4] = 0x10008340
-        0x0000172e:    7b52        R{      LDRB     r2,[r2,#0xd]
+        0x00001714:    4ab4        .J      LDR      r2,[pc,#720] ; [0x19e8] = 0x10008340
+        0x00001716:    7ad2        .z      LDRB     r2,[r2,#0xb]
+        0x00001718:    4311        .C      ORRS     r1,r1,r2
+        0x0000171a:    0209        ..      LSLS     r1,r1,#8
+        0x0000171c:    4308        .C      ORRS     r0,r0,r1
+        0x0000171e:    49b0        .I      LDR      r1,[pc,#704] ; [0x19e0] = 0x10004fe0
+        0x00001720:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00001722:    4ab1        .J      LDR      r2,[pc,#708] ; [0x19e8] = 0x10008340
+        0x00001724:    7b12        .{      LDRB     r2,[r2,#0xc]
+        0x00001726:    4311        .C      ORRS     r1,r1,r2
+        0x00001728:    4aaf        .J      LDR      r2,[pc,#700] ; [0x19e8] = 0x10008340
+        0x0000172a:    e000        ..      B        0x172e ; GPIO_Set_High_Interrupt + 270
+        0x0000172c:    e028        (.      B        0x1780 ; GPIO_Set_High_Interrupt + 352
+        0x0000172e:    7b12        .{      LDRB     r2,[r2,#0xc]
         0x00001730:    4311        .C      ORRS     r1,r1,r2
-        0x00001732:    0609        ..      LSLS     r1,r1,#24
+        0x00001732:    0409        ..      LSLS     r1,r1,#16
         0x00001734:    4308        .C      ORRS     r0,r0,r1
-        0x00001736:    b2c6        ..      UXTB     r6,r0
-        0x00001738:    4629        )F      MOV      r1,r5
-        0x0000173a:    3920         9      SUBS     r1,r1,#0x20
-        0x0000173c:    2001        .       MOVS     r0,#1
-        0x0000173e:    4088        .@      LSLS     r0,r0,r1
-        0x00001740:    4330        0C      ORRS     r0,r0,r6
-        0x00001742:    b2c6        ..      UXTB     r6,r0
-        0x00001744:    bf00        ..      NOP      
-        0x00001746:    48a4        .H      LDR      r0,[pc,#656] ; [0x19d8] = 0x10008040
-        0x00001748:    7346        Fs      STRB     r6,[r0,#0xd]
-        0x0000174a:    7346        Fs      STRB     r6,[r0,#0xd]
-        0x0000174c:    bf00        ..      NOP      
-        0x0000174e:    bf00        ..      NOP      
-        0x00001750:    2000        .       MOVS     r0,#0
-        0x00001752:    49a1        .I      LDR      r1,[pc,#644] ; [0x19d8] = 0x10008040
-        0x00001754:    7388        .s      STRB     r0,[r1,#0xe]
-        0x00001756:    7388        .s      STRB     r0,[r1,#0xe]
+        0x00001736:    49aa        .I      LDR      r1,[pc,#680] ; [0x19e0] = 0x10004fe0
+        0x00001738:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x0000173a:    4aab        .J      LDR      r2,[pc,#684] ; [0x19e8] = 0x10008340
+        0x0000173c:    7b52        R{      LDRB     r2,[r2,#0xd]
+        0x0000173e:    4311        .C      ORRS     r1,r1,r2
+        0x00001740:    4aa9        .J      LDR      r2,[pc,#676] ; [0x19e8] = 0x10008340
+        0x00001742:    7b52        R{      LDRB     r2,[r2,#0xd]
+        0x00001744:    4311        .C      ORRS     r1,r1,r2
+        0x00001746:    0609        ..      LSLS     r1,r1,#24
+        0x00001748:    4308        .C      ORRS     r0,r0,r1
+        0x0000174a:    b2c6        ..      UXTB     r6,r0
+        0x0000174c:    4629        )F      MOV      r1,r5
+        0x0000174e:    3920         9      SUBS     r1,r1,#0x20
+        0x00001750:    2001        .       MOVS     r0,#1
+        0x00001752:    4088        .@      LSLS     r0,r0,r1
+        0x00001754:    4330        0C      ORRS     r0,r0,r6
+        0x00001756:    b2c6        ..      UXTB     r6,r0
         0x00001758:    bf00        ..      NOP      
-        0x0000175a:    bf00        ..      NOP      
-        0x0000175c:    2008        .       MOVS     r0,#8
-        0x0000175e:    499e        .I      LDR      r1,[pc,#632] ; [0x19d8] = 0x10008040
-        0x00001760:    3940        @9      SUBS     r1,r1,#0x40
-        0x00001762:    7648        Hv      STRB     r0,[r1,#0x19]
-        0x00001764:    bf00        ..      NOP      
-        0x00001766:    2064        d       MOVS     r0,#0x64
-        0x00001768:    f001fb0d    ....    BL       whileDelay ; 0x2d86
-        0x0000176c:    bd70        p.      POP      {r4-r6,pc}
+        0x0000175a:    48a4        .H      LDR      r0,[pc,#656] ; [0x19ec] = 0x10008040
+        0x0000175c:    7346        Fs      STRB     r6,[r0,#0xd]
+        0x0000175e:    7346        Fs      STRB     r6,[r0,#0xd]
+        0x00001760:    bf00        ..      NOP      
+        0x00001762:    bf00        ..      NOP      
+        0x00001764:    2000        .       MOVS     r0,#0
+        0x00001766:    49a1        .I      LDR      r1,[pc,#644] ; [0x19ec] = 0x10008040
+        0x00001768:    7388        .s      STRB     r0,[r1,#0xe]
+        0x0000176a:    7388        .s      STRB     r0,[r1,#0xe]
+        0x0000176c:    bf00        ..      NOP      
+        0x0000176e:    bf00        ..      NOP      
+        0x00001770:    2008        .       MOVS     r0,#8
+        0x00001772:    499e        .I      LDR      r1,[pc,#632] ; [0x19ec] = 0x10008040
+        0x00001774:    3940        @9      SUBS     r1,r1,#0x40
+        0x00001776:    7648        Hv      STRB     r0,[r1,#0x19]
+        0x00001778:    bf00        ..      NOP      
+        0x0000177a:    2064        d       MOVS     r0,#0x64
+        0x0000177c:    f001fb0d    ....    BL       whileDelay ; 0x2d9a
+        0x00001780:    bd70        p.      POP      {r4-r6,pc}
     GPIO_Set_Low_Interrupt
-        0x0000176e:    b570        p.      PUSH     {r4-r6,lr}
-        0x00001770:    4605        .F      MOV      r5,r0
-        0x00001772:    2400        .$      MOVS     r4,#0
-        0x00001774:    2600        .&      MOVS     r6,#0
-        0x00001776:    2080        .       MOVS     r0,#0x80
-        0x00001778:    4028        (@      ANDS     r0,r0,r5
-        0x0000177a:    2800        .(      CMP      r0,#0
-        0x0000177c:    d07e        ~.      BEQ      0x187c ; GPIO_Set_Low_Interrupt + 270
-        0x0000177e:    2180        .!      MOVS     r1,#0x80
-        0x00001780:    4628        (F      MOV      r0,r5
-        0x00001782:    4388        .C      BICS     r0,r0,r1
+        0x00001782:    b570        p.      PUSH     {r4-r6,lr}
         0x00001784:    4605        .F      MOV      r5,r0
-        0x00001786:    2d1f        .-      CMP      r5,#0x1f
-        0x00001788:    dc53        S.      BGT      0x1832 ; GPIO_Set_Low_Interrupt + 196
-        0x0000178a:    4890        .H      LDR      r0,[pc,#576] ; [0x19cc] = 0x10004fe0
-        0x0000178c:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x0000178e:    2000        .       MOVS     r0,#0
-        0x00001790:    4990        .I      LDR      r1,[pc,#576] ; [0x19d4] = 0x10008340
-        0x00001792:    7889        .x      LDRB     r1,[r1,#2]
-        0x00001794:    4300        .C      ORRS     r0,r0,r0
-        0x00001796:    498f        .I      LDR      r1,[pc,#572] ; [0x19d4] = 0x10008340
-        0x00001798:    7889        .x      LDRB     r1,[r1,#2]
-        0x0000179a:    4308        .C      ORRS     r0,r0,r1
-        0x0000179c:    498b        .I      LDR      r1,[pc,#556] ; [0x19cc] = 0x10004fe0
-        0x0000179e:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x000017a0:    2100        .!      MOVS     r1,#0
-        0x000017a2:    4a8c        .J      LDR      r2,[pc,#560] ; [0x19d4] = 0x10008340
-        0x000017a4:    78d2        .x      LDRB     r2,[r2,#3]
-        0x000017a6:    4309        .C      ORRS     r1,r1,r1
-        0x000017a8:    4a8a        .J      LDR      r2,[pc,#552] ; [0x19d4] = 0x10008340
-        0x000017aa:    78d2        .x      LDRB     r2,[r2,#3]
-        0x000017ac:    4311        .C      ORRS     r1,r1,r2
-        0x000017ae:    0209        ..      LSLS     r1,r1,#8
-        0x000017b0:    4308        .C      ORRS     r0,r0,r1
-        0x000017b2:    4986        .I      LDR      r1,[pc,#536] ; [0x19cc] = 0x10004fe0
-        0x000017b4:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x000017b6:    2100        .!      MOVS     r1,#0
-        0x000017b8:    4a86        .J      LDR      r2,[pc,#536] ; [0x19d4] = 0x10008340
-        0x000017ba:    7912        .y      LDRB     r2,[r2,#4]
-        0x000017bc:    4309        .C      ORRS     r1,r1,r1
-        0x000017be:    4a85        .J      LDR      r2,[pc,#532] ; [0x19d4] = 0x10008340
-        0x000017c0:    7912        .y      LDRB     r2,[r2,#4]
-        0x000017c2:    4311        .C      ORRS     r1,r1,r2
-        0x000017c4:    0409        ..      LSLS     r1,r1,#16
-        0x000017c6:    4308        .C      ORRS     r0,r0,r1
-        0x000017c8:    4980        .I      LDR      r1,[pc,#512] ; [0x19cc] = 0x10004fe0
-        0x000017ca:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x000017cc:    2100        .!      MOVS     r1,#0
-        0x000017ce:    4a81        .J      LDR      r2,[pc,#516] ; [0x19d4] = 0x10008340
-        0x000017d0:    7952        Ry      LDRB     r2,[r2,#5]
-        0x000017d2:    4309        .C      ORRS     r1,r1,r1
-        0x000017d4:    4a7f        .J      LDR      r2,[pc,#508] ; [0x19d4] = 0x10008340
-        0x000017d6:    7952        Ry      LDRB     r2,[r2,#5]
-        0x000017d8:    4311        .C      ORRS     r1,r1,r2
-        0x000017da:    0609        ..      LSLS     r1,r1,#24
-        0x000017dc:    4308        .C      ORRS     r0,r0,r1
-        0x000017de:    4604        .F      MOV      r4,r0
-        0x000017e0:    2001        .       MOVS     r0,#1
-        0x000017e2:    40a8        .@      LSLS     r0,r0,r5
-        0x000017e4:    4304        .C      ORRS     r4,r4,r0
-        0x000017e6:    bf00        ..      NOP      
-        0x000017e8:    bf00        ..      NOP      
-        0x000017ea:    497b        {I      LDR      r1,[pc,#492] ; [0x19d8] = 0x10008040
-        0x000017ec:    730c        .s      STRB     r4,[r1,#0xc]
-        0x000017ee:    730c        .s      STRB     r4,[r1,#0xc]
-        0x000017f0:    bf00        ..      NOP      
-        0x000017f2:    bf00        ..      NOP      
-        0x000017f4:    0420         .      LSLS     r0,r4,#16
-        0x000017f6:    0e00        ..      LSRS     r0,r0,#24
-        0x000017f8:    7348        Hs      STRB     r0,[r1,#0xd]
-        0x000017fa:    0420         .      LSLS     r0,r4,#16
-        0x000017fc:    0e00        ..      LSRS     r0,r0,#24
-        0x000017fe:    7348        Hs      STRB     r0,[r1,#0xd]
-        0x00001800:    bf00        ..      NOP      
-        0x00001802:    bf00        ..      NOP      
-        0x00001804:    0220         .      LSLS     r0,r4,#8
-        0x00001806:    0e00        ..      LSRS     r0,r0,#24
-        0x00001808:    7388        .s      STRB     r0,[r1,#0xe]
-        0x0000180a:    0220         .      LSLS     r0,r4,#8
-        0x0000180c:    0e00        ..      LSRS     r0,r0,#24
-        0x0000180e:    7388        .s      STRB     r0,[r1,#0xe]
-        0x00001810:    bf00        ..      NOP      
-        0x00001812:    bf00        ..      NOP      
-        0x00001814:    0e20         .      LSRS     r0,r4,#24
-        0x00001816:    73c8        .s      STRB     r0,[r1,#0xf]
-        0x00001818:    0e20         .      LSRS     r0,r4,#24
-        0x0000181a:    73c8        .s      STRB     r0,[r1,#0xf]
-        0x0000181c:    bf00        ..      NOP      
-        0x0000181e:    bf00        ..      NOP      
-        0x00001820:    bf00        ..      NOP      
-        0x00001822:    2004        .       MOVS     r0,#4
-        0x00001824:    496c        lI      LDR      r1,[pc,#432] ; [0x19d8] = 0x10008040
-        0x00001826:    3940        @9      SUBS     r1,r1,#0x40
-        0x00001828:    7148        Hq      STRB     r0,[r1,#5]
-        0x0000182a:    bf00        ..      NOP      
-        0x0000182c:    2064        d       MOVS     r0,#0x64
-        0x0000182e:    f001faaa    ....    BL       whileDelay ; 0x2d86
-        0x00001832:    2d1f        .-      CMP      r5,#0x1f
-        0x00001834:    dd4a        J.      BLE      0x18cc ; GPIO_Set_Low_Interrupt + 350
-        0x00001836:    2d28        (-      CMP      r5,#0x28
-        0x00001838:    da48        H.      BGE      0x18cc ; GPIO_Set_Low_Interrupt + 350
-        0x0000183a:    bf00        ..      NOP      
-        0x0000183c:    2088        .       MOVS     r0,#0x88
-        0x0000183e:    4966        fI      LDR      r1,[pc,#408] ; [0x19d8] = 0x10008040
-        0x00001840:    7308        .s      STRB     r0,[r1,#0xc]
-        0x00001842:    7308        .s      STRB     r0,[r1,#0xc]
-        0x00001844:    bf00        ..      NOP      
-        0x00001846:    bf00        ..      NOP      
-        0x00001848:    2000        .       MOVS     r0,#0
-        0x0000184a:    7348        Hs      STRB     r0,[r1,#0xd]
-        0x0000184c:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x00001786:    2400        .$      MOVS     r4,#0
+        0x00001788:    2600        .&      MOVS     r6,#0
+        0x0000178a:    2080        .       MOVS     r0,#0x80
+        0x0000178c:    4028        (@      ANDS     r0,r0,r5
+        0x0000178e:    2800        .(      CMP      r0,#0
+        0x00001790:    d07e        ~.      BEQ      0x1890 ; GPIO_Set_Low_Interrupt + 270
+        0x00001792:    2180        .!      MOVS     r1,#0x80
+        0x00001794:    4628        (F      MOV      r0,r5
+        0x00001796:    4388        .C      BICS     r0,r0,r1
+        0x00001798:    4605        .F      MOV      r5,r0
+        0x0000179a:    2d1f        .-      CMP      r5,#0x1f
+        0x0000179c:    dc53        S.      BGT      0x1846 ; GPIO_Set_Low_Interrupt + 196
+        0x0000179e:    4890        .H      LDR      r0,[pc,#576] ; [0x19e0] = 0x10004fe0
+        0x000017a0:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x000017a2:    2000        .       MOVS     r0,#0
+        0x000017a4:    4990        .I      LDR      r1,[pc,#576] ; [0x19e8] = 0x10008340
+        0x000017a6:    7889        .x      LDRB     r1,[r1,#2]
+        0x000017a8:    4300        .C      ORRS     r0,r0,r0
+        0x000017aa:    498f        .I      LDR      r1,[pc,#572] ; [0x19e8] = 0x10008340
+        0x000017ac:    7889        .x      LDRB     r1,[r1,#2]
+        0x000017ae:    4308        .C      ORRS     r0,r0,r1
+        0x000017b0:    498b        .I      LDR      r1,[pc,#556] ; [0x19e0] = 0x10004fe0
+        0x000017b2:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x000017b4:    2100        .!      MOVS     r1,#0
+        0x000017b6:    4a8c        .J      LDR      r2,[pc,#560] ; [0x19e8] = 0x10008340
+        0x000017b8:    78d2        .x      LDRB     r2,[r2,#3]
+        0x000017ba:    4309        .C      ORRS     r1,r1,r1
+        0x000017bc:    4a8a        .J      LDR      r2,[pc,#552] ; [0x19e8] = 0x10008340
+        0x000017be:    78d2        .x      LDRB     r2,[r2,#3]
+        0x000017c0:    4311        .C      ORRS     r1,r1,r2
+        0x000017c2:    0209        ..      LSLS     r1,r1,#8
+        0x000017c4:    4308        .C      ORRS     r0,r0,r1
+        0x000017c6:    4986        .I      LDR      r1,[pc,#536] ; [0x19e0] = 0x10004fe0
+        0x000017c8:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x000017ca:    2100        .!      MOVS     r1,#0
+        0x000017cc:    4a86        .J      LDR      r2,[pc,#536] ; [0x19e8] = 0x10008340
+        0x000017ce:    7912        .y      LDRB     r2,[r2,#4]
+        0x000017d0:    4309        .C      ORRS     r1,r1,r1
+        0x000017d2:    4a85        .J      LDR      r2,[pc,#532] ; [0x19e8] = 0x10008340
+        0x000017d4:    7912        .y      LDRB     r2,[r2,#4]
+        0x000017d6:    4311        .C      ORRS     r1,r1,r2
+        0x000017d8:    0409        ..      LSLS     r1,r1,#16
+        0x000017da:    4308        .C      ORRS     r0,r0,r1
+        0x000017dc:    4980        .I      LDR      r1,[pc,#512] ; [0x19e0] = 0x10004fe0
+        0x000017de:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x000017e0:    2100        .!      MOVS     r1,#0
+        0x000017e2:    4a81        .J      LDR      r2,[pc,#516] ; [0x19e8] = 0x10008340
+        0x000017e4:    7952        Ry      LDRB     r2,[r2,#5]
+        0x000017e6:    4309        .C      ORRS     r1,r1,r1
+        0x000017e8:    4a7f        .J      LDR      r2,[pc,#508] ; [0x19e8] = 0x10008340
+        0x000017ea:    7952        Ry      LDRB     r2,[r2,#5]
+        0x000017ec:    4311        .C      ORRS     r1,r1,r2
+        0x000017ee:    0609        ..      LSLS     r1,r1,#24
+        0x000017f0:    4308        .C      ORRS     r0,r0,r1
+        0x000017f2:    4604        .F      MOV      r4,r0
+        0x000017f4:    2001        .       MOVS     r0,#1
+        0x000017f6:    40a8        .@      LSLS     r0,r0,r5
+        0x000017f8:    4304        .C      ORRS     r4,r4,r0
+        0x000017fa:    bf00        ..      NOP      
+        0x000017fc:    bf00        ..      NOP      
+        0x000017fe:    497b        {I      LDR      r1,[pc,#492] ; [0x19ec] = 0x10008040
+        0x00001800:    730c        .s      STRB     r4,[r1,#0xc]
+        0x00001802:    730c        .s      STRB     r4,[r1,#0xc]
+        0x00001804:    bf00        ..      NOP      
+        0x00001806:    bf00        ..      NOP      
+        0x00001808:    0420         .      LSLS     r0,r4,#16
+        0x0000180a:    0e00        ..      LSRS     r0,r0,#24
+        0x0000180c:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x0000180e:    0420         .      LSLS     r0,r4,#16
+        0x00001810:    0e00        ..      LSRS     r0,r0,#24
+        0x00001812:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x00001814:    bf00        ..      NOP      
+        0x00001816:    bf00        ..      NOP      
+        0x00001818:    0220         .      LSLS     r0,r4,#8
+        0x0000181a:    0e00        ..      LSRS     r0,r0,#24
+        0x0000181c:    7388        .s      STRB     r0,[r1,#0xe]
+        0x0000181e:    0220         .      LSLS     r0,r4,#8
+        0x00001820:    0e00        ..      LSRS     r0,r0,#24
+        0x00001822:    7388        .s      STRB     r0,[r1,#0xe]
+        0x00001824:    bf00        ..      NOP      
+        0x00001826:    bf00        ..      NOP      
+        0x00001828:    0e20         .      LSRS     r0,r4,#24
+        0x0000182a:    73c8        .s      STRB     r0,[r1,#0xf]
+        0x0000182c:    0e20         .      LSRS     r0,r4,#24
+        0x0000182e:    73c8        .s      STRB     r0,[r1,#0xf]
+        0x00001830:    bf00        ..      NOP      
+        0x00001832:    bf00        ..      NOP      
+        0x00001834:    bf00        ..      NOP      
+        0x00001836:    2004        .       MOVS     r0,#4
+        0x00001838:    496c        lI      LDR      r1,[pc,#432] ; [0x19ec] = 0x10008040
+        0x0000183a:    3940        @9      SUBS     r1,r1,#0x40
+        0x0000183c:    7148        Hq      STRB     r0,[r1,#5]
+        0x0000183e:    bf00        ..      NOP      
+        0x00001840:    2064        d       MOVS     r0,#0x64
+        0x00001842:    f001faaa    ....    BL       whileDelay ; 0x2d9a
+        0x00001846:    2d1f        .-      CMP      r5,#0x1f
+        0x00001848:    dd4a        J.      BLE      0x18e0 ; GPIO_Set_Low_Interrupt + 350
+        0x0000184a:    2d28        (-      CMP      r5,#0x28
+        0x0000184c:    da48        H.      BGE      0x18e0 ; GPIO_Set_Low_Interrupt + 350
         0x0000184e:    bf00        ..      NOP      
-        0x00001850:    485e        ^H      LDR      r0,[pc,#376] ; [0x19cc] = 0x10004fe0
-        0x00001852:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00001854:    2000        .       MOVS     r0,#0
-        0x00001856:    495f        _I      LDR      r1,[pc,#380] ; [0x19d4] = 0x10008340
-        0x00001858:    7989        .y      LDRB     r1,[r1,#6]
-        0x0000185a:    4300        .C      ORRS     r0,r0,r0
-        0x0000185c:    495d        ]I      LDR      r1,[pc,#372] ; [0x19d4] = 0x10008340
-        0x0000185e:    7989        .y      LDRB     r1,[r1,#6]
-        0x00001860:    4308        .C      ORRS     r0,r0,r1
-        0x00001862:    495a        ZI      LDR      r1,[pc,#360] ; [0x19cc] = 0x10004fe0
-        0x00001864:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00001866:    4a5b        [J      LDR      r2,[pc,#364] ; [0x19d4] = 0x10008340
-        0x00001868:    79d2        .y      LDRB     r2,[r2,#7]
-        0x0000186a:    4311        .C      ORRS     r1,r1,r2
-        0x0000186c:    4a59        YJ      LDR      r2,[pc,#356] ; [0x19d4] = 0x10008340
-        0x0000186e:    79d2        .y      LDRB     r2,[r2,#7]
-        0x00001870:    4311        .C      ORRS     r1,r1,r2
-        0x00001872:    0209        ..      LSLS     r1,r1,#8
+        0x00001850:    2088        .       MOVS     r0,#0x88
+        0x00001852:    4966        fI      LDR      r1,[pc,#408] ; [0x19ec] = 0x10008040
+        0x00001854:    7308        .s      STRB     r0,[r1,#0xc]
+        0x00001856:    7308        .s      STRB     r0,[r1,#0xc]
+        0x00001858:    bf00        ..      NOP      
+        0x0000185a:    bf00        ..      NOP      
+        0x0000185c:    2000        .       MOVS     r0,#0
+        0x0000185e:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x00001860:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x00001862:    bf00        ..      NOP      
+        0x00001864:    485e        ^H      LDR      r0,[pc,#376] ; [0x19e0] = 0x10004fe0
+        0x00001866:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x00001868:    2000        .       MOVS     r0,#0
+        0x0000186a:    495f        _I      LDR      r1,[pc,#380] ; [0x19e8] = 0x10008340
+        0x0000186c:    7989        .y      LDRB     r1,[r1,#6]
+        0x0000186e:    4300        .C      ORRS     r0,r0,r0
+        0x00001870:    495d        ]I      LDR      r1,[pc,#372] ; [0x19e8] = 0x10008340
+        0x00001872:    7989        .y      LDRB     r1,[r1,#6]
         0x00001874:    4308        .C      ORRS     r0,r0,r1
-        0x00001876:    4955        UI      LDR      r1,[pc,#340] ; [0x19cc] = 0x10004fe0
+        0x00001876:    495a        ZI      LDR      r1,[pc,#360] ; [0x19e0] = 0x10004fe0
         0x00001878:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x0000187a:    e000        ..      B        0x187e ; GPIO_Set_Low_Interrupt + 272
-        0x0000187c:    e026        &.      B        0x18cc ; GPIO_Set_Low_Interrupt + 350
-        0x0000187e:    4a55        UJ      LDR      r2,[pc,#340] ; [0x19d4] = 0x10008340
-        0x00001880:    7a12        .z      LDRB     r2,[r2,#8]
-        0x00001882:    4311        .C      ORRS     r1,r1,r2
-        0x00001884:    4a53        SJ      LDR      r2,[pc,#332] ; [0x19d4] = 0x10008340
-        0x00001886:    7a12        .z      LDRB     r2,[r2,#8]
-        0x00001888:    4311        .C      ORRS     r1,r1,r2
-        0x0000188a:    0409        ..      LSLS     r1,r1,#16
-        0x0000188c:    4308        .C      ORRS     r0,r0,r1
-        0x0000188e:    494f        OI      LDR      r1,[pc,#316] ; [0x19cc] = 0x10004fe0
-        0x00001890:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00001892:    4a50        PJ      LDR      r2,[pc,#320] ; [0x19d4] = 0x10008340
-        0x00001894:    7a52        Rz      LDRB     r2,[r2,#9]
+        0x0000187a:    4a5b        [J      LDR      r2,[pc,#364] ; [0x19e8] = 0x10008340
+        0x0000187c:    79d2        .y      LDRB     r2,[r2,#7]
+        0x0000187e:    4311        .C      ORRS     r1,r1,r2
+        0x00001880:    4a59        YJ      LDR      r2,[pc,#356] ; [0x19e8] = 0x10008340
+        0x00001882:    79d2        .y      LDRB     r2,[r2,#7]
+        0x00001884:    4311        .C      ORRS     r1,r1,r2
+        0x00001886:    0209        ..      LSLS     r1,r1,#8
+        0x00001888:    4308        .C      ORRS     r0,r0,r1
+        0x0000188a:    4955        UI      LDR      r1,[pc,#340] ; [0x19e0] = 0x10004fe0
+        0x0000188c:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x0000188e:    e000        ..      B        0x1892 ; GPIO_Set_Low_Interrupt + 272
+        0x00001890:    e026        &.      B        0x18e0 ; GPIO_Set_Low_Interrupt + 350
+        0x00001892:    4a55        UJ      LDR      r2,[pc,#340] ; [0x19e8] = 0x10008340
+        0x00001894:    7a12        .z      LDRB     r2,[r2,#8]
         0x00001896:    4311        .C      ORRS     r1,r1,r2
-        0x00001898:    4a4e        NJ      LDR      r2,[pc,#312] ; [0x19d4] = 0x10008340
-        0x0000189a:    7a52        Rz      LDRB     r2,[r2,#9]
+        0x00001898:    4a53        SJ      LDR      r2,[pc,#332] ; [0x19e8] = 0x10008340
+        0x0000189a:    7a12        .z      LDRB     r2,[r2,#8]
         0x0000189c:    4311        .C      ORRS     r1,r1,r2
-        0x0000189e:    0609        ..      LSLS     r1,r1,#24
+        0x0000189e:    0409        ..      LSLS     r1,r1,#16
         0x000018a0:    4308        .C      ORRS     r0,r0,r1
-        0x000018a2:    b2c6        ..      UXTB     r6,r0
-        0x000018a4:    4629        )F      MOV      r1,r5
-        0x000018a6:    3920         9      SUBS     r1,r1,#0x20
-        0x000018a8:    2001        .       MOVS     r0,#1
-        0x000018aa:    4088        .@      LSLS     r0,r0,r1
-        0x000018ac:    4330        0C      ORRS     r0,r0,r6
-        0x000018ae:    b2c6        ..      UXTB     r6,r0
-        0x000018b0:    bf00        ..      NOP      
-        0x000018b2:    4849        IH      LDR      r0,[pc,#292] ; [0x19d8] = 0x10008040
-        0x000018b4:    7386        .s      STRB     r6,[r0,#0xe]
-        0x000018b6:    7386        .s      STRB     r6,[r0,#0xe]
-        0x000018b8:    bf00        ..      NOP      
-        0x000018ba:    bf00        ..      NOP      
-        0x000018bc:    2008        .       MOVS     r0,#8
-        0x000018be:    4946        FI      LDR      r1,[pc,#280] ; [0x19d8] = 0x10008040
-        0x000018c0:    3940        @9      SUBS     r1,r1,#0x40
-        0x000018c2:    7648        Hv      STRB     r0,[r1,#0x19]
+        0x000018a2:    494f        OI      LDR      r1,[pc,#316] ; [0x19e0] = 0x10004fe0
+        0x000018a4:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x000018a6:    4a50        PJ      LDR      r2,[pc,#320] ; [0x19e8] = 0x10008340
+        0x000018a8:    7a52        Rz      LDRB     r2,[r2,#9]
+        0x000018aa:    4311        .C      ORRS     r1,r1,r2
+        0x000018ac:    4a4e        NJ      LDR      r2,[pc,#312] ; [0x19e8] = 0x10008340
+        0x000018ae:    7a52        Rz      LDRB     r2,[r2,#9]
+        0x000018b0:    4311        .C      ORRS     r1,r1,r2
+        0x000018b2:    0609        ..      LSLS     r1,r1,#24
+        0x000018b4:    4308        .C      ORRS     r0,r0,r1
+        0x000018b6:    b2c6        ..      UXTB     r6,r0
+        0x000018b8:    4629        )F      MOV      r1,r5
+        0x000018ba:    3920         9      SUBS     r1,r1,#0x20
+        0x000018bc:    2001        .       MOVS     r0,#1
+        0x000018be:    4088        .@      LSLS     r0,r0,r1
+        0x000018c0:    4330        0C      ORRS     r0,r0,r6
+        0x000018c2:    b2c6        ..      UXTB     r6,r0
         0x000018c4:    bf00        ..      NOP      
-        0x000018c6:    2064        d       MOVS     r0,#0x64
-        0x000018c8:    f001fa5d    ..].    BL       whileDelay ; 0x2d86
-        0x000018cc:    bd70        p.      POP      {r4-r6,pc}
+        0x000018c6:    4849        IH      LDR      r0,[pc,#292] ; [0x19ec] = 0x10008040
+        0x000018c8:    7386        .s      STRB     r6,[r0,#0xe]
+        0x000018ca:    7386        .s      STRB     r6,[r0,#0xe]
+        0x000018cc:    bf00        ..      NOP      
+        0x000018ce:    bf00        ..      NOP      
+        0x000018d0:    2008        .       MOVS     r0,#8
+        0x000018d2:    4946        FI      LDR      r1,[pc,#280] ; [0x19ec] = 0x10008040
+        0x000018d4:    3940        @9      SUBS     r1,r1,#0x40
+        0x000018d6:    7648        Hv      STRB     r0,[r1,#0x19]
+        0x000018d8:    bf00        ..      NOP      
+        0x000018da:    2064        d       MOVS     r0,#0x64
+        0x000018dc:    f001fa5d    ..].    BL       whileDelay ; 0x2d9a
+        0x000018e0:    bd70        p.      POP      {r4-r6,pc}
     GPIO_Clear_High_Interrupt
-        0x000018ce:    b570        p.      PUSH     {r4-r6,lr}
-        0x000018d0:    4605        .F      MOV      r5,r0
-        0x000018d2:    2400        .$      MOVS     r4,#0
-        0x000018d4:    2600        .&      MOVS     r6,#0
-        0x000018d6:    2080        .       MOVS     r0,#0x80
-        0x000018d8:    4028        (@      ANDS     r0,r0,r5
-        0x000018da:    2800        .(      CMP      r0,#0
-        0x000018dc:    d07e        ~.      BEQ      0x19dc ; GPIO_Clear_High_Interrupt + 270
-        0x000018de:    2180        .!      MOVS     r1,#0x80
-        0x000018e0:    4628        (F      MOV      r0,r5
-        0x000018e2:    4388        .C      BICS     r0,r0,r1
+        0x000018e2:    b570        p.      PUSH     {r4-r6,lr}
         0x000018e4:    4605        .F      MOV      r5,r0
-        0x000018e6:    2d1f        .-      CMP      r5,#0x1f
-        0x000018e8:    dc55        U.      BGT      0x1996 ; GPIO_Clear_High_Interrupt + 200
-        0x000018ea:    4838        8H      LDR      r0,[pc,#224] ; [0x19cc] = 0x10004fe0
-        0x000018ec:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x000018ee:    2000        .       MOVS     r0,#0
-        0x000018f0:    4938        8I      LDR      r1,[pc,#224] ; [0x19d4] = 0x10008340
-        0x000018f2:    79c9        .y      LDRB     r1,[r1,#7]
-        0x000018f4:    4300        .C      ORRS     r0,r0,r0
-        0x000018f6:    4937        7I      LDR      r1,[pc,#220] ; [0x19d4] = 0x10008340
-        0x000018f8:    79c9        .y      LDRB     r1,[r1,#7]
-        0x000018fa:    4308        .C      ORRS     r0,r0,r1
-        0x000018fc:    4933        3I      LDR      r1,[pc,#204] ; [0x19cc] = 0x10004fe0
-        0x000018fe:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00001900:    2100        .!      MOVS     r1,#0
-        0x00001902:    4a34        4J      LDR      r2,[pc,#208] ; [0x19d4] = 0x10008340
-        0x00001904:    7a12        .z      LDRB     r2,[r2,#8]
-        0x00001906:    4309        .C      ORRS     r1,r1,r1
-        0x00001908:    4a32        2J      LDR      r2,[pc,#200] ; [0x19d4] = 0x10008340
-        0x0000190a:    7a12        .z      LDRB     r2,[r2,#8]
-        0x0000190c:    4311        .C      ORRS     r1,r1,r2
-        0x0000190e:    0209        ..      LSLS     r1,r1,#8
-        0x00001910:    4308        .C      ORRS     r0,r0,r1
-        0x00001912:    492e        .I      LDR      r1,[pc,#184] ; [0x19cc] = 0x10004fe0
-        0x00001914:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00001916:    2100        .!      MOVS     r1,#0
-        0x00001918:    4a2e        .J      LDR      r2,[pc,#184] ; [0x19d4] = 0x10008340
-        0x0000191a:    7a52        Rz      LDRB     r2,[r2,#9]
-        0x0000191c:    4309        .C      ORRS     r1,r1,r1
-        0x0000191e:    4a2d        -J      LDR      r2,[pc,#180] ; [0x19d4] = 0x10008340
-        0x00001920:    7a52        Rz      LDRB     r2,[r2,#9]
-        0x00001922:    4311        .C      ORRS     r1,r1,r2
-        0x00001924:    0409        ..      LSLS     r1,r1,#16
-        0x00001926:    4308        .C      ORRS     r0,r0,r1
-        0x00001928:    4928        (I      LDR      r1,[pc,#160] ; [0x19cc] = 0x10004fe0
-        0x0000192a:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x0000192c:    2100        .!      MOVS     r1,#0
-        0x0000192e:    4a29        )J      LDR      r2,[pc,#164] ; [0x19d4] = 0x10008340
-        0x00001930:    7a92        .z      LDRB     r2,[r2,#0xa]
-        0x00001932:    4309        .C      ORRS     r1,r1,r1
-        0x00001934:    4a27        'J      LDR      r2,[pc,#156] ; [0x19d4] = 0x10008340
-        0x00001936:    7a92        .z      LDRB     r2,[r2,#0xa]
-        0x00001938:    4311        .C      ORRS     r1,r1,r2
-        0x0000193a:    0609        ..      LSLS     r1,r1,#24
-        0x0000193c:    4308        .C      ORRS     r0,r0,r1
-        0x0000193e:    4604        .F      MOV      r4,r0
-        0x00001940:    2001        .       MOVS     r0,#1
-        0x00001942:    40a8        .@      LSLS     r0,r0,r5
-        0x00001944:    4621        !F      MOV      r1,r4
-        0x00001946:    4381        .C      BICS     r1,r1,r0
-        0x00001948:    460c        .F      MOV      r4,r1
-        0x0000194a:    bf00        ..      NOP      
-        0x0000194c:    bf00        ..      NOP      
-        0x0000194e:    4922        "I      LDR      r1,[pc,#136] ; [0x19d8] = 0x10008040
-        0x00001950:    730c        .s      STRB     r4,[r1,#0xc]
-        0x00001952:    730c        .s      STRB     r4,[r1,#0xc]
-        0x00001954:    bf00        ..      NOP      
-        0x00001956:    bf00        ..      NOP      
-        0x00001958:    0420         .      LSLS     r0,r4,#16
-        0x0000195a:    0e00        ..      LSRS     r0,r0,#24
-        0x0000195c:    7348        Hs      STRB     r0,[r1,#0xd]
-        0x0000195e:    0420         .      LSLS     r0,r4,#16
-        0x00001960:    0e00        ..      LSRS     r0,r0,#24
-        0x00001962:    7348        Hs      STRB     r0,[r1,#0xd]
-        0x00001964:    bf00        ..      NOP      
-        0x00001966:    bf00        ..      NOP      
-        0x00001968:    0220         .      LSLS     r0,r4,#8
-        0x0000196a:    0e00        ..      LSRS     r0,r0,#24
-        0x0000196c:    7388        .s      STRB     r0,[r1,#0xe]
-        0x0000196e:    0220         .      LSLS     r0,r4,#8
-        0x00001970:    0e00        ..      LSRS     r0,r0,#24
-        0x00001972:    7388        .s      STRB     r0,[r1,#0xe]
-        0x00001974:    bf00        ..      NOP      
-        0x00001976:    bf00        ..      NOP      
-        0x00001978:    0e20         .      LSRS     r0,r4,#24
-        0x0000197a:    73c8        .s      STRB     r0,[r1,#0xf]
-        0x0000197c:    0e20         .      LSRS     r0,r4,#24
-        0x0000197e:    73c8        .s      STRB     r0,[r1,#0xf]
-        0x00001980:    bf00        ..      NOP      
-        0x00001982:    bf00        ..      NOP      
-        0x00001984:    bf00        ..      NOP      
-        0x00001986:    2008        .       MOVS     r0,#8
-        0x00001988:    4913        .I      LDR      r1,[pc,#76] ; [0x19d8] = 0x10008040
-        0x0000198a:    3940        @9      SUBS     r1,r1,#0x40
-        0x0000198c:    7148        Hq      STRB     r0,[r1,#5]
-        0x0000198e:    bf00        ..      NOP      
-        0x00001990:    2064        d       MOVS     r0,#0x64
-        0x00001992:    f001f9f8    ....    BL       whileDelay ; 0x2d86
-        0x00001996:    2d1f        .-      CMP      r5,#0x1f
-        0x00001998:    dd54        T.      BLE      0x1a44 ; GPIO_Clear_High_Interrupt + 374
-        0x0000199a:    2d28        (-      CMP      r5,#0x28
-        0x0000199c:    da52        R.      BGE      0x1a44 ; GPIO_Clear_High_Interrupt + 374
-        0x0000199e:    bf00        ..      NOP      
-        0x000019a0:    2088        .       MOVS     r0,#0x88
-        0x000019a2:    490d        .I      LDR      r1,[pc,#52] ; [0x19d8] = 0x10008040
-        0x000019a4:    7308        .s      STRB     r0,[r1,#0xc]
-        0x000019a6:    7308        .s      STRB     r0,[r1,#0xc]
-        0x000019a8:    bf00        ..      NOP      
-        0x000019aa:    4808        .H      LDR      r0,[pc,#32] ; [0x19cc] = 0x10004fe0
-        0x000019ac:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x000019ae:    2000        .       MOVS     r0,#0
-        0x000019b0:    4908        .I      LDR      r1,[pc,#32] ; [0x19d4] = 0x10008340
-        0x000019b2:    7ac9        .z      LDRB     r1,[r1,#0xb]
-        0x000019b4:    4300        .C      ORRS     r0,r0,r0
-        0x000019b6:    4907        .I      LDR      r1,[pc,#28] ; [0x19d4] = 0x10008340
-        0x000019b8:    7ac9        .z      LDRB     r1,[r1,#0xb]
-        0x000019ba:    4308        .C      ORRS     r0,r0,r1
-        0x000019bc:    4903        .I      LDR      r1,[pc,#12] ; [0x19cc] = 0x10004fe0
-        0x000019be:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x000019c0:    4a04        .J      LDR      r2,[pc,#16] ; [0x19d4] = 0x10008340
-        0x000019c2:    7b12        .{      LDRB     r2,[r2,#0xc]
-        0x000019c4:    4311        .C      ORRS     r1,r1,r2
-        0x000019c6:    4a03        .J      LDR      r2,[pc,#12] ; [0x19d4] = 0x10008340
-        0x000019c8:    7b12        .{      LDRB     r2,[r2,#0xc]
-        0x000019ca:    e008        ..      B        0x19de ; GPIO_Clear_High_Interrupt + 272
+        0x000018e6:    2400        .$      MOVS     r4,#0
+        0x000018e8:    2600        .&      MOVS     r6,#0
+        0x000018ea:    2080        .       MOVS     r0,#0x80
+        0x000018ec:    4028        (@      ANDS     r0,r0,r5
+        0x000018ee:    2800        .(      CMP      r0,#0
+        0x000018f0:    d07e        ~.      BEQ      0x19f0 ; GPIO_Clear_High_Interrupt + 270
+        0x000018f2:    2180        .!      MOVS     r1,#0x80
+        0x000018f4:    4628        (F      MOV      r0,r5
+        0x000018f6:    4388        .C      BICS     r0,r0,r1
+        0x000018f8:    4605        .F      MOV      r5,r0
+        0x000018fa:    2d1f        .-      CMP      r5,#0x1f
+        0x000018fc:    dc55        U.      BGT      0x19aa ; GPIO_Clear_High_Interrupt + 200
+        0x000018fe:    4838        8H      LDR      r0,[pc,#224] ; [0x19e0] = 0x10004fe0
+        0x00001900:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x00001902:    2000        .       MOVS     r0,#0
+        0x00001904:    4938        8I      LDR      r1,[pc,#224] ; [0x19e8] = 0x10008340
+        0x00001906:    79c9        .y      LDRB     r1,[r1,#7]
+        0x00001908:    4300        .C      ORRS     r0,r0,r0
+        0x0000190a:    4937        7I      LDR      r1,[pc,#220] ; [0x19e8] = 0x10008340
+        0x0000190c:    79c9        .y      LDRB     r1,[r1,#7]
+        0x0000190e:    4308        .C      ORRS     r0,r0,r1
+        0x00001910:    4933        3I      LDR      r1,[pc,#204] ; [0x19e0] = 0x10004fe0
+        0x00001912:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00001914:    2100        .!      MOVS     r1,#0
+        0x00001916:    4a34        4J      LDR      r2,[pc,#208] ; [0x19e8] = 0x10008340
+        0x00001918:    7a12        .z      LDRB     r2,[r2,#8]
+        0x0000191a:    4309        .C      ORRS     r1,r1,r1
+        0x0000191c:    4a32        2J      LDR      r2,[pc,#200] ; [0x19e8] = 0x10008340
+        0x0000191e:    7a12        .z      LDRB     r2,[r2,#8]
+        0x00001920:    4311        .C      ORRS     r1,r1,r2
+        0x00001922:    0209        ..      LSLS     r1,r1,#8
+        0x00001924:    4308        .C      ORRS     r0,r0,r1
+        0x00001926:    492e        .I      LDR      r1,[pc,#184] ; [0x19e0] = 0x10004fe0
+        0x00001928:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x0000192a:    2100        .!      MOVS     r1,#0
+        0x0000192c:    4a2e        .J      LDR      r2,[pc,#184] ; [0x19e8] = 0x10008340
+        0x0000192e:    7a52        Rz      LDRB     r2,[r2,#9]
+        0x00001930:    4309        .C      ORRS     r1,r1,r1
+        0x00001932:    4a2d        -J      LDR      r2,[pc,#180] ; [0x19e8] = 0x10008340
+        0x00001934:    7a52        Rz      LDRB     r2,[r2,#9]
+        0x00001936:    4311        .C      ORRS     r1,r1,r2
+        0x00001938:    0409        ..      LSLS     r1,r1,#16
+        0x0000193a:    4308        .C      ORRS     r0,r0,r1
+        0x0000193c:    4928        (I      LDR      r1,[pc,#160] ; [0x19e0] = 0x10004fe0
+        0x0000193e:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00001940:    2100        .!      MOVS     r1,#0
+        0x00001942:    4a29        )J      LDR      r2,[pc,#164] ; [0x19e8] = 0x10008340
+        0x00001944:    7a92        .z      LDRB     r2,[r2,#0xa]
+        0x00001946:    4309        .C      ORRS     r1,r1,r1
+        0x00001948:    4a27        'J      LDR      r2,[pc,#156] ; [0x19e8] = 0x10008340
+        0x0000194a:    7a92        .z      LDRB     r2,[r2,#0xa]
+        0x0000194c:    4311        .C      ORRS     r1,r1,r2
+        0x0000194e:    0609        ..      LSLS     r1,r1,#24
+        0x00001950:    4308        .C      ORRS     r0,r0,r1
+        0x00001952:    4604        .F      MOV      r4,r0
+        0x00001954:    2001        .       MOVS     r0,#1
+        0x00001956:    40a8        .@      LSLS     r0,r0,r5
+        0x00001958:    4621        !F      MOV      r1,r4
+        0x0000195a:    4381        .C      BICS     r1,r1,r0
+        0x0000195c:    460c        .F      MOV      r4,r1
+        0x0000195e:    bf00        ..      NOP      
+        0x00001960:    bf00        ..      NOP      
+        0x00001962:    4922        "I      LDR      r1,[pc,#136] ; [0x19ec] = 0x10008040
+        0x00001964:    730c        .s      STRB     r4,[r1,#0xc]
+        0x00001966:    730c        .s      STRB     r4,[r1,#0xc]
+        0x00001968:    bf00        ..      NOP      
+        0x0000196a:    bf00        ..      NOP      
+        0x0000196c:    0420         .      LSLS     r0,r4,#16
+        0x0000196e:    0e00        ..      LSRS     r0,r0,#24
+        0x00001970:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x00001972:    0420         .      LSLS     r0,r4,#16
+        0x00001974:    0e00        ..      LSRS     r0,r0,#24
+        0x00001976:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x00001978:    bf00        ..      NOP      
+        0x0000197a:    bf00        ..      NOP      
+        0x0000197c:    0220         .      LSLS     r0,r4,#8
+        0x0000197e:    0e00        ..      LSRS     r0,r0,#24
+        0x00001980:    7388        .s      STRB     r0,[r1,#0xe]
+        0x00001982:    0220         .      LSLS     r0,r4,#8
+        0x00001984:    0e00        ..      LSRS     r0,r0,#24
+        0x00001986:    7388        .s      STRB     r0,[r1,#0xe]
+        0x00001988:    bf00        ..      NOP      
+        0x0000198a:    bf00        ..      NOP      
+        0x0000198c:    0e20         .      LSRS     r0,r4,#24
+        0x0000198e:    73c8        .s      STRB     r0,[r1,#0xf]
+        0x00001990:    0e20         .      LSRS     r0,r4,#24
+        0x00001992:    73c8        .s      STRB     r0,[r1,#0xf]
+        0x00001994:    bf00        ..      NOP      
+        0x00001996:    bf00        ..      NOP      
+        0x00001998:    bf00        ..      NOP      
+        0x0000199a:    2008        .       MOVS     r0,#8
+        0x0000199c:    4913        .I      LDR      r1,[pc,#76] ; [0x19ec] = 0x10008040
+        0x0000199e:    3940        @9      SUBS     r1,r1,#0x40
+        0x000019a0:    7148        Hq      STRB     r0,[r1,#5]
+        0x000019a2:    bf00        ..      NOP      
+        0x000019a4:    2064        d       MOVS     r0,#0x64
+        0x000019a6:    f001f9f8    ....    BL       whileDelay ; 0x2d9a
+        0x000019aa:    2d1f        .-      CMP      r5,#0x1f
+        0x000019ac:    dd54        T.      BLE      0x1a58 ; GPIO_Clear_High_Interrupt + 374
+        0x000019ae:    2d28        (-      CMP      r5,#0x28
+        0x000019b0:    da52        R.      BGE      0x1a58 ; GPIO_Clear_High_Interrupt + 374
+        0x000019b2:    bf00        ..      NOP      
+        0x000019b4:    2088        .       MOVS     r0,#0x88
+        0x000019b6:    490d        .I      LDR      r1,[pc,#52] ; [0x19ec] = 0x10008040
+        0x000019b8:    7308        .s      STRB     r0,[r1,#0xc]
+        0x000019ba:    7308        .s      STRB     r0,[r1,#0xc]
+        0x000019bc:    bf00        ..      NOP      
+        0x000019be:    4808        .H      LDR      r0,[pc,#32] ; [0x19e0] = 0x10004fe0
+        0x000019c0:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x000019c2:    2000        .       MOVS     r0,#0
+        0x000019c4:    4908        .I      LDR      r1,[pc,#32] ; [0x19e8] = 0x10008340
+        0x000019c6:    7ac9        .z      LDRB     r1,[r1,#0xb]
+        0x000019c8:    4300        .C      ORRS     r0,r0,r0
+        0x000019ca:    4907        .I      LDR      r1,[pc,#28] ; [0x19e8] = 0x10008340
+        0x000019cc:    7ac9        .z      LDRB     r1,[r1,#0xb]
+        0x000019ce:    4308        .C      ORRS     r0,r0,r1
+        0x000019d0:    4903        .I      LDR      r1,[pc,#12] ; [0x19e0] = 0x10004fe0
+        0x000019d2:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x000019d4:    4a04        .J      LDR      r2,[pc,#16] ; [0x19e8] = 0x10008340
+        0x000019d6:    7b12        .{      LDRB     r2,[r2,#0xc]
+        0x000019d8:    4311        .C      ORRS     r1,r1,r2
+        0x000019da:    4a03        .J      LDR      r2,[pc,#12] ; [0x19e8] = 0x10008340
+        0x000019dc:    7b12        .{      LDRB     r2,[r2,#0xc]
+        0x000019de:    e008        ..      B        0x19f2 ; GPIO_Clear_High_Interrupt + 272
     $d
-        0x000019cc:    10004fe0    .O..    DCD    268455904
-        0x000019d0:    00008080    ....    DCD    32896
-        0x000019d4:    10008340    @...    DCD    268469056
-        0x000019d8:    10008040    @...    DCD    268468288
+        0x000019e0:    10004fe0    .O..    DCD    268455904
+        0x000019e4:    00008080    ....    DCD    32896
+        0x000019e8:    10008340    @...    DCD    268469056
+        0x000019ec:    10008040    @...    DCD    268468288
     $t
-        0x000019dc:    e032        2.      B        0x1a44 ; GPIO_Clear_High_Interrupt + 374
-        0x000019de:    4311        .C      ORRS     r1,r1,r2
-        0x000019e0:    0209        ..      LSLS     r1,r1,#8
-        0x000019e2:    4308        .C      ORRS     r0,r0,r1
-        0x000019e4:    4999        .I      LDR      r1,[pc,#612] ; [0x1c4c] = 0x10004fe0
-        0x000019e6:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x000019e8:    4a99        .J      LDR      r2,[pc,#612] ; [0x1c50] = 0x10008340
-        0x000019ea:    7b52        R{      LDRB     r2,[r2,#0xd]
-        0x000019ec:    4311        .C      ORRS     r1,r1,r2
-        0x000019ee:    4a98        .J      LDR      r2,[pc,#608] ; [0x1c50] = 0x10008340
-        0x000019f0:    7b52        R{      LDRB     r2,[r2,#0xd]
+        0x000019f0:    e032        2.      B        0x1a58 ; GPIO_Clear_High_Interrupt + 374
         0x000019f2:    4311        .C      ORRS     r1,r1,r2
-        0x000019f4:    0409        ..      LSLS     r1,r1,#16
+        0x000019f4:    0209        ..      LSLS     r1,r1,#8
         0x000019f6:    4308        .C      ORRS     r0,r0,r1
-        0x000019f8:    4994        .I      LDR      r1,[pc,#592] ; [0x1c4c] = 0x10004fe0
+        0x000019f8:    4999        .I      LDR      r1,[pc,#612] ; [0x1c60] = 0x10004fe0
         0x000019fa:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x000019fc:    4a94        .J      LDR      r2,[pc,#592] ; [0x1c50] = 0x10008340
-        0x000019fe:    7b92        .{      LDRB     r2,[r2,#0xe]
+        0x000019fc:    4a99        .J      LDR      r2,[pc,#612] ; [0x1c64] = 0x10008340
+        0x000019fe:    7b52        R{      LDRB     r2,[r2,#0xd]
         0x00001a00:    4311        .C      ORRS     r1,r1,r2
-        0x00001a02:    4a93        .J      LDR      r2,[pc,#588] ; [0x1c50] = 0x10008340
-        0x00001a04:    7b92        .{      LDRB     r2,[r2,#0xe]
+        0x00001a02:    4a98        .J      LDR      r2,[pc,#608] ; [0x1c64] = 0x10008340
+        0x00001a04:    7b52        R{      LDRB     r2,[r2,#0xd]
         0x00001a06:    4311        .C      ORRS     r1,r1,r2
-        0x00001a08:    0609        ..      LSLS     r1,r1,#24
+        0x00001a08:    0409        ..      LSLS     r1,r1,#16
         0x00001a0a:    4308        .C      ORRS     r0,r0,r1
-        0x00001a0c:    b2c6        ..      UXTB     r6,r0
-        0x00001a0e:    4629        )F      MOV      r1,r5
-        0x00001a10:    3920         9      SUBS     r1,r1,#0x20
-        0x00001a12:    2001        .       MOVS     r0,#1
-        0x00001a14:    4088        .@      LSLS     r0,r0,r1
-        0x00001a16:    4631        1F      MOV      r1,r6
-        0x00001a18:    4381        .C      BICS     r1,r1,r0
-        0x00001a1a:    460e        .F      MOV      r6,r1
-        0x00001a1c:    bf00        ..      NOP      
-        0x00001a1e:    488d        .H      LDR      r0,[pc,#564] ; [0x1c54] = 0x10008040
-        0x00001a20:    7346        Fs      STRB     r6,[r0,#0xd]
-        0x00001a22:    7346        Fs      STRB     r6,[r0,#0xd]
-        0x00001a24:    bf00        ..      NOP      
-        0x00001a26:    bf00        ..      NOP      
-        0x00001a28:    2000        .       MOVS     r0,#0
-        0x00001a2a:    498a        .I      LDR      r1,[pc,#552] ; [0x1c54] = 0x10008040
-        0x00001a2c:    7388        .s      STRB     r0,[r1,#0xe]
-        0x00001a2e:    7388        .s      STRB     r0,[r1,#0xe]
+        0x00001a0c:    4994        .I      LDR      r1,[pc,#592] ; [0x1c60] = 0x10004fe0
+        0x00001a0e:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00001a10:    4a94        .J      LDR      r2,[pc,#592] ; [0x1c64] = 0x10008340
+        0x00001a12:    7b92        .{      LDRB     r2,[r2,#0xe]
+        0x00001a14:    4311        .C      ORRS     r1,r1,r2
+        0x00001a16:    4a93        .J      LDR      r2,[pc,#588] ; [0x1c64] = 0x10008340
+        0x00001a18:    7b92        .{      LDRB     r2,[r2,#0xe]
+        0x00001a1a:    4311        .C      ORRS     r1,r1,r2
+        0x00001a1c:    0609        ..      LSLS     r1,r1,#24
+        0x00001a1e:    4308        .C      ORRS     r0,r0,r1
+        0x00001a20:    b2c6        ..      UXTB     r6,r0
+        0x00001a22:    4629        )F      MOV      r1,r5
+        0x00001a24:    3920         9      SUBS     r1,r1,#0x20
+        0x00001a26:    2001        .       MOVS     r0,#1
+        0x00001a28:    4088        .@      LSLS     r0,r0,r1
+        0x00001a2a:    4631        1F      MOV      r1,r6
+        0x00001a2c:    4381        .C      BICS     r1,r1,r0
+        0x00001a2e:    460e        .F      MOV      r6,r1
         0x00001a30:    bf00        ..      NOP      
-        0x00001a32:    bf00        ..      NOP      
-        0x00001a34:    2008        .       MOVS     r0,#8
-        0x00001a36:    4987        .I      LDR      r1,[pc,#540] ; [0x1c54] = 0x10008040
-        0x00001a38:    3940        @9      SUBS     r1,r1,#0x40
-        0x00001a3a:    7648        Hv      STRB     r0,[r1,#0x19]
-        0x00001a3c:    bf00        ..      NOP      
-        0x00001a3e:    2064        d       MOVS     r0,#0x64
-        0x00001a40:    f001f9a1    ....    BL       whileDelay ; 0x2d86
-        0x00001a44:    bd70        p.      POP      {r4-r6,pc}
+        0x00001a32:    488d        .H      LDR      r0,[pc,#564] ; [0x1c68] = 0x10008040
+        0x00001a34:    7346        Fs      STRB     r6,[r0,#0xd]
+        0x00001a36:    7346        Fs      STRB     r6,[r0,#0xd]
+        0x00001a38:    bf00        ..      NOP      
+        0x00001a3a:    bf00        ..      NOP      
+        0x00001a3c:    2000        .       MOVS     r0,#0
+        0x00001a3e:    498a        .I      LDR      r1,[pc,#552] ; [0x1c68] = 0x10008040
+        0x00001a40:    7388        .s      STRB     r0,[r1,#0xe]
+        0x00001a42:    7388        .s      STRB     r0,[r1,#0xe]
+        0x00001a44:    bf00        ..      NOP      
+        0x00001a46:    bf00        ..      NOP      
+        0x00001a48:    2008        .       MOVS     r0,#8
+        0x00001a4a:    4987        .I      LDR      r1,[pc,#540] ; [0x1c68] = 0x10008040
+        0x00001a4c:    3940        @9      SUBS     r1,r1,#0x40
+        0x00001a4e:    7648        Hv      STRB     r0,[r1,#0x19]
+        0x00001a50:    bf00        ..      NOP      
+        0x00001a52:    2064        d       MOVS     r0,#0x64
+        0x00001a54:    f001f9a1    ....    BL       whileDelay ; 0x2d9a
+        0x00001a58:    bd70        p.      POP      {r4-r6,pc}
     GPIO_Clear_Low_Interrupt
-        0x00001a46:    b570        p.      PUSH     {r4-r6,lr}
-        0x00001a48:    4605        .F      MOV      r5,r0
-        0x00001a4a:    2400        .$      MOVS     r4,#0
-        0x00001a4c:    2600        .&      MOVS     r6,#0
-        0x00001a4e:    2080        .       MOVS     r0,#0x80
-        0x00001a50:    4028        (@      ANDS     r0,r0,r5
-        0x00001a52:    2800        .(      CMP      r0,#0
-        0x00001a54:    d07e        ~.      BEQ      0x1b54 ; GPIO_Clear_Low_Interrupt + 270
-        0x00001a56:    2180        .!      MOVS     r1,#0x80
-        0x00001a58:    4628        (F      MOV      r0,r5
-        0x00001a5a:    4388        .C      BICS     r0,r0,r1
+        0x00001a5a:    b570        p.      PUSH     {r4-r6,lr}
         0x00001a5c:    4605        .F      MOV      r5,r0
-        0x00001a5e:    2d1f        .-      CMP      r5,#0x1f
-        0x00001a60:    dc55        U.      BGT      0x1b0e ; GPIO_Clear_Low_Interrupt + 200
-        0x00001a62:    487a        zH      LDR      r0,[pc,#488] ; [0x1c4c] = 0x10004fe0
-        0x00001a64:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00001a66:    2000        .       MOVS     r0,#0
-        0x00001a68:    4979        yI      LDR      r1,[pc,#484] ; [0x1c50] = 0x10008340
-        0x00001a6a:    7889        .x      LDRB     r1,[r1,#2]
-        0x00001a6c:    4300        .C      ORRS     r0,r0,r0
-        0x00001a6e:    4978        xI      LDR      r1,[pc,#480] ; [0x1c50] = 0x10008340
-        0x00001a70:    7889        .x      LDRB     r1,[r1,#2]
-        0x00001a72:    4308        .C      ORRS     r0,r0,r1
-        0x00001a74:    4975        uI      LDR      r1,[pc,#468] ; [0x1c4c] = 0x10004fe0
-        0x00001a76:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00001a78:    2100        .!      MOVS     r1,#0
-        0x00001a7a:    4a75        uJ      LDR      r2,[pc,#468] ; [0x1c50] = 0x10008340
-        0x00001a7c:    78d2        .x      LDRB     r2,[r2,#3]
-        0x00001a7e:    4309        .C      ORRS     r1,r1,r1
-        0x00001a80:    4a73        sJ      LDR      r2,[pc,#460] ; [0x1c50] = 0x10008340
-        0x00001a82:    78d2        .x      LDRB     r2,[r2,#3]
-        0x00001a84:    4311        .C      ORRS     r1,r1,r2
-        0x00001a86:    0209        ..      LSLS     r1,r1,#8
-        0x00001a88:    4308        .C      ORRS     r0,r0,r1
-        0x00001a8a:    4970        pI      LDR      r1,[pc,#448] ; [0x1c4c] = 0x10004fe0
-        0x00001a8c:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00001a8e:    2100        .!      MOVS     r1,#0
-        0x00001a90:    4a6f        oJ      LDR      r2,[pc,#444] ; [0x1c50] = 0x10008340
-        0x00001a92:    7912        .y      LDRB     r2,[r2,#4]
-        0x00001a94:    4309        .C      ORRS     r1,r1,r1
-        0x00001a96:    4a6e        nJ      LDR      r2,[pc,#440] ; [0x1c50] = 0x10008340
-        0x00001a98:    7912        .y      LDRB     r2,[r2,#4]
-        0x00001a9a:    4311        .C      ORRS     r1,r1,r2
-        0x00001a9c:    0409        ..      LSLS     r1,r1,#16
-        0x00001a9e:    4308        .C      ORRS     r0,r0,r1
-        0x00001aa0:    496a        jI      LDR      r1,[pc,#424] ; [0x1c4c] = 0x10004fe0
-        0x00001aa2:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00001aa4:    2100        .!      MOVS     r1,#0
-        0x00001aa6:    4a6a        jJ      LDR      r2,[pc,#424] ; [0x1c50] = 0x10008340
-        0x00001aa8:    7952        Ry      LDRB     r2,[r2,#5]
-        0x00001aaa:    4309        .C      ORRS     r1,r1,r1
-        0x00001aac:    4a68        hJ      LDR      r2,[pc,#416] ; [0x1c50] = 0x10008340
-        0x00001aae:    7952        Ry      LDRB     r2,[r2,#5]
-        0x00001ab0:    4311        .C      ORRS     r1,r1,r2
-        0x00001ab2:    0609        ..      LSLS     r1,r1,#24
-        0x00001ab4:    4308        .C      ORRS     r0,r0,r1
-        0x00001ab6:    4604        .F      MOV      r4,r0
-        0x00001ab8:    2001        .       MOVS     r0,#1
-        0x00001aba:    40a8        .@      LSLS     r0,r0,r5
-        0x00001abc:    4621        !F      MOV      r1,r4
-        0x00001abe:    4381        .C      BICS     r1,r1,r0
-        0x00001ac0:    460c        .F      MOV      r4,r1
-        0x00001ac2:    bf00        ..      NOP      
-        0x00001ac4:    bf00        ..      NOP      
-        0x00001ac6:    4963        cI      LDR      r1,[pc,#396] ; [0x1c54] = 0x10008040
-        0x00001ac8:    730c        .s      STRB     r4,[r1,#0xc]
-        0x00001aca:    730c        .s      STRB     r4,[r1,#0xc]
-        0x00001acc:    bf00        ..      NOP      
-        0x00001ace:    bf00        ..      NOP      
-        0x00001ad0:    0420         .      LSLS     r0,r4,#16
-        0x00001ad2:    0e00        ..      LSRS     r0,r0,#24
-        0x00001ad4:    7348        Hs      STRB     r0,[r1,#0xd]
-        0x00001ad6:    0420         .      LSLS     r0,r4,#16
-        0x00001ad8:    0e00        ..      LSRS     r0,r0,#24
-        0x00001ada:    7348        Hs      STRB     r0,[r1,#0xd]
-        0x00001adc:    bf00        ..      NOP      
-        0x00001ade:    bf00        ..      NOP      
-        0x00001ae0:    0220         .      LSLS     r0,r4,#8
-        0x00001ae2:    0e00        ..      LSRS     r0,r0,#24
-        0x00001ae4:    7388        .s      STRB     r0,[r1,#0xe]
-        0x00001ae6:    0220         .      LSLS     r0,r4,#8
-        0x00001ae8:    0e00        ..      LSRS     r0,r0,#24
-        0x00001aea:    7388        .s      STRB     r0,[r1,#0xe]
-        0x00001aec:    bf00        ..      NOP      
-        0x00001aee:    bf00        ..      NOP      
-        0x00001af0:    0e20         .      LSRS     r0,r4,#24
-        0x00001af2:    73c8        .s      STRB     r0,[r1,#0xf]
-        0x00001af4:    0e20         .      LSRS     r0,r4,#24
-        0x00001af6:    73c8        .s      STRB     r0,[r1,#0xf]
-        0x00001af8:    bf00        ..      NOP      
-        0x00001afa:    bf00        ..      NOP      
-        0x00001afc:    bf00        ..      NOP      
-        0x00001afe:    2004        .       MOVS     r0,#4
-        0x00001b00:    4954        TI      LDR      r1,[pc,#336] ; [0x1c54] = 0x10008040
-        0x00001b02:    3940        @9      SUBS     r1,r1,#0x40
-        0x00001b04:    7148        Hq      STRB     r0,[r1,#5]
-        0x00001b06:    bf00        ..      NOP      
-        0x00001b08:    2064        d       MOVS     r0,#0x64
-        0x00001b0a:    f001f93c    ..<.    BL       whileDelay ; 0x2d86
-        0x00001b0e:    2d1f        .-      CMP      r5,#0x1f
-        0x00001b10:    dd4b        K.      BLE      0x1baa ; GPIO_Clear_Low_Interrupt + 356
-        0x00001b12:    2d28        (-      CMP      r5,#0x28
-        0x00001b14:    da49        I.      BGE      0x1baa ; GPIO_Clear_Low_Interrupt + 356
-        0x00001b16:    bf00        ..      NOP      
-        0x00001b18:    2088        .       MOVS     r0,#0x88
-        0x00001b1a:    494e        NI      LDR      r1,[pc,#312] ; [0x1c54] = 0x10008040
-        0x00001b1c:    7308        .s      STRB     r0,[r1,#0xc]
-        0x00001b1e:    7308        .s      STRB     r0,[r1,#0xc]
-        0x00001b20:    bf00        ..      NOP      
-        0x00001b22:    bf00        ..      NOP      
-        0x00001b24:    2000        .       MOVS     r0,#0
-        0x00001b26:    7348        Hs      STRB     r0,[r1,#0xd]
-        0x00001b28:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x00001a5e:    2400        .$      MOVS     r4,#0
+        0x00001a60:    2600        .&      MOVS     r6,#0
+        0x00001a62:    2080        .       MOVS     r0,#0x80
+        0x00001a64:    4028        (@      ANDS     r0,r0,r5
+        0x00001a66:    2800        .(      CMP      r0,#0
+        0x00001a68:    d07e        ~.      BEQ      0x1b68 ; GPIO_Clear_Low_Interrupt + 270
+        0x00001a6a:    2180        .!      MOVS     r1,#0x80
+        0x00001a6c:    4628        (F      MOV      r0,r5
+        0x00001a6e:    4388        .C      BICS     r0,r0,r1
+        0x00001a70:    4605        .F      MOV      r5,r0
+        0x00001a72:    2d1f        .-      CMP      r5,#0x1f
+        0x00001a74:    dc55        U.      BGT      0x1b22 ; GPIO_Clear_Low_Interrupt + 200
+        0x00001a76:    487a        zH      LDR      r0,[pc,#488] ; [0x1c60] = 0x10004fe0
+        0x00001a78:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x00001a7a:    2000        .       MOVS     r0,#0
+        0x00001a7c:    4979        yI      LDR      r1,[pc,#484] ; [0x1c64] = 0x10008340
+        0x00001a7e:    7889        .x      LDRB     r1,[r1,#2]
+        0x00001a80:    4300        .C      ORRS     r0,r0,r0
+        0x00001a82:    4978        xI      LDR      r1,[pc,#480] ; [0x1c64] = 0x10008340
+        0x00001a84:    7889        .x      LDRB     r1,[r1,#2]
+        0x00001a86:    4308        .C      ORRS     r0,r0,r1
+        0x00001a88:    4975        uI      LDR      r1,[pc,#468] ; [0x1c60] = 0x10004fe0
+        0x00001a8a:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00001a8c:    2100        .!      MOVS     r1,#0
+        0x00001a8e:    4a75        uJ      LDR      r2,[pc,#468] ; [0x1c64] = 0x10008340
+        0x00001a90:    78d2        .x      LDRB     r2,[r2,#3]
+        0x00001a92:    4309        .C      ORRS     r1,r1,r1
+        0x00001a94:    4a73        sJ      LDR      r2,[pc,#460] ; [0x1c64] = 0x10008340
+        0x00001a96:    78d2        .x      LDRB     r2,[r2,#3]
+        0x00001a98:    4311        .C      ORRS     r1,r1,r2
+        0x00001a9a:    0209        ..      LSLS     r1,r1,#8
+        0x00001a9c:    4308        .C      ORRS     r0,r0,r1
+        0x00001a9e:    4970        pI      LDR      r1,[pc,#448] ; [0x1c60] = 0x10004fe0
+        0x00001aa0:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00001aa2:    2100        .!      MOVS     r1,#0
+        0x00001aa4:    4a6f        oJ      LDR      r2,[pc,#444] ; [0x1c64] = 0x10008340
+        0x00001aa6:    7912        .y      LDRB     r2,[r2,#4]
+        0x00001aa8:    4309        .C      ORRS     r1,r1,r1
+        0x00001aaa:    4a6e        nJ      LDR      r2,[pc,#440] ; [0x1c64] = 0x10008340
+        0x00001aac:    7912        .y      LDRB     r2,[r2,#4]
+        0x00001aae:    4311        .C      ORRS     r1,r1,r2
+        0x00001ab0:    0409        ..      LSLS     r1,r1,#16
+        0x00001ab2:    4308        .C      ORRS     r0,r0,r1
+        0x00001ab4:    496a        jI      LDR      r1,[pc,#424] ; [0x1c60] = 0x10004fe0
+        0x00001ab6:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00001ab8:    2100        .!      MOVS     r1,#0
+        0x00001aba:    4a6a        jJ      LDR      r2,[pc,#424] ; [0x1c64] = 0x10008340
+        0x00001abc:    7952        Ry      LDRB     r2,[r2,#5]
+        0x00001abe:    4309        .C      ORRS     r1,r1,r1
+        0x00001ac0:    4a68        hJ      LDR      r2,[pc,#416] ; [0x1c64] = 0x10008340
+        0x00001ac2:    7952        Ry      LDRB     r2,[r2,#5]
+        0x00001ac4:    4311        .C      ORRS     r1,r1,r2
+        0x00001ac6:    0609        ..      LSLS     r1,r1,#24
+        0x00001ac8:    4308        .C      ORRS     r0,r0,r1
+        0x00001aca:    4604        .F      MOV      r4,r0
+        0x00001acc:    2001        .       MOVS     r0,#1
+        0x00001ace:    40a8        .@      LSLS     r0,r0,r5
+        0x00001ad0:    4621        !F      MOV      r1,r4
+        0x00001ad2:    4381        .C      BICS     r1,r1,r0
+        0x00001ad4:    460c        .F      MOV      r4,r1
+        0x00001ad6:    bf00        ..      NOP      
+        0x00001ad8:    bf00        ..      NOP      
+        0x00001ada:    4963        cI      LDR      r1,[pc,#396] ; [0x1c68] = 0x10008040
+        0x00001adc:    730c        .s      STRB     r4,[r1,#0xc]
+        0x00001ade:    730c        .s      STRB     r4,[r1,#0xc]
+        0x00001ae0:    bf00        ..      NOP      
+        0x00001ae2:    bf00        ..      NOP      
+        0x00001ae4:    0420         .      LSLS     r0,r4,#16
+        0x00001ae6:    0e00        ..      LSRS     r0,r0,#24
+        0x00001ae8:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x00001aea:    0420         .      LSLS     r0,r4,#16
+        0x00001aec:    0e00        ..      LSRS     r0,r0,#24
+        0x00001aee:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x00001af0:    bf00        ..      NOP      
+        0x00001af2:    bf00        ..      NOP      
+        0x00001af4:    0220         .      LSLS     r0,r4,#8
+        0x00001af6:    0e00        ..      LSRS     r0,r0,#24
+        0x00001af8:    7388        .s      STRB     r0,[r1,#0xe]
+        0x00001afa:    0220         .      LSLS     r0,r4,#8
+        0x00001afc:    0e00        ..      LSRS     r0,r0,#24
+        0x00001afe:    7388        .s      STRB     r0,[r1,#0xe]
+        0x00001b00:    bf00        ..      NOP      
+        0x00001b02:    bf00        ..      NOP      
+        0x00001b04:    0e20         .      LSRS     r0,r4,#24
+        0x00001b06:    73c8        .s      STRB     r0,[r1,#0xf]
+        0x00001b08:    0e20         .      LSRS     r0,r4,#24
+        0x00001b0a:    73c8        .s      STRB     r0,[r1,#0xf]
+        0x00001b0c:    bf00        ..      NOP      
+        0x00001b0e:    bf00        ..      NOP      
+        0x00001b10:    bf00        ..      NOP      
+        0x00001b12:    2004        .       MOVS     r0,#4
+        0x00001b14:    4954        TI      LDR      r1,[pc,#336] ; [0x1c68] = 0x10008040
+        0x00001b16:    3940        @9      SUBS     r1,r1,#0x40
+        0x00001b18:    7148        Hq      STRB     r0,[r1,#5]
+        0x00001b1a:    bf00        ..      NOP      
+        0x00001b1c:    2064        d       MOVS     r0,#0x64
+        0x00001b1e:    f001f93c    ..<.    BL       whileDelay ; 0x2d9a
+        0x00001b22:    2d1f        .-      CMP      r5,#0x1f
+        0x00001b24:    dd4b        K.      BLE      0x1bbe ; GPIO_Clear_Low_Interrupt + 356
+        0x00001b26:    2d28        (-      CMP      r5,#0x28
+        0x00001b28:    da49        I.      BGE      0x1bbe ; GPIO_Clear_Low_Interrupt + 356
         0x00001b2a:    bf00        ..      NOP      
-        0x00001b2c:    4847        GH      LDR      r0,[pc,#284] ; [0x1c4c] = 0x10004fe0
-        0x00001b2e:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00001b30:    2000        .       MOVS     r0,#0
-        0x00001b32:    4947        GI      LDR      r1,[pc,#284] ; [0x1c50] = 0x10008340
-        0x00001b34:    7989        .y      LDRB     r1,[r1,#6]
-        0x00001b36:    4300        .C      ORRS     r0,r0,r0
-        0x00001b38:    4945        EI      LDR      r1,[pc,#276] ; [0x1c50] = 0x10008340
-        0x00001b3a:    7989        .y      LDRB     r1,[r1,#6]
-        0x00001b3c:    4308        .C      ORRS     r0,r0,r1
-        0x00001b3e:    4943        CI      LDR      r1,[pc,#268] ; [0x1c4c] = 0x10004fe0
-        0x00001b40:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00001b42:    4a43        CJ      LDR      r2,[pc,#268] ; [0x1c50] = 0x10008340
-        0x00001b44:    79d2        .y      LDRB     r2,[r2,#7]
-        0x00001b46:    4311        .C      ORRS     r1,r1,r2
-        0x00001b48:    4a41        AJ      LDR      r2,[pc,#260] ; [0x1c50] = 0x10008340
-        0x00001b4a:    79d2        .y      LDRB     r2,[r2,#7]
-        0x00001b4c:    4311        .C      ORRS     r1,r1,r2
-        0x00001b4e:    0209        ..      LSLS     r1,r1,#8
+        0x00001b2c:    2088        .       MOVS     r0,#0x88
+        0x00001b2e:    494e        NI      LDR      r1,[pc,#312] ; [0x1c68] = 0x10008040
+        0x00001b30:    7308        .s      STRB     r0,[r1,#0xc]
+        0x00001b32:    7308        .s      STRB     r0,[r1,#0xc]
+        0x00001b34:    bf00        ..      NOP      
+        0x00001b36:    bf00        ..      NOP      
+        0x00001b38:    2000        .       MOVS     r0,#0
+        0x00001b3a:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x00001b3c:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x00001b3e:    bf00        ..      NOP      
+        0x00001b40:    4847        GH      LDR      r0,[pc,#284] ; [0x1c60] = 0x10004fe0
+        0x00001b42:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x00001b44:    2000        .       MOVS     r0,#0
+        0x00001b46:    4947        GI      LDR      r1,[pc,#284] ; [0x1c64] = 0x10008340
+        0x00001b48:    7989        .y      LDRB     r1,[r1,#6]
+        0x00001b4a:    4300        .C      ORRS     r0,r0,r0
+        0x00001b4c:    4945        EI      LDR      r1,[pc,#276] ; [0x1c64] = 0x10008340
+        0x00001b4e:    7989        .y      LDRB     r1,[r1,#6]
         0x00001b50:    4308        .C      ORRS     r0,r0,r1
-        0x00001b52:    e000        ..      B        0x1b56 ; GPIO_Clear_Low_Interrupt + 272
-        0x00001b54:    e029        ).      B        0x1baa ; GPIO_Clear_Low_Interrupt + 356
-        0x00001b56:    493d        =I      LDR      r1,[pc,#244] ; [0x1c4c] = 0x10004fe0
-        0x00001b58:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00001b5a:    4a3d        =J      LDR      r2,[pc,#244] ; [0x1c50] = 0x10008340
-        0x00001b5c:    7a12        .z      LDRB     r2,[r2,#8]
-        0x00001b5e:    4311        .C      ORRS     r1,r1,r2
-        0x00001b60:    4a3b        ;J      LDR      r2,[pc,#236] ; [0x1c50] = 0x10008340
-        0x00001b62:    7a12        .z      LDRB     r2,[r2,#8]
-        0x00001b64:    4311        .C      ORRS     r1,r1,r2
-        0x00001b66:    0409        ..      LSLS     r1,r1,#16
-        0x00001b68:    4308        .C      ORRS     r0,r0,r1
-        0x00001b6a:    4938        8I      LDR      r1,[pc,#224] ; [0x1c4c] = 0x10004fe0
+        0x00001b52:    4943        CI      LDR      r1,[pc,#268] ; [0x1c60] = 0x10004fe0
+        0x00001b54:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00001b56:    4a43        CJ      LDR      r2,[pc,#268] ; [0x1c64] = 0x10008340
+        0x00001b58:    79d2        .y      LDRB     r2,[r2,#7]
+        0x00001b5a:    4311        .C      ORRS     r1,r1,r2
+        0x00001b5c:    4a41        AJ      LDR      r2,[pc,#260] ; [0x1c64] = 0x10008340
+        0x00001b5e:    79d2        .y      LDRB     r2,[r2,#7]
+        0x00001b60:    4311        .C      ORRS     r1,r1,r2
+        0x00001b62:    0209        ..      LSLS     r1,r1,#8
+        0x00001b64:    4308        .C      ORRS     r0,r0,r1
+        0x00001b66:    e000        ..      B        0x1b6a ; GPIO_Clear_Low_Interrupt + 272
+        0x00001b68:    e029        ).      B        0x1bbe ; GPIO_Clear_Low_Interrupt + 356
+        0x00001b6a:    493d        =I      LDR      r1,[pc,#244] ; [0x1c60] = 0x10004fe0
         0x00001b6c:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00001b6e:    4a38        8J      LDR      r2,[pc,#224] ; [0x1c50] = 0x10008340
-        0x00001b70:    7a52        Rz      LDRB     r2,[r2,#9]
+        0x00001b6e:    4a3d        =J      LDR      r2,[pc,#244] ; [0x1c64] = 0x10008340
+        0x00001b70:    7a12        .z      LDRB     r2,[r2,#8]
         0x00001b72:    4311        .C      ORRS     r1,r1,r2
-        0x00001b74:    4a36        6J      LDR      r2,[pc,#216] ; [0x1c50] = 0x10008340
-        0x00001b76:    7a52        Rz      LDRB     r2,[r2,#9]
+        0x00001b74:    4a3b        ;J      LDR      r2,[pc,#236] ; [0x1c64] = 0x10008340
+        0x00001b76:    7a12        .z      LDRB     r2,[r2,#8]
         0x00001b78:    4311        .C      ORRS     r1,r1,r2
-        0x00001b7a:    0609        ..      LSLS     r1,r1,#24
+        0x00001b7a:    0409        ..      LSLS     r1,r1,#16
         0x00001b7c:    4308        .C      ORRS     r0,r0,r1
-        0x00001b7e:    b2c6        ..      UXTB     r6,r0
-        0x00001b80:    4629        )F      MOV      r1,r5
-        0x00001b82:    3920         9      SUBS     r1,r1,#0x20
-        0x00001b84:    2001        .       MOVS     r0,#1
-        0x00001b86:    4088        .@      LSLS     r0,r0,r1
-        0x00001b88:    4631        1F      MOV      r1,r6
-        0x00001b8a:    4381        .C      BICS     r1,r1,r0
-        0x00001b8c:    460e        .F      MOV      r6,r1
-        0x00001b8e:    bf00        ..      NOP      
-        0x00001b90:    4830        0H      LDR      r0,[pc,#192] ; [0x1c54] = 0x10008040
-        0x00001b92:    7386        .s      STRB     r6,[r0,#0xe]
-        0x00001b94:    7386        .s      STRB     r6,[r0,#0xe]
-        0x00001b96:    bf00        ..      NOP      
-        0x00001b98:    bf00        ..      NOP      
-        0x00001b9a:    2008        .       MOVS     r0,#8
-        0x00001b9c:    492d        -I      LDR      r1,[pc,#180] ; [0x1c54] = 0x10008040
-        0x00001b9e:    3940        @9      SUBS     r1,r1,#0x40
-        0x00001ba0:    7648        Hv      STRB     r0,[r1,#0x19]
+        0x00001b7e:    4938        8I      LDR      r1,[pc,#224] ; [0x1c60] = 0x10004fe0
+        0x00001b80:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00001b82:    4a38        8J      LDR      r2,[pc,#224] ; [0x1c64] = 0x10008340
+        0x00001b84:    7a52        Rz      LDRB     r2,[r2,#9]
+        0x00001b86:    4311        .C      ORRS     r1,r1,r2
+        0x00001b88:    4a36        6J      LDR      r2,[pc,#216] ; [0x1c64] = 0x10008340
+        0x00001b8a:    7a52        Rz      LDRB     r2,[r2,#9]
+        0x00001b8c:    4311        .C      ORRS     r1,r1,r2
+        0x00001b8e:    0609        ..      LSLS     r1,r1,#24
+        0x00001b90:    4308        .C      ORRS     r0,r0,r1
+        0x00001b92:    b2c6        ..      UXTB     r6,r0
+        0x00001b94:    4629        )F      MOV      r1,r5
+        0x00001b96:    3920         9      SUBS     r1,r1,#0x20
+        0x00001b98:    2001        .       MOVS     r0,#1
+        0x00001b9a:    4088        .@      LSLS     r0,r0,r1
+        0x00001b9c:    4631        1F      MOV      r1,r6
+        0x00001b9e:    4381        .C      BICS     r1,r1,r0
+        0x00001ba0:    460e        .F      MOV      r6,r1
         0x00001ba2:    bf00        ..      NOP      
-        0x00001ba4:    2064        d       MOVS     r0,#0x64
-        0x00001ba6:    f001f8ee    ....    BL       whileDelay ; 0x2d86
-        0x00001baa:    bd70        p.      POP      {r4-r6,pc}
+        0x00001ba4:    4830        0H      LDR      r0,[pc,#192] ; [0x1c68] = 0x10008040
+        0x00001ba6:    7386        .s      STRB     r6,[r0,#0xe]
+        0x00001ba8:    7386        .s      STRB     r6,[r0,#0xe]
+        0x00001baa:    bf00        ..      NOP      
+        0x00001bac:    bf00        ..      NOP      
+        0x00001bae:    2008        .       MOVS     r0,#8
+        0x00001bb0:    492d        -I      LDR      r1,[pc,#180] ; [0x1c68] = 0x10008040
+        0x00001bb2:    3940        @9      SUBS     r1,r1,#0x40
+        0x00001bb4:    7648        Hv      STRB     r0,[r1,#0x19]
+        0x00001bb6:    bf00        ..      NOP      
+        0x00001bb8:    2064        d       MOVS     r0,#0x64
+        0x00001bba:    f001f8ee    ....    BL       whileDelay ; 0x2d9a
+        0x00001bbe:    bd70        p.      POP      {r4-r6,pc}
     GPIO_Clear_All_Interrupt
-        0x00001bac:    b510        ..      PUSH     {r4,lr}
-        0x00001bae:    2400        .$      MOVS     r4,#0
-        0x00001bb0:    bf00        ..      NOP      
-        0x00001bb2:    bf00        ..      NOP      
-        0x00001bb4:    4927        'I      LDR      r1,[pc,#156] ; [0x1c54] = 0x10008040
-        0x00001bb6:    730c        .s      STRB     r4,[r1,#0xc]
-        0x00001bb8:    730c        .s      STRB     r4,[r1,#0xc]
-        0x00001bba:    bf00        ..      NOP      
-        0x00001bbc:    bf00        ..      NOP      
-        0x00001bbe:    0420         .      LSLS     r0,r4,#16
-        0x00001bc0:    0e00        ..      LSRS     r0,r0,#24
-        0x00001bc2:    7348        Hs      STRB     r0,[r1,#0xd]
-        0x00001bc4:    0420         .      LSLS     r0,r4,#16
-        0x00001bc6:    0e00        ..      LSRS     r0,r0,#24
-        0x00001bc8:    7348        Hs      STRB     r0,[r1,#0xd]
-        0x00001bca:    bf00        ..      NOP      
-        0x00001bcc:    bf00        ..      NOP      
-        0x00001bce:    0220         .      LSLS     r0,r4,#8
-        0x00001bd0:    0e00        ..      LSRS     r0,r0,#24
-        0x00001bd2:    7388        .s      STRB     r0,[r1,#0xe]
-        0x00001bd4:    0220         .      LSLS     r0,r4,#8
-        0x00001bd6:    0e00        ..      LSRS     r0,r0,#24
-        0x00001bd8:    7388        .s      STRB     r0,[r1,#0xe]
-        0x00001bda:    bf00        ..      NOP      
-        0x00001bdc:    bf00        ..      NOP      
-        0x00001bde:    0e20         .      LSRS     r0,r4,#24
-        0x00001be0:    73c8        .s      STRB     r0,[r1,#0xf]
-        0x00001be2:    0e20         .      LSRS     r0,r4,#24
-        0x00001be4:    73c8        .s      STRB     r0,[r1,#0xf]
-        0x00001be6:    bf00        ..      NOP      
-        0x00001be8:    bf00        ..      NOP      
-        0x00001bea:    bf00        ..      NOP      
-        0x00001bec:    2004        .       MOVS     r0,#4
-        0x00001bee:    4919        .I      LDR      r1,[pc,#100] ; [0x1c54] = 0x10008040
-        0x00001bf0:    3940        @9      SUBS     r1,r1,#0x40
-        0x00001bf2:    7148        Hq      STRB     r0,[r1,#5]
-        0x00001bf4:    bf00        ..      NOP      
-        0x00001bf6:    2064        d       MOVS     r0,#0x64
-        0x00001bf8:    f001f8c5    ....    BL       whileDelay ; 0x2d86
+        0x00001bc0:    b510        ..      PUSH     {r4,lr}
+        0x00001bc2:    2400        .$      MOVS     r4,#0
+        0x00001bc4:    bf00        ..      NOP      
+        0x00001bc6:    bf00        ..      NOP      
+        0x00001bc8:    4927        'I      LDR      r1,[pc,#156] ; [0x1c68] = 0x10008040
+        0x00001bca:    730c        .s      STRB     r4,[r1,#0xc]
+        0x00001bcc:    730c        .s      STRB     r4,[r1,#0xc]
+        0x00001bce:    bf00        ..      NOP      
+        0x00001bd0:    bf00        ..      NOP      
+        0x00001bd2:    0420         .      LSLS     r0,r4,#16
+        0x00001bd4:    0e00        ..      LSRS     r0,r0,#24
+        0x00001bd6:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x00001bd8:    0420         .      LSLS     r0,r4,#16
+        0x00001bda:    0e00        ..      LSRS     r0,r0,#24
+        0x00001bdc:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x00001bde:    bf00        ..      NOP      
+        0x00001be0:    bf00        ..      NOP      
+        0x00001be2:    0220         .      LSLS     r0,r4,#8
+        0x00001be4:    0e00        ..      LSRS     r0,r0,#24
+        0x00001be6:    7388        .s      STRB     r0,[r1,#0xe]
+        0x00001be8:    0220         .      LSLS     r0,r4,#8
+        0x00001bea:    0e00        ..      LSRS     r0,r0,#24
+        0x00001bec:    7388        .s      STRB     r0,[r1,#0xe]
+        0x00001bee:    bf00        ..      NOP      
+        0x00001bf0:    bf00        ..      NOP      
+        0x00001bf2:    0e20         .      LSRS     r0,r4,#24
+        0x00001bf4:    73c8        .s      STRB     r0,[r1,#0xf]
+        0x00001bf6:    0e20         .      LSRS     r0,r4,#24
+        0x00001bf8:    73c8        .s      STRB     r0,[r1,#0xf]
+        0x00001bfa:    bf00        ..      NOP      
         0x00001bfc:    bf00        ..      NOP      
-        0x00001bfe:    2008        .       MOVS     r0,#8
-        0x00001c00:    4914        .I      LDR      r1,[pc,#80] ; [0x1c54] = 0x10008040
-        0x00001c02:    3940        @9      SUBS     r1,r1,#0x40
-        0x00001c04:    7148        Hq      STRB     r0,[r1,#5]
-        0x00001c06:    bf00        ..      NOP      
-        0x00001c08:    2064        d       MOVS     r0,#0x64
-        0x00001c0a:    f001f8bc    ....    BL       whileDelay ; 0x2d86
-        0x00001c0e:    bf00        ..      NOP      
-        0x00001c10:    2088        .       MOVS     r0,#0x88
-        0x00001c12:    4910        .I      LDR      r1,[pc,#64] ; [0x1c54] = 0x10008040
-        0x00001c14:    7308        .s      STRB     r0,[r1,#0xc]
-        0x00001c16:    7308        .s      STRB     r0,[r1,#0xc]
-        0x00001c18:    bf00        ..      NOP      
+        0x00001bfe:    bf00        ..      NOP      
+        0x00001c00:    2004        .       MOVS     r0,#4
+        0x00001c02:    4919        .I      LDR      r1,[pc,#100] ; [0x1c68] = 0x10008040
+        0x00001c04:    3940        @9      SUBS     r1,r1,#0x40
+        0x00001c06:    7148        Hq      STRB     r0,[r1,#5]
+        0x00001c08:    bf00        ..      NOP      
+        0x00001c0a:    2064        d       MOVS     r0,#0x64
+        0x00001c0c:    f001f8c5    ....    BL       whileDelay ; 0x2d9a
+        0x00001c10:    bf00        ..      NOP      
+        0x00001c12:    2008        .       MOVS     r0,#8
+        0x00001c14:    4914        .I      LDR      r1,[pc,#80] ; [0x1c68] = 0x10008040
+        0x00001c16:    3940        @9      SUBS     r1,r1,#0x40
+        0x00001c18:    7148        Hq      STRB     r0,[r1,#5]
         0x00001c1a:    bf00        ..      NOP      
-        0x00001c1c:    2000        .       MOVS     r0,#0
-        0x00001c1e:    7348        Hs      STRB     r0,[r1,#0xd]
-        0x00001c20:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x00001c1c:    2064        d       MOVS     r0,#0x64
+        0x00001c1e:    f001f8bc    ....    BL       whileDelay ; 0x2d9a
         0x00001c22:    bf00        ..      NOP      
-        0x00001c24:    bf00        ..      NOP      
-        0x00001c26:    7388        .s      STRB     r0,[r1,#0xe]
-        0x00001c28:    7388        .s      STRB     r0,[r1,#0xe]
-        0x00001c2a:    bf00        ..      NOP      
+        0x00001c24:    2088        .       MOVS     r0,#0x88
+        0x00001c26:    4910        .I      LDR      r1,[pc,#64] ; [0x1c68] = 0x10008040
+        0x00001c28:    7308        .s      STRB     r0,[r1,#0xc]
+        0x00001c2a:    7308        .s      STRB     r0,[r1,#0xc]
         0x00001c2c:    bf00        ..      NOP      
-        0x00001c2e:    2008        .       MOVS     r0,#8
-        0x00001c30:    4908        .I      LDR      r1,[pc,#32] ; [0x1c54] = 0x10008040
-        0x00001c32:    3940        @9      SUBS     r1,r1,#0x40
-        0x00001c34:    7648        Hv      STRB     r0,[r1,#0x19]
+        0x00001c2e:    bf00        ..      NOP      
+        0x00001c30:    2000        .       MOVS     r0,#0
+        0x00001c32:    7348        Hs      STRB     r0,[r1,#0xd]
+        0x00001c34:    7348        Hs      STRB     r0,[r1,#0xd]
         0x00001c36:    bf00        ..      NOP      
-        0x00001c38:    2064        d       MOVS     r0,#0x64
-        0x00001c3a:    f001f8a4    ....    BL       whileDelay ; 0x2d86
-        0x00001c3e:    bd10        ..      POP      {r4,pc}
-    hw_delay
+        0x00001c38:    bf00        ..      NOP      
+        0x00001c3a:    7388        .s      STRB     r0,[r1,#0xe]
+        0x00001c3c:    7388        .s      STRB     r0,[r1,#0xe]
+        0x00001c3e:    bf00        ..      NOP      
         0x00001c40:    bf00        ..      NOP      
-        0x00001c42:    bf00        ..      NOP      
-        0x00001c44:    bf00        ..      NOP      
-        0x00001c46:    bf00        ..      NOP      
-        0x00001c48:    bf00        ..      NOP      
-        0x00001c4a:    4770        pG      BX       lr
+        0x00001c42:    2008        .       MOVS     r0,#8
+        0x00001c44:    4908        .I      LDR      r1,[pc,#32] ; [0x1c68] = 0x10008040
+        0x00001c46:    3940        @9      SUBS     r1,r1,#0x40
+        0x00001c48:    7648        Hv      STRB     r0,[r1,#0x19]
+        0x00001c4a:    bf00        ..      NOP      
+        0x00001c4c:    2064        d       MOVS     r0,#0x64
+        0x00001c4e:    f001f8a4    ....    BL       whileDelay ; 0x2d9a
+        0x00001c52:    bd10        ..      POP      {r4,pc}
+    hw_delay
+        0x00001c54:    bf00        ..      NOP      
+        0x00001c56:    bf00        ..      NOP      
+        0x00001c58:    bf00        ..      NOP      
+        0x00001c5a:    bf00        ..      NOP      
+        0x00001c5c:    bf00        ..      NOP      
+        0x00001c5e:    4770        pG      BX       lr
     $d
-        0x00001c4c:    10004fe0    .O..    DCD    268455904
-        0x00001c50:    10008340    @...    DCD    268469056
-        0x00001c54:    10008040    @...    DCD    268468288
+        0x00001c60:    10004fe0    .O..    DCD    268455904
+        0x00001c64:    10008340    @...    DCD    268469056
+        0x00001c68:    10008040    @...    DCD    268468288
     $t
     .text
     SYS_TimerExpireDefaultHandle
-        0x00001c58:    bf00        ..      NOP      
-        0x00001c5a:    bf00        ..      NOP      
-        0x00001c5c:    4770        pG      BX       lr
+        0x00001c6c:    bf00        ..      NOP      
+        0x00001c6e:    bf00        ..      NOP      
+        0x00001c70:    4770        pG      BX       lr
     SYS_TimerGet1usTicks
-        0x00001c5e:    b510        ..      PUSH     {r4,lr}
-        0x00001c60:    4bfc        .K      LDR      r3,[pc,#1008] ; [0x2054] = 0x10004fe0
-        0x00001c62:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x00001c64:    2300        .#      MOVS     r3,#0
-        0x00001c66:    4cfc        .L      LDR      r4,[pc,#1008] ; [0x2058] = 0x10008040
-        0x00001c68:    78e4        .x      LDRB     r4,[r4,#3]
-        0x00001c6a:    431b        .C      ORRS     r3,r3,r3
-        0x00001c6c:    4cfa        .L      LDR      r4,[pc,#1000] ; [0x2058] = 0x10008040
-        0x00001c6e:    78e4        .x      LDRB     r4,[r4,#3]
-        0x00001c70:    4323        #C      ORRS     r3,r3,r4
-        0x00001c72:    4619        .F      MOV      r1,r3
-        0x00001c74:    074b        K.      LSLS     r3,r1,#29
-        0x00001c76:    0f9a        ..      LSRS     r2,r3,#30
-        0x00001c78:    2000        .       MOVS     r0,#0
-        0x00001c7a:    2a00        .*      CMP      r2,#0
-        0x00001c7c:    d006        ..      BEQ      0x1c8c ; SYS_TimerGet1usTicks + 46
-        0x00001c7e:    2a01        .*      CMP      r2,#1
-        0x00001c80:    d006        ..      BEQ      0x1c90 ; SYS_TimerGet1usTicks + 50
-        0x00001c82:    2a02        .*      CMP      r2,#2
-        0x00001c84:    d006        ..      BEQ      0x1c94 ; SYS_TimerGet1usTicks + 54
-        0x00001c86:    2a03        .*      CMP      r2,#3
-        0x00001c88:    d108        ..      BNE      0x1c9c ; SYS_TimerGet1usTicks + 62
-        0x00001c8a:    e005        ..      B        0x1c98 ; SYS_TimerGet1usTicks + 58
-        0x00001c8c:    2030        0       MOVS     r0,#0x30
-        0x00001c8e:    e006        ..      B        0x1c9e ; SYS_TimerGet1usTicks + 64
-        0x00001c90:    2040        @       MOVS     r0,#0x40
-        0x00001c92:    e004        ..      B        0x1c9e ; SYS_TimerGet1usTicks + 64
-        0x00001c94:    2060        `       MOVS     r0,#0x60
-        0x00001c96:    e002        ..      B        0x1c9e ; SYS_TimerGet1usTicks + 64
-        0x00001c98:    20c0        .       MOVS     r0,#0xc0
-        0x00001c9a:    e000        ..      B        0x1c9e ; SYS_TimerGet1usTicks + 64
-        0x00001c9c:    bf00        ..      NOP      
-        0x00001c9e:    bf00        ..      NOP      
-        0x00001ca0:    bd10        ..      POP      {r4,pc}
+        0x00001c72:    b510        ..      PUSH     {r4,lr}
+        0x00001c74:    4bfc        .K      LDR      r3,[pc,#1008] ; [0x2068] = 0x10004fe0
+        0x00001c76:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x00001c78:    2300        .#      MOVS     r3,#0
+        0x00001c7a:    4cfc        .L      LDR      r4,[pc,#1008] ; [0x206c] = 0x10008040
+        0x00001c7c:    78e4        .x      LDRB     r4,[r4,#3]
+        0x00001c7e:    431b        .C      ORRS     r3,r3,r3
+        0x00001c80:    4cfa        .L      LDR      r4,[pc,#1000] ; [0x206c] = 0x10008040
+        0x00001c82:    78e4        .x      LDRB     r4,[r4,#3]
+        0x00001c84:    4323        #C      ORRS     r3,r3,r4
+        0x00001c86:    4619        .F      MOV      r1,r3
+        0x00001c88:    074b        K.      LSLS     r3,r1,#29
+        0x00001c8a:    0f9a        ..      LSRS     r2,r3,#30
+        0x00001c8c:    2000        .       MOVS     r0,#0
+        0x00001c8e:    2a00        .*      CMP      r2,#0
+        0x00001c90:    d006        ..      BEQ      0x1ca0 ; SYS_TimerGet1usTicks + 46
+        0x00001c92:    2a01        .*      CMP      r2,#1
+        0x00001c94:    d006        ..      BEQ      0x1ca4 ; SYS_TimerGet1usTicks + 50
+        0x00001c96:    2a02        .*      CMP      r2,#2
+        0x00001c98:    d006        ..      BEQ      0x1ca8 ; SYS_TimerGet1usTicks + 54
+        0x00001c9a:    2a03        .*      CMP      r2,#3
+        0x00001c9c:    d108        ..      BNE      0x1cb0 ; SYS_TimerGet1usTicks + 62
+        0x00001c9e:    e005        ..      B        0x1cac ; SYS_TimerGet1usTicks + 58
+        0x00001ca0:    2030        0       MOVS     r0,#0x30
+        0x00001ca2:    e006        ..      B        0x1cb2 ; SYS_TimerGet1usTicks + 64
+        0x00001ca4:    2040        @       MOVS     r0,#0x40
+        0x00001ca6:    e004        ..      B        0x1cb2 ; SYS_TimerGet1usTicks + 64
+        0x00001ca8:    2060        `       MOVS     r0,#0x60
+        0x00001caa:    e002        ..      B        0x1cb2 ; SYS_TimerGet1usTicks + 64
+        0x00001cac:    20c0        .       MOVS     r0,#0xc0
+        0x00001cae:    e000        ..      B        0x1cb2 ; SYS_TimerGet1usTicks + 64
+        0x00001cb0:    bf00        ..      NOP      
+        0x00001cb2:    bf00        ..      NOP      
+        0x00001cb4:    bd10        ..      POP      {r4,pc}
     SYS_ChangeDPLL
-        0x00001ca2:    b5f8        ..      PUSH     {r3-r7,lr}
-        0x00001ca4:    4604        .F      MOV      r4,r0
-        0x00001ca6:    48eb        .H      LDR      r0,[pc,#940] ; [0x2054] = 0x10004fe0
-        0x00001ca8:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00001caa:    2000        .       MOVS     r0,#0
-        0x00001cac:    49ea        .I      LDR      r1,[pc,#936] ; [0x2058] = 0x10008040
-        0x00001cae:    78c9        .x      LDRB     r1,[r1,#3]
-        0x00001cb0:    4300        .C      ORRS     r0,r0,r0
-        0x00001cb2:    49e9        .I      LDR      r1,[pc,#932] ; [0x2058] = 0x10008040
-        0x00001cb4:    78c9        .x      LDRB     r1,[r1,#3]
-        0x00001cb6:    4308        .C      ORRS     r0,r0,r1
-        0x00001cb8:    4605        .F      MOV      r5,r0
-        0x00001cba:    2c03        .,      CMP      r4,#3
-        0x00001cbc:    d100        ..      BNE      0x1cc0 ; SYS_ChangeDPLL + 30
-        0x00001cbe:    2400        .$      MOVS     r4,#0
-        0x00001cc0:    4626        &F      MOV      r6,r4
-        0x00001cc2:    20f9        .       MOVS     r0,#0xf9
-        0x00001cc4:    4005        .@      ANDS     r5,r5,r0
-        0x00001cc6:    0070        p.      LSLS     r0,r6,#1
-        0x00001cc8:    4328        (C      ORRS     r0,r0,r5
-        0x00001cca:    b2c5        ..      UXTB     r5,r0
-        0x00001ccc:    bf00        ..      NOP      
-        0x00001cce:    48e2        .H      LDR      r0,[pc,#904] ; [0x2058] = 0x10008040
-        0x00001cd0:    70c5        .p      STRB     r5,[r0,#3]
-        0x00001cd2:    70c5        .p      STRB     r5,[r0,#3]
-        0x00001cd4:    bf00        ..      NOP      
-        0x00001cd6:    f7ffffc2    ....    BL       SYS_TimerGet1usTicks ; 0x1c5e
-        0x00001cda:    49e0        .I      LDR      r1,[pc,#896] ; [0x205c] = 0x2710
-        0x00001cdc:    4348        HC      MULS     r0,r1,r0
-        0x00001cde:    4607        .F      MOV      r7,r0
-        0x00001ce0:    f000fa2e    ....    BL       SysTick_Config ; 0x2140
-        0x00001ce4:    bdf8        ..      POP      {r3-r7,pc}
+        0x00001cb6:    b5f8        ..      PUSH     {r3-r7,lr}
+        0x00001cb8:    4604        .F      MOV      r4,r0
+        0x00001cba:    48eb        .H      LDR      r0,[pc,#940] ; [0x2068] = 0x10004fe0
+        0x00001cbc:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x00001cbe:    2000        .       MOVS     r0,#0
+        0x00001cc0:    49ea        .I      LDR      r1,[pc,#936] ; [0x206c] = 0x10008040
+        0x00001cc2:    78c9        .x      LDRB     r1,[r1,#3]
+        0x00001cc4:    4300        .C      ORRS     r0,r0,r0
+        0x00001cc6:    49e9        .I      LDR      r1,[pc,#932] ; [0x206c] = 0x10008040
+        0x00001cc8:    78c9        .x      LDRB     r1,[r1,#3]
+        0x00001cca:    4308        .C      ORRS     r0,r0,r1
+        0x00001ccc:    4605        .F      MOV      r5,r0
+        0x00001cce:    2c03        .,      CMP      r4,#3
+        0x00001cd0:    d100        ..      BNE      0x1cd4 ; SYS_ChangeDPLL + 30
+        0x00001cd2:    2400        .$      MOVS     r4,#0
+        0x00001cd4:    4626        &F      MOV      r6,r4
+        0x00001cd6:    20f9        .       MOVS     r0,#0xf9
+        0x00001cd8:    4005        .@      ANDS     r5,r5,r0
+        0x00001cda:    0070        p.      LSLS     r0,r6,#1
+        0x00001cdc:    4328        (C      ORRS     r0,r0,r5
+        0x00001cde:    b2c5        ..      UXTB     r5,r0
+        0x00001ce0:    bf00        ..      NOP      
+        0x00001ce2:    48e2        .H      LDR      r0,[pc,#904] ; [0x206c] = 0x10008040
+        0x00001ce4:    70c5        .p      STRB     r5,[r0,#3]
+        0x00001ce6:    70c5        .p      STRB     r5,[r0,#3]
+        0x00001ce8:    bf00        ..      NOP      
+        0x00001cea:    f7ffffc2    ....    BL       SYS_TimerGet1usTicks ; 0x1c72
+        0x00001cee:    49e0        .I      LDR      r1,[pc,#896] ; [0x2070] = 0x2710
+        0x00001cf0:    4348        HC      MULS     r0,r1,r0
+        0x00001cf2:    4607        .F      MOV      r7,r0
+        0x00001cf4:    f000fa2e    ....    BL       SysTick_Config ; 0x2154
+        0x00001cf8:    bdf8        ..      POP      {r3-r7,pc}
     SYS_ChangeToFastDPLL
-        0x00001ce6:    b570        p.      PUSH     {r4-r6,lr}
-        0x00001ce8:    2001        .       MOVS     r0,#1
-        0x00001cea:    49dd        .I      LDR      r1,[pc,#884] ; [0x2060] = 0x1001100d
-        0x00001cec:    7008        .p      STRB     r0,[r1,#0]
-        0x00001cee:    48d9        .H      LDR      r0,[pc,#868] ; [0x2054] = 0x10004fe0
-        0x00001cf0:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00001cf2:    2000        .       MOVS     r0,#0
-        0x00001cf4:    49d8        .I      LDR      r1,[pc,#864] ; [0x2058] = 0x10008040
-        0x00001cf6:    78c9        .x      LDRB     r1,[r1,#3]
-        0x00001cf8:    4300        .C      ORRS     r0,r0,r0
-        0x00001cfa:    49d7        .I      LDR      r1,[pc,#860] ; [0x2058] = 0x10008040
-        0x00001cfc:    78c9        .x      LDRB     r1,[r1,#3]
-        0x00001cfe:    4308        .C      ORRS     r0,r0,r1
-        0x00001d00:    4604        .F      MOV      r4,r0
-        0x00001d02:    2503        .%      MOVS     r5,#3
-        0x00001d04:    20f9        .       MOVS     r0,#0xf9
-        0x00001d06:    4004        .@      ANDS     r4,r4,r0
-        0x00001d08:    0068        h.      LSLS     r0,r5,#1
-        0x00001d0a:    4304        .C      ORRS     r4,r4,r0
-        0x00001d0c:    bf00        ..      NOP      
-        0x00001d0e:    48d2        .H      LDR      r0,[pc,#840] ; [0x2058] = 0x10008040
-        0x00001d10:    70c4        .p      STRB     r4,[r0,#3]
-        0x00001d12:    70c4        .p      STRB     r4,[r0,#3]
-        0x00001d14:    bf00        ..      NOP      
-        0x00001d16:    f000fa04    ....    BL       hw_delay ; 0x2122
-        0x00001d1a:    f000fa02    ....    BL       hw_delay ; 0x2122
-        0x00001d1e:    f000fa00    ....    BL       hw_delay ; 0x2122
-        0x00001d22:    f000f9fe    ....    BL       hw_delay ; 0x2122
-        0x00001d26:    f000f9fc    ....    BL       hw_delay ; 0x2122
-        0x00001d2a:    f000f9fa    ....    BL       hw_delay ; 0x2122
-        0x00001d2e:    f000f9f8    ....    BL       hw_delay ; 0x2122
-        0x00001d32:    f000f9f6    ....    BL       hw_delay ; 0x2122
-        0x00001d36:    f000f9f4    ....    BL       hw_delay ; 0x2122
-        0x00001d3a:    f000f9f2    ....    BL       hw_delay ; 0x2122
-        0x00001d3e:    f000f9f0    ....    BL       hw_delay ; 0x2122
-        0x00001d42:    f000f9ee    ....    BL       hw_delay ; 0x2122
-        0x00001d46:    f000f9ec    ....    BL       hw_delay ; 0x2122
-        0x00001d4a:    f000f9ea    ....    BL       hw_delay ; 0x2122
-        0x00001d4e:    f000f9e8    ....    BL       hw_delay ; 0x2122
-        0x00001d52:    f000f9e6    ....    BL       hw_delay ; 0x2122
-        0x00001d56:    f000f9e4    ....    BL       hw_delay ; 0x2122
-        0x00001d5a:    f000f9e2    ....    BL       hw_delay ; 0x2122
-        0x00001d5e:    f000f9e0    ....    BL       hw_delay ; 0x2122
-        0x00001d62:    f000f9de    ....    BL       hw_delay ; 0x2122
-        0x00001d66:    bd70        p.      POP      {r4-r6,pc}
+        0x00001cfa:    b570        p.      PUSH     {r4-r6,lr}
+        0x00001cfc:    2001        .       MOVS     r0,#1
+        0x00001cfe:    49dd        .I      LDR      r1,[pc,#884] ; [0x2074] = 0x1001100d
+        0x00001d00:    7008        .p      STRB     r0,[r1,#0]
+        0x00001d02:    48d9        .H      LDR      r0,[pc,#868] ; [0x2068] = 0x10004fe0
+        0x00001d04:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x00001d06:    2000        .       MOVS     r0,#0
+        0x00001d08:    49d8        .I      LDR      r1,[pc,#864] ; [0x206c] = 0x10008040
+        0x00001d0a:    78c9        .x      LDRB     r1,[r1,#3]
+        0x00001d0c:    4300        .C      ORRS     r0,r0,r0
+        0x00001d0e:    49d7        .I      LDR      r1,[pc,#860] ; [0x206c] = 0x10008040
+        0x00001d10:    78c9        .x      LDRB     r1,[r1,#3]
+        0x00001d12:    4308        .C      ORRS     r0,r0,r1
+        0x00001d14:    4604        .F      MOV      r4,r0
+        0x00001d16:    2503        .%      MOVS     r5,#3
+        0x00001d18:    20f9        .       MOVS     r0,#0xf9
+        0x00001d1a:    4004        .@      ANDS     r4,r4,r0
+        0x00001d1c:    0068        h.      LSLS     r0,r5,#1
+        0x00001d1e:    4304        .C      ORRS     r4,r4,r0
+        0x00001d20:    bf00        ..      NOP      
+        0x00001d22:    48d2        .H      LDR      r0,[pc,#840] ; [0x206c] = 0x10008040
+        0x00001d24:    70c4        .p      STRB     r4,[r0,#3]
+        0x00001d26:    70c4        .p      STRB     r4,[r0,#3]
+        0x00001d28:    bf00        ..      NOP      
+        0x00001d2a:    f000fa04    ....    BL       hw_delay ; 0x2136
+        0x00001d2e:    f000fa02    ....    BL       hw_delay ; 0x2136
+        0x00001d32:    f000fa00    ....    BL       hw_delay ; 0x2136
+        0x00001d36:    f000f9fe    ....    BL       hw_delay ; 0x2136
+        0x00001d3a:    f000f9fc    ....    BL       hw_delay ; 0x2136
+        0x00001d3e:    f000f9fa    ....    BL       hw_delay ; 0x2136
+        0x00001d42:    f000f9f8    ....    BL       hw_delay ; 0x2136
+        0x00001d46:    f000f9f6    ....    BL       hw_delay ; 0x2136
+        0x00001d4a:    f000f9f4    ....    BL       hw_delay ; 0x2136
+        0x00001d4e:    f000f9f2    ....    BL       hw_delay ; 0x2136
+        0x00001d52:    f000f9f0    ....    BL       hw_delay ; 0x2136
+        0x00001d56:    f000f9ee    ....    BL       hw_delay ; 0x2136
+        0x00001d5a:    f000f9ec    ....    BL       hw_delay ; 0x2136
+        0x00001d5e:    f000f9ea    ....    BL       hw_delay ; 0x2136
+        0x00001d62:    f000f9e8    ....    BL       hw_delay ; 0x2136
+        0x00001d66:    f000f9e6    ....    BL       hw_delay ; 0x2136
+        0x00001d6a:    f000f9e4    ....    BL       hw_delay ; 0x2136
+        0x00001d6e:    f000f9e2    ....    BL       hw_delay ; 0x2136
+        0x00001d72:    f000f9e0    ....    BL       hw_delay ; 0x2136
+        0x00001d76:    f000f9de    ....    BL       hw_delay ; 0x2136
+        0x00001d7a:    bd70        p.      POP      {r4-r6,pc}
     SYS_ChangeToNormalDPLL
-        0x00001d68:    b570        p.      PUSH     {r4-r6,lr}
-        0x00001d6a:    2000        .       MOVS     r0,#0
-        0x00001d6c:    49bc        .I      LDR      r1,[pc,#752] ; [0x2060] = 0x1001100d
-        0x00001d6e:    7008        .p      STRB     r0,[r1,#0]
-        0x00001d70:    48b8        .H      LDR      r0,[pc,#736] ; [0x2054] = 0x10004fe0
-        0x00001d72:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00001d74:    2000        .       MOVS     r0,#0
-        0x00001d76:    49b8        .I      LDR      r1,[pc,#736] ; [0x2058] = 0x10008040
-        0x00001d78:    78c9        .x      LDRB     r1,[r1,#3]
-        0x00001d7a:    4300        .C      ORRS     r0,r0,r0
-        0x00001d7c:    49b6        .I      LDR      r1,[pc,#728] ; [0x2058] = 0x10008040
-        0x00001d7e:    78c9        .x      LDRB     r1,[r1,#3]
-        0x00001d80:    4308        .C      ORRS     r0,r0,r1
-        0x00001d82:    4604        .F      MOV      r4,r0
-        0x00001d84:    2500        .%      MOVS     r5,#0
-        0x00001d86:    20f9        .       MOVS     r0,#0xf9
-        0x00001d88:    4004        .@      ANDS     r4,r4,r0
-        0x00001d8a:    0068        h.      LSLS     r0,r5,#1
-        0x00001d8c:    4304        .C      ORRS     r4,r4,r0
-        0x00001d8e:    bf00        ..      NOP      
-        0x00001d90:    48b1        .H      LDR      r0,[pc,#708] ; [0x2058] = 0x10008040
-        0x00001d92:    70c4        .p      STRB     r4,[r0,#3]
-        0x00001d94:    70c4        .p      STRB     r4,[r0,#3]
-        0x00001d96:    bf00        ..      NOP      
-        0x00001d98:    f000f9c3    ....    BL       hw_delay ; 0x2122
-        0x00001d9c:    f000f9c1    ....    BL       hw_delay ; 0x2122
-        0x00001da0:    f000f9bf    ....    BL       hw_delay ; 0x2122
-        0x00001da4:    f000f9bd    ....    BL       hw_delay ; 0x2122
-        0x00001da8:    f000f9bb    ....    BL       hw_delay ; 0x2122
-        0x00001dac:    f000f9b9    ....    BL       hw_delay ; 0x2122
-        0x00001db0:    f000f9b7    ....    BL       hw_delay ; 0x2122
-        0x00001db4:    f000f9b5    ....    BL       hw_delay ; 0x2122
-        0x00001db8:    f000f9b3    ....    BL       hw_delay ; 0x2122
-        0x00001dbc:    f000f9b1    ....    BL       hw_delay ; 0x2122
-        0x00001dc0:    f000f9af    ....    BL       hw_delay ; 0x2122
-        0x00001dc4:    f000f9ad    ....    BL       hw_delay ; 0x2122
-        0x00001dc8:    f000f9ab    ....    BL       hw_delay ; 0x2122
-        0x00001dcc:    f000f9a9    ....    BL       hw_delay ; 0x2122
-        0x00001dd0:    f000f9a7    ....    BL       hw_delay ; 0x2122
-        0x00001dd4:    f000f9a5    ....    BL       hw_delay ; 0x2122
-        0x00001dd8:    f000f9a3    ....    BL       hw_delay ; 0x2122
-        0x00001ddc:    f000f9a1    ....    BL       hw_delay ; 0x2122
-        0x00001de0:    f000f99f    ....    BL       hw_delay ; 0x2122
-        0x00001de4:    f000f99d    ....    BL       hw_delay ; 0x2122
-        0x00001de8:    bd70        p.      POP      {r4-r6,pc}
+        0x00001d7c:    b570        p.      PUSH     {r4-r6,lr}
+        0x00001d7e:    2000        .       MOVS     r0,#0
+        0x00001d80:    49bc        .I      LDR      r1,[pc,#752] ; [0x2074] = 0x1001100d
+        0x00001d82:    7008        .p      STRB     r0,[r1,#0]
+        0x00001d84:    48b8        .H      LDR      r0,[pc,#736] ; [0x2068] = 0x10004fe0
+        0x00001d86:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x00001d88:    2000        .       MOVS     r0,#0
+        0x00001d8a:    49b8        .I      LDR      r1,[pc,#736] ; [0x206c] = 0x10008040
+        0x00001d8c:    78c9        .x      LDRB     r1,[r1,#3]
+        0x00001d8e:    4300        .C      ORRS     r0,r0,r0
+        0x00001d90:    49b6        .I      LDR      r1,[pc,#728] ; [0x206c] = 0x10008040
+        0x00001d92:    78c9        .x      LDRB     r1,[r1,#3]
+        0x00001d94:    4308        .C      ORRS     r0,r0,r1
+        0x00001d96:    4604        .F      MOV      r4,r0
+        0x00001d98:    2500        .%      MOVS     r5,#0
+        0x00001d9a:    20f9        .       MOVS     r0,#0xf9
+        0x00001d9c:    4004        .@      ANDS     r4,r4,r0
+        0x00001d9e:    0068        h.      LSLS     r0,r5,#1
+        0x00001da0:    4304        .C      ORRS     r4,r4,r0
+        0x00001da2:    bf00        ..      NOP      
+        0x00001da4:    48b1        .H      LDR      r0,[pc,#708] ; [0x206c] = 0x10008040
+        0x00001da6:    70c4        .p      STRB     r4,[r0,#3]
+        0x00001da8:    70c4        .p      STRB     r4,[r0,#3]
+        0x00001daa:    bf00        ..      NOP      
+        0x00001dac:    f000f9c3    ....    BL       hw_delay ; 0x2136
+        0x00001db0:    f000f9c1    ....    BL       hw_delay ; 0x2136
+        0x00001db4:    f000f9bf    ....    BL       hw_delay ; 0x2136
+        0x00001db8:    f000f9bd    ....    BL       hw_delay ; 0x2136
+        0x00001dbc:    f000f9bb    ....    BL       hw_delay ; 0x2136
+        0x00001dc0:    f000f9b9    ....    BL       hw_delay ; 0x2136
+        0x00001dc4:    f000f9b7    ....    BL       hw_delay ; 0x2136
+        0x00001dc8:    f000f9b5    ....    BL       hw_delay ; 0x2136
+        0x00001dcc:    f000f9b3    ....    BL       hw_delay ; 0x2136
+        0x00001dd0:    f000f9b1    ....    BL       hw_delay ; 0x2136
+        0x00001dd4:    f000f9af    ....    BL       hw_delay ; 0x2136
+        0x00001dd8:    f000f9ad    ....    BL       hw_delay ; 0x2136
+        0x00001ddc:    f000f9ab    ....    BL       hw_delay ; 0x2136
+        0x00001de0:    f000f9a9    ....    BL       hw_delay ; 0x2136
+        0x00001de4:    f000f9a7    ....    BL       hw_delay ; 0x2136
+        0x00001de8:    f000f9a5    ....    BL       hw_delay ; 0x2136
+        0x00001dec:    f000f9a3    ....    BL       hw_delay ; 0x2136
+        0x00001df0:    f000f9a1    ....    BL       hw_delay ; 0x2136
+        0x00001df4:    f000f99f    ....    BL       hw_delay ; 0x2136
+        0x00001df8:    f000f99d    ....    BL       hw_delay ; 0x2136
+        0x00001dfc:    bd70        p.      POP      {r4-r6,pc}
     SystemCheckInFastSpeed
-        0x00001dea:    489d        .H      LDR      r0,[pc,#628] ; [0x2060] = 0x1001100d
-        0x00001dec:    7800        .x      LDRB     r0,[r0,#0]
-        0x00001dee:    4770        pG      BX       lr
+        0x00001dfe:    489d        .H      LDR      r0,[pc,#628] ; [0x2074] = 0x1001100d
+        0x00001e00:    7800        .x      LDRB     r0,[r0,#0]
+        0x00001e02:    4770        pG      BX       lr
     SYS_ClkTicks
-        0x00001df0:    b510        ..      PUSH     {r4,lr}
-        0x00001df2:    f7fffffa    ....    BL       SystemCheckInFastSpeed ; 0x1dea
-        0x00001df6:    2800        .(      CMP      r0,#0
-        0x00001df8:    d000        ..      BEQ      0x1dfc ; SYS_ClkTicks + 12
-        0x00001dfa:    bd10        ..      POP      {r4,pc}
-        0x00001dfc:    4895        .H      LDR      r0,[pc,#596] ; [0x2054] = 0x10004fe0
-        0x00001dfe:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00001e00:    2000        .       MOVS     r0,#0
-        0x00001e02:    4b98        .K      LDR      r3,[pc,#608] ; [0x2064] = 0x10008300
-        0x00001e04:    781b        .x      LDRB     r3,[r3,#0]
-        0x00001e06:    4300        .C      ORRS     r0,r0,r0
-        0x00001e08:    4b96        .K      LDR      r3,[pc,#600] ; [0x2064] = 0x10008300
-        0x00001e0a:    781b        .x      LDRB     r3,[r3,#0]
-        0x00001e0c:    4318        .C      ORRS     r0,r0,r3
-        0x00001e0e:    4b91        .K      LDR      r3,[pc,#580] ; [0x2054] = 0x10004fe0
-        0x00001e10:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x00001e12:    2300        .#      MOVS     r3,#0
-        0x00001e14:    4c93        .L      LDR      r4,[pc,#588] ; [0x2064] = 0x10008300
-        0x00001e16:    7864        dx      LDRB     r4,[r4,#1]
-        0x00001e18:    431b        .C      ORRS     r3,r3,r3
-        0x00001e1a:    4c92        .L      LDR      r4,[pc,#584] ; [0x2064] = 0x10008300
-        0x00001e1c:    7864        dx      LDRB     r4,[r4,#1]
-        0x00001e1e:    4323        #C      ORRS     r3,r3,r4
-        0x00001e20:    021b        ..      LSLS     r3,r3,#8
-        0x00001e22:    4318        .C      ORRS     r0,r0,r3
-        0x00001e24:    4b8b        .K      LDR      r3,[pc,#556] ; [0x2054] = 0x10004fe0
-        0x00001e26:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x00001e28:    2300        .#      MOVS     r3,#0
-        0x00001e2a:    4c8e        .L      LDR      r4,[pc,#568] ; [0x2064] = 0x10008300
-        0x00001e2c:    78a4        .x      LDRB     r4,[r4,#2]
-        0x00001e2e:    431b        .C      ORRS     r3,r3,r3
-        0x00001e30:    4c8c        .L      LDR      r4,[pc,#560] ; [0x2064] = 0x10008300
-        0x00001e32:    78a4        .x      LDRB     r4,[r4,#2]
-        0x00001e34:    4323        #C      ORRS     r3,r3,r4
-        0x00001e36:    041b        ..      LSLS     r3,r3,#16
-        0x00001e38:    4318        .C      ORRS     r0,r0,r3
-        0x00001e3a:    4b86        .K      LDR      r3,[pc,#536] ; [0x2054] = 0x10004fe0
-        0x00001e3c:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x00001e3e:    2300        .#      MOVS     r3,#0
-        0x00001e40:    4c88        .L      LDR      r4,[pc,#544] ; [0x2064] = 0x10008300
-        0x00001e42:    78e4        .x      LDRB     r4,[r4,#3]
-        0x00001e44:    431b        .C      ORRS     r3,r3,r3
-        0x00001e46:    4c87        .L      LDR      r4,[pc,#540] ; [0x2064] = 0x10008300
-        0x00001e48:    78e4        .x      LDRB     r4,[r4,#3]
-        0x00001e4a:    4323        #C      ORRS     r3,r3,r4
-        0x00001e4c:    061b        ..      LSLS     r3,r3,#24
-        0x00001e4e:    4318        .C      ORRS     r0,r0,r3
-        0x00001e50:    4601        .F      MOV      r1,r0
-        0x00001e52:    2200        ."      MOVS     r2,#0
-        0x00001e54:    4884        .H      LDR      r0,[pc,#528] ; [0x2068] = 0x10011008
-        0x00001e56:    6800        .h      LDR      r0,[r0,#0]
-        0x00001e58:    2800        .(      CMP      r0,#0
-        0x00001e5a:    d102        ..      BNE      0x1e62 ; SYS_ClkTicks + 114
-        0x00001e5c:    4882        .H      LDR      r0,[pc,#520] ; [0x2068] = 0x10011008
-        0x00001e5e:    6001        .`      STR      r1,[r0,#0]
-        0x00001e60:    e017        ..      B        0x1e92 ; SYS_ClkTicks + 162
-        0x00001e62:    4881        .H      LDR      r0,[pc,#516] ; [0x2068] = 0x10011008
-        0x00001e64:    6800        .h      LDR      r0,[r0,#0]
-        0x00001e66:    4288        .B      CMP      r0,r1
-        0x00001e68:    d902        ..      BLS      0x1e70 ; SYS_ClkTicks + 128
-        0x00001e6a:    487f        .H      LDR      r0,[pc,#508] ; [0x2068] = 0x10011008
-        0x00001e6c:    6001        .`      STR      r1,[r0,#0]
-        0x00001e6e:    e7c4        ..      B        0x1dfa ; SYS_ClkTicks + 10
-        0x00001e70:    487d        }H      LDR      r0,[pc,#500] ; [0x2068] = 0x10011008
-        0x00001e72:    6800        .h      LDR      r0,[r0,#0]
-        0x00001e74:    1a0a        ..      SUBS     r2,r1,r0
-        0x00001e76:    e00a        ..      B        0x1e8e ; SYS_ClkTicks + 158
-        0x00001e78:    487c        |H      LDR      r0,[pc,#496] ; [0x206c] = 0x10011004
-        0x00001e7a:    6800        .h      LDR      r0,[r0,#0]
-        0x00001e7c:    1c40        @.      ADDS     r0,r0,#1
-        0x00001e7e:    4b7b        {K      LDR      r3,[pc,#492] ; [0x206c] = 0x10011004
-        0x00001e80:    6018        .`      STR      r0,[r3,#0]
-        0x00001e82:    4879        yH      LDR      r0,[pc,#484] ; [0x2068] = 0x10011008
-        0x00001e84:    6800        .h      LDR      r0,[r0,#0]
-        0x00001e86:    3020         0      ADDS     r0,r0,#0x20
-        0x00001e88:    4b77        wK      LDR      r3,[pc,#476] ; [0x2068] = 0x10011008
-        0x00001e8a:    6018        .`      STR      r0,[r3,#0]
-        0x00001e8c:    3a20         :      SUBS     r2,r2,#0x20
-        0x00001e8e:    2a20         *      CMP      r2,#0x20
-        0x00001e90:    d2f2        ..      BCS      0x1e78 ; SYS_ClkTicks + 136
-        0x00001e92:    bf00        ..      NOP      
-        0x00001e94:    e7b1        ..      B        0x1dfa ; SYS_ClkTicks + 10
+        0x00001e04:    b510        ..      PUSH     {r4,lr}
+        0x00001e06:    f7fffffa    ....    BL       SystemCheckInFastSpeed ; 0x1dfe
+        0x00001e0a:    2800        .(      CMP      r0,#0
+        0x00001e0c:    d000        ..      BEQ      0x1e10 ; SYS_ClkTicks + 12
+        0x00001e0e:    bd10        ..      POP      {r4,pc}
+        0x00001e10:    4895        .H      LDR      r0,[pc,#596] ; [0x2068] = 0x10004fe0
+        0x00001e12:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x00001e14:    2000        .       MOVS     r0,#0
+        0x00001e16:    4b98        .K      LDR      r3,[pc,#608] ; [0x2078] = 0x10008300
+        0x00001e18:    781b        .x      LDRB     r3,[r3,#0]
+        0x00001e1a:    4300        .C      ORRS     r0,r0,r0
+        0x00001e1c:    4b96        .K      LDR      r3,[pc,#600] ; [0x2078] = 0x10008300
+        0x00001e1e:    781b        .x      LDRB     r3,[r3,#0]
+        0x00001e20:    4318        .C      ORRS     r0,r0,r3
+        0x00001e22:    4b91        .K      LDR      r3,[pc,#580] ; [0x2068] = 0x10004fe0
+        0x00001e24:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x00001e26:    2300        .#      MOVS     r3,#0
+        0x00001e28:    4c93        .L      LDR      r4,[pc,#588] ; [0x2078] = 0x10008300
+        0x00001e2a:    7864        dx      LDRB     r4,[r4,#1]
+        0x00001e2c:    431b        .C      ORRS     r3,r3,r3
+        0x00001e2e:    4c92        .L      LDR      r4,[pc,#584] ; [0x2078] = 0x10008300
+        0x00001e30:    7864        dx      LDRB     r4,[r4,#1]
+        0x00001e32:    4323        #C      ORRS     r3,r3,r4
+        0x00001e34:    021b        ..      LSLS     r3,r3,#8
+        0x00001e36:    4318        .C      ORRS     r0,r0,r3
+        0x00001e38:    4b8b        .K      LDR      r3,[pc,#556] ; [0x2068] = 0x10004fe0
+        0x00001e3a:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x00001e3c:    2300        .#      MOVS     r3,#0
+        0x00001e3e:    4c8e        .L      LDR      r4,[pc,#568] ; [0x2078] = 0x10008300
+        0x00001e40:    78a4        .x      LDRB     r4,[r4,#2]
+        0x00001e42:    431b        .C      ORRS     r3,r3,r3
+        0x00001e44:    4c8c        .L      LDR      r4,[pc,#560] ; [0x2078] = 0x10008300
+        0x00001e46:    78a4        .x      LDRB     r4,[r4,#2]
+        0x00001e48:    4323        #C      ORRS     r3,r3,r4
+        0x00001e4a:    041b        ..      LSLS     r3,r3,#16
+        0x00001e4c:    4318        .C      ORRS     r0,r0,r3
+        0x00001e4e:    4b86        .K      LDR      r3,[pc,#536] ; [0x2068] = 0x10004fe0
+        0x00001e50:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x00001e52:    2300        .#      MOVS     r3,#0
+        0x00001e54:    4c88        .L      LDR      r4,[pc,#544] ; [0x2078] = 0x10008300
+        0x00001e56:    78e4        .x      LDRB     r4,[r4,#3]
+        0x00001e58:    431b        .C      ORRS     r3,r3,r3
+        0x00001e5a:    4c87        .L      LDR      r4,[pc,#540] ; [0x2078] = 0x10008300
+        0x00001e5c:    78e4        .x      LDRB     r4,[r4,#3]
+        0x00001e5e:    4323        #C      ORRS     r3,r3,r4
+        0x00001e60:    061b        ..      LSLS     r3,r3,#24
+        0x00001e62:    4318        .C      ORRS     r0,r0,r3
+        0x00001e64:    4601        .F      MOV      r1,r0
+        0x00001e66:    2200        ."      MOVS     r2,#0
+        0x00001e68:    4884        .H      LDR      r0,[pc,#528] ; [0x207c] = 0x10011008
+        0x00001e6a:    6800        .h      LDR      r0,[r0,#0]
+        0x00001e6c:    2800        .(      CMP      r0,#0
+        0x00001e6e:    d102        ..      BNE      0x1e76 ; SYS_ClkTicks + 114
+        0x00001e70:    4882        .H      LDR      r0,[pc,#520] ; [0x207c] = 0x10011008
+        0x00001e72:    6001        .`      STR      r1,[r0,#0]
+        0x00001e74:    e017        ..      B        0x1ea6 ; SYS_ClkTicks + 162
+        0x00001e76:    4881        .H      LDR      r0,[pc,#516] ; [0x207c] = 0x10011008
+        0x00001e78:    6800        .h      LDR      r0,[r0,#0]
+        0x00001e7a:    4288        .B      CMP      r0,r1
+        0x00001e7c:    d902        ..      BLS      0x1e84 ; SYS_ClkTicks + 128
+        0x00001e7e:    487f        .H      LDR      r0,[pc,#508] ; [0x207c] = 0x10011008
+        0x00001e80:    6001        .`      STR      r1,[r0,#0]
+        0x00001e82:    e7c4        ..      B        0x1e0e ; SYS_ClkTicks + 10
+        0x00001e84:    487d        }H      LDR      r0,[pc,#500] ; [0x207c] = 0x10011008
+        0x00001e86:    6800        .h      LDR      r0,[r0,#0]
+        0x00001e88:    1a0a        ..      SUBS     r2,r1,r0
+        0x00001e8a:    e00a        ..      B        0x1ea2 ; SYS_ClkTicks + 158
+        0x00001e8c:    487c        |H      LDR      r0,[pc,#496] ; [0x2080] = 0x10011004
+        0x00001e8e:    6800        .h      LDR      r0,[r0,#0]
+        0x00001e90:    1c40        @.      ADDS     r0,r0,#1
+        0x00001e92:    4b7b        {K      LDR      r3,[pc,#492] ; [0x2080] = 0x10011004
+        0x00001e94:    6018        .`      STR      r0,[r3,#0]
+        0x00001e96:    4879        yH      LDR      r0,[pc,#484] ; [0x207c] = 0x10011008
+        0x00001e98:    6800        .h      LDR      r0,[r0,#0]
+        0x00001e9a:    3020         0      ADDS     r0,r0,#0x20
+        0x00001e9c:    4b77        wK      LDR      r3,[pc,#476] ; [0x207c] = 0x10011008
+        0x00001e9e:    6018        .`      STR      r0,[r3,#0]
+        0x00001ea0:    3a20         :      SUBS     r2,r2,#0x20
+        0x00001ea2:    2a20         *      CMP      r2,#0x20
+        0x00001ea4:    d2f2        ..      BCS      0x1e8c ; SYS_ClkTicks + 136
+        0x00001ea6:    bf00        ..      NOP      
+        0x00001ea8:    e7b1        ..      B        0x1e0e ; SYS_ClkTicks + 10
     SYS_TimerStartTickTimer
-        0x00001e96:    b510        ..      PUSH     {r4,lr}
-        0x00001e98:    4604        .F      MOV      r4,r0
-        0x00001e9a:    f7ffffa9    ....    BL       SYS_ClkTicks ; 0x1df0
-        0x00001e9e:    4620         F      MOV      r0,r4
-        0x00001ea0:    f7fffeff    ....    BL       SYS_ChangeDPLL ; 0x1ca2
-        0x00001ea4:    bd10        ..      POP      {r4,pc}
+        0x00001eaa:    b510        ..      PUSH     {r4,lr}
+        0x00001eac:    4604        .F      MOV      r4,r0
+        0x00001eae:    f7ffffa9    ....    BL       SYS_ClkTicks ; 0x1e04
+        0x00001eb2:    4620         F      MOV      r0,r4
+        0x00001eb4:    f7fffeff    ....    BL       SYS_ChangeDPLL ; 0x1cb6
+        0x00001eb8:    bd10        ..      POP      {r4,pc}
     SYS_TimerInit
-        0x00001ea6:    b510        ..      PUSH     {r4,lr}
-        0x00001ea8:    4604        .F      MOV      r4,r0
-        0x00001eaa:    4871        qH      LDR      r0,[pc,#452] ; [0x2070] = 0x1001101c
-        0x00001eac:    4971        qI      LDR      r1,[pc,#452] ; [0x2074] = 0x10011000
-        0x00001eae:    6008        .`      STR      r0,[r1,#0]
-        0x00001eb0:    2000        .       MOVS     r0,#0
-        0x00001eb2:    6809        .h      LDR      r1,[r1,#0]
-        0x00001eb4:    60c8        .`      STR      r0,[r1,#0xc]
-        0x00001eb6:    4870        pH      LDR      r0,[pc,#448] ; [0x2078] = 0x1c59
-        0x00001eb8:    496e        nI      LDR      r1,[pc,#440] ; [0x2074] = 0x10011000
-        0x00001eba:    6809        .h      LDR      r1,[r1,#0]
-        0x00001ebc:    6088        .`      STR      r0,[r1,#8]
-        0x00001ebe:    2001        .       MOVS     r0,#1
-        0x00001ec0:    496c        lI      LDR      r1,[pc,#432] ; [0x2074] = 0x10011000
-        0x00001ec2:    6809        .h      LDR      r1,[r1,#0]
-        0x00001ec4:    7508        .u      STRB     r0,[r1,#0x14]
-        0x00001ec6:    2000        .       MOVS     r0,#0
-        0x00001ec8:    496a        jI      LDR      r1,[pc,#424] ; [0x2074] = 0x10011000
-        0x00001eca:    6809        .h      LDR      r1,[r1,#0]
-        0x00001ecc:    6008        .`      STR      r0,[r1,#0]
-        0x00001ece:    4966        fI      LDR      r1,[pc,#408] ; [0x2068] = 0x10011008
-        0x00001ed0:    6008        .`      STR      r0,[r1,#0]
-        0x00001ed2:    4620         F      MOV      r0,r4
-        0x00001ed4:    f7ffffdf    ....    BL       SYS_TimerStartTickTimer ; 0x1e96
-        0x00001ed8:    bd10        ..      POP      {r4,pc}
+        0x00001eba:    b510        ..      PUSH     {r4,lr}
+        0x00001ebc:    4604        .F      MOV      r4,r0
+        0x00001ebe:    4871        qH      LDR      r0,[pc,#452] ; [0x2084] = 0x1001101c
+        0x00001ec0:    4971        qI      LDR      r1,[pc,#452] ; [0x2088] = 0x10011000
+        0x00001ec2:    6008        .`      STR      r0,[r1,#0]
+        0x00001ec4:    2000        .       MOVS     r0,#0
+        0x00001ec6:    6809        .h      LDR      r1,[r1,#0]
+        0x00001ec8:    60c8        .`      STR      r0,[r1,#0xc]
+        0x00001eca:    4870        pH      LDR      r0,[pc,#448] ; [0x208c] = 0x1c6d
+        0x00001ecc:    496e        nI      LDR      r1,[pc,#440] ; [0x2088] = 0x10011000
+        0x00001ece:    6809        .h      LDR      r1,[r1,#0]
+        0x00001ed0:    6088        .`      STR      r0,[r1,#8]
+        0x00001ed2:    2001        .       MOVS     r0,#1
+        0x00001ed4:    496c        lI      LDR      r1,[pc,#432] ; [0x2088] = 0x10011000
+        0x00001ed6:    6809        .h      LDR      r1,[r1,#0]
+        0x00001ed8:    7508        .u      STRB     r0,[r1,#0x14]
+        0x00001eda:    2000        .       MOVS     r0,#0
+        0x00001edc:    496a        jI      LDR      r1,[pc,#424] ; [0x2088] = 0x10011000
+        0x00001ede:    6809        .h      LDR      r1,[r1,#0]
+        0x00001ee0:    6008        .`      STR      r0,[r1,#0]
+        0x00001ee2:    4966        fI      LDR      r1,[pc,#408] ; [0x207c] = 0x10011008
+        0x00001ee4:    6008        .`      STR      r0,[r1,#0]
+        0x00001ee6:    4620         F      MOV      r0,r4
+        0x00001ee8:    f7ffffdf    ....    BL       SYS_TimerStartTickTimer ; 0x1eaa
+        0x00001eec:    bd10        ..      POP      {r4,pc}
     SYS_TimerisExist
-        0x00001eda:    4602        .F      MOV      r2,r0
-        0x00001edc:    4865        eH      LDR      r0,[pc,#404] ; [0x2074] = 0x10011000
-        0x00001ede:    6800        .h      LDR      r0,[r0,#0]
-        0x00001ee0:    2800        .(      CMP      r0,#0
-        0x00001ee2:    d100        ..      BNE      0x1ee6 ; SYS_TimerisExist + 12
-        0x00001ee4:    4770        pG      BX       lr
-        0x00001ee6:    2a00        .*      CMP      r2,#0
-        0x00001ee8:    d101        ..      BNE      0x1eee ; SYS_TimerisExist + 20
-        0x00001eea:    2000        .       MOVS     r0,#0
-        0x00001eec:    e7fa        ..      B        0x1ee4 ; SYS_TimerisExist + 10
-        0x00001eee:    4861        aH      LDR      r0,[pc,#388] ; [0x2074] = 0x10011000
-        0x00001ef0:    6801        .h      LDR      r1,[r0,#0]
-        0x00001ef2:    e004        ..      B        0x1efe ; SYS_TimerisExist + 36
-        0x00001ef4:    428a        .B      CMP      r2,r1
-        0x00001ef6:    d101        ..      BNE      0x1efc ; SYS_TimerisExist + 34
-        0x00001ef8:    2001        .       MOVS     r0,#1
-        0x00001efa:    e7f3        ..      B        0x1ee4 ; SYS_TimerisExist + 10
-        0x00001efc:    68c9        .h      LDR      r1,[r1,#0xc]
-        0x00001efe:    68c8        .h      LDR      r0,[r1,#0xc]
-        0x00001f00:    2800        .(      CMP      r0,#0
-        0x00001f02:    d1f7        ..      BNE      0x1ef4 ; SYS_TimerisExist + 26
-        0x00001f04:    bf00        ..      NOP      
-        0x00001f06:    e7ed        ..      B        0x1ee4 ; SYS_TimerisExist + 10
-    SYS_SetTimer
-        0x00001f08:    b5f0        ..      PUSH     {r4-r7,lr}
-        0x00001f0a:    4604        .F      MOV      r4,r0
-        0x00001f0c:    460d        .F      MOV      r5,r1
-        0x00001f0e:    4616        .F      MOV      r6,r2
-        0x00001f10:    4858        XH      LDR      r0,[pc,#352] ; [0x2074] = 0x10011000
-        0x00001f12:    6800        .h      LDR      r0,[r0,#0]
+        0x00001eee:    4602        .F      MOV      r2,r0
+        0x00001ef0:    4865        eH      LDR      r0,[pc,#404] ; [0x2088] = 0x10011000
+        0x00001ef2:    6800        .h      LDR      r0,[r0,#0]
+        0x00001ef4:    2800        .(      CMP      r0,#0
+        0x00001ef6:    d100        ..      BNE      0x1efa ; SYS_TimerisExist + 12
+        0x00001ef8:    4770        pG      BX       lr
+        0x00001efa:    2a00        .*      CMP      r2,#0
+        0x00001efc:    d101        ..      BNE      0x1f02 ; SYS_TimerisExist + 20
+        0x00001efe:    2000        .       MOVS     r0,#0
+        0x00001f00:    e7fa        ..      B        0x1ef8 ; SYS_TimerisExist + 10
+        0x00001f02:    4861        aH      LDR      r0,[pc,#388] ; [0x2088] = 0x10011000
+        0x00001f04:    6801        .h      LDR      r1,[r0,#0]
+        0x00001f06:    e004        ..      B        0x1f12 ; SYS_TimerisExist + 36
+        0x00001f08:    428a        .B      CMP      r2,r1
+        0x00001f0a:    d101        ..      BNE      0x1f10 ; SYS_TimerisExist + 34
+        0x00001f0c:    2001        .       MOVS     r0,#1
+        0x00001f0e:    e7f3        ..      B        0x1ef8 ; SYS_TimerisExist + 10
+        0x00001f10:    68c9        .h      LDR      r1,[r1,#0xc]
+        0x00001f12:    68c8        .h      LDR      r0,[r1,#0xc]
         0x00001f14:    2800        .(      CMP      r0,#0
-        0x00001f16:    d100        ..      BNE      0x1f1a ; SYS_SetTimer + 18
-        0x00001f18:    bdf0        ..      POP      {r4-r7,pc}
-        0x00001f1a:    2c00        .,      CMP      r4,#0
-        0x00001f1c:    d101        ..      BNE      0x1f22 ; SYS_SetTimer + 26
-        0x00001f1e:    2000        .       MOVS     r0,#0
-        0x00001f20:    e7fa        ..      B        0x1f18 ; SYS_SetTimer + 16
-        0x00001f22:    2b00        .+      CMP      r3,#0
-        0x00001f24:    d102        ..      BNE      0x1f2c ; SYS_SetTimer + 36
-        0x00001f26:    4854        TH      LDR      r0,[pc,#336] ; [0x2078] = 0x1c59
-        0x00001f28:    60a0        .`      STR      r0,[r4,#8]
-        0x00001f2a:    e000        ..      B        0x1f2e ; SYS_SetTimer + 38
-        0x00001f2c:    60a3        .`      STR      r3,[r4,#8]
-        0x00001f2e:    b672        r.      CPSID    i
-        0x00001f30:    484e        NH      LDR      r0,[pc,#312] ; [0x206c] = 0x10011004
-        0x00001f32:    6800        .h      LDR      r0,[r0,#0]
-        0x00001f34:    1940        @.      ADDS     r0,r0,r5
-        0x00001f36:    6020         `      STR      r0,[r4,#0]
-        0x00001f38:    6065        e`      STR      r5,[r4,#4]
-        0x00001f3a:    2001        .       MOVS     r0,#1
-        0x00001f3c:    7520         u      STRB     r0,[r4,#0x14]
-        0x00001f3e:    06b0        ..      LSLS     r0,r6,#26
-        0x00001f40:    0e80        ..      LSRS     r0,r0,#26
-        0x00001f42:    7560        `u      STRB     r0,[r4,#0x15]
-        0x00001f44:    4620         F      MOV      r0,r4
-        0x00001f46:    f7ffffc8    ....    BL       SYS_TimerisExist ; 0x1eda
-        0x00001f4a:    2800        .(      CMP      r0,#0
-        0x00001f4c:    d002        ..      BEQ      0x1f54 ; SYS_SetTimer + 76
-        0x00001f4e:    b662        b.      CPSIE    i
-        0x00001f50:    2001        .       MOVS     r0,#1
-        0x00001f52:    e7e1        ..      B        0x1f18 ; SYS_SetTimer + 16
-        0x00001f54:    4847        GH      LDR      r0,[pc,#284] ; [0x2074] = 0x10011000
-        0x00001f56:    6807        .h      LDR      r7,[r0,#0]
-        0x00001f58:    6004        .`      STR      r4,[r0,#0]
-        0x00001f5a:    6800        .h      LDR      r0,[r0,#0]
-        0x00001f5c:    60c7        .`      STR      r7,[r0,#0xc]
-        0x00001f5e:    b662        b.      CPSIE    i
-        0x00001f60:    2001        .       MOVS     r0,#1
-        0x00001f62:    e7d9        ..      B        0x1f18 ; SYS_SetTimer + 16
+        0x00001f16:    d1f7        ..      BNE      0x1f08 ; SYS_TimerisExist + 26
+        0x00001f18:    bf00        ..      NOP      
+        0x00001f1a:    e7ed        ..      B        0x1ef8 ; SYS_TimerisExist + 10
+    SYS_SetTimer
+        0x00001f1c:    b5f0        ..      PUSH     {r4-r7,lr}
+        0x00001f1e:    4604        .F      MOV      r4,r0
+        0x00001f20:    460d        .F      MOV      r5,r1
+        0x00001f22:    4616        .F      MOV      r6,r2
+        0x00001f24:    4858        XH      LDR      r0,[pc,#352] ; [0x2088] = 0x10011000
+        0x00001f26:    6800        .h      LDR      r0,[r0,#0]
+        0x00001f28:    2800        .(      CMP      r0,#0
+        0x00001f2a:    d100        ..      BNE      0x1f2e ; SYS_SetTimer + 18
+        0x00001f2c:    bdf0        ..      POP      {r4-r7,pc}
+        0x00001f2e:    2c00        .,      CMP      r4,#0
+        0x00001f30:    d101        ..      BNE      0x1f36 ; SYS_SetTimer + 26
+        0x00001f32:    2000        .       MOVS     r0,#0
+        0x00001f34:    e7fa        ..      B        0x1f2c ; SYS_SetTimer + 16
+        0x00001f36:    2b00        .+      CMP      r3,#0
+        0x00001f38:    d102        ..      BNE      0x1f40 ; SYS_SetTimer + 36
+        0x00001f3a:    4854        TH      LDR      r0,[pc,#336] ; [0x208c] = 0x1c6d
+        0x00001f3c:    60a0        .`      STR      r0,[r4,#8]
+        0x00001f3e:    e000        ..      B        0x1f42 ; SYS_SetTimer + 38
+        0x00001f40:    60a3        .`      STR      r3,[r4,#8]
+        0x00001f42:    b672        r.      CPSID    i
+        0x00001f44:    484e        NH      LDR      r0,[pc,#312] ; [0x2080] = 0x10011004
+        0x00001f46:    6800        .h      LDR      r0,[r0,#0]
+        0x00001f48:    1940        @.      ADDS     r0,r0,r5
+        0x00001f4a:    6020         `      STR      r0,[r4,#0]
+        0x00001f4c:    6065        e`      STR      r5,[r4,#4]
+        0x00001f4e:    2001        .       MOVS     r0,#1
+        0x00001f50:    7520         u      STRB     r0,[r4,#0x14]
+        0x00001f52:    06b0        ..      LSLS     r0,r6,#26
+        0x00001f54:    0e80        ..      LSRS     r0,r0,#26
+        0x00001f56:    7560        `u      STRB     r0,[r4,#0x15]
+        0x00001f58:    4620         F      MOV      r0,r4
+        0x00001f5a:    f7ffffc8    ....    BL       SYS_TimerisExist ; 0x1eee
+        0x00001f5e:    2800        .(      CMP      r0,#0
+        0x00001f60:    d002        ..      BEQ      0x1f68 ; SYS_SetTimer + 76
+        0x00001f62:    b662        b.      CPSIE    i
+        0x00001f64:    2001        .       MOVS     r0,#1
+        0x00001f66:    e7e1        ..      B        0x1f2c ; SYS_SetTimer + 16
+        0x00001f68:    4847        GH      LDR      r0,[pc,#284] ; [0x2088] = 0x10011000
+        0x00001f6a:    6807        .h      LDR      r7,[r0,#0]
+        0x00001f6c:    6004        .`      STR      r4,[r0,#0]
+        0x00001f6e:    6800        .h      LDR      r0,[r0,#0]
+        0x00001f70:    60c7        .`      STR      r7,[r0,#0xc]
+        0x00001f72:    b662        b.      CPSIE    i
+        0x00001f74:    2001        .       MOVS     r0,#1
+        0x00001f76:    e7d9        ..      B        0x1f2c ; SYS_SetTimer + 16
     SYS_ResetTimer
-        0x00001f64:    4601        .F      MOV      r1,r0
-        0x00001f66:    4843        CH      LDR      r0,[pc,#268] ; [0x2074] = 0x10011000
-        0x00001f68:    6800        .h      LDR      r0,[r0,#0]
-        0x00001f6a:    2800        .(      CMP      r0,#0
-        0x00001f6c:    d100        ..      BNE      0x1f70 ; SYS_ResetTimer + 12
-        0x00001f6e:    4770        pG      BX       lr
-        0x00001f70:    2900        .)      CMP      r1,#0
-        0x00001f72:    d101        ..      BNE      0x1f78 ; SYS_ResetTimer + 20
-        0x00001f74:    2000        .       MOVS     r0,#0
-        0x00001f76:    e7fa        ..      B        0x1f6e ; SYS_ResetTimer + 10
-        0x00001f78:    483e        >H      LDR      r0,[pc,#248] ; [0x2074] = 0x10011000
-        0x00001f7a:    6802        .h      LDR      r2,[r0,#0]
-        0x00001f7c:    e009        ..      B        0x1f92 ; SYS_ResetTimer + 46
-        0x00001f7e:    4291        .B      CMP      r1,r2
-        0x00001f80:    d106        ..      BNE      0x1f90 ; SYS_ResetTimer + 44
-        0x00001f82:    4b3a        :K      LDR      r3,[pc,#232] ; [0x206c] = 0x10011004
-        0x00001f84:    6848        Hh      LDR      r0,[r1,#4]
-        0x00001f86:    681b        .h      LDR      r3,[r3,#0]
-        0x00001f88:    18c0        ..      ADDS     r0,r0,r3
-        0x00001f8a:    6008        .`      STR      r0,[r1,#0]
-        0x00001f8c:    2001        .       MOVS     r0,#1
-        0x00001f8e:    e7ee        ..      B        0x1f6e ; SYS_ResetTimer + 10
-        0x00001f90:    68d2        .h      LDR      r2,[r2,#0xc]
-        0x00001f92:    68d0        .h      LDR      r0,[r2,#0xc]
-        0x00001f94:    2800        .(      CMP      r0,#0
-        0x00001f96:    d1f2        ..      BNE      0x1f7e ; SYS_ResetTimer + 26
-        0x00001f98:    bf00        ..      NOP      
-        0x00001f9a:    e7e8        ..      B        0x1f6e ; SYS_ResetTimer + 10
+        0x00001f78:    4601        .F      MOV      r1,r0
+        0x00001f7a:    4843        CH      LDR      r0,[pc,#268] ; [0x2088] = 0x10011000
+        0x00001f7c:    6800        .h      LDR      r0,[r0,#0]
+        0x00001f7e:    2800        .(      CMP      r0,#0
+        0x00001f80:    d100        ..      BNE      0x1f84 ; SYS_ResetTimer + 12
+        0x00001f82:    4770        pG      BX       lr
+        0x00001f84:    2900        .)      CMP      r1,#0
+        0x00001f86:    d101        ..      BNE      0x1f8c ; SYS_ResetTimer + 20
+        0x00001f88:    2000        .       MOVS     r0,#0
+        0x00001f8a:    e7fa        ..      B        0x1f82 ; SYS_ResetTimer + 10
+        0x00001f8c:    483e        >H      LDR      r0,[pc,#248] ; [0x2088] = 0x10011000
+        0x00001f8e:    6802        .h      LDR      r2,[r0,#0]
+        0x00001f90:    e009        ..      B        0x1fa6 ; SYS_ResetTimer + 46
+        0x00001f92:    4291        .B      CMP      r1,r2
+        0x00001f94:    d106        ..      BNE      0x1fa4 ; SYS_ResetTimer + 44
+        0x00001f96:    4b3a        :K      LDR      r3,[pc,#232] ; [0x2080] = 0x10011004
+        0x00001f98:    6848        Hh      LDR      r0,[r1,#4]
+        0x00001f9a:    681b        .h      LDR      r3,[r3,#0]
+        0x00001f9c:    18c0        ..      ADDS     r0,r0,r3
+        0x00001f9e:    6008        .`      STR      r0,[r1,#0]
+        0x00001fa0:    2001        .       MOVS     r0,#1
+        0x00001fa2:    e7ee        ..      B        0x1f82 ; SYS_ResetTimer + 10
+        0x00001fa4:    68d2        .h      LDR      r2,[r2,#0xc]
+        0x00001fa6:    68d0        .h      LDR      r0,[r2,#0xc]
+        0x00001fa8:    2800        .(      CMP      r0,#0
+        0x00001faa:    d1f2        ..      BNE      0x1f92 ; SYS_ResetTimer + 26
+        0x00001fac:    bf00        ..      NOP      
+        0x00001fae:    e7e8        ..      B        0x1f82 ; SYS_ResetTimer + 10
     SYS_TimerTest
-        0x00001f9c:    2100        .!      MOVS     r1,#0
-        0x00001f9e:    4a35        5J      LDR      r2,[pc,#212] ; [0x2074] = 0x10011000
-        0x00001fa0:    6810        .h      LDR      r0,[r2,#0]
-        0x00001fa2:    e001        ..      B        0x1fa8 ; SYS_TimerTest + 12
-        0x00001fa4:    1c49        I.      ADDS     r1,r1,#1
-        0x00001fa6:    68c0        .h      LDR      r0,[r0,#0xc]
-        0x00001fa8:    68c2        .h      LDR      r2,[r0,#0xc]
-        0x00001faa:    2a00        .*      CMP      r2,#0
-        0x00001fac:    d1fa        ..      BNE      0x1fa4 ; SYS_TimerTest + 8
-        0x00001fae:    4770        pG      BX       lr
-    SYS_ReleaseTimer
-        0x00001fb0:    b510        ..      PUSH     {r4,lr}
-        0x00001fb2:    4602        .F      MOV      r2,r0
-        0x00001fb4:    482f        /H      LDR      r0,[pc,#188] ; [0x2074] = 0x10011000
-        0x00001fb6:    6800        .h      LDR      r0,[r0,#0]
-        0x00001fb8:    2800        .(      CMP      r0,#0
-        0x00001fba:    d100        ..      BNE      0x1fbe ; SYS_ReleaseTimer + 14
-        0x00001fbc:    bd10        ..      POP      {r4,pc}
+        0x00001fb0:    2100        .!      MOVS     r1,#0
+        0x00001fb2:    4a35        5J      LDR      r2,[pc,#212] ; [0x2088] = 0x10011000
+        0x00001fb4:    6810        .h      LDR      r0,[r2,#0]
+        0x00001fb6:    e001        ..      B        0x1fbc ; SYS_TimerTest + 12
+        0x00001fb8:    1c49        I.      ADDS     r1,r1,#1
+        0x00001fba:    68c0        .h      LDR      r0,[r0,#0xc]
+        0x00001fbc:    68c2        .h      LDR      r2,[r0,#0xc]
         0x00001fbe:    2a00        .*      CMP      r2,#0
-        0x00001fc0:    d101        ..      BNE      0x1fc6 ; SYS_ReleaseTimer + 22
-        0x00001fc2:    2000        .       MOVS     r0,#0
-        0x00001fc4:    e7fa        ..      B        0x1fbc ; SYS_ReleaseTimer + 12
-        0x00001fc6:    482a        *H      LDR      r0,[pc,#168] ; [0x2070] = 0x1001101c
-        0x00001fc8:    4282        .B      CMP      r2,r0
-        0x00001fca:    d101        ..      BNE      0x1fd0 ; SYS_ReleaseTimer + 32
-        0x00001fcc:    2000        .       MOVS     r0,#0
-        0x00001fce:    e7f5        ..      B        0x1fbc ; SYS_ReleaseTimer + 12
-        0x00001fd0:    4828        (H      LDR      r0,[pc,#160] ; [0x2074] = 0x10011000
-        0x00001fd2:    6801        .h      LDR      r1,[r0,#0]
-        0x00001fd4:    460b        .F      MOV      r3,r1
-        0x00001fd6:    e00f        ..      B        0x1ff8 ; SYS_ReleaseTimer + 72
-        0x00001fd8:    428a        .B      CMP      r2,r1
-        0x00001fda:    d10b        ..      BNE      0x1ff4 ; SYS_ReleaseTimer + 68
-        0x00001fdc:    2000        .       MOVS     r0,#0
-        0x00001fde:    7508        .u      STRB     r0,[r1,#0x14]
-        0x00001fe0:    428b        .B      CMP      r3,r1
-        0x00001fe2:    d103        ..      BNE      0x1fec ; SYS_ReleaseTimer + 60
-        0x00001fe4:    4c23        #L      LDR      r4,[pc,#140] ; [0x2074] = 0x10011000
-        0x00001fe6:    68c8        .h      LDR      r0,[r1,#0xc]
-        0x00001fe8:    6020         `      STR      r0,[r4,#0]
-        0x00001fea:    e001        ..      B        0x1ff0 ; SYS_ReleaseTimer + 64
-        0x00001fec:    68c8        .h      LDR      r0,[r1,#0xc]
-        0x00001fee:    60d8        .`      STR      r0,[r3,#0xc]
-        0x00001ff0:    2001        .       MOVS     r0,#1
-        0x00001ff2:    e7e3        ..      B        0x1fbc ; SYS_ReleaseTimer + 12
-        0x00001ff4:    460b        .F      MOV      r3,r1
-        0x00001ff6:    68c9        .h      LDR      r1,[r1,#0xc]
-        0x00001ff8:    68c8        .h      LDR      r0,[r1,#0xc]
-        0x00001ffa:    2800        .(      CMP      r0,#0
-        0x00001ffc:    d1ec        ..      BNE      0x1fd8 ; SYS_ReleaseTimer + 40
-        0x00001ffe:    bf00        ..      NOP      
-        0x00002000:    e7dc        ..      B        0x1fbc ; SYS_ReleaseTimer + 12
+        0x00001fc0:    d1fa        ..      BNE      0x1fb8 ; SYS_TimerTest + 8
+        0x00001fc2:    4770        pG      BX       lr
+    SYS_ReleaseTimer
+        0x00001fc4:    b510        ..      PUSH     {r4,lr}
+        0x00001fc6:    4602        .F      MOV      r2,r0
+        0x00001fc8:    482f        /H      LDR      r0,[pc,#188] ; [0x2088] = 0x10011000
+        0x00001fca:    6800        .h      LDR      r0,[r0,#0]
+        0x00001fcc:    2800        .(      CMP      r0,#0
+        0x00001fce:    d100        ..      BNE      0x1fd2 ; SYS_ReleaseTimer + 14
+        0x00001fd0:    bd10        ..      POP      {r4,pc}
+        0x00001fd2:    2a00        .*      CMP      r2,#0
+        0x00001fd4:    d101        ..      BNE      0x1fda ; SYS_ReleaseTimer + 22
+        0x00001fd6:    2000        .       MOVS     r0,#0
+        0x00001fd8:    e7fa        ..      B        0x1fd0 ; SYS_ReleaseTimer + 12
+        0x00001fda:    482a        *H      LDR      r0,[pc,#168] ; [0x2084] = 0x1001101c
+        0x00001fdc:    4282        .B      CMP      r2,r0
+        0x00001fde:    d101        ..      BNE      0x1fe4 ; SYS_ReleaseTimer + 32
+        0x00001fe0:    2000        .       MOVS     r0,#0
+        0x00001fe2:    e7f5        ..      B        0x1fd0 ; SYS_ReleaseTimer + 12
+        0x00001fe4:    4828        (H      LDR      r0,[pc,#160] ; [0x2088] = 0x10011000
+        0x00001fe6:    6801        .h      LDR      r1,[r0,#0]
+        0x00001fe8:    460b        .F      MOV      r3,r1
+        0x00001fea:    e00f        ..      B        0x200c ; SYS_ReleaseTimer + 72
+        0x00001fec:    428a        .B      CMP      r2,r1
+        0x00001fee:    d10b        ..      BNE      0x2008 ; SYS_ReleaseTimer + 68
+        0x00001ff0:    2000        .       MOVS     r0,#0
+        0x00001ff2:    7508        .u      STRB     r0,[r1,#0x14]
+        0x00001ff4:    428b        .B      CMP      r3,r1
+        0x00001ff6:    d103        ..      BNE      0x2000 ; SYS_ReleaseTimer + 60
+        0x00001ff8:    4c23        #L      LDR      r4,[pc,#140] ; [0x2088] = 0x10011000
+        0x00001ffa:    68c8        .h      LDR      r0,[r1,#0xc]
+        0x00001ffc:    6020         `      STR      r0,[r4,#0]
+        0x00001ffe:    e001        ..      B        0x2004 ; SYS_ReleaseTimer + 64
+        0x00002000:    68c8        .h      LDR      r0,[r1,#0xc]
+        0x00002002:    60d8        .`      STR      r0,[r3,#0xc]
+        0x00002004:    2001        .       MOVS     r0,#1
+        0x00002006:    e7e3        ..      B        0x1fd0 ; SYS_ReleaseTimer + 12
+        0x00002008:    460b        .F      MOV      r3,r1
+        0x0000200a:    68c9        .h      LDR      r1,[r1,#0xc]
+        0x0000200c:    68c8        .h      LDR      r0,[r1,#0xc]
+        0x0000200e:    2800        .(      CMP      r0,#0
+        0x00002010:    d1ec        ..      BNE      0x1fec ; SYS_ReleaseTimer + 40
+        0x00002012:    bf00        ..      NOP      
+        0x00002014:    e7dc        ..      B        0x1fd0 ; SYS_ReleaseTimer + 12
     SYS_timerPolling
-        0x00002002:    b510        ..      PUSH     {r4,lr}
-        0x00002004:    481d        .H      LDR      r0,[pc,#116] ; [0x207c] = 0x1001100c
-        0x00002006:    7800        .x      LDRB     r0,[r0,#0]
-        0x00002008:    2800        .(      CMP      r0,#0
-        0x0000200a:    d022        ".      BEQ      0x2052 ; SYS_timerPolling + 80
-        0x0000200c:    2000        .       MOVS     r0,#0
-        0x0000200e:    491b        .I      LDR      r1,[pc,#108] ; [0x207c] = 0x1001100c
-        0x00002010:    7008        .p      STRB     r0,[r1,#0]
-        0x00002012:    f7ffffc3    ....    BL       SYS_TimerTest ; 0x1f9c
-        0x00002016:    4817        .H      LDR      r0,[pc,#92] ; [0x2074] = 0x10011000
-        0x00002018:    6804        .h      LDR      r4,[r0,#0]
-        0x0000201a:    e017        ..      B        0x204c ; SYS_timerPolling + 74
-        0x0000201c:    7d20         }      LDRB     r0,[r4,#0x14]
-        0x0000201e:    2801        .(      CMP      r0,#1
-        0x00002020:    d113        ..      BNE      0x204a ; SYS_timerPolling + 72
-        0x00002022:    4912        .I      LDR      r1,[pc,#72] ; [0x206c] = 0x10011004
-        0x00002024:    6820         h      LDR      r0,[r4,#0]
-        0x00002026:    6809        .h      LDR      r1,[r1,#0]
-        0x00002028:    4288        .B      CMP      r0,r1
-        0x0000202a:    d80e        ..      BHI      0x204a ; SYS_timerPolling + 72
-        0x0000202c:    7d60        `}      LDRB     r0,[r4,#0x15]
-        0x0000202e:    2800        .(      CMP      r0,#0
-        0x00002030:    d103        ..      BNE      0x203a ; SYS_timerPolling + 56
-        0x00002032:    4620         F      MOV      r0,r4
-        0x00002034:    f7ffffbc    ....    BL       SYS_ReleaseTimer ; 0x1fb0
-        0x00002038:    e004        ..      B        0x2044 ; SYS_timerPolling + 66
-        0x0000203a:    490c        .I      LDR      r1,[pc,#48] ; [0x206c] = 0x10011004
-        0x0000203c:    6860        `h      LDR      r0,[r4,#4]
-        0x0000203e:    6809        .h      LDR      r1,[r1,#0]
-        0x00002040:    1840        @.      ADDS     r0,r0,r1
-        0x00002042:    6020         `      STR      r0,[r4,#0]
-        0x00002044:    68a1        .h      LDR      r1,[r4,#8]
-        0x00002046:    6920         i      LDR      r0,[r4,#0x10]
-        0x00002048:    4788        .G      BLX      r1
-        0x0000204a:    68e4        .h      LDR      r4,[r4,#0xc]
-        0x0000204c:    68e0        .h      LDR      r0,[r4,#0xc]
-        0x0000204e:    2800        .(      CMP      r0,#0
-        0x00002050:    d1e4        ..      BNE      0x201c ; SYS_timerPolling + 26
-        0x00002052:    bd10        ..      POP      {r4,pc}
+        0x00002016:    b510        ..      PUSH     {r4,lr}
+        0x00002018:    481d        .H      LDR      r0,[pc,#116] ; [0x2090] = 0x1001100c
+        0x0000201a:    7800        .x      LDRB     r0,[r0,#0]
+        0x0000201c:    2800        .(      CMP      r0,#0
+        0x0000201e:    d022        ".      BEQ      0x2066 ; SYS_timerPolling + 80
+        0x00002020:    2000        .       MOVS     r0,#0
+        0x00002022:    491b        .I      LDR      r1,[pc,#108] ; [0x2090] = 0x1001100c
+        0x00002024:    7008        .p      STRB     r0,[r1,#0]
+        0x00002026:    f7ffffc3    ....    BL       SYS_TimerTest ; 0x1fb0
+        0x0000202a:    4817        .H      LDR      r0,[pc,#92] ; [0x2088] = 0x10011000
+        0x0000202c:    6804        .h      LDR      r4,[r0,#0]
+        0x0000202e:    e017        ..      B        0x2060 ; SYS_timerPolling + 74
+        0x00002030:    7d20         }      LDRB     r0,[r4,#0x14]
+        0x00002032:    2801        .(      CMP      r0,#1
+        0x00002034:    d113        ..      BNE      0x205e ; SYS_timerPolling + 72
+        0x00002036:    4912        .I      LDR      r1,[pc,#72] ; [0x2080] = 0x10011004
+        0x00002038:    6820         h      LDR      r0,[r4,#0]
+        0x0000203a:    6809        .h      LDR      r1,[r1,#0]
+        0x0000203c:    4288        .B      CMP      r0,r1
+        0x0000203e:    d80e        ..      BHI      0x205e ; SYS_timerPolling + 72
+        0x00002040:    7d60        `}      LDRB     r0,[r4,#0x15]
+        0x00002042:    2800        .(      CMP      r0,#0
+        0x00002044:    d103        ..      BNE      0x204e ; SYS_timerPolling + 56
+        0x00002046:    4620         F      MOV      r0,r4
+        0x00002048:    f7ffffbc    ....    BL       SYS_ReleaseTimer ; 0x1fc4
+        0x0000204c:    e004        ..      B        0x2058 ; SYS_timerPolling + 66
+        0x0000204e:    490c        .I      LDR      r1,[pc,#48] ; [0x2080] = 0x10011004
+        0x00002050:    6860        `h      LDR      r0,[r4,#4]
+        0x00002052:    6809        .h      LDR      r1,[r1,#0]
+        0x00002054:    1840        @.      ADDS     r0,r0,r1
+        0x00002056:    6020         `      STR      r0,[r4,#0]
+        0x00002058:    68a1        .h      LDR      r1,[r4,#8]
+        0x0000205a:    6920         i      LDR      r0,[r4,#0x10]
+        0x0000205c:    4788        .G      BLX      r1
+        0x0000205e:    68e4        .h      LDR      r4,[r4,#0xc]
+        0x00002060:    68e0        .h      LDR      r0,[r4,#0xc]
+        0x00002062:    2800        .(      CMP      r0,#0
+        0x00002064:    d1e4        ..      BNE      0x2030 ; SYS_timerPolling + 26
+        0x00002066:    bd10        ..      POP      {r4,pc}
     $d
-        0x00002054:    10004fe0    .O..    DCD    268455904
-        0x00002058:    10008040    @...    DCD    268468288
-        0x0000205c:    00002710    .'..    DCD    10000
-        0x00002060:    1001100d    ....    DCD    268505101
-        0x00002064:    10008300    ....    DCD    268468992
-        0x00002068:    10011008    ....    DCD    268505096
-        0x0000206c:    10011004    ....    DCD    268505092
-        0x00002070:    1001101c    ....    DCD    268505116
-        0x00002074:    10011000    ....    DCD    268505088
-        0x00002078:    00001c59    Y...    DCD    7257
-        0x0000207c:    1001100c    ....    DCD    268505100
+        0x00002068:    10004fe0    .O..    DCD    268455904
+        0x0000206c:    10008040    @...    DCD    268468288
+        0x00002070:    00002710    .'..    DCD    10000
+        0x00002074:    1001100d    ....    DCD    268505101
+        0x00002078:    10008300    ....    DCD    268468992
+        0x0000207c:    10011008    ....    DCD    268505096
+        0x00002080:    10011004    ....    DCD    268505092
+        0x00002084:    1001101c    ....    DCD    268505116
+        0x00002088:    10011000    ....    DCD    268505088
+        0x0000208c:    00001c6d    m...    DCD    7277
+        0x00002090:    1001100c    ....    DCD    268505100
     $t
     SYS_ReleaseAllTimer
-        0x00002080:    492b        +I      LDR      r1,[pc,#172] ; [0x2130] = 0x10011000
-        0x00002082:    6809        .h      LDR      r1,[r1,#0]
-        0x00002084:    2900        .)      CMP      r1,#0
-        0x00002086:    d100        ..      BNE      0x208a ; SYS_ReleaseAllTimer + 10
-        0x00002088:    4770        pG      BX       lr
-        0x0000208a:    4929        )I      LDR      r1,[pc,#164] ; [0x2130] = 0x10011000
-        0x0000208c:    6808        .h      LDR      r0,[r1,#0]
-        0x0000208e:    e002        ..      B        0x2096 ; SYS_ReleaseAllTimer + 22
-        0x00002090:    2100        .!      MOVS     r1,#0
-        0x00002092:    7501        .u      STRB     r1,[r0,#0x14]
-        0x00002094:    68c0        .h      LDR      r0,[r0,#0xc]
-        0x00002096:    68c1        .h      LDR      r1,[r0,#0xc]
+        0x00002094:    492b        +I      LDR      r1,[pc,#172] ; [0x2144] = 0x10011000
+        0x00002096:    6809        .h      LDR      r1,[r1,#0]
         0x00002098:    2900        .)      CMP      r1,#0
-        0x0000209a:    d1f9        ..      BNE      0x2090 ; SYS_ReleaseAllTimer + 16
-        0x0000209c:    4925        %I      LDR      r1,[pc,#148] ; [0x2134] = 0x1001101c
-        0x0000209e:    4a24        $J      LDR      r2,[pc,#144] ; [0x2130] = 0x10011000
-        0x000020a0:    6011        .`      STR      r1,[r2,#0]
-        0x000020a2:    bf00        ..      NOP      
-        0x000020a4:    e7f0        ..      B        0x2088 ; SYS_ReleaseAllTimer + 8
+        0x0000209a:    d100        ..      BNE      0x209e ; SYS_ReleaseAllTimer + 10
+        0x0000209c:    4770        pG      BX       lr
+        0x0000209e:    4929        )I      LDR      r1,[pc,#164] ; [0x2144] = 0x10011000
+        0x000020a0:    6808        .h      LDR      r0,[r1,#0]
+        0x000020a2:    e002        ..      B        0x20aa ; SYS_ReleaseAllTimer + 22
+        0x000020a4:    2100        .!      MOVS     r1,#0
+        0x000020a6:    7501        .u      STRB     r1,[r0,#0x14]
+        0x000020a8:    68c0        .h      LDR      r0,[r0,#0xc]
+        0x000020aa:    68c1        .h      LDR      r1,[r0,#0xc]
+        0x000020ac:    2900        .)      CMP      r1,#0
+        0x000020ae:    d1f9        ..      BNE      0x20a4 ; SYS_ReleaseAllTimer + 16
+        0x000020b0:    4925        %I      LDR      r1,[pc,#148] ; [0x2148] = 0x1001101c
+        0x000020b2:    4a24        $J      LDR      r2,[pc,#144] ; [0x2144] = 0x10011000
+        0x000020b4:    6011        .`      STR      r1,[r2,#0]
+        0x000020b6:    bf00        ..      NOP      
+        0x000020b8:    e7f0        ..      B        0x209c ; SYS_ReleaseAllTimer + 8
     SYStick_handle
-        0x000020a6:    b500        ..      PUSH     {lr}
-        0x000020a8:    f7fffea2    ....    BL       SYS_ClkTicks ; 0x1df0
-        0x000020ac:    2001        .       MOVS     r0,#1
-        0x000020ae:    4922        "I      LDR      r1,[pc,#136] ; [0x2138] = 0x1001100c
-        0x000020b0:    7008        .p      STRB     r0,[r1,#0]
-        0x000020b2:    bd00        ..      POP      {pc}
+        0x000020ba:    b500        ..      PUSH     {lr}
+        0x000020bc:    f7fffea2    ....    BL       SYS_ClkTicks ; 0x1e04
+        0x000020c0:    2001        .       MOVS     r0,#1
+        0x000020c2:    4922        "I      LDR      r1,[pc,#136] ; [0x214c] = 0x1001100c
+        0x000020c4:    7008        .p      STRB     r0,[r1,#0]
+        0x000020c6:    bd00        ..      POP      {pc}
     Bt_100ms_timer
-        0x000020b4:    b510        ..      PUSH     {r4,lr}
-        0x000020b6:    4604        .F      MOV      r4,r0
-        0x000020b8:    f7fffe9a    ....    BL       SYS_ClkTicks ; 0x1df0
-        0x000020bc:    2001        .       MOVS     r0,#1
-        0x000020be:    491e        .I      LDR      r1,[pc,#120] ; [0x2138] = 0x1001100c
-        0x000020c0:    7008        .p      STRB     r0,[r1,#0]
-        0x000020c2:    bd10        ..      POP      {r4,pc}
+        0x000020c8:    b510        ..      PUSH     {r4,lr}
+        0x000020ca:    4604        .F      MOV      r4,r0
+        0x000020cc:    f7fffe9a    ....    BL       SYS_ClkTicks ; 0x1e04
+        0x000020d0:    2001        .       MOVS     r0,#1
+        0x000020d2:    491e        .I      LDR      r1,[pc,#120] ; [0x214c] = 0x1001100c
+        0x000020d4:    7008        .p      STRB     r0,[r1,#0]
+        0x000020d6:    bd10        ..      POP      {r4,pc}
     SYS_delay_us
-        0x000020c4:    b5fc        ..      PUSH     {r2-r7,lr}
-        0x000020c6:    4607        .F      MOV      r7,r0
-        0x000020c8:    2000        .       MOVS     r0,#0
-        0x000020ca:    9001        ..      STR      r0,[sp,#4]
-        0x000020cc:    2500        .%      MOVS     r5,#0
-        0x000020ce:    2400        .$      MOVS     r4,#0
-        0x000020d0:    2600        .&      MOVS     r6,#0
-        0x000020d2:    f7fffdc4    ....    BL       SYS_TimerGet1usTicks ; 0x1c5e
-        0x000020d6:    4378        xC      MULS     r0,r7,r0
-        0x000020d8:    9001        ..      STR      r0,[sp,#4]
-        0x000020da:    4818        .H      LDR      r0,[pc,#96] ; [0x213c] = 0xe000e000
-        0x000020dc:    6940        @i      LDR      r0,[r0,#0x14]
-        0x000020de:    9000        ..      STR      r0,[sp,#0]
-        0x000020e0:    4816        .H      LDR      r0,[pc,#88] ; [0x213c] = 0xe000e000
-        0x000020e2:    6985        .i      LDR      r5,[r0,#0x18]
-        0x000020e4:    e011        ..      B        0x210a ; SYS_delay_us + 70
-        0x000020e6:    4815        .H      LDR      r0,[pc,#84] ; [0x213c] = 0xe000e000
-        0x000020e8:    6984        .i      LDR      r4,[r0,#0x18]
-        0x000020ea:    42ac        .B      CMP      r4,r5
-        0x000020ec:    d00d        ..      BEQ      0x210a ; SYS_delay_us + 70
-        0x000020ee:    42ac        .B      CMP      r4,r5
-        0x000020f0:    d202        ..      BCS      0x20f8 ; SYS_delay_us + 52
-        0x000020f2:    1b28        (.      SUBS     r0,r5,r4
-        0x000020f4:    1986        ..      ADDS     r6,r0,r6
-        0x000020f6:    e003        ..      B        0x2100 ; SYS_delay_us + 60
-        0x000020f8:    9800        ..      LDR      r0,[sp,#0]
-        0x000020fa:    1b00        ..      SUBS     r0,r0,r4
-        0x000020fc:    1940        @.      ADDS     r0,r0,r5
-        0x000020fe:    1986        ..      ADDS     r6,r0,r6
-        0x00002100:    4625        %F      MOV      r5,r4
-        0x00002102:    9801        ..      LDR      r0,[sp,#4]
-        0x00002104:    4286        .B      CMP      r6,r0
-        0x00002106:    d300        ..      BCC      0x210a ; SYS_delay_us + 70
-        0x00002108:    e000        ..      B        0x210c ; SYS_delay_us + 72
-        0x0000210a:    e7ec        ..      B        0x20e6 ; SYS_delay_us + 34
-        0x0000210c:    bf00        ..      NOP      
-        0x0000210e:    bdfc        ..      POP      {r2-r7,pc}
+        0x000020d8:    b5fc        ..      PUSH     {r2-r7,lr}
+        0x000020da:    4607        .F      MOV      r7,r0
+        0x000020dc:    2000        .       MOVS     r0,#0
+        0x000020de:    9001        ..      STR      r0,[sp,#4]
+        0x000020e0:    2500        .%      MOVS     r5,#0
+        0x000020e2:    2400        .$      MOVS     r4,#0
+        0x000020e4:    2600        .&      MOVS     r6,#0
+        0x000020e6:    f7fffdc4    ....    BL       SYS_TimerGet1usTicks ; 0x1c72
+        0x000020ea:    4378        xC      MULS     r0,r7,r0
+        0x000020ec:    9001        ..      STR      r0,[sp,#4]
+        0x000020ee:    4818        .H      LDR      r0,[pc,#96] ; [0x2150] = 0xe000e000
+        0x000020f0:    6940        @i      LDR      r0,[r0,#0x14]
+        0x000020f2:    9000        ..      STR      r0,[sp,#0]
+        0x000020f4:    4816        .H      LDR      r0,[pc,#88] ; [0x2150] = 0xe000e000
+        0x000020f6:    6985        .i      LDR      r5,[r0,#0x18]
+        0x000020f8:    e011        ..      B        0x211e ; SYS_delay_us + 70
+        0x000020fa:    4815        .H      LDR      r0,[pc,#84] ; [0x2150] = 0xe000e000
+        0x000020fc:    6984        .i      LDR      r4,[r0,#0x18]
+        0x000020fe:    42ac        .B      CMP      r4,r5
+        0x00002100:    d00d        ..      BEQ      0x211e ; SYS_delay_us + 70
+        0x00002102:    42ac        .B      CMP      r4,r5
+        0x00002104:    d202        ..      BCS      0x210c ; SYS_delay_us + 52
+        0x00002106:    1b28        (.      SUBS     r0,r5,r4
+        0x00002108:    1986        ..      ADDS     r6,r0,r6
+        0x0000210a:    e003        ..      B        0x2114 ; SYS_delay_us + 60
+        0x0000210c:    9800        ..      LDR      r0,[sp,#0]
+        0x0000210e:    1b00        ..      SUBS     r0,r0,r4
+        0x00002110:    1940        @.      ADDS     r0,r0,r5
+        0x00002112:    1986        ..      ADDS     r6,r0,r6
+        0x00002114:    4625        %F      MOV      r5,r4
+        0x00002116:    9801        ..      LDR      r0,[sp,#4]
+        0x00002118:    4286        .B      CMP      r6,r0
+        0x0000211a:    d300        ..      BCC      0x211e ; SYS_delay_us + 70
+        0x0000211c:    e000        ..      B        0x2120 ; SYS_delay_us + 72
+        0x0000211e:    e7ec        ..      B        0x20fa ; SYS_delay_us + 34
+        0x00002120:    bf00        ..      NOP      
+        0x00002122:    bdfc        ..      POP      {r2-r7,pc}
     SYS_delay_ms
-        0x00002110:    b510        ..      PUSH     {r4,lr}
-        0x00002112:    4604        .F      MOV      r4,r0
-        0x00002114:    217d        }!      MOVS     r1,#0x7d
-        0x00002116:    00c9        ..      LSLS     r1,r1,#3
-        0x00002118:    4361        aC      MULS     r1,r4,r1
-        0x0000211a:    4608        .F      MOV      r0,r1
-        0x0000211c:    f7ffffd2    ....    BL       SYS_delay_us ; 0x20c4
-        0x00002120:    bd10        ..      POP      {r4,pc}
+        0x00002124:    b510        ..      PUSH     {r4,lr}
+        0x00002126:    4604        .F      MOV      r4,r0
+        0x00002128:    217d        }!      MOVS     r1,#0x7d
+        0x0000212a:    00c9        ..      LSLS     r1,r1,#3
+        0x0000212c:    4361        aC      MULS     r1,r4,r1
+        0x0000212e:    4608        .F      MOV      r0,r1
+        0x00002130:    f7ffffd2    ....    BL       SYS_delay_us ; 0x20d8
+        0x00002134:    bd10        ..      POP      {r4,pc}
     hw_delay
-        0x00002122:    bf00        ..      NOP      
-        0x00002124:    bf00        ..      NOP      
-        0x00002126:    bf00        ..      NOP      
-        0x00002128:    bf00        ..      NOP      
-        0x0000212a:    bf00        ..      NOP      
-        0x0000212c:    4770        pG      BX       lr
+        0x00002136:    bf00        ..      NOP      
+        0x00002138:    bf00        ..      NOP      
+        0x0000213a:    bf00        ..      NOP      
+        0x0000213c:    bf00        ..      NOP      
+        0x0000213e:    bf00        ..      NOP      
+        0x00002140:    4770        pG      BX       lr
     $d
-        0x0000212e:    0000        ..      DCW    0
-        0x00002130:    10011000    ....    DCD    268505088
-        0x00002134:    1001101c    ....    DCD    268505116
-        0x00002138:    1001100c    ....    DCD    268505100
-        0x0000213c:    e000e000    ....    DCD    3758153728
+        0x00002142:    0000        ..      DCW    0
+        0x00002144:    10011000    ....    DCD    268505088
+        0x00002148:    1001101c    ....    DCD    268505116
+        0x0000214c:    1001100c    ....    DCD    268505100
+        0x00002150:    e000e000    ....    DCD    3758153728
     $t
     .text
     SysTick_Config
-        0x00002140:    4601        .F      MOV      r1,r0
-        0x00002142:    1e49        I.      SUBS     r1,r1,#1
-        0x00002144:    2900        .)      CMP      r1,#0
-        0x00002146:    d002        ..      BEQ      0x214e ; SysTick_Config + 14
-        0x00002148:    4810        .H      LDR      r0,[pc,#64] ; [0x218c] = 0xffffff
-        0x0000214a:    4281        .B      CMP      r1,r0
-        0x0000214c:    d901        ..      BLS      0x2152 ; SysTick_Config + 18
-        0x0000214e:    2001        .       MOVS     r0,#1
-        0x00002150:    4770        pG      BX       lr
-        0x00002152:    480f        .H      LDR      r0,[pc,#60] ; [0x2190] = 0xe000e000
-        0x00002154:    6900        .i      LDR      r0,[r0,#0x10]
-        0x00002156:    0840        @.      LSRS     r0,r0,#1
-        0x00002158:    0040        @.      LSLS     r0,r0,#1
-        0x0000215a:    4a0d        .J      LDR      r2,[pc,#52] ; [0x2190] = 0xe000e000
-        0x0000215c:    6110        .a      STR      r0,[r2,#0x10]
-        0x0000215e:    4610        .F      MOV      r0,r2
-        0x00002160:    6141        Aa      STR      r1,[r0,#0x14]
-        0x00002162:    2000        .       MOVS     r0,#0
-        0x00002164:    6190        .a      STR      r0,[r2,#0x18]
-        0x00002166:    4a0b        .J      LDR      r2,[pc,#44] ; [0x2194] = 0x10011010
-        0x00002168:    6010        .`      STR      r0,[r2,#0]
-        0x0000216a:    4809        .H      LDR      r0,[pc,#36] ; [0x2190] = 0xe000e000
-        0x0000216c:    6900        .i      LDR      r0,[r0,#0x10]
-        0x0000216e:    2207        ."      MOVS     r2,#7
-        0x00002170:    4310        .C      ORRS     r0,r0,r2
-        0x00002172:    4a07        .J      LDR      r2,[pc,#28] ; [0x2190] = 0xe000e000
-        0x00002174:    6110        .a      STR      r0,[r2,#0x10]
+        0x00002154:    4601        .F      MOV      r1,r0
+        0x00002156:    1e49        I.      SUBS     r1,r1,#1
+        0x00002158:    2900        .)      CMP      r1,#0
+        0x0000215a:    d002        ..      BEQ      0x2162 ; SysTick_Config + 14
+        0x0000215c:    4810        .H      LDR      r0,[pc,#64] ; [0x21a0] = 0xffffff
+        0x0000215e:    4281        .B      CMP      r1,r0
+        0x00002160:    d901        ..      BLS      0x2166 ; SysTick_Config + 18
+        0x00002162:    2001        .       MOVS     r0,#1
+        0x00002164:    4770        pG      BX       lr
+        0x00002166:    480f        .H      LDR      r0,[pc,#60] ; [0x21a4] = 0xe000e000
+        0x00002168:    6900        .i      LDR      r0,[r0,#0x10]
+        0x0000216a:    0840        @.      LSRS     r0,r0,#1
+        0x0000216c:    0040        @.      LSLS     r0,r0,#1
+        0x0000216e:    4a0d        .J      LDR      r2,[pc,#52] ; [0x21a4] = 0xe000e000
+        0x00002170:    6110        .a      STR      r0,[r2,#0x10]
+        0x00002172:    4610        .F      MOV      r0,r2
+        0x00002174:    6141        Aa      STR      r1,[r0,#0x14]
         0x00002176:    2000        .       MOVS     r0,#0
-        0x00002178:    e7ea        ..      B        0x2150 ; SysTick_Config + 16
+        0x00002178:    6190        .a      STR      r0,[r2,#0x18]
+        0x0000217a:    4a0b        .J      LDR      r2,[pc,#44] ; [0x21a8] = 0x10011010
+        0x0000217c:    6010        .`      STR      r0,[r2,#0]
+        0x0000217e:    4809        .H      LDR      r0,[pc,#36] ; [0x21a4] = 0xe000e000
+        0x00002180:    6900        .i      LDR      r0,[r0,#0x10]
+        0x00002182:    2207        ."      MOVS     r2,#7
+        0x00002184:    4310        .C      ORRS     r0,r0,r2
+        0x00002186:    4a07        .J      LDR      r2,[pc,#28] ; [0x21a4] = 0xe000e000
+        0x00002188:    6110        .a      STR      r0,[r2,#0x10]
+        0x0000218a:    2000        .       MOVS     r0,#0
+        0x0000218c:    e7ea        ..      B        0x2164 ; SysTick_Config + 16
     SysTick_GetTick
-        0x0000217a:    4806        .H      LDR      r0,[pc,#24] ; [0x2194] = 0x10011010
-        0x0000217c:    6800        .h      LDR      r0,[r0,#0]
-        0x0000217e:    4770        pG      BX       lr
+        0x0000218e:    4806        .H      LDR      r0,[pc,#24] ; [0x21a8] = 0x10011010
+        0x00002190:    6800        .h      LDR      r0,[r0,#0]
+        0x00002192:    4770        pG      BX       lr
     SysTick_IsTimeOut
-        0x00002180:    4602        .F      MOV      r2,r0
-        0x00002182:    2000        .       MOVS     r0,#0
-        0x00002184:    4770        pG      BX       lr
+        0x00002194:    4602        .F      MOV      r2,r0
+        0x00002196:    2000        .       MOVS     r0,#0
+        0x00002198:    4770        pG      BX       lr
     SysTick_GetRelativeTime
-        0x00002186:    4601        .F      MOV      r1,r0
-        0x00002188:    2000        .       MOVS     r0,#0
-        0x0000218a:    4770        pG      BX       lr
+        0x0000219a:    4601        .F      MOV      r1,r0
+        0x0000219c:    2000        .       MOVS     r0,#0
+        0x0000219e:    4770        pG      BX       lr
     $d
-        0x0000218c:    00ffffff    ....    DCD    16777215
-        0x00002190:    e000e000    ....    DCD    3758153728
-        0x00002194:    10011010    ....    DCD    268505104
+        0x000021a0:    00ffffff    ....    DCD    16777215
+        0x000021a4:    e000e000    ....    DCD    3758153728
+        0x000021a8:    10011010    ....    DCD    268505104
     $t
     .text
     IpcDefaultCallBack
-        0x00002198:    4afe        .J      LDR      r2,[pc,#1016] ; [0x2594] = 0x10011018
-        0x0000219a:    7812        .x      LDRB     r2,[r2,#0]
-        0x0000219c:    1c52        R.      ADDS     r2,r2,#1
-        0x0000219e:    4bfd        .K      LDR      r3,[pc,#1012] ; [0x2594] = 0x10011018
-        0x000021a0:    701a        .p      STRB     r2,[r3,#0]
-        0x000021a2:    4770        pG      BX       lr
+        0x000021ac:    4afe        .J      LDR      r2,[pc,#1016] ; [0x25a8] = 0x10011018
+        0x000021ae:    7812        .x      LDRB     r2,[r2,#0]
+        0x000021b0:    1c52        R.      ADDS     r2,r2,#1
+        0x000021b2:    4bfd        .K      LDR      r3,[pc,#1012] ; [0x25a8] = 0x10011018
+        0x000021b4:    701a        .p      STRB     r2,[r3,#0]
+        0x000021b6:    4770        pG      BX       lr
     IPC_Initialize
-        0x000021a4:    b510        ..      PUSH     {r4,lr}
-        0x000021a6:    4604        .F      MOV      r4,r0
-        0x000021a8:    2228        ("      MOVS     r2,#0x28
-        0x000021aa:    4621        !F      MOV      r1,r4
-        0x000021ac:    48fa        .H      LDR      r0,[pc,#1000] ; [0x2598] = 0x10011034
-        0x000021ae:    f000fe69    ..i.    BL       __aeabi_memcpy ; 0x2e84
-        0x000021b2:    bd10        ..      POP      {r4,pc}
+        0x000021b8:    b510        ..      PUSH     {r4,lr}
+        0x000021ba:    4604        .F      MOV      r4,r0
+        0x000021bc:    2228        ("      MOVS     r2,#0x28
+        0x000021be:    4621        !F      MOV      r1,r4
+        0x000021c0:    48fa        .H      LDR      r0,[pc,#1000] ; [0x25ac] = 0x10011034
+        0x000021c2:    f000fe69    ..i.    BL       __aeabi_memcpy ; 0x2e98
+        0x000021c6:    bd10        ..      POP      {r4,pc}
     IPC_init
-        0x000021b4:    49f9        .I      LDR      r1,[pc,#996] ; [0x259c] = 0x10011014
-        0x000021b6:    6008        .`      STR      r0,[r1,#0]
-        0x000021b8:    4770        pG      BX       lr
+        0x000021c8:    49f9        .I      LDR      r1,[pc,#996] ; [0x25b0] = 0x10011014
+        0x000021ca:    6008        .`      STR      r0,[r1,#0]
+        0x000021cc:    4770        pG      BX       lr
     ipcRx
-        0x000021ba:    b570        p.      PUSH     {r4-r6,lr}
-        0x000021bc:    4605        .F      MOV      r5,r0
-        0x000021be:    460e        .F      MOV      r6,r1
-        0x000021c0:    49f7        .I      LDR      r1,[pc,#988] ; [0x25a0] = 0x10004fe0
-        0x000021c2:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x000021c4:    2100        .!      MOVS     r1,#0
-        0x000021c6:    4af7        .J      LDR      r2,[pc,#988] ; [0x25a4] = 0x10004400
-        0x000021c8:    78d2        .x      LDRB     r2,[r2,#3]
-        0x000021ca:    4309        .C      ORRS     r1,r1,r1
-        0x000021cc:    4af5        .J      LDR      r2,[pc,#980] ; [0x25a4] = 0x10004400
-        0x000021ce:    78d2        .x      LDRB     r2,[r2,#3]
-        0x000021d0:    4311        .C      ORRS     r1,r1,r2
-        0x000021d2:    4af3        .J      LDR      r2,[pc,#972] ; [0x25a0] = 0x10004fe0
-        0x000021d4:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x000021d6:    2200        ."      MOVS     r2,#0
-        0x000021d8:    4bf2        .K      LDR      r3,[pc,#968] ; [0x25a4] = 0x10004400
-        0x000021da:    791b        .y      LDRB     r3,[r3,#4]
-        0x000021dc:    4312        .C      ORRS     r2,r2,r2
-        0x000021de:    4bf1        .K      LDR      r3,[pc,#964] ; [0x25a4] = 0x10004400
-        0x000021e0:    791b        .y      LDRB     r3,[r3,#4]
-        0x000021e2:    431a        .C      ORRS     r2,r2,r3
-        0x000021e4:    0212        ..      LSLS     r2,r2,#8
-        0x000021e6:    4311        .C      ORRS     r1,r1,r2
-        0x000021e8:    4aed        .J      LDR      r2,[pc,#948] ; [0x25a0] = 0x10004fe0
-        0x000021ea:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x000021ec:    2200        ."      MOVS     r2,#0
-        0x000021ee:    4bed        .K      LDR      r3,[pc,#948] ; [0x25a4] = 0x10004400
-        0x000021f0:    795b        [y      LDRB     r3,[r3,#5]
-        0x000021f2:    4312        .C      ORRS     r2,r2,r2
-        0x000021f4:    4beb        .K      LDR      r3,[pc,#940] ; [0x25a4] = 0x10004400
-        0x000021f6:    795b        [y      LDRB     r3,[r3,#5]
-        0x000021f8:    431a        .C      ORRS     r2,r2,r3
-        0x000021fa:    0412        ..      LSLS     r2,r2,#16
-        0x000021fc:    4311        .C      ORRS     r1,r1,r2
-        0x000021fe:    2201        ."      MOVS     r2,#1
-        0x00002200:    0712        ..      LSLS     r2,r2,#28
-        0x00002202:    1888        ..      ADDS     r0,r1,r2
-        0x00002204:    f000fd57    ..W.    BL       HR_REG_24BIT ; 0x2cb6
-        0x00002208:    4604        .F      MOV      r4,r0
-        0x0000220a:    2000        .       MOVS     r0,#0
-        0x0000220c:    e052        R.      B        0x22b4 ; ipcRx + 250
-        0x0000220e:    49e4        .I      LDR      r1,[pc,#912] ; [0x25a0] = 0x10004fe0
-        0x00002210:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00002212:    2100        .!      MOVS     r1,#0
-        0x00002214:    2201        ."      MOVS     r2,#1
-        0x00002216:    0712        ..      LSLS     r2,r2,#28
-        0x00002218:    4322        "C      ORRS     r2,r2,r4
-        0x0000221a:    7812        .x      LDRB     r2,[r2,#0]
-        0x0000221c:    4309        .C      ORRS     r1,r1,r1
-        0x0000221e:    2201        ."      MOVS     r2,#1
-        0x00002220:    0712        ..      LSLS     r2,r2,#28
-        0x00002222:    4322        "C      ORRS     r2,r2,r4
-        0x00002224:    7812        .x      LDRB     r2,[r2,#0]
-        0x00002226:    4311        .C      ORRS     r1,r1,r2
-        0x00002228:    5429        )T      STRB     r1,[r5,r0]
-        0x0000222a:    49dd        .I      LDR      r1,[pc,#884] ; [0x25a0] = 0x10004fe0
-        0x0000222c:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x0000222e:    2100        .!      MOVS     r1,#0
-        0x00002230:    4adc        .J      LDR      r2,[pc,#880] ; [0x25a4] = 0x10004400
-        0x00002232:    7a52        Rz      LDRB     r2,[r2,#9]
-        0x00002234:    4309        .C      ORRS     r1,r1,r1
-        0x00002236:    4adb        .J      LDR      r2,[pc,#876] ; [0x25a4] = 0x10004400
-        0x00002238:    7a52        Rz      LDRB     r2,[r2,#9]
+        0x000021ce:    b570        p.      PUSH     {r4-r6,lr}
+        0x000021d0:    4605        .F      MOV      r5,r0
+        0x000021d2:    460e        .F      MOV      r6,r1
+        0x000021d4:    49f7        .I      LDR      r1,[pc,#988] ; [0x25b4] = 0x10004fe0
+        0x000021d6:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x000021d8:    2100        .!      MOVS     r1,#0
+        0x000021da:    4af7        .J      LDR      r2,[pc,#988] ; [0x25b8] = 0x10004400
+        0x000021dc:    78d2        .x      LDRB     r2,[r2,#3]
+        0x000021de:    4309        .C      ORRS     r1,r1,r1
+        0x000021e0:    4af5        .J      LDR      r2,[pc,#980] ; [0x25b8] = 0x10004400
+        0x000021e2:    78d2        .x      LDRB     r2,[r2,#3]
+        0x000021e4:    4311        .C      ORRS     r1,r1,r2
+        0x000021e6:    4af3        .J      LDR      r2,[pc,#972] ; [0x25b4] = 0x10004fe0
+        0x000021e8:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x000021ea:    2200        ."      MOVS     r2,#0
+        0x000021ec:    4bf2        .K      LDR      r3,[pc,#968] ; [0x25b8] = 0x10004400
+        0x000021ee:    791b        .y      LDRB     r3,[r3,#4]
+        0x000021f0:    4312        .C      ORRS     r2,r2,r2
+        0x000021f2:    4bf1        .K      LDR      r3,[pc,#964] ; [0x25b8] = 0x10004400
+        0x000021f4:    791b        .y      LDRB     r3,[r3,#4]
+        0x000021f6:    431a        .C      ORRS     r2,r2,r3
+        0x000021f8:    0212        ..      LSLS     r2,r2,#8
+        0x000021fa:    4311        .C      ORRS     r1,r1,r2
+        0x000021fc:    4aed        .J      LDR      r2,[pc,#948] ; [0x25b4] = 0x10004fe0
+        0x000021fe:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x00002200:    2200        ."      MOVS     r2,#0
+        0x00002202:    4bed        .K      LDR      r3,[pc,#948] ; [0x25b8] = 0x10004400
+        0x00002204:    795b        [y      LDRB     r3,[r3,#5]
+        0x00002206:    4312        .C      ORRS     r2,r2,r2
+        0x00002208:    4beb        .K      LDR      r3,[pc,#940] ; [0x25b8] = 0x10004400
+        0x0000220a:    795b        [y      LDRB     r3,[r3,#5]
+        0x0000220c:    431a        .C      ORRS     r2,r2,r3
+        0x0000220e:    0412        ..      LSLS     r2,r2,#16
+        0x00002210:    4311        .C      ORRS     r1,r1,r2
+        0x00002212:    2201        ."      MOVS     r2,#1
+        0x00002214:    0712        ..      LSLS     r2,r2,#28
+        0x00002216:    1888        ..      ADDS     r0,r1,r2
+        0x00002218:    f000fd57    ..W.    BL       HR_REG_24BIT ; 0x2cca
+        0x0000221c:    4604        .F      MOV      r4,r0
+        0x0000221e:    2000        .       MOVS     r0,#0
+        0x00002220:    e052        R.      B        0x22c8 ; ipcRx + 250
+        0x00002222:    49e4        .I      LDR      r1,[pc,#912] ; [0x25b4] = 0x10004fe0
+        0x00002224:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002226:    2100        .!      MOVS     r1,#0
+        0x00002228:    2201        ."      MOVS     r2,#1
+        0x0000222a:    0712        ..      LSLS     r2,r2,#28
+        0x0000222c:    4322        "C      ORRS     r2,r2,r4
+        0x0000222e:    7812        .x      LDRB     r2,[r2,#0]
+        0x00002230:    4309        .C      ORRS     r1,r1,r1
+        0x00002232:    2201        ."      MOVS     r2,#1
+        0x00002234:    0712        ..      LSLS     r2,r2,#28
+        0x00002236:    4322        "C      ORRS     r2,r2,r4
+        0x00002238:    7812        .x      LDRB     r2,[r2,#0]
         0x0000223a:    4311        .C      ORRS     r1,r1,r2
-        0x0000223c:    4ad8        .J      LDR      r2,[pc,#864] ; [0x25a0] = 0x10004fe0
-        0x0000223e:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x00002240:    2200        ."      MOVS     r2,#0
-        0x00002242:    4bd8        .K      LDR      r3,[pc,#864] ; [0x25a4] = 0x10004400
-        0x00002244:    7a9b        .z      LDRB     r3,[r3,#0xa]
-        0x00002246:    4312        .C      ORRS     r2,r2,r2
-        0x00002248:    4bd6        .K      LDR      r3,[pc,#856] ; [0x25a4] = 0x10004400
-        0x0000224a:    7a9b        .z      LDRB     r3,[r3,#0xa]
-        0x0000224c:    431a        .C      ORRS     r2,r2,r3
-        0x0000224e:    0212        ..      LSLS     r2,r2,#8
-        0x00002250:    4311        .C      ORRS     r1,r1,r2
-        0x00002252:    4ad3        .J      LDR      r2,[pc,#844] ; [0x25a0] = 0x10004fe0
-        0x00002254:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x00002256:    2200        ."      MOVS     r2,#0
-        0x00002258:    4bd2        .K      LDR      r3,[pc,#840] ; [0x25a4] = 0x10004400
-        0x0000225a:    7adb        .z      LDRB     r3,[r3,#0xb]
-        0x0000225c:    4312        .C      ORRS     r2,r2,r2
-        0x0000225e:    4bd1        .K      LDR      r3,[pc,#836] ; [0x25a4] = 0x10004400
-        0x00002260:    7adb        .z      LDRB     r3,[r3,#0xb]
-        0x00002262:    431a        .C      ORRS     r2,r2,r3
-        0x00002264:    0412        ..      LSLS     r2,r2,#16
-        0x00002266:    4311        .C      ORRS     r1,r1,r2
-        0x00002268:    1c62        b.      ADDS     r2,r4,#1
-        0x0000226a:    4614        .F      MOV      r4,r2
-        0x0000226c:    4291        .B      CMP      r1,r2
-        0x0000226e:    d81f        ..      BHI      0x22b0 ; ipcRx + 246
-        0x00002270:    49cb        .I      LDR      r1,[pc,#812] ; [0x25a0] = 0x10004fe0
-        0x00002272:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00002274:    2100        .!      MOVS     r1,#0
-        0x00002276:    4acb        .J      LDR      r2,[pc,#812] ; [0x25a4] = 0x10004400
-        0x00002278:    7992        .y      LDRB     r2,[r2,#6]
-        0x0000227a:    4309        .C      ORRS     r1,r1,r1
-        0x0000227c:    4ac9        .J      LDR      r2,[pc,#804] ; [0x25a4] = 0x10004400
-        0x0000227e:    7992        .y      LDRB     r2,[r2,#6]
-        0x00002280:    4311        .C      ORRS     r1,r1,r2
-        0x00002282:    4ac7        .J      LDR      r2,[pc,#796] ; [0x25a0] = 0x10004fe0
-        0x00002284:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x00002286:    2200        ."      MOVS     r2,#0
-        0x00002288:    4bc6        .K      LDR      r3,[pc,#792] ; [0x25a4] = 0x10004400
-        0x0000228a:    79db        .y      LDRB     r3,[r3,#7]
-        0x0000228c:    4312        .C      ORRS     r2,r2,r2
-        0x0000228e:    4bc5        .K      LDR      r3,[pc,#788] ; [0x25a4] = 0x10004400
-        0x00002290:    79db        .y      LDRB     r3,[r3,#7]
-        0x00002292:    431a        .C      ORRS     r2,r2,r3
-        0x00002294:    0212        ..      LSLS     r2,r2,#8
-        0x00002296:    4311        .C      ORRS     r1,r1,r2
-        0x00002298:    4ac1        .J      LDR      r2,[pc,#772] ; [0x25a0] = 0x10004fe0
-        0x0000229a:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x0000229c:    2200        ."      MOVS     r2,#0
-        0x0000229e:    4bc1        .K      LDR      r3,[pc,#772] ; [0x25a4] = 0x10004400
-        0x000022a0:    7a1b        .z      LDRB     r3,[r3,#8]
-        0x000022a2:    4312        .C      ORRS     r2,r2,r2
-        0x000022a4:    4bbf        .K      LDR      r3,[pc,#764] ; [0x25a4] = 0x10004400
-        0x000022a6:    7a1b        .z      LDRB     r3,[r3,#8]
-        0x000022a8:    431a        .C      ORRS     r2,r2,r3
-        0x000022aa:    0412        ..      LSLS     r2,r2,#16
-        0x000022ac:    4311        .C      ORRS     r1,r1,r2
-        0x000022ae:    460c        .F      MOV      r4,r1
-        0x000022b0:    1c41        A.      ADDS     r1,r0,#1
-        0x000022b2:    b288        ..      UXTH     r0,r1
-        0x000022b4:    42b0        .B      CMP      r0,r6
-        0x000022b6:    dbaa        ..      BLT      0x220e ; ipcRx + 84
-        0x000022b8:    bf00        ..      NOP      
-        0x000022ba:    bf00        ..      NOP      
-        0x000022bc:    b2e2        ..      UXTB     r2,r4
-        0x000022be:    48b8        .H      LDR      r0,[pc,#736] ; [0x25a0] = 0x10004fe0
-        0x000022c0:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x000022c2:    2100        .!      MOVS     r1,#0
-        0x000022c4:    48b7        .H      LDR      r0,[pc,#732] ; [0x25a4] = 0x10004400
-        0x000022c6:    78c0        .x      LDRB     r0,[r0,#3]
-        0x000022c8:    4309        .C      ORRS     r1,r1,r1
-        0x000022ca:    48b6        .H      LDR      r0,[pc,#728] ; [0x25a4] = 0x10004400
-        0x000022cc:    78c0        .x      LDRB     r0,[r0,#3]
-        0x000022ce:    4301        .C      ORRS     r1,r1,r0
-        0x000022d0:    48b3        .H      LDR      r0,[pc,#716] ; [0x25a0] = 0x10004fe0
-        0x000022d2:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x000022d4:    2000        .       MOVS     r0,#0
-        0x000022d6:    4bb3        .K      LDR      r3,[pc,#716] ; [0x25a4] = 0x10004400
-        0x000022d8:    791b        .y      LDRB     r3,[r3,#4]
-        0x000022da:    4300        .C      ORRS     r0,r0,r0
-        0x000022dc:    4bb1        .K      LDR      r3,[pc,#708] ; [0x25a4] = 0x10004400
-        0x000022de:    791b        .y      LDRB     r3,[r3,#4]
-        0x000022e0:    4318        .C      ORRS     r0,r0,r3
-        0x000022e2:    0200        ..      LSLS     r0,r0,#8
-        0x000022e4:    4308        .C      ORRS     r0,r0,r1
-        0x000022e6:    49ae        .I      LDR      r1,[pc,#696] ; [0x25a0] = 0x10004fe0
-        0x000022e8:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x000022ea:    2100        .!      MOVS     r1,#0
-        0x000022ec:    4bad        .K      LDR      r3,[pc,#692] ; [0x25a4] = 0x10004400
-        0x000022ee:    795b        [y      LDRB     r3,[r3,#5]
-        0x000022f0:    4309        .C      ORRS     r1,r1,r1
-        0x000022f2:    4bac        .K      LDR      r3,[pc,#688] ; [0x25a4] = 0x10004400
-        0x000022f4:    795b        [y      LDRB     r3,[r3,#5]
-        0x000022f6:    4319        .C      ORRS     r1,r1,r3
-        0x000022f8:    0409        ..      LSLS     r1,r1,#16
-        0x000022fa:    4308        .C      ORRS     r0,r0,r1
-        0x000022fc:    2101        .!      MOVS     r1,#1
-        0x000022fe:    0709        ..      LSLS     r1,r1,#28
-        0x00002300:    1840        @.      ADDS     r0,r0,r1
-        0x00002302:    7002        .p      STRB     r2,[r0,#0]
-        0x00002304:    b2e2        ..      UXTB     r2,r4
-        0x00002306:    48a6        .H      LDR      r0,[pc,#664] ; [0x25a0] = 0x10004fe0
-        0x00002308:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x0000230a:    2000        .       MOVS     r0,#0
-        0x0000230c:    49a5        .I      LDR      r1,[pc,#660] ; [0x25a4] = 0x10004400
-        0x0000230e:    78c9        .x      LDRB     r1,[r1,#3]
-        0x00002310:    4300        .C      ORRS     r0,r0,r0
-        0x00002312:    49a4        .I      LDR      r1,[pc,#656] ; [0x25a4] = 0x10004400
-        0x00002314:    78c9        .x      LDRB     r1,[r1,#3]
-        0x00002316:    4308        .C      ORRS     r0,r0,r1
-        0x00002318:    49a1        .I      LDR      r1,[pc,#644] ; [0x25a0] = 0x10004fe0
-        0x0000231a:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x0000231c:    2100        .!      MOVS     r1,#0
-        0x0000231e:    4ba1        .K      LDR      r3,[pc,#644] ; [0x25a4] = 0x10004400
-        0x00002320:    791b        .y      LDRB     r3,[r3,#4]
-        0x00002322:    4309        .C      ORRS     r1,r1,r1
-        0x00002324:    4b9f        .K      LDR      r3,[pc,#636] ; [0x25a4] = 0x10004400
-        0x00002326:    791b        .y      LDRB     r3,[r3,#4]
-        0x00002328:    4319        .C      ORRS     r1,r1,r3
-        0x0000232a:    0209        ..      LSLS     r1,r1,#8
-        0x0000232c:    4308        .C      ORRS     r0,r0,r1
-        0x0000232e:    499c        .I      LDR      r1,[pc,#624] ; [0x25a0] = 0x10004fe0
-        0x00002330:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00002332:    2100        .!      MOVS     r1,#0
-        0x00002334:    4b9b        .K      LDR      r3,[pc,#620] ; [0x25a4] = 0x10004400
-        0x00002336:    795b        [y      LDRB     r3,[r3,#5]
-        0x00002338:    4309        .C      ORRS     r1,r1,r1
-        0x0000233a:    4b9a        .K      LDR      r3,[pc,#616] ; [0x25a4] = 0x10004400
-        0x0000233c:    795b        [y      LDRB     r3,[r3,#5]
-        0x0000233e:    4319        .C      ORRS     r1,r1,r3
-        0x00002340:    0409        ..      LSLS     r1,r1,#16
-        0x00002342:    4308        .C      ORRS     r0,r0,r1
-        0x00002344:    2101        .!      MOVS     r1,#1
-        0x00002346:    0709        ..      LSLS     r1,r1,#28
-        0x00002348:    1840        @.      ADDS     r0,r0,r1
-        0x0000234a:    7002        .p      STRB     r2,[r0,#0]
-        0x0000234c:    bf00        ..      NOP      
-        0x0000234e:    bf00        ..      NOP      
-        0x00002350:    0420         .      LSLS     r0,r4,#16
-        0x00002352:    0e02        ..      LSRS     r2,r0,#24
-        0x00002354:    4892        .H      LDR      r0,[pc,#584] ; [0x25a0] = 0x10004fe0
-        0x00002356:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00002358:    2000        .       MOVS     r0,#0
-        0x0000235a:    4992        .I      LDR      r1,[pc,#584] ; [0x25a4] = 0x10004400
-        0x0000235c:    78c9        .x      LDRB     r1,[r1,#3]
-        0x0000235e:    4300        .C      ORRS     r0,r0,r0
-        0x00002360:    4990        .I      LDR      r1,[pc,#576] ; [0x25a4] = 0x10004400
-        0x00002362:    78c9        .x      LDRB     r1,[r1,#3]
-        0x00002364:    4308        .C      ORRS     r0,r0,r1
-        0x00002366:    498e        .I      LDR      r1,[pc,#568] ; [0x25a0] = 0x10004fe0
-        0x00002368:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x0000236a:    2100        .!      MOVS     r1,#0
-        0x0000236c:    4b8d        .K      LDR      r3,[pc,#564] ; [0x25a4] = 0x10004400
-        0x0000236e:    791b        .y      LDRB     r3,[r3,#4]
-        0x00002370:    4309        .C      ORRS     r1,r1,r1
-        0x00002372:    4b8c        .K      LDR      r3,[pc,#560] ; [0x25a4] = 0x10004400
-        0x00002374:    791b        .y      LDRB     r3,[r3,#4]
-        0x00002376:    4319        .C      ORRS     r1,r1,r3
-        0x00002378:    0209        ..      LSLS     r1,r1,#8
-        0x0000237a:    4308        .C      ORRS     r0,r0,r1
-        0x0000237c:    4988        .I      LDR      r1,[pc,#544] ; [0x25a0] = 0x10004fe0
-        0x0000237e:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00002380:    2100        .!      MOVS     r1,#0
-        0x00002382:    4b88        .K      LDR      r3,[pc,#544] ; [0x25a4] = 0x10004400
-        0x00002384:    795b        [y      LDRB     r3,[r3,#5]
-        0x00002386:    4309        .C      ORRS     r1,r1,r1
-        0x00002388:    4b86        .K      LDR      r3,[pc,#536] ; [0x25a4] = 0x10004400
-        0x0000238a:    795b        [y      LDRB     r3,[r3,#5]
-        0x0000238c:    4319        .C      ORRS     r1,r1,r3
-        0x0000238e:    0409        ..      LSLS     r1,r1,#16
-        0x00002390:    4308        .C      ORRS     r0,r0,r1
-        0x00002392:    1c40        @.      ADDS     r0,r0,#1
-        0x00002394:    2101        .!      MOVS     r1,#1
-        0x00002396:    0709        ..      LSLS     r1,r1,#28
-        0x00002398:    1840        @.      ADDS     r0,r0,r1
-        0x0000239a:    7002        .p      STRB     r2,[r0,#0]
-        0x0000239c:    0420         .      LSLS     r0,r4,#16
-        0x0000239e:    0e02        ..      LSRS     r2,r0,#24
-        0x000023a0:    487f        .H      LDR      r0,[pc,#508] ; [0x25a0] = 0x10004fe0
-        0x000023a2:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x000023a4:    2100        .!      MOVS     r1,#0
-        0x000023a6:    487f        .H      LDR      r0,[pc,#508] ; [0x25a4] = 0x10004400
-        0x000023a8:    78c0        .x      LDRB     r0,[r0,#3]
-        0x000023aa:    4309        .C      ORRS     r1,r1,r1
-        0x000023ac:    487d        }H      LDR      r0,[pc,#500] ; [0x25a4] = 0x10004400
-        0x000023ae:    78c0        .x      LDRB     r0,[r0,#3]
-        0x000023b0:    4301        .C      ORRS     r1,r1,r0
-        0x000023b2:    487b        {H      LDR      r0,[pc,#492] ; [0x25a0] = 0x10004fe0
-        0x000023b4:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x000023b6:    2000        .       MOVS     r0,#0
-        0x000023b8:    4b7a        zK      LDR      r3,[pc,#488] ; [0x25a4] = 0x10004400
-        0x000023ba:    791b        .y      LDRB     r3,[r3,#4]
-        0x000023bc:    4300        .C      ORRS     r0,r0,r0
-        0x000023be:    4b79        yK      LDR      r3,[pc,#484] ; [0x25a4] = 0x10004400
-        0x000023c0:    791b        .y      LDRB     r3,[r3,#4]
-        0x000023c2:    4318        .C      ORRS     r0,r0,r3
-        0x000023c4:    0200        ..      LSLS     r0,r0,#8
-        0x000023c6:    4308        .C      ORRS     r0,r0,r1
-        0x000023c8:    4975        uI      LDR      r1,[pc,#468] ; [0x25a0] = 0x10004fe0
-        0x000023ca:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x000023cc:    2100        .!      MOVS     r1,#0
-        0x000023ce:    4b75        uK      LDR      r3,[pc,#468] ; [0x25a4] = 0x10004400
-        0x000023d0:    795b        [y      LDRB     r3,[r3,#5]
-        0x000023d2:    4309        .C      ORRS     r1,r1,r1
-        0x000023d4:    4b73        sK      LDR      r3,[pc,#460] ; [0x25a4] = 0x10004400
-        0x000023d6:    795b        [y      LDRB     r3,[r3,#5]
-        0x000023d8:    4319        .C      ORRS     r1,r1,r3
-        0x000023da:    0409        ..      LSLS     r1,r1,#16
-        0x000023dc:    4308        .C      ORRS     r0,r0,r1
-        0x000023de:    1c40        @.      ADDS     r0,r0,#1
-        0x000023e0:    2101        .!      MOVS     r1,#1
-        0x000023e2:    0709        ..      LSLS     r1,r1,#28
-        0x000023e4:    1840        @.      ADDS     r0,r0,r1
-        0x000023e6:    7002        .p      STRB     r2,[r0,#0]
-        0x000023e8:    bf00        ..      NOP      
-        0x000023ea:    bf00        ..      NOP      
-        0x000023ec:    0220         .      LSLS     r0,r4,#8
-        0x000023ee:    0e02        ..      LSRS     r2,r0,#24
-        0x000023f0:    486b        kH      LDR      r0,[pc,#428] ; [0x25a0] = 0x10004fe0
-        0x000023f2:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x000023f4:    2100        .!      MOVS     r1,#0
-        0x000023f6:    486b        kH      LDR      r0,[pc,#428] ; [0x25a4] = 0x10004400
-        0x000023f8:    78c0        .x      LDRB     r0,[r0,#3]
-        0x000023fa:    4309        .C      ORRS     r1,r1,r1
-        0x000023fc:    4869        iH      LDR      r0,[pc,#420] ; [0x25a4] = 0x10004400
-        0x000023fe:    78c0        .x      LDRB     r0,[r0,#3]
-        0x00002400:    4301        .C      ORRS     r1,r1,r0
-        0x00002402:    4867        gH      LDR      r0,[pc,#412] ; [0x25a0] = 0x10004fe0
-        0x00002404:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00002406:    2000        .       MOVS     r0,#0
-        0x00002408:    4b66        fK      LDR      r3,[pc,#408] ; [0x25a4] = 0x10004400
-        0x0000240a:    791b        .y      LDRB     r3,[r3,#4]
-        0x0000240c:    4300        .C      ORRS     r0,r0,r0
-        0x0000240e:    4b65        eK      LDR      r3,[pc,#404] ; [0x25a4] = 0x10004400
-        0x00002410:    791b        .y      LDRB     r3,[r3,#4]
-        0x00002412:    4318        .C      ORRS     r0,r0,r3
-        0x00002414:    0200        ..      LSLS     r0,r0,#8
-        0x00002416:    4308        .C      ORRS     r0,r0,r1
-        0x00002418:    4961        aI      LDR      r1,[pc,#388] ; [0x25a0] = 0x10004fe0
-        0x0000241a:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x0000241c:    2100        .!      MOVS     r1,#0
-        0x0000241e:    4b61        aK      LDR      r3,[pc,#388] ; [0x25a4] = 0x10004400
-        0x00002420:    795b        [y      LDRB     r3,[r3,#5]
-        0x00002422:    4309        .C      ORRS     r1,r1,r1
-        0x00002424:    4b5f        _K      LDR      r3,[pc,#380] ; [0x25a4] = 0x10004400
-        0x00002426:    795b        [y      LDRB     r3,[r3,#5]
-        0x00002428:    4319        .C      ORRS     r1,r1,r3
-        0x0000242a:    0409        ..      LSLS     r1,r1,#16
-        0x0000242c:    4308        .C      ORRS     r0,r0,r1
-        0x0000242e:    1c80        ..      ADDS     r0,r0,#2
-        0x00002430:    2101        .!      MOVS     r1,#1
-        0x00002432:    0709        ..      LSLS     r1,r1,#28
-        0x00002434:    1840        @.      ADDS     r0,r0,r1
-        0x00002436:    7002        .p      STRB     r2,[r0,#0]
-        0x00002438:    0220         .      LSLS     r0,r4,#8
-        0x0000243a:    0e02        ..      LSRS     r2,r0,#24
-        0x0000243c:    4858        XH      LDR      r0,[pc,#352] ; [0x25a0] = 0x10004fe0
-        0x0000243e:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00002440:    2000        .       MOVS     r0,#0
-        0x00002442:    4958        XI      LDR      r1,[pc,#352] ; [0x25a4] = 0x10004400
-        0x00002444:    78c9        .x      LDRB     r1,[r1,#3]
-        0x00002446:    4300        .C      ORRS     r0,r0,r0
-        0x00002448:    4956        VI      LDR      r1,[pc,#344] ; [0x25a4] = 0x10004400
-        0x0000244a:    78c9        .x      LDRB     r1,[r1,#3]
-        0x0000244c:    4308        .C      ORRS     r0,r0,r1
-        0x0000244e:    4954        TI      LDR      r1,[pc,#336] ; [0x25a0] = 0x10004fe0
-        0x00002450:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00002452:    2100        .!      MOVS     r1,#0
-        0x00002454:    4b53        SK      LDR      r3,[pc,#332] ; [0x25a4] = 0x10004400
-        0x00002456:    791b        .y      LDRB     r3,[r3,#4]
-        0x00002458:    4309        .C      ORRS     r1,r1,r1
-        0x0000245a:    4b52        RK      LDR      r3,[pc,#328] ; [0x25a4] = 0x10004400
-        0x0000245c:    791b        .y      LDRB     r3,[r3,#4]
-        0x0000245e:    4319        .C      ORRS     r1,r1,r3
-        0x00002460:    0209        ..      LSLS     r1,r1,#8
-        0x00002462:    4301        .C      ORRS     r1,r1,r0
-        0x00002464:    484e        NH      LDR      r0,[pc,#312] ; [0x25a0] = 0x10004fe0
-        0x00002466:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00002468:    2000        .       MOVS     r0,#0
-        0x0000246a:    4b4e        NK      LDR      r3,[pc,#312] ; [0x25a4] = 0x10004400
-        0x0000246c:    795b        [y      LDRB     r3,[r3,#5]
-        0x0000246e:    4300        .C      ORRS     r0,r0,r0
-        0x00002470:    4b4c        LK      LDR      r3,[pc,#304] ; [0x25a4] = 0x10004400
-        0x00002472:    795b        [y      LDRB     r3,[r3,#5]
-        0x00002474:    4318        .C      ORRS     r0,r0,r3
-        0x00002476:    0400        ..      LSLS     r0,r0,#16
-        0x00002478:    4301        .C      ORRS     r1,r1,r0
-        0x0000247a:    1c89        ..      ADDS     r1,r1,#2
-        0x0000247c:    2001        .       MOVS     r0,#1
-        0x0000247e:    0700        ..      LSLS     r0,r0,#28
-        0x00002480:    1808        ..      ADDS     r0,r1,r0
-        0x00002482:    7002        .p      STRB     r2,[r0,#0]
-        0x00002484:    bf00        ..      NOP      
-        0x00002486:    bf00        ..      NOP      
-        0x00002488:    bd70        p.      POP      {r4-r6,pc}
+        0x0000223c:    5429        )T      STRB     r1,[r5,r0]
+        0x0000223e:    49dd        .I      LDR      r1,[pc,#884] ; [0x25b4] = 0x10004fe0
+        0x00002240:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002242:    2100        .!      MOVS     r1,#0
+        0x00002244:    4adc        .J      LDR      r2,[pc,#880] ; [0x25b8] = 0x10004400
+        0x00002246:    7a52        Rz      LDRB     r2,[r2,#9]
+        0x00002248:    4309        .C      ORRS     r1,r1,r1
+        0x0000224a:    4adb        .J      LDR      r2,[pc,#876] ; [0x25b8] = 0x10004400
+        0x0000224c:    7a52        Rz      LDRB     r2,[r2,#9]
+        0x0000224e:    4311        .C      ORRS     r1,r1,r2
+        0x00002250:    4ad8        .J      LDR      r2,[pc,#864] ; [0x25b4] = 0x10004fe0
+        0x00002252:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x00002254:    2200        ."      MOVS     r2,#0
+        0x00002256:    4bd8        .K      LDR      r3,[pc,#864] ; [0x25b8] = 0x10004400
+        0x00002258:    7a9b        .z      LDRB     r3,[r3,#0xa]
+        0x0000225a:    4312        .C      ORRS     r2,r2,r2
+        0x0000225c:    4bd6        .K      LDR      r3,[pc,#856] ; [0x25b8] = 0x10004400
+        0x0000225e:    7a9b        .z      LDRB     r3,[r3,#0xa]
+        0x00002260:    431a        .C      ORRS     r2,r2,r3
+        0x00002262:    0212        ..      LSLS     r2,r2,#8
+        0x00002264:    4311        .C      ORRS     r1,r1,r2
+        0x00002266:    4ad3        .J      LDR      r2,[pc,#844] ; [0x25b4] = 0x10004fe0
+        0x00002268:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x0000226a:    2200        ."      MOVS     r2,#0
+        0x0000226c:    4bd2        .K      LDR      r3,[pc,#840] ; [0x25b8] = 0x10004400
+        0x0000226e:    7adb        .z      LDRB     r3,[r3,#0xb]
+        0x00002270:    4312        .C      ORRS     r2,r2,r2
+        0x00002272:    4bd1        .K      LDR      r3,[pc,#836] ; [0x25b8] = 0x10004400
+        0x00002274:    7adb        .z      LDRB     r3,[r3,#0xb]
+        0x00002276:    431a        .C      ORRS     r2,r2,r3
+        0x00002278:    0412        ..      LSLS     r2,r2,#16
+        0x0000227a:    4311        .C      ORRS     r1,r1,r2
+        0x0000227c:    1c62        b.      ADDS     r2,r4,#1
+        0x0000227e:    4614        .F      MOV      r4,r2
+        0x00002280:    4291        .B      CMP      r1,r2
+        0x00002282:    d81f        ..      BHI      0x22c4 ; ipcRx + 246
+        0x00002284:    49cb        .I      LDR      r1,[pc,#812] ; [0x25b4] = 0x10004fe0
+        0x00002286:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002288:    2100        .!      MOVS     r1,#0
+        0x0000228a:    4acb        .J      LDR      r2,[pc,#812] ; [0x25b8] = 0x10004400
+        0x0000228c:    7992        .y      LDRB     r2,[r2,#6]
+        0x0000228e:    4309        .C      ORRS     r1,r1,r1
+        0x00002290:    4ac9        .J      LDR      r2,[pc,#804] ; [0x25b8] = 0x10004400
+        0x00002292:    7992        .y      LDRB     r2,[r2,#6]
+        0x00002294:    4311        .C      ORRS     r1,r1,r2
+        0x00002296:    4ac7        .J      LDR      r2,[pc,#796] ; [0x25b4] = 0x10004fe0
+        0x00002298:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x0000229a:    2200        ."      MOVS     r2,#0
+        0x0000229c:    4bc6        .K      LDR      r3,[pc,#792] ; [0x25b8] = 0x10004400
+        0x0000229e:    79db        .y      LDRB     r3,[r3,#7]
+        0x000022a0:    4312        .C      ORRS     r2,r2,r2
+        0x000022a2:    4bc5        .K      LDR      r3,[pc,#788] ; [0x25b8] = 0x10004400
+        0x000022a4:    79db        .y      LDRB     r3,[r3,#7]
+        0x000022a6:    431a        .C      ORRS     r2,r2,r3
+        0x000022a8:    0212        ..      LSLS     r2,r2,#8
+        0x000022aa:    4311        .C      ORRS     r1,r1,r2
+        0x000022ac:    4ac1        .J      LDR      r2,[pc,#772] ; [0x25b4] = 0x10004fe0
+        0x000022ae:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x000022b0:    2200        ."      MOVS     r2,#0
+        0x000022b2:    4bc1        .K      LDR      r3,[pc,#772] ; [0x25b8] = 0x10004400
+        0x000022b4:    7a1b        .z      LDRB     r3,[r3,#8]
+        0x000022b6:    4312        .C      ORRS     r2,r2,r2
+        0x000022b8:    4bbf        .K      LDR      r3,[pc,#764] ; [0x25b8] = 0x10004400
+        0x000022ba:    7a1b        .z      LDRB     r3,[r3,#8]
+        0x000022bc:    431a        .C      ORRS     r2,r2,r3
+        0x000022be:    0412        ..      LSLS     r2,r2,#16
+        0x000022c0:    4311        .C      ORRS     r1,r1,r2
+        0x000022c2:    460c        .F      MOV      r4,r1
+        0x000022c4:    1c41        A.      ADDS     r1,r0,#1
+        0x000022c6:    b288        ..      UXTH     r0,r1
+        0x000022c8:    42b0        .B      CMP      r0,r6
+        0x000022ca:    dbaa        ..      BLT      0x2222 ; ipcRx + 84
+        0x000022cc:    bf00        ..      NOP      
+        0x000022ce:    bf00        ..      NOP      
+        0x000022d0:    b2e2        ..      UXTB     r2,r4
+        0x000022d2:    48b8        .H      LDR      r0,[pc,#736] ; [0x25b4] = 0x10004fe0
+        0x000022d4:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x000022d6:    2100        .!      MOVS     r1,#0
+        0x000022d8:    48b7        .H      LDR      r0,[pc,#732] ; [0x25b8] = 0x10004400
+        0x000022da:    78c0        .x      LDRB     r0,[r0,#3]
+        0x000022dc:    4309        .C      ORRS     r1,r1,r1
+        0x000022de:    48b6        .H      LDR      r0,[pc,#728] ; [0x25b8] = 0x10004400
+        0x000022e0:    78c0        .x      LDRB     r0,[r0,#3]
+        0x000022e2:    4301        .C      ORRS     r1,r1,r0
+        0x000022e4:    48b3        .H      LDR      r0,[pc,#716] ; [0x25b4] = 0x10004fe0
+        0x000022e6:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x000022e8:    2000        .       MOVS     r0,#0
+        0x000022ea:    4bb3        .K      LDR      r3,[pc,#716] ; [0x25b8] = 0x10004400
+        0x000022ec:    791b        .y      LDRB     r3,[r3,#4]
+        0x000022ee:    4300        .C      ORRS     r0,r0,r0
+        0x000022f0:    4bb1        .K      LDR      r3,[pc,#708] ; [0x25b8] = 0x10004400
+        0x000022f2:    791b        .y      LDRB     r3,[r3,#4]
+        0x000022f4:    4318        .C      ORRS     r0,r0,r3
+        0x000022f6:    0200        ..      LSLS     r0,r0,#8
+        0x000022f8:    4308        .C      ORRS     r0,r0,r1
+        0x000022fa:    49ae        .I      LDR      r1,[pc,#696] ; [0x25b4] = 0x10004fe0
+        0x000022fc:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x000022fe:    2100        .!      MOVS     r1,#0
+        0x00002300:    4bad        .K      LDR      r3,[pc,#692] ; [0x25b8] = 0x10004400
+        0x00002302:    795b        [y      LDRB     r3,[r3,#5]
+        0x00002304:    4309        .C      ORRS     r1,r1,r1
+        0x00002306:    4bac        .K      LDR      r3,[pc,#688] ; [0x25b8] = 0x10004400
+        0x00002308:    795b        [y      LDRB     r3,[r3,#5]
+        0x0000230a:    4319        .C      ORRS     r1,r1,r3
+        0x0000230c:    0409        ..      LSLS     r1,r1,#16
+        0x0000230e:    4308        .C      ORRS     r0,r0,r1
+        0x00002310:    2101        .!      MOVS     r1,#1
+        0x00002312:    0709        ..      LSLS     r1,r1,#28
+        0x00002314:    1840        @.      ADDS     r0,r0,r1
+        0x00002316:    7002        .p      STRB     r2,[r0,#0]
+        0x00002318:    b2e2        ..      UXTB     r2,r4
+        0x0000231a:    48a6        .H      LDR      r0,[pc,#664] ; [0x25b4] = 0x10004fe0
+        0x0000231c:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x0000231e:    2000        .       MOVS     r0,#0
+        0x00002320:    49a5        .I      LDR      r1,[pc,#660] ; [0x25b8] = 0x10004400
+        0x00002322:    78c9        .x      LDRB     r1,[r1,#3]
+        0x00002324:    4300        .C      ORRS     r0,r0,r0
+        0x00002326:    49a4        .I      LDR      r1,[pc,#656] ; [0x25b8] = 0x10004400
+        0x00002328:    78c9        .x      LDRB     r1,[r1,#3]
+        0x0000232a:    4308        .C      ORRS     r0,r0,r1
+        0x0000232c:    49a1        .I      LDR      r1,[pc,#644] ; [0x25b4] = 0x10004fe0
+        0x0000232e:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002330:    2100        .!      MOVS     r1,#0
+        0x00002332:    4ba1        .K      LDR      r3,[pc,#644] ; [0x25b8] = 0x10004400
+        0x00002334:    791b        .y      LDRB     r3,[r3,#4]
+        0x00002336:    4309        .C      ORRS     r1,r1,r1
+        0x00002338:    4b9f        .K      LDR      r3,[pc,#636] ; [0x25b8] = 0x10004400
+        0x0000233a:    791b        .y      LDRB     r3,[r3,#4]
+        0x0000233c:    4319        .C      ORRS     r1,r1,r3
+        0x0000233e:    0209        ..      LSLS     r1,r1,#8
+        0x00002340:    4308        .C      ORRS     r0,r0,r1
+        0x00002342:    499c        .I      LDR      r1,[pc,#624] ; [0x25b4] = 0x10004fe0
+        0x00002344:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002346:    2100        .!      MOVS     r1,#0
+        0x00002348:    4b9b        .K      LDR      r3,[pc,#620] ; [0x25b8] = 0x10004400
+        0x0000234a:    795b        [y      LDRB     r3,[r3,#5]
+        0x0000234c:    4309        .C      ORRS     r1,r1,r1
+        0x0000234e:    4b9a        .K      LDR      r3,[pc,#616] ; [0x25b8] = 0x10004400
+        0x00002350:    795b        [y      LDRB     r3,[r3,#5]
+        0x00002352:    4319        .C      ORRS     r1,r1,r3
+        0x00002354:    0409        ..      LSLS     r1,r1,#16
+        0x00002356:    4308        .C      ORRS     r0,r0,r1
+        0x00002358:    2101        .!      MOVS     r1,#1
+        0x0000235a:    0709        ..      LSLS     r1,r1,#28
+        0x0000235c:    1840        @.      ADDS     r0,r0,r1
+        0x0000235e:    7002        .p      STRB     r2,[r0,#0]
+        0x00002360:    bf00        ..      NOP      
+        0x00002362:    bf00        ..      NOP      
+        0x00002364:    0420         .      LSLS     r0,r4,#16
+        0x00002366:    0e02        ..      LSRS     r2,r0,#24
+        0x00002368:    4892        .H      LDR      r0,[pc,#584] ; [0x25b4] = 0x10004fe0
+        0x0000236a:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x0000236c:    2000        .       MOVS     r0,#0
+        0x0000236e:    4992        .I      LDR      r1,[pc,#584] ; [0x25b8] = 0x10004400
+        0x00002370:    78c9        .x      LDRB     r1,[r1,#3]
+        0x00002372:    4300        .C      ORRS     r0,r0,r0
+        0x00002374:    4990        .I      LDR      r1,[pc,#576] ; [0x25b8] = 0x10004400
+        0x00002376:    78c9        .x      LDRB     r1,[r1,#3]
+        0x00002378:    4308        .C      ORRS     r0,r0,r1
+        0x0000237a:    498e        .I      LDR      r1,[pc,#568] ; [0x25b4] = 0x10004fe0
+        0x0000237c:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x0000237e:    2100        .!      MOVS     r1,#0
+        0x00002380:    4b8d        .K      LDR      r3,[pc,#564] ; [0x25b8] = 0x10004400
+        0x00002382:    791b        .y      LDRB     r3,[r3,#4]
+        0x00002384:    4309        .C      ORRS     r1,r1,r1
+        0x00002386:    4b8c        .K      LDR      r3,[pc,#560] ; [0x25b8] = 0x10004400
+        0x00002388:    791b        .y      LDRB     r3,[r3,#4]
+        0x0000238a:    4319        .C      ORRS     r1,r1,r3
+        0x0000238c:    0209        ..      LSLS     r1,r1,#8
+        0x0000238e:    4308        .C      ORRS     r0,r0,r1
+        0x00002390:    4988        .I      LDR      r1,[pc,#544] ; [0x25b4] = 0x10004fe0
+        0x00002392:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002394:    2100        .!      MOVS     r1,#0
+        0x00002396:    4b88        .K      LDR      r3,[pc,#544] ; [0x25b8] = 0x10004400
+        0x00002398:    795b        [y      LDRB     r3,[r3,#5]
+        0x0000239a:    4309        .C      ORRS     r1,r1,r1
+        0x0000239c:    4b86        .K      LDR      r3,[pc,#536] ; [0x25b8] = 0x10004400
+        0x0000239e:    795b        [y      LDRB     r3,[r3,#5]
+        0x000023a0:    4319        .C      ORRS     r1,r1,r3
+        0x000023a2:    0409        ..      LSLS     r1,r1,#16
+        0x000023a4:    4308        .C      ORRS     r0,r0,r1
+        0x000023a6:    1c40        @.      ADDS     r0,r0,#1
+        0x000023a8:    2101        .!      MOVS     r1,#1
+        0x000023aa:    0709        ..      LSLS     r1,r1,#28
+        0x000023ac:    1840        @.      ADDS     r0,r0,r1
+        0x000023ae:    7002        .p      STRB     r2,[r0,#0]
+        0x000023b0:    0420         .      LSLS     r0,r4,#16
+        0x000023b2:    0e02        ..      LSRS     r2,r0,#24
+        0x000023b4:    487f        .H      LDR      r0,[pc,#508] ; [0x25b4] = 0x10004fe0
+        0x000023b6:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x000023b8:    2100        .!      MOVS     r1,#0
+        0x000023ba:    487f        .H      LDR      r0,[pc,#508] ; [0x25b8] = 0x10004400
+        0x000023bc:    78c0        .x      LDRB     r0,[r0,#3]
+        0x000023be:    4309        .C      ORRS     r1,r1,r1
+        0x000023c0:    487d        }H      LDR      r0,[pc,#500] ; [0x25b8] = 0x10004400
+        0x000023c2:    78c0        .x      LDRB     r0,[r0,#3]
+        0x000023c4:    4301        .C      ORRS     r1,r1,r0
+        0x000023c6:    487b        {H      LDR      r0,[pc,#492] ; [0x25b4] = 0x10004fe0
+        0x000023c8:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x000023ca:    2000        .       MOVS     r0,#0
+        0x000023cc:    4b7a        zK      LDR      r3,[pc,#488] ; [0x25b8] = 0x10004400
+        0x000023ce:    791b        .y      LDRB     r3,[r3,#4]
+        0x000023d0:    4300        .C      ORRS     r0,r0,r0
+        0x000023d2:    4b79        yK      LDR      r3,[pc,#484] ; [0x25b8] = 0x10004400
+        0x000023d4:    791b        .y      LDRB     r3,[r3,#4]
+        0x000023d6:    4318        .C      ORRS     r0,r0,r3
+        0x000023d8:    0200        ..      LSLS     r0,r0,#8
+        0x000023da:    4308        .C      ORRS     r0,r0,r1
+        0x000023dc:    4975        uI      LDR      r1,[pc,#468] ; [0x25b4] = 0x10004fe0
+        0x000023de:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x000023e0:    2100        .!      MOVS     r1,#0
+        0x000023e2:    4b75        uK      LDR      r3,[pc,#468] ; [0x25b8] = 0x10004400
+        0x000023e4:    795b        [y      LDRB     r3,[r3,#5]
+        0x000023e6:    4309        .C      ORRS     r1,r1,r1
+        0x000023e8:    4b73        sK      LDR      r3,[pc,#460] ; [0x25b8] = 0x10004400
+        0x000023ea:    795b        [y      LDRB     r3,[r3,#5]
+        0x000023ec:    4319        .C      ORRS     r1,r1,r3
+        0x000023ee:    0409        ..      LSLS     r1,r1,#16
+        0x000023f0:    4308        .C      ORRS     r0,r0,r1
+        0x000023f2:    1c40        @.      ADDS     r0,r0,#1
+        0x000023f4:    2101        .!      MOVS     r1,#1
+        0x000023f6:    0709        ..      LSLS     r1,r1,#28
+        0x000023f8:    1840        @.      ADDS     r0,r0,r1
+        0x000023fa:    7002        .p      STRB     r2,[r0,#0]
+        0x000023fc:    bf00        ..      NOP      
+        0x000023fe:    bf00        ..      NOP      
+        0x00002400:    0220         .      LSLS     r0,r4,#8
+        0x00002402:    0e02        ..      LSRS     r2,r0,#24
+        0x00002404:    486b        kH      LDR      r0,[pc,#428] ; [0x25b4] = 0x10004fe0
+        0x00002406:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x00002408:    2100        .!      MOVS     r1,#0
+        0x0000240a:    486b        kH      LDR      r0,[pc,#428] ; [0x25b8] = 0x10004400
+        0x0000240c:    78c0        .x      LDRB     r0,[r0,#3]
+        0x0000240e:    4309        .C      ORRS     r1,r1,r1
+        0x00002410:    4869        iH      LDR      r0,[pc,#420] ; [0x25b8] = 0x10004400
+        0x00002412:    78c0        .x      LDRB     r0,[r0,#3]
+        0x00002414:    4301        .C      ORRS     r1,r1,r0
+        0x00002416:    4867        gH      LDR      r0,[pc,#412] ; [0x25b4] = 0x10004fe0
+        0x00002418:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x0000241a:    2000        .       MOVS     r0,#0
+        0x0000241c:    4b66        fK      LDR      r3,[pc,#408] ; [0x25b8] = 0x10004400
+        0x0000241e:    791b        .y      LDRB     r3,[r3,#4]
+        0x00002420:    4300        .C      ORRS     r0,r0,r0
+        0x00002422:    4b65        eK      LDR      r3,[pc,#404] ; [0x25b8] = 0x10004400
+        0x00002424:    791b        .y      LDRB     r3,[r3,#4]
+        0x00002426:    4318        .C      ORRS     r0,r0,r3
+        0x00002428:    0200        ..      LSLS     r0,r0,#8
+        0x0000242a:    4308        .C      ORRS     r0,r0,r1
+        0x0000242c:    4961        aI      LDR      r1,[pc,#388] ; [0x25b4] = 0x10004fe0
+        0x0000242e:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002430:    2100        .!      MOVS     r1,#0
+        0x00002432:    4b61        aK      LDR      r3,[pc,#388] ; [0x25b8] = 0x10004400
+        0x00002434:    795b        [y      LDRB     r3,[r3,#5]
+        0x00002436:    4309        .C      ORRS     r1,r1,r1
+        0x00002438:    4b5f        _K      LDR      r3,[pc,#380] ; [0x25b8] = 0x10004400
+        0x0000243a:    795b        [y      LDRB     r3,[r3,#5]
+        0x0000243c:    4319        .C      ORRS     r1,r1,r3
+        0x0000243e:    0409        ..      LSLS     r1,r1,#16
+        0x00002440:    4308        .C      ORRS     r0,r0,r1
+        0x00002442:    1c80        ..      ADDS     r0,r0,#2
+        0x00002444:    2101        .!      MOVS     r1,#1
+        0x00002446:    0709        ..      LSLS     r1,r1,#28
+        0x00002448:    1840        @.      ADDS     r0,r0,r1
+        0x0000244a:    7002        .p      STRB     r2,[r0,#0]
+        0x0000244c:    0220         .      LSLS     r0,r4,#8
+        0x0000244e:    0e02        ..      LSRS     r2,r0,#24
+        0x00002450:    4858        XH      LDR      r0,[pc,#352] ; [0x25b4] = 0x10004fe0
+        0x00002452:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x00002454:    2000        .       MOVS     r0,#0
+        0x00002456:    4958        XI      LDR      r1,[pc,#352] ; [0x25b8] = 0x10004400
+        0x00002458:    78c9        .x      LDRB     r1,[r1,#3]
+        0x0000245a:    4300        .C      ORRS     r0,r0,r0
+        0x0000245c:    4956        VI      LDR      r1,[pc,#344] ; [0x25b8] = 0x10004400
+        0x0000245e:    78c9        .x      LDRB     r1,[r1,#3]
+        0x00002460:    4308        .C      ORRS     r0,r0,r1
+        0x00002462:    4954        TI      LDR      r1,[pc,#336] ; [0x25b4] = 0x10004fe0
+        0x00002464:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002466:    2100        .!      MOVS     r1,#0
+        0x00002468:    4b53        SK      LDR      r3,[pc,#332] ; [0x25b8] = 0x10004400
+        0x0000246a:    791b        .y      LDRB     r3,[r3,#4]
+        0x0000246c:    4309        .C      ORRS     r1,r1,r1
+        0x0000246e:    4b52        RK      LDR      r3,[pc,#328] ; [0x25b8] = 0x10004400
+        0x00002470:    791b        .y      LDRB     r3,[r3,#4]
+        0x00002472:    4319        .C      ORRS     r1,r1,r3
+        0x00002474:    0209        ..      LSLS     r1,r1,#8
+        0x00002476:    4301        .C      ORRS     r1,r1,r0
+        0x00002478:    484e        NH      LDR      r0,[pc,#312] ; [0x25b4] = 0x10004fe0
+        0x0000247a:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x0000247c:    2000        .       MOVS     r0,#0
+        0x0000247e:    4b4e        NK      LDR      r3,[pc,#312] ; [0x25b8] = 0x10004400
+        0x00002480:    795b        [y      LDRB     r3,[r3,#5]
+        0x00002482:    4300        .C      ORRS     r0,r0,r0
+        0x00002484:    4b4c        LK      LDR      r3,[pc,#304] ; [0x25b8] = 0x10004400
+        0x00002486:    795b        [y      LDRB     r3,[r3,#5]
+        0x00002488:    4318        .C      ORRS     r0,r0,r3
+        0x0000248a:    0400        ..      LSLS     r0,r0,#16
+        0x0000248c:    4301        .C      ORRS     r1,r1,r0
+        0x0000248e:    1c89        ..      ADDS     r1,r1,#2
+        0x00002490:    2001        .       MOVS     r0,#1
+        0x00002492:    0700        ..      LSLS     r0,r0,#28
+        0x00002494:    1808        ..      ADDS     r0,r1,r0
+        0x00002496:    7002        .p      STRB     r2,[r0,#0]
+        0x00002498:    bf00        ..      NOP      
+        0x0000249a:    bf00        ..      NOP      
+        0x0000249c:    bd70        p.      POP      {r4-r6,pc}
     ipcTx
-        0x0000248a:    b5f8        ..      PUSH     {r3-r7,lr}
-        0x0000248c:    4605        .F      MOV      r5,r0
-        0x0000248e:    460e        .F      MOV      r6,r1
-        0x00002490:    4943        CI      LDR      r1,[pc,#268] ; [0x25a0] = 0x10004fe0
-        0x00002492:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00002494:    2100        .!      MOVS     r1,#0
-        0x00002496:    4a43        CJ      LDR      r2,[pc,#268] ; [0x25a4] = 0x10004400
-        0x00002498:    3a20         :      SUBS     r2,r2,#0x20
-        0x0000249a:    7e92        .~      LDRB     r2,[r2,#0x1a]
-        0x0000249c:    4309        .C      ORRS     r1,r1,r1
-        0x0000249e:    4a41        AJ      LDR      r2,[pc,#260] ; [0x25a4] = 0x10004400
-        0x000024a0:    3a20         :      SUBS     r2,r2,#0x20
-        0x000024a2:    7e92        .~      LDRB     r2,[r2,#0x1a]
-        0x000024a4:    4311        .C      ORRS     r1,r1,r2
-        0x000024a6:    4a3e        >J      LDR      r2,[pc,#248] ; [0x25a0] = 0x10004fe0
-        0x000024a8:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x000024aa:    2200        ."      MOVS     r2,#0
-        0x000024ac:    4b3d        =K      LDR      r3,[pc,#244] ; [0x25a4] = 0x10004400
-        0x000024ae:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000024b0:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x000024b2:    4312        .C      ORRS     r2,r2,r2
-        0x000024b4:    4b3b        ;K      LDR      r3,[pc,#236] ; [0x25a4] = 0x10004400
-        0x000024b6:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000024b8:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x000024ba:    431a        .C      ORRS     r2,r2,r3
-        0x000024bc:    0212        ..      LSLS     r2,r2,#8
-        0x000024be:    4311        .C      ORRS     r1,r1,r2
-        0x000024c0:    4a37        7J      LDR      r2,[pc,#220] ; [0x25a0] = 0x10004fe0
-        0x000024c2:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x000024c4:    2200        ."      MOVS     r2,#0
-        0x000024c6:    4b37        7K      LDR      r3,[pc,#220] ; [0x25a4] = 0x10004400
-        0x000024c8:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000024ca:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x000024cc:    4312        .C      ORRS     r2,r2,r2
-        0x000024ce:    4b35        5K      LDR      r3,[pc,#212] ; [0x25a4] = 0x10004400
-        0x000024d0:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000024d2:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x000024d4:    431a        .C      ORRS     r2,r2,r3
-        0x000024d6:    0412        ..      LSLS     r2,r2,#16
-        0x000024d8:    4311        .C      ORRS     r1,r1,r2
-        0x000024da:    2201        ."      MOVS     r2,#1
-        0x000024dc:    0712        ..      LSLS     r2,r2,#28
-        0x000024de:    1888        ..      ADDS     r0,r1,r2
-        0x000024e0:    f000fbe9    ....    BL       HR_REG_24BIT ; 0x2cb6
-        0x000024e4:    4604        .F      MOV      r4,r0
-        0x000024e6:    2000        .       MOVS     r0,#0
-        0x000024e8:    e06d        m.      B        0x25c6 ; ipcTx + 316
-        0x000024ea:    bf00        ..      NOP      
-        0x000024ec:    5c2a        *\      LDRB     r2,[r5,r0]
-        0x000024ee:    2101        .!      MOVS     r1,#1
-        0x000024f0:    0709        ..      LSLS     r1,r1,#28
-        0x000024f2:    4321        !C      ORRS     r1,r1,r4
-        0x000024f4:    700a        .p      STRB     r2,[r1,#0]
-        0x000024f6:    5c2a        *\      LDRB     r2,[r5,r0]
-        0x000024f8:    2101        .!      MOVS     r1,#1
-        0x000024fa:    0709        ..      LSLS     r1,r1,#28
-        0x000024fc:    4321        !C      ORRS     r1,r1,r4
-        0x000024fe:    700a        .p      STRB     r2,[r1,#0]
-        0x00002500:    bf00        ..      NOP      
-        0x00002502:    4927        'I      LDR      r1,[pc,#156] ; [0x25a0] = 0x10004fe0
-        0x00002504:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00002506:    2100        .!      MOVS     r1,#0
-        0x00002508:    4a26        &J      LDR      r2,[pc,#152] ; [0x25a4] = 0x10004400
-        0x0000250a:    3a20         :      SUBS     r2,r2,#0x20
-        0x0000250c:    7dd2        .}      LDRB     r2,[r2,#0x17]
-        0x0000250e:    4309        .C      ORRS     r1,r1,r1
-        0x00002510:    4a24        $J      LDR      r2,[pc,#144] ; [0x25a4] = 0x10004400
-        0x00002512:    3a20         :      SUBS     r2,r2,#0x20
-        0x00002514:    7dd2        .}      LDRB     r2,[r2,#0x17]
-        0x00002516:    4311        .C      ORRS     r1,r1,r2
-        0x00002518:    4a21        !J      LDR      r2,[pc,#132] ; [0x25a0] = 0x10004fe0
-        0x0000251a:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x0000251c:    2200        ."      MOVS     r2,#0
-        0x0000251e:    4b21        !K      LDR      r3,[pc,#132] ; [0x25a4] = 0x10004400
-        0x00002520:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002522:    7e1b        .~      LDRB     r3,[r3,#0x18]
-        0x00002524:    4312        .C      ORRS     r2,r2,r2
-        0x00002526:    4b1f        .K      LDR      r3,[pc,#124] ; [0x25a4] = 0x10004400
-        0x00002528:    3b20         ;      SUBS     r3,r3,#0x20
-        0x0000252a:    7e1b        .~      LDRB     r3,[r3,#0x18]
-        0x0000252c:    431a        .C      ORRS     r2,r2,r3
-        0x0000252e:    0212        ..      LSLS     r2,r2,#8
-        0x00002530:    4311        .C      ORRS     r1,r1,r2
-        0x00002532:    4a1b        .J      LDR      r2,[pc,#108] ; [0x25a0] = 0x10004fe0
-        0x00002534:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x00002536:    2200        ."      MOVS     r2,#0
-        0x00002538:    4b1a        .K      LDR      r3,[pc,#104] ; [0x25a4] = 0x10004400
-        0x0000253a:    3b20         ;      SUBS     r3,r3,#0x20
-        0x0000253c:    7e5b        [~      LDRB     r3,[r3,#0x19]
-        0x0000253e:    4312        .C      ORRS     r2,r2,r2
-        0x00002540:    4b18        .K      LDR      r3,[pc,#96] ; [0x25a4] = 0x10004400
-        0x00002542:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002544:    7e5b        [~      LDRB     r3,[r3,#0x19]
-        0x00002546:    431a        .C      ORRS     r2,r2,r3
-        0x00002548:    0412        ..      LSLS     r2,r2,#16
-        0x0000254a:    4311        .C      ORRS     r1,r1,r2
-        0x0000254c:    1c62        b.      ADDS     r2,r4,#1
-        0x0000254e:    4614        .F      MOV      r4,r2
-        0x00002550:    4291        .B      CMP      r1,r2
-        0x00002552:    d830        0.      BHI      0x25b6 ; ipcTx + 300
-        0x00002554:    4912        .I      LDR      r1,[pc,#72] ; [0x25a0] = 0x10004fe0
-        0x00002556:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00002558:    2100        .!      MOVS     r1,#0
-        0x0000255a:    4a12        .J      LDR      r2,[pc,#72] ; [0x25a4] = 0x10004400
-        0x0000255c:    3a20         :      SUBS     r2,r2,#0x20
-        0x0000255e:    7d12        .}      LDRB     r2,[r2,#0x14]
-        0x00002560:    4309        .C      ORRS     r1,r1,r1
-        0x00002562:    4a10        .J      LDR      r2,[pc,#64] ; [0x25a4] = 0x10004400
-        0x00002564:    3a20         :      SUBS     r2,r2,#0x20
-        0x00002566:    7d12        .}      LDRB     r2,[r2,#0x14]
-        0x00002568:    4311        .C      ORRS     r1,r1,r2
-        0x0000256a:    4a0d        .J      LDR      r2,[pc,#52] ; [0x25a0] = 0x10004fe0
-        0x0000256c:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x0000256e:    2200        ."      MOVS     r2,#0
-        0x00002570:    4b0c        .K      LDR      r3,[pc,#48] ; [0x25a4] = 0x10004400
-        0x00002572:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002574:    7d5b        [}      LDRB     r3,[r3,#0x15]
-        0x00002576:    4312        .C      ORRS     r2,r2,r2
-        0x00002578:    4b0a        .K      LDR      r3,[pc,#40] ; [0x25a4] = 0x10004400
-        0x0000257a:    3b20         ;      SUBS     r3,r3,#0x20
-        0x0000257c:    7d5b        [}      LDRB     r3,[r3,#0x15]
-        0x0000257e:    431a        .C      ORRS     r2,r2,r3
-        0x00002580:    0212        ..      LSLS     r2,r2,#8
-        0x00002582:    4311        .C      ORRS     r1,r1,r2
-        0x00002584:    4a06        .J      LDR      r2,[pc,#24] ; [0x25a0] = 0x10004fe0
-        0x00002586:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x00002588:    2200        ."      MOVS     r2,#0
-        0x0000258a:    4b06        .K      LDR      r3,[pc,#24] ; [0x25a4] = 0x10004400
-        0x0000258c:    3b20         ;      SUBS     r3,r3,#0x20
-        0x0000258e:    7d9b        .}      LDRB     r3,[r3,#0x16]
-        0x00002590:    4312        .C      ORRS     r2,r2,r2
-        0x00002592:    e009        ..      B        0x25a8 ; ipcTx + 286
+        0x0000249e:    b5f8        ..      PUSH     {r3-r7,lr}
+        0x000024a0:    4605        .F      MOV      r5,r0
+        0x000024a2:    460e        .F      MOV      r6,r1
+        0x000024a4:    4943        CI      LDR      r1,[pc,#268] ; [0x25b4] = 0x10004fe0
+        0x000024a6:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x000024a8:    2100        .!      MOVS     r1,#0
+        0x000024aa:    4a43        CJ      LDR      r2,[pc,#268] ; [0x25b8] = 0x10004400
+        0x000024ac:    3a20         :      SUBS     r2,r2,#0x20
+        0x000024ae:    7e92        .~      LDRB     r2,[r2,#0x1a]
+        0x000024b0:    4309        .C      ORRS     r1,r1,r1
+        0x000024b2:    4a41        AJ      LDR      r2,[pc,#260] ; [0x25b8] = 0x10004400
+        0x000024b4:    3a20         :      SUBS     r2,r2,#0x20
+        0x000024b6:    7e92        .~      LDRB     r2,[r2,#0x1a]
+        0x000024b8:    4311        .C      ORRS     r1,r1,r2
+        0x000024ba:    4a3e        >J      LDR      r2,[pc,#248] ; [0x25b4] = 0x10004fe0
+        0x000024bc:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x000024be:    2200        ."      MOVS     r2,#0
+        0x000024c0:    4b3d        =K      LDR      r3,[pc,#244] ; [0x25b8] = 0x10004400
+        0x000024c2:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000024c4:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x000024c6:    4312        .C      ORRS     r2,r2,r2
+        0x000024c8:    4b3b        ;K      LDR      r3,[pc,#236] ; [0x25b8] = 0x10004400
+        0x000024ca:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000024cc:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x000024ce:    431a        .C      ORRS     r2,r2,r3
+        0x000024d0:    0212        ..      LSLS     r2,r2,#8
+        0x000024d2:    4311        .C      ORRS     r1,r1,r2
+        0x000024d4:    4a37        7J      LDR      r2,[pc,#220] ; [0x25b4] = 0x10004fe0
+        0x000024d6:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x000024d8:    2200        ."      MOVS     r2,#0
+        0x000024da:    4b37        7K      LDR      r3,[pc,#220] ; [0x25b8] = 0x10004400
+        0x000024dc:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000024de:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x000024e0:    4312        .C      ORRS     r2,r2,r2
+        0x000024e2:    4b35        5K      LDR      r3,[pc,#212] ; [0x25b8] = 0x10004400
+        0x000024e4:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000024e6:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x000024e8:    431a        .C      ORRS     r2,r2,r3
+        0x000024ea:    0412        ..      LSLS     r2,r2,#16
+        0x000024ec:    4311        .C      ORRS     r1,r1,r2
+        0x000024ee:    2201        ."      MOVS     r2,#1
+        0x000024f0:    0712        ..      LSLS     r2,r2,#28
+        0x000024f2:    1888        ..      ADDS     r0,r1,r2
+        0x000024f4:    f000fbe9    ....    BL       HR_REG_24BIT ; 0x2cca
+        0x000024f8:    4604        .F      MOV      r4,r0
+        0x000024fa:    2000        .       MOVS     r0,#0
+        0x000024fc:    e06d        m.      B        0x25da ; ipcTx + 316
+        0x000024fe:    bf00        ..      NOP      
+        0x00002500:    5c2a        *\      LDRB     r2,[r5,r0]
+        0x00002502:    2101        .!      MOVS     r1,#1
+        0x00002504:    0709        ..      LSLS     r1,r1,#28
+        0x00002506:    4321        !C      ORRS     r1,r1,r4
+        0x00002508:    700a        .p      STRB     r2,[r1,#0]
+        0x0000250a:    5c2a        *\      LDRB     r2,[r5,r0]
+        0x0000250c:    2101        .!      MOVS     r1,#1
+        0x0000250e:    0709        ..      LSLS     r1,r1,#28
+        0x00002510:    4321        !C      ORRS     r1,r1,r4
+        0x00002512:    700a        .p      STRB     r2,[r1,#0]
+        0x00002514:    bf00        ..      NOP      
+        0x00002516:    4927        'I      LDR      r1,[pc,#156] ; [0x25b4] = 0x10004fe0
+        0x00002518:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x0000251a:    2100        .!      MOVS     r1,#0
+        0x0000251c:    4a26        &J      LDR      r2,[pc,#152] ; [0x25b8] = 0x10004400
+        0x0000251e:    3a20         :      SUBS     r2,r2,#0x20
+        0x00002520:    7dd2        .}      LDRB     r2,[r2,#0x17]
+        0x00002522:    4309        .C      ORRS     r1,r1,r1
+        0x00002524:    4a24        $J      LDR      r2,[pc,#144] ; [0x25b8] = 0x10004400
+        0x00002526:    3a20         :      SUBS     r2,r2,#0x20
+        0x00002528:    7dd2        .}      LDRB     r2,[r2,#0x17]
+        0x0000252a:    4311        .C      ORRS     r1,r1,r2
+        0x0000252c:    4a21        !J      LDR      r2,[pc,#132] ; [0x25b4] = 0x10004fe0
+        0x0000252e:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x00002530:    2200        ."      MOVS     r2,#0
+        0x00002532:    4b21        !K      LDR      r3,[pc,#132] ; [0x25b8] = 0x10004400
+        0x00002534:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002536:    7e1b        .~      LDRB     r3,[r3,#0x18]
+        0x00002538:    4312        .C      ORRS     r2,r2,r2
+        0x0000253a:    4b1f        .K      LDR      r3,[pc,#124] ; [0x25b8] = 0x10004400
+        0x0000253c:    3b20         ;      SUBS     r3,r3,#0x20
+        0x0000253e:    7e1b        .~      LDRB     r3,[r3,#0x18]
+        0x00002540:    431a        .C      ORRS     r2,r2,r3
+        0x00002542:    0212        ..      LSLS     r2,r2,#8
+        0x00002544:    4311        .C      ORRS     r1,r1,r2
+        0x00002546:    4a1b        .J      LDR      r2,[pc,#108] ; [0x25b4] = 0x10004fe0
+        0x00002548:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x0000254a:    2200        ."      MOVS     r2,#0
+        0x0000254c:    4b1a        .K      LDR      r3,[pc,#104] ; [0x25b8] = 0x10004400
+        0x0000254e:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002550:    7e5b        [~      LDRB     r3,[r3,#0x19]
+        0x00002552:    4312        .C      ORRS     r2,r2,r2
+        0x00002554:    4b18        .K      LDR      r3,[pc,#96] ; [0x25b8] = 0x10004400
+        0x00002556:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002558:    7e5b        [~      LDRB     r3,[r3,#0x19]
+        0x0000255a:    431a        .C      ORRS     r2,r2,r3
+        0x0000255c:    0412        ..      LSLS     r2,r2,#16
+        0x0000255e:    4311        .C      ORRS     r1,r1,r2
+        0x00002560:    1c62        b.      ADDS     r2,r4,#1
+        0x00002562:    4614        .F      MOV      r4,r2
+        0x00002564:    4291        .B      CMP      r1,r2
+        0x00002566:    d830        0.      BHI      0x25ca ; ipcTx + 300
+        0x00002568:    4912        .I      LDR      r1,[pc,#72] ; [0x25b4] = 0x10004fe0
+        0x0000256a:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x0000256c:    2100        .!      MOVS     r1,#0
+        0x0000256e:    4a12        .J      LDR      r2,[pc,#72] ; [0x25b8] = 0x10004400
+        0x00002570:    3a20         :      SUBS     r2,r2,#0x20
+        0x00002572:    7d12        .}      LDRB     r2,[r2,#0x14]
+        0x00002574:    4309        .C      ORRS     r1,r1,r1
+        0x00002576:    4a10        .J      LDR      r2,[pc,#64] ; [0x25b8] = 0x10004400
+        0x00002578:    3a20         :      SUBS     r2,r2,#0x20
+        0x0000257a:    7d12        .}      LDRB     r2,[r2,#0x14]
+        0x0000257c:    4311        .C      ORRS     r1,r1,r2
+        0x0000257e:    4a0d        .J      LDR      r2,[pc,#52] ; [0x25b4] = 0x10004fe0
+        0x00002580:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x00002582:    2200        ."      MOVS     r2,#0
+        0x00002584:    4b0c        .K      LDR      r3,[pc,#48] ; [0x25b8] = 0x10004400
+        0x00002586:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002588:    7d5b        [}      LDRB     r3,[r3,#0x15]
+        0x0000258a:    4312        .C      ORRS     r2,r2,r2
+        0x0000258c:    4b0a        .K      LDR      r3,[pc,#40] ; [0x25b8] = 0x10004400
+        0x0000258e:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002590:    7d5b        [}      LDRB     r3,[r3,#0x15]
+        0x00002592:    431a        .C      ORRS     r2,r2,r3
+        0x00002594:    0212        ..      LSLS     r2,r2,#8
+        0x00002596:    4311        .C      ORRS     r1,r1,r2
+        0x00002598:    4a06        .J      LDR      r2,[pc,#24] ; [0x25b4] = 0x10004fe0
+        0x0000259a:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x0000259c:    2200        ."      MOVS     r2,#0
+        0x0000259e:    4b06        .K      LDR      r3,[pc,#24] ; [0x25b8] = 0x10004400
+        0x000025a0:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000025a2:    7d9b        .}      LDRB     r3,[r3,#0x16]
+        0x000025a4:    4312        .C      ORRS     r2,r2,r2
+        0x000025a6:    e009        ..      B        0x25bc ; ipcTx + 286
     $d
-        0x00002594:    10011018    ....    DCD    268505112
-        0x00002598:    10011034    4...    DCD    268505140
-        0x0000259c:    10011014    ....    DCD    268505108
-        0x000025a0:    10004fe0    .O..    DCD    268455904
-        0x000025a4:    10004400    .D..    DCD    268452864
+        0x000025a8:    10011018    ....    DCD    268505112
+        0x000025ac:    10011034    4...    DCD    268505140
+        0x000025b0:    10011014    ....    DCD    268505108
+        0x000025b4:    10004fe0    .O..    DCD    268455904
+        0x000025b8:    10004400    .D..    DCD    268452864
     $t
-        0x000025a8:    4bfe        .K      LDR      r3,[pc,#1016] ; [0x29a4] = 0x10004400
-        0x000025aa:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000025ac:    7d9b        .}      LDRB     r3,[r3,#0x16]
-        0x000025ae:    431a        .C      ORRS     r2,r2,r3
-        0x000025b0:    0412        ..      LSLS     r2,r2,#16
-        0x000025b2:    4311        .C      ORRS     r1,r1,r2
-        0x000025b4:    460c        .F      MOV      r4,r1
-        0x000025b6:    2764        d'      MOVS     r7,#0x64
-        0x000025b8:    bf00        ..      NOP      
-        0x000025ba:    4639        9F      MOV      r1,r7
-        0x000025bc:    1e7f        ..      SUBS     r7,r7,#1
-        0x000025be:    2900        .)      CMP      r1,#0
-        0x000025c0:    d1fb        ..      BNE      0x25ba ; ipcTx + 304
-        0x000025c2:    1c41        A.      ADDS     r1,r0,#1
-        0x000025c4:    b288        ..      UXTH     r0,r1
-        0x000025c6:    42b0        .B      CMP      r0,r6
-        0x000025c8:    db8f        ..      BLT      0x24ea ; ipcTx + 96
-        0x000025ca:    bf00        ..      NOP      
+        0x000025bc:    4bfe        .K      LDR      r3,[pc,#1016] ; [0x29b8] = 0x10004400
+        0x000025be:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000025c0:    7d9b        .}      LDRB     r3,[r3,#0x16]
+        0x000025c2:    431a        .C      ORRS     r2,r2,r3
+        0x000025c4:    0412        ..      LSLS     r2,r2,#16
+        0x000025c6:    4311        .C      ORRS     r1,r1,r2
+        0x000025c8:    460c        .F      MOV      r4,r1
+        0x000025ca:    2764        d'      MOVS     r7,#0x64
         0x000025cc:    bf00        ..      NOP      
-        0x000025ce:    b2e2        ..      UXTB     r2,r4
-        0x000025d0:    48f5        .H      LDR      r0,[pc,#980] ; [0x29a8] = 0x10004fe0
-        0x000025d2:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x000025d4:    2000        .       MOVS     r0,#0
-        0x000025d6:    49f3        .I      LDR      r1,[pc,#972] ; [0x29a4] = 0x10004400
-        0x000025d8:    3920         9      SUBS     r1,r1,#0x20
-        0x000025da:    7e89        .~      LDRB     r1,[r1,#0x1a]
-        0x000025dc:    4300        .C      ORRS     r0,r0,r0
-        0x000025de:    49f1        .I      LDR      r1,[pc,#964] ; [0x29a4] = 0x10004400
-        0x000025e0:    3920         9      SUBS     r1,r1,#0x20
-        0x000025e2:    7e89        .~      LDRB     r1,[r1,#0x1a]
-        0x000025e4:    4308        .C      ORRS     r0,r0,r1
-        0x000025e6:    49f0        .I      LDR      r1,[pc,#960] ; [0x29a8] = 0x10004fe0
-        0x000025e8:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x000025ea:    2100        .!      MOVS     r1,#0
-        0x000025ec:    4bed        .K      LDR      r3,[pc,#948] ; [0x29a4] = 0x10004400
-        0x000025ee:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000025f0:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x000025f2:    4309        .C      ORRS     r1,r1,r1
-        0x000025f4:    4beb        .K      LDR      r3,[pc,#940] ; [0x29a4] = 0x10004400
-        0x000025f6:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000025f8:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x000025fa:    4319        .C      ORRS     r1,r1,r3
-        0x000025fc:    0209        ..      LSLS     r1,r1,#8
-        0x000025fe:    4308        .C      ORRS     r0,r0,r1
-        0x00002600:    49e9        .I      LDR      r1,[pc,#932] ; [0x29a8] = 0x10004fe0
-        0x00002602:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00002604:    2100        .!      MOVS     r1,#0
-        0x00002606:    4be7        .K      LDR      r3,[pc,#924] ; [0x29a4] = 0x10004400
-        0x00002608:    3b20         ;      SUBS     r3,r3,#0x20
-        0x0000260a:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x0000260c:    4309        .C      ORRS     r1,r1,r1
-        0x0000260e:    4be5        .K      LDR      r3,[pc,#916] ; [0x29a4] = 0x10004400
-        0x00002610:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002612:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x00002614:    4319        .C      ORRS     r1,r1,r3
-        0x00002616:    0409        ..      LSLS     r1,r1,#16
-        0x00002618:    4308        .C      ORRS     r0,r0,r1
-        0x0000261a:    2101        .!      MOVS     r1,#1
-        0x0000261c:    0709        ..      LSLS     r1,r1,#28
-        0x0000261e:    1840        @.      ADDS     r0,r0,r1
-        0x00002620:    7002        .p      STRB     r2,[r0,#0]
-        0x00002622:    b2e2        ..      UXTB     r2,r4
-        0x00002624:    48e0        .H      LDR      r0,[pc,#896] ; [0x29a8] = 0x10004fe0
-        0x00002626:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00002628:    2000        .       MOVS     r0,#0
-        0x0000262a:    49de        .I      LDR      r1,[pc,#888] ; [0x29a4] = 0x10004400
-        0x0000262c:    3920         9      SUBS     r1,r1,#0x20
-        0x0000262e:    7e89        .~      LDRB     r1,[r1,#0x1a]
-        0x00002630:    4300        .C      ORRS     r0,r0,r0
-        0x00002632:    49dc        .I      LDR      r1,[pc,#880] ; [0x29a4] = 0x10004400
-        0x00002634:    3920         9      SUBS     r1,r1,#0x20
-        0x00002636:    7e89        .~      LDRB     r1,[r1,#0x1a]
-        0x00002638:    4308        .C      ORRS     r0,r0,r1
-        0x0000263a:    49db        .I      LDR      r1,[pc,#876] ; [0x29a8] = 0x10004fe0
-        0x0000263c:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x0000263e:    2100        .!      MOVS     r1,#0
-        0x00002640:    4bd8        .K      LDR      r3,[pc,#864] ; [0x29a4] = 0x10004400
-        0x00002642:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002644:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x00002646:    4309        .C      ORRS     r1,r1,r1
-        0x00002648:    4bd6        .K      LDR      r3,[pc,#856] ; [0x29a4] = 0x10004400
-        0x0000264a:    3b20         ;      SUBS     r3,r3,#0x20
-        0x0000264c:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x0000264e:    4319        .C      ORRS     r1,r1,r3
-        0x00002650:    0209        ..      LSLS     r1,r1,#8
-        0x00002652:    4308        .C      ORRS     r0,r0,r1
-        0x00002654:    49d4        .I      LDR      r1,[pc,#848] ; [0x29a8] = 0x10004fe0
-        0x00002656:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00002658:    2100        .!      MOVS     r1,#0
-        0x0000265a:    4bd2        .K      LDR      r3,[pc,#840] ; [0x29a4] = 0x10004400
-        0x0000265c:    3b20         ;      SUBS     r3,r3,#0x20
-        0x0000265e:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x00002660:    4309        .C      ORRS     r1,r1,r1
-        0x00002662:    4bd0        .K      LDR      r3,[pc,#832] ; [0x29a4] = 0x10004400
-        0x00002664:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002666:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x00002668:    4319        .C      ORRS     r1,r1,r3
-        0x0000266a:    0409        ..      LSLS     r1,r1,#16
-        0x0000266c:    4308        .C      ORRS     r0,r0,r1
-        0x0000266e:    2101        .!      MOVS     r1,#1
-        0x00002670:    0709        ..      LSLS     r1,r1,#28
-        0x00002672:    1840        @.      ADDS     r0,r0,r1
-        0x00002674:    7002        .p      STRB     r2,[r0,#0]
-        0x00002676:    bf00        ..      NOP      
-        0x00002678:    bf00        ..      NOP      
-        0x0000267a:    0420         .      LSLS     r0,r4,#16
-        0x0000267c:    0e02        ..      LSRS     r2,r0,#24
-        0x0000267e:    48ca        .H      LDR      r0,[pc,#808] ; [0x29a8] = 0x10004fe0
-        0x00002680:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00002682:    2000        .       MOVS     r0,#0
-        0x00002684:    49c7        .I      LDR      r1,[pc,#796] ; [0x29a4] = 0x10004400
-        0x00002686:    3920         9      SUBS     r1,r1,#0x20
-        0x00002688:    7e89        .~      LDRB     r1,[r1,#0x1a]
-        0x0000268a:    4300        .C      ORRS     r0,r0,r0
-        0x0000268c:    49c5        .I      LDR      r1,[pc,#788] ; [0x29a4] = 0x10004400
-        0x0000268e:    3920         9      SUBS     r1,r1,#0x20
-        0x00002690:    7e89        .~      LDRB     r1,[r1,#0x1a]
-        0x00002692:    4308        .C      ORRS     r0,r0,r1
-        0x00002694:    49c4        .I      LDR      r1,[pc,#784] ; [0x29a8] = 0x10004fe0
-        0x00002696:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00002698:    2100        .!      MOVS     r1,#0
-        0x0000269a:    4bc2        .K      LDR      r3,[pc,#776] ; [0x29a4] = 0x10004400
-        0x0000269c:    3b20         ;      SUBS     r3,r3,#0x20
-        0x0000269e:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x000026a0:    4309        .C      ORRS     r1,r1,r1
-        0x000026a2:    4bc0        .K      LDR      r3,[pc,#768] ; [0x29a4] = 0x10004400
-        0x000026a4:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000026a6:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x000026a8:    4319        .C      ORRS     r1,r1,r3
-        0x000026aa:    0209        ..      LSLS     r1,r1,#8
-        0x000026ac:    4308        .C      ORRS     r0,r0,r1
-        0x000026ae:    49be        .I      LDR      r1,[pc,#760] ; [0x29a8] = 0x10004fe0
-        0x000026b0:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x000026b2:    2100        .!      MOVS     r1,#0
-        0x000026b4:    4bbb        .K      LDR      r3,[pc,#748] ; [0x29a4] = 0x10004400
-        0x000026b6:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000026b8:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x000026ba:    4309        .C      ORRS     r1,r1,r1
-        0x000026bc:    4bb9        .K      LDR      r3,[pc,#740] ; [0x29a4] = 0x10004400
-        0x000026be:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000026c0:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x000026c2:    4319        .C      ORRS     r1,r1,r3
-        0x000026c4:    0409        ..      LSLS     r1,r1,#16
-        0x000026c6:    4308        .C      ORRS     r0,r0,r1
-        0x000026c8:    1c40        @.      ADDS     r0,r0,#1
-        0x000026ca:    2101        .!      MOVS     r1,#1
-        0x000026cc:    0709        ..      LSLS     r1,r1,#28
-        0x000026ce:    1840        @.      ADDS     r0,r0,r1
-        0x000026d0:    7002        .p      STRB     r2,[r0,#0]
-        0x000026d2:    0420         .      LSLS     r0,r4,#16
-        0x000026d4:    0e02        ..      LSRS     r2,r0,#24
-        0x000026d6:    48b4        .H      LDR      r0,[pc,#720] ; [0x29a8] = 0x10004fe0
-        0x000026d8:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x000026da:    2000        .       MOVS     r0,#0
-        0x000026dc:    49b1        .I      LDR      r1,[pc,#708] ; [0x29a4] = 0x10004400
-        0x000026de:    3920         9      SUBS     r1,r1,#0x20
-        0x000026e0:    7e89        .~      LDRB     r1,[r1,#0x1a]
-        0x000026e2:    4300        .C      ORRS     r0,r0,r0
-        0x000026e4:    49af        .I      LDR      r1,[pc,#700] ; [0x29a4] = 0x10004400
-        0x000026e6:    3920         9      SUBS     r1,r1,#0x20
-        0x000026e8:    7e89        .~      LDRB     r1,[r1,#0x1a]
-        0x000026ea:    4308        .C      ORRS     r0,r0,r1
-        0x000026ec:    49ae        .I      LDR      r1,[pc,#696] ; [0x29a8] = 0x10004fe0
-        0x000026ee:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x000026f0:    2100        .!      MOVS     r1,#0
-        0x000026f2:    4bac        .K      LDR      r3,[pc,#688] ; [0x29a4] = 0x10004400
-        0x000026f4:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000026f6:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x000026f8:    4309        .C      ORRS     r1,r1,r1
-        0x000026fa:    4baa        .K      LDR      r3,[pc,#680] ; [0x29a4] = 0x10004400
-        0x000026fc:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000026fe:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x00002700:    4319        .C      ORRS     r1,r1,r3
-        0x00002702:    0209        ..      LSLS     r1,r1,#8
-        0x00002704:    4308        .C      ORRS     r0,r0,r1
-        0x00002706:    49a8        .I      LDR      r1,[pc,#672] ; [0x29a8] = 0x10004fe0
-        0x00002708:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x0000270a:    2100        .!      MOVS     r1,#0
-        0x0000270c:    4ba5        .K      LDR      r3,[pc,#660] ; [0x29a4] = 0x10004400
-        0x0000270e:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002710:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x00002712:    4309        .C      ORRS     r1,r1,r1
-        0x00002714:    4ba3        .K      LDR      r3,[pc,#652] ; [0x29a4] = 0x10004400
-        0x00002716:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002718:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x0000271a:    4319        .C      ORRS     r1,r1,r3
-        0x0000271c:    0409        ..      LSLS     r1,r1,#16
-        0x0000271e:    4308        .C      ORRS     r0,r0,r1
-        0x00002720:    1c40        @.      ADDS     r0,r0,#1
-        0x00002722:    2101        .!      MOVS     r1,#1
-        0x00002724:    0709        ..      LSLS     r1,r1,#28
-        0x00002726:    1840        @.      ADDS     r0,r0,r1
-        0x00002728:    7002        .p      STRB     r2,[r0,#0]
-        0x0000272a:    bf00        ..      NOP      
-        0x0000272c:    bf00        ..      NOP      
-        0x0000272e:    0220         .      LSLS     r0,r4,#8
-        0x00002730:    0e02        ..      LSRS     r2,r0,#24
-        0x00002732:    489d        .H      LDR      r0,[pc,#628] ; [0x29a8] = 0x10004fe0
-        0x00002734:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00002736:    2000        .       MOVS     r0,#0
-        0x00002738:    499a        .I      LDR      r1,[pc,#616] ; [0x29a4] = 0x10004400
-        0x0000273a:    3920         9      SUBS     r1,r1,#0x20
-        0x0000273c:    7e89        .~      LDRB     r1,[r1,#0x1a]
-        0x0000273e:    4300        .C      ORRS     r0,r0,r0
-        0x00002740:    4998        .I      LDR      r1,[pc,#608] ; [0x29a4] = 0x10004400
-        0x00002742:    3920         9      SUBS     r1,r1,#0x20
-        0x00002744:    7e89        .~      LDRB     r1,[r1,#0x1a]
-        0x00002746:    4308        .C      ORRS     r0,r0,r1
-        0x00002748:    4997        .I      LDR      r1,[pc,#604] ; [0x29a8] = 0x10004fe0
-        0x0000274a:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x0000274c:    2100        .!      MOVS     r1,#0
-        0x0000274e:    4b95        .K      LDR      r3,[pc,#596] ; [0x29a4] = 0x10004400
-        0x00002750:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002752:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x00002754:    4309        .C      ORRS     r1,r1,r1
-        0x00002756:    4b93        .K      LDR      r3,[pc,#588] ; [0x29a4] = 0x10004400
-        0x00002758:    3b20         ;      SUBS     r3,r3,#0x20
-        0x0000275a:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x0000275c:    4319        .C      ORRS     r1,r1,r3
-        0x0000275e:    0209        ..      LSLS     r1,r1,#8
-        0x00002760:    4308        .C      ORRS     r0,r0,r1
-        0x00002762:    4991        .I      LDR      r1,[pc,#580] ; [0x29a8] = 0x10004fe0
-        0x00002764:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00002766:    2100        .!      MOVS     r1,#0
-        0x00002768:    4b8e        .K      LDR      r3,[pc,#568] ; [0x29a4] = 0x10004400
-        0x0000276a:    3b20         ;      SUBS     r3,r3,#0x20
-        0x0000276c:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x0000276e:    4309        .C      ORRS     r1,r1,r1
-        0x00002770:    4b8c        .K      LDR      r3,[pc,#560] ; [0x29a4] = 0x10004400
-        0x00002772:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002774:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x00002776:    4319        .C      ORRS     r1,r1,r3
-        0x00002778:    0409        ..      LSLS     r1,r1,#16
-        0x0000277a:    4308        .C      ORRS     r0,r0,r1
-        0x0000277c:    1c80        ..      ADDS     r0,r0,#2
-        0x0000277e:    2101        .!      MOVS     r1,#1
-        0x00002780:    0709        ..      LSLS     r1,r1,#28
-        0x00002782:    1840        @.      ADDS     r0,r0,r1
-        0x00002784:    7002        .p      STRB     r2,[r0,#0]
-        0x00002786:    0220         .      LSLS     r0,r4,#8
-        0x00002788:    0e02        ..      LSRS     r2,r0,#24
-        0x0000278a:    4887        .H      LDR      r0,[pc,#540] ; [0x29a8] = 0x10004fe0
-        0x0000278c:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x0000278e:    2000        .       MOVS     r0,#0
-        0x00002790:    4984        .I      LDR      r1,[pc,#528] ; [0x29a4] = 0x10004400
-        0x00002792:    3920         9      SUBS     r1,r1,#0x20
-        0x00002794:    7e89        .~      LDRB     r1,[r1,#0x1a]
-        0x00002796:    4300        .C      ORRS     r0,r0,r0
-        0x00002798:    4982        .I      LDR      r1,[pc,#520] ; [0x29a4] = 0x10004400
-        0x0000279a:    3920         9      SUBS     r1,r1,#0x20
-        0x0000279c:    7e89        .~      LDRB     r1,[r1,#0x1a]
-        0x0000279e:    4308        .C      ORRS     r0,r0,r1
-        0x000027a0:    4981        .I      LDR      r1,[pc,#516] ; [0x29a8] = 0x10004fe0
-        0x000027a2:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x000027a4:    2100        .!      MOVS     r1,#0
-        0x000027a6:    4b7f        .K      LDR      r3,[pc,#508] ; [0x29a4] = 0x10004400
-        0x000027a8:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000027aa:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x000027ac:    4309        .C      ORRS     r1,r1,r1
-        0x000027ae:    4b7d        }K      LDR      r3,[pc,#500] ; [0x29a4] = 0x10004400
-        0x000027b0:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000027b2:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x000027b4:    4319        .C      ORRS     r1,r1,r3
-        0x000027b6:    0209        ..      LSLS     r1,r1,#8
-        0x000027b8:    4308        .C      ORRS     r0,r0,r1
-        0x000027ba:    497b        {I      LDR      r1,[pc,#492] ; [0x29a8] = 0x10004fe0
-        0x000027bc:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x000027be:    2100        .!      MOVS     r1,#0
-        0x000027c0:    4b78        xK      LDR      r3,[pc,#480] ; [0x29a4] = 0x10004400
-        0x000027c2:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000027c4:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x000027c6:    4309        .C      ORRS     r1,r1,r1
-        0x000027c8:    4b76        vK      LDR      r3,[pc,#472] ; [0x29a4] = 0x10004400
-        0x000027ca:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000027cc:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x000027ce:    4319        .C      ORRS     r1,r1,r3
-        0x000027d0:    0409        ..      LSLS     r1,r1,#16
-        0x000027d2:    4308        .C      ORRS     r0,r0,r1
-        0x000027d4:    1c80        ..      ADDS     r0,r0,#2
-        0x000027d6:    2101        .!      MOVS     r1,#1
-        0x000027d8:    0709        ..      LSLS     r1,r1,#28
-        0x000027da:    1840        @.      ADDS     r0,r0,r1
-        0x000027dc:    7002        .p      STRB     r2,[r0,#0]
-        0x000027de:    bf00        ..      NOP      
-        0x000027e0:    bf00        ..      NOP      
-        0x000027e2:    bdf8        ..      POP      {r3-r7,pc}
+        0x000025ce:    4639        9F      MOV      r1,r7
+        0x000025d0:    1e7f        ..      SUBS     r7,r7,#1
+        0x000025d2:    2900        .)      CMP      r1,#0
+        0x000025d4:    d1fb        ..      BNE      0x25ce ; ipcTx + 304
+        0x000025d6:    1c41        A.      ADDS     r1,r0,#1
+        0x000025d8:    b288        ..      UXTH     r0,r1
+        0x000025da:    42b0        .B      CMP      r0,r6
+        0x000025dc:    db8f        ..      BLT      0x24fe ; ipcTx + 96
+        0x000025de:    bf00        ..      NOP      
+        0x000025e0:    bf00        ..      NOP      
+        0x000025e2:    b2e2        ..      UXTB     r2,r4
+        0x000025e4:    48f5        .H      LDR      r0,[pc,#980] ; [0x29bc] = 0x10004fe0
+        0x000025e6:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x000025e8:    2000        .       MOVS     r0,#0
+        0x000025ea:    49f3        .I      LDR      r1,[pc,#972] ; [0x29b8] = 0x10004400
+        0x000025ec:    3920         9      SUBS     r1,r1,#0x20
+        0x000025ee:    7e89        .~      LDRB     r1,[r1,#0x1a]
+        0x000025f0:    4300        .C      ORRS     r0,r0,r0
+        0x000025f2:    49f1        .I      LDR      r1,[pc,#964] ; [0x29b8] = 0x10004400
+        0x000025f4:    3920         9      SUBS     r1,r1,#0x20
+        0x000025f6:    7e89        .~      LDRB     r1,[r1,#0x1a]
+        0x000025f8:    4308        .C      ORRS     r0,r0,r1
+        0x000025fa:    49f0        .I      LDR      r1,[pc,#960] ; [0x29bc] = 0x10004fe0
+        0x000025fc:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x000025fe:    2100        .!      MOVS     r1,#0
+        0x00002600:    4bed        .K      LDR      r3,[pc,#948] ; [0x29b8] = 0x10004400
+        0x00002602:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002604:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x00002606:    4309        .C      ORRS     r1,r1,r1
+        0x00002608:    4beb        .K      LDR      r3,[pc,#940] ; [0x29b8] = 0x10004400
+        0x0000260a:    3b20         ;      SUBS     r3,r3,#0x20
+        0x0000260c:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x0000260e:    4319        .C      ORRS     r1,r1,r3
+        0x00002610:    0209        ..      LSLS     r1,r1,#8
+        0x00002612:    4308        .C      ORRS     r0,r0,r1
+        0x00002614:    49e9        .I      LDR      r1,[pc,#932] ; [0x29bc] = 0x10004fe0
+        0x00002616:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002618:    2100        .!      MOVS     r1,#0
+        0x0000261a:    4be7        .K      LDR      r3,[pc,#924] ; [0x29b8] = 0x10004400
+        0x0000261c:    3b20         ;      SUBS     r3,r3,#0x20
+        0x0000261e:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x00002620:    4309        .C      ORRS     r1,r1,r1
+        0x00002622:    4be5        .K      LDR      r3,[pc,#916] ; [0x29b8] = 0x10004400
+        0x00002624:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002626:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x00002628:    4319        .C      ORRS     r1,r1,r3
+        0x0000262a:    0409        ..      LSLS     r1,r1,#16
+        0x0000262c:    4308        .C      ORRS     r0,r0,r1
+        0x0000262e:    2101        .!      MOVS     r1,#1
+        0x00002630:    0709        ..      LSLS     r1,r1,#28
+        0x00002632:    1840        @.      ADDS     r0,r0,r1
+        0x00002634:    7002        .p      STRB     r2,[r0,#0]
+        0x00002636:    b2e2        ..      UXTB     r2,r4
+        0x00002638:    48e0        .H      LDR      r0,[pc,#896] ; [0x29bc] = 0x10004fe0
+        0x0000263a:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x0000263c:    2000        .       MOVS     r0,#0
+        0x0000263e:    49de        .I      LDR      r1,[pc,#888] ; [0x29b8] = 0x10004400
+        0x00002640:    3920         9      SUBS     r1,r1,#0x20
+        0x00002642:    7e89        .~      LDRB     r1,[r1,#0x1a]
+        0x00002644:    4300        .C      ORRS     r0,r0,r0
+        0x00002646:    49dc        .I      LDR      r1,[pc,#880] ; [0x29b8] = 0x10004400
+        0x00002648:    3920         9      SUBS     r1,r1,#0x20
+        0x0000264a:    7e89        .~      LDRB     r1,[r1,#0x1a]
+        0x0000264c:    4308        .C      ORRS     r0,r0,r1
+        0x0000264e:    49db        .I      LDR      r1,[pc,#876] ; [0x29bc] = 0x10004fe0
+        0x00002650:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002652:    2100        .!      MOVS     r1,#0
+        0x00002654:    4bd8        .K      LDR      r3,[pc,#864] ; [0x29b8] = 0x10004400
+        0x00002656:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002658:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x0000265a:    4309        .C      ORRS     r1,r1,r1
+        0x0000265c:    4bd6        .K      LDR      r3,[pc,#856] ; [0x29b8] = 0x10004400
+        0x0000265e:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002660:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x00002662:    4319        .C      ORRS     r1,r1,r3
+        0x00002664:    0209        ..      LSLS     r1,r1,#8
+        0x00002666:    4308        .C      ORRS     r0,r0,r1
+        0x00002668:    49d4        .I      LDR      r1,[pc,#848] ; [0x29bc] = 0x10004fe0
+        0x0000266a:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x0000266c:    2100        .!      MOVS     r1,#0
+        0x0000266e:    4bd2        .K      LDR      r3,[pc,#840] ; [0x29b8] = 0x10004400
+        0x00002670:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002672:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x00002674:    4309        .C      ORRS     r1,r1,r1
+        0x00002676:    4bd0        .K      LDR      r3,[pc,#832] ; [0x29b8] = 0x10004400
+        0x00002678:    3b20         ;      SUBS     r3,r3,#0x20
+        0x0000267a:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x0000267c:    4319        .C      ORRS     r1,r1,r3
+        0x0000267e:    0409        ..      LSLS     r1,r1,#16
+        0x00002680:    4308        .C      ORRS     r0,r0,r1
+        0x00002682:    2101        .!      MOVS     r1,#1
+        0x00002684:    0709        ..      LSLS     r1,r1,#28
+        0x00002686:    1840        @.      ADDS     r0,r0,r1
+        0x00002688:    7002        .p      STRB     r2,[r0,#0]
+        0x0000268a:    bf00        ..      NOP      
+        0x0000268c:    bf00        ..      NOP      
+        0x0000268e:    0420         .      LSLS     r0,r4,#16
+        0x00002690:    0e02        ..      LSRS     r2,r0,#24
+        0x00002692:    48ca        .H      LDR      r0,[pc,#808] ; [0x29bc] = 0x10004fe0
+        0x00002694:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x00002696:    2000        .       MOVS     r0,#0
+        0x00002698:    49c7        .I      LDR      r1,[pc,#796] ; [0x29b8] = 0x10004400
+        0x0000269a:    3920         9      SUBS     r1,r1,#0x20
+        0x0000269c:    7e89        .~      LDRB     r1,[r1,#0x1a]
+        0x0000269e:    4300        .C      ORRS     r0,r0,r0
+        0x000026a0:    49c5        .I      LDR      r1,[pc,#788] ; [0x29b8] = 0x10004400
+        0x000026a2:    3920         9      SUBS     r1,r1,#0x20
+        0x000026a4:    7e89        .~      LDRB     r1,[r1,#0x1a]
+        0x000026a6:    4308        .C      ORRS     r0,r0,r1
+        0x000026a8:    49c4        .I      LDR      r1,[pc,#784] ; [0x29bc] = 0x10004fe0
+        0x000026aa:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x000026ac:    2100        .!      MOVS     r1,#0
+        0x000026ae:    4bc2        .K      LDR      r3,[pc,#776] ; [0x29b8] = 0x10004400
+        0x000026b0:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000026b2:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x000026b4:    4309        .C      ORRS     r1,r1,r1
+        0x000026b6:    4bc0        .K      LDR      r3,[pc,#768] ; [0x29b8] = 0x10004400
+        0x000026b8:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000026ba:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x000026bc:    4319        .C      ORRS     r1,r1,r3
+        0x000026be:    0209        ..      LSLS     r1,r1,#8
+        0x000026c0:    4308        .C      ORRS     r0,r0,r1
+        0x000026c2:    49be        .I      LDR      r1,[pc,#760] ; [0x29bc] = 0x10004fe0
+        0x000026c4:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x000026c6:    2100        .!      MOVS     r1,#0
+        0x000026c8:    4bbb        .K      LDR      r3,[pc,#748] ; [0x29b8] = 0x10004400
+        0x000026ca:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000026cc:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x000026ce:    4309        .C      ORRS     r1,r1,r1
+        0x000026d0:    4bb9        .K      LDR      r3,[pc,#740] ; [0x29b8] = 0x10004400
+        0x000026d2:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000026d4:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x000026d6:    4319        .C      ORRS     r1,r1,r3
+        0x000026d8:    0409        ..      LSLS     r1,r1,#16
+        0x000026da:    4308        .C      ORRS     r0,r0,r1
+        0x000026dc:    1c40        @.      ADDS     r0,r0,#1
+        0x000026de:    2101        .!      MOVS     r1,#1
+        0x000026e0:    0709        ..      LSLS     r1,r1,#28
+        0x000026e2:    1840        @.      ADDS     r0,r0,r1
+        0x000026e4:    7002        .p      STRB     r2,[r0,#0]
+        0x000026e6:    0420         .      LSLS     r0,r4,#16
+        0x000026e8:    0e02        ..      LSRS     r2,r0,#24
+        0x000026ea:    48b4        .H      LDR      r0,[pc,#720] ; [0x29bc] = 0x10004fe0
+        0x000026ec:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x000026ee:    2000        .       MOVS     r0,#0
+        0x000026f0:    49b1        .I      LDR      r1,[pc,#708] ; [0x29b8] = 0x10004400
+        0x000026f2:    3920         9      SUBS     r1,r1,#0x20
+        0x000026f4:    7e89        .~      LDRB     r1,[r1,#0x1a]
+        0x000026f6:    4300        .C      ORRS     r0,r0,r0
+        0x000026f8:    49af        .I      LDR      r1,[pc,#700] ; [0x29b8] = 0x10004400
+        0x000026fa:    3920         9      SUBS     r1,r1,#0x20
+        0x000026fc:    7e89        .~      LDRB     r1,[r1,#0x1a]
+        0x000026fe:    4308        .C      ORRS     r0,r0,r1
+        0x00002700:    49ae        .I      LDR      r1,[pc,#696] ; [0x29bc] = 0x10004fe0
+        0x00002702:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002704:    2100        .!      MOVS     r1,#0
+        0x00002706:    4bac        .K      LDR      r3,[pc,#688] ; [0x29b8] = 0x10004400
+        0x00002708:    3b20         ;      SUBS     r3,r3,#0x20
+        0x0000270a:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x0000270c:    4309        .C      ORRS     r1,r1,r1
+        0x0000270e:    4baa        .K      LDR      r3,[pc,#680] ; [0x29b8] = 0x10004400
+        0x00002710:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002712:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x00002714:    4319        .C      ORRS     r1,r1,r3
+        0x00002716:    0209        ..      LSLS     r1,r1,#8
+        0x00002718:    4308        .C      ORRS     r0,r0,r1
+        0x0000271a:    49a8        .I      LDR      r1,[pc,#672] ; [0x29bc] = 0x10004fe0
+        0x0000271c:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x0000271e:    2100        .!      MOVS     r1,#0
+        0x00002720:    4ba5        .K      LDR      r3,[pc,#660] ; [0x29b8] = 0x10004400
+        0x00002722:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002724:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x00002726:    4309        .C      ORRS     r1,r1,r1
+        0x00002728:    4ba3        .K      LDR      r3,[pc,#652] ; [0x29b8] = 0x10004400
+        0x0000272a:    3b20         ;      SUBS     r3,r3,#0x20
+        0x0000272c:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x0000272e:    4319        .C      ORRS     r1,r1,r3
+        0x00002730:    0409        ..      LSLS     r1,r1,#16
+        0x00002732:    4308        .C      ORRS     r0,r0,r1
+        0x00002734:    1c40        @.      ADDS     r0,r0,#1
+        0x00002736:    2101        .!      MOVS     r1,#1
+        0x00002738:    0709        ..      LSLS     r1,r1,#28
+        0x0000273a:    1840        @.      ADDS     r0,r0,r1
+        0x0000273c:    7002        .p      STRB     r2,[r0,#0]
+        0x0000273e:    bf00        ..      NOP      
+        0x00002740:    bf00        ..      NOP      
+        0x00002742:    0220         .      LSLS     r0,r4,#8
+        0x00002744:    0e02        ..      LSRS     r2,r0,#24
+        0x00002746:    489d        .H      LDR      r0,[pc,#628] ; [0x29bc] = 0x10004fe0
+        0x00002748:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x0000274a:    2000        .       MOVS     r0,#0
+        0x0000274c:    499a        .I      LDR      r1,[pc,#616] ; [0x29b8] = 0x10004400
+        0x0000274e:    3920         9      SUBS     r1,r1,#0x20
+        0x00002750:    7e89        .~      LDRB     r1,[r1,#0x1a]
+        0x00002752:    4300        .C      ORRS     r0,r0,r0
+        0x00002754:    4998        .I      LDR      r1,[pc,#608] ; [0x29b8] = 0x10004400
+        0x00002756:    3920         9      SUBS     r1,r1,#0x20
+        0x00002758:    7e89        .~      LDRB     r1,[r1,#0x1a]
+        0x0000275a:    4308        .C      ORRS     r0,r0,r1
+        0x0000275c:    4997        .I      LDR      r1,[pc,#604] ; [0x29bc] = 0x10004fe0
+        0x0000275e:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002760:    2100        .!      MOVS     r1,#0
+        0x00002762:    4b95        .K      LDR      r3,[pc,#596] ; [0x29b8] = 0x10004400
+        0x00002764:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002766:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x00002768:    4309        .C      ORRS     r1,r1,r1
+        0x0000276a:    4b93        .K      LDR      r3,[pc,#588] ; [0x29b8] = 0x10004400
+        0x0000276c:    3b20         ;      SUBS     r3,r3,#0x20
+        0x0000276e:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x00002770:    4319        .C      ORRS     r1,r1,r3
+        0x00002772:    0209        ..      LSLS     r1,r1,#8
+        0x00002774:    4308        .C      ORRS     r0,r0,r1
+        0x00002776:    4991        .I      LDR      r1,[pc,#580] ; [0x29bc] = 0x10004fe0
+        0x00002778:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x0000277a:    2100        .!      MOVS     r1,#0
+        0x0000277c:    4b8e        .K      LDR      r3,[pc,#568] ; [0x29b8] = 0x10004400
+        0x0000277e:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002780:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x00002782:    4309        .C      ORRS     r1,r1,r1
+        0x00002784:    4b8c        .K      LDR      r3,[pc,#560] ; [0x29b8] = 0x10004400
+        0x00002786:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002788:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x0000278a:    4319        .C      ORRS     r1,r1,r3
+        0x0000278c:    0409        ..      LSLS     r1,r1,#16
+        0x0000278e:    4308        .C      ORRS     r0,r0,r1
+        0x00002790:    1c80        ..      ADDS     r0,r0,#2
+        0x00002792:    2101        .!      MOVS     r1,#1
+        0x00002794:    0709        ..      LSLS     r1,r1,#28
+        0x00002796:    1840        @.      ADDS     r0,r0,r1
+        0x00002798:    7002        .p      STRB     r2,[r0,#0]
+        0x0000279a:    0220         .      LSLS     r0,r4,#8
+        0x0000279c:    0e02        ..      LSRS     r2,r0,#24
+        0x0000279e:    4887        .H      LDR      r0,[pc,#540] ; [0x29bc] = 0x10004fe0
+        0x000027a0:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x000027a2:    2000        .       MOVS     r0,#0
+        0x000027a4:    4984        .I      LDR      r1,[pc,#528] ; [0x29b8] = 0x10004400
+        0x000027a6:    3920         9      SUBS     r1,r1,#0x20
+        0x000027a8:    7e89        .~      LDRB     r1,[r1,#0x1a]
+        0x000027aa:    4300        .C      ORRS     r0,r0,r0
+        0x000027ac:    4982        .I      LDR      r1,[pc,#520] ; [0x29b8] = 0x10004400
+        0x000027ae:    3920         9      SUBS     r1,r1,#0x20
+        0x000027b0:    7e89        .~      LDRB     r1,[r1,#0x1a]
+        0x000027b2:    4308        .C      ORRS     r0,r0,r1
+        0x000027b4:    4981        .I      LDR      r1,[pc,#516] ; [0x29bc] = 0x10004fe0
+        0x000027b6:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x000027b8:    2100        .!      MOVS     r1,#0
+        0x000027ba:    4b7f        .K      LDR      r3,[pc,#508] ; [0x29b8] = 0x10004400
+        0x000027bc:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000027be:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x000027c0:    4309        .C      ORRS     r1,r1,r1
+        0x000027c2:    4b7d        }K      LDR      r3,[pc,#500] ; [0x29b8] = 0x10004400
+        0x000027c4:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000027c6:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x000027c8:    4319        .C      ORRS     r1,r1,r3
+        0x000027ca:    0209        ..      LSLS     r1,r1,#8
+        0x000027cc:    4308        .C      ORRS     r0,r0,r1
+        0x000027ce:    497b        {I      LDR      r1,[pc,#492] ; [0x29bc] = 0x10004fe0
+        0x000027d0:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x000027d2:    2100        .!      MOVS     r1,#0
+        0x000027d4:    4b78        xK      LDR      r3,[pc,#480] ; [0x29b8] = 0x10004400
+        0x000027d6:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000027d8:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x000027da:    4309        .C      ORRS     r1,r1,r1
+        0x000027dc:    4b76        vK      LDR      r3,[pc,#472] ; [0x29b8] = 0x10004400
+        0x000027de:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000027e0:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x000027e2:    4319        .C      ORRS     r1,r1,r3
+        0x000027e4:    0409        ..      LSLS     r1,r1,#16
+        0x000027e6:    4308        .C      ORRS     r0,r0,r1
+        0x000027e8:    1c80        ..      ADDS     r0,r0,#2
+        0x000027ea:    2101        .!      MOVS     r1,#1
+        0x000027ec:    0709        ..      LSLS     r1,r1,#28
+        0x000027ee:    1840        @.      ADDS     r0,r0,r1
+        0x000027f0:    7002        .p      STRB     r2,[r0,#0]
+        0x000027f2:    bf00        ..      NOP      
+        0x000027f4:    bf00        ..      NOP      
+        0x000027f6:    bdf8        ..      POP      {r3-r7,pc}
     IPC_TxBufferIsEnough
-        0x000027e4:    b570        p.      PUSH     {r4-r6,lr}
-        0x000027e6:    4604        .F      MOV      r4,r0
-        0x000027e8:    496f        oI      LDR      r1,[pc,#444] ; [0x29a8] = 0x10004fe0
-        0x000027ea:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x000027ec:    2100        .!      MOVS     r1,#0
-        0x000027ee:    4a6d        mJ      LDR      r2,[pc,#436] ; [0x29a4] = 0x10004400
-        0x000027f0:    3a20         :      SUBS     r2,r2,#0x20
-        0x000027f2:    7e92        .~      LDRB     r2,[r2,#0x1a]
-        0x000027f4:    4309        .C      ORRS     r1,r1,r1
-        0x000027f6:    4a6b        kJ      LDR      r2,[pc,#428] ; [0x29a4] = 0x10004400
-        0x000027f8:    3a20         :      SUBS     r2,r2,#0x20
-        0x000027fa:    7e92        .~      LDRB     r2,[r2,#0x1a]
-        0x000027fc:    4311        .C      ORRS     r1,r1,r2
-        0x000027fe:    4a6a        jJ      LDR      r2,[pc,#424] ; [0x29a8] = 0x10004fe0
-        0x00002800:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x00002802:    2200        ."      MOVS     r2,#0
-        0x00002804:    4b67        gK      LDR      r3,[pc,#412] ; [0x29a4] = 0x10004400
-        0x00002806:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002808:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x0000280a:    4312        .C      ORRS     r2,r2,r2
-        0x0000280c:    4b65        eK      LDR      r3,[pc,#404] ; [0x29a4] = 0x10004400
-        0x0000280e:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002810:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x00002812:    431a        .C      ORRS     r2,r2,r3
-        0x00002814:    0212        ..      LSLS     r2,r2,#8
-        0x00002816:    4311        .C      ORRS     r1,r1,r2
-        0x00002818:    4a63        cJ      LDR      r2,[pc,#396] ; [0x29a8] = 0x10004fe0
-        0x0000281a:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x0000281c:    2200        ."      MOVS     r2,#0
-        0x0000281e:    4b61        aK      LDR      r3,[pc,#388] ; [0x29a4] = 0x10004400
-        0x00002820:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002822:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x00002824:    4312        .C      ORRS     r2,r2,r2
-        0x00002826:    4b5f        _K      LDR      r3,[pc,#380] ; [0x29a4] = 0x10004400
-        0x00002828:    3b20         ;      SUBS     r3,r3,#0x20
-        0x0000282a:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x0000282c:    431a        .C      ORRS     r2,r2,r3
-        0x0000282e:    0412        ..      LSLS     r2,r2,#16
-        0x00002830:    4311        .C      ORRS     r1,r1,r2
-        0x00002832:    2201        ."      MOVS     r2,#1
-        0x00002834:    0712        ..      LSLS     r2,r2,#28
-        0x00002836:    1888        ..      ADDS     r0,r1,r2
-        0x00002838:    f000fa3d    ..=.    BL       HR_REG_24BIT ; 0x2cb6
-        0x0000283c:    4605        .F      MOV      r5,r0
-        0x0000283e:    495a        ZI      LDR      r1,[pc,#360] ; [0x29a8] = 0x10004fe0
-        0x00002840:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00002842:    2100        .!      MOVS     r1,#0
-        0x00002844:    4a57        WJ      LDR      r2,[pc,#348] ; [0x29a4] = 0x10004400
-        0x00002846:    3a20         :      SUBS     r2,r2,#0x20
-        0x00002848:    7f52        R.      LDRB     r2,[r2,#0x1d]
-        0x0000284a:    4309        .C      ORRS     r1,r1,r1
-        0x0000284c:    4a55        UJ      LDR      r2,[pc,#340] ; [0x29a4] = 0x10004400
-        0x0000284e:    3a20         :      SUBS     r2,r2,#0x20
-        0x00002850:    7f52        R.      LDRB     r2,[r2,#0x1d]
-        0x00002852:    4311        .C      ORRS     r1,r1,r2
-        0x00002854:    4a54        TJ      LDR      r2,[pc,#336] ; [0x29a8] = 0x10004fe0
-        0x00002856:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x00002858:    2200        ."      MOVS     r2,#0
-        0x0000285a:    4b52        RK      LDR      r3,[pc,#328] ; [0x29a4] = 0x10004400
-        0x0000285c:    3b20         ;      SUBS     r3,r3,#0x20
-        0x0000285e:    7f9b        ..      LDRB     r3,[r3,#0x1e]
-        0x00002860:    4312        .C      ORRS     r2,r2,r2
-        0x00002862:    4b50        PK      LDR      r3,[pc,#320] ; [0x29a4] = 0x10004400
-        0x00002864:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002866:    7f9b        ..      LDRB     r3,[r3,#0x1e]
-        0x00002868:    431a        .C      ORRS     r2,r2,r3
-        0x0000286a:    0212        ..      LSLS     r2,r2,#8
-        0x0000286c:    4311        .C      ORRS     r1,r1,r2
-        0x0000286e:    4a4e        NJ      LDR      r2,[pc,#312] ; [0x29a8] = 0x10004fe0
-        0x00002870:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x00002872:    2200        ."      MOVS     r2,#0
-        0x00002874:    4b4b        KK      LDR      r3,[pc,#300] ; [0x29a4] = 0x10004400
-        0x00002876:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002878:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x0000287a:    4312        .C      ORRS     r2,r2,r2
-        0x0000287c:    4b49        IK      LDR      r3,[pc,#292] ; [0x29a4] = 0x10004400
-        0x0000287e:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002880:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x00002882:    431a        .C      ORRS     r2,r2,r3
-        0x00002884:    0412        ..      LSLS     r2,r2,#16
-        0x00002886:    4311        .C      ORRS     r1,r1,r2
-        0x00002888:    2201        ."      MOVS     r2,#1
-        0x0000288a:    0712        ..      LSLS     r2,r2,#28
-        0x0000288c:    1888        ..      ADDS     r0,r1,r2
-        0x0000288e:    f000fa12    ....    BL       HR_REG_24BIT ; 0x2cb6
-        0x00002892:    4606        .F      MOV      r6,r0
-        0x00002894:    2100        .!      MOVS     r1,#0
-        0x00002896:    e054        T.      B        0x2942 ; IPC_TxBufferIsEnough + 350
-        0x00002898:    4843        CH      LDR      r0,[pc,#268] ; [0x29a8] = 0x10004fe0
-        0x0000289a:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x0000289c:    2000        .       MOVS     r0,#0
-        0x0000289e:    4a41        AJ      LDR      r2,[pc,#260] ; [0x29a4] = 0x10004400
-        0x000028a0:    3a20         :      SUBS     r2,r2,#0x20
-        0x000028a2:    7dd2        .}      LDRB     r2,[r2,#0x17]
-        0x000028a4:    4300        .C      ORRS     r0,r0,r0
-        0x000028a6:    4a3f        ?J      LDR      r2,[pc,#252] ; [0x29a4] = 0x10004400
-        0x000028a8:    3a20         :      SUBS     r2,r2,#0x20
-        0x000028aa:    7dd2        .}      LDRB     r2,[r2,#0x17]
-        0x000028ac:    4310        .C      ORRS     r0,r0,r2
-        0x000028ae:    4a3e        >J      LDR      r2,[pc,#248] ; [0x29a8] = 0x10004fe0
-        0x000028b0:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x000028b2:    2200        ."      MOVS     r2,#0
-        0x000028b4:    4b3b        ;K      LDR      r3,[pc,#236] ; [0x29a4] = 0x10004400
-        0x000028b6:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000028b8:    7e1b        .~      LDRB     r3,[r3,#0x18]
-        0x000028ba:    4312        .C      ORRS     r2,r2,r2
-        0x000028bc:    4b39        9K      LDR      r3,[pc,#228] ; [0x29a4] = 0x10004400
-        0x000028be:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000028c0:    7e1b        .~      LDRB     r3,[r3,#0x18]
-        0x000028c2:    431a        .C      ORRS     r2,r2,r3
-        0x000028c4:    0212        ..      LSLS     r2,r2,#8
-        0x000028c6:    4310        .C      ORRS     r0,r0,r2
-        0x000028c8:    4a37        7J      LDR      r2,[pc,#220] ; [0x29a8] = 0x10004fe0
-        0x000028ca:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x000028cc:    2200        ."      MOVS     r2,#0
-        0x000028ce:    4b35        5K      LDR      r3,[pc,#212] ; [0x29a4] = 0x10004400
-        0x000028d0:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000028d2:    7e5b        [~      LDRB     r3,[r3,#0x19]
-        0x000028d4:    4312        .C      ORRS     r2,r2,r2
-        0x000028d6:    4b33        3K      LDR      r3,[pc,#204] ; [0x29a4] = 0x10004400
-        0x000028d8:    3b20         ;      SUBS     r3,r3,#0x20
-        0x000028da:    7e5b        [~      LDRB     r3,[r3,#0x19]
-        0x000028dc:    431a        .C      ORRS     r2,r2,r3
-        0x000028de:    0412        ..      LSLS     r2,r2,#16
-        0x000028e0:    4310        .C      ORRS     r0,r0,r2
-        0x000028e2:    1c6a        j.      ADDS     r2,r5,#1
-        0x000028e4:    4615        .F      MOV      r5,r2
-        0x000028e6:    4290        .B      CMP      r0,r2
-        0x000028e8:    d825        %.      BHI      0x2936 ; IPC_TxBufferIsEnough + 338
-        0x000028ea:    482f        /H      LDR      r0,[pc,#188] ; [0x29a8] = 0x10004fe0
-        0x000028ec:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x000028ee:    2000        .       MOVS     r0,#0
-        0x000028f0:    4a2c        ,J      LDR      r2,[pc,#176] ; [0x29a4] = 0x10004400
-        0x000028f2:    3a20         :      SUBS     r2,r2,#0x20
-        0x000028f4:    7d12        .}      LDRB     r2,[r2,#0x14]
-        0x000028f6:    4300        .C      ORRS     r0,r0,r0
-        0x000028f8:    4a2a        *J      LDR      r2,[pc,#168] ; [0x29a4] = 0x10004400
-        0x000028fa:    3a20         :      SUBS     r2,r2,#0x20
-        0x000028fc:    7d12        .}      LDRB     r2,[r2,#0x14]
-        0x000028fe:    4310        .C      ORRS     r0,r0,r2
-        0x00002900:    4a29        )J      LDR      r2,[pc,#164] ; [0x29a8] = 0x10004fe0
-        0x00002902:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x00002904:    2200        ."      MOVS     r2,#0
-        0x00002906:    4b27        'K      LDR      r3,[pc,#156] ; [0x29a4] = 0x10004400
-        0x00002908:    3b20         ;      SUBS     r3,r3,#0x20
-        0x0000290a:    7d5b        [}      LDRB     r3,[r3,#0x15]
-        0x0000290c:    4312        .C      ORRS     r2,r2,r2
-        0x0000290e:    4b25        %K      LDR      r3,[pc,#148] ; [0x29a4] = 0x10004400
-        0x00002910:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002912:    7d5b        [}      LDRB     r3,[r3,#0x15]
-        0x00002914:    431a        .C      ORRS     r2,r2,r3
-        0x00002916:    0212        ..      LSLS     r2,r2,#8
-        0x00002918:    4310        .C      ORRS     r0,r0,r2
-        0x0000291a:    4a23        #J      LDR      r2,[pc,#140] ; [0x29a8] = 0x10004fe0
-        0x0000291c:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x0000291e:    2200        ."      MOVS     r2,#0
-        0x00002920:    4b20         K      LDR      r3,[pc,#128] ; [0x29a4] = 0x10004400
-        0x00002922:    3b20         ;      SUBS     r3,r3,#0x20
-        0x00002924:    7d9b        .}      LDRB     r3,[r3,#0x16]
-        0x00002926:    4312        .C      ORRS     r2,r2,r2
-        0x00002928:    4b1e        .K      LDR      r3,[pc,#120] ; [0x29a4] = 0x10004400
-        0x0000292a:    3b20         ;      SUBS     r3,r3,#0x20
-        0x0000292c:    7d9b        .}      LDRB     r3,[r3,#0x16]
-        0x0000292e:    431a        .C      ORRS     r2,r2,r3
-        0x00002930:    0412        ..      LSLS     r2,r2,#16
-        0x00002932:    4310        .C      ORRS     r0,r0,r2
-        0x00002934:    4605        .F      MOV      r5,r0
-        0x00002936:    42b5        .B      CMP      r5,r6
-        0x00002938:    d101        ..      BNE      0x293e ; IPC_TxBufferIsEnough + 346
-        0x0000293a:    2000        .       MOVS     r0,#0
-        0x0000293c:    bd70        p.      POP      {r4-r6,pc}
-        0x0000293e:    1c48        H.      ADDS     r0,r1,#1
-        0x00002940:    b281        ..      UXTH     r1,r0
-        0x00002942:    42a1        .B      CMP      r1,r4
-        0x00002944:    dba8        ..      BLT      0x2898 ; IPC_TxBufferIsEnough + 180
-        0x00002946:    2001        .       MOVS     r0,#1
-        0x00002948:    e7f8        ..      B        0x293c ; IPC_TxBufferIsEnough + 344
-    IPC_WaitBufferEnough
-        0x0000294a:    b570        p.      PUSH     {r4-r6,lr}
-        0x0000294c:    4604        .F      MOV      r4,r0
-        0x0000294e:    e00d        ..      B        0x296c ; IPC_WaitBufferEnough + 34
-        0x00002950:    4620         F      MOV      r0,r4
-        0x00002952:    f7ffff47    ..G.    BL       IPC_TxBufferIsEnough ; 0x27e4
-        0x00002956:    2800        .(      CMP      r0,#0
-        0x00002958:    d001        ..      BEQ      0x295e ; IPC_WaitBufferEnough + 20
+        0x000027f8:    b570        p.      PUSH     {r4-r6,lr}
+        0x000027fa:    4604        .F      MOV      r4,r0
+        0x000027fc:    496f        oI      LDR      r1,[pc,#444] ; [0x29bc] = 0x10004fe0
+        0x000027fe:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002800:    2100        .!      MOVS     r1,#0
+        0x00002802:    4a6d        mJ      LDR      r2,[pc,#436] ; [0x29b8] = 0x10004400
+        0x00002804:    3a20         :      SUBS     r2,r2,#0x20
+        0x00002806:    7e92        .~      LDRB     r2,[r2,#0x1a]
+        0x00002808:    4309        .C      ORRS     r1,r1,r1
+        0x0000280a:    4a6b        kJ      LDR      r2,[pc,#428] ; [0x29b8] = 0x10004400
+        0x0000280c:    3a20         :      SUBS     r2,r2,#0x20
+        0x0000280e:    7e92        .~      LDRB     r2,[r2,#0x1a]
+        0x00002810:    4311        .C      ORRS     r1,r1,r2
+        0x00002812:    4a6a        jJ      LDR      r2,[pc,#424] ; [0x29bc] = 0x10004fe0
+        0x00002814:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x00002816:    2200        ."      MOVS     r2,#0
+        0x00002818:    4b67        gK      LDR      r3,[pc,#412] ; [0x29b8] = 0x10004400
+        0x0000281a:    3b20         ;      SUBS     r3,r3,#0x20
+        0x0000281c:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x0000281e:    4312        .C      ORRS     r2,r2,r2
+        0x00002820:    4b65        eK      LDR      r3,[pc,#404] ; [0x29b8] = 0x10004400
+        0x00002822:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002824:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x00002826:    431a        .C      ORRS     r2,r2,r3
+        0x00002828:    0212        ..      LSLS     r2,r2,#8
+        0x0000282a:    4311        .C      ORRS     r1,r1,r2
+        0x0000282c:    4a63        cJ      LDR      r2,[pc,#396] ; [0x29bc] = 0x10004fe0
+        0x0000282e:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x00002830:    2200        ."      MOVS     r2,#0
+        0x00002832:    4b61        aK      LDR      r3,[pc,#388] ; [0x29b8] = 0x10004400
+        0x00002834:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002836:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x00002838:    4312        .C      ORRS     r2,r2,r2
+        0x0000283a:    4b5f        _K      LDR      r3,[pc,#380] ; [0x29b8] = 0x10004400
+        0x0000283c:    3b20         ;      SUBS     r3,r3,#0x20
+        0x0000283e:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x00002840:    431a        .C      ORRS     r2,r2,r3
+        0x00002842:    0412        ..      LSLS     r2,r2,#16
+        0x00002844:    4311        .C      ORRS     r1,r1,r2
+        0x00002846:    2201        ."      MOVS     r2,#1
+        0x00002848:    0712        ..      LSLS     r2,r2,#28
+        0x0000284a:    1888        ..      ADDS     r0,r1,r2
+        0x0000284c:    f000fa3d    ..=.    BL       HR_REG_24BIT ; 0x2cca
+        0x00002850:    4605        .F      MOV      r5,r0
+        0x00002852:    495a        ZI      LDR      r1,[pc,#360] ; [0x29bc] = 0x10004fe0
+        0x00002854:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002856:    2100        .!      MOVS     r1,#0
+        0x00002858:    4a57        WJ      LDR      r2,[pc,#348] ; [0x29b8] = 0x10004400
+        0x0000285a:    3a20         :      SUBS     r2,r2,#0x20
+        0x0000285c:    7f52        R.      LDRB     r2,[r2,#0x1d]
+        0x0000285e:    4309        .C      ORRS     r1,r1,r1
+        0x00002860:    4a55        UJ      LDR      r2,[pc,#340] ; [0x29b8] = 0x10004400
+        0x00002862:    3a20         :      SUBS     r2,r2,#0x20
+        0x00002864:    7f52        R.      LDRB     r2,[r2,#0x1d]
+        0x00002866:    4311        .C      ORRS     r1,r1,r2
+        0x00002868:    4a54        TJ      LDR      r2,[pc,#336] ; [0x29bc] = 0x10004fe0
+        0x0000286a:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x0000286c:    2200        ."      MOVS     r2,#0
+        0x0000286e:    4b52        RK      LDR      r3,[pc,#328] ; [0x29b8] = 0x10004400
+        0x00002870:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002872:    7f9b        ..      LDRB     r3,[r3,#0x1e]
+        0x00002874:    4312        .C      ORRS     r2,r2,r2
+        0x00002876:    4b50        PK      LDR      r3,[pc,#320] ; [0x29b8] = 0x10004400
+        0x00002878:    3b20         ;      SUBS     r3,r3,#0x20
+        0x0000287a:    7f9b        ..      LDRB     r3,[r3,#0x1e]
+        0x0000287c:    431a        .C      ORRS     r2,r2,r3
+        0x0000287e:    0212        ..      LSLS     r2,r2,#8
+        0x00002880:    4311        .C      ORRS     r1,r1,r2
+        0x00002882:    4a4e        NJ      LDR      r2,[pc,#312] ; [0x29bc] = 0x10004fe0
+        0x00002884:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x00002886:    2200        ."      MOVS     r2,#0
+        0x00002888:    4b4b        KK      LDR      r3,[pc,#300] ; [0x29b8] = 0x10004400
+        0x0000288a:    3b20         ;      SUBS     r3,r3,#0x20
+        0x0000288c:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x0000288e:    4312        .C      ORRS     r2,r2,r2
+        0x00002890:    4b49        IK      LDR      r3,[pc,#292] ; [0x29b8] = 0x10004400
+        0x00002892:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002894:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x00002896:    431a        .C      ORRS     r2,r2,r3
+        0x00002898:    0412        ..      LSLS     r2,r2,#16
+        0x0000289a:    4311        .C      ORRS     r1,r1,r2
+        0x0000289c:    2201        ."      MOVS     r2,#1
+        0x0000289e:    0712        ..      LSLS     r2,r2,#28
+        0x000028a0:    1888        ..      ADDS     r0,r1,r2
+        0x000028a2:    f000fa12    ....    BL       HR_REG_24BIT ; 0x2cca
+        0x000028a6:    4606        .F      MOV      r6,r0
+        0x000028a8:    2100        .!      MOVS     r1,#0
+        0x000028aa:    e054        T.      B        0x2956 ; IPC_TxBufferIsEnough + 350
+        0x000028ac:    4843        CH      LDR      r0,[pc,#268] ; [0x29bc] = 0x10004fe0
+        0x000028ae:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x000028b0:    2000        .       MOVS     r0,#0
+        0x000028b2:    4a41        AJ      LDR      r2,[pc,#260] ; [0x29b8] = 0x10004400
+        0x000028b4:    3a20         :      SUBS     r2,r2,#0x20
+        0x000028b6:    7dd2        .}      LDRB     r2,[r2,#0x17]
+        0x000028b8:    4300        .C      ORRS     r0,r0,r0
+        0x000028ba:    4a3f        ?J      LDR      r2,[pc,#252] ; [0x29b8] = 0x10004400
+        0x000028bc:    3a20         :      SUBS     r2,r2,#0x20
+        0x000028be:    7dd2        .}      LDRB     r2,[r2,#0x17]
+        0x000028c0:    4310        .C      ORRS     r0,r0,r2
+        0x000028c2:    4a3e        >J      LDR      r2,[pc,#248] ; [0x29bc] = 0x10004fe0
+        0x000028c4:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x000028c6:    2200        ."      MOVS     r2,#0
+        0x000028c8:    4b3b        ;K      LDR      r3,[pc,#236] ; [0x29b8] = 0x10004400
+        0x000028ca:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000028cc:    7e1b        .~      LDRB     r3,[r3,#0x18]
+        0x000028ce:    4312        .C      ORRS     r2,r2,r2
+        0x000028d0:    4b39        9K      LDR      r3,[pc,#228] ; [0x29b8] = 0x10004400
+        0x000028d2:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000028d4:    7e1b        .~      LDRB     r3,[r3,#0x18]
+        0x000028d6:    431a        .C      ORRS     r2,r2,r3
+        0x000028d8:    0212        ..      LSLS     r2,r2,#8
+        0x000028da:    4310        .C      ORRS     r0,r0,r2
+        0x000028dc:    4a37        7J      LDR      r2,[pc,#220] ; [0x29bc] = 0x10004fe0
+        0x000028de:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x000028e0:    2200        ."      MOVS     r2,#0
+        0x000028e2:    4b35        5K      LDR      r3,[pc,#212] ; [0x29b8] = 0x10004400
+        0x000028e4:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000028e6:    7e5b        [~      LDRB     r3,[r3,#0x19]
+        0x000028e8:    4312        .C      ORRS     r2,r2,r2
+        0x000028ea:    4b33        3K      LDR      r3,[pc,#204] ; [0x29b8] = 0x10004400
+        0x000028ec:    3b20         ;      SUBS     r3,r3,#0x20
+        0x000028ee:    7e5b        [~      LDRB     r3,[r3,#0x19]
+        0x000028f0:    431a        .C      ORRS     r2,r2,r3
+        0x000028f2:    0412        ..      LSLS     r2,r2,#16
+        0x000028f4:    4310        .C      ORRS     r0,r0,r2
+        0x000028f6:    1c6a        j.      ADDS     r2,r5,#1
+        0x000028f8:    4615        .F      MOV      r5,r2
+        0x000028fa:    4290        .B      CMP      r0,r2
+        0x000028fc:    d825        %.      BHI      0x294a ; IPC_TxBufferIsEnough + 338
+        0x000028fe:    482f        /H      LDR      r0,[pc,#188] ; [0x29bc] = 0x10004fe0
+        0x00002900:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x00002902:    2000        .       MOVS     r0,#0
+        0x00002904:    4a2c        ,J      LDR      r2,[pc,#176] ; [0x29b8] = 0x10004400
+        0x00002906:    3a20         :      SUBS     r2,r2,#0x20
+        0x00002908:    7d12        .}      LDRB     r2,[r2,#0x14]
+        0x0000290a:    4300        .C      ORRS     r0,r0,r0
+        0x0000290c:    4a2a        *J      LDR      r2,[pc,#168] ; [0x29b8] = 0x10004400
+        0x0000290e:    3a20         :      SUBS     r2,r2,#0x20
+        0x00002910:    7d12        .}      LDRB     r2,[r2,#0x14]
+        0x00002912:    4310        .C      ORRS     r0,r0,r2
+        0x00002914:    4a29        )J      LDR      r2,[pc,#164] ; [0x29bc] = 0x10004fe0
+        0x00002916:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x00002918:    2200        ."      MOVS     r2,#0
+        0x0000291a:    4b27        'K      LDR      r3,[pc,#156] ; [0x29b8] = 0x10004400
+        0x0000291c:    3b20         ;      SUBS     r3,r3,#0x20
+        0x0000291e:    7d5b        [}      LDRB     r3,[r3,#0x15]
+        0x00002920:    4312        .C      ORRS     r2,r2,r2
+        0x00002922:    4b25        %K      LDR      r3,[pc,#148] ; [0x29b8] = 0x10004400
+        0x00002924:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002926:    7d5b        [}      LDRB     r3,[r3,#0x15]
+        0x00002928:    431a        .C      ORRS     r2,r2,r3
+        0x0000292a:    0212        ..      LSLS     r2,r2,#8
+        0x0000292c:    4310        .C      ORRS     r0,r0,r2
+        0x0000292e:    4a23        #J      LDR      r2,[pc,#140] ; [0x29bc] = 0x10004fe0
+        0x00002930:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x00002932:    2200        ."      MOVS     r2,#0
+        0x00002934:    4b20         K      LDR      r3,[pc,#128] ; [0x29b8] = 0x10004400
+        0x00002936:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002938:    7d9b        .}      LDRB     r3,[r3,#0x16]
+        0x0000293a:    4312        .C      ORRS     r2,r2,r2
+        0x0000293c:    4b1e        .K      LDR      r3,[pc,#120] ; [0x29b8] = 0x10004400
+        0x0000293e:    3b20         ;      SUBS     r3,r3,#0x20
+        0x00002940:    7d9b        .}      LDRB     r3,[r3,#0x16]
+        0x00002942:    431a        .C      ORRS     r2,r2,r3
+        0x00002944:    0412        ..      LSLS     r2,r2,#16
+        0x00002946:    4310        .C      ORRS     r0,r0,r2
+        0x00002948:    4605        .F      MOV      r5,r0
+        0x0000294a:    42b5        .B      CMP      r5,r6
+        0x0000294c:    d101        ..      BNE      0x2952 ; IPC_TxBufferIsEnough + 346
+        0x0000294e:    2000        .       MOVS     r0,#0
+        0x00002950:    bd70        p.      POP      {r4-r6,pc}
+        0x00002952:    1c48        H.      ADDS     r0,r1,#1
+        0x00002954:    b281        ..      UXTH     r1,r0
+        0x00002956:    42a1        .B      CMP      r1,r4
+        0x00002958:    dba8        ..      BLT      0x28ac ; IPC_TxBufferIsEnough + 180
         0x0000295a:    2001        .       MOVS     r0,#1
-        0x0000295c:    bd70        p.      POP      {r4-r6,pc}
-        0x0000295e:    257d        }%      MOVS     r5,#0x7d
-        0x00002960:    00ed        ..      LSLS     r5,r5,#3
-        0x00002962:    bf00        ..      NOP      
-        0x00002964:    4628        (F      MOV      r0,r5
-        0x00002966:    1e6d        m.      SUBS     r5,r5,#1
-        0x00002968:    2800        .(      CMP      r0,#0
-        0x0000296a:    d1fb        ..      BNE      0x2964 ; IPC_WaitBufferEnough + 26
-        0x0000296c:    e7f0        ..      B        0x2950 ; IPC_WaitBufferEnough + 6
+        0x0000295c:    e7f8        ..      B        0x2950 ; IPC_TxBufferIsEnough + 344
+    IPC_WaitBufferEnough
+        0x0000295e:    b570        p.      PUSH     {r4-r6,lr}
+        0x00002960:    4604        .F      MOV      r4,r0
+        0x00002962:    e00d        ..      B        0x2980 ; IPC_WaitBufferEnough + 34
+        0x00002964:    4620         F      MOV      r0,r4
+        0x00002966:    f7ffff47    ..G.    BL       IPC_TxBufferIsEnough ; 0x27f8
+        0x0000296a:    2800        .(      CMP      r0,#0
+        0x0000296c:    d001        ..      BEQ      0x2972 ; IPC_WaitBufferEnough + 20
+        0x0000296e:    2001        .       MOVS     r0,#1
+        0x00002970:    bd70        p.      POP      {r4-r6,pc}
+        0x00002972:    257d        }%      MOVS     r5,#0x7d
+        0x00002974:    00ed        ..      LSLS     r5,r5,#3
+        0x00002976:    bf00        ..      NOP      
+        0x00002978:    4628        (F      MOV      r0,r5
+        0x0000297a:    1e6d        m.      SUBS     r5,r5,#1
+        0x0000297c:    2800        .(      CMP      r0,#0
+        0x0000297e:    d1fb        ..      BNE      0x2978 ; IPC_WaitBufferEnough + 26
+        0x00002980:    e7f0        ..      B        0x2964 ; IPC_WaitBufferEnough + 6
     IPC_TxCommon
-        0x0000296e:    b570        p.      PUSH     {r4-r6,lr}
-        0x00002970:    4605        .F      MOV      r5,r0
-        0x00002972:    460e        .F      MOV      r6,r1
-        0x00002974:    4614        .F      MOV      r4,r2
-        0x00002976:    480d        .H      LDR      r0,[pc,#52] ; [0x29ac] = 0x10011124
-        0x00002978:    7005        .p      STRB     r5,[r0,#0]
-        0x0000297a:    2c00        .,      CMP      r4,#0
-        0x0000297c:    d100        ..      BNE      0x2980 ; IPC_TxCommon + 18
-        0x0000297e:    bd70        p.      POP      {r4-r6,pc}
-        0x00002980:    4809        .H      LDR      r0,[pc,#36] ; [0x29a8] = 0x10004fe0
-        0x00002982:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00002984:    2000        .       MOVS     r0,#0
-        0x00002986:    4907        .I      LDR      r1,[pc,#28] ; [0x29a4] = 0x10004400
-        0x00002988:    3940        @9      SUBS     r1,r1,#0x40
-        0x0000298a:    7f49        I.      LDRB     r1,[r1,#0x1d]
-        0x0000298c:    4300        .C      ORRS     r0,r0,r0
-        0x0000298e:    4905        .I      LDR      r1,[pc,#20] ; [0x29a4] = 0x10004400
-        0x00002990:    3940        @9      SUBS     r1,r1,#0x40
-        0x00002992:    7f49        I.      LDRB     r1,[r1,#0x1d]
-        0x00002994:    4308        .C      ORRS     r0,r0,r1
-        0x00002996:    2802        .(      CMP      r0,#2
-        0x00002998:    d10d        ..      BNE      0x29b6 ; IPC_TxCommon + 72
-        0x0000299a:    bf00        ..      NOP      
-        0x0000299c:    2000        .       MOVS     r0,#0
-        0x0000299e:    4901        .I      LDR      r1,[pc,#4] ; [0x29a4] = 0x10004400
-        0x000029a0:    3940        @9      SUBS     r1,r1,#0x40
-        0x000029a2:    e005        ..      B        0x29b0 ; IPC_TxCommon + 66
+        0x00002982:    b570        p.      PUSH     {r4-r6,lr}
+        0x00002984:    4605        .F      MOV      r5,r0
+        0x00002986:    460e        .F      MOV      r6,r1
+        0x00002988:    4614        .F      MOV      r4,r2
+        0x0000298a:    480d        .H      LDR      r0,[pc,#52] ; [0x29c0] = 0x10011124
+        0x0000298c:    7005        .p      STRB     r5,[r0,#0]
+        0x0000298e:    2c00        .,      CMP      r4,#0
+        0x00002990:    d100        ..      BNE      0x2994 ; IPC_TxCommon + 18
+        0x00002992:    bd70        p.      POP      {r4-r6,pc}
+        0x00002994:    4809        .H      LDR      r0,[pc,#36] ; [0x29bc] = 0x10004fe0
+        0x00002996:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x00002998:    2000        .       MOVS     r0,#0
+        0x0000299a:    4907        .I      LDR      r1,[pc,#28] ; [0x29b8] = 0x10004400
+        0x0000299c:    3940        @9      SUBS     r1,r1,#0x40
+        0x0000299e:    7f49        I.      LDRB     r1,[r1,#0x1d]
+        0x000029a0:    4300        .C      ORRS     r0,r0,r0
+        0x000029a2:    4905        .I      LDR      r1,[pc,#20] ; [0x29b8] = 0x10004400
+        0x000029a4:    3940        @9      SUBS     r1,r1,#0x40
+        0x000029a6:    7f49        I.      LDRB     r1,[r1,#0x1d]
+        0x000029a8:    4308        .C      ORRS     r0,r0,r1
+        0x000029aa:    2802        .(      CMP      r0,#2
+        0x000029ac:    d10d        ..      BNE      0x29ca ; IPC_TxCommon + 72
+        0x000029ae:    bf00        ..      NOP      
+        0x000029b0:    2000        .       MOVS     r0,#0
+        0x000029b2:    4901        .I      LDR      r1,[pc,#4] ; [0x29b8] = 0x10004400
+        0x000029b4:    3940        @9      SUBS     r1,r1,#0x40
+        0x000029b6:    e005        ..      B        0x29c4 ; IPC_TxCommon + 66
     $d
-        0x000029a4:    10004400    .D..    DCD    268452864
-        0x000029a8:    10004fe0    .O..    DCD    268455904
-        0x000029ac:    10011124    $...    DCD    268505380
+        0x000029b8:    10004400    .D..    DCD    268452864
+        0x000029bc:    10004fe0    .O..    DCD    268455904
+        0x000029c0:    10011124    $...    DCD    268505380
     $t
-        0x000029b0:    7748        Hw      STRB     r0,[r1,#0x1d]
-        0x000029b2:    7748        Hw      STRB     r0,[r1,#0x1d]
-        0x000029b4:    bf00        ..      NOP      
-        0x000029b6:    48a4        .H      LDR      r0,[pc,#656] ; [0x2c48] = 0x10011124
-        0x000029b8:    7044        Dp      STRB     r4,[r0,#1]
-        0x000029ba:    4622        "F      MOV      r2,r4
-        0x000029bc:    4631        1F      MOV      r1,r6
-        0x000029be:    1c80        ..      ADDS     r0,r0,#2
-        0x000029c0:    f000fa60    ..`.    BL       __aeabi_memcpy ; 0x2e84
-        0x000029c4:    1ca0        ..      ADDS     r0,r4,#2
-        0x000029c6:    b2c1        ..      UXTB     r1,r0
-        0x000029c8:    489f        .H      LDR      r0,[pc,#636] ; [0x2c48] = 0x10011124
-        0x000029ca:    f7fffd5e    ..^.    BL       ipcTx ; 0x248a
-        0x000029ce:    bf00        ..      NOP      
-        0x000029d0:    e7d5        ..      B        0x297e ; IPC_TxCommon + 16
+        0x000029c4:    7748        Hw      STRB     r0,[r1,#0x1d]
+        0x000029c6:    7748        Hw      STRB     r0,[r1,#0x1d]
+        0x000029c8:    bf00        ..      NOP      
+        0x000029ca:    48a4        .H      LDR      r0,[pc,#656] ; [0x2c5c] = 0x10011124
+        0x000029cc:    7044        Dp      STRB     r4,[r0,#1]
+        0x000029ce:    4622        "F      MOV      r2,r4
+        0x000029d0:    4631        1F      MOV      r1,r6
+        0x000029d2:    1c80        ..      ADDS     r0,r0,#2
+        0x000029d4:    f000fa60    ..`.    BL       __aeabi_memcpy ; 0x2e98
+        0x000029d8:    1ca0        ..      ADDS     r0,r4,#2
+        0x000029da:    b2c1        ..      UXTB     r1,r0
+        0x000029dc:    489f        .H      LDR      r0,[pc,#636] ; [0x2c5c] = 0x10011124
+        0x000029de:    f7fffd5e    ..^.    BL       ipcTx ; 0x249e
+        0x000029e2:    bf00        ..      NOP      
+        0x000029e4:    e7d5        ..      B        0x2992 ; IPC_TxCommon + 16
     IPC_TxPacket
-        0x000029d2:    b510        ..      PUSH     {r4,lr}
-        0x000029d4:    4604        .F      MOV      r4,r0
-        0x000029d6:    7860        `x      LDRB     r0,[r4,#1]
-        0x000029d8:    2800        .(      CMP      r0,#0
-        0x000029da:    d100        ..      BNE      0x29de ; IPC_TxPacket + 12
-        0x000029dc:    bd10        ..      POP      {r4,pc}
-        0x000029de:    489b        .H      LDR      r0,[pc,#620] ; [0x2c4c] = 0x10004fe0
-        0x000029e0:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x000029e2:    2000        .       MOVS     r0,#0
-        0x000029e4:    499a        .I      LDR      r1,[pc,#616] ; [0x2c50] = 0x100043c0
-        0x000029e6:    7f49        I.      LDRB     r1,[r1,#0x1d]
-        0x000029e8:    4300        .C      ORRS     r0,r0,r0
-        0x000029ea:    4999        .I      LDR      r1,[pc,#612] ; [0x2c50] = 0x100043c0
-        0x000029ec:    7f49        I.      LDRB     r1,[r1,#0x1d]
-        0x000029ee:    4308        .C      ORRS     r0,r0,r1
-        0x000029f0:    2802        .(      CMP      r0,#2
-        0x000029f2:    d105        ..      BNE      0x2a00 ; IPC_TxPacket + 46
-        0x000029f4:    bf00        ..      NOP      
+        0x000029e6:    b510        ..      PUSH     {r4,lr}
+        0x000029e8:    4604        .F      MOV      r4,r0
+        0x000029ea:    7860        `x      LDRB     r0,[r4,#1]
+        0x000029ec:    2800        .(      CMP      r0,#0
+        0x000029ee:    d100        ..      BNE      0x29f2 ; IPC_TxPacket + 12
+        0x000029f0:    bd10        ..      POP      {r4,pc}
+        0x000029f2:    489b        .H      LDR      r0,[pc,#620] ; [0x2c60] = 0x10004fe0
+        0x000029f4:    7fc0        ..      LDRB     r0,[r0,#0x1f]
         0x000029f6:    2000        .       MOVS     r0,#0
-        0x000029f8:    4995        .I      LDR      r1,[pc,#596] ; [0x2c50] = 0x100043c0
-        0x000029fa:    7748        Hw      STRB     r0,[r1,#0x1d]
-        0x000029fc:    7748        Hw      STRB     r0,[r1,#0x1d]
-        0x000029fe:    bf00        ..      NOP      
-        0x00002a00:    7860        `x      LDRB     r0,[r4,#1]
-        0x00002a02:    1c80        ..      ADDS     r0,r0,#2
-        0x00002a04:    b2c1        ..      UXTB     r1,r0
-        0x00002a06:    4620         F      MOV      r0,r4
-        0x00002a08:    f7fffd3f    ..?.    BL       ipcTx ; 0x248a
-        0x00002a0c:    bf00        ..      NOP      
-        0x00002a0e:    e7e5        ..      B        0x29dc ; IPC_TxPacket + 10
+        0x000029f8:    499a        .I      LDR      r1,[pc,#616] ; [0x2c64] = 0x100043c0
+        0x000029fa:    7f49        I.      LDRB     r1,[r1,#0x1d]
+        0x000029fc:    4300        .C      ORRS     r0,r0,r0
+        0x000029fe:    4999        .I      LDR      r1,[pc,#612] ; [0x2c64] = 0x100043c0
+        0x00002a00:    7f49        I.      LDRB     r1,[r1,#0x1d]
+        0x00002a02:    4308        .C      ORRS     r0,r0,r1
+        0x00002a04:    2802        .(      CMP      r0,#2
+        0x00002a06:    d105        ..      BNE      0x2a14 ; IPC_TxPacket + 46
+        0x00002a08:    bf00        ..      NOP      
+        0x00002a0a:    2000        .       MOVS     r0,#0
+        0x00002a0c:    4995        .I      LDR      r1,[pc,#596] ; [0x2c64] = 0x100043c0
+        0x00002a0e:    7748        Hw      STRB     r0,[r1,#0x1d]
+        0x00002a10:    7748        Hw      STRB     r0,[r1,#0x1d]
+        0x00002a12:    bf00        ..      NOP      
+        0x00002a14:    7860        `x      LDRB     r0,[r4,#1]
+        0x00002a16:    1c80        ..      ADDS     r0,r0,#2
+        0x00002a18:    b2c1        ..      UXTB     r1,r0
+        0x00002a1a:    4620         F      MOV      r0,r4
+        0x00002a1c:    f7fffd3f    ..?.    BL       ipcTx ; 0x249e
+        0x00002a20:    bf00        ..      NOP      
+        0x00002a22:    e7e5        ..      B        0x29f0 ; IPC_TxPacket + 10
     IPC_TxControlCmd
-        0x00002a10:    b538        8.      PUSH     {r3-r5,lr}
-        0x00002a12:    4604        .F      MOV      r4,r0
-        0x00002a14:    488f        .H      LDR      r0,[pc,#572] ; [0x2c54] = 0x2eec
-        0x00002a16:    6800        .h      LDR      r0,[r0,#0]
-        0x00002a18:    9000        ..      STR      r0,[sp,#0]
-        0x00002a1a:    488c        .H      LDR      r0,[pc,#560] ; [0x2c4c] = 0x10004fe0
-        0x00002a1c:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00002a1e:    2000        .       MOVS     r0,#0
-        0x00002a20:    498b        .I      LDR      r1,[pc,#556] ; [0x2c50] = 0x100043c0
-        0x00002a22:    7f49        I.      LDRB     r1,[r1,#0x1d]
-        0x00002a24:    4300        .C      ORRS     r0,r0,r0
-        0x00002a26:    498a        .I      LDR      r1,[pc,#552] ; [0x2c50] = 0x100043c0
-        0x00002a28:    7f49        I.      LDRB     r1,[r1,#0x1d]
-        0x00002a2a:    4308        .C      ORRS     r0,r0,r1
-        0x00002a2c:    2802        .(      CMP      r0,#2
-        0x00002a2e:    d105        ..      BNE      0x2a3c ; IPC_TxControlCmd + 44
-        0x00002a30:    bf00        ..      NOP      
+        0x00002a24:    b538        8.      PUSH     {r3-r5,lr}
+        0x00002a26:    4604        .F      MOV      r4,r0
+        0x00002a28:    488f        .H      LDR      r0,[pc,#572] ; [0x2c68] = 0x2f00
+        0x00002a2a:    6800        .h      LDR      r0,[r0,#0]
+        0x00002a2c:    9000        ..      STR      r0,[sp,#0]
+        0x00002a2e:    488c        .H      LDR      r0,[pc,#560] ; [0x2c60] = 0x10004fe0
+        0x00002a30:    7fc0        ..      LDRB     r0,[r0,#0x1f]
         0x00002a32:    2000        .       MOVS     r0,#0
-        0x00002a34:    4986        .I      LDR      r1,[pc,#536] ; [0x2c50] = 0x100043c0
-        0x00002a36:    7748        Hw      STRB     r0,[r1,#0x1d]
-        0x00002a38:    7748        Hw      STRB     r0,[r1,#0x1d]
-        0x00002a3a:    bf00        ..      NOP      
-        0x00002a3c:    4668        hF      MOV      r0,sp
-        0x00002a3e:    7084        .p      STRB     r4,[r0,#2]
-        0x00002a40:    2103        .!      MOVS     r1,#3
-        0x00002a42:    f7fffd22    ..".    BL       ipcTx ; 0x248a
-        0x00002a46:    bd38        8.      POP      {r3-r5,pc}
+        0x00002a34:    498b        .I      LDR      r1,[pc,#556] ; [0x2c64] = 0x100043c0
+        0x00002a36:    7f49        I.      LDRB     r1,[r1,#0x1d]
+        0x00002a38:    4300        .C      ORRS     r0,r0,r0
+        0x00002a3a:    498a        .I      LDR      r1,[pc,#552] ; [0x2c64] = 0x100043c0
+        0x00002a3c:    7f49        I.      LDRB     r1,[r1,#0x1d]
+        0x00002a3e:    4308        .C      ORRS     r0,r0,r1
+        0x00002a40:    2802        .(      CMP      r0,#2
+        0x00002a42:    d105        ..      BNE      0x2a50 ; IPC_TxControlCmd + 44
+        0x00002a44:    bf00        ..      NOP      
+        0x00002a46:    2000        .       MOVS     r0,#0
+        0x00002a48:    4986        .I      LDR      r1,[pc,#536] ; [0x2c64] = 0x100043c0
+        0x00002a4a:    7748        Hw      STRB     r0,[r1,#0x1d]
+        0x00002a4c:    7748        Hw      STRB     r0,[r1,#0x1d]
+        0x00002a4e:    bf00        ..      NOP      
+        0x00002a50:    4668        hF      MOV      r0,sp
+        0x00002a52:    7084        .p      STRB     r4,[r0,#2]
+        0x00002a54:    2103        .!      MOVS     r1,#3
+        0x00002a56:    f7fffd22    ..".    BL       ipcTx ; 0x249e
+        0x00002a5a:    bd38        8.      POP      {r3-r5,pc}
     IPC_GetBBDIsconnectReason
-        0x00002a48:    2000        .       MOVS     r0,#0
-        0x00002a4a:    4770        pG      BX       lr
+        0x00002a5c:    2000        .       MOVS     r0,#0
+        0x00002a5e:    4770        pG      BX       lr
     IPC_CheckServerConenct
-        0x00002a4c:    2000        .       MOVS     r0,#0
-        0x00002a4e:    4770        pG      BX       lr
+        0x00002a60:    2000        .       MOVS     r0,#0
+        0x00002a62:    4770        pG      BX       lr
     IPC_CheckReconnect
-        0x00002a50:    2000        .       MOVS     r0,#0
-        0x00002a52:    4770        pG      BX       lr
+        0x00002a64:    2000        .       MOVS     r0,#0
+        0x00002a66:    4770        pG      BX       lr
     IPC_WaitLpm
-        0x00002a54:    b510        ..      PUSH     {r4,lr}
-        0x00002a56:    4c80        .L      LDR      r4,[pc,#512] ; [0x2c58] = 0x2710
-        0x00002a58:    e001        ..      B        0x2a5e ; IPC_WaitLpm + 10
-        0x00002a5a:    f000f8ee    ....    BL       hw_delay ; 0x2c3a
-        0x00002a5e:    4620         F      MOV      r0,r4
-        0x00002a60:    1e64        d.      SUBS     r4,r4,#1
-        0x00002a62:    2800        .(      CMP      r0,#0
-        0x00002a64:    d1f9        ..      BNE      0x2a5a ; IPC_WaitLpm + 6
-        0x00002a66:    bd10        ..      POP      {r4,pc}
-    IPC_AbandonLpm
         0x00002a68:    b510        ..      PUSH     {r4,lr}
-        0x00002a6a:    f000f8e6    ....    BL       hw_delay ; 0x2c3a
-        0x00002a6e:    bd10        ..      POP      {r4,pc}
+        0x00002a6a:    4c80        .L      LDR      r4,[pc,#512] ; [0x2c6c] = 0x2710
+        0x00002a6c:    e001        ..      B        0x2a72 ; IPC_WaitLpm + 10
+        0x00002a6e:    f000f8ee    ....    BL       hw_delay ; 0x2c4e
+        0x00002a72:    4620         F      MOV      r0,r4
+        0x00002a74:    1e64        d.      SUBS     r4,r4,#1
+        0x00002a76:    2800        .(      CMP      r0,#0
+        0x00002a78:    d1f9        ..      BNE      0x2a6e ; IPC_WaitLpm + 6
+        0x00002a7a:    bd10        ..      POP      {r4,pc}
+    IPC_AbandonLpm
+        0x00002a7c:    b510        ..      PUSH     {r4,lr}
+        0x00002a7e:    f000f8e6    ....    BL       hw_delay ; 0x2c4e
+        0x00002a82:    bd10        ..      POP      {r4,pc}
     IPC_DisableLpm
-        0x00002a70:    b510        ..      PUSH     {r4,lr}
-        0x00002a72:    f000f8e2    ....    BL       hw_delay ; 0x2c3a
-        0x00002a76:    bd10        ..      POP      {r4,pc}
+        0x00002a84:    b510        ..      PUSH     {r4,lr}
+        0x00002a86:    f000f8e2    ....    BL       hw_delay ; 0x2c4e
+        0x00002a8a:    bd10        ..      POP      {r4,pc}
     IPC_EnableLpm
-        0x00002a78:    b510        ..      PUSH     {r4,lr}
-        0x00002a7a:    f000f8de    ....    BL       hw_delay ; 0x2c3a
-        0x00002a7e:    bd10        ..      POP      {r4,pc}
+        0x00002a8c:    b510        ..      PUSH     {r4,lr}
+        0x00002a8e:    f000f8de    ....    BL       hw_delay ; 0x2c4e
+        0x00002a92:    bd10        ..      POP      {r4,pc}
     IPC_IsTxBuffEmpty
-        0x00002a80:    b570        p.      PUSH     {r4-r6,lr}
-        0x00002a82:    4972        rI      LDR      r1,[pc,#456] ; [0x2c4c] = 0x10004fe0
-        0x00002a84:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00002a86:    2100        .!      MOVS     r1,#0
-        0x00002a88:    4a71        qJ      LDR      r2,[pc,#452] ; [0x2c50] = 0x100043c0
-        0x00002a8a:    3220         2      ADDS     r2,r2,#0x20
-        0x00002a8c:    7f52        R.      LDRB     r2,[r2,#0x1d]
-        0x00002a8e:    4309        .C      ORRS     r1,r1,r1
-        0x00002a90:    4a6f        oJ      LDR      r2,[pc,#444] ; [0x2c50] = 0x100043c0
-        0x00002a92:    3220         2      ADDS     r2,r2,#0x20
-        0x00002a94:    7f52        R.      LDRB     r2,[r2,#0x1d]
-        0x00002a96:    4311        .C      ORRS     r1,r1,r2
-        0x00002a98:    4a6c        lJ      LDR      r2,[pc,#432] ; [0x2c4c] = 0x10004fe0
-        0x00002a9a:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x00002a9c:    2200        ."      MOVS     r2,#0
-        0x00002a9e:    4b6c        lK      LDR      r3,[pc,#432] ; [0x2c50] = 0x100043c0
-        0x00002aa0:    3320         3      ADDS     r3,r3,#0x20
-        0x00002aa2:    7f9b        ..      LDRB     r3,[r3,#0x1e]
-        0x00002aa4:    4312        .C      ORRS     r2,r2,r2
-        0x00002aa6:    4b6a        jK      LDR      r3,[pc,#424] ; [0x2c50] = 0x100043c0
-        0x00002aa8:    3320         3      ADDS     r3,r3,#0x20
-        0x00002aaa:    7f9b        ..      LDRB     r3,[r3,#0x1e]
-        0x00002aac:    431a        .C      ORRS     r2,r2,r3
-        0x00002aae:    0212        ..      LSLS     r2,r2,#8
-        0x00002ab0:    4311        .C      ORRS     r1,r1,r2
-        0x00002ab2:    4a66        fJ      LDR      r2,[pc,#408] ; [0x2c4c] = 0x10004fe0
-        0x00002ab4:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x00002ab6:    2200        ."      MOVS     r2,#0
-        0x00002ab8:    4b65        eK      LDR      r3,[pc,#404] ; [0x2c50] = 0x100043c0
-        0x00002aba:    3320         3      ADDS     r3,r3,#0x20
-        0x00002abc:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x00002abe:    4312        .C      ORRS     r2,r2,r2
-        0x00002ac0:    4b63        cK      LDR      r3,[pc,#396] ; [0x2c50] = 0x100043c0
-        0x00002ac2:    3320         3      ADDS     r3,r3,#0x20
-        0x00002ac4:    7fdb        ..      LDRB     r3,[r3,#0x1f]
-        0x00002ac6:    431a        .C      ORRS     r2,r2,r3
-        0x00002ac8:    0412        ..      LSLS     r2,r2,#16
-        0x00002aca:    4311        .C      ORRS     r1,r1,r2
-        0x00002acc:    2201        ."      MOVS     r2,#1
-        0x00002ace:    0712        ..      LSLS     r2,r2,#28
-        0x00002ad0:    1888        ..      ADDS     r0,r1,r2
-        0x00002ad2:    f000f8f0    ....    BL       HR_REG_24BIT ; 0x2cb6
-        0x00002ad6:    4604        .F      MOV      r4,r0
-        0x00002ad8:    495c        \I      LDR      r1,[pc,#368] ; [0x2c4c] = 0x10004fe0
-        0x00002ada:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00002adc:    2100        .!      MOVS     r1,#0
-        0x00002ade:    4a5c        \J      LDR      r2,[pc,#368] ; [0x2c50] = 0x100043c0
-        0x00002ae0:    3220         2      ADDS     r2,r2,#0x20
-        0x00002ae2:    7e92        .~      LDRB     r2,[r2,#0x1a]
-        0x00002ae4:    4309        .C      ORRS     r1,r1,r1
-        0x00002ae6:    4a5a        ZJ      LDR      r2,[pc,#360] ; [0x2c50] = 0x100043c0
-        0x00002ae8:    3220         2      ADDS     r2,r2,#0x20
-        0x00002aea:    7e92        .~      LDRB     r2,[r2,#0x1a]
-        0x00002aec:    4311        .C      ORRS     r1,r1,r2
-        0x00002aee:    4a57        WJ      LDR      r2,[pc,#348] ; [0x2c4c] = 0x10004fe0
-        0x00002af0:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x00002af2:    2200        ."      MOVS     r2,#0
-        0x00002af4:    4b56        VK      LDR      r3,[pc,#344] ; [0x2c50] = 0x100043c0
-        0x00002af6:    3320         3      ADDS     r3,r3,#0x20
-        0x00002af8:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x00002afa:    4312        .C      ORRS     r2,r2,r2
-        0x00002afc:    4b54        TK      LDR      r3,[pc,#336] ; [0x2c50] = 0x100043c0
-        0x00002afe:    3320         3      ADDS     r3,r3,#0x20
-        0x00002b00:    7edb        .~      LDRB     r3,[r3,#0x1b]
-        0x00002b02:    431a        .C      ORRS     r2,r2,r3
-        0x00002b04:    0212        ..      LSLS     r2,r2,#8
-        0x00002b06:    4311        .C      ORRS     r1,r1,r2
-        0x00002b08:    4a50        PJ      LDR      r2,[pc,#320] ; [0x2c4c] = 0x10004fe0
-        0x00002b0a:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x00002b0c:    2200        ."      MOVS     r2,#0
-        0x00002b0e:    4b50        PK      LDR      r3,[pc,#320] ; [0x2c50] = 0x100043c0
-        0x00002b10:    3320         3      ADDS     r3,r3,#0x20
-        0x00002b12:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x00002b14:    4312        .C      ORRS     r2,r2,r2
-        0x00002b16:    4b4e        NK      LDR      r3,[pc,#312] ; [0x2c50] = 0x100043c0
-        0x00002b18:    3320         3      ADDS     r3,r3,#0x20
-        0x00002b1a:    7f1b        ..      LDRB     r3,[r3,#0x1c]
-        0x00002b1c:    431a        .C      ORRS     r2,r2,r3
-        0x00002b1e:    0412        ..      LSLS     r2,r2,#16
-        0x00002b20:    4311        .C      ORRS     r1,r1,r2
-        0x00002b22:    2201        ."      MOVS     r2,#1
-        0x00002b24:    0712        ..      LSLS     r2,r2,#28
-        0x00002b26:    1888        ..      ADDS     r0,r1,r2
-        0x00002b28:    f000f8c5    ....    BL       HR_REG_24BIT ; 0x2cb6
-        0x00002b2c:    4605        .F      MOV      r5,r0
-        0x00002b2e:    42a5        .B      CMP      r5,r4
-        0x00002b30:    d101        ..      BNE      0x2b36 ; IPC_IsTxBuffEmpty + 182
-        0x00002b32:    2001        .       MOVS     r0,#1
-        0x00002b34:    bd70        p.      POP      {r4-r6,pc}
-        0x00002b36:    2000        .       MOVS     r0,#0
-        0x00002b38:    e7fc        ..      B        0x2b34 ; IPC_IsTxBuffEmpty + 180
+        0x00002a94:    b570        p.      PUSH     {r4-r6,lr}
+        0x00002a96:    4972        rI      LDR      r1,[pc,#456] ; [0x2c60] = 0x10004fe0
+        0x00002a98:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002a9a:    2100        .!      MOVS     r1,#0
+        0x00002a9c:    4a71        qJ      LDR      r2,[pc,#452] ; [0x2c64] = 0x100043c0
+        0x00002a9e:    3220         2      ADDS     r2,r2,#0x20
+        0x00002aa0:    7f52        R.      LDRB     r2,[r2,#0x1d]
+        0x00002aa2:    4309        .C      ORRS     r1,r1,r1
+        0x00002aa4:    4a6f        oJ      LDR      r2,[pc,#444] ; [0x2c64] = 0x100043c0
+        0x00002aa6:    3220         2      ADDS     r2,r2,#0x20
+        0x00002aa8:    7f52        R.      LDRB     r2,[r2,#0x1d]
+        0x00002aaa:    4311        .C      ORRS     r1,r1,r2
+        0x00002aac:    4a6c        lJ      LDR      r2,[pc,#432] ; [0x2c60] = 0x10004fe0
+        0x00002aae:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x00002ab0:    2200        ."      MOVS     r2,#0
+        0x00002ab2:    4b6c        lK      LDR      r3,[pc,#432] ; [0x2c64] = 0x100043c0
+        0x00002ab4:    3320         3      ADDS     r3,r3,#0x20
+        0x00002ab6:    7f9b        ..      LDRB     r3,[r3,#0x1e]
+        0x00002ab8:    4312        .C      ORRS     r2,r2,r2
+        0x00002aba:    4b6a        jK      LDR      r3,[pc,#424] ; [0x2c64] = 0x100043c0
+        0x00002abc:    3320         3      ADDS     r3,r3,#0x20
+        0x00002abe:    7f9b        ..      LDRB     r3,[r3,#0x1e]
+        0x00002ac0:    431a        .C      ORRS     r2,r2,r3
+        0x00002ac2:    0212        ..      LSLS     r2,r2,#8
+        0x00002ac4:    4311        .C      ORRS     r1,r1,r2
+        0x00002ac6:    4a66        fJ      LDR      r2,[pc,#408] ; [0x2c60] = 0x10004fe0
+        0x00002ac8:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x00002aca:    2200        ."      MOVS     r2,#0
+        0x00002acc:    4b65        eK      LDR      r3,[pc,#404] ; [0x2c64] = 0x100043c0
+        0x00002ace:    3320         3      ADDS     r3,r3,#0x20
+        0x00002ad0:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x00002ad2:    4312        .C      ORRS     r2,r2,r2
+        0x00002ad4:    4b63        cK      LDR      r3,[pc,#396] ; [0x2c64] = 0x100043c0
+        0x00002ad6:    3320         3      ADDS     r3,r3,#0x20
+        0x00002ad8:    7fdb        ..      LDRB     r3,[r3,#0x1f]
+        0x00002ada:    431a        .C      ORRS     r2,r2,r3
+        0x00002adc:    0412        ..      LSLS     r2,r2,#16
+        0x00002ade:    4311        .C      ORRS     r1,r1,r2
+        0x00002ae0:    2201        ."      MOVS     r2,#1
+        0x00002ae2:    0712        ..      LSLS     r2,r2,#28
+        0x00002ae4:    1888        ..      ADDS     r0,r1,r2
+        0x00002ae6:    f000f8f0    ....    BL       HR_REG_24BIT ; 0x2cca
+        0x00002aea:    4604        .F      MOV      r4,r0
+        0x00002aec:    495c        \I      LDR      r1,[pc,#368] ; [0x2c60] = 0x10004fe0
+        0x00002aee:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002af0:    2100        .!      MOVS     r1,#0
+        0x00002af2:    4a5c        \J      LDR      r2,[pc,#368] ; [0x2c64] = 0x100043c0
+        0x00002af4:    3220         2      ADDS     r2,r2,#0x20
+        0x00002af6:    7e92        .~      LDRB     r2,[r2,#0x1a]
+        0x00002af8:    4309        .C      ORRS     r1,r1,r1
+        0x00002afa:    4a5a        ZJ      LDR      r2,[pc,#360] ; [0x2c64] = 0x100043c0
+        0x00002afc:    3220         2      ADDS     r2,r2,#0x20
+        0x00002afe:    7e92        .~      LDRB     r2,[r2,#0x1a]
+        0x00002b00:    4311        .C      ORRS     r1,r1,r2
+        0x00002b02:    4a57        WJ      LDR      r2,[pc,#348] ; [0x2c60] = 0x10004fe0
+        0x00002b04:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x00002b06:    2200        ."      MOVS     r2,#0
+        0x00002b08:    4b56        VK      LDR      r3,[pc,#344] ; [0x2c64] = 0x100043c0
+        0x00002b0a:    3320         3      ADDS     r3,r3,#0x20
+        0x00002b0c:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x00002b0e:    4312        .C      ORRS     r2,r2,r2
+        0x00002b10:    4b54        TK      LDR      r3,[pc,#336] ; [0x2c64] = 0x100043c0
+        0x00002b12:    3320         3      ADDS     r3,r3,#0x20
+        0x00002b14:    7edb        .~      LDRB     r3,[r3,#0x1b]
+        0x00002b16:    431a        .C      ORRS     r2,r2,r3
+        0x00002b18:    0212        ..      LSLS     r2,r2,#8
+        0x00002b1a:    4311        .C      ORRS     r1,r1,r2
+        0x00002b1c:    4a50        PJ      LDR      r2,[pc,#320] ; [0x2c60] = 0x10004fe0
+        0x00002b1e:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x00002b20:    2200        ."      MOVS     r2,#0
+        0x00002b22:    4b50        PK      LDR      r3,[pc,#320] ; [0x2c64] = 0x100043c0
+        0x00002b24:    3320         3      ADDS     r3,r3,#0x20
+        0x00002b26:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x00002b28:    4312        .C      ORRS     r2,r2,r2
+        0x00002b2a:    4b4e        NK      LDR      r3,[pc,#312] ; [0x2c64] = 0x100043c0
+        0x00002b2c:    3320         3      ADDS     r3,r3,#0x20
+        0x00002b2e:    7f1b        ..      LDRB     r3,[r3,#0x1c]
+        0x00002b30:    431a        .C      ORRS     r2,r2,r3
+        0x00002b32:    0412        ..      LSLS     r2,r2,#16
+        0x00002b34:    4311        .C      ORRS     r1,r1,r2
+        0x00002b36:    2201        ."      MOVS     r2,#1
+        0x00002b38:    0712        ..      LSLS     r2,r2,#28
+        0x00002b3a:    1888        ..      ADDS     r0,r1,r2
+        0x00002b3c:    f000f8c5    ....    BL       HR_REG_24BIT ; 0x2cca
+        0x00002b40:    4605        .F      MOV      r5,r0
+        0x00002b42:    42a5        .B      CMP      r5,r4
+        0x00002b44:    d101        ..      BNE      0x2b4a ; IPC_IsTxBuffEmpty + 182
+        0x00002b46:    2001        .       MOVS     r0,#1
+        0x00002b48:    bd70        p.      POP      {r4-r6,pc}
+        0x00002b4a:    2000        .       MOVS     r0,#0
+        0x00002b4c:    e7fc        ..      B        0x2b48 ; IPC_IsTxBuffEmpty + 180
     IPC_IsRxBuffEmpty
-        0x00002b3a:    b570        p.      PUSH     {r4-r6,lr}
-        0x00002b3c:    4943        CI      LDR      r1,[pc,#268] ; [0x2c4c] = 0x10004fe0
-        0x00002b3e:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00002b40:    2100        .!      MOVS     r1,#0
-        0x00002b42:    4a43        CJ      LDR      r2,[pc,#268] ; [0x2c50] = 0x100043c0
-        0x00002b44:    3240        @2      ADDS     r2,r2,#0x40
-        0x00002b46:    78d2        .x      LDRB     r2,[r2,#3]
-        0x00002b48:    4309        .C      ORRS     r1,r1,r1
-        0x00002b4a:    4a41        AJ      LDR      r2,[pc,#260] ; [0x2c50] = 0x100043c0
-        0x00002b4c:    3240        @2      ADDS     r2,r2,#0x40
-        0x00002b4e:    78d2        .x      LDRB     r2,[r2,#3]
-        0x00002b50:    4311        .C      ORRS     r1,r1,r2
-        0x00002b52:    4a3e        >J      LDR      r2,[pc,#248] ; [0x2c4c] = 0x10004fe0
-        0x00002b54:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x00002b56:    2200        ."      MOVS     r2,#0
-        0x00002b58:    4b3d        =K      LDR      r3,[pc,#244] ; [0x2c50] = 0x100043c0
-        0x00002b5a:    3340        @3      ADDS     r3,r3,#0x40
-        0x00002b5c:    791b        .y      LDRB     r3,[r3,#4]
-        0x00002b5e:    4312        .C      ORRS     r2,r2,r2
-        0x00002b60:    4b3b        ;K      LDR      r3,[pc,#236] ; [0x2c50] = 0x100043c0
-        0x00002b62:    3340        @3      ADDS     r3,r3,#0x40
-        0x00002b64:    791b        .y      LDRB     r3,[r3,#4]
-        0x00002b66:    431a        .C      ORRS     r2,r2,r3
-        0x00002b68:    0212        ..      LSLS     r2,r2,#8
-        0x00002b6a:    4311        .C      ORRS     r1,r1,r2
-        0x00002b6c:    4a37        7J      LDR      r2,[pc,#220] ; [0x2c4c] = 0x10004fe0
-        0x00002b6e:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x00002b70:    2200        ."      MOVS     r2,#0
-        0x00002b72:    4b37        7K      LDR      r3,[pc,#220] ; [0x2c50] = 0x100043c0
-        0x00002b74:    3340        @3      ADDS     r3,r3,#0x40
-        0x00002b76:    795b        [y      LDRB     r3,[r3,#5]
-        0x00002b78:    4312        .C      ORRS     r2,r2,r2
-        0x00002b7a:    4b35        5K      LDR      r3,[pc,#212] ; [0x2c50] = 0x100043c0
-        0x00002b7c:    3340        @3      ADDS     r3,r3,#0x40
-        0x00002b7e:    795b        [y      LDRB     r3,[r3,#5]
-        0x00002b80:    431a        .C      ORRS     r2,r2,r3
-        0x00002b82:    0412        ..      LSLS     r2,r2,#16
-        0x00002b84:    4311        .C      ORRS     r1,r1,r2
-        0x00002b86:    2201        ."      MOVS     r2,#1
-        0x00002b88:    0712        ..      LSLS     r2,r2,#28
-        0x00002b8a:    1888        ..      ADDS     r0,r1,r2
-        0x00002b8c:    f000f893    ....    BL       HR_REG_24BIT ; 0x2cb6
-        0x00002b90:    4604        .F      MOV      r4,r0
-        0x00002b92:    492e        .I      LDR      r1,[pc,#184] ; [0x2c4c] = 0x10004fe0
-        0x00002b94:    7fc9        ..      LDRB     r1,[r1,#0x1f]
-        0x00002b96:    2100        .!      MOVS     r1,#0
-        0x00002b98:    4a2d        -J      LDR      r2,[pc,#180] ; [0x2c50] = 0x100043c0
-        0x00002b9a:    3240        @2      ADDS     r2,r2,#0x40
-        0x00002b9c:    7812        .x      LDRB     r2,[r2,#0]
-        0x00002b9e:    4309        .C      ORRS     r1,r1,r1
-        0x00002ba0:    4a2b        +J      LDR      r2,[pc,#172] ; [0x2c50] = 0x100043c0
-        0x00002ba2:    3240        @2      ADDS     r2,r2,#0x40
-        0x00002ba4:    7812        .x      LDRB     r2,[r2,#0]
-        0x00002ba6:    4311        .C      ORRS     r1,r1,r2
-        0x00002ba8:    4a28        (J      LDR      r2,[pc,#160] ; [0x2c4c] = 0x10004fe0
-        0x00002baa:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x00002bac:    2200        ."      MOVS     r2,#0
-        0x00002bae:    4b28        (K      LDR      r3,[pc,#160] ; [0x2c50] = 0x100043c0
-        0x00002bb0:    3340        @3      ADDS     r3,r3,#0x40
-        0x00002bb2:    785b        [x      LDRB     r3,[r3,#1]
-        0x00002bb4:    4312        .C      ORRS     r2,r2,r2
-        0x00002bb6:    4b26        &K      LDR      r3,[pc,#152] ; [0x2c50] = 0x100043c0
-        0x00002bb8:    3340        @3      ADDS     r3,r3,#0x40
-        0x00002bba:    785b        [x      LDRB     r3,[r3,#1]
-        0x00002bbc:    431a        .C      ORRS     r2,r2,r3
-        0x00002bbe:    0212        ..      LSLS     r2,r2,#8
-        0x00002bc0:    4311        .C      ORRS     r1,r1,r2
-        0x00002bc2:    4a22        "J      LDR      r2,[pc,#136] ; [0x2c4c] = 0x10004fe0
-        0x00002bc4:    7fd2        ..      LDRB     r2,[r2,#0x1f]
-        0x00002bc6:    2200        ."      MOVS     r2,#0
-        0x00002bc8:    4b21        !K      LDR      r3,[pc,#132] ; [0x2c50] = 0x100043c0
-        0x00002bca:    3340        @3      ADDS     r3,r3,#0x40
-        0x00002bcc:    789b        .x      LDRB     r3,[r3,#2]
-        0x00002bce:    4312        .C      ORRS     r2,r2,r2
-        0x00002bd0:    4b1f        .K      LDR      r3,[pc,#124] ; [0x2c50] = 0x100043c0
-        0x00002bd2:    3340        @3      ADDS     r3,r3,#0x40
-        0x00002bd4:    789b        .x      LDRB     r3,[r3,#2]
-        0x00002bd6:    431a        .C      ORRS     r2,r2,r3
-        0x00002bd8:    0412        ..      LSLS     r2,r2,#16
-        0x00002bda:    4311        .C      ORRS     r1,r1,r2
-        0x00002bdc:    2201        ."      MOVS     r2,#1
-        0x00002bde:    0712        ..      LSLS     r2,r2,#28
-        0x00002be0:    1888        ..      ADDS     r0,r1,r2
-        0x00002be2:    f000f868    ..h.    BL       HR_REG_24BIT ; 0x2cb6
-        0x00002be6:    4605        .F      MOV      r5,r0
-        0x00002be8:    42ac        .B      CMP      r4,r5
-        0x00002bea:    d101        ..      BNE      0x2bf0 ; IPC_IsRxBuffEmpty + 182
-        0x00002bec:    2001        .       MOVS     r0,#1
-        0x00002bee:    bd70        p.      POP      {r4-r6,pc}
-        0x00002bf0:    2000        .       MOVS     r0,#0
-        0x00002bf2:    e7fc        ..      B        0x2bee ; IPC_IsRxBuffEmpty + 180
+        0x00002b4e:    b570        p.      PUSH     {r4-r6,lr}
+        0x00002b50:    4943        CI      LDR      r1,[pc,#268] ; [0x2c60] = 0x10004fe0
+        0x00002b52:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002b54:    2100        .!      MOVS     r1,#0
+        0x00002b56:    4a43        CJ      LDR      r2,[pc,#268] ; [0x2c64] = 0x100043c0
+        0x00002b58:    3240        @2      ADDS     r2,r2,#0x40
+        0x00002b5a:    78d2        .x      LDRB     r2,[r2,#3]
+        0x00002b5c:    4309        .C      ORRS     r1,r1,r1
+        0x00002b5e:    4a41        AJ      LDR      r2,[pc,#260] ; [0x2c64] = 0x100043c0
+        0x00002b60:    3240        @2      ADDS     r2,r2,#0x40
+        0x00002b62:    78d2        .x      LDRB     r2,[r2,#3]
+        0x00002b64:    4311        .C      ORRS     r1,r1,r2
+        0x00002b66:    4a3e        >J      LDR      r2,[pc,#248] ; [0x2c60] = 0x10004fe0
+        0x00002b68:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x00002b6a:    2200        ."      MOVS     r2,#0
+        0x00002b6c:    4b3d        =K      LDR      r3,[pc,#244] ; [0x2c64] = 0x100043c0
+        0x00002b6e:    3340        @3      ADDS     r3,r3,#0x40
+        0x00002b70:    791b        .y      LDRB     r3,[r3,#4]
+        0x00002b72:    4312        .C      ORRS     r2,r2,r2
+        0x00002b74:    4b3b        ;K      LDR      r3,[pc,#236] ; [0x2c64] = 0x100043c0
+        0x00002b76:    3340        @3      ADDS     r3,r3,#0x40
+        0x00002b78:    791b        .y      LDRB     r3,[r3,#4]
+        0x00002b7a:    431a        .C      ORRS     r2,r2,r3
+        0x00002b7c:    0212        ..      LSLS     r2,r2,#8
+        0x00002b7e:    4311        .C      ORRS     r1,r1,r2
+        0x00002b80:    4a37        7J      LDR      r2,[pc,#220] ; [0x2c60] = 0x10004fe0
+        0x00002b82:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x00002b84:    2200        ."      MOVS     r2,#0
+        0x00002b86:    4b37        7K      LDR      r3,[pc,#220] ; [0x2c64] = 0x100043c0
+        0x00002b88:    3340        @3      ADDS     r3,r3,#0x40
+        0x00002b8a:    795b        [y      LDRB     r3,[r3,#5]
+        0x00002b8c:    4312        .C      ORRS     r2,r2,r2
+        0x00002b8e:    4b35        5K      LDR      r3,[pc,#212] ; [0x2c64] = 0x100043c0
+        0x00002b90:    3340        @3      ADDS     r3,r3,#0x40
+        0x00002b92:    795b        [y      LDRB     r3,[r3,#5]
+        0x00002b94:    431a        .C      ORRS     r2,r2,r3
+        0x00002b96:    0412        ..      LSLS     r2,r2,#16
+        0x00002b98:    4311        .C      ORRS     r1,r1,r2
+        0x00002b9a:    2201        ."      MOVS     r2,#1
+        0x00002b9c:    0712        ..      LSLS     r2,r2,#28
+        0x00002b9e:    1888        ..      ADDS     r0,r1,r2
+        0x00002ba0:    f000f893    ....    BL       HR_REG_24BIT ; 0x2cca
+        0x00002ba4:    4604        .F      MOV      r4,r0
+        0x00002ba6:    492e        .I      LDR      r1,[pc,#184] ; [0x2c60] = 0x10004fe0
+        0x00002ba8:    7fc9        ..      LDRB     r1,[r1,#0x1f]
+        0x00002baa:    2100        .!      MOVS     r1,#0
+        0x00002bac:    4a2d        -J      LDR      r2,[pc,#180] ; [0x2c64] = 0x100043c0
+        0x00002bae:    3240        @2      ADDS     r2,r2,#0x40
+        0x00002bb0:    7812        .x      LDRB     r2,[r2,#0]
+        0x00002bb2:    4309        .C      ORRS     r1,r1,r1
+        0x00002bb4:    4a2b        +J      LDR      r2,[pc,#172] ; [0x2c64] = 0x100043c0
+        0x00002bb6:    3240        @2      ADDS     r2,r2,#0x40
+        0x00002bb8:    7812        .x      LDRB     r2,[r2,#0]
+        0x00002bba:    4311        .C      ORRS     r1,r1,r2
+        0x00002bbc:    4a28        (J      LDR      r2,[pc,#160] ; [0x2c60] = 0x10004fe0
+        0x00002bbe:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x00002bc0:    2200        ."      MOVS     r2,#0
+        0x00002bc2:    4b28        (K      LDR      r3,[pc,#160] ; [0x2c64] = 0x100043c0
+        0x00002bc4:    3340        @3      ADDS     r3,r3,#0x40
+        0x00002bc6:    785b        [x      LDRB     r3,[r3,#1]
+        0x00002bc8:    4312        .C      ORRS     r2,r2,r2
+        0x00002bca:    4b26        &K      LDR      r3,[pc,#152] ; [0x2c64] = 0x100043c0
+        0x00002bcc:    3340        @3      ADDS     r3,r3,#0x40
+        0x00002bce:    785b        [x      LDRB     r3,[r3,#1]
+        0x00002bd0:    431a        .C      ORRS     r2,r2,r3
+        0x00002bd2:    0212        ..      LSLS     r2,r2,#8
+        0x00002bd4:    4311        .C      ORRS     r1,r1,r2
+        0x00002bd6:    4a22        "J      LDR      r2,[pc,#136] ; [0x2c60] = 0x10004fe0
+        0x00002bd8:    7fd2        ..      LDRB     r2,[r2,#0x1f]
+        0x00002bda:    2200        ."      MOVS     r2,#0
+        0x00002bdc:    4b21        !K      LDR      r3,[pc,#132] ; [0x2c64] = 0x100043c0
+        0x00002bde:    3340        @3      ADDS     r3,r3,#0x40
+        0x00002be0:    789b        .x      LDRB     r3,[r3,#2]
+        0x00002be2:    4312        .C      ORRS     r2,r2,r2
+        0x00002be4:    4b1f        .K      LDR      r3,[pc,#124] ; [0x2c64] = 0x100043c0
+        0x00002be6:    3340        @3      ADDS     r3,r3,#0x40
+        0x00002be8:    789b        .x      LDRB     r3,[r3,#2]
+        0x00002bea:    431a        .C      ORRS     r2,r2,r3
+        0x00002bec:    0412        ..      LSLS     r2,r2,#16
+        0x00002bee:    4311        .C      ORRS     r1,r1,r2
+        0x00002bf0:    2201        ."      MOVS     r2,#1
+        0x00002bf2:    0712        ..      LSLS     r2,r2,#28
+        0x00002bf4:    1888        ..      ADDS     r0,r1,r2
+        0x00002bf6:    f000f868    ..h.    BL       HR_REG_24BIT ; 0x2cca
+        0x00002bfa:    4605        .F      MOV      r5,r0
+        0x00002bfc:    42ac        .B      CMP      r4,r5
+        0x00002bfe:    d101        ..      BNE      0x2c04 ; IPC_IsRxBuffEmpty + 182
+        0x00002c00:    2001        .       MOVS     r0,#1
+        0x00002c02:    bd70        p.      POP      {r4-r6,pc}
+        0x00002c04:    2000        .       MOVS     r0,#0
+        0x00002c06:    e7fc        ..      B        0x2c02 ; IPC_IsRxBuffEmpty + 180
     IPC_HandleRxPacket
-        0x00002bf4:    b510        ..      PUSH     {r4,lr}
-        0x00002bf6:    4c19        .L      LDR      r4,[pc,#100] ; [0x2c5c] = 0x1001105c
-        0x00002bf8:    f7ffff9f    ....    BL       IPC_IsRxBuffEmpty ; 0x2b3a
-        0x00002bfc:    2800        .(      CMP      r0,#0
-        0x00002bfe:    d000        ..      BEQ      0x2c02 ; IPC_HandleRxPacket + 14
-        0x00002c00:    bd10        ..      POP      {r4,pc}
-        0x00002c02:    2102        .!      MOVS     r1,#2
-        0x00002c04:    4815        .H      LDR      r0,[pc,#84] ; [0x2c5c] = 0x1001105c
-        0x00002c06:    f7fffad8    ....    BL       ipcRx ; 0x21ba
-        0x00002c0a:    7820         x      LDRB     r0,[r4,#0]
-        0x00002c0c:    2800        .(      CMP      r0,#0
-        0x00002c0e:    dd10        ..      BLE      0x2c32 ; IPC_HandleRxPacket + 62
-        0x00002c10:    7820         x      LDRB     r0,[r4,#0]
-        0x00002c12:    280d        .(      CMP      r0,#0xd
-        0x00002c14:    da0d        ..      BGE      0x2c32 ; IPC_HandleRxPacket + 62
-        0x00002c16:    7861        ax      LDRB     r1,[r4,#1]
-        0x00002c18:    4810        .H      LDR      r0,[pc,#64] ; [0x2c5c] = 0x1001105c
-        0x00002c1a:    1c80        ..      ADDS     r0,r0,#2
-        0x00002c1c:    f7fffacd    ....    BL       ipcRx ; 0x21ba
-        0x00002c20:    7860        `x      LDRB     r0,[r4,#1]
-        0x00002c22:    7821        !x      LDRB     r1,[r4,#0]
-        0x00002c24:    0089        ..      LSLS     r1,r1,#2
-        0x00002c26:    4b0e        .K      LDR      r3,[pc,#56] ; [0x2c60] = 0x10011014
-        0x00002c28:    681b        .h      LDR      r3,[r3,#0]
-        0x00002c2a:    585a        ZX      LDR      r2,[r3,r1]
-        0x00002c2c:    1ca1        ..      ADDS     r1,r4,#2
-        0x00002c2e:    4790        .G      BLX      r2
-        0x00002c30:    e001        ..      B        0x2c36 ; IPC_HandleRxPacket + 66
-        0x00002c32:    bf00        ..      NOP      
-        0x00002c34:    e7fe        ..      B        0x2c34 ; IPC_HandleRxPacket + 64
-        0x00002c36:    bf00        ..      NOP      
-        0x00002c38:    e7e2        ..      B        0x2c00 ; IPC_HandleRxPacket + 12
+        0x00002c08:    b510        ..      PUSH     {r4,lr}
+        0x00002c0a:    4c19        .L      LDR      r4,[pc,#100] ; [0x2c70] = 0x1001105c
+        0x00002c0c:    f7ffff9f    ....    BL       IPC_IsRxBuffEmpty ; 0x2b4e
+        0x00002c10:    2800        .(      CMP      r0,#0
+        0x00002c12:    d000        ..      BEQ      0x2c16 ; IPC_HandleRxPacket + 14
+        0x00002c14:    bd10        ..      POP      {r4,pc}
+        0x00002c16:    2102        .!      MOVS     r1,#2
+        0x00002c18:    4815        .H      LDR      r0,[pc,#84] ; [0x2c70] = 0x1001105c
+        0x00002c1a:    f7fffad8    ....    BL       ipcRx ; 0x21ce
+        0x00002c1e:    7820         x      LDRB     r0,[r4,#0]
+        0x00002c20:    2800        .(      CMP      r0,#0
+        0x00002c22:    dd10        ..      BLE      0x2c46 ; IPC_HandleRxPacket + 62
+        0x00002c24:    7820         x      LDRB     r0,[r4,#0]
+        0x00002c26:    280d        .(      CMP      r0,#0xd
+        0x00002c28:    da0d        ..      BGE      0x2c46 ; IPC_HandleRxPacket + 62
+        0x00002c2a:    7861        ax      LDRB     r1,[r4,#1]
+        0x00002c2c:    4810        .H      LDR      r0,[pc,#64] ; [0x2c70] = 0x1001105c
+        0x00002c2e:    1c80        ..      ADDS     r0,r0,#2
+        0x00002c30:    f7fffacd    ....    BL       ipcRx ; 0x21ce
+        0x00002c34:    7860        `x      LDRB     r0,[r4,#1]
+        0x00002c36:    7821        !x      LDRB     r1,[r4,#0]
+        0x00002c38:    0089        ..      LSLS     r1,r1,#2
+        0x00002c3a:    4b0e        .K      LDR      r3,[pc,#56] ; [0x2c74] = 0x10011014
+        0x00002c3c:    681b        .h      LDR      r3,[r3,#0]
+        0x00002c3e:    585a        ZX      LDR      r2,[r3,r1]
+        0x00002c40:    1ca1        ..      ADDS     r1,r4,#2
+        0x00002c42:    4790        .G      BLX      r2
+        0x00002c44:    e001        ..      B        0x2c4a ; IPC_HandleRxPacket + 66
+        0x00002c46:    bf00        ..      NOP      
+        0x00002c48:    e7fe        ..      B        0x2c48 ; IPC_HandleRxPacket + 64
+        0x00002c4a:    bf00        ..      NOP      
+        0x00002c4c:    e7e2        ..      B        0x2c14 ; IPC_HandleRxPacket + 12
     hw_delay
-        0x00002c3a:    bf00        ..      NOP      
-        0x00002c3c:    bf00        ..      NOP      
-        0x00002c3e:    bf00        ..      NOP      
-        0x00002c40:    bf00        ..      NOP      
-        0x00002c42:    bf00        ..      NOP      
-        0x00002c44:    4770        pG      BX       lr
+        0x00002c4e:    bf00        ..      NOP      
+        0x00002c50:    bf00        ..      NOP      
+        0x00002c52:    bf00        ..      NOP      
+        0x00002c54:    bf00        ..      NOP      
+        0x00002c56:    bf00        ..      NOP      
+        0x00002c58:    4770        pG      BX       lr
     $d
-        0x00002c46:    0000        ..      DCW    0
-        0x00002c48:    10011124    $...    DCD    268505380
-        0x00002c4c:    10004fe0    .O..    DCD    268455904
-        0x00002c50:    100043c0    .C..    DCD    268452800
-        0x00002c54:    00002eec    ....    DCD    12012
-        0x00002c58:    00002710    .'..    DCD    10000
-        0x00002c5c:    1001105c    \...    DCD    268505180
-        0x00002c60:    10011014    ....    DCD    268505108
+        0x00002c5a:    0000        ..      DCW    0
+        0x00002c5c:    10011124    $...    DCD    268505380
+        0x00002c60:    10004fe0    .O..    DCD    268455904
+        0x00002c64:    100043c0    .C..    DCD    268452800
+        0x00002c68:    00002f00    ./..    DCD    12032
+        0x00002c6c:    00002710    .'..    DCD    10000
+        0x00002c70:    1001105c    \...    DCD    268505180
+        0x00002c74:    10011014    ....    DCD    268505108
     $t
     .text
     HW_REG_24BIT
-        0x00002c64:    b570        p.      PUSH     {r4-r6,lr}
-        0x00002c66:    4604        .F      MOV      r4,r0
-        0x00002c68:    460d        .F      MOV      r5,r1
-        0x00002c6a:    7025        %p      STRB     r5,[r4,#0]
-        0x00002c6c:    f000f8fd    ....    BL       hw_delay ; 0x2e6a
-        0x00002c70:    0428        (.      LSLS     r0,r5,#16
-        0x00002c72:    0e00        ..      LSRS     r0,r0,#24
-        0x00002c74:    7060        `p      STRB     r0,[r4,#1]
-        0x00002c76:    f000f8f8    ....    BL       hw_delay ; 0x2e6a
-        0x00002c7a:    0228        (.      LSLS     r0,r5,#8
-        0x00002c7c:    0e00        ..      LSRS     r0,r0,#24
-        0x00002c7e:    70a0        .p      STRB     r0,[r4,#2]
-        0x00002c80:    bd70        p.      POP      {r4-r6,pc}
+        0x00002c78:    b570        p.      PUSH     {r4-r6,lr}
+        0x00002c7a:    4604        .F      MOV      r4,r0
+        0x00002c7c:    460d        .F      MOV      r5,r1
+        0x00002c7e:    7025        %p      STRB     r5,[r4,#0]
+        0x00002c80:    f000f8fd    ....    BL       hw_delay ; 0x2e7e
+        0x00002c84:    0428        (.      LSLS     r0,r5,#16
+        0x00002c86:    0e00        ..      LSRS     r0,r0,#24
+        0x00002c88:    7060        `p      STRB     r0,[r4,#1]
+        0x00002c8a:    f000f8f8    ....    BL       hw_delay ; 0x2e7e
+        0x00002c8e:    0228        (.      LSLS     r0,r5,#8
+        0x00002c90:    0e00        ..      LSRS     r0,r0,#24
+        0x00002c92:    70a0        .p      STRB     r0,[r4,#2]
+        0x00002c94:    bd70        p.      POP      {r4-r6,pc}
     HW_REG_16BIT
-        0x00002c82:    b570        p.      PUSH     {r4-r6,lr}
-        0x00002c84:    4604        .F      MOV      r4,r0
-        0x00002c86:    460d        .F      MOV      r5,r1
-        0x00002c88:    7025        %p      STRB     r5,[r4,#0]
-        0x00002c8a:    f000f8ee    ....    BL       hw_delay ; 0x2e6a
-        0x00002c8e:    1228        (.      ASRS     r0,r5,#8
-        0x00002c90:    7060        `p      STRB     r0,[r4,#1]
-        0x00002c92:    bd70        p.      POP      {r4-r6,pc}
+        0x00002c96:    b570        p.      PUSH     {r4-r6,lr}
+        0x00002c98:    4604        .F      MOV      r4,r0
+        0x00002c9a:    460d        .F      MOV      r5,r1
+        0x00002c9c:    7025        %p      STRB     r5,[r4,#0]
+        0x00002c9e:    f000f8ee    ....    BL       hw_delay ; 0x2e7e
+        0x00002ca2:    1228        (.      ASRS     r0,r5,#8
+        0x00002ca4:    7060        `p      STRB     r0,[r4,#1]
+        0x00002ca6:    bd70        p.      POP      {r4-r6,pc}
     HR_REG_16BIT
-        0x00002c94:    b570        p.      PUSH     {r4-r6,lr}
-        0x00002c96:    4604        .F      MOV      r4,r0
-        0x00002c98:    2500        .%      MOVS     r5,#0
-        0x00002c9a:    2600        .&      MOVS     r6,#0
-        0x00002c9c:    f000f8e5    ....    BL       hw_delay ; 0x2e6a
-        0x00002ca0:    7825        %x      LDRB     r5,[r4,#0]
-        0x00002ca2:    f000f8e2    ....    BL       hw_delay ; 0x2e6a
-        0x00002ca6:    7866        fx      LDRB     r6,[r4,#1]
-        0x00002ca8:    0230        0.      LSLS     r0,r6,#8
-        0x00002caa:    21ff        .!      MOVS     r1,#0xff
-        0x00002cac:    0209        ..      LSLS     r1,r1,#8
-        0x00002cae:    4008        .@      ANDS     r0,r0,r1
-        0x00002cb0:    4305        .C      ORRS     r5,r5,r0
-        0x00002cb2:    4628        (F      MOV      r0,r5
-        0x00002cb4:    bd70        p.      POP      {r4-r6,pc}
+        0x00002ca8:    b570        p.      PUSH     {r4-r6,lr}
+        0x00002caa:    4604        .F      MOV      r4,r0
+        0x00002cac:    2500        .%      MOVS     r5,#0
+        0x00002cae:    2600        .&      MOVS     r6,#0
+        0x00002cb0:    f000f8e5    ....    BL       hw_delay ; 0x2e7e
+        0x00002cb4:    7825        %x      LDRB     r5,[r4,#0]
+        0x00002cb6:    f000f8e2    ....    BL       hw_delay ; 0x2e7e
+        0x00002cba:    7866        fx      LDRB     r6,[r4,#1]
+        0x00002cbc:    0230        0.      LSLS     r0,r6,#8
+        0x00002cbe:    21ff        .!      MOVS     r1,#0xff
+        0x00002cc0:    0209        ..      LSLS     r1,r1,#8
+        0x00002cc2:    4008        .@      ANDS     r0,r0,r1
+        0x00002cc4:    4305        .C      ORRS     r5,r5,r0
+        0x00002cc6:    4628        (F      MOV      r0,r5
+        0x00002cc8:    bd70        p.      POP      {r4-r6,pc}
     HR_REG_24BIT
-        0x00002cb6:    b570        p.      PUSH     {r4-r6,lr}
-        0x00002cb8:    4604        .F      MOV      r4,r0
-        0x00002cba:    2500        .%      MOVS     r5,#0
-        0x00002cbc:    f000f8d5    ....    BL       hw_delay ; 0x2e6a
-        0x00002cc0:    7825        %x      LDRB     r5,[r4,#0]
-        0x00002cc2:    f000f8d2    ....    BL       hw_delay ; 0x2e6a
-        0x00002cc6:    7860        `x      LDRB     r0,[r4,#1]
-        0x00002cc8:    0200        ..      LSLS     r0,r0,#8
-        0x00002cca:    4305        .C      ORRS     r5,r5,r0
-        0x00002ccc:    f000f8cd    ....    BL       hw_delay ; 0x2e6a
-        0x00002cd0:    78a0        .x      LDRB     r0,[r4,#2]
-        0x00002cd2:    0400        ..      LSLS     r0,r0,#16
-        0x00002cd4:    4305        .C      ORRS     r5,r5,r0
-        0x00002cd6:    4628        (F      MOV      r0,r5
-        0x00002cd8:    bd70        p.      POP      {r4-r6,pc}
+        0x00002cca:    b570        p.      PUSH     {r4-r6,lr}
+        0x00002ccc:    4604        .F      MOV      r4,r0
+        0x00002cce:    2500        .%      MOVS     r5,#0
+        0x00002cd0:    f000f8d5    ....    BL       hw_delay ; 0x2e7e
+        0x00002cd4:    7825        %x      LDRB     r5,[r4,#0]
+        0x00002cd6:    f000f8d2    ....    BL       hw_delay ; 0x2e7e
+        0x00002cda:    7860        `x      LDRB     r0,[r4,#1]
+        0x00002cdc:    0200        ..      LSLS     r0,r0,#8
+        0x00002cde:    4305        .C      ORRS     r5,r5,r0
+        0x00002ce0:    f000f8cd    ....    BL       hw_delay ; 0x2e7e
+        0x00002ce4:    78a0        .x      LDRB     r0,[r4,#2]
+        0x00002ce6:    0400        ..      LSLS     r0,r0,#16
+        0x00002ce8:    4305        .C      ORRS     r5,r5,r0
+        0x00002cea:    4628        (F      MOV      r0,r5
+        0x00002cec:    bd70        p.      POP      {r4-r6,pc}
     xmemcpy
-        0x00002cda:    b570        p.      PUSH     {r4-r6,lr}
-        0x00002cdc:    4603        .F      MOV      r3,r0
-        0x00002cde:    2000        .       MOVS     r0,#0
-        0x00002ce0:    e020         .      B        0x2d24 ; xmemcpy + 74
-        0x00002ce2:    bf00        ..      NOP      
-        0x00002ce4:    4c64        dL      LDR      r4,[pc,#400] ; [0x2e78] = 0x10004fe0
-        0x00002ce6:    7fe4        ..      LDRB     r4,[r4,#0x1f]
-        0x00002ce8:    2400        .$      MOVS     r4,#0
-        0x00002cea:    180d        ..      ADDS     r5,r1,r0
-        0x00002cec:    2601        .&      MOVS     r6,#1
-        0x00002cee:    0736        6.      LSLS     r6,r6,#28
-        0x00002cf0:    4335        5C      ORRS     r5,r5,r6
-        0x00002cf2:    782d        -x      LDRB     r5,[r5,#0]
-        0x00002cf4:    4324        $C      ORRS     r4,r4,r4
-        0x00002cf6:    180d        ..      ADDS     r5,r1,r0
-        0x00002cf8:    4335        5C      ORRS     r5,r5,r6
-        0x00002cfa:    782d        -x      LDRB     r5,[r5,#0]
-        0x00002cfc:    432c        ,C      ORRS     r4,r4,r5
-        0x00002cfe:    181d        ..      ADDS     r5,r3,r0
-        0x00002d00:    4335        5C      ORRS     r5,r5,r6
-        0x00002d02:    702c        ,p      STRB     r4,[r5,#0]
-        0x00002d04:    4c5c        \L      LDR      r4,[pc,#368] ; [0x2e78] = 0x10004fe0
-        0x00002d06:    7fe4        ..      LDRB     r4,[r4,#0x1f]
-        0x00002d08:    2400        .$      MOVS     r4,#0
+        0x00002cee:    b570        p.      PUSH     {r4-r6,lr}
+        0x00002cf0:    4603        .F      MOV      r3,r0
+        0x00002cf2:    2000        .       MOVS     r0,#0
+        0x00002cf4:    e020         .      B        0x2d38 ; xmemcpy + 74
+        0x00002cf6:    bf00        ..      NOP      
+        0x00002cf8:    4c64        dL      LDR      r4,[pc,#400] ; [0x2e8c] = 0x10004fe0
+        0x00002cfa:    7fe4        ..      LDRB     r4,[r4,#0x1f]
+        0x00002cfc:    2400        .$      MOVS     r4,#0
+        0x00002cfe:    180d        ..      ADDS     r5,r1,r0
+        0x00002d00:    2601        .&      MOVS     r6,#1
+        0x00002d02:    0736        6.      LSLS     r6,r6,#28
+        0x00002d04:    4335        5C      ORRS     r5,r5,r6
+        0x00002d06:    782d        -x      LDRB     r5,[r5,#0]
+        0x00002d08:    4324        $C      ORRS     r4,r4,r4
         0x00002d0a:    180d        ..      ADDS     r5,r1,r0
         0x00002d0c:    4335        5C      ORRS     r5,r5,r6
         0x00002d0e:    782d        -x      LDRB     r5,[r5,#0]
-        0x00002d10:    4324        $C      ORRS     r4,r4,r4
-        0x00002d12:    180d        ..      ADDS     r5,r1,r0
+        0x00002d10:    432c        ,C      ORRS     r4,r4,r5
+        0x00002d12:    181d        ..      ADDS     r5,r3,r0
         0x00002d14:    4335        5C      ORRS     r5,r5,r6
-        0x00002d16:    782d        -x      LDRB     r5,[r5,#0]
-        0x00002d18:    432c        ,C      ORRS     r4,r4,r5
-        0x00002d1a:    181d        ..      ADDS     r5,r3,r0
-        0x00002d1c:    4335        5C      ORRS     r5,r5,r6
-        0x00002d1e:    702c        ,p      STRB     r4,[r5,#0]
-        0x00002d20:    bf00        ..      NOP      
-        0x00002d22:    1c40        @.      ADDS     r0,r0,#1
-        0x00002d24:    4290        .B      CMP      r0,r2
-        0x00002d26:    dbdc        ..      BLT      0x2ce2 ; xmemcpy + 8
-        0x00002d28:    bd70        p.      POP      {r4-r6,pc}
+        0x00002d16:    702c        ,p      STRB     r4,[r5,#0]
+        0x00002d18:    4c5c        \L      LDR      r4,[pc,#368] ; [0x2e8c] = 0x10004fe0
+        0x00002d1a:    7fe4        ..      LDRB     r4,[r4,#0x1f]
+        0x00002d1c:    2400        .$      MOVS     r4,#0
+        0x00002d1e:    180d        ..      ADDS     r5,r1,r0
+        0x00002d20:    4335        5C      ORRS     r5,r5,r6
+        0x00002d22:    782d        -x      LDRB     r5,[r5,#0]
+        0x00002d24:    4324        $C      ORRS     r4,r4,r4
+        0x00002d26:    180d        ..      ADDS     r5,r1,r0
+        0x00002d28:    4335        5C      ORRS     r5,r5,r6
+        0x00002d2a:    782d        -x      LDRB     r5,[r5,#0]
+        0x00002d2c:    432c        ,C      ORRS     r4,r4,r5
+        0x00002d2e:    181d        ..      ADDS     r5,r3,r0
+        0x00002d30:    4335        5C      ORRS     r5,r5,r6
+        0x00002d32:    702c        ,p      STRB     r4,[r5,#0]
+        0x00002d34:    bf00        ..      NOP      
+        0x00002d36:    1c40        @.      ADDS     r0,r0,#1
+        0x00002d38:    4290        .B      CMP      r0,r2
+        0x00002d3a:    dbdc        ..      BLT      0x2cf6 ; xmemcpy + 8
+        0x00002d3c:    bd70        p.      POP      {r4-r6,pc}
     xstrlen
-        0x00002d2a:    4601        .F      MOV      r1,r0
-        0x00002d2c:    2200        ."      MOVS     r2,#0
-        0x00002d2e:    e001        ..      B        0x2d34 ; xstrlen + 10
-        0x00002d30:    1c52        R.      ADDS     r2,r2,#1
-        0x00002d32:    1c49        I.      ADDS     r1,r1,#1
-        0x00002d34:    7808        .x      LDRB     r0,[r1,#0]
-        0x00002d36:    2800        .(      CMP      r0,#0
-        0x00002d38:    d1fa        ..      BNE      0x2d30 ; xstrlen + 6
-        0x00002d3a:    b290        ..      UXTH     r0,r2
-        0x00002d3c:    4770        pG      BX       lr
+        0x00002d3e:    4601        .F      MOV      r1,r0
+        0x00002d40:    2200        ."      MOVS     r2,#0
+        0x00002d42:    e001        ..      B        0x2d48 ; xstrlen + 10
+        0x00002d44:    1c52        R.      ADDS     r2,r2,#1
+        0x00002d46:    1c49        I.      ADDS     r1,r1,#1
+        0x00002d48:    7808        .x      LDRB     r0,[r1,#0]
+        0x00002d4a:    2800        .(      CMP      r0,#0
+        0x00002d4c:    d1fa        ..      BNE      0x2d44 ; xstrlen + 6
+        0x00002d4e:    b290        ..      UXTH     r0,r2
+        0x00002d50:    4770        pG      BX       lr
     error_handle
-        0x00002d3e:    bf00        ..      NOP      
-        0x00002d40:    e7fe        ..      B        0x2d40 ; error_handle + 2
+        0x00002d52:    bf00        ..      NOP      
+        0x00002d54:    e7fe        ..      B        0x2d54 ; error_handle + 2
     Lpm_LockLpm
-        0x00002d42:    b570        p.      PUSH     {r4-r6,lr}
-        0x00002d44:    4604        .F      MOV      r4,r0
-        0x00002d46:    484d        MH      LDR      r0,[pc,#308] ; [0x2e7c] = 0x1000442a
-        0x00002d48:    f7ffffa4    ....    BL       HR_REG_16BIT ; 0x2c94
-        0x00002d4c:    4320         C      ORRS     r0,r0,r4
-        0x00002d4e:    4605        .F      MOV      r5,r0
-        0x00002d50:    4629        )F      MOV      r1,r5
-        0x00002d52:    484a        JH      LDR      r0,[pc,#296] ; [0x2e7c] = 0x1000442a
-        0x00002d54:    f7ffff95    ....    BL       HW_REG_16BIT ; 0x2c82
-        0x00002d58:    bd70        p.      POP      {r4-r6,pc}
+        0x00002d56:    b570        p.      PUSH     {r4-r6,lr}
+        0x00002d58:    4604        .F      MOV      r4,r0
+        0x00002d5a:    484d        MH      LDR      r0,[pc,#308] ; [0x2e90] = 0x1000442a
+        0x00002d5c:    f7ffffa4    ....    BL       HR_REG_16BIT ; 0x2ca8
+        0x00002d60:    4320         C      ORRS     r0,r0,r4
+        0x00002d62:    4605        .F      MOV      r5,r0
+        0x00002d64:    4629        )F      MOV      r1,r5
+        0x00002d66:    484a        JH      LDR      r0,[pc,#296] ; [0x2e90] = 0x1000442a
+        0x00002d68:    f7ffff95    ....    BL       HW_REG_16BIT ; 0x2c96
+        0x00002d6c:    bd70        p.      POP      {r4-r6,pc}
     Lpm_unLockLpm
-        0x00002d5a:    b570        p.      PUSH     {r4-r6,lr}
-        0x00002d5c:    4604        .F      MOV      r4,r0
-        0x00002d5e:    4847        GH      LDR      r0,[pc,#284] ; [0x2e7c] = 0x1000442a
-        0x00002d60:    f7ffff98    ....    BL       HR_REG_16BIT ; 0x2c94
-        0x00002d64:    43a0        .C      BICS     r0,r0,r4
-        0x00002d66:    4605        .F      MOV      r5,r0
-        0x00002d68:    4629        )F      MOV      r1,r5
-        0x00002d6a:    4844        DH      LDR      r0,[pc,#272] ; [0x2e7c] = 0x1000442a
-        0x00002d6c:    f7ffff89    ....    BL       HW_REG_16BIT ; 0x2c82
-        0x00002d70:    bd70        p.      POP      {r4-r6,pc}
+        0x00002d6e:    b570        p.      PUSH     {r4-r6,lr}
+        0x00002d70:    4604        .F      MOV      r4,r0
+        0x00002d72:    4847        GH      LDR      r0,[pc,#284] ; [0x2e90] = 0x1000442a
+        0x00002d74:    f7ffff98    ....    BL       HR_REG_16BIT ; 0x2ca8
+        0x00002d78:    43a0        .C      BICS     r0,r0,r4
+        0x00002d7a:    4605        .F      MOV      r5,r0
+        0x00002d7c:    4629        )F      MOV      r1,r5
+        0x00002d7e:    4844        DH      LDR      r0,[pc,#272] ; [0x2e90] = 0x1000442a
+        0x00002d80:    f7ffff89    ....    BL       HW_REG_16BIT ; 0x2c96
+        0x00002d84:    bd70        p.      POP      {r4-r6,pc}
     Lpm_CheckLpmFlag
-        0x00002d72:    b510        ..      PUSH     {r4,lr}
-        0x00002d74:    4841        AH      LDR      r0,[pc,#260] ; [0x2e7c] = 0x1000442a
-        0x00002d76:    f7ffff8d    ....    BL       HR_REG_16BIT ; 0x2c94
-        0x00002d7a:    2800        .(      CMP      r0,#0
-        0x00002d7c:    d101        ..      BNE      0x2d82 ; Lpm_CheckLpmFlag + 16
-        0x00002d7e:    2001        .       MOVS     r0,#1
-        0x00002d80:    bd10        ..      POP      {r4,pc}
-        0x00002d82:    2000        .       MOVS     r0,#0
-        0x00002d84:    e7fc        ..      B        0x2d80 ; Lpm_CheckLpmFlag + 14
-    whileDelay
         0x00002d86:    b510        ..      PUSH     {r4,lr}
-        0x00002d88:    2100        .!      MOVS     r1,#0
-        0x00002d8a:    e006        ..      B        0x2d9a ; whileDelay + 20
-        0x00002d8c:    4a3c        <J      LDR      r2,[pc,#240] ; [0x2e80] = 0x4e20
-        0x00002d8e:    bf00        ..      NOP      
-        0x00002d90:    4613        .F      MOV      r3,r2
-        0x00002d92:    1e52        R.      SUBS     r2,r2,#1
-        0x00002d94:    2b00        .+      CMP      r3,#0
-        0x00002d96:    d1fb        ..      BNE      0x2d90 ; whileDelay + 10
-        0x00002d98:    1c49        I.      ADDS     r1,r1,#1
-        0x00002d9a:    4281        .B      CMP      r1,r0
-        0x00002d9c:    dbf6        ..      BLT      0x2d8c ; whileDelay + 6
-        0x00002d9e:    bd10        ..      POP      {r4,pc}
+        0x00002d88:    4841        AH      LDR      r0,[pc,#260] ; [0x2e90] = 0x1000442a
+        0x00002d8a:    f7ffff8d    ....    BL       HR_REG_16BIT ; 0x2ca8
+        0x00002d8e:    2800        .(      CMP      r0,#0
+        0x00002d90:    d101        ..      BNE      0x2d96 ; Lpm_CheckLpmFlag + 16
+        0x00002d92:    2001        .       MOVS     r0,#1
+        0x00002d94:    bd10        ..      POP      {r4,pc}
+        0x00002d96:    2000        .       MOVS     r0,#0
+        0x00002d98:    e7fc        ..      B        0x2d94 ; Lpm_CheckLpmFlag + 14
+    whileDelay
+        0x00002d9a:    b510        ..      PUSH     {r4,lr}
+        0x00002d9c:    2100        .!      MOVS     r1,#0
+        0x00002d9e:    e006        ..      B        0x2dae ; whileDelay + 20
+        0x00002da0:    4a3c        <J      LDR      r2,[pc,#240] ; [0x2e94] = 0x4e20
+        0x00002da2:    bf00        ..      NOP      
+        0x00002da4:    4613        .F      MOV      r3,r2
+        0x00002da6:    1e52        R.      SUBS     r2,r2,#1
+        0x00002da8:    2b00        .+      CMP      r3,#0
+        0x00002daa:    d1fb        ..      BNE      0x2da4 ; whileDelay + 10
+        0x00002dac:    1c49        I.      ADDS     r1,r1,#1
+        0x00002dae:    4281        .B      CMP      r1,r0
+        0x00002db0:    dbf6        ..      BLT      0x2da0 ; whileDelay + 6
+        0x00002db2:    bd10        ..      POP      {r4,pc}
     whileDelayshort
-        0x00002da0:    b510        ..      PUSH     {r4,lr}
-        0x00002da2:    2100        .!      MOVS     r1,#0
-        0x00002da4:    e007        ..      B        0x2db6 ; whileDelayshort + 22
-        0x00002da6:    227d        }"      MOVS     r2,#0x7d
-        0x00002da8:    0112        ..      LSLS     r2,r2,#4
-        0x00002daa:    bf00        ..      NOP      
-        0x00002dac:    4613        .F      MOV      r3,r2
-        0x00002dae:    1e52        R.      SUBS     r2,r2,#1
-        0x00002db0:    2b00        .+      CMP      r3,#0
-        0x00002db2:    d1fb        ..      BNE      0x2dac ; whileDelayshort + 12
-        0x00002db4:    1c49        I.      ADDS     r1,r1,#1
-        0x00002db6:    4281        .B      CMP      r1,r0
-        0x00002db8:    dbf5        ..      BLT      0x2da6 ; whileDelayshort + 6
-        0x00002dba:    bd10        ..      POP      {r4,pc}
+        0x00002db4:    b510        ..      PUSH     {r4,lr}
+        0x00002db6:    2100        .!      MOVS     r1,#0
+        0x00002db8:    e007        ..      B        0x2dca ; whileDelayshort + 22
+        0x00002dba:    227d        }"      MOVS     r2,#0x7d
+        0x00002dbc:    0112        ..      LSLS     r2,r2,#4
+        0x00002dbe:    bf00        ..      NOP      
+        0x00002dc0:    4613        .F      MOV      r3,r2
+        0x00002dc2:    1e52        R.      SUBS     r2,r2,#1
+        0x00002dc4:    2b00        .+      CMP      r3,#0
+        0x00002dc6:    d1fb        ..      BNE      0x2dc0 ; whileDelayshort + 12
+        0x00002dc8:    1c49        I.      ADDS     r1,r1,#1
+        0x00002dca:    4281        .B      CMP      r1,r0
+        0x00002dcc:    dbf5        ..      BLT      0x2dba ; whileDelayshort + 6
+        0x00002dce:    bd10        ..      POP      {r4,pc}
     xramcmp
-        0x00002dbc:    b5f0        ..      PUSH     {r4-r7,lr}
-        0x00002dbe:    4603        .F      MOV      r3,r0
-        0x00002dc0:    460c        .F      MOV      r4,r1
-        0x00002dc2:    2100        .!      MOVS     r1,#0
-        0x00002dc4:    e01e        ..      B        0x2e04 ; xramcmp + 72
-        0x00002dc6:    482c        ,H      LDR      r0,[pc,#176] ; [0x2e78] = 0x10004fe0
-        0x00002dc8:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00002dca:    2000        .       MOVS     r0,#0
-        0x00002dcc:    185d        ].      ADDS     r5,r3,r1
-        0x00002dce:    2601        .&      MOVS     r6,#1
-        0x00002dd0:    0736        6.      LSLS     r6,r6,#28
-        0x00002dd2:    4335        5C      ORRS     r5,r5,r6
-        0x00002dd4:    782d        -x      LDRB     r5,[r5,#0]
-        0x00002dd6:    4300        .C      ORRS     r0,r0,r0
-        0x00002dd8:    185d        ].      ADDS     r5,r3,r1
-        0x00002dda:    4335        5C      ORRS     r5,r5,r6
-        0x00002ddc:    782d        -x      LDRB     r5,[r5,#0]
-        0x00002dde:    4305        .C      ORRS     r5,r5,r0
-        0x00002de0:    4825        %H      LDR      r0,[pc,#148] ; [0x2e78] = 0x10004fe0
-        0x00002de2:    7fc0        ..      LDRB     r0,[r0,#0x1f]
-        0x00002de4:    2000        .       MOVS     r0,#0
-        0x00002de6:    1866        f.      ADDS     r6,r4,r1
-        0x00002de8:    2701        .'      MOVS     r7,#1
-        0x00002dea:    073f        ?.      LSLS     r7,r7,#28
-        0x00002dec:    433e        >C      ORRS     r6,r6,r7
-        0x00002dee:    7836        6x      LDRB     r6,[r6,#0]
-        0x00002df0:    4300        .C      ORRS     r0,r0,r0
-        0x00002df2:    1866        f.      ADDS     r6,r4,r1
-        0x00002df4:    433e        >C      ORRS     r6,r6,r7
-        0x00002df6:    7836        6x      LDRB     r6,[r6,#0]
-        0x00002df8:    4330        0C      ORRS     r0,r0,r6
-        0x00002dfa:    4285        .B      CMP      r5,r0
-        0x00002dfc:    d001        ..      BEQ      0x2e02 ; xramcmp + 70
-        0x00002dfe:    2000        .       MOVS     r0,#0
-        0x00002e00:    bdf0        ..      POP      {r4-r7,pc}
-        0x00002e02:    1c49        I.      ADDS     r1,r1,#1
-        0x00002e04:    4291        .B      CMP      r1,r2
-        0x00002e06:    dbde        ..      BLT      0x2dc6 ; xramcmp + 10
-        0x00002e08:    2001        .       MOVS     r0,#1
-        0x00002e0a:    e7f9        ..      B        0x2e00 ; xramcmp + 68
+        0x00002dd0:    b5f0        ..      PUSH     {r4-r7,lr}
+        0x00002dd2:    4603        .F      MOV      r3,r0
+        0x00002dd4:    460c        .F      MOV      r4,r1
+        0x00002dd6:    2100        .!      MOVS     r1,#0
+        0x00002dd8:    e01e        ..      B        0x2e18 ; xramcmp + 72
+        0x00002dda:    482c        ,H      LDR      r0,[pc,#176] ; [0x2e8c] = 0x10004fe0
+        0x00002ddc:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x00002dde:    2000        .       MOVS     r0,#0
+        0x00002de0:    185d        ].      ADDS     r5,r3,r1
+        0x00002de2:    2601        .&      MOVS     r6,#1
+        0x00002de4:    0736        6.      LSLS     r6,r6,#28
+        0x00002de6:    4335        5C      ORRS     r5,r5,r6
+        0x00002de8:    782d        -x      LDRB     r5,[r5,#0]
+        0x00002dea:    4300        .C      ORRS     r0,r0,r0
+        0x00002dec:    185d        ].      ADDS     r5,r3,r1
+        0x00002dee:    4335        5C      ORRS     r5,r5,r6
+        0x00002df0:    782d        -x      LDRB     r5,[r5,#0]
+        0x00002df2:    4305        .C      ORRS     r5,r5,r0
+        0x00002df4:    4825        %H      LDR      r0,[pc,#148] ; [0x2e8c] = 0x10004fe0
+        0x00002df6:    7fc0        ..      LDRB     r0,[r0,#0x1f]
+        0x00002df8:    2000        .       MOVS     r0,#0
+        0x00002dfa:    1866        f.      ADDS     r6,r4,r1
+        0x00002dfc:    2701        .'      MOVS     r7,#1
+        0x00002dfe:    073f        ?.      LSLS     r7,r7,#28
+        0x00002e00:    433e        >C      ORRS     r6,r6,r7
+        0x00002e02:    7836        6x      LDRB     r6,[r6,#0]
+        0x00002e04:    4300        .C      ORRS     r0,r0,r0
+        0x00002e06:    1866        f.      ADDS     r6,r4,r1
+        0x00002e08:    433e        >C      ORRS     r6,r6,r7
+        0x00002e0a:    7836        6x      LDRB     r6,[r6,#0]
+        0x00002e0c:    4330        0C      ORRS     r0,r0,r6
+        0x00002e0e:    4285        .B      CMP      r5,r0
+        0x00002e10:    d001        ..      BEQ      0x2e16 ; xramcmp + 70
+        0x00002e12:    2000        .       MOVS     r0,#0
+        0x00002e14:    bdf0        ..      POP      {r4-r7,pc}
+        0x00002e16:    1c49        I.      ADDS     r1,r1,#1
+        0x00002e18:    4291        .B      CMP      r1,r2
+        0x00002e1a:    dbde        ..      BLT      0x2dda ; xramcmp + 10
+        0x00002e1c:    2001        .       MOVS     r0,#1
+        0x00002e1e:    e7f9        ..      B        0x2e14 ; xramcmp + 68
     xramcpy
-        0x00002e0c:    b570        p.      PUSH     {r4-r6,lr}
-        0x00002e0e:    4603        .F      MOV      r3,r0
-        0x00002e10:    2000        .       MOVS     r0,#0
-        0x00002e12:    e020         .      B        0x2e56 ; xramcpy + 74
-        0x00002e14:    bf00        ..      NOP      
-        0x00002e16:    4c18        .L      LDR      r4,[pc,#96] ; [0x2e78] = 0x10004fe0
-        0x00002e18:    7fe4        ..      LDRB     r4,[r4,#0x1f]
-        0x00002e1a:    2400        .$      MOVS     r4,#0
-        0x00002e1c:    180d        ..      ADDS     r5,r1,r0
-        0x00002e1e:    2601        .&      MOVS     r6,#1
-        0x00002e20:    0736        6.      LSLS     r6,r6,#28
-        0x00002e22:    4335        5C      ORRS     r5,r5,r6
-        0x00002e24:    782d        -x      LDRB     r5,[r5,#0]
-        0x00002e26:    4324        $C      ORRS     r4,r4,r4
-        0x00002e28:    180d        ..      ADDS     r5,r1,r0
-        0x00002e2a:    4335        5C      ORRS     r5,r5,r6
-        0x00002e2c:    782d        -x      LDRB     r5,[r5,#0]
-        0x00002e2e:    432c        ,C      ORRS     r4,r4,r5
-        0x00002e30:    181d        ..      ADDS     r5,r3,r0
-        0x00002e32:    4335        5C      ORRS     r5,r5,r6
-        0x00002e34:    702c        ,p      STRB     r4,[r5,#0]
-        0x00002e36:    4c10        .L      LDR      r4,[pc,#64] ; [0x2e78] = 0x10004fe0
-        0x00002e38:    7fe4        ..      LDRB     r4,[r4,#0x1f]
-        0x00002e3a:    2400        .$      MOVS     r4,#0
+        0x00002e20:    b570        p.      PUSH     {r4-r6,lr}
+        0x00002e22:    4603        .F      MOV      r3,r0
+        0x00002e24:    2000        .       MOVS     r0,#0
+        0x00002e26:    e020         .      B        0x2e6a ; xramcpy + 74
+        0x00002e28:    bf00        ..      NOP      
+        0x00002e2a:    4c18        .L      LDR      r4,[pc,#96] ; [0x2e8c] = 0x10004fe0
+        0x00002e2c:    7fe4        ..      LDRB     r4,[r4,#0x1f]
+        0x00002e2e:    2400        .$      MOVS     r4,#0
+        0x00002e30:    180d        ..      ADDS     r5,r1,r0
+        0x00002e32:    2601        .&      MOVS     r6,#1
+        0x00002e34:    0736        6.      LSLS     r6,r6,#28
+        0x00002e36:    4335        5C      ORRS     r5,r5,r6
+        0x00002e38:    782d        -x      LDRB     r5,[r5,#0]
+        0x00002e3a:    4324        $C      ORRS     r4,r4,r4
         0x00002e3c:    180d        ..      ADDS     r5,r1,r0
         0x00002e3e:    4335        5C      ORRS     r5,r5,r6
         0x00002e40:    782d        -x      LDRB     r5,[r5,#0]
-        0x00002e42:    4324        $C      ORRS     r4,r4,r4
-        0x00002e44:    180d        ..      ADDS     r5,r1,r0
+        0x00002e42:    432c        ,C      ORRS     r4,r4,r5
+        0x00002e44:    181d        ..      ADDS     r5,r3,r0
         0x00002e46:    4335        5C      ORRS     r5,r5,r6
-        0x00002e48:    782d        -x      LDRB     r5,[r5,#0]
-        0x00002e4a:    432c        ,C      ORRS     r4,r4,r5
-        0x00002e4c:    181d        ..      ADDS     r5,r3,r0
-        0x00002e4e:    4335        5C      ORRS     r5,r5,r6
-        0x00002e50:    702c        ,p      STRB     r4,[r5,#0]
-        0x00002e52:    bf00        ..      NOP      
-        0x00002e54:    1c40        @.      ADDS     r0,r0,#1
-        0x00002e56:    4290        .B      CMP      r0,r2
-        0x00002e58:    dbdc        ..      BLT      0x2e14 ; xramcpy + 8
-        0x00002e5a:    bd70        p.      POP      {r4-r6,pc}
+        0x00002e48:    702c        ,p      STRB     r4,[r5,#0]
+        0x00002e4a:    4c10        .L      LDR      r4,[pc,#64] ; [0x2e8c] = 0x10004fe0
+        0x00002e4c:    7fe4        ..      LDRB     r4,[r4,#0x1f]
+        0x00002e4e:    2400        .$      MOVS     r4,#0
+        0x00002e50:    180d        ..      ADDS     r5,r1,r0
+        0x00002e52:    4335        5C      ORRS     r5,r5,r6
+        0x00002e54:    782d        -x      LDRB     r5,[r5,#0]
+        0x00002e56:    4324        $C      ORRS     r4,r4,r4
+        0x00002e58:    180d        ..      ADDS     r5,r1,r0
+        0x00002e5a:    4335        5C      ORRS     r5,r5,r6
+        0x00002e5c:    782d        -x      LDRB     r5,[r5,#0]
+        0x00002e5e:    432c        ,C      ORRS     r4,r4,r5
+        0x00002e60:    181d        ..      ADDS     r5,r3,r0
+        0x00002e62:    4335        5C      ORRS     r5,r5,r6
+        0x00002e64:    702c        ,p      STRB     r4,[r5,#0]
+        0x00002e66:    bf00        ..      NOP      
+        0x00002e68:    1c40        @.      ADDS     r0,r0,#1
+        0x00002e6a:    4290        .B      CMP      r0,r2
+        0x00002e6c:    dbdc        ..      BLT      0x2e28 ; xramcpy + 8
+        0x00002e6e:    bd70        p.      POP      {r4-r6,pc}
     math_abs
-        0x00002e5c:    4601        .F      MOV      r1,r0
-        0x00002e5e:    2900        .)      CMP      r1,#0
-        0x00002e60:    da01        ..      BGE      0x2e66 ; math_abs + 10
-        0x00002e62:    4248        HB      RSBS     r0,r1,#0
-        0x00002e64:    4770        pG      BX       lr
-        0x00002e66:    4608        .F      MOV      r0,r1
-        0x00002e68:    e7fc        ..      B        0x2e64 ; math_abs + 8
+        0x00002e70:    4601        .F      MOV      r1,r0
+        0x00002e72:    2900        .)      CMP      r1,#0
+        0x00002e74:    da01        ..      BGE      0x2e7a ; math_abs + 10
+        0x00002e76:    4248        HB      RSBS     r0,r1,#0
+        0x00002e78:    4770        pG      BX       lr
+        0x00002e7a:    4608        .F      MOV      r0,r1
+        0x00002e7c:    e7fc        ..      B        0x2e78 ; math_abs + 8
     hw_delay
-        0x00002e6a:    bf00        ..      NOP      
-        0x00002e6c:    bf00        ..      NOP      
-        0x00002e6e:    bf00        ..      NOP      
-        0x00002e70:    bf00        ..      NOP      
-        0x00002e72:    bf00        ..      NOP      
-        0x00002e74:    4770        pG      BX       lr
+        0x00002e7e:    bf00        ..      NOP      
+        0x00002e80:    bf00        ..      NOP      
+        0x00002e82:    bf00        ..      NOP      
+        0x00002e84:    bf00        ..      NOP      
+        0x00002e86:    bf00        ..      NOP      
+        0x00002e88:    4770        pG      BX       lr
     $d
-        0x00002e76:    0000        ..      DCW    0
-        0x00002e78:    10004fe0    .O..    DCD    268455904
-        0x00002e7c:    1000442a    *D..    DCD    268452906
-        0x00002e80:    00004e20     N..    DCD    20000
+        0x00002e8a:    0000        ..      DCW    0
+        0x00002e8c:    10004fe0    .O..    DCD    268455904
+        0x00002e90:    1000442a    *D..    DCD    268452906
+        0x00002e94:    00004e20     N..    DCD    20000
     $t
     .text
     __aeabi_memcpy
     __aeabi_memcpy4
     __aeabi_memcpy8
-        0x00002e84:    4603        .F      MOV      r3,r0
-        0x00002e86:    430b        .C      ORRS     r3,r3,r1
-        0x00002e88:    079b        ..      LSLS     r3,r3,#30
-        0x00002e8a:    d003        ..      BEQ      0x2e94 ; __aeabi_memcpy + 16
-        0x00002e8c:    e009        ..      B        0x2ea2 ; __aeabi_memcpy + 30
-        0x00002e8e:    c908        ..      LDM      r1!,{r3}
-        0x00002e90:    1f12        ..      SUBS     r2,r2,#4
-        0x00002e92:    c008        ..      STM      r0!,{r3}
-        0x00002e94:    2a04        .*      CMP      r2,#4
-        0x00002e96:    d2fa        ..      BCS      0x2e8e ; __aeabi_memcpy + 10
-        0x00002e98:    e003        ..      B        0x2ea2 ; __aeabi_memcpy + 30
-        0x00002e9a:    780b        .x      LDRB     r3,[r1,#0]
-        0x00002e9c:    7003        .p      STRB     r3,[r0,#0]
-        0x00002e9e:    1c40        @.      ADDS     r0,r0,#1
-        0x00002ea0:    1c49        I.      ADDS     r1,r1,#1
-        0x00002ea2:    1e52        R.      SUBS     r2,r2,#1
-        0x00002ea4:    d2f9        ..      BCS      0x2e9a ; __aeabi_memcpy + 22
-        0x00002ea6:    4770        pG      BX       lr
+        0x00002e98:    4603        .F      MOV      r3,r0
+        0x00002e9a:    430b        .C      ORRS     r3,r3,r1
+        0x00002e9c:    079b        ..      LSLS     r3,r3,#30
+        0x00002e9e:    d003        ..      BEQ      0x2ea8 ; __aeabi_memcpy + 16
+        0x00002ea0:    e009        ..      B        0x2eb6 ; __aeabi_memcpy + 30
+        0x00002ea2:    c908        ..      LDM      r1!,{r3}
+        0x00002ea4:    1f12        ..      SUBS     r2,r2,#4
+        0x00002ea6:    c008        ..      STM      r0!,{r3}
+        0x00002ea8:    2a04        .*      CMP      r2,#4
+        0x00002eaa:    d2fa        ..      BCS      0x2ea2 ; __aeabi_memcpy + 10
+        0x00002eac:    e003        ..      B        0x2eb6 ; __aeabi_memcpy + 30
+        0x00002eae:    780b        .x      LDRB     r3,[r1,#0]
+        0x00002eb0:    7003        .p      STRB     r3,[r0,#0]
+        0x00002eb2:    1c40        @.      ADDS     r0,r0,#1
+        0x00002eb4:    1c49        I.      ADDS     r1,r1,#1
+        0x00002eb6:    1e52        R.      SUBS     r2,r2,#1
+        0x00002eb8:    d2f9        ..      BCS      0x2eae ; __aeabi_memcpy + 22
+        0x00002eba:    4770        pG      BX       lr
     .text
     __scatterload
     __scatterload_rt2
-        0x00002ea8:    4c06        .L      LDR      r4,[pc,#24] ; [0x2ec4] = 0x2ef0
-        0x00002eaa:    2501        .%      MOVS     r5,#1
-        0x00002eac:    4e06        .N      LDR      r6,[pc,#24] ; [0x2ec8] = 0x2f10
-        0x00002eae:    e005        ..      B        0x2ebc ; __scatterload + 20
-        0x00002eb0:    68e3        .h      LDR      r3,[r4,#0xc]
-        0x00002eb2:    cc07        ..      LDM      r4!,{r0-r2}
-        0x00002eb4:    432b        +C      ORRS     r3,r3,r5
-        0x00002eb6:    3c0c        .<      SUBS     r4,r4,#0xc
-        0x00002eb8:    4798        .G      BLX      r3
-        0x00002eba:    3410        .4      ADDS     r4,r4,#0x10
-        0x00002ebc:    42b4        .B      CMP      r4,r6
-        0x00002ebe:    d3f7        ..      BCC      0x2eb0 ; __scatterload + 8
-        0x00002ec0:    f7fef8a2    ....    BL       __main_after_scatterload ; 0x1008
+        0x00002ebc:    4c06        .L      LDR      r4,[pc,#24] ; [0x2ed8] = 0x2f04
+        0x00002ebe:    2501        .%      MOVS     r5,#1
+        0x00002ec0:    4e06        .N      LDR      r6,[pc,#24] ; [0x2edc] = 0x2f24
+        0x00002ec2:    e005        ..      B        0x2ed0 ; __scatterload + 20
+        0x00002ec4:    68e3        .h      LDR      r3,[r4,#0xc]
+        0x00002ec6:    cc07        ..      LDM      r4!,{r0-r2}
+        0x00002ec8:    432b        +C      ORRS     r3,r3,r5
+        0x00002eca:    3c0c        .<      SUBS     r4,r4,#0xc
+        0x00002ecc:    4798        .G      BLX      r3
+        0x00002ece:    3410        .4      ADDS     r4,r4,#0x10
+        0x00002ed0:    42b4        .B      CMP      r4,r6
+        0x00002ed2:    d3f7        ..      BCC      0x2ec4 ; __scatterload + 8
+        0x00002ed4:    f7fef898    ....    BL       __main_after_scatterload ; 0x1008
     $d
-        0x00002ec4:    00002ef0    ....    DCD    12016
-        0x00002ec8:    00002f10    ./..    DCD    12048
+        0x00002ed8:    00002f04    ./..    DCD    12036
+        0x00002edc:    00002f24    $/..    DCD    12068
     $t
     i.__scatterload_copy
     __scatterload_copy
-        0x00002ecc:    e002        ..      B        0x2ed4 ; __scatterload_copy + 8
-        0x00002ece:    c808        ..      LDM      r0!,{r3}
-        0x00002ed0:    1f12        ..      SUBS     r2,r2,#4
-        0x00002ed2:    c108        ..      STM      r1!,{r3}
-        0x00002ed4:    2a00        .*      CMP      r2,#0
-        0x00002ed6:    d1fa        ..      BNE      0x2ece ; __scatterload_copy + 2
-        0x00002ed8:    4770        pG      BX       lr
+        0x00002ee0:    e002        ..      B        0x2ee8 ; __scatterload_copy + 8
+        0x00002ee2:    c808        ..      LDM      r0!,{r3}
+        0x00002ee4:    1f12        ..      SUBS     r2,r2,#4
+        0x00002ee6:    c108        ..      STM      r1!,{r3}
+        0x00002ee8:    2a00        .*      CMP      r2,#0
+        0x00002eea:    d1fa        ..      BNE      0x2ee2 ; __scatterload_copy + 2
+        0x00002eec:    4770        pG      BX       lr
     i.__scatterload_null
     __scatterload_null
-        0x00002eda:    4770        pG      BX       lr
+        0x00002eee:    4770        pG      BX       lr
     i.__scatterload_zeroinit
     __scatterload_zeroinit
-        0x00002edc:    2000        .       MOVS     r0,#0
-        0x00002ede:    e001        ..      B        0x2ee4 ; __scatterload_zeroinit + 8
-        0x00002ee0:    c101        ..      STM      r1!,{r0}
-        0x00002ee2:    1f12        ..      SUBS     r2,r2,#4
-        0x00002ee4:    2a00        .*      CMP      r2,#0
-        0x00002ee6:    d1fb        ..      BNE      0x2ee0 ; __scatterload_zeroinit + 4
-        0x00002ee8:    4770        pG      BX       lr
-        0x00002eea:    0000        ..      MOVS     r0,r0
+        0x00002ef0:    2000        .       MOVS     r0,#0
+        0x00002ef2:    e001        ..      B        0x2ef8 ; __scatterload_zeroinit + 8
+        0x00002ef4:    c101        ..      STM      r1!,{r0}
+        0x00002ef6:    1f12        ..      SUBS     r2,r2,#4
+        0x00002ef8:    2a00        .*      CMP      r2,#0
+        0x00002efa:    d1fb        ..      BNE      0x2ef4 ; __scatterload_zeroinit + 4
+        0x00002efc:    4770        pG      BX       lr
+        0x00002efe:    0000        ..      MOVS     r0,r0
     $d.realdata
     .constdata
-        0x00002eec:    00000101    ....    DCD    257
+        0x00002f00:    00000101    ....    DCD    257
     Region$$Table$$Base
-        0x00002ef0:    00002f10    ./..    DCD    12048
-        0x00002ef4:    10011000    ....    DCD    268505088
-        0x00002ef8:    0000001c    ....    DCD    28
-        0x00002efc:    00002ecc    ....    DCD    11980
-        0x00002f00:    00002f2c    ,/..    DCD    12076
-        0x00002f04:    1001101c    ....    DCD    268505116
-        0x00002f08:    00000130    0...    DCD    304
-        0x00002f0c:    00002edc    ....    DCD    11996
+        0x00002f04:    00002f24    $/..    DCD    12068
+        0x00002f08:    10011000    ....    DCD    268505088
+        0x00002f0c:    0000001c    ....    DCD    28
+        0x00002f10:    00002ee0    ....    DCD    12000
+        0x00002f14:    00002f40    @/..    DCD    12096
+        0x00002f18:    1001101c    ....    DCD    268505116
+        0x00002f1c:    00000130    0...    DCD    304
+        0x00002f20:    00002ef0    ....    DCD    12016
     Region$$Table$$Limit
 
 ** Section #3 'RW_IRAM3' (SHT_PROGBITS) [SHF_ALLOC + SHF_WRITE]
@@ -4138,7 +4148,7 @@
 
 
 ** Section #8 '.debug_line' (SHT_PROGBITS)
-    Size   : 6612 bytes
+    Size   : 6624 bytes
 
 
 ** Section #9 '.debug_loc' (SHT_PROGBITS)
Index: tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/User/main.c
===================================================================
--- /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/User/main.c	(revision 4313)
+++ /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/User/main.c	(working copy)
@@ -72,8 +72,8 @@
 			|| i == (HREAD(mem_qspi_gpio_io3)&GPIO_NUM_MASK)	)
 			continue ;
 		else
-			GPIO_SetGpioMultFunction(i,GPCFG_PULLDOWN);
-			GPIO_ClearWakeup(i);
+	//		GPIO_SetGpioMultFunction((GPIO_NUM)i,GPCFG_PULLDOWN);
+			GPIO_ClearWakeup((GPIO_NUM)i);
 		
 //			GPIO_SetWakeupByCurrentState(i);
 	}
@@ -102,36 +102,31 @@
 
 int main(void)
 {
-//	GPIO_CONFIG(GPIO_19)=0x3e;
-//	while(1);
-//	changedpll();
-	
-//	SYS_TimerInit(CLOCK_48M_multiple);
-//	UARTx_Configuration(UARTA,UARTE_BAUDRATE_BAUDRATE_Baud4800);
-	HWRITEL(mem_hibernate_time,-1);		//time*312.5us
-	IPC_TxControlCmd(BT_CMD_ENTER_HIBERNATE);
-	
+		//mem_lpm_sleep_time*312.5us
+//	HWRITE(0x8093,0x3f);
+//	HWRITE(0x808d,0x3e);
+//	if((HREAD(0x808e))==0x3f)
+//	{
+//		HWRITE(0x808e,0x3e);
+//	}
+//	else
+//	{
+//		HWRITE(0x808e,0x3f);
+//	}
+	HWRITEL(mem_lpm_sleep_time,6400);	
+	IPC_TxControlCmd(BT_CMD_ENTER_LPM);
 	while(1)
 	{
 		switch (HREAD(IPC_MCU_STATE))
 		{
 			case IPC_MCU_STATE_RUNNING:
-//				USART_SendData(UARTA,0xaa);
-//				if(USART_GetRxCount(UARTA)>0)
-//				{
-//					uint8_t redat = USART_ReceiveData(UARTA);
-//					USART_SendData(UARTA,redat);
-//				}
-//			
-//				delay_us(100);	
-//				GPIO_CONFIG(19)=0x3f;
-//				delay_us(100);	
-//				GPIO_CONFIG(19)=0x3e;
-			
-			
-			
-//				SYS_timerPolling();
-//				Lpm_unLockLpm(M0_LPM_FLAG);		
+
+				break;
+			case IPC_MCU_STATE_LMP:
+				OS_ENTER_CRITICAL();
+//				HWRITE(0x8093,0x3e);
+				Bt_ActionBeforeHibernate();
+				HWRITE(IPC_MCU_STATE,IPC_MCU_STATE_STOP);
 				break;
 			case IPC_MCU_STATE_HIBERNATE:		//	HIBERNATE
 				OS_ENTER_CRITICAL();
Index: tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/tag/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/ADC/AD_Sound_Recording/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/DAC/DAC_Out_1K/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/DAC/DAC_Out_1K/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/DAC/DAC_Out_1K/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/DAC/DAC_Out_1K/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/DAC/DAC_Out_1K/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/DAC/DAC_Out_1K/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/DAC/DAC_Out_1K/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/DAC/DAC_Out_1K/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/DAC/DAC_Out_1K/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/DAC/DAC_Out_1K/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/DAC/DAC_Out_1K/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/DAC/DAC_Out_1K/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/FLASH/Flash_Write_Read/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/FLASH/Flash_Write_Read/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/FLASH/Flash_Write_Read/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/FLASH/Flash_Write_Read/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/FLASH/Flash_Write_Read/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/FLASH/Flash_Write_Read/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/FLASH/Flash_Write_Read/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/FLASH/Flash_Write_Read/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/FLASH/Flash_Write_Read/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/FLASH/Flash_Write_Read/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/FLASH/Flash_Write_Read/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/FLASH/Flash_Write_Read/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/GPIO/GPIO_IRQ/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_IRQ/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_IRQ/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/GPIO/GPIO_IRQ/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_IRQ/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_IRQ/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/GPIO/GPIO_IRQ/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_IRQ/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_IRQ/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/GPIO/GPIO_IRQ/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_IRQ/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_IRQ/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/GPIO/GPIO_Out_In/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_Out_In/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_Out_In/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/GPIO/GPIO_Wake_up/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_Wake_up/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_Wake_up/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/GPIO/GPIO_Wake_up/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_Wake_up/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_Wake_up/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/GPIO/GPIO_Wake_up/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_Wake_up/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_Wake_up/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/GPIO/GPIO_Wake_up/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_Wake_up/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/GPIO/GPIO_Wake_up/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/IIC/IIC_EEPROM/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIC/IIC_EEPROM/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIC/IIC_EEPROM/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/IIC/IIC_EEPROM/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIC/IIC_EEPROM/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIC/IIC_EEPROM/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/IIC/IIC_EEPROM/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIC/IIC_EEPROM/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIC/IIC_EEPROM/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/IIC/IIC_EEPROM/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIC/IIC_EEPROM/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIC/IIC_EEPROM/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/IIC/IIC_IRQ/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIC/IIC_IRQ/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIC/IIC_IRQ/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/IIC/IIC_IRQ/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIC/IIC_IRQ/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIC/IIC_IRQ/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/IIC/IIC_IRQ/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIC/IIC_IRQ/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIC/IIC_IRQ/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/IIC/IIC_IRQ/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIC/IIC_IRQ/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIC/IIC_IRQ/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/IIS/IIS_1/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIS/IIS_1/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIS/IIS_1/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/IIS/IIS_1/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIS/IIS_1/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIS/IIS_1/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/IIS/IIS_1/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIS/IIS_1/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIS/IIS_1/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/IIS/IIS_1/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIS/IIS_1/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/IIS/IIS_1/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/LED_DEMO/ModuleDemo/GPIO/GPIO_Out_In/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LED_DEMO/ModuleDemo/GPIO/GPIO_Out_In/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LED_DEMO/ModuleDemo/GPIO/GPIO_Out_In/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/LED_DEMO/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LED_DEMO/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LED_DEMO/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/LED_DEMO/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LED_DEMO/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LED_DEMO/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/LED_DEMO/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LED_DEMO/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LED_DEMO/ModuleDemo/GPIO/GPIO_Out_In/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/LOG/DEBUG_LOG/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LOG/DEBUG_LOG/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LOG/DEBUG_LOG/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/LOG/DEBUG_LOG/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LOG/DEBUG_LOG/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LOG/DEBUG_LOG/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/LOG/DEBUG_LOG/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LOG/DEBUG_LOG/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LOG/DEBUG_LOG/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/LOG/DEBUG_LOG/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LOG/DEBUG_LOG/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LOG/DEBUG_LOG/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/LPM/Poweroff/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LPM/Poweroff/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LPM/Poweroff/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/LPM/Poweroff/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LPM/Poweroff/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LPM/Poweroff/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/LPM/Poweroff/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LPM/Poweroff/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LPM/Poweroff/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/LPM/Poweroff/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LPM/Poweroff/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/LPM/Poweroff/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/PLC/PLC/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/PLC/PLC/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/PLC/PLC/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/PLC/PLC/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/PLC/PLC/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/PLC/PLC/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/PLC/PLC/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/PLC/PLC/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/PLC/PLC/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/PLC/PLC/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/PLC/PLC/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/PLC/PLC/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/PLC/PLC/PLC/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/PLC/PLC/PLC/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/PLC/PLC/PLC/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/PLC/PLC/PLC/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/PLC/PLC/PLC/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/PLC/PLC/PLC/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/PLC/PLC/PLC/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/PLC/PLC/PLC/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/PLC/PLC/PLC/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/PLC/PLC/PLC/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/PLC/PLC/PLC/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/PLC/PLC/PLC/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/SARDAC/SarAdc_Gpio/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SARDAC/SarAdc_Gpio/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SARDAC/SarAdc_Gpio/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/SARDAC/SarAdc_Gpio/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SARDAC/SarAdc_Gpio/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SARDAC/SarAdc_Gpio/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/SARDAC/SarAdc_Gpio/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SARDAC/SarAdc_Gpio/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SARDAC/SarAdc_Gpio/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/SARDAC/SarAdc_Gpio/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SARDAC/SarAdc_Gpio/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SARDAC/SarAdc_Gpio/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/SOFT_DMA/SOFT_DMA/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SOFT_DMA/SOFT_DMA/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SOFT_DMA/SOFT_DMA/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/SOFT_DMA/SOFT_DMA/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SOFT_DMA/SOFT_DMA/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SOFT_DMA/SOFT_DMA/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/SOFT_DMA/SOFT_DMA/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SOFT_DMA/SOFT_DMA/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SOFT_DMA/SOFT_DMA/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/SOFT_DMA/SOFT_DMA/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SOFT_DMA/SOFT_DMA/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SOFT_DMA/SOFT_DMA/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/SPI/SPI_Flash/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SPI/SPI_Flash/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SPI/SPI_Flash/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/SPI/SPI_Flash/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SPI/SPI_Flash/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SPI/SPI_Flash/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/SPI/SPI_Flash/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SPI/SPI_Flash/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SPI/SPI_Flash/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/SPI/SPI_Flash/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SPI/SPI_Flash/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SPI/SPI_Flash/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/SPI/SPI_IRQ/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SPI/SPI_IRQ/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SPI/SPI_IRQ/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/SPI/SPI_IRQ/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SPI/SPI_IRQ/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SPI/SPI_IRQ/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/SPI/SPI_IRQ/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SPI/SPI_IRQ/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SPI/SPI_IRQ/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/SPI/SPI_IRQ/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SPI/SPI_IRQ/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/SPI/SPI_IRQ/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/TIME/TIM_Mode_IRQ/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/TIME/TIM_Mode_IRQ/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/TIME/TIM_Mode_IRQ/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/TIME/TIM_Mode_IRQ/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/TIME/TIM_Mode_IRQ/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/TIME/TIM_Mode_IRQ/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/TIME/TIM_Mode_IRQ/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/TIME/TIM_Mode_IRQ/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/TIME/TIM_Mode_IRQ/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/TIME/TIM_Mode_IRQ/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/TIME/TIM_Mode_IRQ/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/TIME/TIM_Mode_IRQ/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/TIME/TIM_Mode_PWM/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/TIME/TIM_Mode_PWM/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/TIME/TIM_Mode_PWM/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/TIME/TIM_Mode_PWM/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/TIME/TIM_Mode_PWM/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/TIME/TIM_Mode_PWM/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/TIME/TIM_Mode_PWM/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/TIME/TIM_Mode_PWM/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/TIME/TIM_Mode_PWM/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/TIME/TIM_Mode_PWM/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/TIME/TIM_Mode_PWM/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/TIME/TIM_Mode_PWM/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/UART/UART_IRQ/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/UART/UART_IRQ/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/UART/UART_IRQ/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/UART/UART_IRQ/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/UART/UART_IRQ/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/UART/UART_IRQ/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/UART/UART_IRQ/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/UART/UART_IRQ/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/UART/UART_IRQ/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/UART/UART_IRQ/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/UART/UART_IRQ/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/UART/UART_IRQ/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/UART/UART_send_receive/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/UART/UART_send_receive/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/UART/UART_send_receive/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/UART/UART_send_receive/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/UART/UART_send_receive/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/UART/UART_send_receive/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/UART/UART_send_receive/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/UART/UART_send_receive/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/UART/UART_send_receive/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/UART/UART_send_receive/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/UART/UART_send_receive/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/UART/UART_send_receive/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/VP_Demo/ModuleDemo/VP/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/VP_Demo/ModuleDemo/VP/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/VP_Demo/ModuleDemo/VP/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/VP_Demo/ModuleDemo/VP/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/VP_Demo/ModuleDemo/VP/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/VP_Demo/ModuleDemo/VP/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/VP_Demo/ModuleDemo/VP/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/VP_Demo/ModuleDemo/VP/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/VP_Demo/ModuleDemo/VP/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/VP_Demo/ModuleDemo/VP/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/VP_Demo/ModuleDemo/VP/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/VP_Demo/ModuleDemo/VP/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/WDT/WDT_IRQ/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/WDT/WDT_IRQ/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/WDT/WDT_IRQ/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/WDT/WDT_IRQ/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/WDT/WDT_IRQ/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/WDT/WDT_IRQ/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/WDT/WDT_IRQ/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/WDT/WDT_IRQ/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/WDT/WDT_IRQ/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/WDT/WDT_IRQ/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/WDT/WDT_IRQ/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/WDT/WDT_IRQ/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
Index: trunk/Soft/ModuleDemo/WDT/WDT_RESET/CM0/User/btreg.h
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/WDT/WDT_RESET/CM0/User/btreg.h	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/WDT/WDT_RESET/CM0/User/btreg.h	(working copy)
@@ -1554,11 +1554,12 @@
 #define	mem_xtal_gpio                           	0x4ee9
 #define	mem_adc_channel                         	0x4eea
 #define	mem_hibernate_time                      	0x4eeb
-#define	mem_efuse_encryp_data                   	0x4eef
-#define	mem_encryp_inital_value                 	0x4f0f
-#define	mem_encryp_param                        	0x4f11
-#define	mem_encryp_count                        	0x4f13
-#define	mem_headset_end                         	0x4f14
+#define	mem_lpm_sleep_time                      	0x4eef
+#define	mem_efuse_encryp_data                   	0x4ef3
+#define	mem_encryp_inital_value                 	0x4f13
+#define	mem_encryp_param                        	0x4f15
+#define	mem_encryp_count                        	0x4f17
+#define	mem_headset_end                         	0x4f18
 #define	mem_usb_mouse_data                      	0x4ad8
 #define	mem_usb_kb_data                         	0x4ae8
 #define	mem_usb_kb_multikey                     	0x4af8
@@ -1652,6 +1653,7 @@
 #define	BT_CMD_RMV_SCO_REQ                      	0x26
 #define	BT_CMD_LOAD_FLASH_PARAMS                	0x2d
 #define	BT_CMD_INCREASE_POWER_REQ               	0x2e
+#define	BT_CMD_ENTER_LPM                        	0x2f
 #define	BT_CMD_PLAY_PAUSE                       	0x32
 #define	BT_CMD_BACKWARD                         	0x33
 #define	BT_CMD_FORWARD                          	0x34
Index: trunk/Soft/ModuleDemo/WDT/WDT_RESET/CM0/respin/memmap.format
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/WDT/WDT_RESET/CM0/respin/memmap.format	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/WDT/WDT_RESET/CM0/respin/memmap.format	(working copy)
@@ -1552,11 +1552,12 @@
 0x4ee9 mem_xtal_gpio
 0x4eea mem_adc_channel
 0x4eeb mem_hibernate_time
-0x4eef mem_efuse_encryp_data
-0x4f0f mem_encryp_inital_value
-0x4f11 mem_encryp_param
-0x4f13 mem_encryp_count
-0x4f14 mem_headset_end
+0x4eef mem_lpm_sleep_time
+0x4ef3 mem_efuse_encryp_data
+0x4f13 mem_encryp_inital_value
+0x4f15 mem_encryp_param
+0x4f17 mem_encryp_count
+0x4f18 mem_headset_end
 0x4ad8 mem_usb_mouse_data
 0x4ae8 mem_usb_kb_data
 0x4af8 mem_usb_kb_multikey
Index: trunk/Soft/ModuleDemo/WDT/WDT_RESET/CM0/respin/ramcode.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/WDT/WDT_RESET/CM0/respin/ramcode.rom	(revision 4313)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/WDT/WDT_RESET/CM0/respin/ramcode.rom	(working copy)
@@ -1,127 +1,117 @@
 c2840007
-c001011c
-c0430098
-c04f009c
-c0500065
-c05c800b
+c0010119
+c043008e
+c04f0092
+c0500056
+c05c800d
 20202baf
-c0038069
-c0440072
-c0448078
+c003805a
+c004005f
+c0440068
+c044806e
+c075011c
 20202baf
 6fe24132
-c0078036
-2020000b
+c0078025
+2020000d
 6fe48050
 79207e01
 79207e06
 79207e07
 67e48050
 20600000
-58000022
-da200f12
-d8400001
-204056bd
-2040002c
-58000023
-da200f12
-d8400001
-204056bd
-6fe20f12
-245a0030
-58000024
-da204ec7
-d8400004
-204056bd
-58000030
-da204ecb
-d8400004
-204056bd
 58000034
 da204ecf
 d8400008
 204056bd
 20600000
 6fe20f12
-243a0086
+243a007c
 dfe000e4
-20200086
+2020007c
 67e24ebc
 20600000
 6fe24eea
 c281d875
 1fe20400
 2020586d
-71f0001c
-2040000e
-58001721
-67e44f0f
-204000f0
+20400010
 6fe28341
 67e24e91
-20400014
-2040008d
+20400016
 20407988
-5800011f
+5800011b
 67e4431d
-5800011e
+5800011a
 67e4431f
-58000050
+5800003a
 67e4431b
-580000ec
+580000e2
 67e44315
-580000d0
+580000c6
 67e44313
-20558057
-204057bf
-24358051
+20558047
+2435803b
 20403e79
+204057bf
 700f0d66
 20203f28
 20600000
+58001721
+67e44f13
+204000ed
+204057bf
 6fec4140
 67ec4340
 6fe24e91
-c282805b
+c3010046
+c282804c
 700f0d65
 20203f28
-70809a3f
+20600000
 204054b5
-20002710
+200005dc
+2040553b
+20000064
 20600000
-2040005e
+2040004f
 700f0d6a
 20203f28
 6fe8833e
 793ffe1d
 67e8804c
-20200062
-20400092
+20200053
+20400088
 70800520
-20200092
+20200088
 68484eeb
 20202cb8
 d8e00009
 20207357
 6fe243de
 207a0000
-2040006e
-20400067
+20400064
+20400058
 20203e60
+6fe64409
+684643f4
+18420a00
+98a67200
+202070f2
 70442901
 20758000
 70442900
 20600000
 204057f1
 6fe2487a
-c0000076
+c000006c
 20600000
-2040007c
+20400072
 202057fa
 6fe2487a
 c1808000
 204057f5
-20200081
+20200077
 6fe3f000
 d840001c
 9841fe00
@@ -136,9 +126,9 @@
 70804c88
 70804e26
 70804f48
-20400092
+20400088
 70800520
-20200092
+20200088
 58182000
 67e64219
 580007bf
@@ -153,13 +143,13 @@
 6fe24013
 793ffe06
 67e24013
-2020009e
-2040009e
+20200094
+20400094
 20202bd8
 20405900
 6fe24ee8
 243a2a70
-202000a2
+20200098
 70805100
 68424ee9
 58008080
@@ -204,7 +194,7 @@
 67e28968
 79207e07
 67e28968
-20400032
+20400021
 20600000
 7043dd01
 20403f41
@@ -215,74 +205,97 @@
 98408a00
 58000080
 e7e20005
-204000e9
+204000df
 df200020
 d8c08080
 18c20a00
 efe20006
-c00180e5
-c00200e5
-c00280e5
-c00380e5
-c01600e5
-c01680e5
-c08000e7
+c00180db
+c00200db
+c00280db
+c00380db
+c01600db
+c01680db
+c08000dd
 58000080
 e7e20005
-c20000dc
+c20000d2
 20600000
 df200008
 d8c0812a
-202000dc
+202000d2
 704ee300
-202000d9
+2040554f
+70809a3f
+68424ee9
+58008080
+98408a00
+58000080
+e7e20005
+202000cf
 204058fc
 202058f6
 dfe00020
-da204eef
+da204ef3
 d8400020
 204056bd
-d8c04eef
+d8c04ef3
 efe40006
 207a0000
-67e44f11
-204000fc
-20400100
-204000fc
-2020010c
-da204ef1
+67e44f15
+204000f9
+204000fd
+204000f9
+20200109
+da204ef5
 df200006
-704f1301
+704f1701
 20600000
 efe40011
-68444f0f
+68444f13
 9840fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c2000100
+67e24f17
+c20000fd
 20600000
 efe40011
-68444f0f
+68444f13
 9842fe00
-67e44f0f
-6fe24f13
+67e44f13
+6fe24f17
 9a20a200
 1a20a202
-6fe24f13
+6fe24f17
 1fe0fe01
-67e24f13
-c200010c
-6fe44f0f
-68444f11
+67e24f17
+c2000109
+6fe44f13
+68444f15
 98467c00
 2422abaf
 20600000
-20403153
-20202016
+20202017
 20600000
 20600000
+20406b27
+da2047e1
+2040725d
+1fe20400
+20406b2b
+18427e00
+207a0000
+c0178125
+20206b58
+7043dd02
+20403f42
+68484eef
+604841fa
+70442900
+20403194
+684841fa
+20202cc9
Index: trunk/Soft/ModuleDemo/WDT/WDT_RESET/CM0/respin/sched.rom
===================================================================
--- /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/WDT/WDT_RESET/CM0/respin/sched.rom	(revision 4312)
+++ /YC1121E/SoftCode/MCU/trunk/Soft/ModuleDemo/WDT/WDT_RESET/CM0/respin/sched.rom	(working copy)
@@ -32,7 +32,7 @@
 00   #mem_patch1E
 00   #mem_patch1F
 80   #mem_patch20
-00   #mem_patch21
+01   #mem_patch21
 00   #mem_patch22
 00   #mem_patch23
 00   #mem_patch24
@@ -60,7 +60,7 @@
 00   #mem_patch3A
 00   #mem_patch3B
 00   #mem_patch3C
-00   #mem_patch3D
+04   #mem_patch3D
 00   #mem_patch3E
 00   #mem_patch3F
 
@@ -125,7 +125,7 @@
 mem_sniff_param_attempt:01
 mem_sniff_param_timeout:01
 mem_unsniff2sniff_timer:0a
-mem_ssp_enable:01
+mem_ssp_enable:00
 mem_ui_profile_supported:48
 mem_app_connection_options:17
 mem_eir_enable:01
@@ -549,7 +549,15 @@
 mem_rx_window_init:80 03
 mem_rx_window_sniff:00 06
 
-mem_lpm_xtalcnt:00 20 18 bf 07
+#if you find lpo_time not near 0x2a, you must think the pre timer maybe error.
+#DVDD 0.1uF, VFB 1uF    Time:   DVDD up time: 4us, VFB up time: 255us
+#DVDD 0.1uF, VFB 10uF    Time:   DVDD up time: 4us, VFB up time: 305us 
+#clock unit is internal 32K, 1 step is near 32us
+#so we set:
+#1: digldo pre-on counter(DVDD):  0x02
+#2: exen pre-on counter(VFB):  0x14
+#3: xtal pre-on counter(XTAL) set to zero becouse it will set in lpm_cal_xtal_startup
+mem_lpm_xtalcnt:00 14 1a bf 07
 
 mem_ef_base:00 ff 87
 mem_eeprom_block_size:80
