diff options
Diffstat (limited to 'payloads/libpayload/curses/PDCurses-3.4/pdcurses/beep.c')
-rw-r--r-- | payloads/libpayload/curses/PDCurses-3.4/pdcurses/beep.c | 65 |
1 files changed, 65 insertions, 0 deletions
diff --git a/payloads/libpayload/curses/PDCurses-3.4/pdcurses/beep.c b/payloads/libpayload/curses/PDCurses-3.4/pdcurses/beep.c new file mode 100644 index 0000000000..9e92f45727 --- /dev/null +++ b/payloads/libpayload/curses/PDCurses-3.4/pdcurses/beep.c @@ -0,0 +1,65 @@ +/* Public Domain Curses */ + +#include <curspriv.h> + +RCSID("$Id: beep.c,v 1.34 2008/07/13 16:08:17 wmcbrine Exp $") + +/*man-start************************************************************** + + Name: beep + + Synopsis: + int beep(void); + int flash(void); + + Description: + beep() sounds the audible bell on the terminal, if possible; + if not, it calls flash(). + + flash() "flashes" the screen, by inverting the foreground and + background of every cell, pausing, and then restoring the + original attributes. + + Return Value: + These functions return OK. + + Portability X/Open BSD SYS V + beep Y Y Y + flash Y Y Y + +**man-end****************************************************************/ + +int beep(void) +{ + PDC_LOG(("beep() - called\n")); + + if (SP->audible) + PDC_beep(); + else + flash(); + + return OK; +} + +int flash(void) +{ + int z, y, x; + + PDC_LOG(("flash() - called\n")); + + /* Reverse each cell; wait; restore the screen */ + + for (z = 0; z < 2; z++) + { + for (y = 0; y < LINES; y++) + for (x = 0; x < COLS; x++) + curscr->_y[y][x] ^= A_REVERSE; + + wrefresh(curscr); + + if (!z) + napms(50); + } + + return OK; +} |