tr@samadams.princeton.edu (Tom Reingold) (06/07/91)
Is there something I need to know about blitting characters onto the screen with a Hercules board? The following function works just fine on regular color and monochrome boards. Do I have to access some register or something before I do direct access to video RAM? The Hercules BIOS says it's a monochrome board. I assume that the RAM addresses for monochrome are coorect. Thanks. /* display a character at row, col with attribute and repetition */ /* uses video RAM */ void disp_char(int row, int col, char val, char attribute, int times) { static char far *v_off = (char far *) 0; char far *p; if (v_off == (char far *) 0) { if (video_type() == COLOR) v_off = (char far *) 0xb8000000; else v_off = (char far *) 0xb0000000; } p = v_off + (((row * 80) + col) << 1); while (times--) { *p++ = val; *p++ = attribute; } } -- Tom Reingold tr@samadams.princeton.edu OR ...!princeton!samadams!tr "Warning: Do not drive with Auto-Shade in place. Remove from windshield before starting ignition."