In empeg_audio3.c, there is exactly one set of data structures for exactly one beep at a time.

If anything else tries to beep while something is already beeping, there will be a conflict. There is potential for this to produce a VERY LONG beep when the two collide.

The existing standby timer and high-temp warning code in Hijack currently use beeps, blindly, with potential for races. But I'm not too worried about them by themselves, as they are rarely triggered (in beep form), and unlikely (but possible) to cause problems often. This is in no small part due to practically nothing in the player s/w that ever wants to "beep", except for button-presses (which we all turn off, right..).

But having Hijack beep on every keystroke is a much more frequent case, raising the odds a fair amount. Now we would have potential for Hijack to collide with itself for use of the beep structures, as well as with the player software. Ugh.

Like I said, simple (VERY SIMPLE) to do keystroke beeps, basically two lines of code will do it. But much trickier to do it in such a way that we never ever cause mysterious lockups (or just LONG BEEPS).

Cheers