1. トップ
  2. 新着ニュース
  3. IT
  4. IT総合

Sound Blasterが普及に大きく貢献したGame Port 消え去ったI/F史

ASCII.jp / 2024年5月27日 12時0分

ゲームコントローラー用のI/Fを標準化 さまざまなサードパーティが参入する

 あまり広く知られていないがGame Port、あるいはGame Controllerそのものは最初のIBM-PCから標準で「定義されていた」。あくまでも定義がされていただけであって、標準で搭載されていたわけではない。

 IBMはGame Controller Adapter(55ドル)を別売りの形で用意しており、これを実装するとジョイスティックなどのゲーム用コントローラーを接続できた。コネクターは15ピンのD-Sub(正確に言えばDA-15コネクター)が利用されており、この1ポートで2つのジョイスティックを装着できるというものだった。

Game Controller Adapter

 ただ初代IBM-PCは家庭用というよりもビジネス用という用途が多かったこともあってか、IBM自身はGame Controller Adapterこそ用意したもののジョイスティックなどのコントローラーそのものは用意せず、それもあってか当初の売れ行きはあまり芳しいものではなかった。

I/Fを装着した図。左から2番目のスロットに挿さないといけない、というわけではないはずだ

 その後、1984年にIBM-PCjrを発表するにあたり、今度は家庭用をターゲットにしたこともあって、なにかしら必要と感じたのだろう。IBM PCjr Attachable joystickも発売するのだが、このコネクターは独自の8ピンのもので、Game Controller Adapterとまったく互換性がなく、かつIBM PCjrそのものの売れ行きも不調だったため、こちらもあまり広く利用されるに至っていない。

IBM PCjr Attachable joystick。正面から見るとジョイスティック+1ボタンに見えるが、実は背面にもう一つボタンが隠れており、ジョイスティック+2ボタン構成である
コネクターは四角く、アングル次第ではUSB Type-Aに見えなくもないのだが、厚みが倍以上ある

 それでもGame ControllerのI/Fが標準化されたことは大きなポイントであり、サードパーティーからジョイスティックを始めとするゲームコントローラーの類がいろいろ登場したし、サードパーティーからGame Controller Adapter互換のI/Fカードも次第に増え始めた。

 ジョイスティックの構造そのものは非常にシンプルである。ジョイスティックそのものは、2つの100KΩの可変抵抗器を、ジョイスティックのX軸とY軸の動きに連動するように直角に配し、ここからX軸とY軸の変量を抵抗値としてポートに返す形になる。一方でスイッチの方は純粋にOnかOffかを読み取る格好だ。

これは1ボタンの場合の結線例。2ボタンの場合、Joystick Aには5/7番ピン、Joystick Bは12/14番ピンの間に2つ目のプッシュボタンを挟む格好になる

 ちなみにボタンの方はともかく、抵抗値の読み取りの方は今ならADC(Analog Digital Converter)を使って一発で高精度に読み取りできるが、1984年当時はまだADCの精度が低く、しかも高価だった。

 そこで可変抵抗器の抵抗値を使い、コンデンサーと抵抗を使って簡単なワンショットタイマー回路を構成し、これをNE588(4chタイマー)で測定するという形で抵抗値(に比例する値)を読み取っている。高精度とは言い難いが、低価格なわりにそれなりの精度でジョイスティックのX/Y軸の位置を読み取れたようだ。

 一応1個のGame Portで2軸のジョイスティックとボタン2つを持つゲームデバイスを2台まで接続できることになっているが、その後ゲームデバイスの多機能化にともない、ボタンやジョイスティックの数が増えるようになったため、1デバイスでGame Portを占有する方向に進んだのは必然である。

サウンドカードにGame Portが実装されたことで爆発的に普及

 以上のように、立ち上がりはそれほど順調とは言えなかったGame Portであるが、PCでゲームをやりたいというユーザーに向けてゲームそのものも増えていく中で、ジョイスティックの需要が次第に高まっていった。ジョイスティックそのものは、IBM-PC以前にAtari VCSで広範に普及しており、Apple IIやBBC Micro、TRS-80などさまざまな機種で、それぞれ専用のジョイスティックが利用されていた。

 こうした機種の上で動くゲームがIBM-PCに移植される場合、当然同じようにジョイスティックも必要になってくる。この流れを加速したのはSound Blasterである。Sound Blaster誕生前後の話は連載389回でMedia Visionを紹介する際に一緒に触れているが、ゲームと言えばやはり音は付き物だし、このためにサウンドカードを導入するとGame Portも一緒に付いてくるというのはお得感が高い。

一番右の黄色いD-SubがGame port。写真はSound Blaster PCI 5.1

 当然Sound Blasterの対抗馬であったMedia VisionのPAS16にもGame Portが実装されたし、少し後に投入されたGUS(Gravis UltraSound)にもGame Portは搭載された。このあたりから、Game Portはサウンドカードに標準で搭載されるもの、という常識がなんとなくできあがった気がする。こうした流れで、1990年頃には大抵のマシンにGame Portが用意されることになった。

 これはゲームコントローラーも同じである。当初はジョイスティックが主流だったが、こちらも特定ゲーム向けに自動車のステアリング+ペダルが別体式のものだったり、航空機用にスロットルと操縦桿が別体式になったもの(これは戦闘機のモノを模したものが主流だが、民間航空機タイプのものもラインナップされた)だったり、だんだん高機能・高級化が進んでいく一方で、安価なゲームパッドの類も広く利用されるようになってきた。

 PCがゲームのプラットフォームとして進化を遂げていく(これは特にビデオカードの高性能化が大きな要因である)につれ、こうしたゲームデバイスもどんどん普及するようになり、これらはいずれもGame Portを利用して使われることになった。

MIDIの接続用I/Fとしても使用されるようになる

 これと並行して、Game Portにはもう1つ新たな用途が生まれた。それはMIDIの接続用I/Fである。そもそもなぜGame PortとMIDI Portを共用しようというアイディアが出てきたのかが今ひとつ定かではない。BGMにMIDIを使おうとしたゲームがあり、外部のMIDI機器(MPU:MIDI Processing Unit)と安価に接続するためにGame PortからMIDI I/Fを利用できるようにしたという説はあるのだが、そのMPUがけっこう高価な時点で説得力に欠ける気はする。

 ただ筆者の記憶でも、気が付いたらMIDIでBGMを流すゲームは確かにいくつか存在したし(なのでMPUなしだと間が抜ける感じになった)、そうしたMPUを接続するためのケーブルも売っていた。

 MPUのスタンダードといえばRolandのMPU-401が有名だが、そのMPU-401自身は専用の"MPUインターフェース・キット"を利用するように説明していたので、そのままでは接続できない。

MPU-401そのものはMIDI端子×4(IN×1、OUT×2、SYNC×1)とTape In/Tape Out/Metronome Outと、あとはホスト接続用のRS-232-C端子しかもっていない

 またMIDI端子そのものは5ピンのDINコネクターを利用するもので、31.25Kbpsの非同期シリアル通信(1 start/1 stop/8 dataの10bit構成)なのだが、厄介なのは電流で信号を表現することだ。RS-232-Cでは電圧で表現しており、5Vなら"1"、0Vなら"0"であるが、MIDIでは5mAの電流が流れている状態を"0"、電流が流れていない状態を"1"と表現する。このため、内部で電圧/電流の変換が必要になる。

Game Port to MIDIの変換回路。フォトカプラが間に挟まり、ここで電圧と電流を変換している。回路規模が小さいので、これは十分Game Portに接続するコネクター内に収まるのが救い。この回路図はMIDI Manufacturers Associationによる公式の回路である

 この変換ケーブルではPin 12とPin 15を利用してMIDIの送受信を可能にしているが、本来Pin 12/15はボタン用のGNDおよび+5Vの信号線であり、Pin 15はともかくPin 12に関してはゲームデバイスを併用する場合にやや注意が必要になっている。

 といっても当時のことなので、別にOS(というかDOS)の側でデバイスドライバーがあれこれするというよりも、ゲームそのものが直接ポートを叩く形で処理していたので、それほど困ったことにはならなかったようだ。

 なお当初のSound BlasterはそもそもMIDIポートのサポートがない。が、後で出てきたSound Blaster ProやSound Blaster 16などでは、Game Portそのものは201hでアクセス可能だが、MIDI Portは330h(300hにも変更可能)でアクセスするようになっており、またMPU-401のエミュレーションのOn/Offも可能になっていた。これでMPU-401がない環境でもMIDI音源を疑似的に鳴らせるわけだ。

 1990年代にはほぼ標準で搭載されていたと言っても過言ではないGame Port。サウンドカード以外にも、Super I/OカードにもGame Portは搭載されていた。まだ当時マザーボード上にはSerial/Parallel/etc...のI/Fが搭載されておらず、Serial/Parallel/FDD/IDE/Game Portをまとめて実装したI/O用の拡張カードが多く利用されていた。それがSuper I/Oカードである。

 もっともサウンドカードと併用するとポートが干渉したりする場合もあり(まだPnPが実用化される前なので、同じポート番号を持つGame Portが2つ存在するのはいろいろ都合が悪い)、その場合はどちらかを無効化する必要があった。

ゲームコントローラーに振動機能などが付与され多機能化 転送速度の遅さが致命的になる

 そんな具合に普及していたGame Portであるが、まずゲームデバイスの多機能化に直面することになった。例えばマイクロソフトが1997年に発表したSideWinder Force Feedback Proというジョイスティック、ジョイスティックとは別にボタンが8つと8方向ハットスイッチ、シフトボタンまで搭載され、さらにX/Y軸には従来のバネの代わりにモーターが搭載され、PCからのフィードバックに合わせて反応させたり振動させたりといった機能が搭載されている。

SideWinder Force Feedback Pro

 これをどうやってGame Portで接続するか? というと、信号を時分割して送ることでなんとか実現している。またGame Portは本来ジョイスティックなどからのデータを受け取るだけ(つまり受信のみ)のI/Fだが、SideWinder Force Feedback Proでは逆にPCからフィードバック制御情報を送る必要があり、ここにMIDIポートと同じ仕組みを利用している。もう完全にGame Portをハックして無理やりつないでいる感が強い。

 筆者も所有していたのだが、利用できるGame Portが限られる(Game Portならなんでもつながるわけではなく、確かSound Blaster 16と完全互換でないと動作しなかった記憶がある)上に、後からつないでも動かない場合がある(マシンを立ち上げる際にはSideWinder Force Feedback Proをつないでおかないと認識されなかった)など、使いにくいものだった。

 Game PortそのものもPort I/Oをベースとしているから、転送速度を上げるとCPU負荷が馬鹿にならなかった。そもそも当初のIBM Game Controller Adapterは4MHz駆動だったし、Sound BlasterのGame Portもそんなに高速ではなかった。ゲームデバイスが多機能化していくと、この遅さも致命的になる。

I/FがUSBに置き換わり、Game Portは追放される

 これを置き換えたのは言うまでもなくUSBである。当初からUSBの用途の中にはゲームデバイスの接続が含まれており、わりと早い段階でUSB対応のゲームパッドなどがリリースされている。これはジョイスティックも同じで、マイクロソフトにしてもSideWinder Force Feedback Proの後継としてリリースしたSideWinder Force Feedback 2はUSB接続になった。

 これと並行して行われたのが、PCからのGame Portの追放である。1996年にマイクロソフトとインテルが発表したPC97では、Game PortをUSBに置き換えることが「推奨」となり、それに加えてオーディオの標準規格としてAC97が策定され、このあたりからサウンド入出力は拡張カードではなくマザーボード上に直接実装されるようになった。

 こうなると、バックパネルにGame Portまで搭載する余地は少なく、最初はマザーボード上にGame Port用のピンヘッダが用意され、ブラケットの形で接続するなんて構造だったのが、いつの間にかGame Portそのものが廃されてしまい、これで困るユーザーは少なかった。

 Creative Technologyの「Sound Blaster誕生30年」ページを見ても、Game Portを搭載していたのは2000年のSound Blaster Live!が最後で、それ以後の製品にはGame Portは搭載されていない。なお、2005年のSound Blaster X-Fiにも怪しげなコネクターが搭載されているが、これはブレイクアウトボックスという外付けのBoxを接続するためのもので、Game Portではない。

 もうGame Portの拡張ボードも、ケーブルも、それを利用するゲームデバイスも、新品ではまったく見当たらない。MIDIに関しても、例えばローランドのMPUならUM-ONEmk2、YAMAHAならUX-16といった定番のMIDI-USB変換ケーブルがあり、もうGame Portに接続する必要性がなくなっている。Game Portも消えたI/Fとしてしまって差し支えないだろう。

この記事に関連するニュース

トピックスRSS

ランキング

記事ミッション中・・・

10秒滞在

記事にリアクションする

記事ミッション中・・・

10秒滞在

記事にリアクションする

デイリー: 参加する
ウィークリー: 参加する
マンスリー: 参加する
10秒滞在

記事にリアクションする

次の記事を探す

エラーが発生しました

ページを再読み込みして
ください