Jspice3
Main Page
Data Structures
Files
File List
Globals
mfbflood.c
Go to the documentation of this file.
1
/*************************************************************************
2
MFB graphics and miscellaneous library
3
Copyright (c) Stephen R. Whiteley 1992
4
Author: Stephen R. Whiteley
5
*************************************************************************/
6
7
#include "
mfb.h
"
8
#include "mfbP.h"
9
#include <dos.h>
10
11
#ifdef __STDC__
12
static
void
mode_1_flood
(
void
);
13
static
void
mode_2_flood
(
void
);
14
#else
15
static
void
mode_1_flood
();
16
static
void
mode_2_flood
();
17
#endif
18
19
20
void
21
MFBFlood
()
22
{
23
if
(
pc
.
mfbMODE
& 2)
24
mode_2_flood
();
25
else
26
mode_1_flood
();
27
}
28
29
30
static
void
31
mode_1_flood
()
32
33
{
34
int
alu;
35
long
i;
36
vidmptr
rgen;
37
38
outpw(0x3ce,0xff08);
/* set bit mask */
39
outpw(0x3ce,0x0205);
/* write mode 2 */
40
outpw(0x3ce,0x3);
/* set alu mode */
41
rgen =
pc
.
base
;
42
for
(i = (
long
)
pc
.
ysize
*
pc
.
bytpline
; i; i--)
43
*rgen++ =
pc
.
curcolor
;
44
outpw(0x3ce,0x5);
/* write mode 1 */
45
}
46
47
48
#ifndef __GNUC__
49
50
51
static
void
52
mode_2_flood
()
53
54
{
55
union
{
unsigned
short
o
[2];
long
l
; }
p
;
56
int
i;
57
unsigned
j;
58
unsigned
color2;
59
60
outpw(0x3ce,0xff08);
/* set bit mask */
61
outpw(0x3ce,0x3);
/* set alu mode */
62
63
color2 = (
pc
.
curcolor
<< 8) |
pc
.
curcolor
;
64
p
.l = (
long
)
pc
.
ysize
*
pc
.
xsize
;
65
for
(i = 0; i <=
p
.o[1]; i++) {
66
outp(0x3cd,i);
67
for
(j = 0; j < (unsigned)0x8000; j++)
68
*(((
short
far *)
pc
.
base
) + j) = color2;
69
}
70
}
71
72
73
#else
74
75
76
static
void
77
mode_2_flood
()
78
79
{
80
int
j;
81
unsigned
color2;
82
short
*rgen;
83
84
outpw(0x3ce,0xff08);
/* set bit mask */
85
outpw(0x3ce,0x3);
/* set alu mode */
86
87
color2 = (
pc
.
curcolor
<< 8) |
pc
.
curcolor
;
88
j = ((
long
)
pc
.
ysize
*
pc
.
xsize
) >> 1;
89
rgen = (
short
*)
pc
.
base
;
90
while
(j--) {
91
*rgen++ = color2;
92
}
93
}
94
95
#endif
mfbpc::mfbMODE
int mfbMODE
Definition:
mfbp.h:41
p
FILE * p
Definition:
proc2mod.c:48
l
Definition:
cddefs.h:312
p
Definition:
cddefs.h:215
vidmptr
char * vidmptr
Definition:
mfbp.h:17
mfbpc::ysize
int ysize
Definition:
mfbp.h:54
MFBFlood
void MFBFlood()
Definition:
mfbflood.c:21
mfbpc::base
vidmptr base
Definition:
mfbp.h:38
o
Definition:
cddefs.h:142
mfbpc::xsize
int xsize
Definition:
mfbp.h:53
while
while(TDesc->tSucc!=NULL)
Definition:
cd.c:1335
mfbpc::bytpline
int bytpline
Definition:
mfbp.h:39
mode_2_flood
static void mode_2_flood()
Definition:
mfbflood.c:52
mfbpc::curcolor
int curcolor
Definition:
mfbp.h:46
mode_1_flood
static void mode_1_flood()
Definition:
mfbflood.c:31
pc
struct mfbpc pc
Definition:
mfbopen.c:14
mfb.h
src
lib
dosmfb
mfbflood.c
Generated by
1.8.11