トップページ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/
0030名前は開発中のものです。2007/04/19(木) 23:26:59ID:2jDSNcy8
>>29
前スレ980でフレームバッファに「見立てて」とあるわけだが。
あまり考えずにレスすると、やりたい事は多分出来ない。
フレームバッファじゃなくてタイルに書く。
例えば、10x10の文字を書こうとすると、右(2x8)と下(8x2)と右下(2x2)があふれる。
これを並べたときに隣接するタイルに書く。
文章だけだとややこしい。誰かフォローよろ。

# 3Dでビルボード重ねればできるかも?
0031名前は開発中のものです。2007/04/20(金) 07:41:55ID:KjZsdrCt
>>29
自分はMODE5使ってる

videoSetMode(MODE_5_2D | DISPLAY_BG2_ACTIVE | DISPLAY_BG3_ACTIVE);
vramSetBankA(VRAM_A_MAIN_BG_0x06000000);
vramSetBankB(VRAM_B_MAIN_BG_0x06020000);
0032名前は開発中のものです。2007/04/20(金) 07:55:19ID:KjZsdrCt
framebuffer型背景レイヤ
* 最もシンプルな背景レイヤ。直接ピクセルを操作する。
* キャンバスサイズは256x192固定。
* 背景レイヤは一つのみ。重ね合わせ処理不可。
* 色深度は16bit固定。
* サブ画面では使用不可。
* せっかくのDSの各種ハードウェアサポートが全く得られないので、framebuffer型を選択する利点はほとんど無いと思われる。

extended rotation型背景レイヤ
* 基本的にはframebuffer型背景レイヤと同じ。以下の点が違う。
o 名前の通り、回転拡大縮小が可能。
o 色深度は16bit/8bit選択可能。
o キャンバスサイズも選択可能。
o 複数背景レイヤが使用可能。重ね合わせ処理ok。
0033名前は開発中のものです。2007/04/20(金) 13:21:39ID:q1lk0Smr
gbalzssについて、moonlight氏のサイトを読んで気になったので検証してみたところ、
DSのBIOSコールでは展開不可(データが化ける)であることがわかりました。

gbalzssでは最初に辞書テーブルの先頭4078バイトを0xFFで埋めていますが
DSのBIOSルーチンでは辞書テーブルすら存在せず、ただ展開後のデータから
同じ部分をコピーするだけになっています。
(つまりデータの頭のほうで0xFFが圧縮されると展開時に不定のデータで埋められてしまう)
0xFFが潰されているのはこれが原因です。(dectestだとパレットが死んでますね)
とりあえずこんなところでしょうか。見当違いだったらごめんなさい。
0034名前は開発中のものです。2007/04/22(日) 12:06:37ID:TfVa2cpF
スリープ機能を実装しようと思って前スレに書いてあった7sleep.hとか参考に組んだんだけど
EZ5では動くもののR4とかでは動かない状況になった
ちょっと見てみたらarm9側でtouchReadXY()をコール後に停まってるみたい。
液晶閉じるとバックライトは消えるからarm7側は生きてるっぽい。
arm7側でIPCに設定する項目のIPC->heartbeatはコンパイラ通らないのでコメントアウトしてある。
注意する項目とかそういうないかな?
0035名前は開発中のものです。2007/04/24(火) 21:00:34ID:NJ6jBP1q
背景2枚使うときって2枚目の背景データはどこに入れればいいんですか?
0036名前は開発中のものです。2007/04/24(火) 23:00:17ID:ul3qRtvV
>>35
まずどの画面モードを使うかを聞かせてくれ。それからだ。
0037名前は開発中のものです。2007/04/24(火) 23:04:18ID:NJ6jBP1q
videoSetMode(MODE_5_2D | DISPLAY_BG2_ACTIVE | DISPLAY_BG3_ACTIVE);
vramSetBankA(VRAM_A_MAIN_BG_0x06000000);
vramSetBankB(VRAM_B_MAIN_BG_0x06020000);
です。1枚の時は
dmaCopy(haikei_Map, BG_GFX, haikei_Map_size);
dmaCopy(haikei_Palette, BG_PALETTE, haikei_Palette_size);
で表示してました。
0038名前は開発中のものです。2007/04/25(水) 11:37:03ID:33OeOyDS
>>37
自分で割り当てたメモリに書き込めむのでは
BG2_CR = BG_BMP8_256x256;

BG3_CR = BG_BMP8_256x256 | BG_BMP_BASE(8);

なら
dmaCopy(drunkenlogoBitmap, (void*)BG_BMP_RAM(0), 256*256); //BG2に書き込み
dmaCopy(drunkenlogoBitmap, (void*)BG_BMP_RAM(8), 256*256); //BG3に書き込み
0039名前は開発中のものです。2007/04/25(水) 13:37:30ID:gTKp5KH5
ttp://mdxonlinemirror.dyndns.org/resources/20051007_nokia888.designawards2005.winner.avi
0040Moonlight2007/04/25(水) 16:41:02ID:HxrT4e6P
>>37

私も聞きたいです。
haikei_Paletteが見えるので8bitパレットモードを使っているようですが、二枚同時に表示できる画面モードがあったら教えて欲しいです。
拡張パレットエリアを使ってBG0/1とBG2/3で上下分割すれば(BG4枚使えば)表示できる、というところまでいったのですが分割するとアルファブレンドが使えません。
なんとかBG2枚だけで賄えたらいいのですが…。
0041名前は開発中のものです。2007/04/25(水) 16:43:49ID:9PTGEnxc
パレットは1個しか使えないんですか?
0042Moonlight2007/04/25(水) 16:59:41ID:HxrT4e6P
>>41

NDSで追加された拡張パレットを使えばいけます。
アルファブレンドを使わないならば、普通に一枚ビットマップBG(BG2かBG3)を表示して、スプライト疑似ビットマップモード(勝手に銘々)でもう一枚使うのが簡単だと思います。
0043名前は開発中のものです。2007/04/25(水) 22:40:25ID:bi207Gqh
素人考えで思いついたこと。
256x192ドットの画像をメインメモリに4枚持ち、2枚づつブレンドしてキャプチャ。
そのキャプチャした2枚の画像を更にBG上でブレンド。

実際にそんな事が出来るか試す技術もないけど、静止画程度なら出来るんじゃないかと考えてみたり。
多分処理に時間が掛かって、使い物にならないだろうけど。
素人の考える事なので多分上手くいかない。
0044名前は開発中のものです。2007/04/26(木) 19:00:36ID:jP033NAs
BG3がVRAM_Fの拡張パレットを使うとして、それはBG3_CRにどう指定すればいいんですか?
あとパレットを書き込むときはVRAM_F_EXT_PALETTEでいいんですか?
0045名前は開発中のものです。2007/04/26(木) 19:57:11ID:vnhXkHDU


0046名前は開発中のものです。2007/04/26(木) 22:30:59ID:1ufEd1K7
拡張パレットの時に使用する拡張パレットスロット

BG0:0 or 2
BG1:1 or 3
BG2:2
BG3:3

と、手元の資料に書いてある。
0047Moonlight2007/04/26(木) 23:32:01ID:ulX9vZIH
>>44
BGx_CR関連のフラグがlibndsのヘッダファイルで定義されていますので、そこからコピペすればOKだと思います。
ちなみに、拡張パレットはCPUから直接読み書きできるエリアにマッピングされていませんので注意です。

>>46
拡張パレットは複数個持てる、とどこかに書いてあったような気がします。
改めて調べなおしてみます。示唆ありがとうございます。
0048名前は開発中のものです。2007/04/27(金) 01:37:33ID:E4LQ/b6I
無線LANカード+DSダウンロードプレイで、
改造なしで実行できるらしいがそれで開発してる人いますか?
0049名前は開発中のものです。2007/04/27(金) 01:56:43ID:ps+Zsnff
BG0〜2がどんな設定になってるか知らないから、適当に書いてみる。

VRAM-Fに拡張パレットのカラー設定をして、

vramSetBankF(VRAM_F_BG_EXT_PALETTE);

VRAM_F_CR |=(vuint8)0x08;


こうやったら、VRAM-Fに設定したカラーが、BG拡張パレットスロット2と3に設定された。
>>46 にも書いたけど、BG2とBG3が使う拡張パレットスロットは固定。
BG3_CRは標準パレット使ってた時と同じ設定。
0050名前は開発中のものです。2007/04/27(金) 07:50:40ID:vQAonU6X
ちょっとbookmark
http://www.dev-scene.com/NDS/Tutorials
http://ranekov.tir.jp/ndn
0051名前は開発中のものです。2007/04/28(土) 00:00:44ID:5RL/W00i
>>48
wifimeは昔のDSじゃないとできないんじゃなかったかな
0052名前は開発中のものです。2007/04/29(日) 13:58:59ID:FnWZvnH2
DSの自作ソフト開発をしたいのですがR4やM3 DS Simplyを買えばできるのでしょうか?
0053名前は開発中のものです。2007/05/01(火) 08:16:03ID:SB3umWqP
>>52
出来る
他にもSuperCardとかあるよ
0054名前は開発中のものです。2007/05/01(火) 16:23:58ID:Xh0zyFlr
その前にエミュで遊んでみてからでもいいんじゃない?
0055名前は開発中のものです。2007/05/02(水) 18:38:51ID:OD2Plci2
オプティマイズのカメレオンUSBとDS-RAMアダプタを試してみた。
ファイルアクセスしないようなプログラムだと全く問題なさそうだけど、DS-RAMアダプタ経由のPC上のファイルアクセスになると遅すぎ。
ファイルのアクセス方法によっては、これ止ってんじゃね?って思うほど。

PC上のファイルアクセスに期待してたんだけど、ちょっと期待はずれかな...
リセット信号線つけたら、自動で再起動してくれるとかは便利なんだけどね。
0056名前は開発中のものです。2007/05/04(金) 19:07:56ID:2UmfDvtL
WiFiMeを使って自作プログラムの実行はできますか?
0057名前は開発中のものです。2007/05/05(土) 01:02:08ID:fIbkcnTP
2年前からタイムスリップしてきた御方が降臨なさったぞ!
0058名前は開発中のものです。2007/05/06(日) 02:22:22ID:+OsIRxhX
あきらめたw
0059名前は開発中のものです。2007/05/07(月) 07:01:19ID:o4/cQJiO
DSMPlay Ver0.1

R4とSC LiteとSC SDで起動しない・・・
MicroSDが悪いのと思って変えたけどだめですた。

フォント Loasdで止るし・・
0060名前は開発中のものです。2007/05/08(火) 00:06:14ID:hPGMHvWN
R4とSCDSで普通に動いてる
明らかにお前のmicroSDが悪い
0061名前は開発中のものです。2007/05/08(火) 01:03:48ID:D70iJ7rj
うちもR4だけど うごくで?
ただ、画面から動画がはみ出してるけど\(^o^)/
0062612007/05/08(火) 01:07:20ID:D70iJ7rj
おっと訂正 最後の1フレーズで飛んでフリーズだわ
0063名前は開発中のものです。2007/05/08(火) 01:24:05ID:ooYgEOtg
>>59
置く場所間違ってるだけじゃね?
0064名前は開発中のものです。2007/05/08(火) 06:05:46ID:bToGIqLO
microSDは a-data 東芝で動かなかった・・・orz
0065名前は開発中のものです。2007/05/08(火) 07:18:14ID:bToGIqLO
http://up3.viploader.net/mini/src/viploader136244.zip

動いたー

っ すきん
0066名前は開発中のものです。2007/05/08(火) 10:22:42ID:cd24JBcZ
細かいことを言うとあれだが、本家WMPだと
再生中に「一時停止ボタン」が表示されて
一時停止中に「再生ボタン」が表示されるんだよね
ボタンの機能を表示するか、現在のステータスを表示するかなんだけどね
0067名前は開発中のものです。2007/05/08(火) 22:18:05ID:1OObYo6q
DSで動く、日本語(漢字など)も使えるエディタは作れないものか
0068名前は開発中のものです。2007/05/08(火) 22:28:12ID:SsfRj51a
>>67
ATOKとかMS-IMEみたいな漢字変換ライブラリを作ってくれたら作れるよ
0069名前は開発中のものです。2007/05/08(火) 23:14:14ID:cjZWy55g
Linuxとかで使われてるのならオープンソースでフリーのがあるよ
0070名前は開発中のものです。2007/05/09(水) 00:53:30ID:7zdYh5y4
>>69
任せた
0071名前は開発中のものです。2007/05/09(水) 02:15:50ID:BYMV35Oq
DSMPで再生中完全フリーズするのは、動画側のエラーなんかな?
物によっては完走するので
0072名前は開発中のものです。2007/05/09(水) 08:23:16ID:B4n4WDrd
再現したことがないのでわかりません
0073名前は開発中のものです。2007/05/11(金) 23:47:22ID:4e1ivnnK
えろげこんばぁたぁまってますよ
0074名前は開発中のものです。2007/05/12(土) 10:56:26ID:Jej5bFNf
まずははじるすですよ
0075名前は開発中のものです。2007/05/13(日) 23:07:47ID:XBYGxj8Z
http://up3.viploader.net/mini/src/viploader137808.zip.html
fmsxDS 0.6 DLDI対応 アンオフィシャルテスト版
う〜ん自分には無理かも…
0076名前は開発中のものです。2007/05/14(月) 04:36:41ID:mEyOEgzk
>75
0077名前は開発中のものです。2007/05/14(月) 04:38:17ID:mEyOEgzk
>>75
しまったPASSはdldi
0078名前は開発中のものです。2007/05/14(月) 12:15:28ID:Mb4m3oBs
とりあえずDeSmuMEのFAT部分をどうにかしようと考え中
今のところDSMPlayとかMoonshellとか動いてる状況
0079名前は開発中のものです。2007/05/14(月) 13:03:26ID:iunJLtuy
3g2とか再生できると熱いよね
0080名前は開発中のものです。2007/05/16(水) 05:17:45ID:h4OBkN9Q
OPLLのエミュレーションをARM7でやらせようとしたら、コードだけで0x8000越えてる罠。
0081名前は開発中のものです。2007/05/16(水) 06:53:31ID:h4OBkN9Q
ARM7用バイナリから、OPLLエミュのソースをはずしてコンパイルしても、容量空かない。
ndslibだけで容量食われてる?
色々情報集めてみます…
0082名前は開発中のものです。2007/05/22(火) 15:19:25ID:Lr8LbkHm
devkitProのdevkitARMでプログラムしてます
ARM7のスタックとヒープエリアはWRAMですよね
特に意識してプログラムしなくてもARM9と干渉することはないと考えてよいでしょうか
0083名前は開発中のものです。2007/05/23(水) 07:45:05ID:idMNbs3F
>>82
ARM7のプログラムが置かれるWRAMは専用の領域だそうです。
ttp://www.bottledlight.com/ds/index.php/Memory/Layout
のPrivate RAM(0x03800000〜0x0380FFFF:64 KB)

Shared RAM(0x037F8000〜0x037FFFFF:32 KB)
を、ARM9からWRAM_CR = 3を実行してARM7に割り当てようとしたんですが
0084名前は開発中のものです。2007/05/23(水) 07:49:34ID:idMNbs3F
すみません途中できれました。
(続き)
ARM7からShared RAMの部分をアクセスしたらフリーズしてしまいます。
しょうがないので、VRAM_DをARM7のメモリ空間に指定して使ってます。
(desmumeのソースを参考にしました)
0085822007/05/23(水) 11:58:16ID:motUPcYL
>>83
ARM7はプログラム自体がWRAMに置かれるのですね
それでプログラムサイズの制限が64Kだったんだ
私もVRAM_Dを使うことにします
0086名前は開発中のものです。2007/05/23(水) 14:29:57ID:CBYIFONF
それって高速動作が必要な関数だけじゃないの?
プログラム全部で64kてしょぼすぎる。
0087名前は開発中のものです。2007/05/23(水) 15:28:30ID:motUPcYL
>>86
http://www.helloworld.jp/~duke/nintendo_ds/nds_develop4.html
には
GBADEVフォーラムにおけるポストでは、DevKitPROでは、
ARM7実行可能コードは最大64KBに制限されると言及されました。
って書いてあるんだ。
0088名前は開発中のものです。2007/05/23(水) 15:34:36ID:motUPcYL
サウンドルーチンだけなのでコード部分は64Kあれば十分かな。
ただサウンドバッファ用のメモリをどうするかで悩んでました。

ところでVRAM_DはARM7からアクセスするときもワード単位ですかね。
0089Moonlight2007/05/23(水) 17:43:56ID:GSLlsCFn
横槍失礼します。

VRAMC/DはARM7からアクセスするときは8bit読み書きできて、普通にWRAMの増設に使えるので便利でした。
ARM7でmallocすると、WRAMのコード領域を除いたエリアから切り分けしてくれますが、普通の4MByteメモリをARM9でmallocしてIPCでARM7に渡してやれば、ARM7で自由に使えます。
malloc使わないで4MByteエリアを同時に使っても構わないのですが、メモリ管理が面倒なので普段はARM9からmallocするかな、くらいの感じです。

補足1。ARM9のデータキャッシュ(読み書き両方)さえ気を付けていれば、ARM7とARM9のデータ通信に4MByteエリアを使うことも出来ます。
補足2。4MByteエリアを同時にアクセスすると、どちらかのCPUがもう片方のCPUを待ちます。どちらのCPUが待つかはREG_WAIT_CR (*(vuint16*)0x04000204) で設定できます。
補足3。REG_WAIT_CRの設定はARM9側からしかできません。
補足4。DevKitProR20で正式採用されたARM7用WRAM96kbyte設定ですが、一部のファームウェアはこれを正しく扱えません。
問題があったときは(リンカスクリプトをいじるのは面倒なので)r17aかr19辺りを使うのが楽だと思います。SharedRAMを結合しないのでWRAMが64kbyteになります。
補足5。サウンドバッファを4MByteエリアに確保するときは、CPU優先設定をARM7優先にしておかないと、ARM9に負荷が掛かるたびにブツブツ切れます。
補足6。ARM7で大量のメモリをハンドリングするときは、VRAM_CとVRAM_Dを両方ともARM7に割り当てて(ついでに暇があればリンカスクリプトをいじってmallocをVRAM領域にして)256kbyte使うと便利です。
この場合はARM7優先設定する必要がありません。
補足7。libnds-20060719より前の基本ライブラリにはVRAM設定が不十分です。128kbyteまでしかdefineがありません。VRAMC/Dを256kbyte全部ARM7に割り当てるときは、libnds-20070127以降を使う必要があります。
defineを自分で定義すれば気にしなくても大丈夫だと思います。

長い上に箇条書きな補足ばかりですいませんです。

追記、C++を使うと(例外とか使わなくても)C++ライブラリが組み込まれるので、r18/r19b辺りを使うときは、ARM7でC++を使わない方がいいかも。
0090882007/05/24(木) 07:06:54ID:aj7YaroW
>>89
バイト単位で読み書きできるんですね
その他情報も参考になります
ありがとうございました。
0091名前は開発中のものです。2007/05/25(金) 03:43:00ID:4YzO8T1a
ありがとうございます。参考になりました。
なるほど、DevKitProR20はすでに共有WRAMもARM7に割り当てているのですか…
ファームによっては動かないのは困りますね。やはりVRAMをARM7に割り当てることにします。
そしてARM7のソースはCPPではなくCソースとしてコンパイルするようにしてみました。

頂いた情報を元にして色々弄ってみます。
0092名前は開発中のものです。2007/05/26(土) 14:07:43ID:prDWTsQK
すみませんが誰か助けていただきたく

最近になってdevkitProで遊び始めました
examplesのndsをmakeしまくったら全部動いたので、今度はデータを変えて動かしてみようと
SimpleSoundのrawデータを手持ちのwavをrawに変換して置き換えたところ
元のwavのそれっぽい音は鳴ったのですが同時にブチブチノイズが入って(´・ω・`)ショボーン
wavを8bit,16bitに変えたり周波数を変えてソースもそれに合わせて変えても同じでした

動作はエミュレータのdualisと実機で確認しました
wavはSoundEngineで編集、rawへの変換はHomebrewを参考にしてsoxを使いました
音量の制限とか特別なツールが要るとかなにかコツがあったら誰か教えて欲しいです

プログラムの話じゃなくてすみません
0093Moonlight2007/05/27(日) 21:05:25ID:MUD6Al/y
>>92

http://mdxonlinemirror.dyndns.org/sndtest.zip

A/B/X/Yボタンでそれぞれ違うフォーマットのサウンドファイルを再生するサンプルをでっち上げました。
変換にはSOXを使用しました。変換オプションはsndtest/arm9/data/convert/conv.batを参照してください。
DevKitProのcombinedサンプルをベースにしましたが、ARM7とARM9で8bit/16bitの設定方法が食い違っていたので、ARM7のtemplate.cを修正しました。
devkitPror20/nds-examples-20070327/templates/combined/arm7/source/template.cの10行目を、
SCHANNEL_CR(channel) = SCHANNEL_ENABLE | SOUND_ONE_SHOT | SOUND_VOL(vol) | SOUND_PAN(pan) | (format==1?SOUND_8BIT:SOUND_16BIT);
から、
SCHANNEL_CR(channel) = SCHANNEL_ENABLE | SOUND_ONE_SHOT | SOUND_VOL(vol) | SOUND_PAN(pan) | (format==0?SOUND_8BIT:SOUND_16BIT);
に変更してあります。
あと、ダミーの割り込みを有効にしないと、swiWaitForVBlankは使えないので、InitInterruptsで空の割り込みを有効にしてます。combinedサンプルはそのままじゃ動かない…ですよね?

ここから下は補足です。
NDSのサウンドチップは32768Hzをベースにしているので、これ以外の周波数を鳴らそうとすると量子化ノイズが入ります。
A/Bボタンの22kHz再生でチリチリ言うのがわかると思います。容量の問題ならもっと下げて16384Hzで二倍オーバーサンプリングするのが良いと思います。
ADPCMは未だになんだかよくわかりません。二種類のADPCMを使えるみたいですが。
ステレオデータを再生するときは、左右分離してデータを二つ用意して、パンを両端に振って同時に再生すればOKですが、libndsの標準関数を使うと1vsync(16ミリ秒)ずれるので、自分でステレオ再生用関数を作った方が良いと思います。
8bit/16bitは、平滑化フィルタを入れれば8bitでも充分かなと私は思っています。容量などを考えながらケースバイケースで使い分ける感じで。
ちなみに、DSMPlayは8bitデータで平滑化フィルタを使っています。sin波ボタンでON/OFFできるので、聴いてみたいだけなら試してみてください。
0094名前は開発中のものです。2007/05/28(月) 03:35:30ID:GoMQTjDv
量子化ノイズは振幅方向じゃないですか
0095Moonlight2007/05/28(月) 05:00:53ID:KQ4mCJx4
>>94

わ、確かにその通りです。慧眼お見それしました。量子化ノイズはAD変換かビット数変換時のノイズですよね。適当なこと書いてごめんなさい。
適切な表現がわからないのですが、周波数変換は(おそらく聴く限りでは)最近傍補完なので変換誤差が大きい、ということです。
モスキートノイズのようなものが入るのですが、こういう現象を表現する単語があったら教えて頂けると有り難いです。
0096名前は開発中のものです。2007/05/28(月) 10:03:54ID:2YHfuliX
なるほど、エミュレータの改造してて、サウンドの生成とかしてるので
参考になります。
ハードウェア側の基本周波数に合わせた周波数設定にしないと、
ハードウェアによる補完が発生→音質の低下が発生する
なんですね。

出来るだけ少ないデータで音質をあげたいので、参考になりました
0097名前は開発中のものです。2007/05/28(月) 20:28:54ID:3IWalm8E
>>95
ttp://www.groovecube.com/ja/tutorial/tech_alias.html
これでいいのかな
0098名前は開発中のものです。2007/05/29(火) 22:12:53ID:8czSWuso
16bit色背景を使ってるんですが、透過色にしたいときはそのドットのアドレスに何を入れればいいんですか?
0099名前は開発中のものです。2007/05/30(水) 07:17:31ID:T+UjS17y
>>98
0x8000じゃないですか
0100名前は開発中のものです。2007/05/30(水) 11:45:42ID:gnisP2wT
ありがとうございましゅ〜
0101名前は開発中のものです。2007/06/01(金) 12:30:36ID:WIXJ61jG
>>99
0x8000だと黒くなってしまうのですが。
0102992007/06/01(金) 17:36:25ID:7cHDqmoD
>>101
適当に書いただけだからごめんね
0103名前は開発中のものです。2007/06/02(土) 14:15:45ID:E7QBhPlx
>>92
ソースまで付けていただいてありがとうございます
おかげさまでwavをきちんと再生できるようになりました
結局soxの使い方が間違っていただけのようです(^^;

大きなデータを入れたらコンパイルが通らなかったので次はファイルシステムをいじってみようと思います
arm7は最大64KBの制限があるとの記述を見つけたのですが、arm9のサイズ制限っていくつでしょう?
0104名前は開発中のものです。2007/06/04(月) 08:26:57ID:QTKoOJgP
>>103
arm9はメインRAMに転送されるから4MBかな
0105名前は開発中のものです。2007/06/04(月) 10:38:44ID:+Dw64mCi
>>103
ARM7にそんな制約はない。
0106名前は開発中のものです。2007/06/04(月) 11:17:04ID:QTKoOJgP
>>105
ndsファイルから転送されるARM7プログラムが64KBまで
メインRAMにプログラムロードしてジャンプすればそれ以上も可能だけどARM9とのメモリ管理が大変だと思う
0107名前は開発中のものです。2007/06/04(月) 11:39:01ID:+Dw64mCi
だからそれはARM7の制約じゃないって。
0108名前は開発中のものです。2007/06/04(月) 12:41:16ID:AXHKpxL6
ARM7側って書けば良いんだろ。オマエ細かいことにこだわりすぎ
0109名前は開発中のものです。2007/06/04(月) 17:04:59ID:QTKoOJgP
>>107
そんな当たり前のことは前提で書いているのだと思った
0110名前は開発中のものです。2007/06/04(月) 18:02:12ID:uE7vHbRc
メインRAMをARM7側が占有しても何の問題も無いと思うが
0111名前は開発中のものです。2007/06/05(火) 01:05:28ID:KdmaRc3b
さすがage厨だ
0112名前は開発中のものです。2007/06/09(土) 03:57:55ID:3WhHJTTj
age厨うざいですよ
0113名前は開発中のものです。2007/06/10(日) 00:13:14ID:uiXXcFw3
タッチパネルを使ったプログラム作ってるんですが、時々ズレた座標を取得してるみたいなんです。
当然、タッチパネルのキャリブレーションは行っています。
出来るだけ誤差の少ない座標の取得方法ってあるのでしょうか?
ピクトチャットだと全然ズレないんで、ハードがおかしいってことは無いと思います。
0114名前は開発中のものです。2007/06/10(日) 05:50:40ID:pzGrWNqU
age厨って本当にウザいですね
死んでもらいたいものです
0115名前は開発中のものです。2007/06/10(日) 12:28:40ID:uTxkIh/P
>>114
ageても荒らしなんて来ないから安心しろ。
びびりすぎだぞ。
0116名前は開発中のものです。2007/06/10(日) 15:10:45ID:Yn+Hy7qH
age
0117名前は開発中のものです。2007/06/10(日) 17:19:02ID:aLDgBZvj
>113
サンプリング周期を短くして、16msといわず
5msくらいで・・NDSってタイマーとかあるでしょうか。
三個をくらべて一つだけ急に離れてるのを捨てる、とか、
三個の平均を16msの間のタッチ位置として扱うとか・・・

タイマー50msのマシンで16msのFPSを計りたいときのしくみに
似ているように思ったので。
0118名前は開発中のものです。2007/06/10(日) 22:41:08ID:J1iCwWbV
色々考えたんですが、前回取得した座標とプラスマイナス何ドット以内であれば有効という処理で、
ある程度有効な座標が取得出来る様になりました。
当然若干の誤差も拾ってしまいますけど、以前よりは格段に誤差を拾わなくなったのでOKとしました。
サンプリング回数を多くしたりすると、タッチして書いた線がガタガタになるとかそいう弊害がでたりしたので。
もっといい方法があると思うんだけど、思いつかなかった。
0119Yuki ◆YukiquDWwY 2007/06/20(水) 22:09:04ID:dNQ/54qe
Moonshellの開発したいのですがどのようにすればいいのでしょうか?:

Moonshell 1.7をdevkitARMr20でコンパイルしようとしましたが、
makefileがなくて、main.cをそのままコンパイルしようにも、
エラーがたくさん出るしで... _touch.hなんて入ってませんし。どのようにすればいいのでしょうか?
1.6のソースには_touch.hもmakefileもありますが、コンパイルエラーが出てしまいます...
0120名前は開発中のものです。2007/06/21(木) 08:27:30ID:r1ZNTRDh
Moonshellは昔のdevkitバージョンじゃないとコンパイルできなかったような
devkitも定数名とかバージョンによって変わってるからねー
バージョン会わないとそんな定数無いよとか言われるよ
0121名前は開発中のものです。2007/06/26(火) 20:57:47ID:B6+HckOx
PocketPCのEMUがほしいです
0122名前は開発中のものです。2007/06/26(火) 22:42:14ID:vhFQ0NHQ
>>121
欲しいけど無いから自分で作る、作ろうと努力する。
ここは、そういう人が集うスレです。
0123名前は開発中のものです。2007/06/28(木) 22:37:08ID:opyrYDS8
そうですよん。
依頼するところじゃないです。
0124名前は開発中のものです。2007/06/29(金) 20:45:49ID:mT9VFj6f
>>121
PocketPCを買えばいいよ
俺って頭良いな
0125名前は開発中のものです。2007/07/03(火) 18:26:00ID:Ftt0VCZo
PCエンジンのエミュ作ろうとしたけど
まったく手も足もでませんでした。
0126名前は開発中のものです。2007/07/06(金) 22:00:18ID:+OKmtdt0
DS ROMのヘッダ部に記載されているMaker Code2桁がどのメーカーなのか、という
リストってどこかにないですかね?
手持ちの分は調べたんですが5つ程度しか分かりませんでした・・・
0127名前は開発中のものです。2007/07/07(土) 10:11:51ID:d3FNx67E
http://www.patatersoft.info/nintendods.php
このサイトけっこう情報が載ってていけてる
0128名前は開発中のものです。2007/07/07(土) 18:09:14ID:uQIzJBz7
ついでに ttp://mdxonline.dyndns.org/
ここの人ここ見てたら‘突発性難聴‘でぐぐって
当てはまったら医者行った方が,(経験者
0129名前は開発中のものです。2007/07/08(日) 10:57:38ID:rDPYYRW1
ここの人ワロタ
■ このスレッドは過去ログ倉庫に格納されています