43 #define alloc(zzz) (struct zzz *)malloc(sizeof(struct zzz)) 58 if (error) *error =
MFBOK;
60 MFBCurrent = &thismfb;
61 MFBCurrent->
fileDesc = fileno(stdout);
136 pc.
base = (
char *) mapdev(0xa0000,0x10000);
139 pc.
base = (
char *) 0xd0000000;
144 pc.
base = I_cant_map_video_memory;
157 for (i = 0; i < 16; i++) palette[i] = (
char) i;
183 for (i = 0; i < 16; i++) palette[i] = (
char) i;
216 for (i = 0; i < 16; i++) palette[i] = (
char) i;
265 k = (getch() & 0xff);
266 if (!k) k = 256 + getch();
291 if (!strcmp(name,
"vga0")) {
297 if (!strcmp(name,
"vga1")) {
303 if (!strcmp(name,
"vga2")) {
309 if (!strcmp(name,
"vga3")) {
319 if (!strcmp(name,
"vga4")) {
325 if (!strcmp(name,
"vga5")) {
331 if (!strcmp(name,
"vga6")) {
337 if (!strcmp(name,
"vga7")) {
344 if (!strcmp(name,
"core")) {
375 unsigned char (*
c)[3];
378 (*c)[0] = (
unsigned char) 0;
379 (*c)[1] = (
unsigned char) 0;
380 (*c)[2] = (
unsigned char) 0;
382 (*c)[0] = (
unsigned char) 60;
383 (*c)[1] = (
unsigned char) 60;
384 (*c)[2] = (
unsigned char) 60;
386 (*c)[0] = (
unsigned char) 60;
387 (*c)[1] = (
unsigned char) 0;
388 (*c)[2] = (
unsigned char) 0;
390 (*c)[0] = (
unsigned char) 20;
391 (*c)[1] = (
unsigned char) 60;
392 (*c)[2] = (
unsigned char) 20;
395 (*c)[0] = (
unsigned char) 35;
396 (*c)[1] = (
unsigned char) 25;
397 (*c)[2] = (
unsigned char) 60;
399 (*c)[0] = (
unsigned char) 60;
400 (*c)[1] = (
unsigned char) 60;
401 (*c)[2] = (
unsigned char) 30;
403 (*c)[0] = (
unsigned char) 20;
404 (*c)[1] = (
unsigned char) 60;
405 (*c)[2] = (
unsigned char) 60;
407 (*c)[0] = (
unsigned char) 60;
408 (*c)[1] = (
unsigned char) 30;
409 (*c)[2] = (
unsigned char) 60;
412 (*c)[0] = (
unsigned char) 40;
413 (*c)[1] = (
unsigned char) 40;
414 (*c)[2] = (
unsigned char) 40;
416 (*c)[0] = (
unsigned char) 45;
417 (*c)[1] = (
unsigned char) 45;
418 (*c)[2] = (
unsigned char) 15;
420 (*c)[0] = (
unsigned char) 0;
421 (*c)[1] = (
unsigned char) 40;
422 (*c)[2] = (
unsigned char) 0;
424 (*c)[0] = (
unsigned char) 0;
425 (*c)[1] = (
unsigned char) 0;
426 (*c)[2] = (
unsigned char) 40;
429 (*c)[0] = (
unsigned char) 50;
430 (*c)[1] = (
unsigned char) 30;
431 (*c)[2] = (
unsigned char) 20;
433 (*c)[0] = (
unsigned char) 25;
434 (*c)[1] = (
unsigned char) 35;
435 (*c)[2] = (
unsigned char) 40;
437 (*c)[0] = (
unsigned char) 40;
438 (*c)[1] = (
unsigned char) 0;
439 (*c)[2] = (
unsigned char) 40;
441 (*c)[0] = (
unsigned char) 63;
442 (*c)[1] = (
unsigned char) 63;
443 (*c)[2] = (
unsigned char) 63;
449 int **x,**y,**bytpline;
466 void (*callback)(int,int,int,int);
492 int mode, *width, *height, numcolors;
497 r.x.ax = (mode & 0xff) | 0xff00;
502 r.x.ax = mode & 0xff;
517 r.x.ax = mode & 0xff;
529 return (r.x.ax & 0xff);
543 char *
s, *
t,
buf[128];
544 char *
getenv(), *strchr(), *strrchr();
551 while ((s = strchr(s,
'd')) !=
NULL) {
552 if (s[1] ==
'r' && s[2] ==
'i' && s[3] ==
'v')
557 while (*s && !isspace(*s)) s++;
558 if (*s)
while (isspace(*s)) s++;
561 while (*t && !isspace(*t)) t++;
565 if (!strncmp(t,
".grd",4)) {
568 else if (!strncmp(t,
".grn",4)) {
static char buf[MAXPROMPT]
void load_font(int scanheight)
void GetScreenSizeParameters(int **x, int **y, int **bytpline)
MFB * MFBOpen(char *name, char *device, int *error)
static struct ctext * Clist
unsigned char linestyles[NSTYLES]
int MFBSetGhost(void(*callback)(), int x, int y)
unsigned short mfb_8X14font[]
void set_default_colors()
static void reset_vmode()
unsigned char colormap[256][3]