int play_sound (int hz, int time) { // hz(Hz), time(msec) int tmp, i; for (i = 0; i < hz * 2 * time / 1000; ++i) { usleep(500*1000/hz); tmp = inb(0x61); tmp = (i & 1) ? tmp | 0x02 : tmp & ~0x02; outb(tmp, 0x61); } outb((inb(0x61) & ~0x02), 0x61); }