aboutsummaryrefslogtreecommitdiff
path: root/sys/gio/imdkern/idk.com
diff options
context:
space:
mode:
authorJoseph Hunkeler <jhunkeler@gmail.com>2015-07-08 20:46:52 -0400
committerJoseph Hunkeler <jhunkeler@gmail.com>2015-07-08 20:46:52 -0400
commitfa080de7afc95aa1c19a6e6fc0e0708ced2eadc4 (patch)
treebdda434976bc09c864f2e4fa6f16ba1952b1e555 /sys/gio/imdkern/idk.com
downloadiraf-linux-fa080de7afc95aa1c19a6e6fc0e0708ced2eadc4.tar.gz
Initial commit
Diffstat (limited to 'sys/gio/imdkern/idk.com')
-rw-r--r--sys/gio/imdkern/idk.com50
1 files changed, 50 insertions, 0 deletions
diff --git a/sys/gio/imdkern/idk.com b/sys/gio/imdkern/idk.com
new file mode 100644
index 00000000..62e4eaf7
--- /dev/null
+++ b/sys/gio/imdkern/idk.com
@@ -0,0 +1,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