ニンテンドーDSでのプログラミング
-
02-07-2019 - |
質問
を読んでいたこれは以前の回答であり、組み込みデバイスのプログラミングを学ぶためにニンテンドーDS Liteを購入することに興味を持ちました。外出してDSを散財する前に、いくつか質問がありました。
-
プログラムできるものに制限はありますか?前に示した投稿は、そうではなかったと言っているように見えますが、説明はいいでしょう。
-
arduino(または同様のもの)を購入して、そのルートに行く方が良いでしょうか? DSにはすでに多くのハードウェアが組み込まれているので気に入っています。
-
CycloDS Evoカードの入手を考えていますが、自作にはもっと良い選択肢がありますか?
-
DS開発について学ぶのに最適なリソースは何ですか?
お時間をいただきありがとうございます。DSとプログラムをお持ちの場合は、ご意見をお聞かせください。または、より良いアイデアがある場合は、それも聞きたいです。
ありがとう=]
解決
-
いいえ、実際にはそれほど多くはありません を超えた制限 ハードウェア、さらには 十分な努力で克服します。地震 たとえば、DSに移植されました。 両方を利用するパーティクルゲーム プロセッサが作成されました。そこ 方法についての議論もされています を使用して高品質の3Dシーンを作成する ダブルパスレンダラー。がある 任天堂の複数のリソース GBADevのDSセクション フォーラム。
-
I DSは 組み込みシステムへの優れたルート 開発;大きくて 喜んでいるアクティブなコミュニティ 質問に答えてサポートを提供し、 たくさんのハードウェアが構築されています まっすぐに。節約する あなたがシステムを構築する時 テストします。
-
CycloDS Evolutionは 良いカードとかなり一般的ですので、 難しいことではない-場合 まったく必要-あなたの自作を互換性にする 他のカード。ただし、 他の人気のある選択肢はM3です 行とR4行 ほぼ同じこと。私は持っています TTDS、それはうまく機能しますが、そうではありません 箱から出して。お勧めします 言及された他の3つ。
-
は DSの開発を開始すると、 基本を見ることをお勧めします devkitProの
examples
フォルダーにあり、 GBAを読んでいる例 チュートリアル TONC 、 概念の多くをカバーしています GBAとDSの両方で使用される 開発。よりDS志向 チュートリアル、パターン ニンテンドーDSの紹介 プログラミング、 初心者が道を進むのを助けます DSの世界で。 非常に包括的なドキュメントもあります。 として知られているGBAとDSの仕様 GBATek 。
他のヒント
約1年前にDS Liteで少しプログラミングをしました。私が抱えていた主なハードウェアの制限は、WiFiハードウェアでの作業でした。当時、自作のライブラリではDS-DS通信ができないことがわかりました。それが変わったかどうかはわかりません。また、別のデバイスへのアドホック接続を形成できないこともわかりました。インフラストラクチャモードで802.11bネットワークに接続する必要があり、SSIDをブロードキャストする必要がありました。
開発には
を使用しました- PALib(ヘルパーライブラリ): http://www.palib.info/ wiki / doku.php?id = day1
- DevKitPro(ツールチェーン): http://www.devkitpro.org/
- no $ gba(DS Emulator)- http://nocash.emubase.de/gba.htm
- Supercard Lite(自作アプリケーションを実行するためのハードウェア)- http://www.realhotstuff.com /-c-32_81.html
DSのGBAおよびDSスロットを使用する必要があるため、Supercard Liteはお勧めしません。当時はこれが唯一の選択肢でした。現在、R4などのDSスロットのみのソリューションがあります。 R4を使用している友人がいて、R4でかなりの成功を収めていますが、自分では使用していません。
DSでプログラミングを行ったことはありませんが、GBA(Game Boy Advanced)で開発を行いました。組み込みデバイスをプログラムする方法を学ぶことが目的の場合は、それが適切な選択肢になる可能性があります(もちろん、より安価なものです)。オンラインで入手できる無料の書籍もあります: Nintendo Gameboy Advancedのプログラミング。 GBAをお勧めします。私が見たように、GBAをプログラミングする方法を学ぶためのオンラインリソースがもっとたくさんあるからです。欠点の1つは、Wi-Fiがないことです。つまり、DSの場合ほど多くのクールなことはできませんが、それは確かに始まりです!
1、2、または3については何も言えませんが、GBAプログラミングに使用するリソースにはDS情報もあります:
http://nocash.emubase.de/gbatek.htm (これは詳細な技術仕様書ですが、その点で気に入っています)
また: http://www.devkitpro.org/ コンパイラーなどについて
-
制限はハードウェアの制限です-4MbのRAMがあり、3DハードウェアはフレームごとにXポリゴンを処理できます。それとは別に、それはあなたがやりたいことをすることができる単なるハードウェアの束です。ツールチェーンは、C / C ++およびアセンブラー(ARM)をサポートしています。
-
さまざまなハードウェアが、私も気に入っている理由です。パズルの各部分を把握することがDSを楽しいものにします-ハードウェアの各ビットには、それを最大限に活用するための独自のトリックがあります。
-
自分では持っていないので、こちら。よさそうだ。
編集: PCとNDSの間でSDカードを頻繁に交換しますが、オンボードUSBソケットを備えたカートを使用すると少し速くなりますターンアラウンド。 -
最適なリソースはlibndsの例、そして gbadevフォーラムです。
>
先日、CycloDS Evolutionを入手しましたが、大好きです! DSOrganize は、私が望んでいたものを追加するミニOSのようなものです。 DSは、実際のカレンダーアプリのように付属しています!
マイクFの#3に対処するために、実際には DSのFTPサーバーがあります、ファイルをDSにワイヤレスで転送するために使用できます。私のネットワークはWPAを使用しており、DSはWEPのみをサポートしているようですので、私は自分で試していません。
正直、大学の組み込みシステムコースに参加しているときにニンテンドーDSと自作のコミュニティを見つけました。クラス用にプログラミングしていたATmega32ベースのキットと、 libnds経由のニンテンドーDSに夢中になりました。
個人的に、私は強いC ++のバックグラウンドから来ましたが、プログラミングしたものをポケットに入れて歩き回ることが、TI-83 Plus電卓を初めて手にしたので私の目標でした...ニンテンドーDSのおかげで、その目標を実現できるようになりました。
とにかく、私が過去数か月間と同じくらいDSの開発を楽しんでくれることを願っています。そして、皆さんの努力に幸運を祈ります。
私は両方ともDSよりGBAを増やしました。 GBAを最初にお勧めし、次にDSに移行することをお勧めします。 3 in 1サイズのezflash V gbaは良いカードです。 NDSを使用してカードに書き込んだgbaのブートローダーと、オフハンドの名前を思い出せないダウンロードしたプログラムがあります。ブートローダーがシリアルケーブルで動作し、プログラムをデバッグしたり、RAMにロードしたりできるようになりました。このカードを使用すると、カードのRAMにロードして、プリフェッチバッファーと大きなプログラムを利用してそこから実行することもできます。 NDSについては、多くのカードを試しました。 Cyclodは日々の使用には適していますが、開発にはそれほど適していません。私はAcekard 2またはR4の方が好きだと思います。あなたがカードを引き出し、SDカードを引き出してコンピュータにロードする回数を考えてください。あなたはslot0カードを引き抜かずに手に入れることができるSDカードスロットを備えたカードが欲しいのは非常に痛いです。サイクロイドはそうではありません。 NDSにとっては非常に良いカードです。 acekard 2が動作するNDSiでは動作しないと思います。 ndsとgbaの両方について、visualboyadvanceのようなシミュレーターで足を濡らすことができます。シミュレーターで動作するプログラムが実際のハードウェアで動作しないことは完全に正確ではなく、非常に一般的です。実際のハードウェアで動作するプログラムは通常シミュレーターで動作しますしかし。開発カードの取り外し、再プログラミング、交換は非常に苦痛です。ブートローダー、wifi、その他の回避方法はそれだけの価値があります。
Arduinosは楽しくて面白いです。リリーパッドとシリアルのUSBは私が推奨するものです。はんだ付けは不要で、大きな投資をせずに使用を開始できます。私はarmmite proの方が好きで、arduinoはフットプリントが好きですが、アームベースです(私が購入する唯一のlpcで、現在lpcファンではありません)。そして、シリアルのもの、通常のUSBケーブルとジャンパーを購入する必要はありません(ジャンパーにはんだ付けするまではおそらくクリップ)。さらに2つ注文しましたが、これまでのコードを出荷時のフラッシュを消去し、動作していないものを読み込むことができました。 olimex sam7-h64およびh256(ヘッダーボードat91sam7s256)に非常に満足しています。avratmelは優れた開発者にとって非常に開発者に優しいからです。 Sparkfunは、上記のすべてを米国で見つけるのに適した場所です。私のようにLinuxを使用している場合、Sam-baにはLinuxバージョンがあります.Windowsバージョンはしばらくの間存在していましたが、arduinoまたはarmmite proと同等に、dsまたはgbaよりもはるかに簡単に消去して再プログラミングできます同様。
以前の発光マイクロは、現在、ステラリスにいくつかの良いボードがあります。 gba / ndsに似ていますが、私が述べた他のボードとは異なり、ディスプレイや他の周辺機器がありますが、USBはプログラムに必要なものすべてです。親指モードのみ。 GBAはパフォーマンスのために親指モードを好みますが、どちらの方法でも可能です。覚えていませんが、バスの幅とタイミングを理解することはできませんでした。任天堂とその安っぽさの親指を知ることは、おそらくより良い/速いです。 lm3s811評価ボードは簡単にレンガにできませんでしたが、1968年は悪くありません。私は、彼らが開発者をソースから遠ざけ、rtosと特定のコンパイラースイートに合わせた事前に構築されたライブラリーに押しやっていることを好きではありません。