aboutsummaryrefslogtreecommitdiff
path: root/sys/gio/imdkern/idk.com
blob: 62e4eaf7b36a2abfbf0c956aea7aeed7c6d487e4 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
# IDK.COM -- The common for the IDK kernel.  A common is used here for maximum
# efficiency (minimum indirection) when rasterizing vectors and encoding
# metacode.  The maximum bitmap size is set at compile time in idk.h.

# Booleans put here to avoid possible alignment problems.

bool	mf_bitmap			# metafile type, metacode or bitmap
bool	mf_rotate			# rotate (swap x and y)
bool	mf_yflip			# flip y axis end for end
bool	mf_update			# update bitmap
bool	mf_delete			# delete metacode file after dispose
bool	mf_debug			# print kernel debugging messages
bool	mf_swap2			# swap every 2 bytes on output
bool	mf_swap4			# swap every 4 bytes on output
bool	mf_oneperfile			# store each frame in a new file

common	/idkboo/ mf_bitmap, mf_rotate, mf_yflip, mf_update, mf_delete, mf_debug,
	mf_swap2, mf_swap4, mf_oneperfile

# Everything else goes here.

int	mf_fd				# image descriptor of frame buffer
int	mf_frame			# frame counter
char	mf_fname[SZ_PATHNAME]		# metafile filename
char	mf_dispose[SZ_OSCMD]		# host dispose command

int	mf_op				# [MCODE] index into obuf
short	mf_obuf[LEN_OBUF]		# metacode buffer

int	mf_cx, mf_cy			# [BITMAPS] current pen position
int	mf_nbpb				# packing factor, bits per byte
int	mf_pxsize, mf_pysize		# physical x, y size of bitmap, bits
int	mf_wxsize, mf_wysize		# x, y size of bitmap window, bits
int	mf_xorigin, mf_yorigin		# origin of bitmap window
real	mf_xscale, mf_yscale		# to convert from NDC to device coords
int	mf_xmin, mf_xmax		# x clipping limits
int	mf_ymin, mf_ymax		# y clipping limits
int	mf_lenframe			# frame size, words
int	mf_linewidth			# relative line width
int	mf_lworigin			# device width of line size 1.0
real	mf_lwslope			# device pixels per line size increment
int	mf_fbuf[LEN_FBUF]		# frame buffer (BIG)
int	mf_bitmask[BPW]			# bit mask table
int	mf_color			# color index

common	/idkcom/ mf_fd, mf_frame, mf_op, mf_cx, mf_cy, mf_nbpb, mf_pxsize,
	mf_pysize, mf_wxsize, mf_wysize, mf_xorigin, mf_yorigin, mf_xscale,
	mf_yscale, mf_xmin, mf_xmax, mf_ymin, mf_ymax, mf_lenframe,
	mf_linewidth, mf_lworigin, mf_lwslope, mf_fbuf, mf_bitmask, mf_color,
	mf_obuf, mf_fname, mf_dispose