/* * Erase a grid of space (as if spaces were printed) */ static errr Term_wipe_emx(int x, int y, int n) { v_gotoxy(x, y); v_putn(' ', n); return (0); }
/* * Display a cursor, on top of a given attr/char */ static errr Term_curs_emx(int x, int y) { v_gotoxy(x, y); v_ctype(curs_start, curs_end); return (0); }
/* * Draw some text, wiping behind it first */ static errr Term_text_emx(int x, int y, int n, unsigned char a, cptr s) { /* Convert the color and put the text */ v_attrib(colors[a & 0x0F]); v_gotoxy(x, y); v_putm(s, n); return (0); }
void PDC_gotoyx(int row, int col) { PDC_LOG(("PDC_gotoyx() - called: row %d col %d\n", row, col)); #ifdef EMXVIDEO v_gotoxy(col, row); #else VioSetCurPos(row, col, 0); #endif }
void vm_gotoxy(char x, char y) { if (_osmode == DOS_MODE) { vi_init(); v_gotoxy((int)(x - 1), (int)(y - 1)); } else { VioSetCurPos((USHORT) (y - 1), (USHORT) (x - 1), 0); } }
/* * EMX shutdown */ static void Term_nuke_emx(term *t) { /* Move the cursor to bottom of screen */ v_gotoxy(0, 23); /* Restore the cursor (not necessary) */ v_ctype(curs_start, curs_end); /* Set attribute to gray on black */ v_attrib(F_WHITE); /* Clear the screen */ v_clear(); }