On Sat, Dec 26, 2009 at 03:33:27PM +0000, Anton Shterenlikht wrote: > On Fri, Dec 25, 2009 at 08:49:14PM +0100, Polytropon wrote: > > On Fri, 25 Dec 2009 18:58:26 +0000, Anton Shterenlikht > > <[email protected]> wrote: > > > How can I get a beep from c? > > > I looked at curses and syscons.c, but > > > still not clear. > > > > If you want to use NCURSES / CURSES, it's a bit complicated. > > > > Otherwise, just output %c (the character) 0x07, BEL, which > > generates an audible bell, or beep. > > > > > > *** text/plain attachement has been stripped *** RETRY *** > > > > /* beepflash.c > > * ----------- > > * cc -Wall -lcurses -o beepflash beepflash.c > > * > > */ > > > > #include <stdio.h> > > #include <ncurses.h> > > > > int main(int argc, char *argv[]) > > { > > initscr(); > > cbreak(); > > noecho(); > > nonl(); > > intrflush(stdscr, FALSE); > > keypad(stdscr, TRUE); > > start_color(); > > > > printf("beep: %d\n", beep()); > > fflush(stdout); > > > > printf("flash: %d\n", flash()); > > fflush(stdout); > > > > return 0; > > } > > Instead of a beep and a flash I get: > > beep: 0./beepflash > flash: 0 > HAMOR>
That sounds about right, given the code shown above.
If you'd used just
beep();
refresh();
instead of the printf/fflush, it would clear the screen and beep - if the
terminal description says it can do the beep.
In the ncurses sources, progs/clear.c is a simple program which sets
up the terminal and calls the tputs function - something like what you're
trying to do.
--
Thomas E. Dickey
http://invisible-island.net
ftp://invisible-island.net
pgpJ5yl6kbLCZ.pgp
Description: PGP signature
