summaryrefslogtreecommitdiff
path: root/chips/build_font.c
diff options
context:
space:
mode:
Diffstat (limited to 'chips/build_font.c')
-rw-r--r--chips/build_font.c132
1 files changed, 0 insertions, 132 deletions
diff --git a/chips/build_font.c b/chips/build_font.c
deleted file mode 100644
index 2542351..0000000
--- a/chips/build_font.c
+++ /dev/null
@@ -1,132 +0,0 @@
-/*
- * Mach Operating System
- * Copyright (c) 1991,1990,1989 Carnegie Mellon University
- * All Rights Reserved.
- *
- * Permission to use, copy, modify and distribute this software and its
- * documentation is hereby granted, provided that both the copyright
- * notice and this permission notice appear in all copies of the
- * software, derivative works or modified versions, and any portions
- * thereof, and that both notices appear in supporting documentation.
- *
- * CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS"
- * CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR
- * ANY DAMAGES WHATSOEVER RESULTING FROM THE USE OF THIS SOFTWARE.
- *
- * Carnegie Mellon requests users of this software to return to
- *
- * Software Distribution Coordinator or Software.Distribution@CS.CMU.EDU
- * School of Computer Science
- * Carnegie Mellon University
- * Pittsburgh PA 15213-3890
- *
- * any improvements or extensions that they make and grant Carnegie Mellon
- * the rights to redistribute these changes.
- */
-/*
- * File: build_font.c
- * Author: Alessandro Forin, Carnegie Mellon University
- * Date: 10/90
- *
- *
- * Takes a font description file and generates a C source
- * appropriate for use as kernel font on mips/vax boxes.
- * This basically means encoding and mirroring the bitmaps.
- */
-
-#include <stdio.h>
-
-main(argc,argv)
- char **argv;
-{
- int fd;
- FILE *fout;
- int i, j, k, n, l;
- int first, last;
- char *fname = "kernel_font.data";
- char buf[16*9];
- int verbose = 0;
-
- if (argc > 1 && argv[1][0] == '+')
- verbose++, argc--, argv++;
-
- first = 0;
- last = 190; /* 8-bit ASCII, offset by 'space' */
- if (argc > 1) {
- first = atoi(argv[1]);
- last = first + 1;
- }
- if (argc > 2)
- last = atoi(argv[2]) + 1;
- if (argc > 3)
- fname = argv[3];
-
- fd = open(fname, 0, 0);
- fout = fopen("kernel_font.c", "w");
-
- fprintf(fout, "/* \n\
- * Mach Operating System\n\
- * Copyright (c) 1989 Carnegie-Mellon University\n\
- * All rights reserved. The CMU software License Agreement specifies\n\
- * the terms and conditions for use and redistribution.\n\
- */\n\
-/*\n\
- * THIS FILE WAS GENERATED BY %s FROM %s\n\
- * IF YOU NEED TO, BE SURE YOU EDIT THE REAL THING!\n\
- */\n\
-/*\n\
- * Object:\n\
- * kfont_7x14 EXPORTED array\n\
- *\n\
- * Kernel font for printable ASCII chars\n\
- *\n\
- * The smallest index in this array corresponds to a\n\
- * space. So, we start at 0x20 in the ascii table.\n\
- * Note that glyphs are mirrored (byteorder, I think)\n\
- * the commented bitmap shows how they really look like\n\
- */\n\
-\n\
-unsigned char kfont_7x14[] = {\n", argv[0], fname);
-
-skip_comments:
- read(fd, buf, 1);
- if (buf[0] == '#') {
- do
- read(fd, buf, 1);
- while (buf[0] != '\n');
- goto skip_comments;
- }
- lseek(fd, -1, 1); /* put char back */
-
- /* if must skip some */
- for (l = 0; l < first; l++)
- read(fd, buf, 2+(9*15));
-
- /* scan for real now */
- for (i = first; i < last; i++) {
- /* read one full glyph */
- if (read(fd, buf, 2+(9*15)) < 0)
- break;
- if (verbose)
- printf("Character '%c':\n\t", buf[0]);
- /* index and char itself in comments */
- fprintf(fout, "/* %3x '%c' */\n", i, 0x20+i);
-
- /* encode and mirror each one of the 15 scanlines */
- for (n = 0; n < 15; n++) {
- unsigned char cc[8], swap = 0;
- /* 8 bits per scanline */
- for (k = 2+(n*9), j = 0; j < 8; k++, j++) {
- if (verbose)
- printf("%c", (buf[k] == '1') ? '@' : ' ');
- swap = ((buf[k] - '0') << 7) | (swap >> 1);
- cc[j] = buf[k];
- }
- fprintf(fout,"\t/* %8s */\t%#2x,\n", cc, (unsigned char)swap);
- if (verbose)
- printf("\n\t");
- }
- }
- fprintf(fout, "};\n");
- fclose(fout);
-}