「あの頃AIがあったら」第1回: ファミリーベーシックでもバイブコーディングしたい

「あの頃AIがあったら」第1回: ファミリーベーシックでもバイブコーディングしたい — ファミリーベーシック, AI, バイブコーディング AIテキスト

こんにちは、パレイド辺境部の橘です。

新しい連載を始めます。1984 年のファミリーベーシック——2KB の RAM と行番号つき BASIC だけの環境——に、2026 年の AI をつなげて「バイブコーディング」はできるか、という実験です。AI がコードを書き、ファミコンに流し込み、動かす。何かが変わる予感があります。

本記事は LLM による自動執筆パイプラインで生成されました。現在は人間が補助していますが、pareido.jp では最終的に AI が自律的にコンテンツを制作できる仕組みの構築を目指しています。

順調にいけば、理屈では AI が 2KB のマシンでコードを書き、画面を読み、ファミコンの中から喋り、やがて複数台をつないでネットワークを形成し現代の AI に到達する。到達できるかはわかりません。ただ、1984 年にもし AI があったら、という問いを、2026 年に試してみたい。そういう連載です。

名前を入力するUI。色褪せぬ光景。

42 年前、衝撃を覚えていますか

ファミリーベーシックは 1984 年 6 月、任天堂とシャープの共同開発で発売されました。カートリッジに専用キーボードが同梱されていて、差し込むだけで子ども部屋のテレビが「BASIC を打てる機械」に変わる。

Wikipedia
ファミリーベーシック

当時はマイコンブーム真っ只中で、ファミコンでゲームが作れる、という夢のような話に衝撃を受けた人も多いでしょう。テレビ CM を見て、言葉を失い立ち尽くすような体験。いま、わたしの手元には、Family BASIC v2.0A の ROM カセットがあります。

これをレトロフリークで自前のカートリッジからバックアップし、JavaScript 製の NES エミュレータ nesemu で起動するところからはじめました。

ChatGPTが生成したファミリーベーシック。これはこれで欲しい。

通過儀礼?

早速、nesemuに ROM データを読み込ませてみると、はじめは画面が緑一色のままで、期待したBASIC の画面は全く出ず、ROM 自体の故障を疑いました。

割とちゃんとしたルートで入手したのに… と動揺しつつ調べてみるも、 有志によるチェッカーでは正常にファミリーベーシックとして認識されます。というかそもそもレトロフリークでも問題なく起動します。

nesemu は ROM の MD5 ハッシュで機種を識別します。src/app/app.ts の 127 行目付近に次の switch 文があり、該当ハッシュのときだけエミュレータ内部で「キーボード」を接続する流れのようです。

// src/app/app.ts L127 付近
const romHash = cartridge.calcHashValue()
switch (romHash) {
case '2ba1dbbb774118eb903465f8e66f92a2':  // v3
case 'b6fd590c5e833e3ab6b8462e40335842':  // v2.1a
case 'fc1668b428b5012e61e2de204164f24c':  // v2.0a

登録済みは v3 / v2.1a / v2.0a の 3 種類で、v2.0aも対応のはず。 ところが手元の v2.0A ROM のハッシュはどれとも一致しません。

md5 FamilyBasic.NES
# MD5 (FamilyBasic.NES) = ef3b2aeb8b5ca45138d25d71a54153aa

どうやら iNES ヘッダ(先頭 16 バイトのメタデータ)の部分に違いがあり、ROM 本体のデータは v2.0A と同一と思われます。 出荷時期や吸い出し環境で差が出るのかもしれません。対処は上の switch に自分のハッシュを 1 行足すだけ。

保存してブラウザをリロードすると、あの懐かしいピコピコ音を奏でながら、無事に起動しました。

無事起動したファミリーベーシック。

小一時間の出来事

ここまでの作業はすべて、わたしが Claude Code に「ファミリーコンピュータでバイブコーディングしたい」と投げたところから始まっています。

Claude Code は、nesemu を見つけ、動かすために必要な Node 環境をそろえ、ROM の吸い出し実践の話をWebで拾い、起動しない原因を調べハッシュ不一致にたどり着き、修正箇所を提示する。小一時間にも満たないぐらいの時間でした。

ちなみに ChatGPT に同じ質問を聞いてみると、珍しく?ハッキリ無理と言ってきます。

結論からいうと、かなり限定的なら「できる」けど、現代的な意味でのバイブコーディングはほぼ無理です。

細かく検証したわけではないのですが、Codex や Gemini に同じことを頼むと、ファミリーベーシック自体の理解もあやしい。同様の検証はできなくはないのでしょうが、「寄り道」も長くなりそうな印象です。Claude Code (Opus4.6) のほうが、手探りの速さで前に進めてくれました。

1984 年のファミリーベーシックに 2026 年の AI を接続する、と、それこそ「バイブス」で始めた実験は、 開始わずかで「2026 年の AI と並走して 1984 年のファミリーベーシックを動かす」体験になっていた。感動すら覚えます。

まだまだ、今回は nesemu 上で、市場で入手した ROM カセットが動いたという段階。

次回は、起動したばかりのファミリーベーシックの画面に向かって、「CLAUDE」を起動してみる話です。

タイトルとURLをコピーしました