41 lines
829 B
C
41 lines
829 B
C
|
|
||
|
typdef struct
|
||
|
{
|
||
|
int width;
|
||
|
int height;
|
||
|
int bitsperpixel;
|
||
|
int bytesperscanline;
|
||
|
int windowgranularity;
|
||
|
void *setmode ();
|
||
|
void *setwindow (int);
|
||
|
}
|
||
|
svpmi_modeentry;
|
||
|
|
||
|
|
||
|
static void
|
||
|
wait (int x)
|
||
|
{
|
||
|
int i;
|
||
|
for (i = 0; i < 10; i++);
|
||
|
}
|
||
|
|
||
|
static unsigned char r0, r1, r2, r3, r4, r5, r6, r7;
|
||
|
static unsigned char r8, r9, r10, r11, r12, r13, r14, r15;
|
||
|
static unsigned char r16, r17, r18, r19, r20, r21, r22, r23;
|
||
|
static unsigned char r24, r25, r26, r27, r28, r29, r30, r31;
|
||
|
|
||
|
#define boutb(n, p1, p2) __boutb(0, n, p1 p2)
|
||
|
#define __boutp(i, n, p1, p2) \
|
||
|
#if n != 0 \
|
||
|
outb(p1, i); outb(p2, r##i); \
|
||
|
boutb((i + 1), (n - 1), p1, p2); \
|
||
|
#endif
|
||
|
|
||
|
#define inb(r, p) port_in(p)
|
||
|
|
||
|
#define and(r, v) r &= v;
|
||
|
#define or(r, v) r |= v;
|
||
|
#define xor(r, v) r ^= v;
|
||
|
#define shr(r, v) r >>= v;
|
||
|
#define shl(r, v) r <<= v;
|