- ベストアンサー
ビープ音でXmas
こんにちは。 ビープ音でXmasソングを演奏するソフトを見たことがあるのですが、どうやったらビープ音でXmasソングを演奏できますか? ビープ音でXmasソングを演奏する具体的なソースコードを教えていただけるとありがたいです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
Chapter 17 がDOS/V用のようです。 ソースがダウンロードできるようなので、ダウンロードしてみてください。 それで詳細は、本を買って調べてみてください。
その他の回答 (1)
- toysmith
- ベストアンサー率37% (570/1525)
林晴比古の解説書は大切な前提条件がかかれていない事が多く、下手すると文法解釈すら間違ってることがあるのでご注意! 以下の解説はDOS/V機でWindowまたはMS-DOSであることが条件です。 BEEPでの音楽演奏に関しては以下のような前提があります。 ・WindowsNT系(NT,2000,XP)ではまともに動作しない BEEP(実際にはスピーカー)制御はI/Oポートを直接イジくるわけですから「アプリケーションは仮想化されたハードウェアだけをアクセスする」という32ビットWindowsの約束に違反するプログラムです。 動かなくてあたりまえ、下手するとOSごとくラッシュします。 Windows9xであれば(スピーカーポートアクセスくらいなら)動作しますが、「本来やってはいけないこと!」であることを忘れずに。 ・32ビットコンパイラではコンパイルすら出来ない 現在配布されているコンパイラはほとんどが32ビットコンパイラです。 基本的に32ビットコンパイラではハードウェア直接制御のための機能(関数)を提供していません。 16ビットコンパイラでコンパイルする必要があります。 音を鳴らす/止めるという部分に関しては非常に簡単です。 I/Oポートに1バイト書き込みするだけです。 ただし、周波数を設定する部分で多少『音』に関する知識が必要となります。 ここで全てを解説するのはキツイので工学図書の「DOS/VとC言語(ISBN 4-7692-0290-3)」や「DOS/V・BIOSとC言語(ISBN 4-7692-0307-1)」を参考にしてください。 この2冊はDOS/Vハードウェア制御の良書です。 ただ、MS-DOSを前提としているのでWindows環境では「やってはいけないこと」がたくさんかかれていますので注意してください。 CQ出版「Windowsプログラミングの達人」では32ビットWindowsにおける注意点を含めてハードウェア制御の解説が行われていました(スピーカー制御もちゃんと書いてありました)。 残念ながら絶版のようです。
お礼
ご回答ありがとうございました。
お礼
ご回答ありがとうございました。