NintendoDS(NDS)非公式開発 Part2at GAMEDEV
NintendoDS(NDS)非公式開発 Part2 - 暇つぶし2ch332:名前は開発中のものです。
07/10/28 12:29:30 jlr9JuG4
DSLuaの話が出来るスレはどこじゃろか

333:名前は開発中のものです。
07/10/28 15:27:00 La0iP22a
>>329
簡単にかいつまんで解説するが
スプライトはGBAと一緒だからそっちの解説を探してみたらいい。

SpriteEntry sprites[128]; /* スプライト格納領域 */
pSpriteRotation spriteRotations = (pSpriteRotation)sprites; /* 行列 */

/* スプライトを設定する */

sprites[0].attribute[0] |= ATTR0_ROTSCALE_DOUBLE; /* 伸縮フラグを立てる */
sprites[0].attribute[1] += rotate_index << 9; /* 使用する行列テーブルの番号を入れる */

spriteRotation[0].hdx = pa; /* 行列を入れる */
spriteRotation[0].hdy = pb;
spriteRotation[0].vdx = pc;
spriteRotation[0].vdy = pd;

334:名前は開発中のものです。
07/10/28 18:28:42 /CmTbYYN
>>332
ここ

335:名前は開発中のものです。
07/10/28 18:39:32 g8josTQr
>>333
ありがとうございます。
調べてみたところ、hdxとhdyに横倍率の逆数、vdxとvdyに縦倍率の逆数をかけることで伸縮できました。
ところでここに3Dの行列を入れれば3次元上で回転させたように見せることもできますか?

336:名前は開発中のものです。
07/10/29 01:02:33 VCIhU7hh
>>331
他所ってどこだよ><

337:名前は開発中のものです。
07/10/30 00:42:39 kZWn034a
>>336
・・・裏技改造板にスレあるよ、一応。

338:名前は開発中のものです。
07/10/30 02:11:19 T1izkCEN
DSLuaでMOD形式の音楽を鳴らしたいのですが、
MIDIやWAVをMODに変換できるツールをご存知でしょうか?

RAWへはXOSというのを見つけたのですが、
MODへの変換をしてくれるフリーソフトを知っていたら教えてくださいませ。

339:名前は開発中のものです。
07/10/30 02:42:27 gDjg1+2G
midiからはModPlugTracker
wavからは知らん

340:名前は開発中のものです。
07/10/30 03:14:32 m/tOj1fG
最新のdevkitProでビルドすると、NO$GBA 2.5で動かないなあ。不便だ。

341:名前は開発中のものです。
07/10/30 07:44:45 A1u37RCU
>>340
NO$GBAで動かないってことは実機でも動かないってことじゃないの
俺の経験じゃNO$が一番実機に近い挙動してる
VRAMの奇数バイトアクセス不可とかもエミュレートしてるし

342:名前は開発中のものです。
07/10/30 21:26:13 m/tOj1fG
>>341
実機では動いてるよ。エミュレータを過信してるんじゃないの?
もし疑うなら、何でもいいからリビルドして試してみな。

343:名前は開発中のものです。
07/10/31 11:58:48 +Mg4ID2V
>>342
もちろんエミュはあくまでも開発補助
自分の場合はエミュでは動くけど実機で動かない事ばっかりだったんでね


344:名前は開発中のものです。
07/10/31 15:12:57 WqvwxYU4
PAlibっていうライブラリを見つけたんですけど、
あの中のサンプルソースの画像って著作権フリーですか?

345:名前は開発中のものです。
07/11/06 23:19:57 cV8zgn4d
いまさらだけど、Vistaで動くdevkitARM R21が来てる!!
もう対応パッチ当ててビルドしなおさなくていい。

346:名前は開発中のものです。
07/11/07 18:42:33 n8jQxGon
R4のthemeを13種以上に増やす事できる?

347:名前は開発中のものです。
07/11/07 20:19:26 VOhgcTGI
>>341
> 俺の経験じゃNO$が一番実機に近い挙動してる
NO$ は DSLinux の Boot が怪しいんだよねぇ。

348:名前は開発中のものです。
07/11/08 20:19:39 Z0qHkP9O
PAlib070118がでてる。
まだ触ってないけど。

349:名前は開発中のものです。
07/11/08 21:12:38 /TZD8dLw
どう見ても1月18日版だろ

350:名前は開発中のものです。
07/11/09 23:54:20 QeKUwD52
>>349
的確なツッコミ吹いたw

351:名前は開発中のものです。
07/11/10 08:48:24 QEIzktai
Vistaで動くdevkitARM R21が出てるらしいんだけど・・・
XPに入れて、ソースリビルドするとFATの部分で落ちる・・・

352:名前は開発中のものです。
07/11/10 08:52:31 QEIzktai
もうダメぽ
NDSの開発でいきづまった
どなたかNDSの保存系のサンプル、またはヒントを下さい。
EEPRomサンプル群・・・動かん!

353:名前は開発中のものです。
07/11/10 09:25:06 QEIzktai
>>351
すまん、落ちるのGBFSの部分だった。

354:名前は開発中のものです。
07/11/10 10:49:24 iJG/Y12o
>>352
保存ってファイルシステムのことか
libfatでDLDI使ってるけど

355:名前は開発中のものです。
07/11/10 11:57:15 QEIzktai
>>354
FATじゃない
EEPRomです。
まぁマジコンのファイルで言えば
xxx.savだね


356:名前は開発中のものです。
07/11/10 16:48:33 vCXuSmRJ
何を言ってるのかよくわからんが、EEPROMサンプルは保存なんてしないぞ

357:名前は開発中のものです。
07/11/10 22:51:12 tYh2WndP
助けてくださいorz
スレリンク(news4vip板)

358:名前は開発中のものです。
07/11/11 19:33:41 JZE/mdIx
セックスフレンドDSのコンバーターまってます♥

359:名前は開発中のものです。
07/11/11 19:57:10 +C/a0u8i
>>356
最近exampleが新しくなってるけど、それに付いてる
EEPROMサンプル(card)は
一見、動いてるように見えるが正しく機能していないような気がする
しかも、読み込みだけのサンプルだし・・・
header部だけは動いたかな・・・
NO$も実機でもダメぽだったなぁ

360:名前は開発中のものです。
07/11/13 09:33:03 BExTGgd+
変数の内容を電源を切っても覚えておきたいのですが、
どのようにするのでしょうか?

初歩的な質問ですいません。
R4を使っています。



361:名前は開発中のものです。
07/11/13 09:51:23 lcgTvL4S
>>360
どれでも好きなのどうぞ。
EEPROM,FlashROM,電池で保持するSRAM,F-RAM

メインメモリでも運がよければ一日程度は消えませんよ。

362:名前は開発中のものです。
07/11/13 12:45:50 PP08FL2o
>>360
何がやりたいのか不明だが
microSDにファイルとしてセーブ


363:名前は開発中のものです。
07/11/13 19:34:36 lcgTvL4S
そういえば R4DS の製造元摘発されたらしいな。
開発用としてストックしておきたい奴はいまのうちだぞ。

364:名前は開発中のものです。
07/11/13 19:44:54 nq86+yHe
マジか

365:名前は開発中のものです。
07/11/13 19:47:20 lcgTvL4S
>>364
web であんまり流れてないけど、秋葉の店先にそういう張り紙があったんだよ。
値段釣り上げる工作かもしれないけど、一応注意は促しておく。

366:名前は開発中のものです。
07/11/13 20:54:04 nq86+yHe
>>365
本スレで張り紙の画像見てきた。
スレでは店側の工作ってことで話し流れたみたいだけど安いうちに予備を買っておこうかな

367:名前は開発中のものです。
07/11/13 21:54:53 lcgTvL4S
>>366
本スレ見てないけど、あっちにも出てたんだ。

368:名前は開発中のものです。
07/11/14 04:16:07 1yE+1amt
>>366
必要ないからやめとけ。
R4が買えなくなったら他のマジコン買えばいいだけだし。
どうしても予備が欲しいならR4以外にしたほうがいい。

369:名前は開発中のものです。
07/11/14 08:04:11 +iV4MB8y
R4以外のオススメは?

370:名前は開発中のものです。
07/11/14 09:26:41 l6mTicwS
環境はいくつかあったほうが動作確認の時便利かもね

371:名前は開発中のものです。
07/11/14 15:49:46 fcDqe3EY
>>363-366
URLリンク(www.inside-games.jp)
けっこう有名なニュースかと思ってたけどあまり知られてなかったのね

372:名前は開発中のものです。
07/11/14 17:29:41 p+47/3HU
つか、しばらく前にR4が税関で止められて高騰したのってそのせいだろ。
で他のルートやら在庫やらかき集めたら、逆に供給過剰になって(ry

373:名前は開発中のものです。
07/11/15 05:31:48 OW4hLH5A
小売が品薄感煽るために嘘流したのかも試練が

374:名前は開発中のものです。
07/11/16 16:38:59 h28GMeOe
>>372
税関云々はデマだったらしいよ


375:名前は開発中のものです。
07/11/18 01:05:41 a8sfrJAM
やっぱりVRAMへのアクセスって他のメモリに比べて遅いのかな?

376:名前は開発中のものです。
07/11/18 03:43:19 6SczAs0i
>>375
むしろメインメモリより速い。

377:名前は開発中のものです。
07/11/18 09:52:16 a8sfrJAM
>>376
ベンチマークは取ってないけど、
VRAMの書き込みは速いけど読み込みは遅い印象がある
(読み込むことなんてあまりないけどね)
今度暇を見てベンチマーク取ってみよう

378:名前は開発中のものです。
07/11/18 14:39:22 6Ai+gozw
結果報告よろぴこ

379:名前は開発中のものです。
07/11/18 16:18:59 a8sfrJAM
プロファイルのための精度の高いタイマーの使い方を教えてくれ

380:名前は開発中のものです。
07/11/18 21:00:29 a8sfrJAM
ある種の宣伝で悪いけれど、
DSでプログラム開発をする道中を記録するページを作りました。
昨日までblogで書いていたのを今日wikiに変更です。

URLリンク(void-main.org)

俺はGBAはおろか、今までいかなるゲーム機でも
プログラミングをしたことがないゲーム制作初心者だけれど、
低レベルの知識は少々ながらもあるし、
何より日本語でDS開発のための資料を用意するのは
ある程度意味があるんじゃないかと思うので、暫く頑張ってみます。

来年の6月までにチェスのアプリを作るのが目的です。
何かあれば是非助言をよろしくお願いします。
以上、宣伝すみませんでした。

381:名前は開発中のものです。
07/11/18 21:24:07 M/XRemLj
>>380
まあがんばれww

382:名前は開発中のものです。
07/11/18 22:15:20 QRaAoJl0
>>380
GJ 期待してる

383:名前は開発中のものです。
07/11/19 00:04:44 EnibBZ/I
DSのプログラミングのwikiは一応他にもある。
URLリンク(ndsd.chicappa.jp)
つっても10月で更新が止まってるが。でも日本語コンソールライブラリとか
ダウンローダとか便利なものがあったり。

384:名前は開発中のものです。
07/11/19 02:31:56 sOCTIabs
さっき寝てて突然ひらめいたからかいてみる。ただの通りすがりです。

二画面表示で片方はキーボード動作、片方はマウスで操作ってできないだろうか
PCでやれたらかなり面白そうなんだが

385:Moonlight
07/11/19 04:04:16 m1125lP2
>>379

長文失礼します。
単にある区切りの時間を調べるだけなら、次のような感じでどうでしょうか。

__attribute__((noinline)) static void PrfStart(void)
{
TIMER0_CR=0;
TIMER0_DATA=0;
TIMER0_CR=TIMER_ENABLE | TIMER_DIV_1;
TIMER1_CR=0;
TIMER1_DATA=0;
TIMER1_CR=TIMER_ENABLE | TIMER_CASCADE;
}

__attribute__((noinline)) static u32 PrfEnd(void)
{
vu32 t0d=TIMER0_DATA;
vu32 t1d=TIMER1_DATA;
u32 clk=(t1d<<16) | t0d;
double dus=clk/((double)33513982/1000/1000);

_consolePrintf("prf %6dus %dclk.\n",(u32)dus,clk);
return(clk);
}

(改行多すぎで怒られたのでもう一つ追加します)


386:Moonlight
07/11/19 04:05:11 m1125lP2
>>379

TIMER_DIV_1で長時間だと16bitオーバーフローするのでカスケードで使いました。最長約128秒まで計測できるはずです。
時間表示はマイクロ秒(1/1000000秒)単位で、ベースクロックは約33MHz単位です。
たぶん50クロック分くらいオーバーヘッドがあると思いますので、BIASは+2マイクロ秒くらいになると思います。

全ての関数の出入りをトラップして入れ子OKなプロファイラも作ってみたのですが、それなりな規模でギリギリまで最適化しなきゃいけないプロジェクトがないので使いませんでした。
様子見だけなら次のURLを流し読みしてみて下さい。使い道がありそうならソース公開します。
URLリンク(mdxonline.dyndns.org)


387:名前は開発中のものです。
07/11/19 09:29:07 8gBUAruz
>>383
ありがとう、なかなか素晴らしいサイトだね。リンクに追加しておきます。
こちらは初心者による初心者のためのチュートリアル風味というスタンスでやっていくよ。

>>385-386
細かくありがとう。ここまで書いてもらったからには計測してみます。
ところで、こういった技術情報を自分で調べる時に、どこの資料を調べていますか?
実は自分でタイマーについて調べていたのですが、とっかかりも掴めなかったので
今後の参考までに教えてもらえないでしょうか

388:Moonlight
07/11/19 16:45:56 m1125lP2
>>387

私は本当に英語が苦手なので、ほとんどこのページだけしか見ていません。
URLリンク(nocash.emubase.de)
あとはひたすらトライ&エラーで。(笑
ところでベンチマークを作るなら、940TDDI0144BJ.pdfの11.2辺りも参考になると思います。


389:名前は開発中のものです。
07/11/20 18:54:10 ZMd3r+nr
ズバリ言うわよ!
誰かマジコンに挿してるmicroSDのベンチマークソフト作ってよ!

390:名前は開発中のものです。
07/11/20 19:52:27 u0GCnkyK
>>389
SCDSに載ってる

391:名前は開発中のものです。
07/11/20 19:56:37 QkNOenxx
>>389
ドラキュラでも動かしとけ

392:名前は開発中のものです。
07/11/20 22:54:40 ZMd3r+nr
>>391
お前頭悪いだろ

393:名前は開発中のものです。
07/11/21 08:24:17 6vcKbxSp
ミジンコが騒いでるな

394:名前は開発中のものです。
07/11/21 15:12:30 mEyHPxM5
>>392
お前頭悪いだろ

395:名前は開発中のものです。
07/11/22 10:43:48 FqUX21e8
日本語用のフォントどこかに無かったっけか

396:名前は開発中のものです。
07/11/22 12:20:00 5k4I28PI
自分も >>92 の書き込みとおなじように音声を入れ替えて
再生しようとしているのですが、思ったように再生されません。

>>103 でsoxの使い方が間違っていたという書き込みがありますが、
sox に何かオプションが必要ですか?

もしよければ >>93 のサンプルをいただけませんか。
おねがいします。

397:名前は開発中のものです。
07/11/22 12:52:30 /fyHsu2F
>>395
moonshellのソースになかったっけ

398:Moonlight
07/11/22 15:24:04 Tov9bwtW
>>395

日本語を含めたグラフィックライブラリでglibというのを作ったことがあります。
URLリンク(mdxonline.dyndns.org)
新しいDevKitProでは動かないので、ARM9ソースだけはMorningTimerあたりからglibフォルダをコピーしたほうがいいかもです。r21で動くかはわかりません。
glibはその場その場で必要なところを勝手に変更して使っています。最近のglibにはSJISコンバータが入っていません。(基本的にUnicodeしか使わなくなってしまったので)
新しいDevKitProではpScreenMainOverlayが使えるようにできなかった記憶があります。

上のURLのファイルは、Unicode文字列の描画にバグがあるので、次のURLを見ながら修正して下さい。(MorningTimerで使ってるのは修正済みです)
URLリンク(mdxonline.dyndns.org)

ダブルバッファリングのフリップの使い方についての補足。
URLリンク(mdxonline.dyndns.org)

>>396

サウンド再生サンプルを同じURLに再アップしました。


399:396
07/11/22 18:18:01 5k4I28PI
>>398
ありがとうございます。
ちゃんと鳴らすことが出来ました。



400:名前は開発中のものです。
07/11/22 22:50:11 03G/tE3V
いいなぁプノグラム出来る人は
オレもdsで遊びたい(´・ω・`)

401:名前は開発中のものです。
07/11/23 00:23:51 8+63/DiR
>>400
勉強したらいいと思うよ。

402:名前は開発中のものです。
07/11/23 02:36:55 9k21jG5G
勉強したけど覚えられんかった

403:名前は開発中のものです。
07/11/23 10:50:27 lfgCRRTi
遊ぶ…
DSで「ゲーム」して遊ぶのは簡単。ソフト買えば遊べる。
DSの「プログラム」して遊ぶのは…

とりあえず色々試して勉強すれば動くプログラムは組めるようになる。
ただその組んだプログラムが、使えるプログラム(MoonShellとか)・楽しいプログラム(ゲームとか)なのか?というのは別の話。

プログラムの世界は、時間をかけて色々試したりして経験しないと理解が進まない世界だと思う。

404:名前は開発中のものです。
07/11/23 11:30:22 JRTY0qBB
プログラミング自体が楽しいけどな
たとえHello World表示するだけでも
DSの上で自分のプログラムが動いたら楽しい

405:名前は開発中のものです。
07/11/24 01:49:57 nvXpdiM4
プログラミング自体がちょっとしたパズルゲームみたいなもんだな

406:名前は開発中のものです。
07/11/24 02:26:32 7a/Zqsri
>>403
>時間をかけて色々試したりして経験しないと理解が進まない世界
なんでもそうだろw

407:名前は開発中のものです。
07/11/26 12:33:10 +58xCPad
VRAMのモードとバンクの具体的な意味がわからない
URLリンク(void-main.org)
これ読んでもよくわからん

videoSetModeで、そのスクリーンの全体的な設定するんだよね
例えばMODE 5を設定すると、BG0 BG1 BG2 BG3がそれぞれ
テキストか3D、テキスト、拡大縮小回転ラスター、拡大縮小回転ラスター
という感じになるのはわかった

わからんのは、vramSetBankA。
バンクがAからIまであって、そのうちのAを設定するのはわかる。
このバンクを例えばスプライトに使いたい場合は
VRAM_A_MAIN_SPRITE をセットするのもわかるんだけど、
この場合、BGの何番がスプライトになるの?

BGxとバンクの関係はどこで定義されるの?

408:名前は開発中のものです。
07/11/26 14:20:27 Yt1IpFoJ
BGはBG、スプライトはスプライト
vramSetBankxはメモリを設定するだけでBGには無関係
BGxCNTとDISPCNTによってそれぞれにどのメモリ(どの機能)を使うか決める

409:名前は開発中のものです。
07/11/26 14:21:39 ZZFETsGB
>>407
BGは関係ないよ。
全部スプライトに割り当てられる。

結局は、VRAMをどんなふうに、BG or スプライトの領域に割り当てるか。
BG領域にVRAMを割り当てなければ、BGのための領域としては使えない。


BGx の設定レジスタ(CNT)に、バンク(というかBG用に割り当てられたメモリ) の
どこから使いますよって設定があるよ。
それで、BGx用の領域を、他のBGxと切り分けて使ったりする。
もちろん他のBGと共用で使ってもいいし。


410:名前は開発中のものです。
07/11/26 14:28:40 uwgSkU5u
スプライトはスプライトで独立。
VRAM_A_MAIN_SPRITEは、AバンクをMAIN画面のスプライトキャラクタ専用のバンクにするという指定。

411:名前は開発中のものです。
07/11/26 14:37:49 uwgSkU5u
連続3人がほぼ同じタイミングでレスするってどういう偶然だよ・・・・。

412:名前は開発中のものです。
07/11/26 14:39:09 Yt1IpFoJ
良いんじゃない?俺のレスじゃ言葉が足らないし
みんな良い人ばっかりでw

413:名前は開発中のものです。
07/11/26 17:28:30 +58xCPad
まだ読んでないけどとりあえず凄い勢いで感謝する
これから実際に作りながらゆっくり読んでみるよ、ありがとう

414:名前は開発中のものです。
07/11/27 07:08:47 k1+ERDjy
まあ、BGとスプライトが共用ってアーキテクチャも多かったし。
モード周りは分かりにくいから、適当にいじって試すのが一番かも。

415:名前は開発中のものです。
07/11/27 07:41:16 ek9nTtSh
トライ&エラーで悩みながら理解していった
パレットの最上位ビットを0のままにして色が出ないと悩んでいたこともあった
VRAMには偶数バイトにしかアクセスできないのを知らずに悩んでいたこともあった

416:名前は開発中のものです。
07/11/27 13:49:47 mwHZjx7I
チュートリアルとか和訳・解説とかのサイトは増えてるようだし
ミスしやすいところが先に分かるのはありがたいね

417:名前は開発中のものです。
07/11/27 22:12:04 rqCq3pey
先月からNDS Homebrew開発の世界に足つっこみました。
PAlib使うと、そう悩まずにPCでプログラム書くような楽ちんさですな。
ドキュメントが充実しているのが驚き。

418:名前は開発中のものです。
07/11/28 22:02:10 tHzYmS4d
久々にいじりだしてみた。
前回サウンド再生で挫折したことを思い出した。
dcdev38の人はTTA鳴らせてるのか?
サンプルgdgdじゃないか。

419:名前は開発中のものです。
07/11/30 20:06:25 9t4jPe0f
つまんなそう。

420:名前は開発中のものです。
07/12/02 15:25:40 xqn6cyGs
NDS用のファイラーってあるんでしょうか

421:名前は開発中のものです。
07/12/02 16:12:07 W+fIfwuU
釣り…なのか?

422:名前は開発中のものです。
07/12/02 18:58:15 XRvEMne6
どうやら、NDSの開発もsavデータ以外はみなさん、達成できたようで・・・
もしくは、よくわかってないのに、がんばって書き込んでいる人も・・・
あれ・・・何がいいたかったんだろう。

423:名前は開発中のものです。
07/12/03 08:56:24 U4Ce0oqs
>>417
PAlib、チュートリアルをみた感じでは別に楽になるように見えないんだけれど
具体的にどんなところが楽になった?

424:名前は開発中のものです。
07/12/03 16:13:06 2mqk2+Kb
M3 RealとかいうマジコンでMoonshellやImageViewerがメタメタになってるらしい。
やはりどんなマジコンでも動くHomeBrewを作るには限界があるんだろうな。
マジコンメーカーがわざと動かないように仕込んで来る場合もあるだろうしな。

スレリンク(gameurawaza板:390番)


425:名前は開発中のものです。
07/12/03 17:14:56 lEjXl7Hj
技術的な問題ならまだしも、わざわざ動かないようにしても利益が下がるだけだと思うが。

426:名前は開発中のものです。
07/12/03 18:47:00 397l0GVa
>>425
M3REALというマジコンにはマルチメディア機能が自前で付いている。
自前と言ってもmoonshellのソースをパクって作ったものであるわけだが。
メーカーは自前のマルチメディア機能を使ってほしいから本家のmoonshellは
用なしとでも言いたいのだろう。
多くのユーザーが自前のが糞なんで本家のを使いたいと思っているが
とりあえずその意向は無視ということで。

427:名前は開発中のものです。
07/12/03 19:33:20 7p/c13u2
moonlight氏が直すべきってのも痛いねえ
動作環境が違いますの一言で終わるのに

>>426
あんた陰謀論とか好きそうだね
多分メーカー何も考えてないよ、チェックめんどいからやってないだけだろ
もともと妖しいジャンルの商品なんだから期待するだけむだよw

428:名前は開発中のものです。
07/12/03 19:41:55 lEjXl7Hj
>>426
とりあえずスレタイ読んで、自分でパッチなり、ソフト作るなりしてから
おいでよ。

429:名前は開発中のものです。
07/12/03 20:19:50 U4Ce0oqs
DSで開発していて、一番気になるのがUIなんだけど、みんなどうしてる?

WindowsアプリやJavaなんかだとコンポーネントが使えるから
スクロールバーとかテキストエリアとか簡単に作れるし、
JavaScriptでもDoJaとかでも同様にそこそこの物は作れる。

でもNDSの場合は全部自分で作らなきゃいけないから結構辛くて、
特にそこそこの実用アプリ作っている時が一番困る。
貧弱でいいので簡単に使えるUIがそろっているといいんだけど。

430:Moonlight
07/12/03 20:58:26 rT+aJAsX
>>424

教えてくれてありがとうございます。
ザッと該当スレッドを見た感じでは、自動DLDIパッチが問題になっているような気がしたので、自動DLDIパッチを無効にするパッチツールを作りました。
汎用ツールなので、M3REAL以外、私作アプリ以外にも使えます。(使う意味は少なそうですが)
動作テストをしていないので、適当に様子見ながら使ってみて下さい。

URLリンク(mdxonlinemirror.dyndns.org)

やってること自体は簡単なので、スパイウェアなどが心配な方はソースを見てから使って下さいませ。

>>429

ほんとUI作るの面倒くさいですよね…。内容自体は数百行で終わるのにUIのために数千行も書かなきゃいけないと思うとすごく億劫です。
でも一度自前で作ってしまえばあとは使い回せるので…、といっても面倒くささ解消にはならないのですが。(苦笑
私は使ったことがありませんが、日本語を捨てればDSLuaが良さそうです。


431:Moonlight
07/12/04 01:14:37 xNKTg1An
>>430 の続き

M3/G6 Real.J01をダウンロードして眺めていたのですが、単にdldi_ds.m3を削除しただけではダメなのでしょうか。
できればパッチ無効化処理なんかしないで、そのままのNDSROMファイルが動作すればいいなと思うのですが。
他力本願で申し訳ないのですが、どなたか暇なひとがいたら試してみて下さい。
もちろんファームウェアの自動DLDIパッチ部分が直ればそれが一番なのですが、利用者側からどうこうできる問題じゃないと思うのでJ01(というのがバージョンになるのかな)ではこんな風にすれば、というのが定例化できればと思います。


432:名前は開発中のものです。
07/12/04 02:41:06 DlRjUUTf
>>431
SYSTEMフォルダのdldi_ds.m3を削除して
imgview10test3_M3REAL_M3DS Real.nds(CRC32:3A2198CF)を
マイカートリッジから起動したところ、自動DLDI上書きパッチされずに動作しました
確認環境はM3FlashJPのJ01とlinfoxのJ11のファームです

433:名前は開発中のものです。
07/12/04 08:31:19 RkilUj1+
>>430
ここのと動作同じかな?
URLリンク(dldi.drunkencoders.com)

434:名前は開発中のものです。
07/12/04 09:42:06 Hv+XfzAV
>>Moonlight神

お蔭様でImageViewerはM3Realにおいて最新版でも動くようになりました。
作って頂いたパッチでも、dldi_ds.m3を削除でもおkでした。心より㌧です。

未だmoonshellの方はSLOT-2から起動しないとタッチパネルの座標がズレます
(ズレているのか認識しない座標があるのかいまひとつわかりません)
が、SLOT-1からの起動でダメで、SLOT-2からの起動ならおkになるというのは
原因として何が考えられるのでしょう。

とりあえずM3Pや標準オプションのGBA Expansion Packを使うとSLOT-2起動
ができますが、SLOT-2に入れるものによってはこの技も使えなくなります。
M3Realはお騒がせなマジコンでユーザーとしても半ば呆れてしまっていますが
ちょっとした事でmoonshellの動きが改善されれば少しは価値が出るかと・・・


435:名前は開発中のものです。
07/12/04 15:06:43 2rhRXw4c
M3はslot2時代から糞と言われてるのに買う方が悪いかと。
クソマグ、パンヤオ、イマハ、タケルなどのM3工作員の嘘にまんまと騙されてる馬鹿が沢山。

436:名前は開発中のものです。
07/12/04 15:13:10 Hv+XfzAV
そのM3工作員どもにはM3REALとG6REALの日本語版が無償で配付されたらしいね。
あここまであからさまに暴露されたらさすがに提灯記事は書けないだろうな。
あんな糞どもに無料であげて肝心のMoonlight氏にはあげてない。
Moonshellで一番世話になっている相手にこれだもんね。腹が立つ。

437:Moonlight
07/12/04 17:24:52 xNKTg1An
>>432>>434

テスト感謝です。じゃぁ、J01で自動DLDIを無効にするにはdldi_ds.m3を削除する、ということで。
J11というのもあるんですね。今後のファームでは改善されるかもしれないのでJ01/J11限定の対処法ということでよろしくおねがいします。

MoonShellでのタッチ不良は、NDS本体に入っている設定情報からパネル補正情報を取得しているのですが、そこらへんがダメなのかもです。
ソフトリセットを併用して、M3REALファーム起動->補正情報の再取得->ソフトリセット->MoonShell起動、というふうにすればもしかしたら使えるかも。
補正情報再取得ツールから直接MoonShellを起動できればいいのですがちょっと難しそうです。(私の推測ですが
MoonShellの開発環境がまだあれば、MoonShell側で対応するのが一番簡単なんですけどね。(苦笑

>>433

そうです。概念としてはそれと同じ感じです。
ただ、最近の私のアプリは、起動直後にメモリ状態を検査するようになっていて、DLDIパッチされた部分は整合性検査をスキップするロジックを組み込んであります。
試していませんが、私のアプリだけちょっと特殊なので'DLDI No-Patch.exe'を適用すると変になるかもです。
(J01では)dldi_ds.m3を削除すれば何も問題ないのでそちらで対処していただけると有り難いです。

参考までに、メモリ整合性検査で異常が見つかったときのメッセージは以下の通りです。
--- Detected fatal error !! ---
There is a loss in the main body of The ARM9 code.
Please copy (アプリ名) with Windows again
The cause might be a loose connection of the equipment.
'DLDI No-Patch.exe'を併用したときにこのメッセージがでたらこんな理由かも、と推測よろしくです。


438:名前は開発中のものです。
07/12/04 21:36:41 Hv+XfzAV
>>437
ご回答ありがとうございました。

補正情報再取得ツールがどこぞにあるのか、またM3 REALをリセットする手段もなく
結局moonshellはSLOT-2起動することで対応させていただきます。

moonshellからリセットできないのは悲しいですが、皇帝氏のようにM3Realの
ROMを吸い出したものを起動してリセットするような技も使えないでしょう。

お蔭様でM3Realもかなりまともになってきました。ありがとうございました。

439:名前は開発中のものです。
07/12/05 21:22:13 VUPvJ+/c
M3Real用のreset.mseってありませんか?

440:名前は開発中のものです。
07/12/05 23:47:49 JuSaoHnR
M3(笑)

441:名前は開発中のものです。
07/12/06 20:14:25 CWf+p0eF
Moonlight神の代行です。OCN全面規制の煽りを受けているのかも知れません。

NintendoDS(NDS)非公式開発 Part2に書き込もうとしたら、
>ERROR:アクセス規制中です!!(OFSfb-)
とか言われたので一時的にこっちにメモ。
2chに転記したらこのエントリは消しちゃいます。(変なこと書いたつもりはないのですが、なにか2chのマナーに反するよーなことを書いた可能性は…あるのかもです。文章下手だからいつも長文だしー(苦笑

---

URLリンク(mdxonlinemirror.dyndns.org)

タッチパネルを含むBIOS情報再取得コードと、MoonShellVer1.71+1のM3REAL用DLDIパッチ済みNDSROM本体と、内蔵バイナリリブートツールをまとめたNDSROMファイルです。
普通にMoonShellVer1.71+1をインストールしたSDのルートに'RepairMoonShell_DisabledDLDIPatch.nds'をコピーしてから起動してみて下さい。
一応自動DLDI無効化パッチを適用してありますが、念のため'dldi_ds.m3'は削除しておいて下さい。
セットアップで作成される'MoonShell_????_ほにゃらら.nds'ファイルは不要です。全部消しちゃってOKです。
DS-Linkでしかテストしていませんがきっと動くと思います。(DS-Linkスキーなので宣伝してみたり(笑
ファイルサーバがごちゃごちゃしてきたので、2,3日で削除すると思います。
使い道がありそうでしたら、早めにDLしておいてくださいませ。それでは。 (2chに転記してから2,3日という感じで適当にまったりと)

442:417
07/12/06 22:35:26 qjnI+Dn2
>423
遅くなってゴメン

libndsよりもレジスタとか NDS固有の知識が薄くてもそれなりになんとかなるところ。

チュートリアルと関数リファレンス見ればだいたいの事は解決するし。

libndsだとなんかいろんなところ(Web)参照しないと解決できなさそうな感じだったので。

443:名前は開発中のものです。
07/12/07 10:13:30 amtaEMfI
>Moonlight神

アクセス回線がOCNのために書き込めないと思いますが>>441の'RepairMoonShell_DisabledDLDIPatch.nds'は
完璧に動作しております。本来はM3 REAL側で対応すべき問題に対処いただきありがとうございました。
あとはreset.mseがあれば完璧ですがこれは難しいと思います。皇帝氏もあきらめてM3 REALから吸いだした
ROMをロードすることでリセットしておられのようです。

重ねて御礼を申し上げます。ありがとうございました。

444:名前は開発中のものです。
07/12/07 19:46:19 ++SAx6FY
R4でセーブデータ(.sav)にアクセスする方法ってどうするの?
libndsのcardWriteEepromを実行すればおk?
なんかうまく動いてないっぽいんだけど。

445:名前は開発中のものです。
07/12/07 20:38:54 gdEzfOVy
URLリンク(eng.supercard.cn)

446:名前は開発中のものです。
07/12/07 22:41:49 ++SAx6FY
>>445
情報さんくす

でも、このサンプルを使うと、その後のlibfatの関数が動かなくなるみたい。
libfatの初期化前に、このサンプルでデータ取得するとlibfatの初期化で失敗するし、
libfatの初期化後にこのサンプルを使うと、その後のlibfatの関数が動かなくなるみたい

どうしたものかな?

447:名前は開発中のものです。
07/12/08 10:35:47 vQXHjmT9
学校で公式エミュレータとCodewarrior使って開発してるんですが
家でもやりたくててDevkitとか入れてみました。
でもコンパイルの時点でつまずいてしまっております・・・
arm9.c:528: error: 'NULL' was not declared in this scope
のようなエラーが。
命令文なんかが違ってそのままでは無理なんでしょうか。

448:名前は開発中のものです。
07/12/08 10:57:56 zgjnvI+i
頑張れ学生
エラーメッセージを直訳してみるんだ

449:名前は開発中のものです。
07/12/08 12:33:25 AUM2byjF
HALとかの専門学校か?

450:名前は開発中のものです。
07/12/08 13:16:39 M8CdU7/4
PSPFilerみたいなやつのDS版ってありますか

451:447
07/12/08 13:39:38 vQXHjmT9
そ、そうです、この事は内密にしておいてください・・・。
NULL以外にも命令文のエラーが70個くらい、いっぱい出るんで
何かそもそも使うAPIの書き方が違うのかなぁ・・?とか

452:名前は開発中のものです。
07/12/08 14:11:27 zgjnvI+i
そりゃ公式の開発環境とDevKitProとではライブラリが違うし
APIも定数定義も何から何まで違うだろうさ

学校で動いたソースを家に持ってきても
全行書き直しくらいの手間をかけないとコンパイル通らないと思うよ
全然別物のソースってこと

453:名前は開発中のものです。
07/12/08 15:48:10 3mzjoXXT
>>447
まずはその公式エミュを(ry

454:名前は開発中のものです。
07/12/08 16:40:20 8zWTeM+w
>>453
>>447見て気になって調べただけだからよくはわからんけどこういう
ものなんじゃねーの?
URLリンク(www.intsys.co.jp)


っていうか任天堂公式の開発キットの紹介が普通にあるとは思っても
いなかった。自分が調べはじめたときはDevKitProの方が先に出てたし
(まあ趣味目的での購入とかまず無理だろうからDevKitProの方が先
に出るのは当たり前だけど)。
RVDSにしてもそうだけど商用の開発環境も一度でいいから触ってみたい
な、と。まあへたれの願望だけどorz

455:名前は開発中のものです。
07/12/08 17:39:08 DrwdE9bP
RVCTなら昔使ってたことがあるな。
最適化はgcc以上にしてたけど、
例外に対応してなかったり、テンプレートが使えなかったりして使いづらかった。

456:名前は開発中のものです。
07/12/08 17:43:10 ce1lMjZE
>>454
RVDSは会社で使ってる(DS開発じゃないけど)。
商用だからといって変な期待はしないほうがいいと思うよ。

457:名前は開発中のものです。
07/12/08 20:19:36 Rr5uE8Gw
NDSD, NDS開発, めらまん等しらべてもわからなかったので...

マイクの電源の入れ方は
#define PM_MICROPHONE_ON BIT(1)
writePowerManagement(PM_AMPLIFIER_REG, PM_MICROPHONE_ON);
でいいですかね?

あとSetYtrigger(80)はいったい何の意味があるんでしょう?

458:名前は開発中のものです。
07/12/08 20:37:32 Rr5uE8Gw
URLリンク(ndsd.chicappa.jp)

書き込んだ直後にマイク電源のほうは見つけてしまいましたorz
もうしわけありません...。

459:447
07/12/08 22:38:44 vQXHjmT9
>>452
なるほど、、納得です。ありがとうございます。

>>454
そうです。それが何台も並んでます。

460:名前は開発中のものです。
07/12/09 01:11:40 gtnf8VcO
とりあえず447はDS云々の前にC言語の勉強をしないと駄目だな
がんがれ

461:名前は開発中のものです。
07/12/09 02:11:22 9bpF0A8p
言っちゃ何だが
ゲー専の講師って大変そうだな

462:名前は開発中のものです。
07/12/09 02:32:53 +jwG3gH2
C言語の勉強というか
ソースからどうやって実行モジュールが作られるのか
そのコンパイル、リンクといったビルドの仕組みをね

463:名前は開発中のものです。
07/12/09 04:04:01 4ByaR6hH
もちろんそれもだけど、それ以前にNULLって何なのかとか良く分かってなさげな気が

464:名前は開発中のものです。
07/12/09 08:03:37 nfuRpuxM
ぬるぬるぽっぽ ぬるぽっぽ

465:名前は開発中のものです。
07/12/09 10:51:19 yaPogrpG
ヌルストリングス

466:名前は開発中のものです。
07/12/10 16:43:25 DoRblnqX
こんなオープンな場所に内密にしておいてって書くところに萌えた

467:名前は開発中のものです。
07/12/11 17:41:47 PWtbglS8
スタンダードライブラリのソースコードがどこにあるかわからなかったのでここで聞かせてください。
libnds使っているんだけれど、mallocもしくはnewする場合ってメモリがどこから確保されるの?

GBATEK見る限りだとNDS9の02000000hからの4MBがそれっぽいけど、
0x2000000から0x3000000って16MBあるよね?
残りの8MBはマップされてない領域なのかな。

468:名前は開発中のものです。
07/12/11 21:15:02 ttVuZbgi
がっ!

469:名前は開発中のものです。
07/12/11 21:39:31 vKUDMSyc
(´・ω・`)公式の開発環境いいな~(仕様類が読みたい)

高いんだろうな。きっと。

470:名前は開発中のものです。
07/12/11 22:09:07 sFIvlhA4
CodeWarrior使ってみてー
無料でC,C++が使えるだけでもぜいたくだけどね

471:名前は開発中のものです。
07/12/11 22:20:16 Vj2kDy+Q
DSで動くツールのリンクとかってないすか?
R4買ったんで、なんか動かしてみたい

472:名前は開発中のものです。
07/12/11 23:57:37 V7fem/YM
非公式の開発で作ったゲームやツールって、公開しても著作権等引っかからないかな?
金取らなきゃおk?

473:名前は開発中のものです。
07/12/12 00:49:30 Y9rGot6Z
これは釣りだな

474:名前は開発中のものです。
07/12/12 01:17:28 gihyM4wU
学校向けのGBA開発環境は意外にもdevkitと同じような構成だった(MSYS+gcc)。

475:名前は開発中のものです。
07/12/12 06:08:44 lNUYeXTW
>>467
devkitPro で使っているのは newlib-1.14.0.tar.gz .
じっくり見て行こうか.

stdlib\malloc.c を見ると malloc は _malloc_r を実行している.
stdlib\mallocr.c を読むと...ここは読むの結構大変なんだ... _malloc_r は _sbrk_r を実行している.
reent\sbrkr.c を見ると _sbrk_r は _sbrk を実行している.
libgloss\arm\syscalls.c を見ると _sbrk は変数 end を extern 宣言して, その変数のアドレスからメモリを確保している.
Defined by the linker. と書かれているように end の宣言は ds_arm9.ld でされている.
あとは ds_arm9.ld を見るだけだから頑張ってくれ.

476:名前は開発中のものです。
07/12/14 10:24:55 SQhfAzwo
3Dの使い方が分かりません。
サンプルソース見ると、binファイルを使ってるみたいなんですけど、
3Dデータ(obj/stl/Xなど)をbinに変換するにはどうしたらいいんでしょうか?
もしくは、binにしなくても使う方法を分かりませんか?

477:名前は開発中のものです。
07/12/14 14:47:44 SQhfAzwo
nds 3d world tool setというのを使いたいのですが、
エラーが出てしまいます。
どなたか分かる方いませんか?

478:名前は開発中のものです。
07/12/14 15:03:49 cC9WbaaN
まずはエスパーを探せ
あとはそいつと脳内会話を続けろ

479:名前は開発中のものです。
07/12/14 19:14:03 GxXgUD96
Hellow worldからやり直し

480:名前は開発中のものです。
07/12/14 19:30:26 ZUfhTjt8
>>479
Hellow ではなくHelloでしょう?

あなたは中学1年生から英語をやり直し!

481:名前は開発中のものです。
07/12/14 19:57:10 cXk0iJeS
>>479
頭悪杉

482:名前は開発中のものです。
07/12/14 20:12:48 aZJWn8ag
>>480-481
slangも知らんのか
URLリンク(www.google.com)

483:名前は開発中のものです。
07/12/14 20:30:00 ZUfhTjt8
>>482
必死に言い訳を考えなくても良い。お前のような英語音痴プログラマは他にもいるwww
URLリンク(72.14.235.104)

484:名前は開発中のものです。
07/12/14 20:43:37 cXk0iJeS
>>479=482
お前は福井県のニートだったのか。
だから綴りを間違えたんだな
まぁ、中学英語の教科書買ってがんばれよ、応援してるぞ

Hellow の検索結果 約 1,050,000 件中 1 - 10 件目 (0.05 秒)
URLリンク(www.google.co.jp)

485:名前は開発中のものです。
07/12/14 20:46:23 ZUfhTjt8
いままで福井のプログラマって優秀だってイメージがあったけど










考えを改めたわw



486:名前は開発中のものです。
07/12/14 22:07:03 GxXgUD96
うけたw

487:名前は開発中のものです。
07/12/14 22:14:02 ZUfhTjt8
プライド捨ててまでウケは狙わんよ。普通の人はね。

488:名前は開発中のものです。
07/12/14 22:19:43 VNugUZvC
普通の奴は出来ないよな。

出来る奴は無論、安いプライドなんかに執着しないけどな。

489:名前は開発中のものです。
07/12/14 22:48:48 ZUfhTjt8
「スペルミスでした~」の一言で楽になれるのに…

ご苦労なこったねwww

490:名前は開発中のものです。
07/12/14 23:18:31 J9SPRxpa
>>480
>>483
>>485
>>487
>>489
ワロス


491:名前は開発中のものです。
07/12/14 23:29:42 VNugUZvC
人を馬鹿にするレスをすることに関しては
そこそれない情熱を発揮する、2chによく生息しているタイプですな。

492:名前は開発中のものです。
07/12/14 23:33:04 ZUfhTjt8
このスレも自演が流行り出しましたか。やれやれですね。

493:名前は開発中のものです。
07/12/15 01:00:59 5crQODLN
はい、劣勢からの一発逆転狙いの自演認定でました。

494:名前は開発中のものです。
07/12/15 08:17:35 qxu+TjR8
釣りなのかミスだったのかわからないが
たぶん釣りとおもわれるものにひっかかったからって
ID:ZUfhTjt8は必死になりすぎましたね

495:名前は開発中のものです。
07/12/15 09:22:35 blYwMdsg
なんか馬鹿みたいな流れになってますね。

まあ勝敗をつけるなら「釣り」という言葉を出した時点で負け。
2chのルール上はね。



496:名前は開発中のものです。
07/12/15 09:50:28 ZK3vDvf+
負け(笑)

何の勝負してんたんだコイツw

497:名前は開発中のものです。
07/12/15 10:11:10 blYwMdsg
う、なんか巻き込まれそうな嫌なヨカ~ン。

ママー!こわいよ~!

498:名前は開発中のものです。
07/12/15 10:20:25 EJfKquFV
はい、1人熱く勝負していたお子様から2chのルール上負け宣言でました。

499:名前は開発中のものです。
07/12/15 10:32:18 blYwMdsg
すみませ~ん。

たががHelloをHellowとスペルミスしただけでなぜそこまで粘着するのでしょう?
わざわざID変えてまで粘着するなんて何があなたをそうしたのでしょうか?

などという質問を出してあえてド壺にはまってみるwww

500:名前は開発中のものです。
07/12/15 10:33:33 3TvXxYrg
頭のおかしな人には気をつけましょう


利用者が増えるに従って、頭のおかしな人もそれなりに出没するようになって来ています。
頭のおかしな人に関わるとなにかと面倒なことが起こる可能性があるので、注意しましょう。

頭のおかしな人の判定基準

・「みんなの意見」「他の人もそう思ってる」など、自分の意見なのに他人もそう思ってると力説する人
 他人が自分とは違うという事実が受け入れられない人です。自分の意見が通らないとコピペや荒らしなど
 無茶をし始めるので見かけたら放置してください。

・根拠もなく、他人を見下したり、差別したりする人、自分で自分を褒める人
 他人を見下すことで自分を慰めようとする人です。実生活で他人に褒めてもらう機会がないが
 プライドだけは高いとか、匿名の掲示板しか話し相手のいない人です。可哀想なので放置してください。

・自分の感情だけ書く人
「~~がムカツク」とか自分の感情を掲示板に書くことに意味があると思っている人です。
何がどのようにムカツクのか論理的に書いてあれば、他人が読んでも意味のある文章になりますが、
そういった論理的思考の出来ない人です。もうちょっと賢くなるまでは放置してあげてください。

501:名前は開発中のものです。
07/12/15 10:38:26 blYwMdsg
まあ確かにスペルミスをしたのは自分が馬鹿だったからです。今はそれは認めます。
恥かしいから最初は誰でも認めたくないでしょう?わかってくださいよ。
懸命にググってやっとスラングで逃げる道を見つけて安心したのも束の間、
今度はそこを叩くし。もう。

まあ元はと言えば自分がスペルミスをしたのが原因でこうなったので
責任はすべて自分にあります。

  スペルミスしてごめんなさい。こんな馬鹿死んだ方がいいですね。もう…

502:名前は開発中のものです。
07/12/15 10:53:11 EJfKquFV
>>500
勉強になりますぅ♥

503:名前は開発中のものです。
07/12/15 11:06:18 qxu+TjR8
違うことを学ぶスレになってるw

504:名前は開発中のものです。
07/12/15 13:20:45 5crQODLN
DSの開発してる奴いねーな

505:名前は開発中のものです。
07/12/15 13:41:31 pEue848b
みんな単語漬けとFFに夢中か

506:名前は開発中のものです。
07/12/15 14:10:48 6J4ZO4jO
で、話を元に戻そう。
たしか初音ミクがどうとか言ってたよね?

507:名前は開発中のものです。
07/12/15 15:06:31 WGz0ygcK
>499 >501
なんだかんだで、スペルミス絡みでなんどもレスした奴は全員、
ひん曲がったプライドが高すぎだから、引くに引けないんだよw
苦しいことを言いながらも、看破されるのをヤケに恐れるんだよな。
冷静に読めば、どっちの側でも全員痛い。

ま、オンタイムでスレ見てたら漏れも喜んでレスしてただろうけどなw

508:名前は開発中のものです。
07/12/15 15:18:39 P56Xe/+i
くやしいのうwwwwwww

509:名前は開発中のものです。
07/12/15 15:23:10 RaE/1dVO
>>479
Hellow Workからやり直し

510:名前は開発中のものです。
07/12/15 15:28:54 3TvXxYrg
一度終わったネタを蒸し返すのは、相当面白くない限り難しいと思うよ


511:名前は開発中のものです。
07/12/15 15:36:22 VtGPJsPU
長文=悔しくて顔真っ赤

余裕のないレスは見てて面白いよ



512:名前は開発中のものです。
07/12/15 19:14:01 W4hzUAm9
DSよりもPSPの方が、自作プログラミングが盛んだな。
両方ともやってたけど、PSPの方が人が多い気がした。
DSって人気ないな。プログラムに関しては。

513:名前は開発中のものです。
07/12/15 19:49:34 IGGbBMJB
スペックはPSPのほうが上だしな
あと、敷居が低いんじゃない?
PSPはUSBですぐできるけどDSはマジコン買わないとできない

514:名前は開発中のものです。
07/12/15 21:19:34 5lBd6LiR
Helo,みなん。

>>512
PSPは、DSより絵が出しやすいからWindowsプログラミングで
ビットマップやってればそれだけでとっつきやすくなる土壌が
あるからではないかな?
あと、DSだとBGM流すのが大変。PSPは楽なのかな。
圧縮した形式の音楽ファイル再生を満足に鳴らせているのは、
Moonlight氏だけじゃないかとさえ思ってしまう。

515:Moonlight
07/12/16 00:06:32 7B8YUcnV
>>514

自分の名前が目に付いたので横やり失礼。
ほんとにPSPの方が楽です。全然敷居の高さが違います。(PSPはSDKを斜め読みした程度ですが)
ある程度進めば(開発のしやすさは)どっちも似たようなものだと思うんですけどね…。もちろんハードウェアスペックそのものが違うので、例えば動画云々とかはPSPの方が全然楽ですが。
それはそれとして、ただでさえNDSは音質が悪いのに、海外homebrewの(無圧縮PCMなりMP3なりの)音質の悪さは酷すぎると思います。
ちょっと工夫するだけでMoonShellくらいの音質にはなりますし、MorningTimerはMoonShellより(ほんの少しですが)音質がいいです。
といってもMoonShellとMorningTimerの音質の違いはほとんどわからないレベルですけどね。
毎回ソース付けてるのに読んでくれないのは寂しいです。
例えば/20071207_morningtimer11.zip/sources.zip/arm9/source/dllsound.cppのDLLSound_Update関数(131行目以降)辺りとか。
っていうか私のソースが汚すぎるのが原因だと思いますが。(笑

横やり失礼しました。hellowとかのtypoは私もほんとにしょっちゅうやらかすので、ひとのこと言えません。英語キライ(笑


516:名前は開発中のものです。
07/12/16 00:35:28 jHKFL56E
いつかDSでエロゲーを作りたいな

517:名前は開発中のものです。
07/12/16 08:12:29 vPE85YJa
どき魔女みたいなエロゲ頼むわ

518:名前は開発中のものです。
07/12/16 17:13:13 lU/eTHht
dsでクター作ってくれ

519:名前は開発中のものです。
07/12/16 18:28:57 vrWyTNF9
お前が作れよカス野郎

520:名前は開発中のものです。
07/12/17 23:00:36 eWYlxyJ0
MoonlightさんのCheck disk for NDS Ver0.2のベンチ結果報告を見る限り
J14ファーム付属dldi_ds.m3を使用してM3REALでテストしているようなので
MoonlightさんはM3 REALをお持ちのようですね。

J14ファームだと自作ゲームが全滅なのになぜMoonlightさんだけheck disk for NDS Ver0.2
を動かせるのか?それは非公開の裏技があるからなのでしょう。


                  いいなぁ…




521:名前は開発中のものです。
07/12/17 23:19:44 1DRKnqTA
それマジコンwikiの公式ベンチにしたいから更新よろ

522:名前は開発中のものです。
07/12/17 23:31:49 eWYlxyJ0
自分の環境だとJ14でJ14ファーム付属dldi_ds.m3でCheck disk for NDS Ver0.2を実行すると
Filesystem error 1で止まってしまう。J13のhomebrew.jpとdldi_ds.m3に差し替えれば動くが
それだとJ14ファーム付属dldi_ds.m3でベンチ取れないしなぁ。

523:Moonlight
07/12/17 23:43:00 9GZbtd9j
>>520

野暮用ついでに調べてきたのですが、J14付属DLDIが思いのほか速くてびっくりしました。
実際に使っていないので、ちゃんと読み書きできてるのか心配になってきた…あまりに高速すぎて。
正確に書けて、正確に読めることを確認するツールでも作ろうかな。(信用してなさすぎ(苦笑
J14ファームではchkdskが動かなかったので、J14からdldi_ds.m3だけコピーしてきて、Windowsでパッチ当てて、自動DLDI無効化パッチを当てて、J01ファームで起動しました。
自動DLDI無効化パッチは当てなくても、SDからdldi_ds.m3を削除しておけば起動できると思います。なにを回りくどいことやってるんだーって感じですよね。(苦笑


524:名前は開発中のものです。
07/12/17 23:50:53 eWYlxyJ0
>>523
なるほどそういう事でしたか。よくわかりました。
問題はJ14のdldi_ds.m3にあるのではなくJ14のhomebrew.jpにありそうですね。
J13のhomebrew.jpとJ14のdldi_ds.m3でJ14ファームで動くかも知れませんね。
もし動いたら最新版で超高速ということになるわけですが・・・


525:名前は開発中のものです。
07/12/17 23:58:49 MhsFv35n
ありがとうございましたです

526:Moonlight
07/12/18 00:07:16 F8gE+Mcp
>>524

J13はわかりませんが、J01とJ11の自動DLDIパッチには問題があるので、(たぶんJ13のでも)homebrew.jpを入れ替えても正常に自動DLDIパッチは機能しないと思います。
まぁそのうち直るんじゃないのー?くらいで私は傍観者な気分です。(笑


527:名前は開発中のものです。
07/12/18 09:36:49 n9GS+972
>>526
Moonlightさんは開発者としてだけでなく預言者としても才能がおありのようですwww
昨日の今日でV2.8 J15で自動DLDIパッチが修正されました。

しかしこのdldi_ds.m3はすごい性能ですよ!dsm2onlyでエンコした256x192動画を
再生してみたら24fps、30fpsでも遅延発生せずに再生できるようになりました。
ImageViewerはサムネイルのスクロール速度が見えないくらいに速く動きますしw
使用しているメディアはSanのmicroSDHC 4GBです。6GBや8GBならもっと高速かも。

M3 Realとmoonshellの組み合わせで今までにないマルチメディアの世界が広がりました。
このマジコンは今は出来損ないですが、ものすごい可能性を秘めているかもしれませんなwww

とにかくMoonlightさん。ありがとうございました。

528:名前は開発中のものです。
07/12/18 10:43:29 n9GS+972
>Moonlightさん

あつかましいお願いで恐縮なのですが…

以前にM3 REAL用タッチポインタ正常化moonshellを作成していただきましたが
今回J15でオートパッチャが正常化したことにより、DLDI対応ソフトとして
認識させたいと思います。

そのようなmoonshellをご用意していただくことは可能でしょうか?
J15におきましてもmoonshellのポインタズレは相変わらず直っておりません。
無理にとは申しません。もしご検討いただければ幸いです。

529:名前は開発中のものです。
07/12/18 12:13:55 5oi3NSno
>>528

おお~それおいらもお願いしたいです。土下座でもなんでもします。お願いします。

530:Moonlight
07/12/18 13:38:54 F8gE+Mcp
>>528

homebrewが正しく起動できるM3REAL/J15(V2.7eX)以降専用です。
URLリンク(mdxonlinemirror.dyndns.org)

タッチパネルを含むBIOS情報再取得コードと、MoonShellVer1.71+1のM3REAL用DLDIパッチ済みNDSROM本体と、内蔵バイナリリブートツールをまとめたNDSROMファイルです。
普通にMoonShellVer1.71+1をインストールしたSDのルートに'RepairMoonShell.nds'をコピーしてから起動してみて下さい。
前回との違いは、自動DLDI無効化パッチを適用しないように変更したことと、メモリマップを見直して512kbyteで済むようにしただけです。
セットアップで作成される'MoonShell_????_ほにゃらら.nds'ファイルは不要です。全部消しちゃってOKです。
ファイルサーバがごちゃごちゃしてきたので、2,3日で削除すると思います。 使い道がありそうでしたら、早めにDLしておいてくださいませ。
コピペで適当に済ませようとする手抜きさがアリアリと。(苦笑


531:Moonlight
07/12/18 13:46:43 F8gE+Mcp
>>530 補足

自動DLDIパッチが正常に働くようになったのにM3REAL用DLDIパッチ済みで公開したのは、過去ログを見てdldi_ds.m3を削除してから起動した人がいても正常にアクセスできるようにと思ってこのようにしました。(蛇足
J14付属dldi_ds.m3とJ15付属dldi_ds.m3は、バイナリレベルで一致したので同じものです。たぶんJ15はhomebrew.jpの修正をしたんですね。


532:名前は開発中のものです。
07/12/18 15:03:07 7T5JBS+s
有り難く使わせて貰います

533:名前は開発中のものです。
07/12/18 18:19:32 n9GS+972
Moonlight様

早速のご対応ありがとうございました。
Sanの2GB microSDであるにもかかわらず
新DLDIドライバによりmoonshellがとてつもなく高速に動いています。

感謝感激デス!本当にありがとうございました。

534:名前は開発中のものです。
07/12/19 10:15:09 vSX8Z0Q6
Moonlight氏のHomebrewをM3Realでプレイしてみました。
M3Real V2.8だとMoonshell、ImageViewerともに素晴らしい動きをしますね。

しかしCooking TimerやMorning TimerはFAT32で使うとディスクチェックで
エラー停止しますねぇ。FAT16なら大丈夫だけど。
ImageViewerのようにiniファイルでバイパスできるといいのに。
自分がその方法を知らないだけかも知れませんがw

あとM3Real用のリセットプラグインがあるといいですね。
Moonshellの動きが抜群にいいだけに、リセットできないのが非常に気になってしまいます。

M3 Realに対するMoonlight氏のサポート、ユーザー一同感謝しています。
ありがとうございます。


535:名前は開発中のものです。
07/12/19 13:01:41 9Fgoq2AJ
こちらのカキコを見てM3 REALを買ってみました。
v2.8 J15からのスタートになります。

moonshellの動画再生能力が半端じゃありません罠このマジコンは!
平凡なSanの2GB MicroSDなのに、dsm2onlyでエンコした256x192動画を再生してみたら
24fps、30fpsでも遅延発生せずに再生できるようになりました。
今まで苦労していたのが何だったのか…

あと、やっぱりmoonshellでリセットしたいですね。
これだけ性能がズバ抜けているだけに。

ありがたや~ あ~ありがたや~~~~

536:名前は開発中のものです。
07/12/19 16:06:35 eAmT+TQX
2007年12月19日 14:48
メモ。またアクセス規制…うちはOCNなのかなぁ。

転記したら消します。FAT32は壊れやすいので使いたくないんだけど、SDHCでも採用されたんだから今時FAT32警告ってのもアレなのかなっ。(苦笑

名前: Moonlight
E-mail: sage
内容:
>>534

基本的にディスクはいつ壊れ始めるかわからないので、ディスクチェックは有効のままにして欲しいのですが、FAT32警告が鬱陶しいとのことなら、ディスクチェックをスキップする方法はあります。
URLリンク(mdxonline.dyndns.org)
左下の赤丸で示したチェックボックスを外すとOFFになります。(なるはずです。確かそう作ったような気がします(笑




これって起動できないからiniファイル上でどう記述すべきかを教えてあげた方が親切かも。
あ。Moonlight氏のような親切杉るくらい親切な人にこんな事言ったら失礼だと今気付いた。

すんません。

P.S.
moonshellのM3リアル用リセットプラグインは私も欲しいと思う一人なのであります!

537:名前は開発中のものです。
07/12/19 16:44:15 x85E9Gaq
2007年12月19日 14:48
メモ。またアクセス規制…うちはOCNなのかなぁ。

あれ?私、勘違いしてる?
全然確認しないで記憶で書いたから、FAT32警告が出るんならそうなんでしょくらいで思っていたのですが、いま確認したらMorningTimerVer1.1はFAT32警告を外してあるみたいです。
お手持ちのファイル名を確認してみてください。MorningTimer11.ndsなら警告が出ないと思います。
ちなみに、FAT32警告はエラーでなく警告なので、何かキーを押せば次に進めるはずです。(そんな風に作ったような記憶が…(曖昧(笑



M3 REALではFAT32でそいつらを起動するとFAT32警告ではなく致命的エラーで死ぬ事実www

538:名前は開発中のものです。
07/12/19 16:56:51 WOXs0V0+
なんか話が噛みあわないと思ったらMoonlightさんはFAT32警告が出ると思っていたんだな。

M3Realでディスクチェックが入ると致命的エラーが出て再起動しか方法がなくなる。
ImageViewerでも同様だがこれはINIファイルで切ってるから無問題。

一旦、FAT16で動かしてライセンス表示させない設定ファイルをセーブっといて
FAT32で使うときにコピーすればいいと思うよ。

539:名前は開発中のものです。
07/12/20 09:44:49 G9sHKr8Z
M3R使ってMoonlight氏のHomeBrewの簡易ディスクチェックで致命的エラーになってる人。
たぶんtmとかいう奴のスキンを使っていたんじゃないかな?
URLリンク(ameblo.jp)

このスキン、今は修正されてるがチート設定時にフリーズしてしまう問題があった。
書き込み時のフリーズなので100%ディスクが壊れる。しかし再起動すると動いてしまう。
だから壊れたことに気付かないでそのまま使ってしまう。
tmのスキンに限らず海外で公開されているスキンでもまともに動くものはほとんどない。
悪いことにチートをはじめ設定の書き込み中にフリーズするパターンが多い。

実は自分もその事に気付かずにずっとM3Rを使ってきて、Moonlight氏のチェックディスクで
はじめて気付いた次第だ。
最新のカーネルであればHomeBrewの問題は皆無と言っていい。FAT32だろうがFAT16だろうが
DLDIの自動パッチは正常に動く。
ただ、なぜかクッキングタイマーだけは何をやっても起動時DLDIのメッセージのまま動かない。
まあT料理しないからいいけどさwww

540:名前は開発中のものです。
07/12/20 10:12:58 TXV/829e
>>539
以前にtmさんのスキンを使っていました。
それとチートでフリーズしたのをおぼえています。
そして…やはりmicroSDが壊れていました(笑)
フォーマット後全ファイルコピーで修復しました。
Check disk for NDSの最新版 Ver0.3が今日リリースされています。
URLリンク(mdxonlinemirror.dyndns.org)

ちょっとこのチェックツールまじで凄いんですけど。
断片化をビジュアルで表示したりどのファイルが断片化してるかとか全部わかるし。
凄いツールなのに知名度低杉。もっと話題になってもいいと思う。
自分のmicroSDの構造がメタメタだと知らずに○○マジコンは糞とか言ってる人って
きっといるよね。
何かを評価するときにはCheck disk for NDSちぇっく済みの一言を書き加えるべき。
そんな気がしました。

Moonlightさん、また一つ勉強になりました。ありがとう!


541:名前は開発中のものです。
07/12/20 14:36:55 G9sHKr8Z
つ、スキンの不具合でディスク書き込み中にフリーズって仕様でいいのM3R?

スキン変えてるM3RユーザーはCheck disk for NDSは必携ツールだな。

チート設定から戻るときにフリーズしたら今のところ100%壊れてる。


542:Moonlight
07/12/20 15:22:11 MAA+wn7E
>>539 >>540

なにするんだM3REALばかやろーって感じですね。(笑
最も注意して作らなきゃいけないディスク書き込みを伴う処理を、安全に作らない開発者ってなんなんだーばかやろー。
(マジコンの品質なんてソンナモノって話は却下です却下(笑))
J15でもまだチェック機構が甘いのかは(自分で確認してないので)さておき、それだけ致命的なバグならそのうちなおるでしょと思います。
ちなみに、ベンチマークで大事なのは最大値ではなく全体の均一さです。先頭だけしか速くないMicroSDの多さにびっくりしました。
SanDiskのSDHCが汎用的に優秀かは知りませんが、M3REALと相性が良いのだけは確かみたいですね。

543:名前は開発中のものです。
07/12/20 15:22:29 1Z+yttvt
その程度でmicroSDを確実に壊してしまうM3Rは糞ですね

544:名前は開発中のものです。
07/12/20 15:31:28 G9sHKr8Z
おっ!Moonlightさんの久しぶりのカキコやないか!BTW

M3Rのreset.mseはやっぱり却下ですか…

M3Rでクッキングタイマーが起動しないのは俺だけ…?

>>543
俺も先日までは糞だと思っていた。あの超高速dldiドライバが提供されるまではな。
あの速度をゲームに転用できたらすごいだろうな…

と思うとM3Rの将来に思いを馳せたくなるんだぜ。

545:Moonlight
07/12/20 16:02:48 rwOvvo+K
後述。Check disk for NDS Ver0.3をアップデートしました。ページ上部のリンクから辿ってください。

転記ありがとうございます。感謝です。
(CookingTimerで使っているFATライブラリが古いので、特定のファイル名でディスクチェックに失敗することがあります。需要少なそうなのでほっといてもいいかなとか無精癖が(苦笑) reset.mseは私のできる範囲じゃないので関わりません。ごめんなさいです。)

546:名前は開発中のものです。
07/12/20 16:19:19 G9sHKr8Z
なんや転記だったん?書き込めへんのか。

リセットはM3Rから吸い出したROMを起動してみる。だめっぽい?

クッキングタイマーは諦めた。料理やんないしとか言ったから怒ってるんやろな。
使うのはモーニングタイマーの方だからいいっすよ。

ま、M3Rはだんだん可愛くなってきた。でもTTDSに浮気したい気分が抑えきれないけど(爆

547:名前は開発中のものです。
07/12/20 16:30:09 tLTzhhXD
>>542
>先頭だけしか速くないMicroSDの多さにびっくりしました。

その情報を逆手にとって悪魔城をSandisk 2GBの先頭において起動してみました。
位置はFATの直後あたりです。カーネル等よりも前に置きました。
結果。信じられない話ですが、このメモリカードでは絶対フリーズしていたポイントで
まったくフリーズしなくなりました。

高速に動かしたいゲームはフォーマット直後最初にコピーするよう意識することで
かなり快適に使えるようになることがわかりました。
microSD上で位置を自由に設定してファイルをコピーできるソフトがあるといいですね。
昔、ノートンにそんなソフトなかったかな?

548:名前は開発中のものです。
07/12/20 16:51:05 G9sHKr8Z
今思えばAceKardのAKFSがいかに優秀だったかがわかるもんだな。
断片化しないだけでなく、先頭からコピー元ファイルの空き場所を探すから
入れ替えが簡単にできる。書き込み専用ツールで中の状態もはっきりわかるしな。

昔と違って大容量記憶メディアが簡単に手に入るようになったのだから
ファイルシステムも使用効率より動作性能を重視してもらいたいもんだ。
まあMicrosoft社が遅れてるだけで。Mac OS X 10.2以降で使用されているHFS+や
Linuxのext3など参考にすべきだと思うんだが。
せっかくマジコンで採用してもFATにしろ!と潰されるのはAceKard+で実証済み。
Windowsの標準ファイルシステムにならないと受け入れられないだろうよ。


549:Moonlight
07/12/20 17:05:37 21+7rRsc
転記ありがとうございます。感謝です。
す、すいませんー。独り言をぼそぼそと書き散らしただけのつもりだったのですが、わざわざお手数かけてしまって申し訳ない&感謝の限りです。
(ひとりごと~私はW-ZERO3とマジコンで使う以外のリムーバブルHDDやCF/SD等は全部NTFSで使ってます。NTFSラブ。デジカメとか持ってない)

550:名前は開発中のものです。
07/12/20 17:10:26 EvQ1qSv8
>>594
意外に勉強不足なんですね。
URLリンク(www.atmarkit.co.jp)

あるいはこれがSDの世界では問題ないとかいう理論で俺が恥をかく展開になるのか?www

551:名前は開発中のものです。
07/12/20 17:23:10 G9sHKr8Z
>>550
俺も単純にNTFSはフラグメントしにくいと理解していた。どうも違うようだな。
マジコンで750バイト以下ってiniファイルくらいしかない罠。
それ以外はどこのクラスタに飛ばされるかわからへんわけやね?

そうなるとNTFSは思ったよりいいファイルシステムじゃないことになるね。


552:名前は開発中のものです。
07/12/20 19:26:52 800P5N4j
なるべく同じクラスタに収めようとするので、
FATよりはよっぽどフラグメント化しないよ。

553:名前は開発中のものです。
07/12/20 20:01:54 UZjuOACo
久しぶりにHDDを分析したら真っ赤だった


554:名前は開発中のものです。
07/12/20 20:52:56 G9sHKr8Z
>>552
同一クラスタを異なるファイルが共有するのかい?
読み取る時にどうやって区別するのかね?
クラスタごとにバイトポインタでも持ってシークするのだと?
負荷高そうなファイルシステムだねww

555:名前は開発中のものです。
07/12/20 21:08:11 fkgSddbS
ソフトウェア版のデフラグソフトのスレッドでたまに流れる話題だなぁ

556:名前は開発中のものです。
07/12/21 09:43:45 7ouPPK0Y
Check disk for NDS Ver0.3ですけど…
断片ファイルの検索がnds/savファイルになってますが
M3 RealはSaveファイルの拡張子が0,1,2なんですよねー
ずーっと断片化してないと思って安心してたけど
全検索してはじめて断片化に気付いた次第。
気付くのが遅かったらセーブが壊れるところだったかも知れない。
マジコンのトラブルは断片化に端を発しているものが多そうだから。

断片化があった場合、断片化ファイルだけをmicroSDの外へ移動し
USB接続を切ったあと再接続して戻してあげると空き領域に
断片化がない状態でコピーされるみたい。もちろん空き容量が
十分あればの話だけど。

Check disk for NDS Ver0.3は使っているうちにだんだん
手放せなくなってきたすごいツールだよ。

557:BlackMoon
07/12/21 16:38:50 jGmKHxn8
そんな拡張子に0とか2とか数字使うマジコンにわざわざ対応する必要ねーよ。
M3Realの方でツールの仕様にあわせろっつーの。
いちいちそんなのに付き合わされてたら開発者は身がもたねーつーの。

少しはこっちの身にもなってみろって。


558:BlackMoon
07/12/21 19:24:52 7ouPPK0Y
>>557
悪かったねぇ

そのツールが今一番必要としているマジコンで使いにくくなってたから
皮肉なもんだなーって感じたから言っただけだよ。

どの道お前の世話にはならんから安心汁。

559:BlackMoon
07/12/21 23:59:44 WfuwbDfL
外見を極限まで高めて厨房の大量取り込みに成功はしたが
技術力が無いから、M3チームは駄目だな
決め打ちパッチだからサポート放置されたら即死だぞ

560:名前は開発中のものです。
07/12/22 01:49:20 JbsPsov5
じゃあどれならいいんだ?

561:名前は開発中のものです。
07/12/22 13:43:58 Otmx5mfl
Moonlighit氏がCheck disk for NDS Ver0.3をアップデートしましたね。
URLリンク(mdxonlinemirror.dyndns.org)

戯言みたいな書き込みにこんなに真面目に対応してくれる人はなかなかいないよ。

技術者って一般的に視野の狭い人が多くてコミュニケーション能力に乏しい。
だから女性にもなかなかモテない。プログラミングで自分を表現するのは得意なのにね。

生の人間相手より見えないちゃんねらー相手にコミュニケーションをとる方が気は楽かも。
でも強度の煽り耐性がなければやってられないでしょう。本当に大したものです。

ある方はマジコンごとにリセット対応するのが面倒なのでマジコンから吸い出した
Romを直接起動しようと考えました。M3 Realなどの場合はこの方法でうまく行くそうです。
moonshellからndsが起動できなくなってかなり立ちますが、もしndsが起動できていたら
このような手法も使えたかも知れません。もちろん定かではありませんが。

まあ仲良くやってくださいよ。

562:名前は開発中のものです。
07/12/22 18:21:08 RDHqMR1H
んじゃ何万人を指して「一般的」というのか教えて

563:名前は開発中のものです。
07/12/22 19:27:35 Otmx5mfl
>>562
明確には提示できないけど、その中にお前が含まれるのは確実。

564:名前は開発中のものです。
07/12/23 01:23:38 aCvi7wW4
2007年12月19日 14:48
メモ。またアクセス規制…うちはOCNなのかなぁ。
後述。Check disk for NDS Ver0.3をアップデートしました。
ページ上部のリンクから辿ってください。

お手数かけますです。
細かい書き込みまで転記して頂いてしまって申し訳ないです。
動作テストなども含め、どなたか存じませんが
私は見ず知らずの人に助けてもらってばかりだなーと思います。(苦笑

checkdiskfornds031.zip
(他にもクリティカルな中身の拡張子があったら教えてください。
なさそうだったらこのままエントリ起こします。)

Version 0.31 2007/12/22
拡張子NDS/SAVに加えて、拡張子0/1/2/3/4/5/6/7/8/9も
断片化チェックをするようにしました。

どうせ過疎スレなのでプログラム関係じゃない話題でも
私は気にしないのですが、けんかしないで…。

565:名前は開発中のものです。
07/12/23 09:43:37 GQn87g8C
ううMoonLight様のRepairMoonShellが
消えていた・・・
もう少し早く気がついていれば。。。
(TДT)

566:名前は開発中のものです。
07/12/23 10:58:47 LaCNw6ob
スロット2起動すればいいんだよ

567:名前は開発中のものです。
07/12/23 13:44:52 vfS66XeO
3Dでタッチした座標にあるポリゴン(トライアングルふたつ)との交差判定をしたいです。
OpenGLでは、gluUnProjectを使って、タッチした座標と向き(マウスレイ)を取得するのですが、
libndsのvideoGLには、これがありません。
代わりになる方法はあるんでしょうか?


568:名前は開発中のものです。
07/12/23 14:32:04 JogT0J4D
>>567
URLリンク(devkitpro.cvs.sourceforge.net)
nds-examples-20071023\Graphics\3D\Misc\Picking\

569:名前は開発中のものです。
07/12/23 16:58:00 9lGG4dEa
wavからrawに変換したものが思ったように再生できません・・・

既に >>93 のサンプルは消えてしまっているようで
もしよければ再度サンプルを置いていただけませんでしょうか?
おねがいします。


570:名前は開発中のものです。
07/12/25 21:45:25 Bx4UTy/Y
>>561
>一般的に視野の狭い人
その定義は如何に

>だから女性にもなかなかモテない。
根拠は何処に

571:名前は開発中のものです。
07/12/25 22:26:19 pmHIaQhz
>>561は、
視野が狭くて、コミュニケーション能力も乏しく、
女性にもモテない、しかも技術力も無い

と、言うことが分かりました。

572:名前は開発中のものです。
07/12/25 22:34:52 QxVRW44c
身に覚えのないことならサラッとスルーした方がいいよ。
くだらんレスに粘着してると身に覚えがあるように見えるよ。

女にモテなくてもお袋さんはおまいを愛してる。
コミュニケーション能力がなくても2ちゃんねるなら弁慶にもなれる。

それで十分じゃね?日本の典型的な内向きの技術屋さんたち(爆)

573:名前は開発中のものです。
07/12/25 22:54:42 eieLjBGr
きょうも つりばりが いっぱいだ!

574:名前は開発中のものです。
07/12/28 20:40:16 y/ZeLQkU
Moonlightさんにお作りいただいたCheck disk for NDS Ver0.3、M3Realで使わせてもらってます。
その中で気が付いたことがあるのですが、0バイトのファイルが書き込まれた場合、
ディレクトリエントリとクラスタのサイズが違うというメッセージが出て致命的エラーになるようです。
なぜこれがわかったかというとM3Realのでチートの設定でチート項目を何もチェックせずに
戻るとゲームのIDのファイル名で0バイトのファイルを作るからです。
1バイトでも中にデータがある場合は問題ありません。
また、この0バイトのファイルを削除すると致命的エラーはなくなります。

あとこれは贅沢なのですが、M3RealでGBAのリアルタイムセーブを行うとis0という拡張子のセーブファイルができます。
もし今後マルチセーブが可能になるとis1、is2とかになるのかも知れません。
最近は書き込みをするファイルはすべて要注意と思うようになってきました。
M3Real用に拡張子0~9までセーブファイルと認識していただけたので便乗して対応いただけたらと思いましたが、全ファイルをチェックしても然程時間が掛からない秀逸なソフトですので、全ファイルチェックだけで良いのかも知れませんね。
すべてに対応していたらきりがありませんから。

あと、やはり8GBのmicroSDでライトアクセス時間のベンチマークを取ると再起不能な
状態で壊れてしまうものなのでしょうか?恐いので試してませんがもし可能性がある程度の
事でしたら自己責任でチャレンジしてみたいと思います。

575:Moonlight
07/12/28 21:31:12 r6XOZjDh
>>574

テストありがとうございます。IS0~IS9を追加したVer0.32をアップしました。
NDS(いわゆるgba_nds_fat)で作った0byteファイルと、Windowsで作った0byteファイルの挙動が違うなんてブービートラップですー(笑
NDSに限らずWindowsでも書き込みは危ないです。たとえば、ユーザが暇してる(画面見てるとかの)空き時間を使ってセーブしようとすると、セーブしている瞬間に電源切られたり、カードを抜かれたりします。ライトバックキャッシュは危険よねって話。
で、それはそれとして、SDHC対応は私が自信を持って大丈夫と確信していない(SDHCの仕様書を入手していない)ので未確定です。
いまのところ本気でフォーマット不能なまでに壊れたという報告は頂いていませんが、いまのところは、ってだけかもしれないので。(チキン(笑


576:名前は開発中のものです。
07/12/28 21:48:28 naoJX6xE
>>574
>>561さんこんばんは

577:名前は開発中のものです。
07/12/29 04:38:58 Z96Jd6yV
>>574
本当にエラーなのかも。
一応、PCでスキャンディスクかけてみて確かめるといい。

サイズが0バイトなのに、1クラスタ割り当てちゃってるとか。
もしもそうだとすると、ファイルシステム(libfat)の不具合ということになるね。


あと、マジコンユーザーにはメディアの消耗を気にしてデフラグしない人が多い。
それを考えると、ライトアクセスのベンチマークやる人は勇者です。
デフラグよりもっと消耗激しいかも。もちろん、ベンチマークの内容によるけどね。

578:名前は開発中のものです。
07/12/29 09:47:35 PDHcBllJ
Moonlightさん、早速のご対応いただきましてありがとうございました。
当該エラーは無事キャンセルされ致命的エラーを回避できました。
実はこの0バイトファイルができる過程でM3Real側に動作上のバグがあるようで
一度何かのチート項目を設定して戻ると、次回チート項目を全クリアできない。
即ち、最低一項目のチート項目を選択しなければ状態が保存されないようになっています。
つまり0バイトのファイルは作れないように意図されている感じです。
再度チートファイルを選択し直すとすべてのチート項目がクリアされた状態になります。
ところがこの状態からチート設定画面に行き何もしないで戻ってくると0バイト
ファイルができているという始末です。非常にバグ臭い感じがしています。

>>577
FATにエントリされている以上、他のファイル操作の際には使用されることもないので
問題はないと思います。そのエントリは0バイトファイルを削除すると消えますし。
もし消えていなければCheck disk for NDSでひっかかっているはずです。
実害はないと思いますよ。

書き込みのベンチマークはそれほど多くの場所に書き込みしているようでは
ありませんし8GBは恐いのでやっていませんでしたが、2GBまでのmicroSDでは
いくつか試してみました。テスト中に電源を切ったりしなければ大丈夫でしょう。

おそらく8GBの結果は6GBとあまり変わらないと思います。リードでのベンチを
やった結果では6GBとほとんど同じでした。
しかしM3RealのDLDIドライバの性能はすごいですね。他のマジコンでのベンチ
テスト結果が哀れに思います。DSTTに唯一負けてない領域でしょうか。

579:Moonlight
07/12/29 20:25:14 pw4v1uVO
>>578

どういたしましてですー。
0byteファイルの作り方については微妙なところですが、FATはMicroSoftが作ったのでDOS/Windowsの挙動が正しいんだと思います。
(あれ?MicroSoftが作ったのはLFNだけでしたっけ?)
といっても、重複するわけでもないですし、削除すればエントリとクラスタリンクはちゃんと消えるので、512byteくらいなら余分に使ったところで問題は無いと思います。
チート設定で云々はとてもバグっぽいですが、あまり致命的じゃなさそうなので直さないかもですね。

>DSTTに唯一負けてない領域でしょうか。
とか書くから煽りだと思われるんじゃないかなーと余計なことを心配してみたり。(苦笑
実際、ハードのポテンシャルは高くてもその性能を生かせているとはいえないと思う…けど私には関係ないからどうでもいいやー。(ゲームとか興味ないので…(酷い(苦笑

ライトベンチマークでは、128kbyte読み込んで32kbyte書き込んで1024kbyte書き込んで128kbyte書き込む処理を8回しますので、合計10MByte分くらいアクセスします。
MP3ファイル3つ分くらいなのでそんなに負担にはならないと思いますが、計測中に電源切られるととても困るのでめいっぱい脅してます。(笑


580:名前は開発中のものです。
07/12/30 00:56:55 5BJqZ1d6
wavからrawに変換したものがどうしても雑音がかったものになってしまいます。
Moonlightさん、申し訳ないのですが >>93 のサンプルを再度アップしていただけませんでしょうか?
よろしくおねがいいたします。


581:名前は開発中のものです。
07/12/30 02:29:09 /ePZFksH
エイリアスノイズが載ってるんだと思うので
変換後のサンプリング周波数*0.5以上の周波数を
事前にフィルタしておくと良いかも

582:tm
07/12/30 16:20:27 MsSLbwJq
遅ばせながら

file_2.bmpとfolder.bmpがこんなに問題になってたとは……
もうしわけないです



583:名前は開発中のものです。
07/12/31 01:13:00 rN7PTsQ5
まだやってんのかと言われそうだけど、TTAの再生できました。
>>93で、SOUND_ONE_SHOTが使われていることに気づいてMorningTimerのソースを見直してみました。
ダブルバッファリングのためにふたつのチャンネルを交互に鳴らしてるんですね。
SOUND_REPEATで鳴らしっぱなしにしてバッファの前半と後半を交互に書き換えればいいと思ってました。
# 実際に無圧縮の*.wavは、それでもノイズ無しで鳴っていたので
Moonshellさんありがとう。

そんなチラシ裏

584:名前は開発中のものです。
07/12/31 01:26:20 M5kyCS2V
はじめまして。
devkitProのexampleにある2D/BG_Rotationを変更しながら試行錯誤して
いるのですが、bmp2binを使って変換した画像ファイルを表示させようとすると
画像の下1/3くらいが真っ黒になって切れて表示されてしまいます。

元画像 foo.bmp 256x192 24bits (filesize: 144KB)
これをbmp2binの-dオプションをつけ、16bitsのbin形式に変換
変換後 foo.bin 16bits (filesize: 96KB)

以下ソースの一部です

videoSetMode(MODE_5_2D | DISPLAY_BG3_ACTIVE);
vramSetMainBanks( VRAM_A_MAIN_BG_0x06000000, VRAM_B_LCD,
VRAM_C_SUB_BG , VRAM_D_LCD);
BG3_CR = BG_BMP16_256x256;
BG3_XDX = 1 << 8;
BG3_XDY = 0;
BG3_YDX = 0;
BG3_YDY = 1 << 8;
//BG3_CX = 0;
//BG3_CY = 32 << 8;

dmaCopy(foo_bin, BG_GFX, 256*256);

BG3_XDXのあたりかなあと思い、値を変えてみたものの、
画像が引き伸ばされた感じになっただけでした・・



585:名前は開発中のものです。
07/12/31 01:52:33 rN7PTsQ5
>>584
libnds-20071023使ってるけど、BG_BMP16_256x256の値がこうなってました。
---
#define BG_BMP16_256x256 (BG_RS_32x32 | BG_256_COLOR | BIT(2))
---
BG_256_COLORが入ってます。
あと、16ビットカラーだったら、dmaCopyの3番目の引数は256x256x2になると思います。

586:584
07/12/31 01:54:38 M5kyCS2V
いちおう解決しました。
dmaCopy(foo_bin, BG_GFX, 512*256);
dmaCopyの3番目の引数はファイルサイズでしたorz

BG3_CR = BG_BMP16_256x256;
こっちの256x256は画像の解像度ということでよいのでしょうか?

また、画像を利用するに当たりbmpをbinにするのと、
png+gritを変換する方法がありますが、これに何か違いってありますか?


587:584
07/12/31 02:03:40 M5kyCS2V
>>585さん
すいません。上書き込んでるときにレスがあったみたいで
一部コメントの内容が重複してしまいました。

>256*256*2の部分、わかりました。ありがとうございますm(_ _)m

ところで、
>BG_256_COLORが入ってます。
はどういった意味があるんでしょうか?

#define BG_256_COLOR (bit(7))

となってますが、(BG_RS_32x32 | BG_256_COLOR | BIT(2)) が
16bitsの解像度が256x256の画像を使う宣言みたいなものと
覚えておけばよいでしょうか?


588:584
07/12/31 02:07:44 M5kyCS2V
すいません、ファイルサイズじゃなくて解像度256x256に1ドットあたり
2バイトなのでさらにx2したから256*256*2ですね

589:Moonlight
07/12/31 04:45:20 GrGVceoQ
>>580

sndtest.zipを再アップしました。
あ、これは例えば符号付き8bitリニアPCMと符号無し8bitリニアPCMを間違えてる人には役に立つかもしれませんが、エイリアスノイズ対策には役に立ちません。
符号あり/なしを間違えたときは音にならないくらいノイズが乗りますが、エイリアスノイズならチリチリとノイズが乗るって感じだと思います。
リアルタイムには(CPUパワー的に)フィルタかけられないので、事前にフィルタかけるか線形補間で誤魔化すかだと思います。
線形補間でエイリアスノイズを誤魔化すならMorningTimerのARM9のdllsound.cppのDLLSound_Update関数が…役に立たなそう。(笑

>>582

実は自分でテストしてないので実感がありません。
CheckDiskでは怖いので厳重にエラー検査しますが、実際はそんなに問題じゃないんじゃないかなーとか適当なこと書いてみたり。(不遜ですね(苦笑

>>583

strpcm.cppを書いた頃は、44.1kHzからの周波数変換をNDSのサウンドチップに任せていたので、クロックズレが発生していたのですが、32768Hzで直接再生できるようになったんだからもしかしたら今ならSOUND_REPEATでもいけるのかもです。
周波数にもよりますがクロックズレが原因の微少なプチノイズは50秒に一回くらい発生していると思います。
で、SOUND_REPEATだと発生したら(リピート間隔毎に)ずっと発生し続けますが、SOUND_ONE_SHOTなら次のズレが発生するまでノイズが乗りません。なのでSOUND_ONE_SHOTを使いました。
(1サンプル以下の累積誤差補正コードを自前で書くなら大丈夫だと思いますがめんどくさくてやってられなーい。(笑))
なにはともあれ、ソースが役に立ったみたいで本当に嬉しいです。


590:Moonlight
07/12/31 04:45:55 GrGVceoQ
>>587

私もあまり詳しくはないのですが、BG設定は同じビットでも他のビットの設定によって意味が変わってくることがありました。
GBAからむりやり拡張したって感じがします。
8bitカラーモードのときと15bitカラーモードのときでは、同じビットでも意味が違うという感じで。(BGサイズと拡張パレットの設定ビットとかめちゃくちゃだと思うんですけどどうなんでしょうか(苦笑
ちなみに、例えばビットマップBGに256x256画像を読み込んでも実際には256x192分しか見えませんが、縦オフセットを徐々に変えると手軽にスクロール効果を表現できたりします。ランダムに細かく変えると地震っぽいとか。
チラ裏というか余談失礼しましたです。


591:583
07/12/31 17:46:55 rN7PTsQ5
TTAに続いてoggに挑戦。

libogg+libvorbisが重い。

tremorのことを思い出す。早速導入。

再生の始めが早送りに聞こえる。後に期待した音が流れる。

日暮れ。←いまここ

そば食べる。

今まで、ぶちぶち言ってたのに困ってたんですが、今度は逆に早送り・・・。
誰か他にogg(tremor)いじってませんか?


592:Moonlight
07/12/31 23:51:45 kzjZELj8
>>591

もしかしたらソース見せてもらえたら横槍入れられるかもと思ってみたり…

593:583
08/01/01 10:45:53 NNk1mtua
>>592
URLリンク(www.uploda.org)
遅くなりました。よろしくお願いします。


594:名前は開発中のものです。
08/01/01 15:24:49 T3NYT7jt
あけましておめでとう。みなさん今年もよろしく!

DSのプログラムを初めて思ったのは、面白いことをするためには
どうしてもハードウェアの制作が必要になるんだな、ということです。
例えばGPSとかカメラとか、そういったのをDSに付けたくなってしまう。

俺はずっとソフトウェアしかやってこなかったので、
初心者の気分でハードウェアの勉強をしてみようかと思うんだけど
そういうときに最初に行くべきスレッドってどこでしょう?

今年、DSの自作プログラムの幅が広がれば嬉しいな

595:名前は開発中のものです。
08/01/01 21:24:21 +s8QW2Sx
電気・電子板のARMスレが良いんじゃなかろうか

スレリンク(denki板)

596:名前は開発中のものです。
08/01/01 22:38:14 Rbh21JyU
何かつけたいならCPLD覚えた方がいいんじゃなかろうか

597:Moonlight
08/01/01 23:06:37 Ftb+OQMO
>>593

割り込み内で直接デコードしちゃうのは危険ですー。
っていうほど危険じゃないのかも…。私が調べたときは、割り込み時にユーザスタックに切り替えてくれない割り込みハンドラだったので、スタックが極端に少なかったです。(今は大丈夫なのかも…)
とりあえずデコードはできているみたいなので大丈夫と仮定して次に。

16384Hzモノラル16bitの4096サンプル単位で再生しているようにみえました。
4096サンプルの演奏時間は0.25秒ですが、負荷計測してみたところ最初の4096サンプルのデコードが重くて処理落ちしているんじゃないかと思いました。
最初の4096サンプルのデコード(while(reedNeed>0)ループの所用時間)が209.268msで、次が22.791ms、37.251ms、22.740ms、37.393ms、という感じでした。
最初のフレームでも40ms残っているので間に合っているような気もしますが、とりあえず重いのは確かなのでリングバッファで8フレームくらい先読みすると(例えば今後他に重い処理を入れても平気になって)いいんじゃないかと思いました。

ov_read関数呼び出しの直後に
>volatile int i; for(i=0;i<0x10000;i++);
とか入れて、故意に重くしてみたときの音飛びと似ているように聞こえました。

最初の1フレームだけ極端に重いので、リングバッファじゃなくダブルバッファだけでも入れてみて様子を見たり…。(対処療法的なので誉められた対応ではないのですがテストで(笑))


598:名前は開発中のものです。
08/01/01 23:19:13 6ptbDBuA
あけおめです。

>>594
DSの場合、Wi-Fiが使えるので無線経由でPCに接続したカメラや
GPSの情報取得してもおもしろいかもね

599:593
08/01/02 00:19:35 xkC7Ea9V
>>597
添削ありがとうございます。
再生データの形式を書き忘れていたのですが、16384Hz/モノラル/16ビットで正解です。

割り込みと処理落ちというキーワードから見直しをしてみました。
FIFOハンドラのループで複数のコマンドがキューに乗ったときに連続して処理して、
間髪入れずに鳴らすコマンドを投げてしまいます(と、指差ししながら脳内検証)。

デコードの処理をハンドラから出してみたところ、現象は収まりました。
ただ、初回デコードが時間がかかってる感じが少しします。
対策として、
ダミーのデコード(鳴らさない)

ov_*_seek系のAPIで先頭シークに戻す

改めて再生
ってなことをしようと思ったんですが、ov_pcm_seek( &vf, 0 )が効いてる気がしない様子。
あしたもがんばるぞorz

600:名前は開発中のものです。
08/01/02 08:06:49 tTTSdt9O
みなさんいろいろとありがとう。
実は加古英児さんのサイトを見ていて触発されたんです。
URLリンク(www.kako.com)
このページを見て、小学生のころ電子工作(とは名ばかりのはんだ付けキット)を
やっていた記憶が鮮やかによみがえり、本格的にやりたくなりました。

だからARM系やCPLDだけじゃなくて、1から回路を作って楽しみたいんです。
そういうときの入門スレってどこだろう??
(それはそれとしてWi-Fiは面白そう、ありがとう!)

601:名前は開発中のものです。
08/01/02 09:51:15 6mZ1FxBS
このスレの住人は、向上心があっていいなw

602:593
08/01/02 11:10:58 xkC7Ea9V
>>599の自己レスです。

libtremorのCFLAGSがおかしかった模様。
誤: $(INCLUDE) -DARM9 -DBYTE_ORDER=LITTLE_ENDIAN
正: $(INCLUDE) -DARM9 -DLITTLE_ENDIAN -DBYTE_ORDER=LITTLE_ENDIAN
正の状態でビルドしたライブラリをリンクしたら、ov_*_seek系APIが通るようになりました。
ov_*_seekが使えないと、ov_*_totalも使えないのでいろいろ困ってました。
oggはBGM途中でのリピートもできるので重宝できるはず。
てことで正月半分オワタorz


603:Moonlight
08/01/02 14:11:11 Af6IKbG3
支離滅裂な横槍失礼。

>>602

なんかスタック壊れてておかしいなーと思っていたら、シークのコールバック関数の引数が32bitだったみたいです。
extern int ovs_seek( void *datasource, size_t offset, int whence );
じゃなくて、
extern int ovs_seek( void *datasource, ogg_int64_t offset, int whence );
だと思います…こういうのはエラーが出ないのかなぁ。
ここを修正すれば動くかなーと思っていたのですが、まだなにかおかしくて原因探索…していました。
御自分で修正してシークできるようになっていたんですね。おめでとです。参考までにどこらへんを直したのか教えてくださいです。
ところで、ovstream.cのovs_seek関数、pStream->srcseekの値がころころ変わったり、呼び出されるたびに0になっていたりしていませんでしたか?
もう直っているとのことなので蛇足なのですがあっ64bitメモリから32bit変数をLittleEndianで読み込んだときにSigned/Unsigned不整合で0xffffffffと0x00000000が…。
独り言で長文書き込んですいませんです。ではまた。


604:593
08/01/02 15:49:48 xkC7Ea9V
>>603
時系列に書いていきます。

まず、>>602のCFLAGS(誤)でlibtremorを作ります。
union magicはLITTLE_ENDIAN側を無条件に使用するようにします。
このライブラリで>>599まで進みます。

次に、ovs_seekのoffsetの問題を直します。
ソースを追跡していて、size_t型で受け取ると値がおかしくなりました。
これが原因でseekableが許可されませんでした。
ogg_int64_t型にすると正しい値になりました。
すると今度はvorvisfile.cの_get_next_page関数のループで抜けません。

ここで、lowmem_branchがあることを知ります。
lowmem_branchをビルドする際に、CFLAGS(正)で通すことできました。
これを通常ブランチに適用して、自分のプログラムに組み込みました。
その結果が>>602です。
64ビット値がスタックに乗ると、どうなるんだっけ?とうっすら考えたんですが、
明確な答えを見つけられなかったんですよね。

結論、ovs_seek直しましたorz

605:名前は開発中のものです。
08/01/02 15:57:05 6ig8IlcH
NDS開発云々の前に凡ミスが多くね

606:名前は開発中のものです。
08/01/02 16:28:43 3kcyZQN4
なれない環境なんてそんなもんだよ

607:Moonlight
08/01/02 23:30:28 w4bCClKX
>>604

あーフラグの偽でしたか。私もoggライブラリ移植するときに引っかかりました。charのsigned/unsignedとか。
misc.hを直接書き換えて、LittleEndianしか通らないようにしました。(手抜き(笑
私はlowmem_branchをマージしたのですがtrunkしかないしメモリリークバグもあるしであまり好きじゃないです。
ovs_seekを直す。結局それが一番近道だと思います。(笑
わざわざ開発状況の報告をさせてしまってどうもでした。またなにか躓いたら(役に立てるかは別としてっ!(笑))訊いてくださいね。でわでは。


608:名前は開発中のものです。
08/01/05 00:43:36 /+yjt+NH
pngを読み込んでspriteで表示する簡易なサンプルとかありませんでしょうか。
めらまん氏のwikiは見たのですが何をやっているのか理解できず。
サンプルのspritebitmapを弄ってますがどうにも・・・

609:名前は開発中のものです。
08/01/05 00:50:22 9PNTe7K3
pngじゃ無いとダメなの?


610:608
08/01/05 00:58:17 /+yjt+NH
>>609
Tileでpng使ってたもので、そのまま使えるかなとか思っておりましたが
spriteってやっぱりbmpでやるものなんでしょうか?

611:608
08/01/05 01:26:12 9PNTe7K3
>>609
自分はbmpをCソースに書き出して使ってるのでどっちでもいいと思ってる。
pngは展開しないといけないので、特に理由が無い限り使わないです。面倒だし。

612:名前は開発中のものです。
08/01/05 11:34:13 c8GGWOxF
>>611=609
お前の番号ずれてないか


613:Moonlight
08/01/05 20:15:53 j7N7Qhly
>>608

もし私なら、
・画像ファイルからbinに変換した画像の扱いに慣れるまでビットマップでいじくってみる。スプライトのことはとりあえず忘れる。
・DLDIドライバを組み込んで、半角英数10行くらいのテキストファイルを表示してみる。
・色深度固定(例えば24bitとか)のbmpファイルをディスクから読み込んで、15bitに自前で変換して表示してみる。
・色深度自由な汎用bmpライブラリを組んでみる。
・libpngを組み込んで、色深度固定のpngファイルを読み込んで、15bitビットマップに変換して表示してみる。
・色深度自由な(アルファチャネルとかを含む)pngライブラリを組むかどうかはやる気と気分次第。
・この頃になるとビットマップの扱いに充分慣れていると思うので、スプライトで表示してみる。8bitパレットを扱うかはやる気次第。
という感じで、進んでいくと思います。あくまで、私ならですが参考になれば幸いです。


614:あ
08/01/08 20:56:16 m4lL5SxZ
>>1~1000
おk

615:名前は開発中のものです。
08/01/11 16:48:48 IDnFxZnm
背景画像の上にフォントを表示させる場合、
フォントの一部の色を透過させて背景画像が見えるようにしたいのですが
フォントの描画はスプライトで行うのが一般的でしょうか?



616:名前は開発中のものです。
08/01/11 17:00:08 lysu1ST4
Check disk for NDS EWIN2でタッチパネルが動作しません。(T_T)
対応していただけないでしょうか・・・

617:Moonlight
08/01/11 18:37:48 858Jtf0V
>>615

もちろんスプライトでもできますが、背景BGと文字BGを重ねるほうが楽だと思います。日本語フォントを扱うならスプライトでどうこうできる量ではないので。
色を透過させるだけならこれでできますが、影を半透明でとかアンチエイリアスフォントだとかになったら、ビットマップモードしかないと思います。
最近わたしはもうめんどくさいので、ビットマップモード&自前合成ばっかりです。(Windowsと似た感覚で扱えるので)

>>616

EWIN2は…。ごめんなさい、古すぎてもういいやって感じがしています。(不遜でごめんなさいです。
特にこの機能だけ使いたいからメニューでAボタン押したらこれ、Bボタンはこれにしてほしい、というくらいなら対応できます。


618:名前は開発中のものです。
08/01/11 20:34:41 gV4ausxY
>>617

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




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

620:615
08/01/14 14:36:28 gI9YVpPo
>>617

ありがとうございます。
とりあえずBGを2枚重ねて処理する方法を試してみます。


621:615
08/01/15 21:21:10 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) );


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch