;/**************************************************************************//**
; * @file     startup_TC8234.s
; * @version  V2.00
; * $Revision: 9 $
; * $Date: 16/08/27 12:33p $ 
; * @brief   Startup Source File
; *
; * @note
; * Copyright (C) 2016 Nuvoton Technology Corp. All rights reserved.
; *
; ******************************************************************************/
		
		
;/*
;//-------- <<< Use Configuration Wizard in Context Menu >>> ------------------
;*/
; <h> Stack Configuration
;   <o> Stack Size (in Bytes) <0x0-0xFFFFFFFF:8>
; </h>

    IF :LNOT: :DEF: Stack_Size
Stack_Size      EQU     0x00000800
    ENDIF

                AREA    STACK, NOINIT, READWRITE, ALIGN=3
Stack_Mem       SPACE   Stack_Size
__initial_sp


; <h> Heap Configuration
;   <o>  Heap Size (in Bytes) <0x0-0xFFFFFFFF:8>
; </h>

    IF :LNOT: :DEF: Heap_Size
Heap_Size       EQU     0x00000000
    ENDIF

                AREA    HEAP, NOINIT, READWRITE, ALIGN=3
__heap_base
Heap_Mem        SPACE   Heap_Size
__heap_limit


                PRESERVE8
                THUMB


; Vector Table Mapped to Address 0 at Reset

                AREA    RESET, DATA, READONLY
                EXPORT  __Vectors
                EXPORT  __Vectors_End
                EXPORT  __Vectors_Size
				IMPORT  SendChar_ToUART

__Vectors       DCD     __initial_sp               ;     Top of Stack
                DCD     Reset_Handler              ;     Reset Handler
                DCD     NMI_Handler                ;     NMI Handler
                DCD     HardFault_Handler          ;     Hard Fault Handler
                DCD     0                          ;     Reserved
                DCD     0                          ;     Reserved
                DCD     0                          ;     Reserved
                DCD     0                          ;     Reserved
                DCD     0                          ;     Reserved
                DCD     0                          ;     Reserved
                DCD     0                          ;     Reserved
                DCD     SVC_Handler                ;     SVCall Handler
                DCD     0                          ;     Reserved
                DCD     0                          ;     Reserved
                DCD     PendSV_Handler             ;     PendSV Handler
                DCD     SysTick_Handler            ;     SysTick Handler

                ; External Interrupts
                                                   ; maximum of 32 External Interrupts are possible
                DCD     BOD_IRQHandler		       ; 0  
                DCD     IRC_IRQHandler             ; 1  
                DCD     PWRWU_IRQHandler           ; 2  
                DCD     SRAM_IRQHandler            ; 3  
                DCD     CLKFAIL_IRQHandler         ; 4  
                DCD     DEFAULT_IRQHandler         ; 5  
                DCD     RTC_IRQHandler             ; 6  
                DCD     TAMPER_IRQHandler          ; 7  
                DCD     WDT_IRQHandler             ; 8  
                DCD     WWDT_IRQHandler            ; 9  
                DCD     EINT0_IRQHandler           ; 10 
                DCD     EINT1_IRQHandler           ; 11 
                DCD     EINT2_IRQHandler           ; 12 
                DCD     EINT3_IRQHandler           ; 13 
                DCD     EINT4_IRQHandler           ; 14 
                DCD     EINT5_IRQHandler           ; 15 
                DCD     GPA_IRQHandler             ; 16 
                DCD     GPB_IRQHandler             ; 17 
                DCD     GPC_IRQHandler             ; 18 
                DCD     GPD_IRQHandler             ; 19 
                DCD     GPE_IRQHandler             ; 20 
                DCD     GPF_IRQHandler             ; 21 
                DCD     QSPI0_IRQHandler           ; 22 
                DCD     SPI0_IRQHandler            ; 23 
                DCD     BRAKE0_IRQHandler          ; 24 
                DCD     EPWM0_P0_IRQHandler        ; 25 
                DCD     EPWM0_P1_IRQHandler        ; 26 
                DCD     EPWM0_P2_IRQHandler        ; 27 
                DCD     BRAKE1_IRQHandler          ; 28 
                DCD     EPWM1_P0_IRQHandler        ; 29 
                DCD     EPWM1_P1_IRQHandler        ; 30 
                DCD     EPWM1_P2_IRQHandler        ; 31 
                DCD     TMR0_IRQHandler            ; 32 
                DCD     TMR1_IRQHandler            ; 33 
                DCD     TMR2_IRQHandler            ; 34 
                DCD     TMR3_IRQHandler            ; 35 
                DCD     UART0_IRQHandler           ; 36 
                DCD     UART1_IRQHandler           ; 37 
                DCD     I2C0_IRQHandler            ; 38 
                DCD     I2C1_IRQHandler            ; 39 
                DCD     PDMA0_IRQHandler           ; 40 
                DCD     DAC_IRQHandler             ; 41 
                DCD     EADC0_IRQHandler           ; 42 
                DCD     EADC1_IRQHandler           ; 43 
                DCD     ACMP01_IRQHandler          ; 44 
                DCD     DEFAULT_IRQHandler         ; 45 
                DCD     EADC2_IRQHandler           ; 46 
                DCD     EADC3_IRQHandler           ; 47 
                DCD     UART2_IRQHandler           ; 48 
                DCD     UART3_IRQHandler           ; 49 
                DCD     DEFAULT_IRQHandler         ; 50 
                DCD     SPI1_IRQHandler            ; 51 
                DCD     SPI2_IRQHandler            ; 52 
                DCD     USBD_IRQHandler            ; 53 
                DCD     USBH_IRQHandler            ; 54 
                DCD     USBOTG_IRQHandler          ; 55 
                DCD     CAN0_IRQHandler            ; 56 
                DCD     DEFAULT_IRQHandler         ; 57 
                DCD     SC0_IRQHandler             ; 58 
                DCD     SC1_IRQHandler             ; 59 
                DCD     SC2_IRQHandler             ; 60 
                DCD     DEFAULT_IRQHandler         ; 61 
                DCD     SPI3_IRQHandler            ; 62 
                DCD     DEFAULT_IRQHandler         ; 63 
                DCD     SDH0_IRQHandler            ; 64 
                DCD     DEFAULT_IRQHandler         ; 65 
                DCD     DEFAULT_IRQHandler         ; 66 
                DCD     DEFAULT_IRQHandler         ; 67 
                DCD     I2S0_IRQHandler            ; 68 
                DCD     DEFAULT_IRQHandler         ; 69 
                DCD     OPA0_IRQHandler            ; 70 
                DCD     CRPT_IRQHandler            ; 71 
                DCD     GPG_IRQHandler             ; 72 
                DCD     EINT6_IRQHandler           ; 73 
                DCD     UART4_IRQHandler           ; 74 
                DCD     UART5_IRQHandler           ; 75 
                DCD     USCI0_IRQHandler           ; 76 
                DCD     USCI1_IRQHandler           ; 77 
                DCD     BPWM0_IRQHandler           ; 78 
                DCD     BPWM1_IRQHandler           ; 79 
                DCD     DEFAULT_IRQHandler         ; 80 
                DCD     DEFAULT_IRQHandler         ; 81 
                DCD     I2C2_IRQHandler            ; 82 
                DCD     DEFAULT_IRQHandler         ; 83 
                DCD     QEI0_IRQHandler            ; 84 
                DCD     QEI1_IRQHandler            ; 85 
                DCD     ECAP0_IRQHandler           ; 86 
                DCD     ECAP1_IRQHandler           ; 87 
                DCD     GPH_IRQHandler             ; 88 
                DCD     EINT7_IRQHandler           ; 89 
                DCD     DEFAULT_IRQHandler         ; 90 
                DCD     DEFAULT_IRQHandler         ; 91 
                DCD     DEFAULT_IRQHandler         ; 92 
                DCD     DEFAULT_IRQHandler         ; 93 
                DCD     DEFAULT_IRQHandler         ; 94 
                DCD     DEFAULT_IRQHandler         ; 95 
                DCD     DEFAULT_IRQHandler         ; 96 
                DCD     DEFAULT_IRQHandler         ; 97 
                DCD     PDMA1_IRQHandler           ; 98 
                DCD     SCU_IRQHandler             ; 99 
                DCD     DEFAULT_IRQHandler         ; 100
                DCD     TRNG_IRQHandler            ; 101
					
					
                                                     
__Vectors_End

__Vectors_Size  EQU     __Vectors_End - __Vectors

                AREA    |.text|, CODE, READONLY


; Reset Handler

Reset_Handler   PROC
                EXPORT  Reset_Handler             [WEAK]
                IMPORT  SystemInit
                IMPORT  __main
					

                LDR     R0, =SystemInit
                BLX     R0
                LDR     R0, =__main
                BX      R0
                ENDP


; Dummy Exception Handlers (infinite loops which can be modified)

NMI_Handler     PROC
                EXPORT  NMI_Handler               [WEAK]
                B       .
                ENDP
HardFault_Handler\
                PROC
                IMPORT  ProcessHardFault
                EXPORT  HardFault_Handler         [WEAK]
                MOV     R0, LR                 
                MRS     R1, MSP                
                MRS     R2, PSP                
                LDR     R3, =ProcessHardFault 
                BLX     R3                     
                BX      R0                     
                ENDP
ProcessHardFaultx\
                PROC
                EXPORT  ProcessHardFaultx          [WEAK]
                B       .
                ENDP
SVC_Handler     PROC
                EXPORT  SVC_Handler               [WEAK]
                B       .
                ENDP
PendSV_Handler  PROC
                EXPORT  PendSV_Handler            [WEAK]
                B       .
                ENDP
SysTick_Handler PROC
                EXPORT  SysTick_Handler           [WEAK]
                B       .
                ENDP

Default_Handler PROC

                EXPORT  BOD_IRQHandler		      [WEAK] ; 0  
                EXPORT  IRC_IRQHandler            [WEAK] ; 1  
                EXPORT  PWRWU_IRQHandler          [WEAK] ; 2  
                EXPORT  SRAM_IRQHandler           [WEAK] ; 3  
                EXPORT  CLKFAIL_IRQHandler        [WEAK] ; 4  
               ;EXPORT  0                         [WEAK] ; 5  
                EXPORT  RTC_IRQHandler            [WEAK] ; 6  
                EXPORT  TAMPER_IRQHandler         [WEAK] ; 7  
                EXPORT  WDT_IRQHandler            [WEAK] ; 8  
                EXPORT  WWDT_IRQHandler           [WEAK] ; 9  
                EXPORT  EINT0_IRQHandler          [WEAK] ; 10 
                EXPORT  EINT1_IRQHandler          [WEAK] ; 11 
                EXPORT  EINT2_IRQHandler          [WEAK] ; 12 
                EXPORT  EINT3_IRQHandler          [WEAK] ; 13 
                EXPORT  EINT4_IRQHandler          [WEAK] ; 14 
                EXPORT  EINT5_IRQHandler          [WEAK] ; 15 
                EXPORT  GPA_IRQHandler            [WEAK] ; 16 
                EXPORT  GPB_IRQHandler            [WEAK] ; 17 
                EXPORT  GPC_IRQHandler            [WEAK] ; 18 
                EXPORT  GPD_IRQHandler            [WEAK] ; 19 
                EXPORT  GPE_IRQHandler            [WEAK] ; 20 
                EXPORT  GPF_IRQHandler            [WEAK] ; 21 
                EXPORT  QSPI0_IRQHandler          [WEAK] ; 22 
                EXPORT  SPI0_IRQHandler           [WEAK] ; 23 
                EXPORT  BRAKE0_IRQHandler         [WEAK] ; 24 
                EXPORT  EPWM0_P0_IRQHandler       [WEAK] ; 25 
                EXPORT  EPWM0_P1_IRQHandler       [WEAK] ; 26 
                EXPORT  EPWM0_P2_IRQHandler       [WEAK] ; 27 
                EXPORT  BRAKE1_IRQHandler         [WEAK] ; 28 
                EXPORT  EPWM1_P0_IRQHandler       [WEAK] ; 29 
                EXPORT  EPWM1_P1_IRQHandler       [WEAK] ; 30 
                EXPORT  EPWM1_P2_IRQHandler       [WEAK] ; 31 
                EXPORT  TMR0_IRQHandler           [WEAK] ; 32 
                EXPORT  TMR1_IRQHandler           [WEAK] ; 33 
                EXPORT  TMR2_IRQHandler           [WEAK] ; 34 
                EXPORT  TMR3_IRQHandler           [WEAK] ; 35 
                EXPORT  UART0_IRQHandler          [WEAK] ; 36 
                EXPORT  UART1_IRQHandler          [WEAK] ; 37 
                EXPORT  I2C0_IRQHandler           [WEAK] ; 38 
                EXPORT  I2C1_IRQHandler           [WEAK] ; 39 
                EXPORT  PDMA0_IRQHandler          [WEAK] ; 40 
                EXPORT  DAC_IRQHandler            [WEAK] ; 41 
                EXPORT  EADC0_IRQHandler          [WEAK] ; 42 
                EXPORT  EADC1_IRQHandler          [WEAK] ; 43 
                EXPORT  ACMP01_IRQHandler         [WEAK] ; 44 
               ;EXPORT  0                         [WEAK] ; 45 
                EXPORT  EADC2_IRQHandler          [WEAK] ; 46 
                EXPORT  EADC3_IRQHandler          [WEAK] ; 47 
                EXPORT  UART2_IRQHandler          [WEAK] ; 48 
                EXPORT  UART3_IRQHandler          [WEAK] ; 49 
               ;EXPORT  0                         [WEAK] ; 50 
                EXPORT  SPI1_IRQHandler           [WEAK] ; 51 
                EXPORT  SPI2_IRQHandler           [WEAK] ; 52 
                EXPORT  USBD_IRQHandler           [WEAK] ; 53 
                EXPORT  USBH_IRQHandler           [WEAK] ; 54 
                EXPORT  USBOTG_IRQHandler         [WEAK] ; 55 
                EXPORT  CAN0_IRQHandler           [WEAK] ; 56 
                EXPORT  CAN1_IRQHandler           [WEAK] ; 57 
                EXPORT  SC0_IRQHandler            [WEAK] ; 58 
                EXPORT  SC1_IRQHandler            [WEAK] ; 59 
                EXPORT  SC2_IRQHandler            [WEAK] ; 60 
                EXPORT  SC3_IRQHandler            [WEAK] ; 61 
                EXPORT  SPI3_IRQHandler           [WEAK] ; 62 
               ;EXPORT  0                         [WEAK] ; 63 
                EXPORT  SDH0_IRQHandler           [WEAK] ; 64 
               ;EXPORT  0                         [WEAK] ; 65 
               ;EXPORT  0                         [WEAK] ; 66 
               ;EXPORT  0                         [WEAK] ; 67 
                EXPORT  I2S0_IRQHandler           [WEAK] ; 68 
               ;EXPORT  0                         [WEAK] ; 69 
                EXPORT  OPA0_IRQHandler           [WEAK] ; 70 
                EXPORT  CRPT_IRQHandler           [WEAK] ; 71 
                EXPORT  GPG_IRQHandler            [WEAK] ; 72 
                EXPORT  EINT6_IRQHandler          [WEAK] ; 73 
                EXPORT  UART4_IRQHandler          [WEAK] ; 74 
                EXPORT  UART5_IRQHandler          [WEAK] ; 75 
                EXPORT  USCI0_IRQHandler          [WEAK] ; 76 
                EXPORT  USCI1_IRQHandler          [WEAK] ; 77 
                EXPORT  BPWM0_IRQHandler          [WEAK] ; 78 
                EXPORT  BPWM1_IRQHandler          [WEAK] ; 79 
               ;EXPORT  0                         [WEAK] ; 80 
               ;EXPORT  0                         [WEAK] ; 81 
                EXPORT  I2C2_IRQHandler           [WEAK] ; 82 
               ;EXPORT  0                         [WEAK] ; 83 
                EXPORT  QEI0_IRQHandler           [WEAK] ; 84 
                EXPORT  QEI1_IRQHandler           [WEAK] ; 85 
                EXPORT  ECAP0_IRQHandler          [WEAK] ; 86 
                EXPORT  ECAP1_IRQHandler          [WEAK] ; 87 
                EXPORT  GPH_IRQHandler            [WEAK] ; 88 
               EXPORT   EINT7_IRQHandler          [WEAK] ; 89 
                EXPORT  SDH1_IRQHandler           [WEAK] ; 90 
               ;EXPORT  0                         [WEAK] ; 91 
               ;EXPORT  USBH_IRQHandler           [WEAK] ; 92 
               ;EXPORT  0                         [WEAK] ; 93 
               ;EXPORT  0                         [WEAK] ; 94 
               ;EXPORT  0                         [WEAK] ; 95 
               ;EXPORT  0                         [WEAK] ; 96 
               ;EXPORT  0                         [WEAK] ; 97 
                EXPORT  PDMA1_IRQHandler          [WEAK] ; 98 
                EXPORT  SCU_IRQHandler            [WEAK] ; 99 
               ;EXPORT  0                         [WEAK] ; 100
                EXPORT  TRNG_IRQHandler           [WEAK] ; 101
				


                EXPORT	DEFAULT_IRQHandler		  [WEAK]                                                
                                                                
BOD_IRQHandler		       ; 0  
IRC_IRQHandler             ; 1  
PWRWU_IRQHandler           ; 2  
SRAM_IRQHandler            ; 3  
CLKFAIL_IRQHandler         ; 4  
;0                          ; 5  
RTC_IRQHandler             ; 6  
TAMPER_IRQHandler          ; 7  
WDT_IRQHandler             ; 8  
WWDT_IRQHandler            ; 9  
EINT0_IRQHandler           ; 10 
EINT1_IRQHandler           ; 11 
EINT2_IRQHandler           ; 12 
EINT3_IRQHandler           ; 13 
EINT4_IRQHandler           ; 14 
EINT5_IRQHandler           ; 15 
GPA_IRQHandler             ; 16 
GPB_IRQHandler             ; 17 
GPC_IRQHandler             ; 18 
GPD_IRQHandler             ; 19 
GPE_IRQHandler             ; 20 
GPF_IRQHandler             ; 21 
QSPI0_IRQHandler           ; 22 
SPI0_IRQHandler            ; 23 
BRAKE0_IRQHandler          ; 24 
EPWM0_P0_IRQHandler        ; 25 
EPWM0_P1_IRQHandler        ; 26 
EPWM0_P2_IRQHandler        ; 27 
BRAKE1_IRQHandler          ; 28 
EPWM1_P0_IRQHandler        ; 29 
EPWM1_P1_IRQHandler        ; 30 
EPWM1_P2_IRQHandler        ; 31 
TMR0_IRQHandler            ; 32 
TMR1_IRQHandler            ; 33 
TMR2_IRQHandler            ; 34 
TMR3_IRQHandler            ; 35 
UART0_IRQHandler           ; 36 
UART1_IRQHandler           ; 37 
I2C0_IRQHandler            ; 38 
I2C1_IRQHandler            ; 39 
PDMA0_IRQHandler           ; 40 
DAC_IRQHandler             ; 41 
EADC0_IRQHandler           ; 42 
EADC1_IRQHandler           ; 43 
ACMP01_IRQHandler          ; 44 
;0                          ; 45 
EADC2_IRQHandler           ; 46 
EADC3_IRQHandler           ; 47 
UART2_IRQHandler           ; 48 
UART3_IRQHandler           ; 49 
;0                          ; 50 
SPI1_IRQHandler            ; 51 
SPI2_IRQHandler            ; 52 
USBD_IRQHandler            ; 53 
USBH_IRQHandler            ; 54 
USBOTG_IRQHandler          ; 55 
CAN0_IRQHandler            ; 56 
CAN1_IRQHandler            ; 57 
SC0_IRQHandler             ; 58 
SC1_IRQHandler             ; 59 
SC2_IRQHandler             ; 60 
SC3_IRQHandler             ; 61 
SPI3_IRQHandler            ; 62 
;0                          ; 63 
SDH0_IRQHandler            ; 64 
;0                          ; 65 
;0                          ; 66 
;0                          ; 67 
I2S0_IRQHandler            ; 68 
;0                          ; 69 
OPA0_IRQHandler            ; 70 
CRPT_IRQHandler            ; 71 
GPG_IRQHandler             ; 72 
EINT6_IRQHandler           ; 73 
UART4_IRQHandler           ; 74 
UART5_IRQHandler           ; 75 
USCI0_IRQHandler           ; 76 
USCI1_IRQHandler           ; 77 
BPWM0_IRQHandler           ; 78 
BPWM1_IRQHandler           ; 79 
;0                          ; 80 
;0                          ; 81 
I2C2_IRQHandler            ; 82 
;0                          ; 83 
QEI0_IRQHandler            ; 84 
QEI1_IRQHandler            ; 85 
ECAP0_IRQHandler           ; 86 
ECAP1_IRQHandler           ; 87 
GPH_IRQHandler             ; 88 
EINT7_IRQHandler           ; 89 
SDH1_IRQHandler            ; 90 
;0                          ; 91 
;USBH_IRQHandler            ; 92 
;0                          ; 93 
;0                          ; 94 
;0                          ; 95 
;0                          ; 96 
;0                          ; 97 
PDMA1_IRQHandler           ; 98 
SCU_IRQHandler             ; 99 
;0                         ; 100
TRNG_IRQHandler            ; 101
DEFAULT_IRQHandler
                B       .
                ENDP

                ALIGN


; User Initial Stack & Heap

                IF      :DEF:__MICROLIB

                EXPORT  __initial_sp
                EXPORT  __heap_base
                EXPORT  __heap_limit

                ELSE

                IMPORT  __use_two_region_memory
                EXPORT  __user_initial_stackheap

__user_initial_stackheap PROC
                LDR     R0, = Heap_Mem
                LDR     R1, = (Stack_Mem + Stack_Size)
                LDR     R2, = (Heap_Mem +  Heap_Size)
                LDR     R3, = Stack_Mem
				BX      LR
                ENDP


                ALIGN

                ENDIF

;int32_t SH_DoCommand(int32_t n32In_R0, int32_t n32In_R1, int32_t *pn32Out_R0)
SH_DoCommand    PROC
    
                EXPORT      SH_DoCommand
                IMPORT      SH_Return
                    
                BKPT   0xAB                ; Wait ICE or HardFault
                LDR    R3, =SH_Return 
                MOV    R4, lr          
                BLX    R3                  ; Call SH_Return. The return value is in R0
                BX     R4                  ; Return value = R0
                
                ENDP

__PC            PROC
                EXPORT      __PC
                
                MOV     r0, lr
                BLX     lr
                ALIGN
                    
                ENDP
                    
                END
