# eCosのビルド
{ECOS_REPOSITORY} new cat709
{ECOS_REPOSITORY} tree
$ make# アプリのビルド
$ sh-elf-gcc -m3 -ml -g -Iinstall/include -Linstall/lib -Ttarget.ld -nostdlib hello.c
http://sources.redhat.com/ecos/
http://ecos.sourceware.org/docs-2.0/user-guide/ecos-user-guide.html
install/lib/target.ld
ENTRY(__reset)
_reset@hal/sh/arch/v2_0/include/hal_var_bank.inc
_reset_platform@hal/sh/arch/v2_0/src/vector.S
hal_post_reset_init@hal/sh/sh3/v2_0/include/variant.inc
complete_setup@hal/sh/arch/v2_0/src/vector.S
hal_mon_init@hal/sh/cat709/v2_0/include/platform.inc
hal_platform_init@hal/sh/cat709/v2_0/src/plf_misc.c
cyg_hal_invoke_constructors@hal/sh/arch/v2_0/src/hal_misc.c
cyg_start@
(gdb) set remotebaud 38400 (gdb) target remote /dev/ttyS0 (gdb) load (gdb) cgdbで実行
hal_default_isr: func = 80016480, vector = 37, data = 0 vector = 37, gdb_vector = 37 HAL_CTRLC_ISR: result = 1redbootから実行
hal_default_isr: func = 8c025160, vector = 37, data = 0 vector = 37, gdb_vector = 37 HAL_CTRLC_ISR: result = 1割り込み処理の流れ
hal_default_isr@hal/common/v2_0/src/hal_misc.c
HAL_CTRLC_ISR( vector, data ) -> result (CYG_ISR_HANDLED==1)
cyg_ctrlc_isr@hal/common/v2_0/src/hal_if.c
cyg_hal_user_break@hal/common/v2_0/src/hal_misc.c
return result