正直日記



2008/03/02

_ 死んで覚える敵出現パターン
「パワーアップ中は敵との接触判定が無くなる」というフィーチャーを設けたら
絶対に「ここに着く前までにパワーアップしておかないと確実に半ダメ」みたい
なポイントを作りたくなると思うんだけど、そうしないのは、さすが親切設計と
いうか、勿体無いというか。
_ 4.3-20080228版 devkitARM を作りなおしてみる(2)
新たに ld 2.18.0 をコンパイルしてみたが、同じエラーが発生してリンクに失
敗するようだ。

ついでに cvs の devkitARM r22 (binutils 2.18.50 & gcc 4.2.3 & newlib 1.15.0)
もビルドしてみたがやはり同様だった。

いろいろ試してみたが、プロトタイプ宣言時に
__attribute__ ((section (".iwram"), long_call))
と指定して関数を IWRAM に配置すると、 bss 領域と data 領域が overlap する らしい。逆に言うと、セクションをまたがなければリンク出来るようだ。 これって組み込みの人には致命的なんじゃないの? 何か間違えてるのかな……。 あ、 -Wl,--no-check-sections で overlap チェックを無視して無理矢理リンク 出来るみたいだ。ろくなことにならなそうだけど……。 -- リンクが完了したあと
arm-eabi-objcopy -v -O binary hoge.elf hoge.gba
で ROM イメージを作るのだが、出来たイメージが巨大なファイルになってしまう。
hoge.gba 80.0 MB (83,936,992 bytes)
中を覗いても 0 で埋められているし、なんつーか、壊れてるなぁ……。 ROM イメージの生成はひとまず諦めるとして、エミュレータに elf ファイルを 食わせてみたら一応動いた。しかし点数やらなんやら表示系がおかしな値を示し ている。 BCD なのに何故 B とか表示されるんだろう? と思ったらハングアップした。駄目だコリャ、toolchain の新調は様子見だな。

最新
2010 | 01 04
2009 | 01 02 03 04 05 06 07 09 10 11 12
2008 | 01 02 03 04 05 06 07 08 09 10 11 12
2007 | 02 03 04 05 06 07 08 10 11 12
2006 | 01 02 03 04 05 06 07 08 09 10 11 12
2005 | 01 02 03 04 05 06 07 08 09 10 11 12