*============================================================================== MMDのファンクションコール仕様です。 AHレジスタにコマンド番号を入れ、必要ならば他のレジスタにMMDに 与える値をセットし、INT 61Hを実行します。 outputに表示があるレジスタ以外は保存されます。 かなり穴がありますが、これはPMDと番号を一緒にしたためで、 他意はありません。 *============================================================================== $00 mstart input nothing output nothing 音楽の演奏を開始します。 必ず曲データを転送してから実行して下さい。 *============================================================================== $01 mstop input nothing output nothing 演奏中の音楽を停止します。 *============================================================================== $02 fout input al fadeout_speed output nothing フェードアウトを開始します。 スピードは小さい程遅くなります。(1が最低速) *============================================================================== $05 get_syousetu input dx 1小節の長さ または 0 output ax 小節番号 または Count値(low) dx 余りCount値 または Count値(High) 現在の小節番号を所得します。 但し、.MMDのデータ中には小節の概念がないので、 現在の曲の1小節は何カウントか、を指定する必要があります。 例えば、4/4拍子 の曲では、192カウントが1小節となり、 3/4拍子 の曲では、144カウントが1小節となります。 dxに0を入れてcallした場合は、演奏開始してから現在までのカウンタ値が そのまま dx:ax に返って来ます。 *============================================================================== $06 get_musdat_adr input nothing output ds:dx musdat_adr 曲データを格納する先頭番地を返します。 この番地に従って読み込む、或は転送して下さい。 *============================================================================== $08 get_fv input nothing output al fadeout_volume フェードアウトが終了しているかどうかを調べます。 alが$ffなら終了しています。$00ならフェードアウトしていません。 *==============================================================================