I/Oポートに書き込むことによって、Beep音を鳴らすことが出来ます。
【参考】PC-8801 Programing - Sound Information -(外部サイト)
#include <stdlib.h>
#define TRUE 1
void main()
{
outp( 0x40, 0x20 ); // 音を鳴らし始める
for( int i = 0; i < 10000; i++ ){} // 音の長さ
outp( 0x40, 0x00 ); // 音を止める
}
I/Oポート40hの5bit目を1にすると音が鳴り始め、0で止まります。鳴らす時間を指定するのではなく、止めるタイミングを自分で制御します。また、他のビットには別の機能が割り当てられているため、それを考慮して書き込む必要があります。
#029 【PC88,Z88DK】C言語でSSG(PSG)入門
#020 【PC88,Z88DK】C言語で任意の座標に文字描画