コンピュータを楽しもう!!

今、自分が面白くていろいろやってみたことを書き綴りたいと思います。連絡先はtarosa.yでgmail.comです。

NDS

DSとDSをLANで接続する

ピアツーピア通信の意味が今ひとつ分かっていないので、単純にDSとDSをLANで接続するというタイトルにしてみました。ということで、適当なデモプログラムを作りました。 ds2ds接続テストプログラム de2detest()関数は、IP_DispSelect()から戻ってくるkeyの値…

DSでPeer to Peer通信?

今回はポケットWiFi経由でDSをつなぐ話です。やっと「埒」が明きました。皇帝さんにデーモン側のソケット通信について教えてもらいました。いやぁ、目から鱗とはこのことで、dswifiのライブラリ群はunix等のライブラリと同じなんですね。そこのところを全然…

DS-DSのアドホック通信

nds

ついに、昨日はブログを書く時間さえ取れなくなってしまった・・・。気を取り直して、今日からまた続くように頑張りたいと思います。目標はブログを書き出したときに決めた3月末ですね。そこまでは毎日更新というのを頑張って行きたいと思います。ポケットW…

30fps割り込みを試してみる

dswifiがうまく行かないので放置状態です。DSが2台必要なのもテストに面倒なところですね。子供から1台借りないといけない・・・。 そこで、そっちは置いといて、前々からやりたかった30fps割り込みを試してみました。 VBlank割り込み ndsの割り込みとしては…

dswifi0.3.11のプロジェクト

dswifi0.3.11を自作プロジェクトに組み込んでMakeできるようにしたので、その条件だけを簡単に説明しようと思います。 フォルダは下記のような感じに作りました。 dswifiというフォルダにarm7、arm9、common.hというフォルダを作り、arm7とcommon.hフォルダ…

ポケットWiFiを買ったので

EMOBILEから出ているPocket WiFiを買いました。 これは3G通信に繋がる小型のWiFiルータです。長さ10cm弱、幅5cm程度の手に収まる小さな端末です。このポケットWiFiですが、これをもっているだけでEMOBILEの電波が届けば、どこでもインターネット通信ができる…

サウンドデータを作成する

DevkitProのサウンドライブラリは音を鳴らすのに、チャネルにサンプリングした生波形データをセットします。そのため、あらかじめこの生波形を用意しておく必要があります。プログラム内で生波形を生成してもいいですが、とりあえず、先に作っておいた方が楽…

サンプリング周波数が20bit欲しかった理由

DevkitProのndslib1.4.0のサウンドライブラリのサンプリング周波数設定を16ビットから20ビットに拡張したのですが、20ビットというと1048575Hzまで設定可能です。何で16ビット65535Hz以上のサンプリング周波数が欲しかったかというと、プログラムで使ってい…

拡張版のサウンドライブラリ

DevkitProのlibnds1.4.0のサウンドライブラリを自己拡張したものをNDS Program Roomにアップしました。 内容はこのブログで説明したソースをDevkitProのlibnds1.4.0でMakeできる形にして上げたのです。興味のある方は試してみてください。とりあえず、サウン…

音がダメダメになった原因がわかった

結局、ARM9からARM7に渡しているところに原因がありました。freq(周波数)の設定を渡すところが下記。 //ARM9側 void soundSetFreq2(int soundId, u16 freq){ fifoSendValue32(FIFO_USER_05, SOUND_SET_FREQ | (soundId << 16) | freq); } //ARM7側 //-------…

音がダメダメになった

一昨年作ったサウンド周りのプログラムを、新しいndslib1.4.0でビルドできるように修正していたのだが、古い自作のサウンドツールはサンプリング周波数が65565Hzを超えてもサポートしていて、きちんと音が鳴っている。 それに対して、ndslib1.4.0用のサウン…

一昨年作ったサウンド関連のプログラム移植

最新のDevkitPro(libnds1.4.0)にあわせて、サウンド周りを修正したので、昔作ったプログラムのコンパイルが通らなくなった。 まぁいいかなと思って、そのままにしていたのだが、昨日の懇親会であの楽器(Innocence)が受けたので、ちょっと、libnds1.4.0に移植…

サウンドの拡張(2)

昨日のブログで、サウンドの拡張について書きましたが、追加した部分と方針変更した部分があるので書いておきます。 FifoMessageTypeの拡張 昨日のブログでは、FifoMessageにplaychanelを追加して、上位ビットにチャネル番号、下位ビットに制御コードを割り…

サウンドの拡張(1)

ndslibのサウンドライブラリですが、長い曲が再生できないのを修正した後、いろいろと使っていて欲しい機能がいろいろ出てきたので、独自拡張しました。 ARM9側からサウンドチャネルの制御 従来のサウンドコマンドは、ARM7側空ききチャネルを探してサウンド…

DevkitProで使われているdswifiについて(5)

今日は、dswifiを使ってhttpサーバからデータを取得するプログラムを作ったので紹介します。 昨日のブログに書いたSimpleHttpGet()からちょっとだけ拡張されています。 //************************************************** // 指定httpサーバから指定ファ…

DevkitProで使われているdswifiについて(4)

いつも夜遅くなって、中々進みませんが、書いてみます。 とりあえず、例として、dswifiを使ってインターネット上のサーバからファイルをもらうプログラムを書きました。 //************************************************************************ // wif…

DevkitProで使われているdswifiについて(3)

今日は遅いので、少しだけ書きます。 ndsでwifiを使うイメージがわくように、起動から接続、終了までを簡単に書いておきます。 ndsでwifiが使えるようにする(wifiの初期化) これをしないと始まりません。 Wifi_InitDefault(false); ですね。 wifiを動作させ…

DevkitProで使われているdswifiについて(2)

前回に引き続き、ソースを見て行きたいと思います。どうも、dswifiのfifo通信の方法はSond関連とは違うようです。ARM7とARM9を橋渡しする構造体が存在するところは同じです。 Wifi_MainStruct構造体 wifi_shared.hにあるWifi_MainStruct構造体のようです。 t…

DevkitProで使われているdswifiについて(1)

DevkitProに使われているdswifiについて、私も余り詳しくは無いですが通信のソースを読んで、何をしているのか調べてみたいと思います。 今日は、紀伊半島から新幹線で東京出張日帰りというヘビーな1日だったので、何やかんやしていたら、こんな時間になって…

jpegで何かできないかな

NDSでjpegの表示プログラムを作ってみたので、何かできないかなと思ってちょっと試してみた。 jpeg画像をネットからもらってくることを考えた。そこで、ピアプロの「注目の作品」のサムネイルをNDSに取得して表示させてみた。 プログラム手順としては、 NDS…

FIFO API(2010.1.20に書いて消してしまった分)

任天堂DSで動くプログラムを作ることができる開発ツールDevkitproの話です。NDSはARM9とARM7の2つのCPUが同時に動いていて、お互いに通信しながら処理を行っています。 Devkitproでは、fifoを使ってARM9とARM7間でデータをやり取りするAPIが用意されています…

画像の表示

NDSでjpeg画像の表示をやってみようかなと思って、ソースをMakeしてみた。ソースはいつ手に入れたか忘れてしまったが、gba-jpeg-decodeというもの。ソースだけあって何もわからなかったが、ソースを眺めていると、そのままMakeすれば動きそうである。 そこで…

FIFO APIについて

昨日書いたブログを手違いで消してしまったようなので、もう一度書いてみます。 DevkitProのFIFO APIに音を鳴らすFIFOSound機能があります。NDSではARM7が音を鳴らす機能を受け持っているので、ARM9からARM7にデータを渡して鳴らす指示を与える必要がありま…

fifoSoundの修正アップしました

DevkitProのfifoSoundの不具合を修正したものをアップしました。 アップ先はNDS Program Roomです。ARM9用のsound2.cとARM7用のaudio2.c、その他もろもろの自作ソースを添付しています。プロジェクトを立ち上げて、そのままMakeすれば、fifosong.ndsが出来上…

OsoScriptアップしました

昨夜のバグは取れていませんが、DS版のOsoScriptをアップしました。場所はhttp://www.geocities.jp/momoonga/です。後、ニコニコ動画にも如何に遅いかという動作確認動画をアップしました。 わかっているバグ DS版の確認しているバグは下記のものです。たぶ…

DS版OsoScriptを作った

あれもこれもと一通りの機能を付けていたら、こんな時間になってしまいました。でも低機能です。ColdFireに持って行くためのテスト版というところでしょうか。今までブログに書いてきた機能は実装されています。とりあえず、NDS版用に新規実装した命令を説明…