0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

VirtualBoxと仮想化技術をポケモンルビーの通信交換でやっちゃおう!

Last updated at Posted at 2025-06-15

動画について

きっかけ

ポケモンをパソコンで遊んでいて「通信交換をやってみたい」と思ったのが始まりです。調べたところ、VBALink というエミュレータを使えば実現できることがわかりました。

ただ、1台のPC内で2つの VBALink を起動して通信しようとすると、うまくデバイス同士が連携できず、画面がフリーズしてしまいます。そこで、VirtualBox で別の Windows 環境を作り、その中に VBALink をインストールする方法で通信交換を実現しました。

準備するもの

  • Windows OSが入ったPC.
    • 4コアあるPCが望ましいです。
    • IntelのCPUを使っているならば、i5,i7シリーズであればそのくらいのスペックのものはあると思いますが、タスクマネージャーで確認することもできます。
  • インターネット接続
  • 外部ストレージ(40GB 以上の空き容量があるもの)
  • VirtualBoxの空き容量として利用します
  • Windows 11が入ったISOファイル
    • https://www.microsoft.com/ja-jp/software-download/windows11
    • 環境再現はWindows 11 24H2で実施しました。バージョン番号によって、ポリシーが変わるので、注意が必要です。非正規品(ライセンス認証がない状態)としてインストールします。
  • VirtualBox
  • レトロダンパーv4
    • https://www.amazon.co.jp/dp/B0CZ997XW8
    • 前回の型番が廃止となったので持ってないならAmazon等で買いましょう。
    • ROM をダウンロードして遊ぶのは犯罪ですので、絶対にやめましょう。
  • ゲームボーイのソフト。
    • 今回はポケモンルビーで試します。
  • ゲームパッド1台。

注意

今回の手順では、ライセンス認証を行わずにゲストOSとしてWindows 11 をインストールします。
今回の記事は、自分の学習・開発・検証目的でWindows 11 の仮想環境を構築し、将来的に製品版 Windows 間での通信交換やゲーム関連ツールの動作確認を行う準備として作業した記録です。

これは技術的に「このような環境構築が可能である」という学習・検証目的の手順紹介であり、ライセンス認証を行わない状態での利用や、その長期運用を推奨するものではありません。

商用利用・日常業務利用・ライセンス条項に違反する利用は絶対に行わないでください。すべて自己責任で実施してください。本記事は技術的メモ・記録であることをご理解ください。

システム構成図

VirtualBoxは、あるパソコンに別のOSを模擬させるソフトウエアです。VirtualBoxを動かす側のOSをホストOSと言います。VirtualBoxの中で動くOSをゲストOSと呼びます。

image.png

ホストOSとゲストOSの違い

今回はWindows 11の中にWindows 11を入れるというなかなか不思議なことをします。今回はゲストOSにWindows 11の評価版を利用します。

VirtualBoxにWindowsをインストールする方法

ISOファイルをアタッチしてインストール

VirtualBoxの設定 ”新規”のボタンを押して、次のように入力します。

image.png

自動インストールの画面にて、ユーザ・パスワードの情報などを記載します。

image.png

ハードウエアの設定。プロセッサ数を可能なら4以上に設定するのがおすすめ

image.png

インストール作業

この画面が出てきたら、VirtualBoxの画面を押して何かボタンを押す。VirtualBoxのコツとして、右Ctrlキーを押すと、マウス操作をホストOSに戻すことができる。

image.png

「プロダクトキーがありません」を選択する。これをすると、ライセンス認証がされていない環境でコンピュータのインストールをする。

image.png

インストールを待ちます

image.png

再起動がかかるので操作する

しばらくして起動するとWindowsのインストール画面が出てくるので、指示に従う
再起動がかかるので、操作する
VirtualBoxにWindowsの画面が映れば成功

ネットワークの設定

一度VirtualBoxを切って「設定」からホストオンリーアダプターの設定をします。

image.png

デバイスの設定

ゲームパッドを接続して、

image.png

VirtualBoxの設定にて、USBの設定で、「プラス」アイコンを押して、PCに接続しているキーボードを割り当てます。

image.png

プラスボタンを押してキーボードのデバイスを登録
キーボードを登録するというのがポイントで、ゲストOSでキーボードを、ホストOSでゲームパッドを操作すると使いやすいです。

ネットワーク共有の設定

ネットワークの設定をして、ROMやセーブデータを受け渡しできるようにしましょう。
ROMファイルとセーブデータファイルをフォルダひとまとめにして、それをバックアップとしてフォルダごと残しておくようにします。

image.png

レトロダンパーでROM吸い上げ

ポケモンルビーのカセットをレトロダンパーに刺した状態。

image.png

レトロダンパーを指すと、USBメモリのようにROMデータを拾ってくれます

image.png

上記のファイルをローカルにコピー。

VBALinkにて、ポケモンルビーで遊ぶ

とりあえず、VBALinkをダウンロード後展開し、任意のフォルダにおいて、先ほどコピーしたPOKEMON.GBAを適当なフォルダを作成して配置します。

image.png

VBALinkを開きます。

image.png

Options > JoyPad > Configureを押して、ゲームパッドの割り当てをします。

image.png

また、ゲームは適当に進めて交換できるところまで行きましょう。
最低、コトキタウンまで行く必要はあります

バックアップ

フォルダ構成を間違えると、結構データの読み込みが失敗します。
なので、バックアップが必要な場合は、VBALinkのフォルダごとバックアップを取ります。

ネットワーク共有するときに、このバックアップファイルから選んでゲストOSにコピーします

image.png

先ほど設定したネットワークのフォルダに、遊んだゲームのexeファイル一式をコピペしましょう

image.png

VirtualBoxで起動確認

VirtualBoxにキーボードの設定を占有させた理由は、ゲストOSでキーボードが使えるほうが便利だからです。

起動後、ネットワークを開く

ネットワーク探索とファイル共有のエラーが出るので有効化

image.png

いいえ、探索しているネットワークをプライベートネットワークにします をクリック

image.png

共有するフォルダを開いてネットワークの資格情報を記録

image.png

ネットワークの参照先が開くので全部ローカル環境にコピーする

image.png

VirtualBoxで起動確認

image.png

さあ、通信交換をやってみよう

ホストOSをサーバにするほうがわかりやすいです。

ポケモンルビーを両方の環境を開き、ポケモンセンターの2Fへいく

動作確認のために、キーボードで動かすとゲストOSのポケモンが、ゲームパッドで動かすとホストOSのポケモンが動くと思います。

image.png

ネットワークの設定

Optionsから"Link" "Settings"を開く

image.png

ホストOSは「General」を「Network」に設定して、

image.png

「Server」をクリック。

image.png

Startを押すとIPアドレスが出てくるのでこれをメモる

image.png

ゲストOSでもNetworkを設定 「Client」を指定して、

image.png

ホストOSのIPアドレスを入力して「Connect」を押す

両方の画面でポケモンセンターのお姉さんに聞いて、今回はとりあえず対戦して指示にしたがうと・・・

image.png

ホストOSとゲストOSで通信画面の表示ができる!

image.png

とりあえず対戦させてみました。初期データだけなのでミズゴロウしかいないけど。

image.png

image.png

ただ、結構失敗します。

image.png

昔の通信方式でポーリングタイミングなどの問題があって、なかなかうまくいかないこともあります。
上手くいくまで何度か粘ってやってみましょう。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?