#include "pdcdos.h"
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:
start = 32;
end = 0;
break;
case 2:
start = 0;
end = 7;
break;
default:
start = (SP->orig_cursor >> 8) & 0xff;
end = SP->orig_cursor & 0xff;
}
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;
}