更新履歴 [2005/08/18]初公開 はじめに このメモは、筆者が卒業研究においてGBA上で動作するOSを作成する過程に残したメモを連ねたものである。「Linuxから目覚めるぼくらのゲームボーイ!」を読んで得られる知識については触れられていないのであしからず。 GBA特有のメモだけでなく、アセンブラやリンカなどの話題にも及ぶ。 BIOS関連 プログラム開始アドレス MultiBootモードからの起動の場合、0x02000000番地から始まるわけだが、通常のROMカードリッジからの起動の場合、開始アドレスは0x08000000番地で、まずカートリッジ情報*1が並び、その後ゲーム命令が始まるようになっている。 例外(割り込み)時の動作 GBAにおけるハードウェア割り込みはIRQ例外として扱われる。IRQ例外が発生するとARMはIRQ例外モードに移行し、PCとステータスレジスタの値をバンクレ