vectfont.c

Go to the documentation of this file.
00001 /*                      V E C T F O N T . C
00002  * BRL-CAD
00003  *
00004  * Copyright (c) 2004-2012 United States Government as represented by
00005  * the U.S. Army Research Laboratory.
00006  *
00007  * This library is free software; you can redistribute it and/or
00008  * modify it under the terms of the GNU Lesser General Public License
00009  * version 2.1 as published by the Free Software Foundation.
00010  *
00011  * This library is distributed in the hope that it will be useful, but
00012  * WITHOUT ANY WARRANTY; without even the implied warranty of
00013  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014  * Lesser General Public License for more details.
00015  *
00016  * You should have received a copy of the GNU Lesser General Public
00017  * License along with this file; see the file named COPYING for more
00018  * information.
00019  */
00020 /** @addtogroup plot */
00021 /** @{ */
00022 /** @file libbn/vectfont.c
00023  *
00024  *      Terminal Independant Graphics Display Package.
00025  *              Mike Muuss  July 31, 1978
00026  *
00027  *      This routine is used to plot a string of ASCII symbols
00028  *  on the plot being generated, using a built-in set of fonts
00029  *  drawn as vector lists.
00030  *
00031  *      Internally, the basic font resides in a 10x10 unit square.
00032  *  Externally, each character can be thought to occupy one square
00033  *  plotting unit;  the 'scale'
00034  *  parameter allows this to be changed as desired, although scale
00035  *  factors less than 10.0 are unlikely to be legible.
00036  *
00037  *  The vector font table here was provided courtesy of Dr. Bruce
00038  *  Henriksen and Dr. Stephen Wolff, US Army Ballistic Research
00039  *  Laboratory, Summer of 1978.  They had developed it for their
00040  *  remote Houston Instruments pen plotter package for the
00041  *  GE Tymeshare system.
00042  *
00043  */
00044 /** @} */
00045 
00046 #include "common.h"
00047 
00048 #include <stdio.h>
00049 #include <math.h>
00050 
00051 #include "vmath.h"
00052 #include "plot3.h"
00053 #include "vectfont.h"
00054 
00055 #define NUM_SYMBOLS     8
00056 
00057 int *tp_cindex[256];    /* index to stroke tokens */
00058 
00059 /**
00060  * @brief
00061  *  Once-only setup routine
00062  *  Used by libplot3/symbol.c, so it can't be static.
00063  */
00064 void
00065 tp_setup(void)
00066 {
00067     register int *p;    /* pointer to stroke table */
00068     register int i;
00069 
00070     p = tp_ctable;              /* pointer to stroke list */
00071 
00072     /* Store start addrs of each stroke list */
00073     for ( i=040-NUM_SYMBOLS; i<128; i++)  {
00074         tp_cindex[i+128] = tp_cindex[i] = p;
00075         while ( (*p++) != LAST );
00076     }
00077     for ( i=1; i<=NUM_SYMBOLS; i++ )  {
00078         tp_cindex[i+128] = tp_cindex[i] = tp_cindex[040-NUM_SYMBOLS-1+i];
00079     }
00080     for ( i=NUM_SYMBOLS+1; i<040; i++ )  {
00081         tp_cindex[i+128] = tp_cindex[i] = tp_cindex['?'];
00082     }
00083 }
00084 
00085 /*      tables for markers      */
00086 
00087 int tp_ctable[] = {
00088 
00089 /*      +       */
00090     drk(0, 5),
00091     brt(8, 5),
00092     drk(4, 8),
00093     brt(4, 2),
00094     LAST,
00095 
00096 /*      x       */
00097     drk(0, 2),
00098     brt(8, 8),
00099     drk(0, 8),
00100     brt(8, 2),
00101     LAST,
00102 
00103 /*      triangle        */
00104     drk(0, 2),
00105     brt(4, 8),
00106     brt(8, 2),
00107     brt(0, 2),
00108     LAST,
00109 
00110 /*      square  */
00111     drk(0, 2),
00112     brt(0, 8),
00113     brt(8, 8),
00114     brt(8, 2),
00115     brt(0, 2),
00116     LAST,
00117 
00118 /*      hourglass       */
00119     drk(0, 2),
00120     brt(8, 8),
00121     brt(0, 8),
00122     brt(8, 2),
00123     brt(0, 2),
00124     LAST,
00125 
00126 /*      plus-minus      */
00127     drk(5, 7),
00128     brt(5, 2),
00129     drk(2, 2),
00130     brt(8, 2),
00131     drk(2, 5),
00132     brt(8, 5),
00133     LAST,
00134 
00135 /*      centerline symbol       */
00136     drk(8, 4),
00137     brt(7, 6),
00138     brt(4, 7),
00139     brt(1, 6),
00140     brt(0, 4),
00141     brt(1, 2),
00142     brt(4, 1),
00143     brt(7, 2),
00144     brt(8, 4),
00145     drk(1, 1),
00146     brt(7, 7),
00147     LAST,
00148 
00149 /*      degree symbol   */
00150     drk(1, 9),
00151     brt(2, 9),
00152     brt(3, 8),
00153     brt(3, 7),
00154     brt(2, 6),
00155     brt(1, 6),
00156     brt(0, 7),
00157     brt(0, 8),
00158     brt(1, 9),
00159     LAST,
00160 
00161 /*      table for ascii 040, ' '        */
00162     LAST,
00163 
00164 /*      table for !     */
00165     drk(3, 0),
00166     brt(5, 2),
00167     brt(5, 0),
00168     brt(3, 2),
00169     brt(3, 0),
00170     drk(4, 4),
00171     brt(3, 10),
00172     brt(5, 10),
00173     brt(4, 4),
00174     brt(4, 10),
00175     LAST,
00176 
00177 /*      table for "     */
00178     drk(1, 10),
00179     brt(3, 10),
00180     brt(2, 7),
00181     brt(1, 10 ),
00182     drk(5, 10),
00183     brt(7, 10),
00184     brt(6, 7),
00185     brt(5, 10),
00186     LAST,
00187 
00188 
00189 /*      table for #     */
00190     drk(1, 0),
00191     brt(3, 9),
00192     drk(6, 9),
00193     brt(4, 0),
00194     drk(6, 3),
00195     brt(0, 3),
00196     drk(1, 6),
00197     brt(7, 6),
00198     LAST,
00199 
00200 /*      table for $     */
00201     drk(1, 2),
00202     brt(1, 1),
00203     brt(7, 1),
00204     brt(7, 5),
00205     brt(1, 5),
00206     brt(1, 9),
00207     brt(7, 9),
00208     brt(7, 8),
00209     drk(4, 10),
00210     brt(4, 0),
00211     LAST,
00212 
00213 /*      table for %     */
00214     drk(3, 10),
00215     brt(3, 7),
00216     brt(0, 7),
00217     brt(0, 10),
00218     brt(8, 10),
00219     brt(0, 0),
00220     drk(8, 0),
00221     brt(5, 0),
00222     brt(5, 3),
00223     brt(8, 3),
00224     brt(8, 0),
00225     LAST,
00226 
00227 /*      table for &     */
00228     drk(7, 3),
00229     brt(4, 0),
00230     brt(1, 0),
00231     brt(0, 3),
00232     brt(5, 8),
00233     brt(4, 10),
00234     brt(3, 10),
00235     brt(1, 8),
00236     brt(8, 0),
00237     LAST,
00238 
00239 /*      table for '     */
00240     drk(4, 6),
00241     brt(5, 10),
00242     brt(6, 10),
00243     brt(4, 6),
00244     LAST,
00245 
00246 /*      table for (     */
00247     drk(5, 0 ),
00248     brt(3, 1 ),
00249     brt(2, 4 ),
00250     brt(2, 6 ),
00251     brt(3, 9 ),
00252     brt(5, 10 ),
00253     LAST,
00254 
00255 /*      table for )     */
00256     drk(3, 0 ),
00257     brt(5, 1 ),
00258     brt(6, 4 ),
00259     brt(6, 6 ),
00260     brt(5, 9 ),
00261     brt(3, 10 ),
00262     LAST,
00263 
00264 /*      table for *     */
00265     drk(4, 2 ),
00266     brt(4, 8 ),
00267     drk(6, 7 ),
00268     brt(2, 3 ),
00269     drk(6, 3 ),
00270     brt(2, 7 ),
00271     drk(1, 5 ),
00272     brt(7, 5 ),
00273     LAST,
00274 
00275 /*      table for +     */
00276     drk(1, 5 ),
00277     brt(7, 5 ),
00278     drk(4, 8 ),
00279     brt(4, 2 ),
00280     LAST,
00281 
00282 /*      table for,      */
00283     drk(5, 0 ),
00284     brt(3, 2 ),
00285     brt(3, 0 ),
00286     brt(5, 2 ),
00287     brt(5, 0 ),
00288     bneg(2, 2 ),
00289     brt(4, 0 ),
00290     LAST,
00291 
00292 /*      table for -     */
00293     drk(1, 5 ),
00294     brt(7, 5 ),
00295     LAST,
00296 
00297 /*      table for .     */
00298     drk(5, 0 ),
00299     brt(3, 2 ),
00300     brt(3, 0 ),
00301     brt(5, 2 ),
00302     brt(5, 0 ),
00303     LAST,
00304 
00305 /*      table for /     */
00306     brt(8, 10 ),
00307     LAST,
00308 
00309 /*      table for 0     */
00310     drk(8, 10),
00311     brt(0, 0),
00312     brt(0, 10),
00313     brt(8, 10),
00314     brt(8, 0),
00315     brt(0, 0),
00316     LAST,
00317 
00318 /*      table for 1     */
00319     drk(4, 0 ),
00320     brt(4, 10 ),
00321     brt(2, 8 ),
00322     LAST,
00323 
00324 /*      table for 2     */
00325     drk(0, 6 ),
00326     brt(0, 8 ),
00327     brt(3, 10 ),
00328     brt(5, 10 ),
00329     brt(8, 8 ),
00330     brt(8, 7 ),
00331     brt(0, 2 ),
00332     brt(0, 0 ),
00333     brt(8, 0 ),
00334     LAST,
00335 
00336 /*      table for 3     */
00337     drk(0, 10 ),
00338     brt(8, 10 ),
00339     brt(8, 5 ),
00340     brt(0, 5 ),
00341     brt(8, 5 ),
00342     brt(8, 0 ),
00343     brt(0, 0 ),
00344     LAST,
00345 
00346 /*      table for 4     */
00347     drk(0, 10 ),
00348     brt(0, 5 ),
00349     brt(8, 5 ),
00350     drk(8, 10 ),
00351     brt(8, 0 ),
00352     LAST,
00353 
00354 /*      table for 5     */
00355     drk(8, 10 ),
00356     brt(0, 10 ),
00357     brt(0, 5 ),
00358     brt(8, 5 ),
00359     brt(8, 0 ),
00360     brt(0, 0 ),
00361     LAST,
00362 
00363 /*      table for 6     */
00364     drk(0, 10 ),
00365     brt(0, 0 ),
00366     brt(8, 0 ),
00367     brt(8, 5 ),
00368     brt(0, 5 ),
00369     LAST,
00370 
00371 /*      table for 7     */
00372     drk(0, 10 ),
00373     brt(8, 10 ),
00374     brt(6, 0 ),
00375     LAST,
00376 
00377 /*      table for 8     */
00378     drk(0, 5 ),
00379     brt(0, 0 ),
00380     brt(8, 0 ),
00381     brt(8, 5 ),
00382     brt(0, 5 ),
00383     brt(0, 10 ),
00384     brt(8, 10 ),
00385     brt(8, 5 ),
00386     LAST,
00387 
00388 /*      table for 9     */
00389     drk(8, 5 ),
00390     brt(0, 5 ),
00391     brt(0, 10 ),
00392     brt(8, 10 ),
00393     brt(8, 0 ),
00394     LAST,
00395 
00396 /*      table for :     */
00397     drk(5, 6 ),
00398     brt(3, 8 ),
00399     brt(3, 6 ),
00400     brt(5, 8 ),
00401     brt(5, 6 ),
00402     drk(5, 0 ),
00403     brt(3, 2 ),
00404     brt(3, 0 ),
00405     brt(5, 2 ),
00406     brt(5, 0 ),
00407     LAST,
00408 
00409 /*      table for ;     */
00410     drk(5, 6 ),
00411     brt(3, 8 ),
00412     brt(3, 6 ),
00413     brt(5, 8 ),
00414     brt(5, 6 ),
00415     drk(5, 0 ),
00416     brt(3, 2 ),
00417     brt(3, 0 ),
00418     brt(5, 2 ),
00419     brt(5, 0 ),
00420     bneg(2, 2 ),
00421     brt(4, 0 ),
00422     LAST,
00423 
00424 /*      table for <     */
00425     drk(8, 8 ),
00426     brt(0, 5 ),
00427     brt(8, 2 ),
00428     LAST,
00429 
00430 /*      table for =     */
00431     drk(0, 7 ),
00432     brt(8, 7 ),
00433     drk(0, 3 ),
00434     brt(8, 3 ),
00435     LAST,
00436 
00437 /*      table for >     */
00438     drk(0, 8 ),
00439     brt(8, 5 ),
00440     brt(0, 2 ),
00441     LAST,
00442 
00443 /*      table for ?     */
00444     drk(3, 0 ),
00445     brt(5, 2 ),
00446     brt(5, 0 ),
00447     brt(3, 2 ),
00448     brt(3, 0 ),
00449     drk(1, 7 ),
00450     brt(1, 9 ),
00451     brt(3, 10 ),
00452     brt(5, 10 ),
00453     brt(7, 9 ),
00454     brt(7, 7 ),
00455     brt(4, 5 ),
00456     brt(4, 3 ),
00457     LAST,
00458 
00459 /*      table for @     */
00460     drk(0, 8 ),
00461     brt(2, 10 ),
00462     brt(6, 10 ),
00463     brt(8, 8 ),
00464     brt(8, 2 ),
00465     brt(6, 0 ),
00466     brt(2, 0 ),
00467     brt(1, 1 ),
00468     brt(1, 4 ),
00469     brt(2, 5 ),
00470     brt(4, 5 ),
00471     brt(5, 4 ),
00472     brt(5, 0 ),
00473     LAST,
00474 
00475 /*      table for A     */
00476     brt(0, 8 ),
00477     brt(2, 10 ),
00478     brt(6, 10 ),
00479     brt(8, 8 ),
00480     brt(8, 0 ),
00481     drk(0, 5 ),
00482     brt(8, 5 ),
00483     LAST,
00484 
00485 /*      table for B     */
00486     brt(0, 10 ),
00487     brt(5, 10 ),
00488     brt(8, 9 ),
00489     brt(8, 6 ),
00490     brt(5, 5 ),
00491     brt(0, 5 ),
00492     brt(5, 5 ),
00493     brt(8, 4 ),
00494     brt(8, 1 ),
00495     brt(5, 0 ),
00496     brt(0, 0 ),
00497     LAST,
00498 
00499 /*      table for C     */
00500     drk(8, 2 ),
00501     brt(6, 0 ),
00502     brt(2, 0 ),
00503     brt(0, 2 ),
00504     brt(0, 8 ),
00505     brt(2, 10 ),
00506     brt(6, 10 ),
00507     brt(8, 8 ),
00508     LAST,
00509 
00510 /*      table for D     */
00511     brt(0, 10 ),
00512     brt(5, 10 ),
00513     brt(8, 8 ),
00514     brt(8, 2 ),
00515     brt(5, 0 ),
00516     brt(0, 0 ),
00517     LAST,
00518 
00519 /*      table for E     */
00520     drk(8, 0 ),
00521     brt(0, 0 ),
00522     brt(0, 10 ),
00523     brt(8, 10 ),
00524     drk(0, 5 ),
00525     brt(5, 5 ),
00526     LAST,
00527 
00528 /*      table for F     */
00529     brt(0, 10 ),
00530     brt(8, 10 ),
00531     drk(0, 5 ),
00532     brt(5, 5 ),
00533     LAST,
00534 
00535 /*      table for G     */
00536     drk(5, 5 ),
00537     brt(8, 5 ),
00538     brt(8, 2 ),
00539     brt(6, 0 ),
00540     brt(2, 0 ),
00541     brt(0, 2 ),
00542     brt(0, 8 ),
00543     brt(2, 10 ),
00544     brt(6, 10 ),
00545     brt(8, 8 ),
00546     LAST,
00547 
00548 /*      table for H     */
00549     brt(0, 10 ),
00550     drk(8, 10 ),
00551     brt(8, 0 ),
00552     drk(0, 6 ),
00553     brt(8, 6 ),
00554     LAST,
00555 
00556 /*      table for I     */
00557     drk(4, 0 ),
00558     brt(6, 0 ),
00559     drk(5, 0 ),
00560     brt(5, 10 ),
00561     brt(4, 10 ),
00562     brt(6, 10 ),
00563     LAST,
00564 
00565 /*      table for J     */
00566     drk(0, 2 ),
00567     brt(2, 0 ),
00568     brt(5, 0 ),
00569     brt(7, 2 ),
00570     brt(7, 10 ),
00571     brt(6, 10 ),
00572     brt(8, 10 ),
00573     LAST,
00574 
00575 /*      table for K     */
00576     brt(0, 10 ),
00577     drk(0, 5 ),
00578     brt(8, 10 ),
00579     drk(3, 7 ),
00580     brt(8, 0 ),
00581     LAST,
00582 
00583 /*      table for L     */
00584     drk(8, 0 ),
00585     brt(0, 0 ),
00586     brt(0, 10 ),
00587     LAST,
00588 
00589 /*      table for M     */
00590     brt(0, 10 ),
00591     brt(4, 5 ),
00592     brt(8, 10 ),
00593     brt(8, 10 ),
00594     brt(8, 0 ),
00595     LAST,
00596 
00597 /*      table for N     */
00598     brt(0, 10 ),
00599     brt(8, 0 ),
00600     brt(8, 10 ),
00601     LAST,
00602 
00603 /*      table for O     */
00604     drk(0, 2 ),
00605     brt(0, 8 ),
00606     brt(2, 10 ),
00607     brt(6, 10 ),
00608     brt(8, 8 ),
00609     brt(8, 2 ),
00610     brt(6, 0 ),
00611     brt(2, 0 ),
00612     brt(0, 2 ),
00613     LAST,
00614 
00615 /*      table for P     */
00616     brt(0, 10 ),
00617     brt(6, 10 ),
00618     brt(8, 9 ),
00619     brt(8, 6 ),
00620     brt(6, 5 ),
00621     brt(0, 5 ),
00622     LAST,
00623 
00624 /*      table for Q     */
00625     drk(0, 2 ),
00626     brt(0, 8 ),
00627     brt(2, 10 ),
00628     brt(6, 10 ),
00629     brt(8, 8 ),
00630     brt(8, 2 ),
00631     brt(6, 0 ),
00632     brt(2, 0 ),
00633     brt(0, 2 ),
00634     drk(5, 3 ),
00635     brt(8, 0 ),
00636     LAST,
00637 
00638 /*      table for R     */
00639     brt(0, 10 ),
00640     brt(6, 10 ),
00641     brt(8, 8 ),
00642     brt(8, 6 ),
00643     brt(6, 5 ),
00644     brt(0, 5 ),
00645     drk(5, 5 ),
00646     brt(8, 0 ),
00647     LAST,
00648 
00649 /*      table for S     */
00650     drk(0, 1 ),
00651     brt(1, 0 ),
00652     brt(6, 0 ),
00653     brt(8, 2 ),
00654     brt(8, 4 ),
00655     brt(6, 6 ),
00656     brt(2, 6 ),
00657     brt(0, 7 ),
00658     brt(0, 9 ),
00659     brt(1, 10 ),
00660     brt(7, 10 ),
00661     brt(8, 9 ),
00662     LAST,
00663 
00664 /*      table for T     */
00665     drk(4, 0 ),
00666     brt(4, 10 ),
00667     drk(0, 10 ),
00668     brt(8, 10 ),
00669     LAST,
00670 
00671 /*      table for U     */
00672     drk(0, 10 ),
00673     brt(0, 2 ),
00674     brt(2, 0 ),
00675     brt(6, 0 ),
00676     brt(8, 2 ),
00677     brt(8, 10 ),
00678     LAST,
00679 
00680 /*      table for V     */
00681     drk(0, 10 ),
00682     brt(4, 0 ),
00683     brt(8, 10 ),
00684     LAST,
00685 
00686 /*      table for W     */
00687     drk(0, 10 ),
00688     brt(1, 0 ),
00689     brt(4, 4 ),
00690     brt(7, 0 ),
00691     brt(8, 10 ),
00692     LAST,
00693 
00694 /*      table for X     */
00695     brt(8, 10 ),
00696     drk(0, 10 ),
00697     brt(8, 0 ),
00698     LAST,
00699 
00700 /*      table for Y     */
00701     drk(0, 10 ),
00702     brt(4, 4 ),
00703     brt(8, 10 ),
00704     drk(4, 4 ),
00705     brt(4, 0 ),
00706     LAST,
00707 
00708 /*      table for Z     */
00709     drk(0, 10 ),
00710     brt(8, 10 ),
00711     brt(0, 0 ),
00712     brt(8, 0 ),
00713     LAST,
00714 
00715 /*      table for [     */
00716     drk(6, 0 ),
00717     brt(4, 0 ),
00718     brt(4, 10 ),
00719     brt(6, 10 ),
00720     LAST,
00721 
00722 /*      table for \     */
00723     drk(0, 10 ),
00724     brt(8, 0 ),
00725     LAST,
00726 
00727 /*      table for ]     */
00728     drk(2, 0 ),
00729     brt(4, 0 ),
00730     brt(4, 10 ),
00731     brt(2, 10 ),
00732     LAST,
00733 
00734 /*      table for ^     */
00735     drk(4, 0 ),
00736     brt(4, 10 ),
00737     drk(2, 8 ),
00738     brt(4, 10 ),
00739     brt(6, 8 ),
00740     LAST,
00741 
00742 /*      table for _     */
00743     dneg(0, 1),
00744     bneg(11, 1),
00745     LAST,
00746 
00747 /*      table for ascii 96: accent      */
00748     drk(3, 10),
00749     brt(5, 6),
00750     brt(4, 10),
00751     brt(3, 10),
00752     LAST,
00753 
00754 /*      table for a     */
00755     drk(0, 5),
00756     brt(1, 6),
00757     brt(6, 6),
00758     brt(7, 5),
00759     brt(7, 1),
00760     brt(8, 0),
00761     drk(7, 1),
00762     brt(6, 0),
00763     brt(1, 0),
00764     brt(0, 1),
00765     brt(0, 2),
00766     brt(1, 3),
00767     brt(6, 3),
00768     brt(7, 2),
00769     LAST,
00770 
00771 /*      table for b     */
00772     brt(0, 10),
00773     drk(8, 3),
00774     brt(7, 5),
00775     brt(4, 6),
00776     brt(1, 5),
00777     brt(0, 3),
00778     brt(1, 1),
00779     brt(4, 0),
00780     brt(7, 1),
00781     brt(8, 3),
00782     LAST,
00783 
00784 /*      table for c     */
00785     drk(8, 5),
00786     brt(7, 6),
00787     brt(2, 6),
00788     brt(0, 4),
00789     brt(0, 4),
00790     brt(0, 2),
00791     brt(2, 0),
00792     brt(7, 0),
00793     brt(8, 1),
00794     LAST,
00795 
00796 /*      table for d     */
00797     drk(8, 0),
00798     brt(8, 10),
00799     drk(8, 3),
00800     brt(7, 5),
00801     brt(4, 6),
00802     brt(1, 5),
00803     brt(0, 3),
00804     brt(1, 1),
00805     brt(4, 0),
00806     brt(7, 1),
00807     brt(8, 3),
00808     LAST,
00809 
00810 /*      table for e     */
00811     drk(0, 4),
00812     brt(1, 3),
00813     brt(7, 3),
00814     brt(8, 4),
00815     brt(8, 5),
00816     brt(7, 6),
00817     brt(1, 6),
00818     brt(0, 5),
00819     brt(0, 1),
00820     brt(1, 0),
00821     brt(7, 0),
00822     brt(8, 1),
00823     LAST,
00824 
00825 /*      table for f     */
00826     drk(2, 0),
00827     brt(2, 9),
00828     brt(3, 10),
00829     brt(5, 10),
00830     brt(6, 9),
00831     drk(1, 5),
00832     brt(4, 5),
00833     LAST,
00834 
00835 /*      table for g     */
00836     drk(8, 6),
00837     drk(8, 3),
00838     brt(7, 5),
00839     brt(4, 6),
00840     brt(1, 5),
00841     brt(0, 3),
00842     brt(1, 1),
00843     brt(4, 0),
00844     brt(7, 1),
00845     brt(8, 3),
00846     bneg(8, 2),
00847     bneg(7, 3),
00848     bneg(1, 3),
00849     bneg(0, 2),
00850     LAST,
00851 
00852 /*      table for h     */
00853     brt(0, 10),
00854     drk(0, 4),
00855     brt(2, 6),
00856     brt(6, 6),
00857     brt(8, 4),
00858     brt(8, 0),
00859     LAST,
00860 
00861 /*      table for i     */
00862     drk(4, 0),
00863     brt(4, 6),
00864     brt(3, 6),
00865     drk(4, 9),
00866     brt(4, 8),
00867     drk(3, 0),
00868     brt(5, 0),
00869     LAST,
00870 
00871 /*      table for j     */
00872     drk(5, 6),
00873     brt(6, 6),
00874     bneg(6, 2),
00875     bneg(5, 3),
00876     bneg(3, 3),
00877     bneg(2, 2),
00878     LAST,
00879 
00880 /*      table for k     */
00881     brt(2, 0),
00882     brt(2, 10),
00883     brt(0, 10),
00884     drk(2, 4),
00885     brt(4, 4),
00886     brt(8, 6),
00887     drk(4, 4),
00888     brt(8, 0),
00889     LAST,
00890 
00891 /*      table for l     */
00892     drk(3, 10),
00893     brt(4, 10),
00894     brt(4, 2),
00895     brt(5, 0),
00896     LAST,
00897 
00898 /*      table for m     */
00899     brt(0, 6),
00900     drk(0, 5),
00901     brt(1, 6),
00902     brt(3, 6),
00903     brt(4, 5),
00904     brt(4, 0),
00905     drk(4, 5),
00906     brt(5, 6),
00907     brt(7, 6),
00908     brt(8, 5),
00909     brt(8, 0),
00910     LAST,
00911 
00912 /*      table for n     */
00913     brt(0, 6),
00914     drk(0, 4),
00915     brt(2, 6),
00916     brt(6, 6),
00917     brt(8, 4),
00918     brt(8, 0),
00919     LAST,
00920 
00921 /*      table for o     */
00922     drk(8, 3),
00923     brt(7, 5),
00924     brt(4, 6),
00925     brt(1, 5),
00926     brt(0, 3),
00927     brt(1, 1),
00928     brt(4, 0),
00929     brt(7, 1),
00930     brt(8, 3),
00931     LAST,
00932 
00933 /*      table for p     */
00934     drk(0, 6),
00935     bneg(0, 3),
00936     drk(8, 3),
00937     brt(7, 5),
00938     brt(4, 6),
00939     brt(1, 5),
00940     brt(0, 3),
00941     brt(1, 1),
00942     brt(4, 0),
00943     brt(7, 1),
00944     brt(8, 3),
00945     LAST,
00946 
00947 /*      table for q     */
00948     drk(8, 6),
00949     drk(8, 3),
00950     brt(7, 5),
00951     brt(4, 6),
00952     brt(1, 5),
00953     brt(0, 3),
00954     brt(1, 1),
00955     brt(4, 0),
00956     brt(7, 1),
00957     brt(8, 3),
00958     bneg(8, 3),
00959     bneg(9, 3),
00960     LAST,
00961 
00962 /*      table for r     */
00963     brt(1, 0),
00964     brt(1, 6),
00965     brt(0, 6),
00966     drk(1, 4),
00967     brt(3, 6),
00968     brt(6, 6),
00969     brt(8, 4),
00970     LAST,
00971 
00972 /*      table for s     */
00973     drk(0, 1),
00974     brt(1, 0),
00975     brt(7, 0),
00976     brt(8, 1),
00977     brt(7, 2),
00978     brt(1, 4),
00979     brt(0, 5),
00980     brt(1, 6),
00981     brt(7, 6),
00982     brt(8, 5),
00983     LAST,
00984 
00985 /*      table for t     */
00986     drk(7, 1),
00987     brt(6, 0),
00988     brt(4, 0),
00989     brt(3, 1),
00990     brt(3, 10),
00991     brt(2, 10),
00992     drk(1, 5),
00993     brt(5, 5),
00994     LAST,
00995 
00996 /*      table for u     */
00997     drk(0, 6),
00998     brt(1, 6),
00999     brt(1, 1),
01000     brt(2, 0),
01001     brt(6, 0),
01002     brt(7, 1),
01003     brt(7, 6),
01004     drk(7, 1),
01005     brt(8, 0),
01006     LAST,
01007 
01008 /*      table for v     */
01009     drk(0, 6),
01010     brt(4, 0),
01011     brt(8, 6),
01012     LAST,
01013 
01014 /*      table for w     */
01015     drk(0, 6),
01016     brt(0, 5),
01017     brt(2, 0),
01018     brt(4, 5),
01019     brt(6, 0),
01020     brt(8, 5),
01021     brt(8, 6),
01022     LAST,
01023 
01024 /*      table for x     */
01025     brt(8, 6),
01026     drk(0, 6),
01027     brt(8, 0),
01028     LAST,
01029 
01030 /*      table for y     */
01031     drk(0, 6),
01032     brt(0, 1),
01033     brt(1, 0),
01034     brt(7, 0),
01035     brt(8, 1),
01036     drk(8, 6),
01037     bneg(8, 2),
01038     bneg(7, 3),
01039     bneg(1, 3),
01040     bneg(0, 2),
01041     LAST,
01042 
01043 /*      table for z     */
01044     drk(0, 6),
01045     brt(8, 6),
01046     brt(0, 0),
01047     brt(8, 0),
01048     LAST,
01049 
01050 /*      table for ascii 123, left brace */
01051     drk(6, 10),
01052     brt(5, 10),
01053     brt(4, 9),
01054     brt(4, 6),
01055     brt(3, 5),
01056     brt(4, 4),
01057     brt(4, 1),
01058     brt(5, 0),
01059     brt(6, 0),
01060     LAST,
01061 
01062 /*      table for ascii 124, vertical bar       */
01063     drk(4, 4),
01064     brt(4, 0),
01065     brt(5, 0),
01066     brt(5, 4),
01067     brt(4, 4),
01068     drk(4, 6),
01069     brt(4, 10),
01070     brt(5, 10),
01071     brt(5, 6),
01072     brt(4, 6),
01073     LAST,
01074 
01075 /*      table for ascii 125, right brace        */
01076     drk(2, 0),
01077     brt(3, 0),
01078     brt(4, 1),
01079     brt(4, 4),
01080     brt(5, 5),
01081     brt(4, 6),
01082     brt(4, 9),
01083     brt(3, 10),
01084     brt(2, 10),
01085     LAST,
01086 
01087 /*      table for ascii 126, tilde      */
01088     drk(0, 5),
01089     brt(1, 6),
01090     brt(3, 6),
01091     brt(5, 4),
01092     brt(7, 4),
01093     brt(8, 5),
01094     LAST,
01095 
01096 /*      table for ascii 127, rubout     */
01097     drk(0, 2),
01098     brt(0, 8),
01099     brt(8, 8),
01100     brt(8, 2),
01101     brt(0, 2),
01102     LAST
01103 };
01104 
01105 /*
01106  * Local Variables:
01107  * mode: C
01108  * tab-width: 8
01109  * indent-tabs-mode: t
01110  * c-file-style: "stroustrup"
01111  * End:
01112  * ex: shiftwidth=4 tabstop=8
01113  */
Generated on Tue Dec 11 13:14:28 2012 for LIBBN by  doxygen 1.6.3