(toppers-users 1074) Re: tinet h8 3068f_lan AKI_MONITOR

Katsuhiro Amano amano toyotamacs.co.jp
2003ǯ 8 21 () 08:11:03 JST


ȥ西ޥåŷǤ

饤֥ӥ󥽥եȥⶶ󤳤ˤϡ

| ĤޤƤǡͭΥåȤ˰¸Ƥǿޤ
tinet akih8_3068f_lanǤΡAKI_MONITOR
| ɤΤ褦ʤΤ򤪻Ȥˤʤ줿ʤǤ礦

ʬRedBootȤäƤޤTFTPȤäƥɤǤޤ
Tera TermΥޥѤƼ¹ԤޤǥåʤΤǵäƤޤ
ꥢɻ֤ᤤnservΥץǣüǤ
http://sourceforge.jp/projects/ecos-h8/
ǤGDBΥǥХåǤƤޤĴǤܤͶƤ
ѤϲѹäƤ

| 
| ˥ϡ3048fѤ3067ѤΤ䤷Ƥ뤬3069f_lanѤ
| ʤäȻפޤ

ʤǤ͡
GoogleǸΩΥ˥¤Ƥͤ¿ߤǤ͡
󥸤ƤʤΤǤ褯ʬޤ󤬡

ΩΥ˥GDBǥХåϤɤʤǤ礦
Ȥפᤤꥢ룲ɬסΤϴñ
ۤԤƤޤ

H8STUBϤɤʤǤ礦ꥢ룲ɬפʤǤ͡
ǤѤSTUBѡͥդΤɤ̵ͥȤ

äѤΩ˥͵ʤǤ礦

--------------------------------------------------
ɤƼ¹Ԥޤǰȯ
˥ȤRedBootѤޤ
RedBootб
http://sourceforge.jp/projects/ecos-h8/
꡼Ǥ"h8write -3069 -f20 redboot.mot" ǾƤ

ġɤƥ󥹥ȡ(Win桼)
TFTPСforWin32
http://www.vector.co.jp/soft/win95/net/se174412.html
Tera Term Pro
http://www.sakurachan.org/soft/teraterm-j/

TFTPСΥեjsp.S˻
Tera Term Pro򥤥󥹥ȡ뤷˥ޥեʲˤ
ttpmacro.exe ؤΥ硼ȥåȤ
Υץѥƥ-akiboot.ttlɲ
"C:\Program Files\TTERMPRO\ttpmacro.exe" akiboot.ttl

akiboot.ttlΥץ
; Sample macro for Tera Term
;Ķեɤ
;connect '/F=redboot.ini'
;ǥեǥɤ
connect ''
;ԥɤäƥץץȤǤΤԤ
sendln
UsernamePrompt = 'RedBoot>'
;IPɥ쥹ϴĶˤäѹƤ-l akiܡɤIP -h TFTPС
IP
ipset = 'ip_address -l 192.168.0.12 -h 192.168.0.10'
load = 'load -b 0x400000 jsp.S'
go = 'go 0x400000'
; ip
wait   UsernamePrompt
sendln ipset
; load
wait   UsernamePrompt
sendln load
; go
wait   UsernamePrompt
sendln go
; OK, boot complete.

REDBOOTб뤿˲ɲäޤ

Makefileѹ
#
#  Ķ˰¸륳ѥ륪ץ
#
ifeq ($(GDB_STUB),true)
    ENV_CDEFS = -DGDB_STUB
else
ifeq ($(PARTNER_J),true)
    ENV_CDEFS = -DPARTNER_J
else
ifeq ($(REDBOOT),true)
    ENV_CDEFS = -DREDBOOT
endif
endif
endif

Makefile.configѹ
#
#  ¹ԴĶ
#
#AKI_MONITOR = true
REDBOOT = true

#
#  󥫥ץȤ
#

ifeq ($(AKI_MONITOR),true)
    LDSCRIPT = $(CPU)/$(SYS)/debug.ld
else
ifeq ($(REDBOOT),true)
    LDSCRIPT = $(CPU)/$(SYS)/debug.ld
else
    LDSCRIPT = $(CPU)/$(SYS)/release.ld
endif
endif

cpu_config.c ɲ
/*
 *  ٥ơ֥νfor RedBoot
 */
#ifdef REDBOOT
#define VECTOR_TABLE_ADDR  0x00fffd20
#define JMP_OPECODE   0x5a000000
extern void vectors(void);

void vector_table_copy(void)
{
 unsigned int n = 0x100/sizeof(unsigned int);  /* ٥ơ֥륵 */
 unsigned int *o = (unsigned int *)VECTOR_TABLE_ADDR; /* ٥ơ֥륳
ԡ */
 unsigned int *i = (unsigned int *)vectors;  /* ٥ơ֥륳ԡ */

    while (n -- > 0)
        *o ++ = JMP_OPECODE | (*i ++);  /* jmp̿ղ */

}
#endif /* of #ifdef REDBOOT */