///////////////////////////////////////////////////////////////////////////////
//                                                                            /
// IAR ANSI C/C++ Compiler V6.30.1.53127/W32 for ARM    08/Mar/2012  18:18:28 /
// Copyright 1999-2011 IAR Systems AB.                                        /
//                                                                            /
//    Cpu mode     =  thumb                                                   /
//    Endian       =  little                                                  /
//    Source file  =  D:\Profiles\b01252\My Documents\Freescale\P0\software\s /
//                    ample code cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_ /
//                    sc\src\drivers\rcm\rcm.c                                /
//    Command line =  "D:\Profiles\b01252\My Documents\Freescale\P0\software\ /
//                    sample code cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz /
//                    _sc\src\drivers\rcm\rcm.c" -D IAR -D TOWER -D           /
//                    TWR_K20D50M -lCN "D:\Profiles\b01252\My                 /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\FLASH_128KB_PFLASH\List\" -lB         /
//                    "D:\Profiles\b01252\My Documents\Freescale\P0\software\ /
//                    sample code cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz /
//                    _sc\build\iar\TWRK20D50M_Demo\FLASH_128KB_PFLASH\List\" /
//                     -o "D:\Profiles\b01252\My                              /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\FLASH_128KB_PFLASH\Obj\" --no_cse     /
//                    --no_unroll --no_inline --no_code_motion --no_tbaa      /
//                    --no_clustering --no_scheduling --debug                 /
//                    --endian=little --cpu=Cortex-M4 -e --fpu=None           /
//                    --dlib_config "C:\Program Files\IAR Systems\Embedded    /
//                    Workbench 6.0_5\arm\INC\c\DLib_Config_Normal.h" -I      /
//                    "D:\Profiles\b01252\My Documents\Freescale\P0\software\ /
//                    sample code cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz /
//                    _sc\build\iar\TWRK20D50M_Demo\..\..\..\src\common\" -I  /
//                    "D:\Profiles\b01252\My Documents\Freescale\P0\software\ /
//                    sample code cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz /
//                    _sc\build\iar\TWRK20D50M_Demo\..\..\..\src\cpu\" -I     /
//                    "D:\Profiles\b01252\My Documents\Freescale\P0\software\ /
//                    sample code cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz /
//                    _sc\build\iar\TWRK20D50M_Demo\..\..\..\src\cpu\headers\ /
//                    " -I "D:\Profiles\b01252\My                             /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\drivers\uart\" -I        /
//                    "D:\Profiles\b01252\My Documents\Freescale\P0\software\ /
//                    sample code cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz /
//                    _sc\build\iar\TWRK20D50M_Demo\..\..\..\src\drivers\mcg\ /
//                    " -I "D:\Profiles\b01252\My                             /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\drivers\wdog\" -I        /
//                    "D:\Profiles\b01252\My Documents\Freescale\P0\software\ /
//                    sample code cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz /
//                    _sc\build\iar\TWRK20D50M_Demo\..\..\..\src\drivers\rcm\ /
//                    " -I "D:\Profiles\b01252\My                             /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\drivers\lptmr\" -I       /
//                    "D:\Profiles\b01252\My Documents\Freescale\P0\software\ /
//                    sample code cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz /
//                    _sc\build\iar\TWRK20D50M_Demo\..\..\..\src\platforms\"  /
//                    -I "D:\Profiles\b01252\My Documents\Freescale\P0\softwa /
//                    re\sample code cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50 /
//                    MHz_sc\build\iar\TWRK20D50M_Demo\..\" -I                /
//                    "D:\Profiles\b01252\My Documents\Freescale\P0\software\ /
//                    sample code cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz /
//                    _sc\build\iar\TWRK20D50M_Demo\..\..\..\src\projects\TWR /
//                    K20D50M_Demo\" -I "D:\Profiles\b01252\My                /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\projects\TWRK20D50M_Demo /
//                    \dma\" -I "D:\Profiles\b01252\My                        /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\projects\TWRK20D50M_Demo /
//                    \adc16\" -I "D:\Profiles\b01252\My                      /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\projects\TWRK20D50M_Demo /
//                    \i2c\" -I "D:\Profiles\b01252\My                        /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\projects\TWRK20D50M_Demo /
//                    \tsi\" -I "D:\Profiles\b01252\My                        /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\projects\TWRK20D50M_Demo /
//                    \adc_test\" -I "D:\Profiles\b01252\My                   /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\projects\TWRK20D50M_Demo /
//                    \angle_calculation\" -I "D:\Profiles\b01252\My          /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\projects\TWRK20D50M_Demo /
//                    \buzzer\" -I "D:\Profiles\b01252\My                     /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\projects\TWRK20D50M_Demo /
//                    \fft_test\" -I "D:\Profiles\b01252\My                   /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\projects\TWRK20D50M_Demo /
//                    \irda_test\" -I "D:\Profiles\b01252\My                  /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\projects\TWRK20D50M_Demo /
//                    \cmt_test\" -I "D:\Profiles\b01252\My                   /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\projects\TWRK20D50M_Demo /
//                    \protocol\" -I "D:\Profiles\b01252\My                   /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\projects\TWRK20D50M_Demo /
//                    \task_mgr\" -I "D:\Profiles\b01252\My                   /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\projects\TWRK20D50M_Demo /
//                    \TWRK20_specific\" -I "D:\Profiles\b01252\My            /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\projects\TWRK20D50M_Demo /
//                    \rtc\" -I "D:\Profiles\b01252\My                        /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\CMSIS\DSP_Lib\Lib\interm /
//                    ediateFiles\" -I "D:\Profiles\b01252\My                 /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\CMSIS\DSP_Lib\Include\"  /
//                    -I "D:\Profiles\b01252\My Documents\Freescale\P0\softwa /
//                    re\sample code cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50 /
//                    MHz_sc\build\iar\TWRK20D50M_Demo\..\..\..\src\CMSIS\CM4 /
//                    \DeviceSupport\ARM\ARMCM4\" -I "D:\Profiles\b01252\My   /
//                    Documents\Freescale\P0\software\sample code             /
//                    cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\build\ia /
//                    r\TWRK20D50M_Demo\..\..\..\src\CMSIS\CM4\CoreSupport\"  /
//                    -I "D:\Profiles\b01252\My Documents\Freescale\P0\softwa /
//                    re\sample code cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50 /
//                    MHz_sc\build\iar\TWRK20D50M_Demo\..\..\..\src\CMSIS\CM4 /
//                    \CoreSupportLiker Options-Library\" -I                  /
//                    "D:\Profiles\b01252\My Documents\Freescale\P0\software\ /
//                    sample code cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz /
//                    _sc\build\iar\TWRK20D50M_Demo\..\..\..\src\CMSIS\DSP_Li /
//                    b\Lib\intermediateFiles\arm_cortexM4_math.lib\" -I      /
//                    "D:\Profiles\b01252\My Documents\Freescale\P0\software\ /
//                    sample code cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz /
//                    _sc\build\iar\TWRK20D50M_Demo\..\..\..\build\" -Ol      /
//                    --use_c++_inline -I "C:\Program Files\IAR               /
//                    Systems\Embedded Workbench 6.0_5\arm\CMSIS\Include\"    /
//                    -D ARM_MATH_CM4                                         /
//    List file    =  D:\Profiles\b01252\My Documents\Freescale\P0\software\s /
//                    ample code cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_ /
//                    sc\build\iar\TWRK20D50M_Demo\FLASH_128KB_PFLASH\List\rc /
//                    m.s                                                     /
//                                                                            /
//                                                                            /
///////////////////////////////////////////////////////////////////////////////

        NAME rcm

        #define SHT_PROGBITS 0x1

        EXTERN printf

        PUBLIC outSRS
        PUBLIC outsrs

// D:\Profiles\b01252\My Documents\Freescale\P0\software\sample code cesar\TWR-K20D50M_LABS_AND_CE\kinetis_50MHz_sc\src\drivers\rcm\rcm.c
//    1 /*
//    2  * File:        rcm.c
//    3  * Purpose:     Provides routines for the reset controller module
//    4  *              
//    5  */
//    6 
//    7 #include "common.h"
//    8 #include "rcm.h"
//    9 
//   10 /* OutSRS routine - checks the value in the SRS registers and sends
//   11  * messages to the terminal announcing the status at the start of the 
//   12  * code.
//   13  */

        SECTION `.text`:CODE:NOROOT(1)
        THUMB
//   14 void outSRS(void){                         //[outSRS]
outSRS:
        PUSH     {R7,LR}
//   15 
//   16   
//   17   /* 	if (RCM_SRS1 & RCM_SRS1_TAMPER_MASK)
//   18 		printf("Tamper Detect Reset\n");*/
//   19   
//   20 	if (RCM_SRS1 & RCM_SRS1_SACKERR_MASK)
        LDR.W    R0,??DataTable1  ;; 0x4007f001
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+26
        BPL.N    ??outSRS_0
//   21 		printf("Stop Mode Acknowledge Error Reset\n");
        LDR.W    R0,??DataTable1_1
        BL       printf
//   22 	if (RCM_SRS1 & RCM_SRS1_EZPT_MASK)
??outSRS_0:
        LDR.W    R0,??DataTable1  ;; 0x4007f001
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+27
        BPL.N    ??outSRS_1
//   23 		printf("EzPort Reset\n");
        LDR.W    R0,??DataTable1_2
        BL       printf
//   24 	if (RCM_SRS1 & RCM_SRS1_MDM_AP_MASK)
??outSRS_1:
        LDR.W    R0,??DataTable1  ;; 0x4007f001
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+28
        BPL.N    ??outSRS_2
//   25 		printf("MDM-AP Reset\n");
        LDR.W    R0,??DataTable1_3
        BL       printf
//   26 	if (RCM_SRS1 & RCM_SRS1_SW_MASK)
??outSRS_2:
        LDR.W    R0,??DataTable1  ;; 0x4007f001
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+29
        BPL.N    ??outSRS_3
//   27 		printf("Software Reset\n");
        LDR.W    R0,??DataTable1_4
        BL       printf
//   28 	if (RCM_SRS1 & RCM_SRS1_LOCKUP_MASK)
??outSRS_3:
        LDR.W    R0,??DataTable1  ;; 0x4007f001
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+30
        BPL.N    ??outSRS_4
//   29 		printf("Core Lockup Event Reset\n");
        LDR.W    R0,??DataTable1_5
        BL       printf
//   30 	if (RCM_SRS1 & RCM_SRS1_JTAG_MASK)
??outSRS_4:
        LDR.W    R0,??DataTable1  ;; 0x4007f001
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+31
        BPL.N    ??outSRS_5
//   31 		printf("JTAG Reset\n");
        LDR.W    R0,??DataTable1_6
        BL       printf
//   32 	
//   33 	if (RCM_SRS0 & RCM_SRS0_POR_MASK)
??outSRS_5:
        LDR.W    R0,??DataTable1_7  ;; 0x4007f000
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+24
        BPL.N    ??outSRS_6
//   34 		printf("Power-on Reset\n");
        LDR.W    R0,??DataTable1_8
        BL       printf
//   35 	if (RCM_SRS0 & RCM_SRS0_PIN_MASK)
??outSRS_6:
        LDR.W    R0,??DataTable1_7  ;; 0x4007f000
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+25
        BPL.N    ??outSRS_7
//   36 		printf("External Pin Reset\n");
        LDR.W    R0,??DataTable1_9
        BL       printf
//   37 	if (RCM_SRS0 & RCM_SRS0_WDOG_MASK)
??outSRS_7:
        LDR.W    R0,??DataTable1_7  ;; 0x4007f000
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+26
        BPL.N    ??outSRS_8
//   38 		printf("Watchdog(COP) Reset\n");
        LDR.W    R0,??DataTable1_10
        BL       printf
//   39 	if (RCM_SRS0 & RCM_SRS0_LOC_MASK)
??outSRS_8:
        LDR.W    R0,??DataTable1_7  ;; 0x4007f000
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+29
        BPL.N    ??outSRS_9
//   40 		printf("Loss of Clock Reset\n");
        LDR.W    R0,??DataTable1_11
        BL       printf
//   41 	if (RCM_SRS0 & RCM_SRS0_LVD_MASK)
??outSRS_9:
        LDR.W    R0,??DataTable1_7  ;; 0x4007f000
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+30
        BPL.N    ??outSRS_10
//   42 		printf("Low-voltage Detect Reset\n");
        LDR.W    R0,??DataTable1_12
        BL       printf
//   43 	if (RCM_SRS0 & RCM_SRS0_WAKEUP_MASK)
??outSRS_10:
        LDR.W    R0,??DataTable1_7  ;; 0x4007f000
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+31
        BPL.N    ??outSRS_11
//   44         {
//   45           printf("[outSRS]Wakeup bit set from low power mode exit\n");
        LDR.W    R0,??DataTable1_13
        BL       printf
//   46           printf("[outSRS]SMC_PMPROT   = %#02X \r\n", (SMC_PMPROT))  ;
        LDR.W    R0,??DataTable1_14  ;; 0x4007e000
        LDRB     R1,[R0, #+0]
        UXTB     R1,R1            ;; ZeroExt  R1,R1,#+24,#+24
        LDR.W    R0,??DataTable1_15
        BL       printf
//   47           printf("[outSRS]SMC_PMCTRL   = %#02X \r\n", (SMC_PMCTRL))  ;
        LDR.W    R0,??DataTable1_16  ;; 0x4007e001
        LDRB     R1,[R0, #+0]
        UXTB     R1,R1            ;; ZeroExt  R1,R1,#+24,#+24
        LDR.W    R0,??DataTable1_17
        BL       printf
//   48           printf("[outSRS]SMC_VLLSCTRL   = %#02X \r\n", (SMC_VLLSCTRL))  ;
        LDR.W    R0,??DataTable1_18  ;; 0x4007e002
        LDRB     R1,[R0, #+0]
        UXTB     R1,R1            ;; ZeroExt  R1,R1,#+24,#+24
        LDR.N    R0,??DataTable1_19
        BL       printf
//   49           printf("[outSRS]SMC_PMSTAT   = %#02X \r\n", (SMC_PMSTAT))  ;
        LDR.N    R0,??DataTable1_20  ;; 0x4007e003
        LDRB     R1,[R0, #+0]
        UXTB     R1,R1            ;; ZeroExt  R1,R1,#+24,#+24
        LDR.N    R0,??DataTable1_21
        BL       printf
//   50 
//   51           if ((SMC_PMCTRL & SMC_PMCTRL_STOPM_MASK)== 3)
        LDR.N    R0,??DataTable1_16  ;; 0x4007e001
        LDRB     R0,[R0, #+0]
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        ANDS     R0,R0,#0x7
        CMP      R0,#+3
        BNE.N    ??outSRS_12
//   52             printf("[outSRS] LLS exit \n") ;
        LDR.N    R0,??DataTable1_22
        BL       printf
//   53           if (((SMC_PMCTRL & SMC_PMCTRL_STOPM_MASK)== 4) && ((SMC_VLLSCTRL & SMC_VLLSCTRL_VLLSM_MASK)== 0))
??outSRS_12:
        LDR.N    R0,??DataTable1_16  ;; 0x4007e001
        LDRB     R0,[R0, #+0]
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        ANDS     R0,R0,#0x7
        CMP      R0,#+4
        BNE.N    ??outSRS_13
        LDR.N    R0,??DataTable1_18  ;; 0x4007e002
        LDRB     R0,[R0, #+0]
        MOVS     R1,#+7
        TST      R0,R1
        BNE.N    ??outSRS_13
//   54             printf("[outSRS] VLLS0 exit \n") ;
        LDR.N    R0,??DataTable1_23
        BL       printf
//   55           if (((SMC_PMCTRL & SMC_PMCTRL_STOPM_MASK)== 4) && ((SMC_VLLSCTRL & SMC_VLLSCTRL_VLLSM_MASK)== 1))
??outSRS_13:
        LDR.N    R0,??DataTable1_16  ;; 0x4007e001
        LDRB     R0,[R0, #+0]
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        ANDS     R0,R0,#0x7
        CMP      R0,#+4
        BNE.N    ??outSRS_14
        LDR.N    R0,??DataTable1_18  ;; 0x4007e002
        LDRB     R0,[R0, #+0]
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        ANDS     R0,R0,#0x7
        CMP      R0,#+1
        BNE.N    ??outSRS_14
//   56             printf("[outSRS] VLLS1 exit \n") ;
        LDR.N    R0,??DataTable1_24
        BL       printf
//   57           if (((SMC_PMCTRL & SMC_PMCTRL_STOPM_MASK)== 4) && ((SMC_VLLSCTRL & SMC_VLLSCTRL_VLLSM_MASK)== 2))
??outSRS_14:
        LDR.N    R0,??DataTable1_16  ;; 0x4007e001
        LDRB     R0,[R0, #+0]
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        ANDS     R0,R0,#0x7
        CMP      R0,#+4
        BNE.N    ??outSRS_15
        LDR.N    R0,??DataTable1_18  ;; 0x4007e002
        LDRB     R0,[R0, #+0]
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        ANDS     R0,R0,#0x7
        CMP      R0,#+2
        BNE.N    ??outSRS_15
//   58             printf("[outSRS] VLLS2 exit \n") ;
        LDR.N    R0,??DataTable1_25
        BL       printf
//   59           if (((SMC_PMCTRL & SMC_PMCTRL_STOPM_MASK)== 4) && ((SMC_VLLSCTRL & SMC_VLLSCTRL_VLLSM_MASK)== 3))
??outSRS_15:
        LDR.N    R0,??DataTable1_16  ;; 0x4007e001
        LDRB     R0,[R0, #+0]
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        ANDS     R0,R0,#0x7
        CMP      R0,#+4
        BNE.N    ??outSRS_11
        LDR.N    R0,??DataTable1_18  ;; 0x4007e002
        LDRB     R0,[R0, #+0]
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        ANDS     R0,R0,#0x7
        CMP      R0,#+3
        BNE.N    ??outSRS_11
//   60             printf("[outSRS] VLLS3 exit \n") ; 
        LDR.N    R0,??DataTable1_26
        BL       printf
//   61 	}
//   62 
//   63         if ((RCM_SRS0 == 0) && (RCM_SRS1 == 0)) 
??outSRS_11:
        LDR.N    R0,??DataTable1_7  ;; 0x4007f000
        LDRB     R0,[R0, #+0]
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        CMP      R0,#+0
        BNE.N    ??outSRS_16
        LDR.N    R0,??DataTable1  ;; 0x4007f001
        LDRB     R0,[R0, #+0]
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        CMP      R0,#+0
        BNE.N    ??outSRS_16
//   64         {
//   65 	       printf("[outSRS]RCM_SRS0 is ZERO   = %#02X \r\n", (RCM_SRS0))  ;
        LDR.N    R0,??DataTable1_7  ;; 0x4007f000
        LDRB     R1,[R0, #+0]
        UXTB     R1,R1            ;; ZeroExt  R1,R1,#+24,#+24
        LDR.N    R0,??DataTable1_27
        BL       printf
//   66 	       printf("[outSRS]RCM_SRS1 is ZERO   = %#02X \r\n", (RCM_SRS1))  ;	 
        LDR.N    R0,??DataTable1  ;; 0x4007f001
        LDRB     R1,[R0, #+0]
        UXTB     R1,R1            ;; ZeroExt  R1,R1,#+24,#+24
        LDR.N    R0,??DataTable1_28
        BL       printf
//   67         }
//   68   }
??outSRS_16:
        POP      {R0,PC}          ;; return
//   69 

        SECTION `.text`:CODE:NOROOT(1)
        THUMB
//   70 void outsrs(void){
//   71 	char i;
//   72 	/* OutSRS routine - checks the value in the SRS registers and sends
//   73 	 * messages to two pins that indicate the bits set in the two SRS  
//   74 	 * registers.  PORT C19 and PORT E26 are used in this driver
//   75          * initialized in Port_init(); 
//   76 	 */ 
//   77 	//	void outSRS(void){                         //[outSRS]
//   78         //used for wakeup testing
//   79         PORTB_PCR19 = (PORT_PCR_MUX(01) |    //  GPIO
//   80               PORT_PCR_IRQC(0x00) |  //  falling edge enable
//   81               PORT_PCR_DSE_MASK);    // enable high drive strength
outsrs:
        LDR.N    R0,??DataTable1_29  ;; 0x4004a04c
        MOV      R1,#+320
        STR      R1,[R0, #+0]
//   82         GPIOB_PDDR  |= 0x00080000;           // set Port B 19 as output
        LDR.N    R0,??DataTable1_30  ;; 0x400ff054
        LDR      R0,[R0, #+0]
        ORRS     R0,R0,#0x80000
        LDR.N    R1,??DataTable1_30  ;; 0x400ff054
        STR      R0,[R1, #+0]
//   83         GPIOB_PCOR =   0x00080000;           // set Port B 19 indicate wakeup - clears it in llwu_isr
        LDR.N    R0,??DataTable1_31  ;; 0x400ff048
        MOVS     R1,#+524288
        STR      R1,[R0, #+0]
//   84         //used for wakeup testing
//   85         PORTB_PCR18 = (PORT_PCR_MUX(01) |    //  GPIO
//   86                        PORT_PCR_IRQC(0x00) |  //  falling edge enable
//   87                        PORT_PCR_DSE_MASK);    // enable high drive strength
        LDR.N    R0,??DataTable1_32  ;; 0x4004a048
        MOV      R1,#+320
        STR      R1,[R0, #+0]
//   88         GPIOB_PDDR  |= 0x00040000;           // set Port B18 as output
        LDR.N    R0,??DataTable1_30  ;; 0x400ff054
        LDR      R0,[R0, #+0]
        ORRS     R0,R0,#0x40000
        LDR.N    R1,??DataTable1_30  ;; 0x400ff054
        STR      R0,[R1, #+0]
//   89         GPIOB_PSOR   = 0x00040000;             // set Port B18 SRS output outsrs uses this pin
        LDR.N    R0,??DataTable1_33  ;; 0x400ff044
        MOVS     R1,#+262144
        STR      R1,[R0, #+0]
//   90 	
//   91  	if (RCM_SRS0 & RCM_SRS0_POR_MASK){
        LDR.N    R0,??DataTable1_7  ;; 0x4007f000
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+24
        BPL.N    ??outsrs_0
//   92 		for (i=0;i<8;i++){
        MOVS     R0,#+0
        B.N      ??outsrs_1
//   93                           GPIOB_PTOR = 0x00080000;           
??outsrs_2:
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//   94                           GPIOB_PTOR = 0x00080000;           
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//   95 		}
        ADDS     R0,R0,#+1
??outsrs_1:
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        CMP      R0,#+8
        BCC.N    ??outsrs_2
//   96 	}
//   97 	if (RCM_SRS0 & RCM_SRS0_PIN_MASK){
??outsrs_0:
        LDR.N    R0,??DataTable1_7  ;; 0x4007f000
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+25
        BPL.N    ??outsrs_3
//   98 			for (i=0;i<7;i++){
        MOVS     R0,#+0
        B.N      ??outsrs_4
//   99                           GPIOB_PTOR = 0x00080000;           
??outsrs_5:
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  100                           GPIOB_PTOR = 0x00080000;           
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  101 			}
        ADDS     R0,R0,#+1
??outsrs_4:
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        CMP      R0,#+7
        BCC.N    ??outsrs_5
//  102 	}
//  103 	if (RCM_SRS0 & RCM_SRS0_WDOG_MASK){
??outsrs_3:
        LDR.N    R0,??DataTable1_7  ;; 0x4007f000
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+26
        BPL.N    ??outsrs_6
//  104 			for (i=0;i<6;i++){
        MOVS     R0,#+0
        B.N      ??outsrs_7
//  105                           GPIOB_PTOR = 0x00080000;           
??outsrs_8:
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  106                           GPIOB_PTOR = 0x00080000;           
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  107 			}
        ADDS     R0,R0,#+1
??outsrs_7:
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        CMP      R0,#+6
        BCC.N    ??outsrs_8
//  108 	}
//  109 	if (RCM_SRS0 & RCM_SRS0_LOC_MASK){
??outsrs_6:
        LDR.N    R0,??DataTable1_7  ;; 0x4007f000
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+29
        BPL.N    ??outsrs_9
//  110 			for (i=0;i<3;i++){
        MOVS     R0,#+0
        B.N      ??outsrs_10
//  111                           GPIOB_PTOR = 0x00080000;           
??outsrs_11:
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  112                           GPIOB_PTOR = 0x00080000;           
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  113 			}
        ADDS     R0,R0,#+1
??outsrs_10:
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        CMP      R0,#+3
        BCC.N    ??outsrs_11
//  114 	}
//  115 	if (RCM_SRS0 & RCM_SRS0_LVD_MASK){
??outsrs_9:
        LDR.N    R0,??DataTable1_7  ;; 0x4007f000
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+30
        BPL.N    ??outsrs_12
//  116 			for (i=0;i<2;i++){
        MOVS     R0,#+0
        B.N      ??outsrs_13
//  117                           GPIOB_PTOR = 0x00080000;           
??outsrs_14:
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  118                           GPIOB_PTOR = 0x00080000;           
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  119 			}
        ADDS     R0,R0,#+1
??outsrs_13:
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        CMP      R0,#+2
        BCC.N    ??outsrs_14
//  120 	}
//  121 	if (RCM_SRS0 & RCM_SRS0_WAKEUP_MASK){
??outsrs_12:
        LDR.N    R0,??DataTable1_7  ;; 0x4007f000
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+31
        BPL.N    ??outsrs_15
//  122                           GPIOB_PTOR = 0x00080000;           
        LDR.N    R0,??DataTable1_34  ;; 0x400ff04c
        MOVS     R1,#+524288
        STR      R1,[R0, #+0]
//  123                           GPIOB_PTOR = 0x00080000;           
        LDR.N    R0,??DataTable1_34  ;; 0x400ff04c
        MOVS     R1,#+524288
        STR      R1,[R0, #+0]
//  124 	}
//  125         GPIOB_PCOR   = 0x00040000;             // set Port B18 SRS output outsrs uses this pin
??outsrs_15:
        LDR.N    R0,??DataTable1_31  ;; 0x400ff048
        MOVS     R1,#+262144
        STR      R1,[R0, #+0]
//  126 
//  127 /*	if (RCM_SRS1 & RCM_SRS1_TAMPER_MASK){
//  128 			for (i=0;i<8;i++){
//  129                           GPIOB_PTOR = 0x00080000;           
//  130                           GPIOB_PTOR = 0x00080000;           
//  131 			}
//  132 	}*/
//  133         
//  134         
//  135 	if (RCM_SRS1 & RCM_SRS1_SACKERR_MASK){
        LDR.N    R0,??DataTable1  ;; 0x4007f001
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+26
        BPL.N    ??outsrs_16
//  136 			for (i=0;i<6;i++){
        MOVS     R0,#+0
        B.N      ??outsrs_17
//  137                           GPIOB_PTOR = 0x00080000;           
??outsrs_18:
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  138                           GPIOB_PTOR = 0x00080000;           
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  139 			}
        ADDS     R0,R0,#+1
??outsrs_17:
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        CMP      R0,#+6
        BCC.N    ??outsrs_18
//  140 	}
//  141 	if (RCM_SRS1 & RCM_SRS1_EZPT_MASK){
??outsrs_16:
        LDR.N    R0,??DataTable1  ;; 0x4007f001
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+27
        BPL.N    ??outsrs_19
//  142 			for (i=0;i<5;i++){
        MOVS     R0,#+0
        B.N      ??outsrs_20
//  143                           GPIOB_PTOR = 0x00080000;           
??outsrs_21:
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  144                           GPIOB_PTOR = 0x00080000;           
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  145 			}
        ADDS     R0,R0,#+1
??outsrs_20:
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        CMP      R0,#+5
        BCC.N    ??outsrs_21
//  146 	}
//  147 	if (RCM_SRS1 & RCM_SRS1_MDM_AP_MASK){
??outsrs_19:
        LDR.N    R0,??DataTable1  ;; 0x4007f001
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+28
        BPL.N    ??outsrs_22
//  148 			for (i=0;i<4;i++){
        MOVS     R0,#+0
        B.N      ??outsrs_23
//  149                           GPIOB_PTOR = 0x00080000;           
??outsrs_24:
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  150                           GPIOB_PTOR = 0x00080000;           
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  151 			}
        ADDS     R0,R0,#+1
??outsrs_23:
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        CMP      R0,#+4
        BCC.N    ??outsrs_24
//  152 	}
//  153 	if (RCM_SRS1 & RCM_SRS1_SW_MASK){
??outsrs_22:
        LDR.N    R0,??DataTable1  ;; 0x4007f001
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+29
        BPL.N    ??outsrs_25
//  154 			for (i=0;i<3;i++){
        MOVS     R0,#+0
        B.N      ??outsrs_26
//  155                           GPIOB_PTOR = 0x00080000;           
??outsrs_27:
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  156                           GPIOB_PTOR = 0x00080000;           
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  157 			}
        ADDS     R0,R0,#+1
??outsrs_26:
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        CMP      R0,#+3
        BCC.N    ??outsrs_27
//  158 	}
//  159 	if (RCM_SRS1 & RCM_SRS1_LOCKUP_MASK){
??outsrs_25:
        LDR.N    R0,??DataTable1  ;; 0x4007f001
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+30
        BPL.N    ??outsrs_28
//  160 			for (i=0;i<2;i++){
        MOVS     R0,#+0
        B.N      ??outsrs_29
//  161                           GPIOB_PTOR = 0x00080000;           
??outsrs_30:
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  162                           GPIOB_PTOR = 0x00080000;           
        LDR.N    R1,??DataTable1_34  ;; 0x400ff04c
        MOVS     R2,#+524288
        STR      R2,[R1, #+0]
//  163 			}
        ADDS     R0,R0,#+1
??outsrs_29:
        UXTB     R0,R0            ;; ZeroExt  R0,R0,#+24,#+24
        CMP      R0,#+2
        BCC.N    ??outsrs_30
//  164 	}
//  165 	if (RCM_SRS1 & RCM_SRS1_JTAG_MASK){
??outsrs_28:
        LDR.N    R0,??DataTable1  ;; 0x4007f001
        LDRB     R0,[R0, #+0]
        LSLS     R0,R0,#+31
        BPL.N    ??outsrs_31
//  166                           GPIOB_PTOR = 0x00080000;           
        LDR.N    R0,??DataTable1_34  ;; 0x400ff04c
        MOVS     R1,#+524288
        STR      R1,[R0, #+0]
//  167                           GPIOB_PTOR = 0x00080000;           
        LDR.N    R0,??DataTable1_34  ;; 0x400ff04c
        MOVS     R1,#+524288
        STR      R1,[R0, #+0]
//  168 	}
//  169  	GPIOB_PSOR = 0x000C0000;   // output SRS1 done
??outsrs_31:
        LDR.N    R0,??DataTable1_33  ;; 0x400ff044
        MOVS     R1,#+786432
        STR      R1,[R0, #+0]
//  170 }
        BX       LR               ;; return

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1:
        DC32     0x4007f001

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_1:
        DC32     `?<Constant "Stop Mode Acknowledge...">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_2:
        DC32     `?<Constant "EzPort Reset\\n">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_3:
        DC32     `?<Constant "MDM-AP Reset\\n">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_4:
        DC32     `?<Constant "Software Reset\\n">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_5:
        DC32     `?<Constant "Core Lockup Event Reset\\n">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_6:
        DC32     `?<Constant "JTAG Reset\\n">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_7:
        DC32     0x4007f000

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_8:
        DC32     `?<Constant "Power-on Reset\\n">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_9:
        DC32     `?<Constant "External Pin Reset\\n">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_10:
        DC32     `?<Constant "Watchdog(COP) Reset\\n">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_11:
        DC32     `?<Constant "Loss of Clock Reset\\n">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_12:
        DC32     `?<Constant "Low-voltage Detect Re...">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_13:
        DC32     `?<Constant "[outSRS]Wakeup bit se...">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_14:
        DC32     0x4007e000

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_15:
        DC32     `?<Constant "[outSRS]SMC_PMPROT   ...">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_16:
        DC32     0x4007e001

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_17:
        DC32     `?<Constant "[outSRS]SMC_PMCTRL   ...">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_18:
        DC32     0x4007e002

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_19:
        DC32     `?<Constant "[outSRS]SMC_VLLSCTRL ...">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_20:
        DC32     0x4007e003

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_21:
        DC32     `?<Constant "[outSRS]SMC_PMSTAT   ...">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_22:
        DC32     `?<Constant "[outSRS] LLS exit \\n">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_23:
        DC32     `?<Constant "[outSRS] VLLS0 exit \\n">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_24:
        DC32     `?<Constant "[outSRS] VLLS1 exit \\n">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_25:
        DC32     `?<Constant "[outSRS] VLLS2 exit \\n">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_26:
        DC32     `?<Constant "[outSRS] VLLS3 exit \\n">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_27:
        DC32     `?<Constant "[outSRS]RCM_SRS0 is Z...">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_28:
        DC32     `?<Constant "[outSRS]RCM_SRS1 is Z...">`

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_29:
        DC32     0x4004a04c

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_30:
        DC32     0x400ff054

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_31:
        DC32     0x400ff048

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_32:
        DC32     0x4004a048

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_33:
        DC32     0x400ff044

        SECTION `.text`:CODE:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
??DataTable1_34:
        DC32     0x400ff04c

        SECTION `.iar_vfe_header`:DATA:REORDER:NOALLOC:NOROOT(2)
        SECTION_TYPE SHT_PROGBITS, 0
        DATA
        DC32 0

        SECTION __DLIB_PERTHREAD:DATA:REORDER:NOROOT(0)
        SECTION_TYPE SHT_PROGBITS, 0

        SECTION __DLIB_PERTHREAD_init:DATA:REORDER:NOROOT(0)
        SECTION_TYPE SHT_PROGBITS, 0

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "Stop Mode Acknowledge...">`:
        DATA
        DC8 "Stop Mode Acknowledge Error Reset\012"
        DC8 0

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "EzPort Reset\\n">`:
        DATA
        DC8 "EzPort Reset\012"
        DC8 0, 0

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "MDM-AP Reset\\n">`:
        DATA
        DC8 "MDM-AP Reset\012"
        DC8 0, 0

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "Software Reset\\n">`:
        DATA
        DC8 "Software Reset\012"

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "Core Lockup Event Reset\\n">`:
        DATA
        DC8 "Core Lockup Event Reset\012"
        DC8 0, 0, 0

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "JTAG Reset\\n">`:
        DATA
        DC8 "JTAG Reset\012"

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "Power-on Reset\\n">`:
        DATA
        DC8 "Power-on Reset\012"

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "External Pin Reset\\n">`:
        DATA
        DC8 "External Pin Reset\012"

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "Watchdog(COP) Reset\\n">`:
        DATA
        DC8 "Watchdog(COP) Reset\012"
        DC8 0, 0, 0

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "Loss of Clock Reset\\n">`:
        DATA
        DC8 "Loss of Clock Reset\012"
        DC8 0, 0, 0

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "Low-voltage Detect Re...">`:
        DATA
        DC8 "Low-voltage Detect Reset\012"
        DC8 0, 0

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "[outSRS]Wakeup bit se...">`:
        DATA
        DC8 "[outSRS]Wakeup bit set from low power mode exit\012"
        DC8 0, 0, 0

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "[outSRS]SMC_PMPROT   ...">`:
        DATA
        DC8 "[outSRS]SMC_PMPROT   = %#02X \015\012"

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "[outSRS]SMC_PMCTRL   ...">`:
        DATA
        DC8 "[outSRS]SMC_PMCTRL   = %#02X \015\012"

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "[outSRS]SMC_VLLSCTRL ...">`:
        DATA
        DC8 "[outSRS]SMC_VLLSCTRL   = %#02X \015\012"
        DC8 0, 0

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "[outSRS]SMC_PMSTAT   ...">`:
        DATA
        DC8 "[outSRS]SMC_PMSTAT   = %#02X \015\012"

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "[outSRS] LLS exit \\n">`:
        DATA
        DC8 "[outSRS] LLS exit \012"

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "[outSRS] VLLS0 exit \\n">`:
        DATA
        DC8 "[outSRS] VLLS0 exit \012"
        DC8 0, 0

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "[outSRS] VLLS1 exit \\n">`:
        DATA
        DC8 "[outSRS] VLLS1 exit \012"
        DC8 0, 0

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "[outSRS] VLLS2 exit \\n">`:
        DATA
        DC8 "[outSRS] VLLS2 exit \012"
        DC8 0, 0

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "[outSRS] VLLS3 exit \\n">`:
        DATA
        DC8 "[outSRS] VLLS3 exit \012"
        DC8 0, 0

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "[outSRS]RCM_SRS0 is Z...">`:
        DATA
        DC8 "[outSRS]RCM_SRS0 is ZERO   = %#02X \015\012"
        DC8 0, 0

        SECTION `.rodata`:CONST:REORDER:NOROOT(2)
`?<Constant "[outSRS]RCM_SRS1 is Z...">`:
        DATA
        DC8 "[outSRS]RCM_SRS1 is ZERO   = %#02X \015\012"
        DC8 0, 0

        END
// 
//   616 bytes in section .rodata
// 1 096 bytes in section .text
// 
// 1 096 bytes of CODE  memory
//   616 bytes of CONST memory
//
//Errors: none
//Warnings: none
