DOSゲーム用MIDI情報

Last updated 1999.5.5
目次
 MIDIとは
 PC-9800シリーズのDOSゲーム用MIDI環境について
 MPU-PC98以外のMIDI環境について
 仮想MIDI環境について

MIDIとは

 MIDI(Musical Instrument Digital Interface)は、音楽機器との間で31.25kbpsのシリアル通信を行って演奏を制御しようというものです。どの機器を演奏するかはチャンネルで指定し、最大16あります。パソコン用のMIDI音源は、これらの複数のチャンネル用の演奏機能を1つの箱に収めたものが多く存在し、接続しやすくなっています。
 MIDIの演奏情報をMIDIメッセージと呼び、何らかのシリアル通信手段でMIDI機器に送ります。このための機器をUART(Universal Asynchronous Receiver/Transmitter)と呼び、PC-9800シリーズでは、以下のような機器でUARTを実現できます。
 ・MPU-PC98II等のMIDI用ボード
 ・RS232C直結(専用ケーブル+MIDI音源側が対応している場合)
 ・RS232C+MIDI I/F

PC-9800シリーズのDOSゲーム用MIDI環境について

 DOSゲームのためにMIDIを用いる場合は、Cバス拡張スロットにMPU-PC98II(Roland)を用いるのが定番です。しかし、拡張スロットが少ない場合はMPU-PC98IIを用意できないこともあります。そのような場合、別のI/Fを用意する必要があります。ゲームに用いる場合、MIDI OUT端子を持つか、自身にMIDI演奏機能を持ったI/Fがあれば良く、MIDI IN端子は必要ありません。
 DOSゲームが求めるI/Oポートの規格は、一般に以下のようになっています。
   MPUコマンド 利用可能
   I/Oポート  E0D0h,E0D2h
   割り込み   INT2(UARTモードでは不要)
 MPU-PC98IIには、MIDIメッセージ以外にMPUコマンドを送信することで演奏終了時に割り込みをかけるなどの便利な演奏支援機能が用意されており、DOSゲームの中にはこの機能を用いているものも多く存在します。

MPU-PC98II以外のMIDI環境について

 MPU-PC98II以外のMIDI I/Fには、だいたい以下のものがあります。ボードの詳細はこちら
 ・S-MPU-N(Roland)
  Cバス拡張スロット用の現行機。
  PnP対応ですが非PnPモードに設定できないらしいのでDOSゲームには向きません。
   MPUコマンド 利用可能
   I/Oポート  不定
   割り込み   不定
 ・S-MPU-N初期型(Roland)
  MPU-PC98IIの後継機。PnP対応ですが非PnPモードに設定可能で、DOSゲームに最適です。
   MPUコマンド 利用可能
   I/Oポート  E0D0h,E0D2h
   割り込み   INT2(UARTモードでは不要)
 ・GPPC-N(Roland)
  ミュージ郎300/500BOARDの商品名で販売されていた、MPU-PC98II+CM-300/500相当品。
  外部音源不要でDOSゲームに適します。
   MPUコマンド 利用可能
   I/Oポート  E0D0h,E0D2h
   割り込み   INT2(UARTモードでは不要)
 ・Wave Master(Q Vision)
  MPU互換をうたうボード。MPUコマンドを使われると若干難があるらしいです。
   MPUコマンド 利用可能(一部に難あり)
   I/Oポート  E0D0h,E0D2h
   割り込み   INT2(UARTモードでは不要)
 ・PC-9801-118(NEC)
  NEC純正のMIDIボード。
  PnP対応ですがDOSで使う場合は非PnPモードにします。FM音源も利用可能です。
   MPUコマンド 利用不可能(UARTモードのみ)
   I/Oポート  148Ch,148Dh(非PnPモード)
   割り込み   演奏時未使用
 ・SoundBlaster16 for PC-9800(クリエイティブメディア)
  AT互換機では主流だったSoundBlaster16のPC-9800版。
  Windows98でサポートが打ち切られました。
   MPUコマンド 利用不可能(UARTモードのみ)
   I/Oポート  80D2h,81D2h
   割り込み   INT2設定不可
 ・EMU-232C(三鈴エリー)
  RS-232Cに接続するタイプのMIDI I/F。
   MPUコマンド 利用不可能(UARTモード相当のみ)
   I/Oポート  COM1相当
   割り込み   COM1相当
 ・RS-232C直結(Roland)
  MIDI音源SC-55mkII等に付属するケーブルを使ってRS-232Cに直結できます。
  対応音源が必要です。
   MPUコマンド 利用不可能(UARTモード相当のみ)
   I/Oポート  COM1相当
   割り込み   COM1相当

仮想MIDI環境について

 MPU-PC98以外のI/FでI/Oポートが異なる場合は、普通の方法ではDOSゲームで利用できません。しかし、既にMIDIのI/Fを入手している場合は若干逃げ道があります。80386以降のCPUでは、I/Oトラップ機能を用いてI/Oポートへの要求を監視できるので、それをMPU-PC98IIのE0D0h,E0D2hに対して行い、自分のボードのI/Oポートに振り替えてやるのです。また、MPUコマンドを必要とするDOSゲームに対しては、それも補ってやる必要があります。
 以下の振り替え環境の存在(=動作ではありません)を確認しています。他にVEM486やEMM386と組み合わせて使う定番があったはずですが現在手元に資料が無いのでVectorのMIDI回りを漁ってみてください。
 ・PC-9801-118
  ERCACHE
 ・SoundBlaster16 for PC-9800
  ERCACHE
  VMM386+VMD
 ・RS-232Cタイプ
  ERCACHE
  VMM386+VMD

情報提供/感想はこちらまで

---

技術情報トップページへ戻る