« Nintendo DS ndslib アップデート | Main | devkitARM r12 付属の crt0 修正方法 »

ndslib 更新

Drunken Coders [News] で ZIP 版が公開されている。

けれど,CVS 版の方がより進んでいる模様。

ただし,CVS 版はそのままだとバグがあってコンパイルに失敗する。
lib\arm9\videoGl.c の void glMultMatrix3x3() の引数が
m4x3* になっているのを m3x3* に修正要。

あとは,今までのバグも残っているので直すべし。

examples フォルダにいくつか存在しているarm7 用 stub ソース main.cpp の
  SOUND_CR = SCHANNEL_ENABLE | SOUND_VOL(0x7F);

  SOUND_CR = SOUND_ENABLE | SOUND_VOL(0x7F);
に(さすがにサウンドを鳴らすサンプルでは直っている)。

include\NDS\arm9\video.h の
#define BG_32x64       (1 << 14)
#define BG_64x32       (2 << 14)

#define BG_64x32       (1 << 14)
#define BG_32x64       (2 << 14)
に修正。

今回,examples も修正され,いままで動かなかった ndslib\examples\arm9\2D\Sprite_Bitmap が動作するようになっている。
修正のポイントは,スプライト用の配列のとり方。
SpriteEntry sprites[128];
から
VAR_IN_EXRAM SpriteEntry sprites[128];
にして,EXRAM に確保するようにしている。
他には,void updateOAM(void) の 先頭に
DC_FlushAll();
を追加して,キャッシュのフラッシュをしている。

|

« Nintendo DS ndslib アップデート | Main | devkitARM r12 付属の crt0 修正方法 »

Comments

The comments to this entry are closed.