33 void video::v_set_cursor (int sp, int ze )
34 {
35 v_zeiger= ( char
far *) MK_FP (v_basis,0);
36 v_zeiger+= (sp * 160 + ze *2);
37 }
38 void
video::v_loeschen ()
39 {
40 int i;
41 int far *pointer;
42 union // um
byte- oder wortweise zuzugreifen
43 {
44 int m;
45 char p_array[2];
46
} u_m;
47 u_m.p_array[1] = v_attr; // Attr. oben
48 u_m.p_array[0] =
; // unten Zeichen
49 pointer = ( int far *) MK_FP (v_basis,0);
50 for
(i =0; i < 2000; i++) // 25*80=2000
51 *pointer++ = u_m.m;
52 v_set_cursor
(0,0);
53 }
54 // Block: schneiden,restaurieren,scrollen
55 void video::v_liesbox
( int *p, int o,int l,
56 int unten, int r)
57 {
58 int i,j;
59 for (
j = o; j <= unten; j++)
60 {
61 v_set_cursor (j, l);
62 for (i = l; i <=
r; i++)
63 *p++ = v_za_lesen();
64 }
65 }