★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★
☆
★	ＢＧＭ機能について
☆
★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★☆★

　HEwin にはTOWNS の内蔵音源や外部のMIDI音源を使って音楽演奏を行うBGM 機能
が用意されています。
　演奏データは拡張子.EUPを持つEUP ファイルと，拡張子.MIDを持つスタンダード
MIDIファイル形式に対応しています。

******************************************************************************
☆	BGM 機能の基本操作
******************************************************************************

　HEwin はBGM 機能によってEUP ファイルまたはスタンダードMIDIファイル形式の
演奏データをBGM として演奏することができます。
　BGM として演奏する演奏データはBGM 設定ダイアログを使って登録することがで
き，連続演奏やシャッフル演奏を行うことができます。
　BGM として登録できるデータ数には制限はありません。また，演奏データごとに
タイトルと音源初期化ファイル（MEX データファイル）を指定することができます。

●EUP ファイル

　EUP ファイルはTownsOS 上で動作するF-BASIC386，TownsGEAR ，EUP プレーヤ等，
たくさんのアプリケーションが対応しています。
　EUP ファイルは，TOWNS の内蔵音源とMIDIに対応していますが，HEwin では独自
の演奏ドライバを使っているため，他のEUP ファイルに対応したアプリケーション
ソフトとは異なった演奏するをすることがあります。
　特にHEwin の演奏ドライバは内蔵音源に対して独自の拡張を行っているため，純
正の演奏ドライバを使ったアプリケーションとはかなり違った演奏になることがあ
ります。
　MIDI用に作成された演奏データの場合は，演奏ドライバの違いはほとんど問題に
なりません。

●スタンダードMIDIファイル

　スタンダードMIDIファイルはMIDIデータのファイルフォーマットで，MIDIデータ
ファイルの標準として位置づけられています。
　スタンダードMIDIファイルは本来はMIDIデータ用のデータフォーマットですが，
HEwin では内蔵音源に対しても使うことができます。
　内蔵音源用に作成されたスタンダードMIDIファイルでは，

      FM音源                    ×５音
      PSG音源                   ×４音 (*1)
      PCM音源（楽器モード）     ×６音
      PCM音源（波形合成モード） ×８音 (*2)

の計23音を制御することができます。
　TOWNS では複数のMIDIポートを扱うことができますが，スタンダードMIDIファイ
ルには複数のMIDIポートを管理する命令が決められていません。
　そこで，HEwin ではスタンダードMIDIファイルでは指定できないMIDIポートやTO-
WNS 独自の情報は演奏データとは別のファイルに指定する方法をとっています。こ
の設定データファイルをトラック設定データファイルと呼び，ファイル名の拡張子
は.MTKとしています。
　このトラック設定データファイルを使うことで，複数のMIDIポートやTOWNS の内
蔵音源独自の情報を指定することができます。

※  波形合成モードはソフトウェアの負担が大きいため，386 CPU を搭載したTOWN-
	S や互換モードでは使わないようにしてください。


■EUPHONY 形式とスタンダードMIDIファイル形式の仕様

  ┌──────┬─────────────┬─────────────┐
  │            │EUPHONY 形式              │スタンダードMIDiファイル  │
  ├──────┼─────────────┼─────────────┤
  │拡張子      │.EUP                      │.MID                      │
  ├──────┼─────────────┼─────────────┤
  │トラック数  │32                        │無制限（Format 0/1に対応）│
  ├──────┼─────────────┼─────────────┤
  │テンポ      │30～280                   │1～999                    │
  ├──────┼─────────────┼─────────────┤
  │分解能      │96                        │32～9600                  │
  ├──────┼─────────────┼─────────────┤
  │発音数      │128音                     │無制限                    │
  ├──────┼─────────────┼─────────────┤
  │MIDI        │○                        │○                        │
  ├──────┼─────────────┼─────────────┤
  │RS-232C     │△(*3)                    │△(*3)                    │
  ├──────┼─────────────┼─────────────┤
  │FM音源      │６音                      │５音                      │
  ├──────┼─────────────┼─────────────┤
  │PSG音源(*1) │なし                      │４音                      │
  ├──────┼─────────────┼─────────────┤
  │PCM音源     │８音                      │６音                      │
  │楽器モード  │波形データ64Ｋバイトまで  │波形データは62Ｋバイトまで│
  ├──────┼─────────────┼─────────────┤
  │PCM音源     │なし                      │８音                      │
  │波形合成ﾓｰﾄﾞ│                          │波形データの容量制限なし  │
  └──────┴─────────────┴─────────────┘

(*1)PSG 音源…ここでのPSG 音源というのはFM音源の効果音モードを使った発音方
	式です。矩形波によって発音する本来のPSG／SSG音源とは異なります。

(*2)SND データを発音するPCM 音源は，ソフトウェアによって波形データの合成を
	行い擬似的に再生チャンネルを８音に増やしています。

(*3)RS-232C MIDIアダプタを使うときはCCI プログラムを変更してHEWIN.CCI を作
	りなおす必要があります。


●音源初期化ファイル

　音源初期化ファイルはMEX ファイルともいい音源を初期化するためのデータファ
イルです。
　MEX ファイルの中身は音源に送信するデータ（システム・エクスクルーブ・メッ
セージ）がそのまま書き込まれています。
　HEwin にはGS音源を初期化するGSSTD.MEX と，SC-55／FMT-403といったGS音源を
MT-32互換モードに設定するMT32.NEX が用意されています。


******************************************************************************
☆	BGM 設定ダイアログの操作方法
******************************************************************************

    ・[⇒]

        　登録曲の演奏を開始します。

    ・[title]

        　登録曲のタイトルを入力・変更します。

    ・[filename]

        　演奏データファイルのファイル名を指定・変更します。

    ・[init.file]

        　演奏開始前に音源に送信するMEX データファイルを指定します。
        　収録ファイル中のGSSTD.MEX ，MT32.MEXはそれぞれ，GS音源を標
        準状態，MT-32 互換モードに設定するためのデータファイルです。
        　演奏を開始する前に，GS音源を初期化したりMT-32 互換モードに
        したい場合は，これらのMEX データファイルを指定してください。

    ・[CLEAR]

        　曲を登録解除します。

    ・[APPEND]

        　BGM リストに演奏データファイルを追加します。

    ・[FILE]

        (C) Clear all
        (S) Save list
        (L) Load list

        (C) Clear all

            BGM リストに登録されている曲をすべて消去します。

        (S) Save list

            BGM リストの内容をファイルに保存します
            ファイル名の拡張子は.BGM です。

        (L) Load list

            BGM リストの内容をファイルから読み込みます。
            ファイル名の拡張子は.BGM です。

    ・[STOP]

        演奏を中止します。

    ・[SETUP]

        (M) Play Mode
        (S) SMF default port
        (P) MEX send port
        (W) MEX send Wait time

        (M) Play Mode

            演奏モードを指定します。

                (C) Continue        登録されている曲を順に再生します。
                                    最後の曲が演奏し終わると演奏を中止
                                    します
                (R) Repeat all      登録されている曲を順に演奏します。
                                    最後の曲が演奏し終わると最初の曲に
                                    戻ります
                (O) Repeat one      １曲だけを連続して演奏します。
                (S) Shuffle         登録されている曲をランダムに演奏し
                                    ます。

        (S) SMF default port

            スタンダードMIDIファイル形式の演奏データファイルの演奏データ
            出力MIDIポートを指定します。

        (P) MEX send port

            MEX データファイルの出力MIDIポートを指定します。

        (W) MEX send Wait time

            MEX データファイルの出力時のウェイトを指定します。


    ・[HELP]

        この説明を表示します。


******************************************************************************
☆	内蔵音源用演奏ドライバについて
******************************************************************************

　HEwin は独自の演奏ドライバを使って内蔵音源による演奏を行うことができます。
　内蔵音源を使って演奏する場合は各MIDIチャンネルは次のように設定されていま
す。

  ┌─┬───────────┬───┬───────────────┐
  │CH│種別                  │発音数│パンポット                    │
  ├─┼───────────┼───┼───────────────┤
  │ 1│FM                    │1     │３段階                        │
  │ 2│FM                    │1     │３段階                        │
  │ 3│FM                    │1     │３段階                        │
  │ 4│FM                    │1     │３段階                        │
  │ 5│FM                    │1     │３段階                        │
  │ 6│PSG                   │1     │なし                          │
  │ 7│PSG                   │1     │なし                          │
  │ 8│PSG                   │1     │なし                          │
  │ 9│PSG                   │1     │なし                          │
  │10│PCM 波形合成モード    │8     │128段階                       │
  │11│PCM 楽器モード        │1     │16段階                        │
  │12│PCM 楽器モード        │1     │16段階                        │
  │13│PCM 楽器モード        │1     │16段階                        │
  │14│PCM 楽器モード        │1     │16段階                        │
  │15│PCM 楽器モード        │1     │16段階                        │
  │16│PCM 楽器モード        │1     │16段階                        │
  └─┴───────────┴───┴───────────────┘

　FM／PSG ／PCM 楽器モードパートは，１単だけ発音できるモノモードです。PCM 
波形合成モードは最大８音まで発音できます。


******************************************************************************
☆	トラック設定データファイル
******************************************************************************

●トラック設定

　EUP ファイルでは各トラックのMIDIポートやMIDIチャンネルはヘッダとしてファ
イル内部に格納されていますが，通常スタンダードMIDIファイルにはそういった情
報は含まれていません。
　そこで，HEwin では各トラックの設定情報を演奏データファイルとは別のトラッ
ク設定データファイルで指定できるようにしています。
　トラック設定データファイルは，演奏データファイルの拡張子を.MTKに変更した
ものとし，スタンダードMIDIファイル形式の演奏データごとに持つことができます。
　トラック設定データファイルは通常のテキストファイルとし，テキストエディタ
で自由に作成・編集することができます。
　トラック設定データファイル中では，次の書式でトラック情報を指定します。

  ┌──────────────────────────────────┐
  │.track <トラック番号> port:<MIDIポート> ch:<MIDIチャンネル>         │
  └──────────────────────────────────┘

　先頭のキーワード「.track」は行頭に指定してください。
　トラック番号は，通常は１から指定します。トラック番号０も指定できすが０番
はコンダクタトラック（テンポや拍子を指定するトラック）を表します。format 0
のスタンダードMIDIファイルのは，単一トラックですのでトラック番号は０しか指
定できません。
　また，ここで指定するトラック番号は各トラックの順番を決めるもので，トラッ
ク番号に100 を指定しても 100個のトラックがあることにはなりません。たとえば，
コンダクタトラックを除き４つのトラックから構成される演奏データの場合，トラ
ック番号は
  「１，２，３，４」
  「10，20，30，40」
  「１，５，16，24」
といった具合いに自由に決めることができます。

　MIDIポートは，指定トラックの演奏データを出力するMIDIポートをＡ～Ｈ，ＲＳ
／ＴＷとして指定します。また，MIDIポートは１～256 の範囲で数値で指定するこ
ともできます。MIDIポート指定と数値指定は次のように対応しています。

  ┌──┬──┬──────────────────┐
  │名前│数値│                                    │
  │指定│指定│                                    │
  ├──┼──┼──────────────────┤
  │Ａ  │   1│１枚目のMIDIカードのMIDI OUT 1      │
  │Ｂ  │   2│１枚目のMIDIカードのMIDI OUT 2      │
  │Ｃ  │   3│２枚目のMIDIカードのMIDI OUT 1      │
  │Ｄ  │   4│２枚目のMIDIカードのMIDI OUT 2      │
  │Ｅ  │   5│３枚目のMIDIカードのMIDI OUT 1      │
  │Ｆ  │   6│３枚目のMIDIカードのMIDI OUT 2      │
  │Ｇ  │   7│４枚目のMIDIカードのMIDI OUT 1      │
  │Ｈ  │   8│４枚目のMIDIカードのMIDI OUT 2      │
  │ＲＳ│  16│RS-232C MIDIアブプタ                │
  │ＴＷ│ 256│TOWNS 内蔵音源                      │
  └──┴──┴──────────────────┘

　MIDIチャンネルには，MIDIチャンネルを１～16の範囲で指定します。MIDIチャン
ネルに「OMNI」を指定した場合オムニモード，「OFF 」を指定した場合はそのトラ
ックは演奏されなくなります（チャンネル・メッセージを送信しなくなります。た
だしシステム・エクスクルーシブ・メッセージは送信します）。

【トラック設定データファイルの例】

  ┌──────────────────────────┐
  │.track  1   port:A  ch:1                            │
  │.track  11  port:A  ch:OMNI                         │
  │                                                    │
  │.track  21  port:A  ch:11                           │
  │.track  22  port:A  ch:12                           │
  │                                                    │
  │.track  31  port:A  ch:3                            │
  │.track  32  port:A  ch:4                            │
  │.track  33  port:A  ch:5                            │
  │.track  34  port:A  ch:6                            │
  │                                                    │
  │.track  51  port:A  ch:7                            │
  │.track  52  port:A  ch:8                            │
  │                                                    │
  │.track  53  port:A  ch:13                           │
  │.track  54  port:A  ch:14                           │
  │.track  55  port:A  ch:15                           │
  │.track  56  port:A  ch:9                            │
  │.track  57  port:A  ch:16                           │
  └──────────────────────────┘

　HE386 V3で作成した演奏データの場合，MML ソースファイル中に指定するトラッ
ク設定（.track）がそのまま使えます。

※  トラック設定データファイルはスタンダードMIDIファイル形式の演奏データに
    対してのみ有効です。


●内蔵音源用音色データファイル

　トラック設定データファイルには内蔵音源で演奏するときの音色データファイル
名を指定することができます。
　音色データファイルは次の書式で指定します。

■FM音源用音色データファイル

  ┌──────────────────────────────────┐
  │.$towns fmb <ファイル名> [<バンク(MSB)>  [<バンク(LSB)>]]           │
  └──────────────────────────────────┘
      ファイル名  …  FMB データファイルのファイル名
      バンク(MSB) …  バンク番号（０～127）
      バンク(LSB) …  バンク番号（０～127）

【解説】
　FM音源用の音色データファイル，FMB ファイルを読み込みます。
　FMB ファイルはバンクを変えることで複数読み込むことができます。
　バンク番号は演奏データの中で指定するコントロールチェンジのバンクセレクト
で指定するバンク番号です。バンク番号を省略した場合は０が指定されたと見なさ
れます。
　FMB データファイルは次の順番に検索します。

    (1) 演奏データファイルが格納されているディレクトリ
    (2) 環境変数FMINSTに指定されているディレクトリ
    (3) HEWIN.EXP が格納されているディレクトリ上に存在するテキストファイル
        FMINST.DATに指定されているディレクトリ
    (4) 環境変数PRIDE に指定さりているディクトリ上に存在するテキストファイ
        ルFMINST.DATに指定されているディレクトリ

■PCM音源楽器モード用音色データファイル

  ┌──────────────────────────────────┐
  │.$towns pmb <ファイル名>                                            │
  └──────────────────────────────────┘

      ファイル名  …  PMB データファイルのファイル名

【解説】
　PCM 音源楽器モード用の音色データファイル，PMB ファイルを読み込みます。

　PMB データファイルは次の順番に検索します。

    (1) 演奏データファイルが格納されているディレクトリ
    (2) 環境変数PCMINST に指定されているディレクトリ
    (3) HEWIN.EXP が格納されているディレクトリ上に存在するテキストファイル
        PCMINST.DAT に指定されているディレクトリ
    (4) 環境変数PRIDE に指定さりているディクトリ上に存在するテキストファイ
        ルPCMINST.DAT に指定されているディレクトリ


■PCM音源波形合成モード用音色データファイル

  ┌──────────────────────────────────┐
  │.$towns wvs <ファイル名> <プログラム> <キー> [<パン> [<グループ>]]  │
  └──────────────────────────────────┘

    ファイル名  …  SND データファイルのファイル名
    プログラム  …  プログラム番号      （１～128）
    キー        …  キー番号            （０～127）
    パン        …  パンポット          （-64～0～+63）
    グループ    …  アサイングループ番号（０～127）

【解説】
　PCM 音源波形合成モード用の音色データファイル，SND ファイルを読み込みます。
　SND データはプログラムとキーで指定した場所に読み込まれます。
　アサイングループは同時に発音できない楽器音に指定します。アサイングループ
に０を指定すると，アサイングループはなしとみなします。

　SND データファイルは次の順番に検索します。

    (1) 演奏データファイルが格納されているディレクトリ
    (2) HEWIN.EXP が格納されているディレクトリ上に存在するテキストファイル
        SNDINST.DAT に指定されているディレクトリ
    (3) 環境変数PRIDE に指定さりているディクトリ上に存在するテキストファイ
        ルSNDINST.DAT に指定されているディレクトリ


【トラック設定データファイルの例】

  ┌──────────────────────────┐
  │.$towns fmb gst000.fmb      0 0                     │
  │.$towns fmb gst127.fmb    127 0                     │
  │                                                    │
  │.$towns pmb gsinst.pmb                              │
  │                                                    │
  │.$towns wvs KickDr2.snd     1  35   0   0           │
  │.$towns wvs KickDr1.snd     1  36   0   0           │
  │.$towns wvs SidStick.snd    1  37   0   0           │
  │.$towns wvs SnareDr1.snd    1  38   0   0           │
  │.$towns wvs HandClap.snd    1  39   0 -10           │
  │.$towns wvs SnareDr2.snd    1  40   0   0           │
  │.$towns wvs LowTom2.snd     1  41   0 -30           │
  │.$towns wvs ClosedHH.snd    1  42   1  20           │
  │.$towns wvs LowTom1.snd     1  43   0 -18           │
  │.$towns wvs PedalHH.snd     1  44   1  20           │
  │.$towns wvs MidTom2.snd     1  45   0  -6           │
  │.$towns wvs OpenHH.snd      1  46   1  20           │
  │.$towns wvs MidTom1.snd     1  47   0   6           │
  │.$towns wvs HighTom2.snd    1  48   0  18           │
  │.$towns wvs CrashCy1.snd    1  49   0  20           │
  │.$towns wvs HighTom1.snd    1  50   0  30           │
  │.$towns wvs RideCym1.snd    1  51   0 -20           │
  │.$towns wvs ChinesCr.snd    1  52   0 -20           │
  │.$towns wvs RideBell.snd    1  53   0 -20           │
  │.$towns wvs SplashCy.snd    1  55   0 -10           │
  │.$towns wvs Cowbell.snd     1  56   0  20           │
  │.$towns wvs CrashCy2.snd    1  57   0 -20           │
  └──────────────────────────┘

******************************************************************************
☆	その他
******************************************************************************

●RS-232C MIDIアブプタを使うには

　RS-232C MIDIアブプタを使いたいときには，CCI ソースプログラムCCICFG.Hの中
に，次の行を追加してHEWIN.CCI を作りなおしてください。

	#define	_RSMIDI

　RS-232C MIDIアブプタを有効にするとHEwin の通信機能は使えなくなります。

