21

楽しみのために古いゲーム機にプログラムする方法を知りたいです。

Cなどのプログラミング言語を使用できますか?アセンブリを使用する必要がありますか?コンソールコンパイラ、アセンブラ、APIを知りません。私はコンソールを所有していないので、ROMイメージにコンパイルしてエミュレーターでテストする必要があります。

各コンソールには興味深い機能があり、それらを試してみたいと思います。

  • Atari 2600(128バイトのRAMのみ)
  • NES(8ビットのみ)
  • SNES(優れたコンソール、16ビット)
  • PS1(3D、コンプレックス)
  • ゲームボーイ(シンプル、単色)
4

3 に答える 3

4

Atari、NES、GameBoyなどの古いシステムは、通常、アセンブリまたはCでプログラムされます。私が遊んだGameBoyには、次のようなさまざまな開発ツールがあります。

Rednexゲームボーイ開発(ASM):http:
//www.otakunozoku.com/rednex-gameboy-development-system/ GBDK(C):http: //gbdk.sourceforge.net/

そして、そこにはたくさんのデッドリンクがありますが、このページには、ゲームボーイ開発全般に関する多くの良い情報とリンクがあります: http ://www.devrs.com/gb/

NESには、私が知っている2つのアセンブリチュートリアルがあります。2番目のチュートリアルは最初からリンクされており、優れていると主張していますが、前回このトピックに興味を持ったときに2番目のリンクが存在しなかったため、コメントできません。
http://www.patater.com/nes-asm-tutorials
http://www.nintendoage.com/forum/messageview.cfm?catid=22&threadid=7155(このリンクは無効になりました。ウェイバックマシンを使用してください)

それほど新しいものではない場合、GBAには多くの優れた自作リソースがあり、通常はCを使用してプログラムされます。GBAに関する豊富な情報により、開始するのに適した場所になります。

DevKitProは、GBA開発用の完全なGNUツールチェーン(DevKitARM + libgba)を提供します:http ://www.devkitpro.org/

TONCは、GBAにとって非常に優れたガイドであり、詳細な説明がたくさんあります:http: //www.coranac.com/tonc/text/

最後に、GBAのハードウェアを詳しく説明した必須のgbatekシート。これにより、グラフィックモード、サウンドモードの変更、割り込みの使用などを行うために、GBAでどのレジスタを使用する必要があるかがわかります
。http://nocash.emubase.de/gbatek.htm

これらの古いゲームシステムのプログラミングは、マイクロコントローラーのプログラミングと多くの共通点があります。ある種の抽象化レイヤーがなければ、最も基本的なことを行うために、レジスターのビット単位の操作をたくさん行う必要があります。

編集:GBAプログラミングをしているときに私が遭遇した主な問題は、サウンドレジスタがどのように機能するかを理解することでした。チュートリアルに関しては、それは本当の盲点でした(そうですか?)。当時の最高のリソースは、gbatekシートとこれらのサイトを研究することでした:http:
//deku.rydia.net/program/sound1.html
http://belogic.com/gba/

于 2011-07-01T01:50:23.973 に答える
1

また、過去のマシンと同様に動作するように設計された「オープンな」自作コンソールもいくつかありますが、情報や使いやすいツールへのアクセスははるかに簡単です。

XGameStation Picoのようなものは、Atari 2600 に似たエクスペリエンスを提供し、Micro Edition ははるかに強力で、同様のコンソールがどのように機能するかに関するドキュメントが付属しています.

商用リリースされた大規模なコンソール用に開発することを明示的に考えていない場合、これらは優れた代替手段として機能し、組み込みプログラミングに慣れていない人にとってははるかに優れた学習ツールになる可能性があります.

于 2011-07-01T02:05:06.583 に答える
1

コンソールのメーカーは、(ほとんどの場合) 高度に専門化されているため、マシンのプロセッサ用に独自のツール/コンパイラ (SDK) を提供しています。

しかし、ほとんどの場合、C/C++ でコーディングします。ASMに頼らないよりも頻繁に必要になると確信しています。

このリンクを試してください: http://www.emuparadise.me/sdk/index.php

Google キーワード: SDK、コンソール、自作、インディー

于 2011-06-30T20:15:01.787 に答える