090121

|


H8/Tiny、H8/3664についてちょっとテストしてみた。これはRAM2KB、ROM32KBで
制限がきつい。試しにシリアル受信/送信の2スレッドと、シェル1スレッドのモデル
をコンパイルしてみたところ、

/usr/local/bin/h8300-elf-ld: region intram is full (ud01_monitor.rom.elf section .bss)
/usr/local/bin/h8300-elf-ld: region intram is full (ud01_monitor.rom.elf section .bss)
入らない...。 でかいシンボルを探してみると、
h8300-elf-nm -S --size-sort  ud01_monitor.elf
...
000fe22c 000003c0 d _impure_data
...
見覚えのないシンボルに960byteもとられている。これはどうも newlib-1.17.0/newlib/libc/reent/impure.cだ。ライブラリをリエントラント 可能にするためのなにか(reent.h)らしい。
2KBしかないRAMの半分をとられてしまうのはきついので、3664用にはnewlibもlibgcc も使わず、自前のライブラリにしました。
  3 .data         00000020  000fe200  000824f4  000025a8  2**2
                  CONTENTS, ALLOC, LOAD, DATA
  4 .bss          0000054c  000fe220  00082514  000025c8  2**2
                  ALLOC
これでなんとか2KBにおさまったけれど、既に1.4KB使ってしまっている。RAM 2KBで スレッドはやっぱり無理あるかな...。今迄の感蝕だとスレッドスタックは256KBが ぎりぎりの線。割り込みスタックを別にすれば256KBでなんとかなるかというところ。ブートの時のスタックを割り込みスタックにすればいいかな。
2009のレース日程をまとめました。岡山の日程が微妙にきつい。一戦は同じだ から無理だし、二戦は富士の二週間後、三戦は富士の一週間後、四戦は筑波の 一週間後。でるなら二戦か。でも6/21は思いっきり梅雨だろう...。
筑波富士の二連荘も一回あるね。これもどっちもどうしても捨てがたい。締切 り前に考えましょう。
筑波選手権 MCFAJ 岡山選手権 BS(筑波)
3/14,15 (2/2-2/12)
3/15 (2/9-2/17)
3/24
4/19(筑波) (-3/19)
5/14
6/6 (4/27-5/7)
6/7(富士) (-5/8)
6/21 (5/18-5/25)
7/9
8/1 (6/22-7/2)
9/6(富士) (-8/2)
9/13 (8/10-8/17)
10/3,4 (8/24-9/3)
10/11 (9/7-9/14)
10/22
11/8(筑波) (-10/9)