NintendoDS(NDS)非公式開発 Part3 at GAMEDEV
[2ch|▼Menu]
[前50を表示]
600:名前は開発中のものです。
09/02/04 20:51:33 eHmLR4GD
>>599
マルチ乙

601:名前は開発中のものです。
09/02/05 23:23:00 VNiyRODT
すみません、質問です。
一部をUVマップかけた3Dデータをimd、icaにはできるんですが、
その後コンバートすると動かなくなっちゃうんです。

テクスチャ全部剥がす→動く
テクスチャべた貼り→動く

と言う結果から、原因はUVマッピングか、もしくは
一つのTGAファイル(4x4)から手足など
5箇所にテクスチャ貼り付けてる事かなあ、と思うんですけど、
イマイチ上手くいきません。

皆さんのオススメのテクスチャの張り方って、教えていただけませんか。

602:名前は開発中のものです。
09/02/05 23:44:19 m2cCNN4B
>>601
まずsageろ

603:名前は開発中のものです。
09/02/06 01:55:13 ryNuAw6I
>>602
すんませんした。以後気をつけます。

604:名前は開発中のものです。
09/02/06 18:16:12 8OIh0Fer
>>601
imdとかicaがよーわからんけど、テクスチャなら
TXTURE_PACK(floattot16(UV.u*サイズ,UV.v*サイズ))
を頂点情報とかと一緒にcalllistにつっこんでglCallListで表示できてるよ。

NDSさわりはじめて数ヶ月なんでこれがオススメかどーかわからん。

605:名前は開発中のものです。
09/02/06 21:11:29 0ZspIps4
FATの使い方に関して質問です


逆引きNDSプログラミング - ファイル入出力
URLリンク(smilelab.sakura.ne.jp)

の通りにやってるんですが、fatInitDefault() が0を返してどうにもできません。
何を見直せばいいんでしょうか?Devkit1.4.9 で作って Desmume0.80で確認しています

606:名前は開発中のものです。
09/02/06 21:28:50 m+T+VYa1
>>605
実機じゃないとファイル関係はうまく作動しないことが多い。


607:名前は開発中のものです。
09/02/06 22:05:06 0ZspIps4
なるほど、ありがとうございます
Devkitをアップデートする前は動いていたので、何かあるのかと思ったのですが
R4からは動いたのでとりあえずスルーする事にします。

608:名前は開発中のものです。
09/02/07 20:08:04 yyith2Ir
>>601
使っている3Dエンジンとかの前提条件が抜けてるw
もしかして公式?

おいらは最近NitroEngineの評価を始めたが、
2画面3Dとかもサポートしててなかなかいい具合だ
ただしモデル変換ツールがMD2限定というのが難点
MQOや3DSとかからの変換は自力か。。。orz

609:名前は開発中のものです。
09/02/08 05:30:26 M/ciWl82
結局のところ4M以上のROMを作るのってできないんでしょうか…

610:名前は開発中のものです。
09/02/08 12:55:32 E6PmFadU
無理らしい…


611:名前は開発中のものです。
09/02/08 13:03:07 kcHdZlRl
自分で作ったROMのサイズは7MBあった。
まぁ一度に扱えるサイズは4MB以内だけれども。

612:名前は開発中のものです。
09/02/08 13:46:58 Ig9xpOLl
4MByte以上のROMは存在するよ。
homebrewで4MByteをオーバーしているのは少ないけど。
ただ、メモリの都合で3.8MByteくらいまでしかメモリにロードできないだけだと思う。
GBAスロットを使えばもっと増えると思うけど、そうする必要も特に感じない。
そのメモリをうまく利用すれば、何とかなると思うんだが。
どうしても足りないときは色々不都合があるけど外部に一時ファイルを用意して使ってもいいし。


613:名前は開発中のものです。
09/02/08 16:10:03 E6PmFadU
>>611
方法キボン!
今はnitroFS使って見かけ上だけ4M超やってるけど出来れば素の巨大ROM作りたい

614:名前は開発中のものです。
09/02/08 16:38:19 kcHdZlRl
>613
いや、ROMのサイズ質問だったから、そう答えただけで〜
実際やってることは、たぶん君と同じような感じ。
(nitroFSライブラリは使ったこと無いので憶測)
自分はndstoolでndsにデータファイル追加して、GBAカセット領域にマッピングされる環境ならソコからリード。
GBAカセット領域にマッピングされない環境なら、DLDIで自分自身のndsにファイルアクセスしてデータファイル取り出してる。
だから、一度に扱えるサイズは4MB以内だけれども。


615:名前は開発中のものです。
09/02/08 22:16:52 YeinDRWX
>>DLDIで自分自身のndsにファイルアクセスしてデータファイル取り出してる

無茶言うな。起動する度に全NDSファイルのMD5検索でもする気か?
32bit程度のID埋め込みさえ、100個もNDSファイルがあれば無理だろうな。


616:名前は開発中のものです。
09/02/09 00:17:11 CV9xxtj9
nitroで自分自身のndsにアクセスやってるよ。
某テトリスがROM名変更すると動かなくなってたのはそれのせい。

617:名前は開発中のものです。
09/02/09 02:25:43 42hGD2U7
やっぱりできないんですね…
一応nitroFSとかは見てたんですが、結局DLDIで読み込んでるのがすっきりしなくて。
これができない理由、自分で調べても良く理解できなかったんですが、
DSのプロテクトの関係でデモを動作させるモードで動いてるとかそんな理解でいいんでしょうか。

618:名前は開発中のものです。
09/02/09 15:58:35 LCQ+tlqH
仕方ないね

619:名前は開発中のものです。
09/02/09 23:11:14 Oda8IwPH
615ー616の書き込み見たら、NASAの宇宙で使えるボールペン開発と一方ロシアは鉛筆を・・・の話を思い出したw

620:名前は開発中のものです。
09/02/09 23:30:54 CV9xxtj9
>>617
出来ない理由はおそらくlibNDS開発チームがそこを実装するより
FATの方が色々出来て便利じゃね?と考えたからだと推測
デモ云々みたいな制限は無いのでlibNDS自作するくらいの気合があれば技術的には可能のはず

621:名前は開発中のものです。
09/02/10 00:55:09 ETqs47vs
そりゃどうも。

622:名前は開発中のものです。
09/02/10 07:30:07 2ip1j0og
>>620
あ、可能なんですか…。
まあ市販のROMが動いてるみたいですし、そりゃそうか。
また自分のレベルがあがったら再挑戦しようと思います。
リンカとかその辺も勉強しなきゃいけなさそうで難しいです。

でも現状データの置き場に困りますよね。
ルートにおいてくれって書いとけばいいんでしょうけど。

623:608
09/02/11 05:30:50 QkgVk7QO
エミュでしか確認できてないけどとりあえずMQOから変換が
できたっぽいので、NitroEngine評価中の同志へ。
URLリンク(www1.axfc.net)
生成されているのはDISPLAYLISTなので、NitroEngine以外
でも使えるかも?

時間と知識不足でテクスチャとシェーディングは未対応。
Normalの扱いもちょっと疑問な点があるので、誰かコード
レビューしてくれるとありがたい。

じゃ、おやすみ〜zzz

624:名前は開発中のものです。
09/02/11 18:49:37 xUUFvkK/
NDSでいうスプライトとはDirectXのようなバッファの好きな所に好きなだけ画像を描画できる機能では無く、
毎フレーム単一の画像だけ格納して拡大や縮小を加えて表示するレイヤーのようなものですか?

625:名前は開発中のものです。
09/02/11 19:32:23 xUUFvkK/
わかりにくくて済みません。
つまりNDSにもイメージを描画する関数、
draw(Image,x,y,src_x,src_y,width,height,rotation,zoom_x,zoom_y)
のようなものがあるのかと思ったのですが、
どうもチュートリアル等を見ていると、
バンクと言われるVRAMに画像データを書き込んだ後、
拡大や回転を司るレジスタに値を設定してるだけです。
レジスタを設定したあと、肝心のバッファにデータを書き込んでいる節がありません。
ということは、バンクの画像は1フレームごとに呼び出される何らかの関数の中で画面に反映され、
ハードウェアの拡大回転機能を利用する場合は、
1フレームで描画できるスプライトの数はバンク数に制限されるということでしょうか。

626:608
09/02/11 19:41:29 hRzOTkDt
>>624-625
・レイヤーは複数持てる
・レイヤーのサイズは決められたサイズから選ぶしかない
・画像の格納場所とレイヤーとは別途関連付けが必要
という前提のもと、後者の理解でOK

直接VRAM描画もできるけど、アクションゲームとかを
作るのならスプライトを活用するべき。

あとチュートリアルより、nds-exampleのコードを読む方が
理解は早いと思う。


627:名前は開発中のものです。
09/02/11 20:04:51 xUUFvkK/
>>626
ありがとうございます。
無数にスプライトを描画したいときは自前でVRAMに描けばいいのですね。
nds-exampleも読んでみます。

628:名前は開発中のものです。
09/02/11 20:46:05 aJfz9AvO
sprite.h に便利な構造体が用意されてて変更後に
updateOAM();で実際の画面に反映されますね

私もスプライトダブラーなるものを最近知って驚嘆した初心者ですが
VRAMに直接書くなら、もうスプライトじゃなくないですか??

629:名前は開発中のものです。
09/02/11 21:28:32 dewdho4k
OAMってObjectAttributeMemoryか
任天ハードはスプライトをオブジェクトって言うんだよな
懐かしい

630:名前は開発中のものです。
09/02/11 22:39:29 vF0LLI1x
市販のゲームでは、12×12ドットぐらいの大きさのフォントが
よく使われているみたいだけど・・・
たとえば↓のスクリーンショット
URLリンク(www.nintendo.co.jp)

これってどうやってきれいにならべているのかな。
タイルは8x8がベースだから、8×8ドットの文字や16×16ドットの
文字はきれいに並べられるけど、こんな中途半端なサイズ文字を
きれいに並べるには、ビットマップBGに直接ドットを書き込む
しかないのか?

631:名前は開発中のものです。
09/02/11 22:53:35 V3TsDlgP
というかさ、BG使うとしても日本語フォント全部VRAMに突っ込むわけにはいかないから
結局直接書き込まなきゃいけない罠

632:名前は開発中のものです。
09/02/12 00:44:08 ez10fTHg
>>624
同じところで引っかかっとるな。
128個以上スプライトが出る想定なら
スプライトダブラでぐぐると良いらしい。
GBAで弾幕出してる先駆者がいます。
直接VRAMに描画すると遅くてお話にならない。



633:名前は開発中のものです。
09/02/12 01:02:37 xVkvaN1L
弾幕といえば東方

634:名前は開発中のものです。
09/02/12 01:30:17 EH35Vigu
久々にライブラリ周りを更新したら
エラーやらウォーニング出まくりで絶賛修正中なのですが、
ATTR1_FLIP_X や ATTR1_FLIP_Y はどこで設定すればいいのでしょうか?

ヘッダを見る限り、oamSet() には
それらしいパラメータを渡せる箇所あるようには思えませんでした

635:634
09/02/12 01:49:57 EH35Vigu
色々考えて個人的に答えらしきものを出したのですが、
これで本当にいいのか非常に判断に困っています。

pSpriteEntry *pOam = &oamMain.oamMemory;
pOam[ 0 ]->attribute[ 1 ] |= ATTR1_FLIP_X;

これで一応反転は確認できましたが、
他に方法がありましたらそのご教授のほどお願いいたします。

636:名前は開発中のものです。
09/02/12 02:54:54 o/Uy33/C
(´・ω・) 知らんがな

637:608
09/02/13 01:22:02 Ienu2n/m
>>623
MQO_2_BIN.cppの245行目と345行目、_v[a]に代入している
point[a]をpoint[2-a]に要修正orz


638:608
09/02/14 00:11:32 8cZ2bk/l
とりあえずテクスチャとシェーディングにも対応できた。
URLリンク(www1.axfc.net)
テクスチャはシングルのみ対応なので、必要に応じて
ソースを弄って欲しい。


639:名前は開発中のものです。
09/02/14 00:18:09 hXgxPfxx
ポリゴンは全くわからんが乙

640:名前は開発中のものです。
09/02/16 16:10:36 D6f4gD/M
東方
URLリンク(www4.uploader.jp)
URLリンク(www4.uploader.jp)
URLリンク(www4.uploader.jp)
URLリンク(www4.uploader.jp)

641:名前は開発中のものです。
09/02/16 19:01:37 W0HG2SDf
PSPでビーマニのようなゲームを作る【5曲目】
スレリンク(gameurawaza板)


ここでDSでBMSって話が出てたけど、
性能的には可能なのかね。

642:名前は開発中のものです。
09/02/16 20:06:51 9MszuW7D
あらかじめ復号して良いのであれば余裕
そのままだと無理

643:名前は開発中のものです。
09/02/16 21:15:32 gKFMF8Ae
なんで普通に描画する関数無いの?
DirectXみたいに2D描画をハードウェアで高速化できないの?

644:名前は開発中のものです。
09/02/16 21:22:20 9R2tMRhy
ハードウェアで高速に描画するためのスプライトやBGなんじゃないのか
あとメモリ節約

645:名前は開発中のものです。
09/02/16 23:31:37 +xvha/Ch
マジで?

646:名前は開発中のものです。
09/02/16 23:36:57 TTXzFhmk
携帯機でリソース足りないから。
つうか今のDirectGraphicsって2D描画も全部3Dポリゴンで
仮想的に対応してるんじゃなかったっけ?

647:名前は開発中のものです。
09/02/17 00:19:39 glRJZgCh
そうだよ
DSは2D用の高速エンジン積めばいいのに

648:名前は開発中のものです。
09/02/17 00:23:49 cJCVLpBA
( ゚д゚)ポカーン

649:名前は開発中のものです。
09/02/17 00:52:59 lxCWJsYg
そもそもハードの設計思想がPCやPSPとは違うんで、
そういう系統のプログラミングをしたければ、
そっちに走るしかない。

650:名前は開発中のものです。
09/02/17 06:40:17 98N4Azzj
つかむしろこの制限が楽しくてやってる人ばっかりだと思ってたぜ
スプライトあるハード弄ったのはDSが初めてです

651:名前は開発中のものです。
09/02/17 11:13:59 7F1cTAxW
そもそもDirectXが出てくる時点で(ry

652:名前は開発中のものです。
09/02/17 12:01:44 YdMRZ2fK
2Dにも使える高速3Dエンジンを搭載しているんだがな
line,tri,quad,texture他に何が必要なんだ?

653:名前は開発中のものです。
09/02/17 13:02:26 6ifU8rUt
なんで高速3Dエンジンがあるのに旧世紀の遺物のスプライトがあるの?

654:名前は開発中のものです。
09/02/17 13:17:46 CYgZ2Ha2
>>653
GBAとの互換性のため
3Dがさっぱりな俺のため


655:名前は開発中のものです。
09/02/17 17:34:19 +gJCRER9
結局DSiでGBA切り離したし
任天堂ってやることがいちいちうざいな


656:名前は開発中のものです。
09/02/17 17:54:12 CYgZ2Ha2
DSiメニューにハッキングできたらな
内蔵フラッシュからhomebrewを起動したい


657:名前は開発中のものです。
09/02/17 18:26:20 98N4Azzj
>>653
あと3Dって基本片方の画面だけだからな
そのおかげでもう片方の何に使うかは皆苦労するみたいだけれども

658:名前は開発中のものです。
09/02/17 18:33:53 gvnaSd9X
へえ
そいつは凄いや

659:名前は開発中のものです。
09/02/17 18:41:17 4kZeiqJz
>>655
好きなの買ってこい

GBA
GBASP
GBAmicro
DS
DSLite

660:名前は開発中のものです。
09/02/17 20:42:24 Wvxt0Lcq
soundPlaySample(const void* data, SoundFormat format, u32 dataSize, u16 freq, u8 volume, u8 pan, bool loop, u16 loopPoint);
こいつでフリーズする・・・

これを使って音楽鳴らすだけのサンプル作ったら動作したのだが
実際の処理に組み込んだ途端この関数を呼ぶタイミングで固まる。
arm9から無理にアクセスしてるのが原因かと推測するが
誰か同じような目にあってない?&どうやって解決した?

661:名前は開発中のものです。
09/02/17 21:08:03 9keTwm9l
そっちじゃねーよw
あんたは根本的なとこで間違えている

662:名前は開発中のものです。
09/02/17 21:43:46 98N4Azzj
soundPlaySampleでフリーズしたのはエミュにideas使った時だけだなぁ
テストで簡単なゲーム作ったけど問題なく動作したよ

663:名前は開発中のものです。
09/02/17 21:57:29 Wvxt0Lcq
根本的なとことはどこでしょう?
この行だけコメントアウトすれば普通に動くんですが(当然音は出ないが・・・)

664:名前は開発中のものです。
09/02/18 05:35:08 jvIOLsTR
調べないズルをせずに、自分のプログラムの方を一行ずつコメントアウトして、何が悪いのか怪しいのか調べなよ。

665:名前は開発中のものです。
09/02/18 18:57:18 vVcHPw4L
上のPSPでビーマニっての見て思ったんだが、
DSってタッチパネルで複数の箇所を同時押しとか出来るのか?
反応速度もそんなに良くないみたいだし。

666:名前は開発中のものです。
09/02/18 19:30:07 ZSKmh/q4
>>665
無理不可能

ここ と ここ をタッチすると
 ↓    ↓
 ○ ◎ ○
    ↑
ここを押したことになる

667:660
09/02/18 20:38:59 FEj3mrZu
irqInitするとFifoの割り込みがつぶされるのが原因でした。
arm7の機能をarm9から簡単アクセスしたい場合はirqinit使っちゃだめなんですね。

668:608
09/02/20 19:39:10 2DMYgGyo
>>638
万が一、使用している人がいれば使用中止してください。
・左右非対称のモデルの展開がおかしい
・テクスチャの貼り付けがおかしい
の2件の問題があります。
修正の目処はついているので、近日中に修正&公開予定。

>>639
d
やってみたら意外と簡単ですYO!

669:名前は開発中のものです。
09/02/20 23:45:53 B1PJ8AXs
ニンテンドーDS用MASTER,20G,DEATH,SHIRASE
操作系(背景さえ)もTGM,TAP,TIから選択可能。
URLリンク(rs314.rapidshare.com)
開発終了までにソースが公開されなかったことが悔やまれる。

NDS_TGMの作者が実験で作った音ゲー?
URLリンク(www.nicovideo.jp)
マジ、自分のニンテンドーDSで遊びたい。

やりまん氏の弟子作
DS版ベラボーマン
URLリンク(www.nicovideo.jp)


670:608
09/02/21 21:05:24 0EjIkX44
修正版。
axfcが使えなかったので、
かりんと大57364
パスはメ欄。

添付のndsはAボタンでモデルが切り替わるので
試してみて欲しい。

mikoto対応のmqoでもうまくモデルが表示される
よう変更してみた。
あとαは今ひとつ扱いに困ったので停止させてある。
なにかアドバイスがあればお願いしたい。

671:名前は開発中のものです。
09/02/22 00:07:52 HFKbZOsM
>>669
TGMとM原の信者乙

672:名前は開発中のものです。
09/02/22 00:25:50 wOpJ9pB4
ベラボーマンはダウンロードできないのか・・・

673:名前は開発中のものです。
09/02/22 07:31:34 VExqFJq1
マリオ64移植できてるってことはDSの方が性能上なのか

674:名前は開発中のものです。
09/02/22 12:53:44 8un20adA
性能上のところもあれば下のところもある
(解像度やテクスチャの問題もあるが)
将来的にSNESとN64を完全に再現出来る携帯機が欲しいところ

675:名前は開発中のものです。
09/02/22 15:07:28 PC4UB1Nx
開発環境の構築について教えて頂きたい事があるのですが、
参考サイト等に記載のやり方でやってもまったく上手くいきません。

例えば>>78氏のサイトにあるような1.4.4をインストールしても
レミングス等はコンパイル不可でした。("SOUND_8BIT"が定義されていない、とか関数の引数がおかしい、とか)

最新の1.4.9も同様で、Palibフォルダ内のexamplesフォルダのテキスト"Hello World"等もコンパイル出来ないです。
(構造体メンバの"aux"が無いとか)

どうやったらちゃんと開発環境出来ますか?
(ちなみに当方WinVISTAです)

676:名前は開発中のものです。
09/02/22 16:02:25 uwaKrkXC
レミングスDSは公式にDevKitPro r20と書いてあるだろう
ここからr20を探して入れろ
URLリンク(sourceforge.net)

Palibも同様に080823版を使う場合はr21を入れろ

677:675
09/02/22 22:34:35 PC4UB1Nx
>>676
devkitPRO 1.4.9
devKITARM r21
Palib 080823
の組み合わせでも不可です。

C:/devkitPro/palib/lib/include/nds/arm9/PA_General.h:402: warning: 'getIPC' is deprecated (declared at c:/devkitPro/libnds/include/nds/ipc.h:64)
C:/devkitPro/palib/lib/include/nds/arm9/PA_General.h:402: error: 'TransferRegion ' has no member named 'aux'
C:/devkitPro/palib/lib/include/nds/arm9/PA_General.h:403: warning: 'getIPC' is deprecated (declared at c:/devkitPro/libnds/include/nds/ipc.h:64)
C:/devkitPro/palib/lib/include/nds/arm9/PA_General.h:403: error: 'TransferRegion ' has no member named 'aux'
In file included from C:/devkitPro/palib/lib/include/nds/PA9.h:58, from c:/devkitPro/palib/examples/Text/Normal/HelloWorld/source/ main.c:3:
C:/devkitPro/palib/lib/include/nds/arm9/PA_Keyboard.h: At top level:
C:/devkitPro/palib/lib/include/nds/arm9/PA_Keyboard.h:45: error: 'Keyboard' redeclared as different kind of symbol
c:/devkitPro/libnds/include/nds/arm9/keyboard.h:113: error: previous declaration of 'Keyboard' was here

という感じで、auxが無いだの、Keyboardの定義がおかしいだのでエラーです。


組み合わせるバージョンの指定は厳しいんですね・・・。


678:名前は開発中のものです。
09/02/23 00:00:14 Ie1BTwA3
・・・もしかしてdevkitPRO 1.4.9を入れた上からdevkitARM r21を上書きした?

679:675
09/02/23 00:29:52 4p6+MeQR
>>678
いえ、devkitPRO 1.4.9入れてからです。
devkitARMをリネームして退避 → r21を導入。

という流れです。

680:名前は開発中のものです。
09/02/23 03:33:49 DlqqnuXR
libndsのバージョン合わせてないオチじゃないよな?

681:名前は開発中のものです。
09/02/24 00:28:19 hxRbqK/7
>>680
libndsのバージョン合わせまで必要なんですか?
(そこまで言及してる解説サイト様も無かったので・・・・)

結局のところ、コンパイルするやつに合わせてバージョン変えるしかない、ですか・・?
かなり、不便なんですね・・・。


682:675
09/02/24 00:44:19 hxRbqK/7
>>680
書き忘れましたが、ご指摘されたlibndsについて libnds-20071023 等も試してみましたが、
fat.hが無い等のI/Fエラーで結局コンパイル出来ません。

もう何が正しいやらサッパーリです(TヘT)

683:名前は開発中のものです。
09/02/24 01:00:03 9qOCdOaY
libfatインスコしてないやんけ。


684:名前は開発中のものです。
09/02/24 01:17:29 GC6o6RLt
環境構築すら人に頼らないとできない時点で、
この先の困難さを思い知ったほうがいいなw

685:名前は開発中のものです。
09/02/24 01:30:53 l7+IouWc
ぽまいら冷たいお(´;ω;`)

686:名前は開発中のものです。
09/02/24 01:44:08 GC6o6RLt
あったくしょうがねぇな
ほらよw
URLリンク(forum.palib.info)

687:名前は開発中のものです。
09/02/24 01:49:19 hxRbqK/7
>>683
libndsフォルダをリネーム退避 → ゲットしたlibndsを導入で、消えてたみたいです。

結局のところ、どのソフトのどのバージョンを入れるのが正解なんですか?

688:名前は開発中のものです。
09/02/24 07:38:19 9o3pnbz7
どのバージョン使ってるか作者も把握してないのはよくあること。

689:名前は開発中のものです。
09/02/24 07:42:34 9o3pnbz7
むしろどのライブラリのどのバージョンの組み合わせでどのバージョンのHomebrewをコンパイルできたか情報もらえたら助かる。

690:名前は開発中のものです。
09/02/24 14:06:11 9qOCdOaY
なんかいろいろ酷くて疲れたわ。

691:名前は開発中のものです。
09/02/24 15:01:15 l7+IouWc
ぽまいら死ねぇぇ(´;ω;`)

692:名前は開発中のものです。
09/02/24 15:34:21 yD6D+5sj
ID:l7+IouWcが一番何もしてない件

693:名前は開発中のものです。
09/02/24 17:53:30 6cmZpWTE
単発が言う件

694:名前は開発中のものです。
09/02/24 18:13:58 jZRLhqc7
6cmの奴がうるさいぜ

695:名前は開発中のものです。
09/02/25 06:27:33 rYtUGQFi
DSLua(v0.7)のソケット関数が使えないんだが、未実装なの?
Wifiの初期化は出来るみたいなんだが

696:名前は開発中のものです。
09/02/26 00:46:51 KPhZLOYY
過疎り杉ワロタw

697:名前は開発中のものです。
09/02/26 08:42:13 w5iYbh+j
元からこんなんじゃ

698:名前は開発中のものです。
09/02/26 10:02:08 Jd9bcMX/
DSってサウンドは普通にいいな
DQ4やDQ5も結構音質よくてクオリティよかったし

699:名前は開発中のものです。
09/02/26 10:50:13 w5iYbh+j
スピーカーはだめ
イヤホンだとそれが判る

700:名前は開発中のものです。
09/02/26 23:06:26 LTHzrsdh
soundPlaySample(const void* data, SoundFormat format, u32 dataSize, u16 freq, u8 volume, u8 pan, bool loop, u16 loopPoint);
この関数を使用して、1分程度のPCMを再生しようとするのですが、
20秒程度で停止してしまいます
容量制限などあるのでしょうか?ご存知の方、お教えいただけないでしょうか
ポインタもサイズも渡してるんでメモリなめてるだけだと思ってるんですが…


701:名前は開発中のものです。
09/02/27 02:01:00 wr3mrhBf
メモリ足りてる?

702:名前は開発中のものです。
09/02/27 02:08:04 G1JMczya
(;^ω^)

703:名前は開発中のものです。
09/02/27 02:16:05 w0XRUM04
近ごろはライブラリ部分を疑って、自分のプログラム部分は疑わないのがトレンディ?
そういう質問が続くよね。

704:名前は開発中のものです。
09/02/27 12:47:20 l9Udippu
7度デバッグしてから人を疑えと祝一平が言ってた

705:名前は開発中のものです。
09/02/27 19:33:44 8EIL6nuq
皆ってどんな思いでプログラムしてる?

1.漠然と解析して動かしたい(ex.動かしたら満足)
2.DSという媒体をいかして遊びたい
  (ex.タッチペン等を使ったアイディアを生かし任天堂に企画持込)
3.オリジナルでゲーム作りたい(ex最終目標は販売)
4.同人でゲーム作りたい(exコミケで販売)


706:名前は開発中のものです。
09/02/27 22:12:19 wkWc0+ir
>>705
1と2。
だけど、任天堂に企画を持ち込む気はない。

707:名前は開発中のものです。
09/02/27 22:14:48 lHmooKwd
Nスクの不完全再現
実現出来れば多くのアレがアレできるので個人的に嬉しい
しかし道は長い

708:名前は開発中のものです。
09/02/28 01:19:19 Uk8XxPzh
仮に販売できる作品が出来たとしても、客はマジコンを持ってることが前提になる?

709:名前は開発中のものです。
09/02/28 03:06:41 YWGCCuBr
そのレベルのスキルの持ち主なら、普通にwinで作って堂々と販売すればいいじゃない

710:名前は開発中のものです。
09/02/28 07:12:29 IJaRMG7X
何かとマジコン問題視されてるし、
非公式開発用の代用品があればなぁ。

711:名前は開発中のものです。
09/02/28 12:51:37 OixSpQER
ゲーム作ったものの配布するかどうかで結構迷ったな
まだ弄れるところがあるってことで結局見送ったけど
実機での動かし方とか質問されても答えにくい…

712:名前は開発中のものです。
09/02/28 17:13:12 9WcANibW
公開してる人は使い方の分かる人だけとか書いてるし
特に動かし方は何も書かなくておk
何か質問されたらグーグルのアドレスを貼る

713:名前は開発中のものです。
09/02/28 17:41:38 Uk8XxPzh
いずれにしても金儲けは出来そうにないよな

714:名前は開発中のものです。
09/02/28 18:43:28 8f7b0xkm
その昔ジーコサッカーというのがあってだな・・・

715:名前は開発中のものです。
09/02/28 21:12:53 8s2n0430
>>670
くっ、消えてたか。
どのくらいのポリゴンまで使えるのかな・・・(メタセコのデータサイズ的に)

716:名前は開発中のものです。
09/03/01 01:32:11 Mf/Aa5l/
4000604h - RAM_COUNT - Polygon List & Vertex RAM Count Register (R)

0-11 Number of Polygons currently stored in Polygon List RAM (0..2048)
12-15 Not used
16-28 Number of Vertices currently stored in Vertex RAM (0..6144)
13-15 Not used

の制限は超えられないと思うよ

URLリンク(blog.livedoor.jp)
をみると2000ぐらいじゃないかな?

717:名前は開発中のものです。
09/03/01 08:53:29 NCPT6IzU
>>716
なるほど・・・。ありがたう。
その辺に落ちている初音ミクとかDSに、とかは全然無理って事だな。

718:名前は開発中のものです。
09/03/01 09:43:01 FCLhxfXA
60fpsで動かそうとすればな…
今市場に出ているDSの3Dゲーはほとんど30fpsで
3Dと3Dキャプチャとの合成をよく使う

719:名前は開発中のものです。
09/03/06 04:12:52 TOXTdHLF
フォントを入れてみて、SJISの漢字を表示できるようにしてみたのですが、
漢字のファイル名も使えるファイラーを作ろうと思ったところ、
diropen、dirnextで取ってくる2バイトコードば不規則に壊れているように思えるのです。
(最初の18バイトは3バイトごとに0xC2が入り込み、その後 0x20 なども入り込む)

この理由って何でしょうか?
なにか対処法とか知ってる方いらっしゃいますか?

720:名前は開発中のものです。
09/03/06 11:22:53 yjbnJ68z
>>719
お前がSJISと思い込んでるだけでファイル名は実はUTF-8で書かれていたりする

721:719
09/03/06 12:22:56 TOXTdHLF
>>720
文字コード表で比較したのですがUTF-8ではないと思うのですが・・・
URLリンク(ash.jp)
というか単に1バイト文字列として判定しながら、
最上位ビットが立っていると、自動的にその直前に「0xC2」を追加しているだけ
のように見える。

もうちょっと調査してみます。

722:名前は開発中のものです。
09/03/06 12:51:34 yjbnJ68z
libfatのソース見たけど
〜\libfat-src-1.0.3\source\directory.c
if (_FAT_directory_ucs2tombs (entry->filename, lfn, MAX_FILENAME_LENGTH) == (size_t)-1) {
// Failed to convert the file name to UTF-8. Maybe the wrong locale is set?
return false;
}
UTF8に変換してるんじゃないの

723:名前は開発中のものです。
09/03/06 13:00:17 yjbnJ68z
バージョンで違うかもと思って昔のソース見たらやっぱり違ってたわ
昔のは変換処理が無かった


724:719
09/03/06 13:11:00 TOXTdHLF
>>722-723
ありがとうございます。
なるほどlibfatのバージョン上げるとUTF-8に変換してくれると・・・
でも既にSJISの表示ができてるので、まぁ今のままでいいかなとw
(0xC2の除去は簡単にできましたので)

725:名前は開発中のものです。
09/03/06 15:34:15 s9e7Y5/A
8.3形式で収まるファイル名はそのまま書き込まれ
それに収まらないファイル名はロングファイルネームとしてUnicodeで格納される

FAT関係のフォーマット解説あさった方がいい

726:名前は開発中のものです。
09/03/07 12:15:01 Spw06Iei
Kingdom Hearts 358/2 Days - Special Trailer
URLリンク(www.youtube.com)

DSって凄いんだな

727:名前は開発中のものです。
09/03/07 15:22:32 P2NlkDFd
>>726
ほとんどプリレンダの動画だな
ゲーム画面は1分もないじゃないか
まあDSにしては頑張ってるんだろうけど

728:724
09/03/08 17:48:39 H3Gxp9K9
>>725
そのとおりでした。
エミュ(ideas)で開発していたら、単にSJISにC2のゴミが入るだけでしたが、
実機ではUnicodeに変換されているようです。

素直に変換プログラムを組んでみます・・・・

729:724
09/03/08 17:50:21 H3Gxp9K9
ちなみに、実行ターゲットって取得できないものでしょうか・・・・

エミュではC2除去したSJIS表示、
実機ではUnicode表示と切り替えたいとも思うのですけど、

730:名前は開発中のものです。
09/03/08 20:35:07 3YB+hXPZ
それこそC2入ってたらエミュとかでいいんでないの

731:724
09/03/08 21:14:06 H3Gxp9K9
>>730
確かに!
調べてみたら、C2付きに置き換えられたSJIS(C28xxx,C29xxx,C2Exxx,C2Fxxx)
に対応するUTF-8コード(SJIS内)はないのでエミュ起動とみなして良いようです。
URLリンク(ash.jp)

UTF-8⇒SJIS変換プログラムを探したけど、
結局自分でUTF8⇒SJISテーブルを持たないとダメそう
(nkfのソースとかは見たけどわけわからんw)

Windowsのツールならすぐ作れるし、
7630文字の3バイトなので、データ容量としてもDSに十分入ると思うんだけど、
UTF8の方がビット幅が広いので、
テーブルが虫食い状態になるのをどうしよう
ハッシュテーブルにしてもどうしたら均一になる取り方が思いつかない・・・・・

他のツール作者さんたちはどうやってるんだろう

732:名前は開発中のものです。
09/03/09 00:39:57 SXSH5WYs
>731
思いっきりはずしてるかもだけど、MoonShellのunicode/sjis.tblが
何かヒントになるかも?
URLリンク(mdxonline.dyndns.org)


ところで...
URLリンク(www35.atwiki.jp)
URLリンク(www.bottledlight.com)
ここに書いてあるNDSファイルフォーマットの、「FAT オフセット」に
セットされているアドレスにはFATデータがあるんだろうけど、
このFATのフォーマットはどうなってんの?
解説したサイトとかある?

ファイル名テーブルや実ファイルデータをどうやって
管理しているのかよくわからない...

ここがわかれば、1つのNDSファイルだけで4MBを超えられる
方法がわかるような気がするんだけど。

733:724
09/03/09 04:10:07 omb2zf0w
>>732
ヒントになりました。ありがとうございます。

あくまで推測の範囲ですが、
データを見る限り、2バイト区切りになっているのでUnicodeビット⇒SJISのデータを格納しているように見える。
かなりの多くのかたまった0x00があるので、圧縮やハッシュ化はしていない模様。
2バイト区切りだとすると、65536文字ほどの空間を保持していることになるが、
10万文字を超えるといわれるUnicodeの空間すべてをテーブルを持っているわけでなく、
日本語や中国語などの漢字(SJISに載っている)部分だけのテーブルと思われる。
2バイト区切りではありそうだが、SJISの生データではない。

Unicodeの漢字部分がこの程度(128kbytesに収まる)なら、
まず自分でやってみて確認してみたいと思います。
ありがとうございました。


734:724
09/03/09 04:11:44 omb2zf0w
>>732
ちなみに私はフォントのビットデータなどを別ファイルで読み込ませていますが、
特にフォーマットやファイル名に規則はないように思います。
まだ特にフォーマットを決めてないので生データをそのまま読ませています。

  // FAT初期化.
  if ( !fatInitDefault() ) {
    iprintf( "Cant't Init Fat !" );
    return -1;
  }
  // 読み込み
  FILE* file = fopen( "FAT1:/GOTHIC24.DAT", "rb" );
  if( file != NULL ){
    fread( byFont24Data, FONT24FILESIZE, 1, file );
    fclose( file );
  } else {
    iprintf( "File Load false !" );
  }

で読み込めてます。
(byFont24Dataは読み込むデータ分の空き容量へのポインタ)

735:732
09/03/09 21:30:46 SXSH5WYs
>734
それはlibfatを使ったときの話ですよね。
ndsファイルとGOTHIC24.DATを別々に用意して読み込むっていう。

そうではなくて、devkitproのexample/embedded_gbfsみたいに、
ndsファイル内に埋め込めるファイルシステムを商用のndsファイルは
使ってると理解してるんですが、その形式・方式ってどうなってんのかな、
というのを知りたいんです。1ファイルに全部入れたいな、と。

embedded_gbfsでは、ndsヘッダのFATデータにもファイルテーブルにも
何も書かれないので目的のものとはちょっと違うと思ってます。

最終的には、過去ログの>>609-614にあるような、自身のndsファイルを
開くのではなくて、nds内の必要なデータだけメモリにロードするような
方式が知りたいんです。


736:名前は開発中のものです。
09/03/09 22:23:03 FcNM6iim
個人で楽しむ範囲で市販のROMを解析してみれば。

737:734
09/03/09 23:06:08 omb2zf0w
>>735
そうでしたか。なんか当たり前の事を講釈してしまってすいませんm(_ _)m

ふと思いついたのが、ndsプログラムから、自分のndsをfopenして、
fseekして目的の位置だけをfreadとかできないかなぁと。
ファイルポインタは4GB制限はないだろうと。
(もしかしたら自分は開けないのかもしれないけど)

4GBオーバーしたndsを通常起動しても、
おそらく4GBまでロードして、エントリポイントからプログラムが動き始める
4GB周辺のデータはスタックに壊されながら使われる。
このときデータが壊されることよりもスタック周辺データでプログラムが不安定な動きをしないように
予めスタック周辺のデータはNULL(0)を入れておく(念のため)

あとはリンカにマップファイルを読み込ませて、ヒープ領域を明示的に指定しておく
(もしかしたらスタック領域も指定しないといけないかもしれない)
(もちろんデータ読み込み用アドレスをマップファイルで指定してもいいけど)

こうすればスタック、ヒープ以外にとっておいた空き領域に
読み込ませて起動できるのではないかと
あくまで全部推測ですけど・・・・

(ちなみにファイル名UTF8をSJISに変換して漢字表示できました。ありがとうございました。)

738:732
09/03/10 00:17:00 FyCLTQRk
過去ログの>>609-614がまさに自ファイルをfopenして、目的のデータだけを
freadして4MB以上のndsファイルを実現しているって話みたいです。

リンカの制御についてちょっとお勉強してみます。
あと、ndsファイルももうちょっと調査してみます。
(ちょっと確認したところでは、FATデータには、各アドレスの
先頭アドレス(4Byte)がずらずら格納されているだけのようでした。)


739:732
09/03/10 00:23:24 FyCLTQRk
書き忘れました。
自ファイルをopenしてfreadするやり方だと、ndsファイル名を変更できないし、
ファイルを置く場所も固定になってしまうので嫌だなあと思ってるだけです。

fopen("./hoge.nds", ...)みたいにカレントディレクトリ指定でopenきれば
まだいけるのですが...

ごちゃごちゃ言っているうちに、なんか興味がわいてきたので調べてみます。


740:名前は開発中のものです。
09/03/10 01:01:12 WT0mcKmk
スタートアップのmain()のargvで自分自身の名前が返ってくりゃスッキリするのにな。

741:名前は開発中のものです。
09/03/10 01:02:30 bFNIRTD6
以下、転載

OCNがアクセス規制だったのでこっちで…。気付かなかったら気にしない。(笑

To 737
実行中のNDSプログラムから自分自身のファイル名を知る方法はないと思います。
(一応コマンドラインから受け取れるようになっているようですが、それを渡してくれるように作られたファームウェアを(私は)知りません)
それができればたくさんのデータファイルをコピーさせなくても自作アプリが公開できるのですが…。

(これ以下はリンクで

URLリンク(home.att.ne.jp)


742:名前は開発中のものです。
09/03/10 01:22:01 0zF3GRcV
ちょっと思いついた自分自身のndsを見つける強引な方法ですが、

現在のディレクトリをdiropenで開いて、
dirnextで次々と開いてファイルサイズを調べて、同じ大きさなら自分のnds

ファイルサイズの調べかたですが、fseekでSEEK_ENDを指定して、
ファイル終端にファイルポインタを設定して、
ftellで得られると思います。

まぁ、片っ端から調べるんなら、ndsファイルヘッダでも何か固有情報は埋められるような気もしますが・・・・

743:名前は開発中のものです。
09/03/10 11:00:57 g2TKFoHz
それならファイル終端に識別子入れたほうが楽

744:732
09/03/10 23:30:35 FyCLTQRk
ndstoolのソースを見ると、NDSファイルのヘッダにあるFATテーブル
がどういう形式なのかわかりました。
「ファイルの先頭アドレス(4byte), ファイルの最後のアドレス+1(4byte)」
がずらずら並んでいるようです。

>741の内容(ファイルを全部メモリにロードしてSWI0(soft reset)する)と、
URLリンク(nocash.emubase.de)
を見ると、要するにBIOSがNDSヘッダを読んでよきに計らってくれるのだ
と理解しました。

ということは、NDSヘッダにFATデータもBIOSを使ってうまく取り回せるの
かな、と思うのですが・・・これ以上は資料も見つけられず・・・

やっぱりlibfat使って自ファイルをfreadするとか、うまいこと面倒を見る
ランチャ(というかシェルと呼んだ方がいいのかな?実現可能かも不明)
を作るとか、が現実的かもしれないですね。

745:名前は開発中のものです。
09/03/11 14:21:25 tSVd9IUE
MoonShell2のバグトラックに
「フォルダ名またはファイル名の先頭に「蟲」を含むとき、ディスクチェックが停止するバグがある。」
とあるが、FATではファイル名の先頭の0xE5は削除されたことを表すから、
その0xE5がShift_JISの第1バイトと重なってしまうため、
FATの日本語ファイル名では0xE5の代わりに0x05を使用している、
という話を聞いたことがある。
もしかしたら、0xE5と0x05辺りのバグかもしれない。

以下問題ありそうな文字リスト
蕁蘂蕋蕕薀薤薈薑薊薨蕭薔薛藪薇薜蕷蕾薐藉薺藏薹藐藕藝藥藜藹蘊蘓蘋
藾藺蘆蘢蘚蘰蘿虍乕虔號虧虱蚓蚣蚩蚪蚋蚌蚶蚯蛄蛆蚰蛉蠣蚫蛔蛞蛩蛬
蛟蛛蛯蜒蜆蜈蜀蜃蛻蜑蜉蜍蛹蜊蜴蜿蜷蜻蜥蜩蜚蝠蝟蝸蝌蝎蝴蝗蝨蝮蝙蝓
蝣蝪蠅螢螟螂螯蟋螽蟀蟐雖螫蟄螳蟇蟆螻蟯蟲蟠蠏蠍蟾蟶蟷蠎蟒蠑蠖蠕蠢
蠡蠱蠶蠹蠧蠻衄衂衒衙衞衢衫袁衾袞衵衽袵衲袂袗袒袮袙袢袍袤袰袿袱裃
裄裔裘裙裝裹褂裼裴裨裲褄褌褊褓襃褞褥褪褫襁襄褻褶褸襌褝襠襞


746:名前は開発中のものです。
09/03/11 16:31:29 13ayMoIc
>>745
FATのlfnはUCS2だから0xE000-0xE8FFは私用領域で使われてない

747:名前は開発中のものです。
09/03/11 16:41:13 cohO+OUe
8.3形式の話だと思うが

748:名前は開発中のものです。
09/03/11 20:32:17 13ayMoIc
FATを調べたけどファイル名の1バイト目に意味があるのはロングファイルネームに対応していないFATでファイル名には英数文字しか使えない
ロングファイルネームに対応しているVFATではファイル名は2バイト目から始まるようだ


749:名前は開発中のものです。
09/03/11 23:43:28 Zqyue3/y
M3さくら日本語版ではv5しか起動できません。
v6 v6.1 v6.1fix を読み込むとローディングのまま黒画面で停止する・・バグ?

750:名前は開発中のものです。
09/03/12 00:09:43 Ad+ZYM8b
>>749
多分K氏のソフトと同じ理由。

751:名前は開発中のものです。
09/03/12 02:05:01 DfGJMFjQ
やっぱ手書き入力が欲しいなぁ
挑戦してみようかなぁ

752:名前は開発中のものです。
09/03/14 14:51:11 wlXU4AeS
ちょっと表示について質問させてください

メイン、サブ共に16ビットグラフィックを使いたくて、
どちらもMODE_5_2Dで、VRAM_AとVRAM_Cを使ってBG3を表示させているのですが、
製作時はやはりデバッグ表示もしたくて
consoleDemoInitのようなテキスト表示を使いたいのです。

しかしconsoleDemoInitだと強制的にVRAM_Cを壊してサブ画面をMODE_0_2Dに
してしまいます。

consoleInit関数ならモード変更させずに、BG0,BG3重ね表示はできたのですが、
VRAM領域が同じために、画面描画しているうちに、フォント領域やテキストスクリーン領域
を壊してしまって表示がおなしくなります。
(2k,16kのbaseによる小さい移動はできたのですが結局同じ領域なので)

BG0,BG3に別々のVRAM領域の割り当てがいくら調べてもわかりません・・・・
どなたかご存知の方がおりましたらご教授ください。m(_ _)m

753:名前は開発中のものです。
09/03/14 16:44:35 X1fTgUj5
>>752
VRAM_Bとかつかってないところにコンソール用の領域を用意して
bgInitでmapbaseをソコにすればいいだけじゃない?

あ、コンソールはmapbase0でグラフィック用をずらす方がよかったかもしれない。

754:名前は開発中のものです。
09/03/14 22:54:07 wlXU4AeS
>>753
助言ありがとうございます。
グラフィック用のmapbaseをずらすことで対応できました。

しかし、
いろいろやったのですが結局VRAM_Bは活用できませんでした・・・

755:名前は開発中のものです。
09/03/15 04:35:28 G1D5J/z+
VRAM_Bが活用できなかったってのがよくわからんなぁ
こういう話?

  videoSetMode(MODE_5_2D);
  vramSetBankA(VRAM_A_MAIN_BG);
  vramSetBankB(VRAM_B_MAIN_BG);

  bg3 = bgInit(3, BgType_Bmp16, BgSize_B16_256x256, 8, 0); // 後半128k(16k*8)使用
  dmaCopy(img_bin, bgGetGfxPtr(bg3), img_bin_size); // 適当に画像データ読み込ませる
 
  con = *consoleInit(0, 0, BgType_Text4bpp, BgSize_T_256x256, 31, 0, true);
  consoleSelect(&con);


756:名前は開発中のものです。
09/03/16 16:01:19 I+GA/8Ir
MoonShell2 v7だが、Bボタンを押しても上位のフォルダに移動できなくなった。
上位階層のフォルダを選択してAボタンを押しても、ピーと音が鳴るだけ。
どうやってもその階層から外に出られないorz
強制的にルートに戻す裏機能とかない?



757:名前は開発中のものです。
09/03/16 16:08:16 qr26iN7J
>>756
それ、俺もなったことがある。原因不明だけどフォルダ名とかに関係するのかな?
ただ、しばらくは普通に動いてて、あるとき急に上のフォルダへ移動できなくなってしまった。
完全なデッドロック状態。moonshelを全部消して入れ直して復帰したけど。

758:Moonlight
09/03/16 18:58:16 4ZsOBpZi
外出中なので書けたらいいな
元に戻せない状態になってしまったら、L+R+A+Bボタンを押しながら起動すると、MoonShell2の設定をすべて標準に戻してから起動します。(設定変更部分だけではなく、プレイリストや壁紙、スキンなども標準状態になります)
操作手詰まりになってしまうバグのようなので、できれば原因追求して直したいと思います。
暇で暇で仕方がないとかあったら、気まぐれで一通だけでもいいのでレポートメール頂けたら嬉しいです。それでは。


759:名前は開発中のものです。
09/03/16 19:53:18 r6dRqUJi
>>758
私もたまになることがありますので、今度現象が発生したらL+R+A+Bボタンを押しながら起動を試してみますね。


760:名前は開発中のものです。
09/03/17 11:22:17 SZwA68ad
>>758
サンクス

761:756
09/03/17 12:02:22 OkVTHgYh
>>758

L+R+A+Bボタンを押しながら起動で見事階層から脱出成功しました。ありがとうございました。

取りあえず何も環境を変えずにまた使い始めてますが、今のところまだ問題はないです。



762:名前は開発中のものです。
09/03/18 23:24:55 tEzRUtGM
NDS雑談242
スレリンク(download板:788番)

788 名前:[名無し]さん(bin+cue).rar[sage] 投稿日:2009/03/18(水) 21:26:36 ID:7bnC9PI80
【NDSのROMやPSPのISOを爆速でダウソする方法】 

1. FocalPriceでアカウントを作りログオンする。
URLリンク(Google.zz.tc)

2. Keyword PSP を入れて検索する。

3. 最後から3番目の商品のレビューを見る(状況により順番が変わる可能性あり)

4. KMCのSuper MemberのIDとパスワードをゲット!!

5. KMC(URLリンク(www.jpmp3.com))に4.で得たIDでログイン。

6. Super Memberの特権でGame Zone(ゲーム配信) スレへ入ることができる。

7. [NDS] ★★★ NDSロム アップロード専用トピック [NDS Software only] ★★★その2 へGO!

8. DSのROMが腐るほど置いてあるわ。ウマーwww

※ PSPのROMの場合は7.で [PSP] ★★★ PSPロム アップロード専用トピック [PSP Software only] ★★★ その2 へGO!



763:名前は開発中のものです。
09/03/19 17:27:14 E81sti42
あぁ春休みだっけ?

764:名前は開発中のものです。
09/03/21 07:11:55 eJxS3Zxd
soundPlaySampleでSEを鳴らしているんですけど、

再生終了しているかどうかをチェックできないものですかねぇ・・・
(sound.hを見てもなさそう)

765:名前は開発中のものです。
09/03/22 01:31:10 iQYsEZiB
>>764
割り込みハンドラも使わずfifoに投げてるだけだからむりっぽ。
めらまんとこにSEドライバが・・と思ったら未完成だった。
つーわけで自分で書け

766:名前は開発中のものです。
09/03/22 03:54:40 Q4FneF3/
>>765
情報ありがとうございます。

なんか調べてもわからないことだらけで、
終了はファイル長から22050Hzで割って推測することにしました。

ただ、新たな問題が・・・・
約300Kbyte以下は再生できるのに、それより長くなると
途中まで(それもほんの最初の50KByteほど)だけしか再生してくれない・・・

soundPlaySample内でどんなことしているか知りたいよ〜

767:名前は開発中のものです。
09/03/22 04:13:21 /KXj0OER
>766
libndsはソース公開されてるど。

768:名前は開発中のものです。
09/03/22 06:53:17 Q4FneF3/
>>767
マジですか!
探してきます!

769:名前は開発中のものです。
09/03/22 09:50:42 w03/KkKP
なんか言ってることぽまえら難しすぎ
いまどきRAMとかSEEKとかアホくさい
BASICみたいな言語無いの?
テキトーにハナクソほじりながらなんか作りたい

770:名前は開発中のものです。
09/03/22 10:30:32 AgCN+BDA
おかえりくださいw

771:名前は開発中のものです。
09/03/22 13:13:50 PUMXIKn4
日本語見れないけどDSLuaでいいじゃん

772:766
09/03/23 16:25:30 gM4i9RQ9
>>765,767
ソースのおかげでなんとなくわかってきたのですが、
ARM7ってFIFOで裏でいろいろやってたのですね。
PowerManagement、SOUND、SystemInputMsg(おそらくキー入力)、WIFI、MMDS(これも音関係?).

ARM7のmain関数(おそらく\devkitPro\examples\nds\templates\combined\arm7\source\template.c と同じもの)
内でFIFOに登録されたものがFIFOコマンドとして働いて、
ARM7は割り込みでコマンドがあると参照されている関数ポインタを処理している。

で結局、サウンド関連はsoundDataHandler内で
SCHANNEL_SOURCE、SCHANNEL_REPEAT_POINT、SCHANNEL_LENGTH
SCHANNEL_TIMER、SOUND_FREQ、SCHANNEL_CR(channel)、
などのレジスタを設定している・・・・

しかし300KByte以上が再生できない理由はいまだわからずw
やっぱりソース眺めるだけじゃなく、
ARM7のコードも自分でコンパイルして組み込まないといけませんかね・・・


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

5001日前に更新/251 KB
担当:undef