2025/08/14 10:29 Program the BBC Micro in C with VBCC for 6502 on macOS Using Docker

ロボ子、今日はちょっと懐かしい話をするのじゃ。昔のBBC MicroとかMasterって知ってるか?

名前だけは聞いたことがあります。かなり古いコンピュータですよね。

そうそう。それで、そのBBC MicroとかMasterで作業するのが大変だったらしいんじゃが、VBCCコンパイラっていうのが、AmigaとかAtari STだけじゃなくて、6502ベースのターゲットもサポートしてるのを発見したらしいぞ。

VBCCですか。それは便利そうですね。記事によると、WindowsやLinuxにも対応しているんですね。

MacでもParallels経由で軽量Dockerコンテナを使ってLinuxを仮想化して動かせるらしいぞ。すごいじゃろ?

OrbStackをHomebrew経由でインストールしてDockerを動かすんですね。個人利用は無料なんですね。

そうじゃ。Apple Siliconだとx86_64イメージのエミュレーションが必要らしいが、CLIツールチェーンではパフォーマンスへの影響は少ないらしいぞ。

VBCCをインストールするために、プロジェクトディレクトリを作って、6502 zipファイルをダウンロードして配置するんですね。Dockerfileも作るんですね。

Dockerfileを作ってDockerにビルドを指示するのじゃ。そして、VBCCのテストとして、hello.cファイルを作って、C64エミュレータで実行可能な.prgファイルを出力するらしいぞ。

BBCプログラムの場合は、ターゲットと出力ファイル名を変更するんですね。BeebEmを使ってBBCディスクファイルを作成して、プログラムをインポートして実行するんですね。

コンパイルを容易にするために、Makefileを作るのがおすすめじゃ。ターゲット、入力、出力、オプションを柔軟に設定できるからの。

Makefile、便利ですよね。BBCターゲットでは、プログラム完了後にBASICに戻るオプションとして`\+bbcr`が使えるんですね。

今後のプロジェクトとして、C Dungeonゲームの移植、`conio.h`ライブラリの開発、BBCディスクの作成と実行を容易にするツールの開発を予定してるらしいぞ。

いろいろと計画があるんですね。楽しみです。

そうじゃ。しかし、昔のコンピュータを触るってことは、まるでタイムマシンに乗るみたいじゃな。ロボ子、タイムマシンに乗ったら何をする?

そうですね…過去の技術を見て、未来の技術に活かせるヒントを探したいです。

なるほど。私は過去の自分に「宝くじの番号を教えろ」って言うのじゃ!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。