トップページgamedev
990コメント372KB

NintendoDS(NDS)非公式開発 Part2

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2007/04/06(金) 07:28:10ID:0HAbZjic
NDSで何やら作ってみようという人の為のスレ。ライセンス不要。
初心者歓迎。質問歓迎。英語苦手な人歓迎。冷やかし歓迎。ネカマ歓迎。

資料、リンク等
http://nocash.emubase.de/gbatek.htm
http://www.bottledlight.com/ds/index.php/Main/HomePage
http://www.helloworld.jp/~duke/nintendo_ds/

開発環境
http://www.devkitpro.org/
http://sourceforge.net/project/showfiles.php?group_id=114505

関連スレ
ゲームボーイアドバンス(GBA)開発@ゲ製板(避難所)
http://bbs.gamdev.org/test/read.cgi/gamedev/1055111303/
ゲームボーイアドバンス(GBA)非公式開発 Part2
http://pc5.2ch.net/test/read.cgi/gamedev/1099119005/

前スレ
http://pc11.2ch.net/test/read.cgi/gamedev/1113780562/
0618名前は開発中のものです。2008/01/11(金) 20:34:41ID:gV4ausxY
>>617

616です。
EWIN2の対応は諦めました。
カーソルキーで移動、Aボタンで選択というのは無理でしょうか?
R4でもそれなら、もう少し使い易くなると思います。


0619名前は開発中のものです。2008/01/11(金) 22:43:18ID:gV4ausxY
ありゃ、表現が変ですね。
カーソルキーで移動・選択、Aボタンで実行です。
よろしくお願いします。m(__)m
06206152008/01/14(月) 14:36:28ID:gI9YVpPo
>>617

ありがとうございます。
とりあえずBGを2枚重ねて処理する方法を試してみます。
06216152008/01/15(火) 21:21:10ID:lG1M2LiD
背景をBG2にして、その上に表示させたいものをBG3に設定したつもりなのですが、やり方が間違ってるようで
BG3に書き込んだキャラクタの座標や、透過設定した色が反映されませんでした。
drawBackgroundは256*192のすべてに緑で塗りつぶしており、drawCharacterは16*16のビットマップデータを書き込んでいます。
キャラクタデータの背景は15ビット目を0にしているので透過させているつもりなので、緑色が表示されてほしかったのですが、黒色が表示されている
状態です。

BG_BMP_BASE()とBG_BMP_RAMの対応が間違っているんでしょうか?

------------

videoSetMode( MODE_5_2D | DISPLAY_BG2_ACTIVE | DISPLAY_BG3_ACTIVE );
vramSetBankA( VRAM_A_MAIN_BG_0x06000000 );

BG2_CR = BG_BMP16_256x256 | BG_BMP_BASE(0) | BG_PRIORITY(0);

BG2_YDX = 0;
BG2_XDX = 1 << 8;
BG2_XDY = 0;
BG2_YDY = 1 << 8;
BG2_CX = 0;
BG2_CY = 0;

BG3_CR = BG_BMP16_256x256 | BG_BMP_BASE(64) | BG_PRIORITY(1);
BG3_YDX = 0;
BG3_XDX = 1 << 8;
BG3_XDY = 0;
BG3_YDY = 1 << 8;
BG3_CX = 0;
BG3_CY = 0;

drawBackground( (u16*)BG_BMP_RAM(0) );
drawCharacter( (u16*)BG_BMP_RAM(1) );
06226152008/01/15(火) 22:24:27ID:lG1M2LiD
memcpyで描画していた部分を修正して1ドットずつ描きこんだらうまくいきました。
ただ、BG_BMP_BASE(n)とBG_BMP_RAM(n)の意味でよくわからないところがあります。

定義では

#define BG_BMP_BASE(base) ((base) << 8)
#define BG_BMP_RAM(base) (((base)*0x4000) + 0x06000000)

となっているのですが、BG_BMP_BASEは0x06000000を基準に(base)<<8した位置を
BGxで使用する、という意味なのでしょうか?
そうなると、BG_BMP_BASE(n)のnと、BG_BMP_RAM(n)のnを同じにするのではなく、
上記の定義からアドレスを計算して、二つのアドレスが一致するように設定すれば
よいということでしょうか?

今は同じnを使用してうまくいっているのですが、アドレスをあわせようと、

BG_BMP_BASE(64) = 64<<8 = 0x4000, BG_BMP_RAM(1) = 1*0x4000+0x06000000

にしたのですが、こうすると逆に背景が少し下にずれて描画されてしまいました。
06236152008/01/15(火) 22:31:45ID:lG1M2LiD
スレ汚しすいません・・・
baseは0..31あって、1が0x0600 4000に対応して、
以降そのまま番号ごとに対応しているのですね。
NDS/Tutorialsをもっと読んできます・・
0624Moonlight2008/01/15(火) 23:29:54ID:r+7lzlIg
>>620

えーっと、よくわかりませんが16bit単位で書き込んだときにBG2/BG3両方に普通の画像を表示できましたか?
前景(人物とか)をBG2、背景をBG3に描いたとのことですが、コードを見ると優先順位の設定が逆のように見えました。
優先順位は0が最も前で、3が一番下です。よくあるADVに適当に割り当てると、BG_PRIORITY(3)に背景、BG_PRIORITY(2)に人物レイヤー、BG_PRIORITY(1)にテキストフレーム、BG_PRIORITY(0)にテキスト、という感じとか。ニュアンスが伝わればいいのですが。
ちなみに、同じBG_PRIORITY(n)のときは、BGよりもOBJ(スプライト)が前に来ます。
BG二枚両方に同じBG_PRIORITY(n)を設定したときの挙動は分かりません。BG0が前に来そうな気がします。
BASEとRAMの設定値の関係は、お察しの通りで合ってます。BG設定レジスタのBIT8〜BIT12がアドレス指定フラグです。
256x192x16bitで96kbyte使うので、二枚使うときは背景がbase0(0〜5)で、人物がbase6(6〜11)、という風に割り当てる感じになると思います。
ちなみに二枚使うと192kbyteになるので、128kbyteバンクを二枚使うようにBank割り当てを変えたほうがって蛇足過ぎですね私。
ビデオ周りはほんとめんどくさくてわかりづらいのですが、めげずに頑張ってくださいませ。それでは。
0625Moonlight2008/01/15(火) 23:36:50ID:LHI5s0tv
>>624

ごめんなさい書き間違えました。
>前景(人物とか)をBG2、背景をBG3に
を修正、
>背景をBG2、前景(人物とか)をBG3に
ですね。
で、ソースだとBG2の優先度が0でBG3が1なので、BG2を1でBG3を0にすると重ねる順番が直るかも直らないかも私が数字を勘違いしてるかも。
一度動いたらもうBG/OBJ周りは手を加えたくない…(苦笑
0626Moonlight2008/01/15(火) 23:53:22ID:h1DkvG7e
私も質問したいです。
ARMアセンブラで、RNでエイリアスしたレジスタを解除するにはどうしたらいいでしょうか。
気持ちとしてはこんな風に書きたいです。

REG_tmp RN r1
ldr REG_tmp,[sp]
add REG_tmp,#1
str REG_tmp,[sp]
REG_tmp UNRN (とかundefRNとか…)

別にエイリアスしたままでも(プログラム的には)問題ないのですが、他のことに使ってるときに間違って使ってしまいそうなので解除したいです。
r15に再割り当てできれば、間違えて使う=即異常動作なのでわかりやすいのですが、もう宣言されてるよばかーと言われてしまいました。
0627名前は開発中のものです。2008/01/16(水) 07:04:48ID:zWJR+3di
>>622
memcpyは1バイトずつコピーするから奇数バイトのコピーでこけるんじゃないかな
自作の4バイトメモコピー関数作ればどう
int* p1 = (int*)src;
int* p2 = (int*)dst;
len>>=2;
for (i = 0; i < len; i++)
{
*p2++ = *p1++;
}
0628名前は開発中のものです。2008/01/16(水) 11:06:38ID:zxUoql5e
>>626
確かに必要ないところでは使えなくしたいところですね

で、マニュアルのRNの項目を見てみたんですが、
「違う名前で同じレジスタを重複して使わないように注意してね」って書いてあるだけですね
これといって、RNの逆をしてくれる疑似命令はなさそうです

使いたくなければ、別ファイルに分けろってことでしょうかねぇ
06296152008/01/16(水) 16:18:34ID:Rxj1FtFA
>>624, 627

ありがとうございます。ビデオまわりの部分は検索しても情報が少なく
これまで馴染みがなかった概念があり手探り状態です。
ちょっとした情報でも大変参考になります。
06306152008/01/17(木) 01:37:04ID:Z+jfE4TA
実はセックスフレンドのコンバーターを作ってるのですが
なかなか上手く行かないものですね。
0631名前は開発中のものです。2008/01/17(木) 19:42:19ID:CSwrgLBR
>>630
2点
0632Moonlight2008/01/17(木) 21:47:28ID:daPJ8MZf
>>628

わざわざ調べてくださってありがとうございます。
注意してね、って書いてあって(危険性を認識していて)なおかつ対処法が書いてないということは、本当に無いんでしょうね。
同じレジスタを交差しながら使いまわして最適化しているので、簡単にはブロックごとに別ファイルにできなさそうです。
MACROだけだと不十分なので、プリプロセッサで#includeと#defineを使って、とも思ったのですが、コンパイル中に別のexe起動させるのもなんか面倒くさそうでやめました。
むー。全体的にほとんど十分なのですが、痒いところに手が届かない感じ…(苦笑
0633名前は開発中のものです。2008/01/18(金) 21:10:46ID:uKjx+lCO
>>632
チェックプログラムを作って、それに通してチェックさせるしかないんじゃないでしょうかね。

DOSアプリでチェックプログラムを作ってみました。
UNRN xxxと書いた所から先に、xxxが見つかったら行番号と名前を表示します。
(UNRNは実際にはない命令なので、先頭に;を付けてコメントとしてください)
テストソースtest.sを同梱したので、通してみたら分かると思います。
まあ、面倒ですがw
ttp://ud.gs/40dtl

ちなみに、#defineはEQUのことでしょうか。レジスタにEQUは使えないんですよね。
REG_tmp EQU r1
とすると、見事にエラーになりました。
0634名前は開発中のものです。2008/01/19(土) 15:00:00ID:lwFGyVi0
画像をテクスチャにするdevkitproの3Dのサンプルにあるような
pcxファイルはどのようにして変換すればいいですか?
0635名前は開発中のものです。2008/01/19(土) 15:14:31ID:9w9pPM+Z
変換出来ませんか?
0636名前は開発中のものです。2008/01/19(土) 15:34:28ID:lwFGyVi0
drunkenlogo.pcxをdrunkenlogo.pcx.oとdrunkenlogo_pcx.hに変換しているようで
そこで何を使っているのかがわかりません。
0637名前は開発中のものです。2008/01/19(土) 16:13:09ID:PbX5b0Di
makefileを見たところbin2oをそのまま使ってますね
0638名前は開発中のものです。2008/01/19(土) 18:21:37ID:Edl9lJvc
かみ合わなさすぎ笑った

けど俺は635と637を支持する
0639名前は開発中のものです。2008/01/20(日) 05:31:33ID:Tm5/geYl
いやかみ合ってるでしょ?
ちゃんと636の意図を汲んで回答したつもりですよ
0640名前は開発中のものです。2008/01/21(月) 06:25:28ID:V51tZRX6
>>639
氏ねよ低脳^^
0641名前は開発中のものです。2008/01/21(月) 06:45:03ID:RQWaaLj1
Cloros!を使ってみて思ったんだけど、液晶タブレット化ソフトって作れないかな
液タブって一番安いのでも10万近くするし、実現できたら入門用としていいなと
0642名前は開発中のものです。2008/01/21(月) 16:11:40ID:jSedK63m
GBAをPCにUSBで繋いでジョイスティックにするドライバが
あったけど、PC側のドライバを作れれば、できそうな気はするが。
0643名前は開発中のものです。2008/01/21(月) 19:46:01ID:DnoBdQO+
解像度がなぁ・・・
0644名前は開発中のものです。2008/01/21(月) 21:01:50ID:O1DPMOZH
>>641
液タブじゃなくてタッチパネル液晶なら3万ぐらいからあるよ
違いはペン交換負荷、筆圧感知なし

もうちょい安くするなら、安いPDAって選択肢もあり?
QVGAならDSと同じぐらいの値段だし
0645名前は開発中のものです。2008/01/21(月) 21:36:18ID:4X6pNulX
NDScripterってどこかにうpしてないですか?
再うpお願いしたいです。
0646名前は開発中のものです。2008/01/21(月) 21:37:58ID:o5qLQIe2
>>645
探し方がほんの少し足りないんじゃないかな?
0647名前は開発中のものです。2008/01/21(月) 23:19:03ID:ZIx41Zvj
探し方が足りないと言うより、脳みそが足りないと言った方が(ry
0648名前は開発中のものです。2008/01/22(火) 00:11:48ID:UXR2naSd
ちょっと質問なんですが、BG1は16色パレット、BG2は256色パレット、BG3は16色パレット・・・
って感じに使う事は可能なんでしょうか?
0649名前は開発中のものです。2008/01/22(火) 01:09:41ID:UKSk6OUY
コンパイルしたプログラムをmicroSDに書き込んでマジコンに入れて
実機で動かすまでの差し替えが面倒になってきたので、1:1タイプの
N-Cardを買いました。
で、プログラムを書き込んでみたのですが、音が出ません。
手持ちのソフトのイメージではきちんと音が出るのですが。
自作プログラムとROMイメージは同じ物ではないのでしょうか?
0650名前は開発中のものです。2008/01/22(火) 01:58:57ID:PNF0vUM/
俺エスパーじゃないからスルーするー
0651名前は開発中のものです。2008/01/22(火) 02:28:24ID:UKSk6OUY
>>650
やっぱスルーされますかorz
とりあえず自作プログラムがマジコンごとに動きが違うことって
いうのが起きうるのか。
また、違いがあるのであれば、おかしい方は一律おかしい結果で
あれば納得できるのですがROMイメージはおかしくないので、
情報をお持ちのエスパーがいれば、と思ったのですが・・・。

他にもサンプルを動かしてみました。
examples/nds/Graphics/3D/Misc/Picking ... タッチパネルでPickできない
examples/nds/sound/SimpleSound ... 音(ry フリーズしてる模様
0652名前は開発中のものです。2008/01/22(火) 02:47:26ID:QDQndHhu
>>649
他のマジコンでは音は出るの?
あと、エミュで動かしたらどうなる?

エスパーな俺に言わせれば、単なるバグだと思うけど。
0653名前は開発中のものです。2008/01/22(火) 04:46:34ID:FTu8bsB4
たとえば仕様だと0で初期化されるような部分があったとして
そのマジコンがROM起動前に勝手に違う値で初期化してたら場合によっては他とは違う動作するよな
違うってことはあるんじゃないか?・・・というかあるだろ
他のマジコンあるなら試してみるのがいいだろな
動いた場合どっちのマジコンがおかしいのか調べるの大変そうだけど
06546512008/01/22(火) 08:52:26ID:UKSk6OUY
>>652
今までEZ5使ってました。期待通りの動きをします。
エミュは、desmumeを使ってます。
音は出ない代わりにフリーズしません。

IPCを経由してARM7側で代入した値をARM9側で
表示するプログラムをおこしてみました。
ARM7側で指定した値になってない。
ARM7側が止まる/動いてないみたいな状態になってると憶測。
これが原因であれば、音も出ないしタッチパネルの座標も取れない。
こんなことってあるの?
0655名前は開発中のものです。2008/01/22(火) 12:07:32ID:t/rMcNXw
ロクな知識もなしに口出しして悪いけど、DLDIの問題だったとかってオチじゃないよね?
0656名前は開発中のものです。2008/01/22(火) 12:33:25ID:QDQndHhu
>>654
>こんなことってあるの?
もちろんある。
開発の経験少ないとわからないかもしれんが、単なるバグだろうな。
>>653 の言うように初期化漏れである可能性もかなりある。

不具合が再現する環境で調査するのがいいよ。
あと、バグと認識した上で調査すること。
0657名前は開発中のものです。2008/01/22(火) 13:41:15ID:gUHlGxAr
対数(log)をとるのってどうすればいいかわかる?

devkitProにそういった関数がない以上、
自前でマクローリン展開をするか
対数テーブルでも作るしかないとは思うけど
だれか実践している人はいますか?
0658名前は開発中のものです。2008/01/22(火) 14:02:36ID:Ji00TJph
つ#include <math.h>

はダメ?
0659名前は開発中のものです。2008/01/22(火) 14:46:32ID:QDQndHhu
>>657
devkitPro/devkitARM/arm-eabi/include/math.h
0660名前は開発中のものです。2008/01/22(火) 14:57:28ID:gUHlGxAr
>>659
なんと…
これを使うためにはどうすればいいの?
0661名前は開発中のものです。2008/01/22(火) 15:04:49ID:PxbgiTbg
>>660
>>658
0662名前は開発中のものです。2008/01/22(火) 15:07:46ID:gUHlGxAr
>>661
それだとlibndsのmathがインクルードされる。
インクルード自体は
#include "devkitPro/devkitARM/arm-eabi/include/math.h"
でいいんだけど、問題はリンクをどうすればいいのかということ。
0663名前は開発中のものです。2008/01/22(火) 15:15:42ID:PxbgiTbg
>>662
> それだとlibndsのmathがインクルードされる。
パス通せばいいだけなのに。
> でいいんだけど、問題はリンクをどうすればいいのかということ。
同じ場所に lib があるだろ。
0664名前は開発中のものです。2008/01/22(火) 15:33:50ID:yQKos8cm
>>663
よくわからんのだが、一部の関数は標準ライブラリの関数名とlibndsとで完全に被るんじゃない?
printfとか
0665名前は開発中のものです。2008/01/22(火) 16:06:08ID:gUHlGxAr
>>663
やってみたけどリンクされなくて困った。
多分makefileが悪いんだろうから夜に調べてから報告する
0666名前は開発中のものです。2008/01/22(火) 17:38:48ID:+KuWPN/o
>>662
mathのライブラリはlibm.a
LIBSに
-lm
を追加すればいいと思うよ。
0667名前は開発中のものです。2008/01/22(火) 18:17:13ID:gUHlGxAr
>>666
ありがとう。lcやら色々ためして、lmでやっと上手く行きました。
結構速いし意外と容量食わないし、mathいいね
06686362008/01/22(火) 18:37:09ID:shPt/KFF
遅くなりましたが回答有難うございます。
oファイルを使っての描画はできたのですが、一々Makefileに書き足すのが面倒なので、
bmp2sprのようにデータをそのままcに書きだすツールはありませんか?
0669名前は開発中のものです。2008/01/22(火) 19:24:11ID:Ji00TJph
>>668
Makefileにサフィックスルール書けばいいんじゃないの?
0670名前は開発中のものです。2008/01/22(火) 21:40:43ID:shPt/KFF
自己解決しました。
24ビットbmpをAGBGFXConverterで65536colorで出力したものを
loadPCX、image8to16を使わずにglTexImage2Dの最後の引数に渡せばいいようですね。
06716512008/01/24(木) 02:33:52ID:BV5c63Qx
ちょこちょこ調べてます。
問題のマジコンはクライアントアプリがたくさんあって
どれが正しいのかわかりません。
で、かき集めたクライアントに、「このファイルはクリーンロムじゃないよ」的な
エラーメッセージが表示されました。

この違いか? と思ったのですが、特に解説しているところが無いのでよくわかりません。
クリーンロムと自作アプリの違いは具体的にどんな物があるのでしょうか?
また、自作アプリはクリーンロムファイルに変換など出来るのでしょうか。
0672名前は開発中のものです。2008/01/24(木) 16:43:06ID:2CVHVwGW
moonshellのUnicode対応版libfatを使って、
日本語のファイル名を取得し、拡張子を変更して新たにファイルを作成したい場合、
どうしたらいいでしょう?

なんか、そのまま使ったら、へんてこなファイル名になっちゃいました…。
06736722008/01/24(木) 17:42:03ID:2CVHVwGW
具体的には、FAT_GetLongFilenameUnicodeで取得したファイル名はfopen出来ないので、FAT_GetLongFilenameを使って取得したファイル名です。
FAT_FindFirstFile、FAT_FindNextFileで取得したファイル名は、8.3文字ながら問題なかったんですが、Longnameでファイルを作成したいんです。
0674名前は開発中のものです。2008/01/24(木) 20:16:40ID:UKSHK03N
前スレ
http://mdxonline.dyndns.org/backupthread_2chgamedev1113780562.html

でアップされていたNDScripterのムービー

ttp://sakuratan.ddo.jp/uploader/source/date22211.avi や
ttp://sakuratan.ddo.jp/uploader/source/date22360.avi

保存している人いませんか?
どんなものかみてみたいのですが・・・
0675名前は開発中のものです。2008/01/24(木) 20:44:32ID:IAUAIbHD
date22897.aviのはにはに勝手にうpしました、ダメなら消します。
ttp://sakuratan.ddo.jp/uploader/source/date67757.avi
0676名前は開発中のものです。2008/01/24(木) 22:24:01ID:UKSHK03N
>>675
完成度たかい・・・
画像の切り替えやエフェクトなんかもスムーズに動いていますね
うpして頂いてありがとうございます。


0677名前は開発中のものです。2008/01/25(金) 18:09:42ID:RtNuqPw4
libndsについてくるdswifiはアクセスポイントにアクセスする形式だけど、
ゲームなどで目の前の友人と通信対戦する場合はどうやって実現されているんだろう。
無線LANを利用しているとは思うんだけど、
dswifi9.hを見てもそれらしい記述はなかったので気になっています。
GBATEKは量が膨大すぎてわかりませんでした。

わかる人いますか?
0678名前は開発中のものです。2008/01/25(金) 18:56:51ID:SWXxV0Hq
適当にopenGLのモデリングソフトに読ませても形式が違うと言われたのですが、
devkitproのサンプルにあるteapotのようなディスプレイリストのファイルってどうやって作るんですか?
あとサンプルにあるようにソース内でディスプレイリストを宣言する場合、
法線ベクトルの設定はどうすればいいのでしょうか。
0679名前は開発中のものです。2008/01/25(金) 19:30:30ID:Z072p+T/
私もよく知りませんが、dswifi ad-hoc modeでググってみると
少しだけ情報があるような
0680名前は開発中のものです。2008/01/26(土) 00:21:05ID:78g3RWU1
gritで複数の画像からパレットを共有するにはどうすればいいの?
0681名前は開発中のものです。2008/01/26(土) 10:22:05ID:fXwljVE8
>>674
http://sakuratan.ddo.jp/uploader/source/date67929.zip
結局DIDLにも対応無いまま、かつ一部のエフェクトとか未対応のままなんだよね・・・。
ちと残念、
0682名前は開発中のものです。2008/01/27(日) 11:59:07ID:rKTLyX7Y
680だけど、みんな複数のファイルのパレット共有について悩んでない?
自分でgritのソースにパレット共有を付け加えようかと思うけど、
他にいい方法があるなら教えてください。

やりたいのは、タイルモードのバックグラウンドを処理する時に、
タイルのベースとなる画像を複数枚用意したいだけなんだ。
そして、gritで出力されるファイルに使われているパレットを
その複数枚で同じものにしてもらえれば、プログラムが楽になるよね。
0683名前は開発中のものです。2008/01/27(日) 12:36:55ID:ICIFIctN
画像の時点でパレットを共有させておく
gritを捨てて自分でコンバーターを作る
選びなさい
0684名前は開発中のものです。2008/01/29(火) 02:47:40ID:27IhKRFN
>>678
つ ndsFifo.py
つ glNormal3f
0685名前は開発中のものです。2008/01/30(水) 12:44:06ID:bzNJh7D5
R4からM3Realに変えて、マルチメディア系のファイル再生を色々試しているのですが、
R4ではフツーに使えていた、MoonShell Ver1.71+1のタッチパネルの操作感がどうもオカシイ。
で“M3 DS REAL みなサンきゅ〜”スレによると、Moonlight氏の非公式リリースによる、
Repair MoonShell for M3REALというパッチがあるとの事。

で、Moonlight氏のInfantile Paralysiserサイトを探してみましたが見当たりませんでした。

色々ググってみたんですが、このRepair MoonShell for M3REALって、Moonlight氏の今後の非公式リリースを
待つしかないみたいですね。

Moonlightさん!勝手なユーザの要望ですが、是非とも公開よろしくお願いします!
0686名前は開発中のものです。2008/01/30(水) 19:54:01ID:VF7RA7Ye
黙れカス
0687名前は開発中のものです。2008/01/30(水) 21:22:21ID:7dD0QU5G
>>686
何いってんだ?
0688名前は開発中のものです。2008/01/30(水) 23:48:35ID:4/IzFKxY
批判要望は本人のブログなりでやってくれ
ここはあくまで開発者がだべるスレだし
0689名前は開発中のものです。2008/01/31(木) 22:15:25ID:8LeH9iEV
>>1
0690名前は開発中のものです。2008/01/31(木) 23:48:16ID:E8WYUC6X
devkitpro使うの初めてなんだけど、
サンプルをコンパイルすると、
--------------
This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.
make[1]: *** [drunkenlogo.o] Error 3
--------------
と出てarm-eabi-gcc が落ちまする。OSはXPsp2

なにやら↓の問題ぽくいけど、同じように遭遇して解決した人いらっしゃる?
http://support.microsoft.com/kb/884538

修正の提供は次のspでと書いてあるので、
XPsp3RCを入れてみるしかないのかなぁ・・・
0691名前は開発中のものです。2008/02/01(金) 04:44:16ID:bGv/OaT8
DSでJava2MEが動きました。PIMを取りあえず作ってみました。jitとかhotspotとか
無い状態なので速度はちょっとアレですが。日本語変換とかでフリーで組み込めるのって
ないんですかねえ・・・
0692名前は開発中のものです。2008/02/01(金) 07:54:41ID:q2DpMEwF
>>691
オプソ方面はcannaとかソースありそうだけど現実的ではない気がする。
てことで、PoBOXとかどうだろう。
0693名前は開発中のものです。2008/02/01(金) 08:21:23ID:4LVSw2do
cannaは古いから逆にコンパイル面倒くさそう。
辞書限界まで削ったAnthyかPoBOX, PRIME辺りかねぇ。
でも通はSKKを選ぶ!
0694名前は開発中のものです。2008/02/01(金) 15:43:27ID:jvYr6YVa
>>691
kwsk
06956932008/02/01(金) 16:35:37ID:4LVSw2do
と思ったけどanthyはmmap使ってるんだった。
と言う訳で俺はskkかfreewnn辺りを勧める。
0696名前は開発中のものです。2008/02/01(金) 20:12:24ID:8kc10+d+
NDSでPoBOXにPAlibのgraffitiを移植できればなぁ
0697名前は開発中のものです。2008/02/01(金) 21:20:56ID:bGv/OaT8
>>694
j2meのソースを持ってきて、機種依存部分のコードを書いて
コンパイルしただけです。だから、まだlibndsなどの各種機能が
有効に利用されているわけではなく、本当に「動いた」だけです。
MIDletで動いているケータイのゲームなども移植なしで
動くはずですが検証してません。

漢字入力は変換をanthy、手書き文字入力をtomoe/libtomoeで
やってみたいと思ってます。失敗したらpalmみたいに
graffitiで入力して、単漢字変換しかできない低機能なものに
なって開発中止・・・とか。
0698名前は開発中のものです。2008/02/02(土) 22:27:58ID:uMIKzpkK
Wabaを実装しようとして挫折したからちょっと期待。
0699名前は開発中のものです。2008/02/03(日) 00:42:54ID:TksTfqrk
http://takuto.info/libnds/arm9j/main.html

こんなんみつけた
0700名前は開発中のものです。2008/02/03(日) 15:00:58ID:ev4da7xj
リンクだけ貼られてもね
07016902008/02/03(日) 17:41:55ID:QmdOwz/t
>690
一応解決したので書いときます。
環境変数TEMPのディレクトリにリードオンリー属性が付いてるとgccがアボートするみたいw
お騒がせしました。
0702名前は開発中のものです。2008/02/03(日) 18:25:23ID:pH7PFYa6
>>701
一つ言っておくけど、そういうのは落ちるっていわないんだぜ?
0703名前は開発中のものです。2008/02/03(日) 18:37:49ID:Vgi2651t
よくわからんがいいオチだな。
0704名前は開発中のものです。2008/02/05(火) 19:12:26ID:wIPJV1Hx
microSDなんかの外部メディアから、4MBを超えるような
mp3やテキストファイルを読み込んで処理するとき
ハードの制限でメモリが足りません。

ファイルを開きっぱなしで処理するか、ある程度のデータを
分割して読み込む方法のどちらかを考えているのですが、
ファイルを開きっぱなしで処理するのと、頻繁にファイルを
開いたり閉じたりするのを繰り返すのとどっちがいいんだろう?
0705名前は開発中のものです。2008/02/05(火) 19:55:01ID:IWEUZGgT
ファイル開きっぱなしで、ある程度のデータを分割して読み込んで処理ってのは?

ファイルオープン → シーク → リード → ファイルクローズってのが頻繁に入るようだと
多少は遅くなったりするんじゃないかと思ってみたり。

速度を優先するのか?安全を優先するのか?読み込みの頻度はどうなのか?

読み込み専用なら、開きっぱなしでもいいような気もする。
ただし、アボート処理がしっかりしてるならね。
0706名前は開発中のものです。2008/02/06(水) 00:42:42ID:0hU1GNVr
メモリって何メガまで取れるの?
というか領域はどこを取るの?
0707名前は開発中のものです。2008/02/06(水) 08:31:54ID:vbI6H9fW
>>706
> メモリって何メガまで取れるの?
どのメモリ?
RAM? フラッシュメモリ? ROM? シリアルフラッシュ?
0708名前は開発中のものです。2008/02/06(水) 12:02:06ID:pPYAeTyj
>>707
RAM。具体的に言うとmalloc/newで確保できるメモリ
0709名前は開発中のものです。2008/02/06(水) 13:01:47ID:vbI6H9fW
>>708
http://ndsd.chicappa.jp/wiki/index.php?%A5%E1%A5%E2%A5%EA%2F%A5%EC%A5%A4%A5%A2%A5%A6%A5%C8
おまいさんの使ってる malloc が何かわからんけど、
普通は 4M 以下。
0710名前は開発中のものです。2008/02/06(水) 13:06:27ID:pPYAeTyj
>>709
サンキュ。
プログラムコードもメインメモリに展開されるんだとすると、
Wi-Fiで相手に送れるメモリは4Mまでってところか。

microSDから読み書きするスピードとメインメモリのスピードを
実際にどの程度違うか計ってみようかな。
0711名前は開発中のものです。2008/02/06(水) 23:26:12ID:qevvicPq
GBFSはー?
0712名前は開発中のものです。2008/02/07(木) 03:08:31ID:uMRHvS9b
devkitProのlibnds/include/nds/system.hで、

void SetYtrigger(int Yvalue) {
 REG_DISPSTAT = (REG_DISPSTAT & 0x007F ) | (Yvalue << 8) | (( Yvalue & 0x100 ) >> 2) ;
}

ってあるけど、これ >> 2 じゃなくて >> 1の間違いだよね?
一応、devkitProに報告済。
0713名前は開発中のものです。2008/02/07(木) 03:09:16ID:IqGH1Qg5
ADVを作ってるんだけども
画像の重ね合わせと前にきた画像の透過の仕方がわからん
もうHPは致命的に向いてないのかな・・・
0714名前は開発中のものです。2008/02/07(木) 04:51:53ID:DsoGYH2j
3D面、BG面、ビットマップ面、スプライトのどれを使って画像表示するかによってやり方が異なるから
そんな漠然とした聞きかたじゃ答えられない

ビットマップ面を使うなら
真緑の画素を抜くようにして奥から順番に転送するだけでいいんじゃないの
0715名前は開発中のものです。2008/02/07(木) 11:39:46ID:nA7kfoA2
R4で開発を始めました。

早速ファイルにアクセスしようとしたんですが、
>>18みたいに書いてもfopenがnullになってしまいます。
ファイルを置く場所はROMフォルダでいいんですよね?
0716名前は開発中のものです。2008/02/07(木) 12:05:35ID:YmpIaASo
>>715
>18ならルートフォルダ

一度くらい試せよw
0717名前は開発中のものです。2008/02/07(木) 12:57:00ID:nA7kfoA2
>>716
あ、そうか。そうすれば良かったんだw
ずっとROMフォルダに入れたままでパスをいじってましたw
■ このスレッドは過去ログ倉庫に格納されています