NDS開発: サンプルプログラムとかTIPSとか
先日作ったサンプルプログラムのソースコードを、Geocitiesにアップしました。
http://www.geocities.jp/yasuho68k/
しょーもないプログラムですが、テンプレートぐらいには使えるかと。:)
PassMeで実行するためにはbootの入れ替えが必要
そうそう。大事なことを言い忘れていました。
NDSDevEnvのsampleを適当にmakeしても、そのままでは実機では動きまへん。
ここに書いてあるのですが、PassMeを使って自作アプリを動かすには、bootを書き換える必要があります。
For the new PassMe method, replace main() in template/boot/main.cpp: int main(int argc, char ** argv) { LoadBin(GETRAW(arm9_bin), 0x02004000, GETRAWSIZE(arm9_bin)); LoadBin(GETRAW(arm7_bin), 0x02380000, GETRAWSIZE(arm7_bin)); *(volatile uint32 *)0x027FFE24 = 0x02004000; CallARM7(); while (1) ; return 0; }
最初これに気が付かず、ずいぶん悩んでしまった。
「技術情報はちゃんと読め」ってことですね。^^;
NDSの開発環境について
NDS Dev Env最新版は2.4.0なんだけど、インストールして使ってみたら、ds_arm7cart.specsが見つからないというエラーになってリンクできない。
必要なリンカースクリプトだけ持ってくればいいのかもしれないけど、なんか面倒なので、結局2.3.0に戻す。
エミュレータだけは2.4.0のを持ってきた。
GBAのようにinsightデバッガが使えるといいんだけど、現時点ではムリかなあ。
そもそもARM7側とARM9側を同時にデバッグできるようにするのは、けっこうしんどいのかもしれない。
せめてARM9側だけでもできるといいんだけど。
って、ここじゃなくて、開発元に言わないとね。^^;