libpayload: Rename PDCurses-3.4 to PDCurses
Change-Id: If881ec130833c7e7e62caa3d31e350a531f5bc8e Signed-off-by: Stefan Reinauer <stefan.reinauer@coreboot.org> Reviewed-on: http://review.coreboot.org/12398 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Georgi <pgeorgi@google.com>
This commit is contained in:
99
payloads/libpayload/curses/PDCurses/dos/pdcsetsc.c
Normal file
99
payloads/libpayload/curses/PDCurses/dos/pdcsetsc.c
Normal file
@ -0,0 +1,99 @@
|
||||
/* Public Domain Curses */
|
||||
|
||||
#include "pdcdos.h"
|
||||
|
||||
RCSID("$Id: pdcsetsc.c,v 1.39 2008/07/13 16:08:17 wmcbrine Exp $")
|
||||
|
||||
/*man-start**************************************************************
|
||||
|
||||
Name: pdcsetsc
|
||||
|
||||
Synopsis:
|
||||
int PDC_set_blink(bool blinkon);
|
||||
void PDC_set_title(const char *title);
|
||||
|
||||
Description:
|
||||
PDC_set_blink() toggles whether the A_BLINK attribute sets an
|
||||
actual blink mode (TRUE), or sets the background color to high
|
||||
intensity (FALSE). The default is platform-dependent (FALSE in
|
||||
most cases). It returns OK if it could set the state to match
|
||||
the given parameter, ERR otherwise. Current platforms also
|
||||
adjust the value of COLORS according to this function -- 16 for
|
||||
FALSE, and 8 for TRUE.
|
||||
|
||||
PDC_set_title() sets the title of the window in which the curses
|
||||
program is running. This function may not do anything on some
|
||||
platforms. (Currently it only works in Win32 and X11.)
|
||||
|
||||
Portability X/Open BSD SYS V
|
||||
PDC_set_blink - - -
|
||||
PDC_set_title - - -
|
||||
|
||||
**man-end****************************************************************/
|
||||
|
||||
int PDC_curs_set(int visibility)
|
||||
{
|
||||
PDCREGS regs;
|
||||
int ret_vis, start, end;
|
||||
|
||||
PDC_LOG(("PDC_curs_set() - called: visibility=%d\n", visibility));
|
||||
|
||||
ret_vis = SP->visibility;
|
||||
SP->visibility = visibility;
|
||||
|
||||
switch (visibility)
|
||||
{
|
||||
case 0: /* invisible */
|
||||
start = 32;
|
||||
end = 0; /* was 32 */
|
||||
break;
|
||||
case 2: /* highly visible */
|
||||
start = 0; /* full-height block */
|
||||
end = 7;
|
||||
break;
|
||||
default: /* normal visibility */
|
||||
start = (SP->orig_cursor >> 8) & 0xff;
|
||||
end = SP->orig_cursor & 0xff;
|
||||
}
|
||||
|
||||
/* if scrnmode is not set, some BIOSes hang */
|
||||
|
||||
regs.h.ah = 0x01;
|
||||
regs.h.al = (unsigned char)pdc_scrnmode;
|
||||
regs.h.ch = (unsigned char)start;
|
||||
regs.h.cl = (unsigned char)end;
|
||||
PDCINT(0x10, regs);
|
||||
|
||||
return ret_vis;
|
||||
}
|
||||
|
||||
void PDC_set_title(const char *title)
|
||||
{
|
||||
PDC_LOG(("PDC_set_title() - called: <%s>\n", title));
|
||||
}
|
||||
|
||||
int PDC_set_blink(bool blinkon)
|
||||
{
|
||||
PDCREGS regs;
|
||||
|
||||
switch (pdc_adapter)
|
||||
{
|
||||
case _EGACOLOR:
|
||||
case _EGAMONO:
|
||||
case _VGACOLOR:
|
||||
case _VGAMONO:
|
||||
regs.W.ax = 0x1003;
|
||||
regs.W.bx = blinkon;
|
||||
|
||||
PDCINT(0x10, regs);
|
||||
|
||||
if (pdc_color_started)
|
||||
COLORS = blinkon ? 8 : 16;
|
||||
|
||||
break;
|
||||
default:
|
||||
COLORS = 8;
|
||||
}
|
||||
|
||||
return (COLORS - (blinkon * 8) != 8) ? OK : ERR;
|
||||
}
|
Reference in New Issue
Block a user