はじめに
この記事はTech KAYAC Advent Calendar 2022の6日目の記事です。
こんにちは、OC事業部その他配属の橋本と申します。普段は専門部隊の手が届かないところにヘルプで入ってよしなにすることを仕事としているのですが、その仕事のうちの一つに「アーケード筐体をPCと繋いでよしなにゲームできるようにしておいて」という無茶ぶり仕事があったので、その時の奮闘を今回ブログとして供養したいと思います。
筐体について
今回動かす筐体はこちらになります。 SEGAのBLAST CITYだと思いますが、僕も細かい仕様はよく知りません。なんせインターネットが発達する前の代物です。しかも非売品。ろくな資料は見つけられませんでした。 さて、コイツの大まかな構成ですが、ものすごくザックリ言うと筐体の中にモニターとコントローラが入っていて、これらをよしなにPCと接続することができればミッションコンプリートです。 やってることはPS5やswitchをとモニターを接続して遊ぶのと一緒です。こう聞くと簡単そうですね。
コントローラーを繋ぐ
まずは簡単なほうからいきましょう アーケードコントローラー(以下アケコン)とPCを繋ぐのに必要な作業は以下の2つです
①アケコンとPCを接続する
②アケコンの入力をPCの入力に変換する
①について
アケコンの端子はJamma規格という規格にのっとって作られたものになります。
まずコイツをキーボード入力に変換するための変換器が必要となります。 これはamazonで「Jamma USB変換」とかで調べると出てくるものを買えばいいです。日本製のものはないので中国製のものを買いました。
中国製なので、取説はもちろんありません。 ただあまり難しいことはなく、基盤の金色の所に筐体から伸びているJammaハーネスを差せばよいだけです。向きを間違えると基盤が大破するので、それだけ気を付けましょう。
②について
これはWindowsの場合はJoyToKeyというシェアウェアを使うことで解決できます。
Macでも似たようなソフトは確認しているので、Macでやりたいよって人はググればでてくると思います。 JoyToKeyをインストールしたら、筐体のボタン1つ1つにキーボード操作を割りふることができるので、モニターを接続した後ポチポチ設定していきましょう。
JoytoKeyについてはただのソフトウェアの使い方になるので、省略します。詳しくは公式HPなりを参照してください。
モニターとの接続について
これでコントローラとPCを接続することができました。 後はモニターとPCを接続すればゲームができます!やったね! 筐体の映像端子はVGAです。こいつをHDMI to VGA変換ケーブルを使ってPCと接続すれば完成!!!!!
…… …… ……
とはいかないんですよね。残念ながら。 ここからが長い長い旅路の始まりです。(おそらく読者の多くもここまでは順調な方が多いのではないでしょうか…)
水平走査周波数のチューニング
まずPCから出力される映像とモニター側で表示できる映像をすり合わせる必要があります。この時キーになるのが水平走査周波数というものです。
水平走査周波数とは
水平走査周波数とは、テレビ受像機やディスプレイ装置のように電気的に像を表示面に投影する装置において、単位時間あたりに表示する走査線(横線、ライン)の数。
水平走査周波数(水平同期周波数)とは - 意味をわかりやすく - IT用語辞典 e-Words
とのこと。 まあネットゲームをよくやる人には馴染み深いFPSのご親戚みたいなもんだと思っていれば大丈夫です。
この水平走査周波数は対応する周波数がモニターによって違うので、まずこれを確認します(ここで、筐体の仕様が分からないので響きました。) 調べてみると今回使用した筐体のモニターはこの水平走査周波数を、スイッチで15Hzと24kHzと31Hzに切り替えることができることが判明したので、このスイッチを探し、「31Hz」に設定します。(現在発売されている多くのPCは25kHz以下の水平走査周波数の映像を出力することができません。)
筐体の種類によっては15kHzや24kHzしか受け付けないモニターもあります。その時は残念ですが、PCとモニターの間にダウンスキャンコンバータを挟む必要があります。お手元の筐体をご確認ください(もしかしたら15kHzを出力できるグラフィックボードもあるのかもしれませんが…)
PCの映像出力を調整する。
次にPCの映像出力を調整します。 Windowsで水平走査周波数やリフレッシュレートについて細かい調整をするにはグラフィックボードが必要になるので、最初はMacのSwitchResXというシェアウェアを使って接続してみました。 結果… なぜか砂嵐が起きるという結果に…
水平走査周波数もリフレッシュレートも完璧に合わせているはずなのになぜか砂嵐が起きます(いまだに原因不明です) MacとHDMIケーブルをつなぐためのハブが問題なのか、そもそもMacのパワーが足りていないのか…とにかくMacだとうまくいかなかったので、会社からグラボ付きのwindowsPCを借りて再挑戦。
今度は G-GEAR「VIVE Ready PC」ゴールドモデル
を使いました。
グラボの設定から 水平走査周波数:31kHz リフレッシュレート:62Hz(60ではないんですね、これが) に設定
結果は…… 無事安定して映像を出すことに成功しました。やったね
メインモニターを繋ぐ。
これでモニター、コントローラーともに設定できました!PCにゲームを入れて、ボタンを設定するだけでゲームができます・・・! ともいかないんですね・・・ハイ
このアーケード筐体のモニター、なんと「メインモニターにした瞬間、落ちます」 どうしてだと思います?どうしてなんでしょうね。
ということでメインモニターを繋いでおかないといけません。 今回はメインモニターとしてこちらのUSB小型モニターを繋ぎました。 社員様がたまたま保有していたモニターをお借りしたので、細かい仕様などはしりません。 適当にアマゾンなどでUSBモニターをポチって頂ければと思います。 これでぱっと見は筐体のモニターがメインモニターとして動いているように見えます。
ホントのホントに終わり
これで終わりです。あとはマウスとキーボードを使って遊びたいゲームを起動し、筐体のモニターに映し、JoyToKeyを使ってボタンの設定をすれば遊ぶことができます。 フルスクリーンでゲームがしたい場合はSteamのビッグピクチャーモードなどを利用すると良いと思いますが、今回は省略します。 興味のある人は調べてみてください。
最後に今この筐体は弊社の会議棟オフィス「ありがとう」のオープンスペースにて、稼働中です。弊社社員が開発した「UnrealSumou」というゲームができます。 ゲーム自体は無償で配布中ですので興味のある方は是非インストールしてみてください。
また鎌倉付近にお住まいの方は是非一度生の筐体で遊んでいただければ、僕の苦労も報われますので是非遊びに来てください。1回100クルッポで遊べます。
では。