/*图形函数库图形设备管理头文件*/( o0 N% c- ?9 q/ C: _5 y" s* n1 N
/*graph.inc*/% e* Q1 w- R! C. d; ^# d
union REGS reg; /*枚举变量定义*/
0 z* H: |- F8 u6 j struct SREGS inreg;
3 c7 d3 \7 k) W# ~6 Y3 I void SetMode /*图形模式选择函数*/( q9 c! L) z1 r8 O. Q, J
#define MaxXres 320 /*图形显示区大小定义*/
2 y+ T+ h, y; C+ ?% u4 C! F% U' x #define MaxYres 200" p. I9 \7 v7 x
#define MaxX5 S5 p" y/ v6 I* B* V
#define MaxY
0 i# w+ C- f' M6 C5 J+ D int Xres,Yres; /*存储单元定义*/
# R. O& J: L5 a% P$ }8 s' ]! C+ b Word PreCalcY[MaxY+1];
" X) k: W: |+ g- n" A' K. r5 c& G7 q' v Word PreCalcX[MaxX+1];
4 A. p7 F# d( h void PreCalc /*计算数组初始化*/& m" j! @. X S' x7 T) J1 |
void Plot /*绘点函数*/
) s0 K4 ^0 ~4 D2 A }/ o" D# }' X( [. r) S( a, N7 c' |( M
typedef struct /*颜色定义*/6 A0 c- M! z) R" p) {. j. e) ?: V
RGB;
( Q9 c7 V9 t3 N6 h typedef RGB PaletteRegister[255]; /*255色调色板定义*/' r$ r6 a! k& p y$ b9 j
PaletteRegister Color;
@' w4 }4 G2 C# `5 H void ClearPalette /*清除原调色板*/$ D+ S8 E# `1 Q. ]' A& ]$ `1 Q: x
}5 a4 l3 R* _: P
void SetPalette /*设置新调色板*/
+ a$ ]6 Z4 M5 _- q4 x void InitPaletteRegister Color) /*调色板初始化函数1*/
8 e7 z, z# q4 }9 q, t% w/ U% h for4 |* A8 c$ X. _4 E2 F' E# t1 w
for
9 y/ \) J) P& S$ e7 U' N! @& N for* T9 M) Y# O) H9 K( o$ M
}
9 r3 J+ M# i, s: T void InitPalette2 /*调色板初始化函数2*/& J2 e+ ~0 b6 M
for
: B( ~5 `9 |3 {. g8 ] for+ b( B$ ^/ g+ D
for
" [) S* d# H# k! `* F for
. J. c/ t6 E# b( N. a1 Y for
7 s- ^: E; C6 W% L* o9 v for
' u8 S E( _& F! E# ]: j }
8 u3 U8 @0 L% N Q3 d2 a+ y: t void CyclePalette /*调色板颜色选择函数*/9 z, h& J2 ^& V3 ?2 v6 }
void Swap /*交换功能子函数*/* [' h* d" o+ C1 ^
void Circle /*绘圆函数*/# A3 w1 W. ?' Z' A) f# ~, p
a; r1 y; K6 H( a9 y6 ]: A" {# \. ]
}
/ G' C/ y3 w% z% T: V. Y }- ~+ H$ @8 R( J1 l/ `: `/ x
void Draw /*绘制像素点函数*/
7 G- m d$ m% S3 ` else G2 D% A" r0 h; w. M$ D& E, T
LgStep=1;( A# O0 T: W0 Q! D( P
if) c6 @! v l' X y8 r- a k
else
' m$ _' L( i+ V4 S1 x$ e- F ShStep=1;
4 I8 t+ W2 _; e if
& l# k* \6 t/ Y1 ^3 @! P &n |