PC-9801/9821シリーズ(EPSON互換機)専用の 「自動演奏プログラム」です。
某専門学校の講師をさせていただいた時に、「C言語」の教材用として作ったプログラムです。
※C言語と98のハードの知識があれば、
音源ボードが無くても、BEEP音だけでメロディを奏でることができる
ということを教えるために作った学習用教材ですので、音階などは必ずしも正確ではありません。
PC-98エミュレータの環境構築をしていた際に偶然見つけました。
今更、98マシン用のプログラムは必要ないでしょうが、98エミュレータでも使えるので、掲載致します。
実行環境は、以下のとおりです。
PC-9801/9821シリーズ 及び EPSON互換機 専用
PC-98用 MS-DOS
!! PC-98のタイマーのベクターを書き換えておりますので、DOS/V機のDOS環境では絶対に使用しないでください。!!
※Windows の PC-98エミュレータ でもROM環境があれば可
PC98エミュレータで実行した時(FILMTNHを起動中)の参考画面です。
BEEPF.EXE に 演奏データファイルのフルパスを引き渡して使います。
PC-98 DOS用 BEEP音 自動演奏プログラム ← ダウンロード
BEEPF.EXE と サンプルの演奏データファイル数本
大昔のことなので、肝心なソースが無く、実行プログラムしかありません。
演奏データの仕様もあやふやなのですが、覚えている限りで記載します。
1)テンポ:T99
99 は テンポの数値
30〜90:30〜90までの 10毎
10〜29:100〜290までの 10毎
2)オクターブ:O(英文字オー)+ 9 + "=" または "+"
9 は オクターブの数値
2〜8:オクターブ2〜オクターブ8まで
=:指定オクターブそのもの
+:それぞれの半音高い#(シャープ)
※♭(フラット)は無し
3)音長:H99、L99
99 は 音長の数値(分母)
L:01、02、04、08、12、16、24、32、64
※L04=4分音符
H:01、02、04、08、16、32、64
たぶん 3連符・・・のはずです。m(_ _)m
4)音階:C、D、E、F、G、A、B
O4=B:オクターブ4のB(シ)音
O4+B:オクターブ4のB#(シのシャープ)音
5)休符:R
L01R:全休符
L04R:4分休符
サンプルのデータの抜粋です。
これを元に試行錯誤して下さい。m(_ _;)m
T70
O4=H16BL32RH16BL32RH16BL32RH16BL32R
O5=L16DH32CL64RL16CO4=BH08AL16R
O4=H16AL32RL08ABO5=CL04DG
O4=H16BL32RH16BL32RH16BL32RH16BL32R
O5=L16DO5+H32CL64RL16CO4=BL04A
O5=H16DL32RL08DH08EL16DO5+L16CO5=DEO5+FO5=H08DL16R
O5=L16DO5+FO5=EDO5+CO4=BO4+AO4=BO5=H08GO5+L16CO5=L04D
|