aPPenDiX D iniTialiZaTiOn ROuTine
S1C17624/604/622/602/621 TeChniCal Manual
Seiko epson Corporation
aP-D-1
Appendix D Initialization Routine
The following lists typical vector tables and initialization routines:
boot.s
.org 0x8000
.section .rodata
...(1)
; ======================================================================
; Vector table
; ======================================================================
; interrupt vector interrupt
; number offset source
.long BOOT
; 0x00 0x00 reset
...(2)
.long unalign_handler
; 0x01 0x04 unalign
.long nmi_handler
; 0x02 0x08 NMI
.long int03_handler
; 0x03 0x0c -
.long p0_handler
; 0x04 0x10 P0 port
.long p1_handler
; 0x05 0x14 P1 port
.long swt_handler
; 0x06 0x18 SWT
.long ct_rtc_handler ; 0x07 0x1c CT/RTC
.long t8osc1_handler
; 0x08 0x20 T8OSC1
.long svd_handler
; 0x09 0x24 SVD
.long lcd_t16a2_0_handler ; 0x0a 0x28 LCD/T16A2 ch0
.long t16e_0_handler
; 0x0b 0x2c T16E ch0
.long t8f_0_1_handler ; 0x0c 0x30 T8F ch0/ch1
.long t16_0_handler
; 0x0d 0x34 T16 ch0
.long t16_1_handler
; 0x0e 0x38 T16 ch1
.long t16_2_handler
; 0x0f 0x3c T16 ch2
.long uart_0_handler
; 0x10 0x40 UART ch0
.long i2cs_uart_1_handler ; 0x11 0x44 I2CS/UART ch1
.long spi_0_handler ; 0x12 0x48 SPI ch0
.long i2cm_handler ; 0x13 0x4c I2CM
.long remc_handler
; 0x14 0x50 REMC
.long t16a2_1_handler ; 0x15 0x54 T16A2 ch1
.long adc10_handler
; 0x16 0x58 ADC10
.long rfc_handler
; 0x17 0x5c RFC
.long int18_handler
; 0x18 0x60 -
.long int19_handler
; 0x19 0x64 -
.long int1a_handler
; 0x1a 0x68 -
.long int1b_handler
; 0x1b 0x6c -
.long int1c_handler
; 0x1c 0x70 -
.long int1d_handler
; 0x1d 0x74 -
.long int1e_handler
; 0x1e 0x78 -
.long int1f_handler
; 0x1f 0x7c -
; ======================================================================
; Program code
; ======================================================================
.text
...(3)
.align 1
BOOT:
; ===== Initialize ===========================================
; ----- Stack pointer --------------------
Xld.a %sp, 0x0fc0
; S1C17622/602
...(4)
;Xld.a %sp, 0x1fc0
; S1C17624/604
; ----- Memory controller ----------------
Xld.a %r1, 0x5320 ; MISC register base address
; FLASHC
Xld.a %r0, 0x04 ; 1 cycle access
ld.b [%r1], %r0 ; [0x5320] <= 0x04
...(5)
; ===== Main routine =========================================
...