Apple IIでのゲーム開発はどのようなものでしたか?[閉まっている]


14

DOS開発について同様の質問を少し前に聞いたところ、優れた答えが得 られました。DOSゲーム開発の典型的なツールチェーンは何ですか?

今、私は70年代後半から80年代前半のApple IIでのゲーム開発はどのようなものだったのかと思っています。私は主に初期のIIとII +に興味がありますが、IIeなどについても答えが欲しいです。

だからここに私の質問があります:

どの言語が使用されましたか?

6502アセンブラーを想定していますが、BASICはバンドルされており、おそらく多く使用されていました。BASICで書かれた人気のあるゲームを思い浮かべますか?Cはどうですか?

6502アセンブラーの開発はどのようなものでしたか?

システムモニターを起動すると、オペコードを直接入力できることに気付きました。ミニアセンブラーでアセンブラーを直接実行することもできます。しかし、ゲームがそのように書かれているとは想像できません。編集者/ IDEがありましたか?プログラムはどのようにディスク/テープに保存されましたか?

BASIC開発はどのようなものでしたか?

Apple II BASICインタープリターは決して悪くはありません。そこで完全なプログラムを書くことができると思います。また、プログラムを保存/ロードすることもできますが、ディスク/テープに推測します。しかし、視覚的なエディタはありませんでしたか?

APIまたはミドルウェアはありましたか?

または、何かを描画したり、サウンドを再生したい場合は、常にハードウェアと直接会話する必要がありましたか?ライブラリはありましたか?

今日と違うものはありますか?

使用された画像/音声形式など、他の違いを喜んで聞きます。ファイルの概念を正しく理解していれば、実際にはファイルの概念がなかったことを考えると、それがどのように機能するのか疑問に思っています。アセンブラーでグラフィックとサウンドを入力する必要がありましたか?BASICではどのように機能しましたか?


Michael AbrashのGraphics Black Bookの紹介はJohn Carmackによって書かれており、彼はグラフィックスの作成がいかに簡単であったかを語っています-描画コマンドを実行すると、自動的に切り替わります 80年代にプレイして覚えたことから、これらの呼び出しはBASICから直接行うことができます。
フィリップ

私はすでに他のどこかにこれにリンクしていますが...とにかく、ジョーダン・メヒナーはプリンス・オブ・ペルシャのApple IIバージョンのソースコードをリリースしまし。それはあなたにとって興味深いかもしれません!
ローランCouvidou

Apple IIの最も顕著な特徴の1つは、グラフィックが直接メモリマップされていなかったことです。代わりに、システムは、メモリ内の行0に続く行が行1ではなく、行64である奇妙な種類のインターリーブシステムを使用しました。次に、メモリ内で行128が続き、その後にのみ行1が表示されます。これが、Apple IIゲームで奇妙な「トライバンド」ロード効果を見る理由です。
スティーブンスタドニッキー

回答:


5

私は、アップル(専門的ではありませんが、私が学んだことです)と、Applesoft BASICおよびアセンブラーで、趣味の人のためにどこでプログラミングをしました。他の言語も利用できました-ロゴは一般的で、Pascalはどこにでも書かれていましたが、それを使用した人は誰もいませんでした.Apple IIGSのOrca C、Forthタートルスタイル(またはロゴスタイルと呼ばれる)グラフィックスが浮かんでいるインタープリター。

私はあなたの質問のいくつかに取り組み、そして基本的なアイデアに取り組みます:

BASICで書かれた人気のあるゲームを思い浮かべますか?Cはどうですか?

多くのシェアウェアがBASICで書かれており、Applesoft BASICだけでなく、Integer BASIC(名前が示すように、浮動小数点数もありませんでした)もありました。Eamonシリーズが思い浮かびますが、私は他の多くを本当に考えることができません。また、Beagle Bros.によって書かれたソフトウェアの多くはBASICで行われました(主にゲームではなくユーティリティです)。

しかし、ほとんどの商用ソフトウェアはアセンブラーで書かれたと思います。

しかし、ゲームがそのように書かれているとは想像できません。編集者/ IDEがありましたか?プログラムはどのようにディスク/テープに保存されましたか?

私はMerlin Assemblerを使用して、IDEがそれを拡張しているかもしれないと呼んでいましたが、うまくいきました。前に言ったように、システムモニターに移動してオペコードを入力し、そこから実行できます。Merlinには、システムモニターから戻ることができる方法がありました(今どのように覚えているかはわかりません)。

しかし、視覚的なエディタはありませんでしたか?

Applesoft環境を少し良くしたサードパーティツールがあり、矢印を使用して画面をスクロールし、ビジュアルエディタのように編集することができます(行の最後でリターンを押すか、変更は保持されません)。私はそれが何であったか思い出せません、私はそれをかなり使いました。

または、何かを描画したり、サウンドを再生したい場合は、常にハードウェアと直接会話する必要がありましたか?ライブラリはありましたか?

Apple II + / IIe / IIcでは、ほとんどハードウェアと話していました。ROMには使用できるプログラムがいくつかありましたが、それらは非常に限られており、通常、さまざまなメモリ位置をPEEKおよびPOKEして、たとえば、グラフィックモードを変更したり、スピーカーをトリガーする49152を突くなど、目的の操作を行うためにレジスタを変更しました。

Apple IIGSでは、ROMには、豪華なGUIなどを実行するために、Macintoshに付属しているものと同様のライブラリスイートが付属しています。ROMは時間の経過とともに更新され、新しいライブラリを使用するシステムディスクをロードすると、ROMではなくディスクから読み取られるため、起動時間が非常に遅くなります。ROM 01、02、および03があり、02-> 03は無料アップグレードでした。01より前のリリースでは、01への無料アップグレードも行われていました。

使用された画像/音声形式など、他の違いを喜んで聞きます。ファイルの概念を正しく理解していれば、実際にはファイルの概念がなかったことを考えると、それがどのように機能するのか疑問に思っています。アセンブラーでグラフィックとサウンドを入力する必要がありましたか?BASICではどのように機能しましたか?

ファイルがありましたが、それがどういう意味かわかりませんし、ProDOSがディレクトリをサポートしました(以前のDOSにはありませんでしたが、認識できるファイルの概念がまだありました)。ビットマップと.pcxを使用しました。私はII + / IIe / IIcシリーズのオーディオファイルを覚えていませんが、それはビデオゲームのブリップやブループよりもファンシーなノイズを作るのが難しかったためです。派手な音を出すハックがいくつかありました(特に、Gun N 'Rosesを演奏するディスクがありました)が、ほとんど常に文法的に行われました。

現代の環境と比較すると、実に原始的でした。ただし、複数のプログラムを同時に実行することはサポートされていなかったことを忘れないでください。そのため、コンパイラーも事実上エディターでなければなりませんでした-vi対emacsの利点を議論することはできませんでした。あなたが使用することを学びました。ライブラリに積み重ねられたライブラリを使用するよりもはるかに簡単だったと思います。ハードウェアで作業していて、それが何であるかを知っている場合、多くのトリックがあります。たとえば、「一時停止」の一般的な実装は「for(int i = 0; i <1000; i ++)」(BASICでは異なります)でしたが、現在は使用されません。 d膨大な数が必要であり、たとえそうでなくても、さまざまな種類のマシンで実行されるため、さまざまな人々(II +、IIe、

これはすべてメモリからのものです。これを書いている間、私は参考文献を見ていないので、メモリに欠陥があり、間違ったことを言った場合は謝罪します。しかし、これが少し味を与え、あなたの質問のいくつかに答えることを願っています。


4

どの言語が使用されましたか?

ほとんどがC(Aztek)、多くのBASIC、一部がPascal(Apple Pascal)の6502。

6502アセンブラーの開発はどのようなものでしたか?

6502にはかなりきちんとしたアセンブラとツールがいくつかありました。Orca/ M、Merlin、そしてその後、リモートデバッグのためにPCとAppleへのシリアルリンクで開発することができました。Beagle Bros.ユーティリティを忘れないでください。編集+コンパイル+実行、世界は決して変わらない;-)

BASIC開発はどのようなものでしたか?

ビジュアルエディタはありません。最初からBASICバッファとやり取りできるコンソールのみです。しかし、ビーグルブラザーズには、ほとんどの痛みを解消する魔法のユーティリティがいくつかありました。そして、後で、あなたの執筆のために少なくとも行ベースのエディターのように振る舞うシェルがありました。BASICをはるかに高速に実行されるアセンブリバイナリに圧縮できるツール(Expediter 2)がありました(一方通行)。

APIまたはミドルウェアはありましたか?

いくつかありましたが、ほとんどが非常に狭いスコープで、今日SDKと呼ぶようなものはありませんでした。正直に言って、48Kでは汎用APIを購入する余裕はありません。後日、クリックアドベンチャーゲーム、タイルベースのゲーム、

今日と違うものはありますか?

すべてと何もない。プラクティスは同じままで、ツールは改善されました。


-1

Native Basic Interpreter:プログラムを作成するときは、各行に番号を付け、コードを入力してEnterキーを押します。基本プログラムは次のようになります。10:ホーム20:プリント "HELLO WORLD"

この例では、HOMEは画面をクリアします。必要な場合は、中間行を入力する必要があります。

15:「GREETINGS」を印刷します

出力として画面をクリアし、GREETINGS HELLO WORLDを表示します

コマンドLISTは、コードを表示します(一時停止せずに!)一部のモードではキャップスロックなし(大文字のみ)、特殊文字なし。BASICで作成されたプロゲームはありません。パフォーマンスのため、実際にプログラムが線を引いているのを見ることができました。

効果音だけで、音楽を再生するのは大変でした。スピーカーが1ビット(冗談なし)ピーク49152で状態が変わるだけです。はい、周波数さえ制御する必要があり、方形波でした。

アセンブリCALL -151に移動します

IDEでアドレスとコード(HEXA)を入力しないで、モニターで手動でコーディングする必要があります。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.