| 9 |
|
|
| 10 |
|
#include "standard.h" |
| 11 |
|
#include <sys/ioctl.h> |
| 12 |
– |
#ifdef sparc |
| 13 |
– |
#include <sys/conf.h> |
| 14 |
– |
#include <sys/file.h> |
| 15 |
– |
#include <sys/filio.h> |
| 16 |
– |
#endif |
| 12 |
|
#if !defined(FNDELAY) && defined(O_NONBLOCK) |
| 13 |
|
#define FNDELAY O_NONBLOCK |
| 14 |
|
#endif |
| 206 |
|
x11_driver.comin = x11_comin; |
| 207 |
|
x11_driver.comout = x11_comout; |
| 208 |
|
erract[COMMAND].pf = x11_comout; |
| 209 |
+ |
/* doesn't work with raypcalls.c |
| 210 |
|
if (erract[WARNING].pf != NULL) |
| 211 |
|
erract[WARNING].pf = x11_errout; |
| 212 |
+ |
*/ |
| 213 |
|
inpcheck = IC_X11; |
| 214 |
|
} else { |
| 215 |
|
x11_driver.comin = std_comin; |
| 372 |
|
|
| 373 |
|
static void |
| 374 |
|
x11_comout( /* output a string to command line */ |
| 375 |
< |
char *outp |
| 375 |
> |
const char *outp |
| 376 |
|
) |
| 377 |
|
{ |
| 378 |
|
if (comline == NULL || outp == NULL || !outp[0]) |
| 399 |
|
char *prompt |
| 400 |
|
) |
| 401 |
|
{ |
| 402 |
+ |
int n, c; |
| 403 |
+ |
|
| 404 |
|
if (prompt != NULL) { |
| 405 |
|
if (fromcombuf(inp, &x11_driver)) |
| 406 |
|
return; |
| 416 |
|
inpcheck = IC_IOCTL; |
| 417 |
|
} |
| 418 |
|
#endif |
| 419 |
< |
if (gets(inp) == NULL) { |
| 419 |
> |
n = 0; /* gets() no longer exists... */ |
| 420 |
> |
while ((c = getchar()) != EOF && c != '\n') |
| 421 |
> |
inp[n++] = c; |
| 422 |
> |
|
| 423 |
> |
if (!n & (c == EOF)) { |
| 424 |
|
strcpy(inp, "quit"); |
| 425 |
|
return; |
| 426 |
|
} |
| 427 |
< |
x11_driver.inpready -= strlen(inp) + 1; |
| 428 |
< |
if (x11_driver.inpready < 0) |
| 429 |
< |
x11_driver.inpready = 0; |
| 427 |
> |
inp[n] = '\0'; |
| 428 |
> |
x11_driver.inpready -= n + 1; |
| 429 |
> |
x11_driver.inpready *= (x11_driver.inpready > 0); |
| 430 |
|
} |
| 431 |
|
|
| 432 |
|
|
| 433 |
|
static void |
| 434 |
|
std_comout( /* write out string to stdout */ |
| 435 |
< |
char *outp |
| 435 |
> |
const char *outp |
| 436 |
|
) |
| 437 |
|
{ |
| 438 |
|
fputs(outp, stdout); |
| 564 |
|
) |
| 565 |
|
{ |
| 566 |
|
unsigned long rval; |
| 567 |
< |
BYTE rgb[3]; |
| 567 |
> |
uby8 rgb[3]; |
| 568 |
|
|
| 569 |
|
map_color(rgb, col); |
| 570 |
|
rval = ourvinfo.red_mask*rgb[RED]/255 & ourvinfo.red_mask; |