home *** CD-ROM | disk | FTP | other *** search
open in:
MacOS 8.1
|
Win98
|
DOS
browse contents |
view JSON data
|
view as text
This file was processed as: SHell self-extracting ARchive
(archive/shar).
Confidence | Program | Detection | Match Type | Support
|
---|
100%
| dexvert
| Newsgroup Content (archive/news)
| magic
| Supported |
100%
| dexvert
| SHell self-extracting ARchive (archive/shar)
| magic
| Supported |
100%
| dexvert
| Internet Message Format (text/imf)
| magic
| Supported |
1%
| dexvert
| Text File (text/txt)
| fallback
| Supported |
100%
| file
| news or mail text
| default
| |
99%
| file
| C source, ASCII text
| default
| |
100%
| TrID
| E-Mail message (Var. 2)
| default
| |
100%
| checkBytes
| Printable ASCII
| default
| |
100%
| perlTextCheck
| Likely Text (Perl)
| default
| |
100%
| siegfried
| fmt/329 Shell Archive Format
| default
| |
100%
| detectItEasy
| Format: plain text[LF]
| default (weak)
| |
100%
| xdgMime
| message/rfc822
| default
|
|
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 46 72 6f 6d 3a 20 67 65 | 6e 72 61 64 21 6c 69 6e |From: ge|nrad!lin|
|00000010| 75 73 21 70 68 69 6c 61 | 62 73 21 72 6f 6e 31 21 |us!phila|bs!ron1!|
|00000020| 72 6f 6e 20 28 52 6f 6e | 20 53 61 61 64 29 0a 53 |ron (Ron| Saad).S|
|00000030| 75 62 6a 65 63 74 3a 20 | 48 50 20 4c 61 73 65 72 |ubject: |HP Laser|
|00000040| 4a 65 74 20 64 72 69 76 | 65 72 20 70 61 72 74 20 |Jet driv|er part |
|00000050| 32 20 6f 66 20 32 2e 0a | 4e 65 77 73 67 72 6f 75 |2 of 2..|Newsgrou|
|00000060| 70 73 3a 20 6d 6f 64 2e | 73 6f 75 72 63 65 73 0a |ps: mod.|sources.|
|00000070| 41 70 70 72 6f 76 65 64 | 3a 20 6a 70 6e 40 70 61 |Approved|: jpn@pa|
|00000080| 6e 64 61 2e 55 55 43 50 | 0a 0a 4d 6f 64 2e 73 6f |nda.UUCP|..Mod.so|
|00000090| 75 72 63 65 73 3a 20 20 | 56 6f 6c 75 6d 65 20 33 |urces: |Volume 3|
|000000a0| 2c 20 49 73 73 75 65 20 | 31 39 0a 53 75 62 6d 69 |, Issue |19.Submi|
|000000b0| 74 74 65 64 20 62 79 3a | 20 70 68 69 6c 61 62 73 |tted by:| philabs|
|000000c0| 21 72 6f 6e 31 21 72 6f | 6e 20 28 52 6f 6e 20 53 |!ron1!ro|n (Ron S|
|000000d0| 61 61 64 29 0a 0a 0a 23 | 21 20 2f 62 69 6e 2f 73 |aad)...#|! /bin/s|
|000000e0| 68 0a 23 20 54 68 69 73 | 20 69 73 20 61 20 73 68 |h.# This| is a sh|
|000000f0| 65 6c 6c 20 61 72 63 68 | 69 76 65 2c 20 6d 65 61 |ell arch|ive, mea|
|00000100| 6e 69 6e 67 3a 0a 23 20 | 31 2e 20 52 65 6d 6f 76 |ning:.# |1. Remov|
|00000110| 65 20 65 76 65 72 79 74 | 68 69 6e 67 20 61 62 6f |e everyt|hing abo|
|00000120| 76 65 20 74 68 65 20 23 | 21 20 2f 62 69 6e 2f 73 |ve the #|! /bin/s|
|00000130| 68 20 6c 69 6e 65 2e 0a | 23 20 32 2e 20 53 61 76 |h line..|# 2. Sav|
|00000140| 65 20 74 68 65 20 72 65 | 73 75 6c 74 69 6e 67 20 |e the re|sulting |
|00000150| 74 65 78 74 20 69 6e 20 | 61 20 66 69 6c 65 2e 0a |text in |a file..|
|00000160| 23 20 33 2e 20 45 78 65 | 63 75 74 65 20 74 68 65 |# 3. Exe|cute the|
|00000170| 20 66 69 6c 65 20 77 69 | 74 68 20 2f 62 69 6e 2f | file wi|th /bin/|
|00000180| 73 68 20 28 6e 6f 74 20 | 63 73 68 29 20 74 6f 20 |sh (not |csh) to |
|00000190| 63 72 65 61 74 65 20 74 | 68 65 20 66 69 6c 65 73 |create t|he files|
|000001a0| 3a 0a 23 09 68 70 2e 63 | 0a 23 20 54 68 69 73 20 |:.#.hp.c|.# This |
|000001b0| 61 72 63 68 69 76 65 20 | 63 72 65 61 74 65 64 3a |archive |created:|
|000001c0| 20 4d 6f 6e 20 53 65 70 | 20 32 33 20 32 33 3a 30 | Mon Sep| 23 23:0|
|000001d0| 39 3a 33 35 20 31 39 38 | 35 0a 65 78 70 6f 72 74 |9:35 198|5.export|
|000001e0| 20 50 41 54 48 3b 20 50 | 41 54 48 3d 2f 62 69 6e | PATH; P|ATH=/bin|
|000001f0| 3a 24 50 41 54 48 0a 65 | 63 68 6f 20 73 68 61 72 |:$PATH.e|cho shar|
|00000200| 3a 20 65 78 74 72 61 63 | 74 69 6e 67 20 22 27 68 |: extrac|ting "'h|
|00000210| 70 2e 63 27 22 20 27 28 | 32 38 34 37 31 20 63 68 |p.c'" '(|28471 ch|
|00000220| 61 72 61 63 74 65 72 73 | 29 27 0a 69 66 20 74 65 |aracters|)'.if te|
|00000230| 73 74 20 2d 66 20 27 68 | 70 2e 63 27 0a 74 68 65 |st -f 'h|p.c'.the|
|00000240| 6e 0a 09 65 63 68 6f 20 | 73 68 61 72 3a 20 77 69 |n..echo |shar: wi|
|00000250| 6c 6c 20 6e 6f 74 20 6f | 76 65 72 2d 77 72 69 74 |ll not o|ver-writ|
|00000260| 65 20 65 78 69 73 74 69 | 6e 67 20 66 69 6c 65 20 |e existi|ng file |
|00000270| 22 27 68 70 2e 63 27 22 | 0a 65 6c 73 65 0a 73 65 |"'hp.c'"|.else.se|
|00000280| 64 20 27 73 2f 5e 09 58 | 2f 2f 27 20 3c 3c 20 5c |d 's/^.X|//' << \|
|00000290| 53 48 41 52 5f 45 4f 46 | 20 3e 20 27 68 70 2e 63 |SHAR_EOF| > 'hp.c|
|000002a0| 27 0a 09 58 2f 2a 20 76 | 69 3a 73 65 20 74 73 3d |'..X/* v|i:se ts=|
|000002b0| 34 20 73 77 3d 34 20 77 | 6d 3d 30 3a 20 2a 2f 0a |4 sw=4 w|m=0: */.|
|000002c0| 09 58 73 74 61 74 69 63 | 20 63 68 61 72 20 2a 52 |.Xstatic| char *R|
|000002d0| 43 53 69 64 20 3d 0a 09 | 58 09 09 22 24 48 65 61 |CSid =..|X.."$Hea|
|000002e0| 64 65 72 3a 20 68 70 2e | 63 2c 76 20 31 2e 31 2e |der: hp.|c,v 1.1.|
|000002f0| 31 2e 39 20 38 35 2f 30 | 38 2f 31 37 20 31 35 3a |1.9 85/0|8/17 15:|
|00000300| 35 33 3a 33 35 20 72 6f | 6e 20 45 78 70 20 24 22 |53:35 ro|n Exp $"|
|00000310| 3b 0a 09 58 0a 09 58 2f | 2a 0a 09 58 20 2a 20 68 |;..X..X/|*..X * h|
|00000320| 70 2e 63 20 2d 20 43 6f | 70 79 72 69 67 68 74 20 |p.c - Co|pyright |
|00000330| 28 63 29 20 31 39 38 35 | 20 62 79 20 52 6f 6e 20 |(c) 1985| by Ron |
|00000340| 53 61 61 64 20 28 72 6f | 6e 31 21 72 6f 6e 29 0a |Saad (ro|n1!ron).|
|00000350| 09 58 20 2a 20 41 6c 6c | 20 52 69 67 68 74 73 20 |.X * All| Rights |
|00000360| 52 65 73 65 72 76 65 64 | 2e 0a 09 58 20 2a 0a 09 |Reserved|...X *..|
|00000370| 58 20 2a 20 54 68 69 73 | 20 63 6f 64 65 20 6d 61 |X * This| code ma|
|00000380| 79 62 65 20 66 72 65 65 | 6c 79 20 64 69 73 74 72 |ybe free|ly distr|
|00000390| 69 62 75 74 65 64 20 69 | 6e 20 73 6f 75 72 63 65 |ibuted i|n source|
|000003a0| 0a 09 58 20 2a 20 66 6f | 72 20 6e 6f 6e 20 63 6f |..X * fo|r non co|
|000003b0| 6d 6d 65 72 63 69 61 6c | 20 70 75 72 70 6f 73 65 |mmercial| purpose|
|000003c0| 73 2e 0a 09 58 20 2a 20 | 50 6c 65 61 73 65 20 6b |s...X * |Please k|
|000003d0| 65 65 70 20 74 68 69 73 | 20 6e 6f 74 69 63 65 20 |eep this| notice |
|000003e0| 69 6e 74 61 63 74 2e 0a | 09 58 20 2a 2f 0a 09 58 |intact..|.X */..X|
|000003f0| 0a 09 58 2f 2a 0a 09 58 | 20 2a 20 24 4c 6f 67 3a |..X/*..X| * $Log:|
|00000400| 09 68 70 2e 63 2c 76 20 | 24 0a 09 58 20 2a 20 52 |.hp.c,v |$..X * R|
|00000410| 65 76 69 73 69 6f 6e 20 | 31 2e 31 2e 31 2e 39 20 |evision |1.1.1.9 |
|00000420| 20 38 35 2f 30 38 2f 31 | 37 20 20 31 35 3a 35 33 | 85/08/1|7 15:53|
|00000430| 3a 33 35 20 20 72 6f 6e | 0a 09 58 20 2a 20 41 73 |:35 ron|..X * As|
|00000440| 20 75 73 75 61 6c 2c 20 | 6a 75 73 74 20 27 6f 6e | usual, |just 'on|
|00000450| 65 20 6d 6f 72 65 20 74 | 68 69 6e 67 20 2e 2e 27 |e more t|hing ..'|
|00000460| 20 2d 20 6d 6f 76 65 64 | 20 74 68 65 0a 09 58 20 | - moved| the..X |
|00000470| 2a 20 73 69 7a 65 20 63 | 68 65 61 74 69 6e 67 20 |* size c|heating |
|00000480| 63 6f 64 65 20 74 6f 20 | 77 68 65 72 65 20 69 74 |code to |where it|
|00000490| 20 62 65 6c 6f 6e 67 73 | 20 2d 20 6a 75 73 74 20 | belongs| - just |
|000004a0| 62 65 66 6f 72 65 0a 09 | 58 20 2a 20 74 68 65 20 |before..|X * the |
|000004b0| 66 69 6c 65 20 67 65 74 | 73 20 72 65 61 64 20 69 |file get|s read i|
|000004c0| 6e 2e 0a 09 58 20 2a 20 | 73 74 69 6c 6c 20 74 6f |n...X * |still to|
|000004d0| 20 64 6f 3a 0a 09 58 20 | 2a 20 6d 61 6b 65 20 76 | do:..X |* make v|
|000004e0| 67 6f 74 6f 20 61 64 6a | 75 73 74 20 74 68 65 20 |goto adj|ust the |
|000004f0| 68 65 69 67 68 74 20 74 | 6f 20 73 63 61 6c 65 20 |height t|o scale |
|00000500| 66 6f 72 20 6e 6f 74 20 | 68 61 76 69 6e 67 20 61 |for not |having a|
|00000510| 20 66 75 6c 6c 0a 09 58 | 20 2a 20 31 31 20 69 6e | full..X| * 11 in|
|00000520| 63 68 65 73 2c 20 6f 74 | 68 65 72 77 69 73 65 20 |ches, ot|herwise |
|00000530| 67 65 74 20 62 6f 67 75 | 73 20 70 61 67 65 20 66 |get bogu|s page f|
|00000540| 65 65 64 73 2e 0a 09 58 | 20 2a 20 0a 09 58 20 2a |eeds...X| * ..X *|
|00000550| 20 52 65 76 69 73 69 6f | 6e 20 31 2e 31 2e 31 2e | Revisio|n 1.1.1.|
|00000560| 38 20 20 38 35 2f 30 38 | 2f 31 35 20 20 31 34 3a |8 85/08|/15 14:|
|00000570| 35 30 3a 32 39 20 20 72 | 6f 6e 0a 09 58 20 2a 20 |50:29 r|on..X * |
|00000580| 74 68 69 73 20 73 65 65 | 6d 73 20 74 6f 20 62 65 |this see|ms to be|
|00000590| 20 74 68 65 20 76 65 72 | 73 69 6f 6e 20 67 6f 69 | the ver|sion goi|
|000005a0| 6e 67 20 6f 75 74 20 74 | 6f 20 6d 6f 64 2e 73 6f |ng out t|o mod.so|
|000005b0| 75 72 63 65 73 0a 09 58 | 20 2a 20 28 69 66 20 74 |urces..X| * (if t|
|000005c0| 68 65 79 27 6c 6c 20 74 | 61 6b 65 20 69 74 29 2e |hey'll t|ake it).|
|000005d0| 0a 09 58 20 2a 20 0a 09 | 58 20 2a 20 52 65 76 69 |..X * ..|X * Revi|
|000005e0| 73 69 6f 6e 20 31 2e 31 | 2e 31 2e 37 20 20 38 35 |sion 1.1|.1.7 85|
|000005f0| 2f 30 38 2f 30 37 20 20 | 32 33 3a 31 33 3a 30 36 |/08/07 |23:13:06|
|00000600| 20 20 72 6f 6e 0a 09 58 | 20 2a 20 74 68 69 73 20 | ron..X| * this |
|00000610| 69 73 20 70 72 6f 62 61 | 62 6c 79 20 61 20 75 73 |is proba|bly a us|
|00000620| 61 62 6c 65 20 76 65 72 | 73 69 6f 6e 20 6f 66 20 |able ver|sion of |
|00000630| 74 68 65 20 6c 61 73 65 | 72 6a 65 74 20 64 72 69 |the lase|rjet dri|
|00000640| 76 65 72 2e 20 69 74 20 | 6c 6f 61 64 73 0a 09 58 |ver. it |loads..X|
|00000650| 20 2a 20 62 69 74 20 6d | 61 70 73 20 66 6f 72 20 | * bit m|aps for |
|00000660| 73 70 65 63 69 61 6c 20 | 66 6f 6e 74 73 20 61 6e |special |fonts an|
|00000670| 64 20 66 6f 72 20 73 69 | 7a 65 73 20 74 68 61 74 |d for si|zes that|
|00000680| 20 61 72 65 20 6e 6f 74 | 20 6f 6e 20 74 68 65 20 | are not| on the |
|00000690| 63 61 72 74 72 69 64 67 | 65 2c 0a 09 58 20 2a 20 |cartridg|e,..X * |
|000006a0| 61 6e 64 20 68 61 73 20 | 74 68 65 20 62 61 73 69 |and has |the basi|
|000006b0| 73 20 66 6f 72 20 65 6e | 68 61 6e 63 65 6d 65 6e |s for en|hancemen|
|000006c0| 74 20 2d 20 69 74 20 73 | 74 69 6c 6c 20 6e 65 65 |t - it s|till nee|
|000006d0| 64 73 20 61 20 4c 4f 54 | 20 6f 66 20 77 6f 72 6b |ds a LOT| of work|
|000006e0| 3a 0a 09 58 20 2a 20 43 | 4c 45 41 4e 49 4e 47 20 |:..X * C|LEANING |
|000006f0| 55 50 21 0a 09 58 20 2a | 20 72 65 63 6f 67 6e 69 |UP!..X *| recogni|
|00000700| 74 69 6f 6e 20 6f 66 20 | 76 66 6f 6e 74 2f 72 61 |tion of |vfont/ra|
|00000710| 73 74 69 31 30 20 62 79 | 20 66 5f 6d 61 67 69 63 |sti10 by| f_magic|
|00000720| 20 2d 20 61 64 64 20 66 | 69 65 6c 64 20 74 6f 20 | - add f|ield to |
|00000730| 46 49 4e 46 4f 0a 09 58 | 20 2a 20 09 61 6e 64 20 |FINFO..X| * .and |
|00000740| 75 73 65 20 74 6f 20 64 | 65 63 69 64 65 20 6f 6e |use to d|ecide on|
|00000750| 20 68 65 69 67 68 74 2f | 77 69 64 74 68 20 6f 66 | height/|width of|
|00000760| 20 63 68 61 72 61 63 74 | 65 72 2c 20 70 6f 73 69 | charact|er, posi|
|00000770| 74 69 6f 6e 69 6e 67 2c | 20 65 74 63 2e 0a 09 58 |tioning,| etc...X|
|00000780| 20 2a 20 61 64 64 20 63 | 6f 64 65 20 74 61 62 6c | * add c|ode tabl|
|00000790| 65 73 20 66 6f 72 20 72 | 61 73 74 69 31 30 20 62 |es for r|asti10 b|
|000007a0| 69 74 20 6d 61 70 73 2e | 0a 09 58 20 2a 20 65 74 |it maps.|..X * et|
|000007b0| 63 0a 09 58 20 2a 20 0a | 09 58 20 2a 20 52 65 76 |c..X * .|.X * Rev|
|000007c0| 69 73 69 6f 6e 20 31 2e | 31 2e 31 2e 36 20 20 38 |ision 1.|1.1.6 8|
|000007d0| 35 2f 30 38 2f 30 34 20 | 20 31 32 3a 33 38 3a 35 |5/08/04 | 12:38:5|
|000007e0| 36 20 20 72 6f 6e 0a 09 | 58 20 2a 20 61 64 64 65 |6 ron..|X * adde|
|000007f0| 64 20 66 6f 6e 74 20 69 | 6e 66 6f 20 74 61 62 6c |d font i|nfo tabl|
|00000800| 65 2c 20 63 68 61 6e 67 | 65 64 20 66 6f 6e 74 20 |e, chang|ed font |
|00000810| 72 65 61 64 73 20 74 6f | 20 61 20 66 73 65 65 6b |reads to| a fseek|
|00000820| 20 66 6f 6c 6c 6f 77 65 | 64 0a 09 58 20 2a 20 62 | followe|d..X * b|
|00000830| 79 20 63 68 61 72 61 74 | 65 72 20 64 61 74 61 20 |y charat|er data |
|00000840| 72 65 61 64 73 2e 20 73 | 74 69 6c 6c 20 6e 65 65 |reads. s|till nee|
|00000850| 64 20 74 6f 20 61 64 64 | 20 63 6f 64 65 20 74 61 |d to add| code ta|
|00000860| 62 6c 65 73 20 66 6f 72 | 20 72 61 73 74 69 31 30 |bles for| rasti10|
|00000870| 0a 09 58 20 2a 20 61 6e | 64 20 64 69 73 74 69 6e |..X * an|d distin|
|00000880| 67 75 69 73 68 20 62 65 | 74 77 65 65 6e 20 72 61 |guish be|tween ra|
|00000890| 73 74 69 31 30 20 61 6e | 64 20 76 66 6f 6e 74 2e |sti10 an|d vfont.|
|000008a0| 20 61 64 64 20 66 69 65 | 6c 64 20 74 6f 20 66 69 | add fie|ld to fi|
|000008b0| 6e 66 6f 20 62 61 73 65 | 64 0a 09 58 20 2a 20 6f |nfo base|d..X * o|
|000008c0| 6e 20 74 68 65 20 66 5f | 6d 61 67 69 63 20 61 6e |n the f_|magic an|
|000008d0| 64 20 65 6e 66 6f 72 63 | 65 20 66 5f 6d 61 67 69 |d enforc|e f_magi|
|000008e0| 63 2e 20 66 69 6e 64 20 | 6f 75 74 20 77 68 79 20 |c. find |out why |
|000008f0| 76 66 6f 6e 74 20 70 72 | 6f 64 75 63 65 73 0a 09 |vfont pr|oduces..|
|00000900| 58 20 2a 20 70 6f 6f 72 | 6c 79 20 70 6c 61 63 65 |X * poor|ly place|
|00000910| 64 20 63 68 61 72 61 63 | 74 65 72 73 2e 0a 09 58 |d charac|ters...X|
|00000920| 20 2a 20 68 61 73 20 6e | 6f 74 20 79 65 74 20 62 | * has n|ot yet b|
|00000930| 65 65 6e 20 74 65 73 74 | 65 64 2e 0a 09 58 20 2a |een test|ed...X *|
|00000940| 20 0a 09 58 20 2a 20 52 | 65 76 69 73 69 6f 6e 20 | ..X * R|evision |
|00000950| 31 2e 31 2e 31 2e 35 20 | 20 38 35 2f 30 38 2f 30 |1.1.1.5 | 85/08/0|
|00000960| 32 20 20 31 34 3a 30 38 | 3a 34 30 20 20 72 6f 6e |2 14:08|:40 ron|
|00000970| 0a 09 58 20 2a 20 61 64 | 64 69 6e 67 20 61 20 66 |..X * ad|ding a f|
|00000980| 6f 6e 74 20 69 6e 66 6f | 20 74 61 62 6c 65 20 73 |ont info| table s|
|00000990| 6f 20 74 68 61 74 20 77 | 65 20 63 61 6e 20 75 73 |o that w|e can us|
|000009a0| 65 20 6d 6f 72 65 20 74 | 68 61 6e 0a 09 58 20 2a |e more t|han..X *|
|000009b0| 20 6f 6e 65 20 62 69 74 | 2d 6d 61 70 20 61 74 20 | one bit|-map at |
|000009c0| 61 20 74 69 6d 65 20 77 | 69 74 68 6f 75 74 20 63 |a time w|ithout c|
|000009d0| 6f 6e 73 74 61 6e 74 6c | 79 20 6c 6f 61 64 69 6e |onstantl|y loadin|
|000009e0| 67 2f 75 6e 6c 6f 61 64 | 69 6e 67 0a 09 58 20 2a |g/unload|ing..X *|
|000009f0| 20 66 69 6c 65 73 2e 20 | 6d 61 79 20 61 6c 73 6f | files. |may also|
|00000a00| 20 63 68 61 6e 67 65 20 | 74 68 65 20 6c 6f 61 64 | change |the load|
|00000a10| 69 6e 67 20 74 6f 20 61 | 6e 20 66 73 65 65 6b 20 |ing to a|n fseek |
|00000a20| 66 6f 6c 6c 6f 77 65 64 | 20 62 79 20 61 20 72 65 |followed| by a re|
|00000a30| 61 64 20 74 6f 0a 09 58 | 20 2a 20 6d 69 6e 69 6d |ad to..X| * minim|
|00000a40| 69 7a 65 20 66 69 6c 65 | 20 61 63 63 65 73 73 20 |ize file| access |
|00000a50| 73 69 6e 63 65 20 6d 6f | 73 74 20 6f 66 20 74 68 |since mo|st of th|
|00000a60| 65 20 62 69 74 2d 6d 61 | 70 20 73 74 75 66 66 20 |e bit-ma|p stuff |
|00000a70| 61 72 65 20 64 6f 6e 65 | 0a 09 58 20 2a 20 66 6f |are done|..X * fo|
|00000a80| 72 20 6f 6e 6c 79 20 61 | 20 66 65 77 20 63 68 61 |r only a| few cha|
|00000a90| 72 61 63 74 65 72 73 2e | 0a 09 58 20 2a 20 74 68 |racters.|..X * th|
|00000aa0| 65 72 65 66 6f 72 65 20 | 6b 65 65 70 20 74 68 69 |erefore |keep thi|
|00000ab0| 73 20 22 70 72 65 2d 63 | 68 61 6e 67 65 22 20 76 |s "pre-c|hange" v|
|00000ac0| 65 72 73 69 6f 6e 20 62 | 34 20 69 20 64 65 73 74 |ersion b|4 i dest|
|00000ad0| 72 6f 79 20 69 74 20 2e | 2e 2e 0a 09 58 20 2a 20 |roy it .|....X * |
|00000ae0| 0a 09 58 20 2a 20 52 65 | 76 69 73 69 6f 6e 20 31 |..X * Re|vision 1|
|00000af0| 2e 31 2e 31 2e 34 20 20 | 38 35 2f 30 37 2f 32 38 |.1.1.4 |85/07/28|
|00000b00| 20 20 31 35 3a 30 37 3a | 33 33 20 20 72 6f 6e 0a | 15:07:|33 ron.|
|00000b10| 09 58 20 2a 20 77 6f 72 | 6b 73 2e 20 69 73 20 63 |.X * wor|ks. is c|
|00000b20| 6f 6e 66 69 6e 65 64 20 | 74 6f 20 6f 6e 65 20 73 |onfined |to one s|
|00000b30| 69 7a 65 20 2d 20 6e 65 | 78 74 20 73 74 65 70 20 |ize - ne|xt step |
|00000b40| 69 73 20 73 69 7a 65 20 | 63 68 61 6e 67 65 73 2e |is size |changes.|
|00000b50| 20 72 75 6c 65 0a 09 58 | 20 2a 20 69 73 20 64 6f | rule..X| * is do|
|00000b60| 6e 65 20 77 72 6f 6e 67 | 20 2d 20 63 6f 6d 65 73 |ne wrong| - comes|
|00000b70| 20 6f 75 74 20 74 6f 6f | 20 6c 6f 77 20 2d 20 73 | out too| low - s|
|00000b80| 68 6f 75 6c 64 20 75 73 | 65 20 62 69 74 20 6d 61 |hould us|e bit ma|
|00000b90| 70 2e 0a 09 58 20 2a 20 | 6b 6e 6f 77 73 20 61 62 |p...X * |knows ab|
|00000ba0| 6f 75 74 20 64 69 66 66 | 65 72 65 6e 63 65 73 20 |out diff|erences |
|00000bb0| 62 65 74 77 65 65 6e 20 | 76 66 6f 6e 74 20 61 6e |between |vfont an|
|00000bc0| 64 20 72 61 73 74 69 31 | 30 20 2d 20 69 2e 65 2e |d rasti1|0 - i.e.|
|00000bd0| 20 61 64 64 69 6e 67 0a | 09 58 20 2a 20 31 20 62 | adding.|.X * 1 b|
|00000be0| 69 74 20 61 6e 64 20 31 | 20 72 6f 77 20 77 68 65 |it and 1| row whe|
|00000bf0| 6e 20 6e 65 65 64 65 64 | 2e 0a 09 58 20 2a 20 0a |n needed|...X * .|
|00000c00| 09 58 20 2a 20 52 65 76 | 69 73 69 6f 6e 20 31 2e |.X * Rev|ision 1.|
|00000c10| 31 2e 31 2e 33 20 20 38 | 35 2f 30 37 2f 32 31 20 |1.1.3 8|5/07/21 |
|00000c20| 20 31 36 3a 32 38 3a 35 | 31 20 20 72 6f 6e 0a 09 | 16:28:5|1 ron..|
|00000c30| 58 20 2a 20 66 69 72 73 | 74 20 61 74 74 65 6d 70 |X * firs|t attemp|
|00000c40| 74 20 61 74 20 61 64 64 | 69 6e 67 20 74 68 65 20 |t at add|ing the |
|00000c50| 73 70 65 63 69 61 6c 20 | 66 6f 6e 74 20 61 73 20 |special |font as |
|00000c60| 61 20 72 61 73 74 65 72 | 0a 09 58 20 2a 20 6d 61 |a raster|..X * ma|
|00000c70| 70 20 61 6e 64 20 64 75 | 6d 70 27 6e 20 6f 75 74 |p and du|mp'n out|
|00000c80| 20 62 69 74 20 6d 61 70 | 73 20 77 68 65 6e 20 61 | bit map|s when a|
|00000c90| 70 70 72 6f 70 72 69 61 | 74 65 2e 0a 09 58 20 2a |ppropria|te...X *|
|00000ca0| 20 0a 09 58 20 2a 20 52 | 65 76 69 73 69 6f 6e 20 | ..X * R|evision |
|00000cb0| 31 2e 31 2e 31 2e 32 20 | 20 38 35 2f 30 37 2f 31 |1.1.1.2 | 85/07/1|
|00000cc0| 39 20 20 31 32 3a 32 34 | 3a 31 35 20 20 72 6f 6e |9 12:24|:15 ron|
|00000cd0| 0a 09 58 20 2a 20 74 6f | 6f 6b 20 6f 75 74 20 74 |..X * to|ok out t|
|00000ce0| 68 65 20 27 6f 70 74 69 | 6d 69 7a 61 74 69 6f 6e |he 'opti|mization|
|00000cf0| 27 2e 20 69 74 20 64 6f | 65 73 20 77 6f 72 6b 2c |'. it do|es work,|
|00000d00| 20 69 2e 65 2e 20 63 75 | 74 73 20 66 69 6c 65 20 | i.e. cu|ts file |
|00000d10| 73 69 7a 65 2c 0a 09 58 | 20 2a 20 69 6d 61 67 69 |size,..X| * imagi|
|00000d20| 6e 67 20 74 69 6d 65 20 | 65 74 63 2c 20 62 75 74 |ng time |etc, but|
|00000d30| 20 74 68 65 20 73 70 61 | 63 69 6e 67 20 6f 66 20 | the spa|cing of |
|00000d40| 74 68 65 20 6c 61 73 65 | 72 6a 65 74 20 69 73 20 |the lase|rjet is |
|00000d50| 6d 75 63 68 20 6c 61 72 | 67 65 72 0a 09 58 20 2a |much lar|ger..X *|
|00000d60| 20 74 68 61 6e 20 77 68 | 61 74 20 74 72 6f 66 66 | than wh|at troff|
|00000d70| 20 74 68 69 6e 6b 73 20 | 69 74 20 69 73 2e 0a 09 | thinks |it is...|
|00000d80| 58 20 2a 20 0a 09 58 20 | 2a 20 52 65 76 69 73 69 |X * ..X |* Revisi|
|00000d90| 6f 6e 20 31 2e 31 2e 31 | 2e 31 20 20 38 35 2f 30 |on 1.1.1|.1 85/0|
|00000da0| 37 2f 31 30 20 20 31 30 | 3a 32 36 3a 30 36 20 20 |7/10 10|:26:06 |
|00000db0| 72 6f 6e 0a 09 58 20 2a | 20 67 61 76 65 20 75 70 |ron..X *| gave up|
|00000dc0| 20 6f 6e 20 65 6c 69 6d | 69 6e 61 74 69 6e 67 20 | on elim|inating |
|00000dd0| 68 70 6f 73 20 66 6f 72 | 20 6e 6f 77 2e 20 6d 61 |hpos for| now. ma|
|00000de0| 79 20 74 72 79 20 61 67 | 61 69 6e 0a 09 58 20 2a |y try ag|ain..X *|
|00000df0| 20 6c 61 74 65 72 2e 0a | 09 58 20 2a 20 0a 09 58 | later..|.X * ..X|
|00000e00| 20 2a 20 52 65 76 69 73 | 69 6f 6e 20 31 2e 31 2e | * Revis|ion 1.1.|
|00000e10| 30 2e 32 20 20 38 35 2f | 30 37 2f 31 30 20 20 30 |0.2 85/|07/10 0|
|00000e20| 38 3a 33 38 3a 35 39 20 | 20 72 6f 6e 0a 09 58 20 |8:38:59 | ron..X |
|00000e30| 2a 20 6f 6b 2c 20 70 75 | 74 20 69 6e 20 61 20 66 |* ok, pu|t in a f|
|00000e40| 75 64 67 65 20 74 6f 20 | 64 6f 20 68 66 6c 75 73 |udge to |do hflus|
|00000e50| 68 28 29 20 6f 6e 6c 79 | 20 69 66 20 69 74 27 73 |h() only| if it's|
|00000e60| 20 6e 6f 74 0a 09 58 20 | 2a 20 61 20 73 65 71 75 | not..X |* a sequ|
|00000e70| 65 6e 63 65 20 6f 66 20 | 63 68 61 72 61 63 74 65 |ence of |characte|
|00000e80| 72 73 2e 0a 09 58 20 2a | 20 0a 09 58 20 2a 20 52 |rs...X *| ..X * R|
|00000e90| 65 76 69 73 69 6f 6e 20 | 31 2e 31 2e 30 2e 31 20 |evision |1.1.0.1 |
|00000ea0| 20 38 35 2f 30 37 2f 31 | 30 20 20 30 38 3a 33 30 | 85/07/1|0 08:30|
|00000eb0| 3a 32 33 20 20 72 6f 6e | 0a 09 58 20 2a 20 74 68 |:23 ron|..X * th|
|00000ec0| 65 20 6e 75 6d 62 65 72 | 69 6e 67 20 69 6e 20 72 |e number|ing in r|
|00000ed0| 63 73 20 69 73 20 72 69 | 64 69 63 75 6c 6f 75 73 |cs is ri|diculous|
|00000ee0| 2e 20 61 6e 79 77 61 79 | 2c 20 74 68 69 73 20 69 |. anyway|, this i|
|00000ef0| 73 20 74 68 65 20 27 73 | 74 61 72 74 69 6e 67 27 |s the 's|tarting'|
|00000f00| 0a 09 58 20 2a 20 66 69 | 6c 65 20 66 6f 72 20 74 |..X * fi|le for t|
|00000f10| 68 69 73 20 27 62 72 61 | 6e 63 68 27 2e 20 67 6f |his 'bra|nch'. go|
|00000f20| 61 6c 20 69 73 20 74 6f | 20 65 6c 69 6d 69 6e 61 |al is to| elimina|
|00000f30| 74 65 20 61 73 20 6d 61 | 6e 79 20 68 6f 72 69 7a |te as ma|ny horiz|
|00000f40| 20 70 6f 73 69 74 69 6f | 6e 0a 09 58 20 2a 20 61 | positio|n..X * a|
|00000f50| 73 20 70 6f 73 73 69 62 | 6c 65 2c 20 73 69 6e 63 |s possib|le, sinc|
|00000f60| 65 20 74 68 69 73 20 74 | 61 6b 65 73 20 66 6f 72 |e this t|akes for|
|00000f70| 65 76 65 72 20 6f 6e 20 | 74 68 65 20 6c 61 73 65 |ever on |the lase|
|00000f80| 72 6a 65 74 2e 20 6e 65 | 78 74 20 74 72 79 0a 09 |rjet. ne|xt try..|
|00000f90| 58 20 2a 20 69 73 20 74 | 6f 20 6c 65 74 20 74 68 |X * is t|o let th|
|00000fa0| 65 20 70 72 69 6e 74 65 | 72 20 64 6f 20 74 68 65 |e printe|r do the|
|00000fb0| 20 73 70 61 63 69 6e 67 | 20 69 6e 20 65 76 65 72 | spacing| in ever|
|00000fc0| 79 20 63 61 73 65 20 77 | 68 65 72 65 0a 09 58 20 |y case w|here..X |
|00000fd0| 2a 20 77 65 20 68 61 76 | 65 20 6a 75 73 74 20 70 |* we hav|e just p|
|00000fe0| 72 69 6e 74 65 64 20 61 | 20 73 65 71 75 65 6e 63 |rinted a| sequenc|
|00000ff0| 65 20 6f 66 20 32 68 6f | 72 2d 6d 6f 74 2d 64 69 |e of 2ho|r-mot-di|
|00001000| 67 69 74 73 2b 63 68 61 | 72 20 61 6e 64 0a 09 58 |gits+cha|r and..X|
|00001010| 20 2a 20 68 61 76 65 20 | 61 6e 6f 74 68 65 72 20 | * have |another |
|00001020| 6f 6e 65 20 69 6d 6d 65 | 64 69 61 74 65 6c 79 20 |one imme|diately |
|00001030| 66 6f 6c 6c 6f 77 69 6e | 67 2e 0a 09 58 20 2a 20 |followin|g...X * |
|00001040| 0a 09 58 20 2a 20 0a 09 | 58 20 2a 2f 0a 09 58 0a |..X * ..|X */..X.|
|00001050| 09 58 0a 09 58 23 69 6e | 63 6c 75 64 65 09 3c 73 |.X..X#in|clude.<s|
|00001060| 74 64 69 6f 2e 68 3e 0a | 09 58 23 69 6e 63 6c 75 |tdio.h>.|.X#inclu|
|00001070| 64 65 09 3c 73 69 67 6e | 61 6c 2e 68 3e 0a 09 58 |de.<sign|al.h>..X|
|00001080| 23 69 6e 63 6c 75 64 65 | 09 3c 63 74 79 70 65 2e |#include|.<ctype.|
|00001090| 68 3e 0a 09 58 23 69 6e | 63 6c 75 64 65 09 3c 73 |h>..X#in|clude.<s|
|000010a0| 74 72 69 6e 67 73 2e 68 | 3e 0a 09 58 0a 09 58 23 |trings.h|>..X..X#|
|000010b0| 69 6e 63 6c 75 64 65 20 | 22 67 6c 79 70 68 2e 68 |include |"glyph.h|
|000010c0| 22 0a 09 58 23 69 6e 63 | 6c 75 64 65 20 22 61 73 |"..X#inc|lude "as|
|000010d0| 63 74 61 62 2e 68 22 0a | 09 58 23 69 6e 63 6c 75 |ctab.h".|.X#inclu|
|000010e0| 64 65 20 22 73 70 65 63 | 74 61 62 2e 68 22 0a 09 |de "spec|tab.h"..|
|000010f0| 58 0a 09 58 69 6e 74 09 | 6f 75 74 70 75 74 09 3d |X..Xint.|output.=|
|00001100| 20 30 3b 09 2f 2a 20 64 | 6f 20 77 65 20 64 6f 20 | 0;./* d|o we do |
|00001110| 6f 75 74 70 75 74 20 61 | 74 20 61 6c 6c 3f 20 2a |output a|t all? *|
|00001120| 2f 0a 09 58 69 6e 74 09 | 70 67 69 6e 64 65 78 09 |/..Xint.|pgindex.|
|00001130| 3d 20 30 3b 09 2f 2a 20 | 6f 75 74 70 75 74 20 70 |= 0;./* |output p|
|00001140| 61 67 65 20 6c 69 73 74 | 20 69 66 20 3e 20 30 20 |age list| if > 0 |
|00001150| 2a 2f 0a 09 58 69 6e 74 | 09 70 61 67 65 6c 69 73 |*/..Xint|.pagelis|
|00001160| 74 5b 32 30 5d 3b 09 2f | 2a 20 70 61 69 72 73 20 |t[20];./|* pairs |
|00001170| 6f 66 20 70 61 67 65 20 | 6e 75 6d 62 65 72 73 20 |of page |numbers |
|00001180| 2a 2f 0a 09 58 0a 09 58 | 0a 09 58 0a 09 58 23 64 |*/..X..X|..X..X#d|
|00001190| 65 66 69 6e 65 09 46 41 | 54 41 4c 09 31 0a 09 58 |efine.FA|TAL.1..X|
|000011a0| 69 6e 74 09 64 62 67 09 | 3d 20 30 3b 0a 09 58 0a |int.dbg.|= 0;..X.|
|000011b0| 09 58 23 64 65 66 69 6e | 65 09 64 70 72 69 6e 74 |.X#defin|e.dprint|
|000011c0| 66 09 69 66 20 28 64 62 | 67 29 20 66 70 72 69 6e |f.if (db|g) fprin|
|000011d0| 74 66 0a 09 58 23 64 65 | 66 69 6e 65 09 64 69 6e |tf..X#de|fine.din|
|000011e0| 66 6f 70 72 69 6e 74 09 | 69 66 20 28 64 62 67 29 |foprint.|if (dbg)|
|000011f0| 20 66 69 6e 66 6f 70 72 | 69 6e 74 0a 09 58 0a 09 | finfopr|int..X..|
|00001200| 58 69 6e 74 09 72 65 73 | 09 3d 20 37 32 30 3b 0a |Xint.res|.= 720;.|
|00001210| 09 58 09 2f 2a 20 69 6e | 70 75 74 20 61 73 73 75 |.X./* in|put assu|
|00001220| 6d 65 64 20 63 6f 6d 70 | 75 74 65 64 20 61 63 63 |med comp|uted acc|
|00001230| 6f 72 64 69 6e 67 20 2a | 2f 0a 09 58 09 2f 2a 20 |ording *|/..X./* |
|00001240| 74 6f 20 74 68 69 73 20 | 72 65 73 6f 6c 75 74 69 |to this |resoluti|
|00001250| 6f 6e 20 28 61 63 74 75 | 61 6c 6c 79 20 37 32 33 |on (actu|ally 723|
|00001260| 29 20 2a 2f 0a 09 58 09 | 2f 2a 20 69 6e 69 74 69 |) */..X.|/* initi|
|00001270| 61 6c 20 76 61 6c 75 65 | 20 74 6f 20 61 76 6f 69 |al value| to avoi|
|00001280| 64 20 30 20 64 69 76 69 | 64 65 20 2a 2f 0a 09 58 |d 0 divi|de */..X|
|00001290| 0a 09 58 63 68 61 72 09 | 2a 64 66 6c 74 64 69 72 |..Xchar.|*dfltdir|
|000012a0| 09 3d 20 22 2f 75 73 72 | 2f 6c 69 62 2f 76 66 6f |.= "/usr|/lib/vfo|
|000012b0| 6e 74 22 3b 0a 09 58 0a | 09 58 63 68 61 72 09 2a |nt";..X.|.Xchar.*|
|000012c0| 66 6f 6e 74 64 69 72 09 | 3d 20 22 2f 75 73 72 2f |fontdir.|= "/usr/|
|000012d0| 6c 69 62 2f 66 6f 6e 74 | 22 3b 0a 09 58 63 68 61 |lib/font|";..Xcha|
|000012e0| 72 09 2a 76 66 6f 6e 74 | 64 69 72 09 3d 20 22 2f |r.*vfont|dir.= "/|
|000012f0| 75 73 72 2f 6c 69 62 2f | 76 66 6f 6e 74 22 3b 0a |usr/lib/|vfont";.|
|00001300| 09 58 63 68 61 72 09 2a | 72 66 6f 6e 74 64 69 72 |.Xchar.*|rfontdir|
|00001310| 09 3d 20 22 2f 75 73 72 | 2f 73 72 63 2f 63 6d 64 |.= "/usr|/src/cmd|
|00001320| 2f 74 65 78 74 2f 74 72 | 6f 66 66 2e 64 2f 64 65 |/text/tr|off.d/de|
|00001330| 76 69 31 30 2f 72 61 73 | 74 69 31 30 22 3b 0a 09 |vi10/ras|ti10";..|
|00001340| 58 0a 09 58 65 78 74 65 | 72 6e 20 63 68 61 72 20 |X..Xexte|rn char |
|00001350| 64 65 76 6e 61 6d 65 5b | 5d 3b 0a 09 58 0a 09 58 |devname[|];..X..X|
|00001360| 69 6e 74 09 77 61 6e 74 | 5f 73 69 7a 20 3d 20 31 |int.want|_siz = 1|
|00001370| 30 3b 09 2f 2a 20 63 6f | 6e 76 65 6e 69 65 6e 74 |0;./* co|nvenient|
|00001380| 20 64 65 66 61 75 6c 74 | 73 20 2a 2f 0a 09 58 69 | default|s */..Xi|
|00001390| 6e 74 09 63 72 6e 74 5f | 73 69 7a 20 3d 20 31 30 |nt.crnt_|siz = 10|
|000013a0| 3b 0a 09 58 0a 09 58 69 | 6e 74 09 63 5f 66 6e 74 |;..X..Xi|nt.c_fnt|
|000013b0| 5f 69 6e 64 78 20 3d 20 | 30 3b 0a 09 58 69 6e 74 |_indx = |0;..Xint|
|000013c0| 20 63 61 72 74 72 69 64 | 67 65 20 3d 20 31 3b 0a | cartrid|ge = 1;.|
|000013d0| 09 58 0a 09 58 23 64 65 | 66 69 6e 65 09 4e 55 4d |.X..X#de|fine.NUM|
|000013e0| 46 4f 4e 54 53 09 38 0a | 09 58 0a 09 58 2f 2a 0a |FONTS.8.|.X..X/*.|
|000013f0| 09 58 20 2a 20 74 68 65 | 20 70 75 72 70 6f 73 65 |.X * the| purpose|
|00001400| 20 66 6f 72 20 74 68 69 | 73 20 61 72 72 61 79 20 | for thi|s array |
|00001410| 69 73 20 74 6f 20 68 61 | 76 65 20 6d 6f 72 65 20 |is to ha|ve more |
|00001420| 74 68 61 6e 20 6f 6e 65 | 20 73 69 7a 65 0a 09 58 |than one| size..X|
|00001430| 20 2a 20 6f 66 20 61 20 | 66 6f 6e 74 20 61 76 61 | * of a |font ava|
|00001440| 69 6c 61 62 6c 65 20 61 | 74 20 61 20 74 69 6d 65 |ilable a|t a time|
|00001450| 2e 20 74 68 69 73 20 69 | 73 20 6e 6f 74 20 68 61 |. this i|s not ha|
|00001460| 6e 64 6c 65 64 20 70 72 | 6f 70 65 72 6c 79 20 6e |ndled pr|operly n|
|00001470| 6f 77 2c 0a 09 58 20 2a | 20 74 68 65 20 65 6e 74 |ow,..X *| the ent|
|00001480| 72 79 20 69 73 20 6a 75 | 73 74 20 72 65 70 6c 61 |ry is ju|st repla|
|00001490| 63 65 64 2c 20 63 61 75 | 73 69 6e 67 20 73 6f 6d |ced, cau|sing som|
|000014a0| 65 20 75 6e 6e 65 63 65 | 73 73 61 72 79 20 69 2f |e unnece|ssary i/|
|000014b0| 6f 20 74 6f 0a 09 58 20 | 2a 20 74 61 6b 65 20 70 |o to..X |* take p|
|000014c0| 6c 61 63 65 2e 20 77 68 | 65 6e 20 69 74 27 73 20 |lace. wh|en it's |
|000014d0| 64 6f 6e 65 20 63 6f 72 | 72 65 63 74 6c 79 2c 20 |done cor|rectly, |
|000014e0| 74 68 65 20 63 68 61 72 | 61 63 74 65 72 20 69 6e |the char|acter in|
|000014f0| 66 6f 20 73 74 72 75 63 | 74 75 72 65 73 0a 09 58 |fo struc|tures..X|
|00001500| 20 2a 20 77 69 6c 6c 20 | 6f 6e 6c 79 20 6e 65 65 | * will |only nee|
|00001510| 64 20 74 6f 20 62 65 20 | 72 65 61 64 20 6f 6e 63 |d to be |read onc|
|00001520| 65 20 61 6e 64 20 74 68 | 69 73 20 74 68 69 6e 67 |e and th|is thing|
|00001530| 20 77 69 6c 6c 20 77 6f | 72 6b 20 66 61 73 74 65 | will wo|rk faste|
|00001540| 72 2e 0a 09 58 20 2a 20 | 28 69 74 20 77 69 6c 6c |r...X * |(it will|
|00001550| 20 6e 65 76 65 72 20 62 | 65 20 66 61 73 74 20 2d | never b|e fast -|
|00001560| 20 74 68 65 20 6c 61 73 | 65 72 6a 65 74 20 69 73 | the las|erjet is|
|00001570| 20 74 6f 6f 20 73 6c 6f | 77 20 69 6e 20 70 72 6f | too slo|w in pro|
|00001580| 63 65 73 73 69 6e 67 0a | 09 58 20 2a 20 74 68 65 |cessing.|.X * the|
|00001590| 20 70 6f 73 69 74 69 6f | 6e 69 6e 67 20 63 6f 6d | positio|ning com|
|000015a0| 6d 61 6e 64 73 2f 62 69 | 74 20 6d 61 70 73 20 74 |mands/bi|t maps t|
|000015b0| 6f 20 62 65 20 52 45 41 | 4c 4c 59 20 75 73 65 66 |o be REA|LLY usef|
|000015c0| 75 6c 29 2e 0a 09 58 20 | 2a 20 41 6c 73 6f 2c 20 |ul)...X |* Also, |
|000015d0| 70 72 65 73 65 6e 74 6c | 79 2c 20 74 68 65 20 63 |presentl|y, the c|
|000015e0| 5f 66 6e 74 5f 69 6e 64 | 78 20 61 6c 77 61 79 73 |_fnt_ind|x always|
|000015f0| 20 63 6f 72 72 65 73 70 | 6f 6e 64 73 20 74 6f 20 | corresp|onds to |
|00001600| 74 68 65 20 66 6f 6e 74 | 0a 09 58 20 2a 20 70 6f |the font|..X * po|
|00001610| 73 69 74 69 6f 6e 20 75 | 73 65 64 2e 20 54 68 65 |sition u|sed. The|
|00001620| 20 69 6e 63 6c 75 73 69 | 6f 6e 20 6f 66 20 66 5f | inclusi|on of f_|
|00001630| 6e 75 6d 62 20 66 69 65 | 6c 64 20 69 73 20 74 6f |numb fie|ld is to|
|00001640| 20 6d 61 6b 65 20 74 68 | 69 73 20 0a 09 58 20 2a | make th|is ..X *|
|00001650| 20 75 6e 6e 65 63 65 73 | 73 61 72 79 2c 20 74 6f | unneces|sary, to|
|00001660| 20 65 6e 61 62 6c 65 20 | 73 77 69 74 63 68 69 6e | enable |switchin|
|00001670| 67 20 66 6f 6e 74 20 66 | 69 6c 65 73 20 77 69 74 |g font f|iles wit|
|00001680| 68 6f 75 74 20 61 62 61 | 6e 64 6f 6e 69 6e 67 0a |hout aba|ndoning.|
|00001690| 09 58 20 2a 20 74 68 65 | 69 72 20 65 6e 74 72 69 |.X * the|ir entri|
|000016a0| 65 73 2f 69 6e 66 6f 2e | 0a 09 58 20 2a 2f 0a 09 |es/info.|..X */..|
|000016b0| 58 73 74 72 75 63 74 20 | 46 49 4e 46 4f 20 7b 0a |Xstruct |FINFO {.|
|000016c0| 09 58 09 69 6e 74 20 66 | 5f 6e 75 6d 62 3b 0a 09 |.X.int f|_numb;..|
|000016d0| 58 09 2f 2a 0a 09 58 09 | 20 2a 20 30 20 6d 65 61 |X./*..X.| * 0 mea|
|000016e0| 6e 73 20 6e 6f 74 20 63 | 75 72 72 65 6e 74 6c 79 |ns not c|urrently|
|000016f0| 20 75 73 65 64 2c 20 6f | 74 68 65 72 77 69 73 65 | used, o|therwise|
|00001700| 0a 09 58 09 20 2a 20 74 | 68 69 73 20 69 73 20 74 |..X. * t|his is t|
|00001710| 68 65 20 70 6f 73 69 74 | 69 6f 6e 20 27 6c 6f 61 |he posit|ion 'loa|
|00001720| 64 65 64 27 20 6f 6e 0a | 09 58 09 20 2a 2f 0a 09 |ded' on.|.X. */..|
|00001730| 58 09 63 68 61 72 20 66 | 5f 6e 61 6d 65 5b 33 30 |X.char f|_name[30|
|00001740| 5d 3b 09 2f 2a 20 6e 61 | 6d 65 2e 73 69 7a 65 20 |];./* na|me.size |
|00001750| 2a 2f 0a 09 58 09 73 74 | 72 75 63 74 20 63 5f 70 |*/..X.st|ruct c_p|
|00001760| 61 72 61 6d 20 2a 20 66 | 5f 63 68 70 3b 0a 09 58 |aram * f|_chp;..X|
|00001770| 09 2f 2a 20 72 65 61 6c | 6c 79 20 70 6f 69 6e 74 |./* real|ly point|
|00001780| 73 20 74 6f 20 74 68 65 | 20 66 69 72 73 74 20 65 |s to the| first e|
|00001790| 6c 65 6d 65 6e 74 20 69 | 6e 0a 09 58 09 20 2a 20 |lement i|n..X. * |
|000017a0| 61 20 32 35 36 20 61 72 | 72 61 79 20 6f 66 20 73 |a 256 ar|ray of s|
|000017b0| 74 72 75 63 74 73 2c 20 | 73 6f 20 77 65 20 63 61 |tructs, |so we ca|
|000017c0| 6e 20 68 61 76 65 0a 09 | 58 09 20 2a 20 74 68 65 |n have..|X. * the|
|000017d0| 20 63 68 61 72 61 63 74 | 65 72 20 69 6e 66 6f 20 | charact|er info |
|000017e0| 66 6f 72 20 61 6c 6c 20 | 6d 65 6d 62 65 72 73 20 |for all |members |
|000017f0| 6f 66 20 0a 09 58 09 20 | 2a 20 74 68 69 73 20 66 |of ..X. |* this f|
|00001800| 6f 6e 74 20 77 69 74 68 | 6f 75 74 20 72 65 2d 72 |ont with|out re-r|
|00001810| 65 61 64 69 6e 67 20 74 | 68 65 20 66 69 6c 65 0a |eading t|he file.|
|00001820| 09 58 09 20 2a 2f 0a 09 | 58 09 46 49 4c 45 20 2a |.X. */..|X.FILE *|
|00001830| 20 66 5f 70 74 72 3b 0a | 09 58 7d 09 66 69 6e 66 | f_ptr;.|.X}.finf|
|00001840| 6f 5b 4e 55 4d 46 4f 4e | 54 53 5d 20 3d 20 7b 0a |o[NUMFON|TS] = {.|
|00001850| 09 58 09 31 2c 09 22 52 | 2e 31 30 22 2c 09 4e 55 |.X.1,."R|.10",.NU|
|00001860| 4c 4c 2c 09 4e 55 4c 4c | 2c 0a 09 58 09 32 2c 09 |LL,.NULL|,..X.2,.|
|00001870| 22 42 2e 31 30 22 2c 09 | 4e 55 4c 4c 2c 09 4e 55 |"B.10",.|NULL,.NU|
|00001880| 4c 4c 2c 0a 09 58 09 33 | 2c 09 22 49 2e 31 30 22 |LL,..X.3|,."I.10"|
|00001890| 2c 09 4e 55 4c 4c 2c 09 | 4e 55 4c 4c 2c 0a 09 58 |,.NULL,.|NULL,..X|
|000018a0| 09 34 2c 09 09 22 22 2c | 09 4e 55 4c 4c 2c 09 4e |.4,.."",|.NULL,.N|
|000018b0| 55 4c 4c 2c 0a 09 58 09 | 35 2c 09 09 22 22 2c 09 |ULL,..X.|5,.."",.|
|000018c0| 4e 55 4c 4c 2c 09 4e 55 | 4c 4c 2c 0a 09 58 09 36 |NULL,.NU|LL,..X.6|
|000018d0| 2c 09 09 22 22 2c 09 4e | 55 4c 4c 2c 09 4e 55 4c |,.."",.N|ULL,.NUL|
|000018e0| 4c 2c 0a 09 58 09 37 2c | 09 09 22 22 2c 09 4e 55 |L,..X.7,|.."",.NU|
|000018f0| 4c 4c 2c 09 4e 55 4c 4c | 2c 0a 09 58 09 38 2c 09 |LL,.NULL|,..X.8,.|
|00001900| 09 22 22 2c 09 4e 55 4c | 4c 2c 09 4e 55 4c 4c 0a |."",.NUL|L,.NULL.|
|00001910| 09 58 7d 3b 0a 09 58 0a | 09 58 46 49 4c 45 20 2a |.X};..X.|.XFILE *|
|00001920| 66 70 20 3d 20 73 74 64 | 69 6e 3b 09 2f 2a 20 69 |fp = std|in;./* i|
|00001930| 6e 70 75 74 20 66 69 6c | 65 20 70 6f 69 6e 74 65 |nput fil|e pointe|
|00001940| 72 20 2a 2f 0a 09 58 0a | 09 58 0a 09 58 6d 61 69 |r */..X.|.X..Xmai|
|00001950| 6e 28 61 72 67 63 2c 20 | 61 72 67 76 29 0a 09 58 |n(argc, |argv)..X|
|00001960| 63 68 61 72 20 2a 61 72 | 67 76 5b 5d 3b 0a 09 58 |char *ar|gv[];..X|
|00001970| 7b 0a 09 58 09 63 68 61 | 72 20 62 75 66 5b 42 55 |{..X.cha|r buf[BU|
|00001980| 46 53 49 5a 5d 3b 0a 09 | 58 09 69 6e 74 20 64 6f |FSIZ];..|X.int do|
|00001990| 6e 65 28 29 3b 0a 09 58 | 0a 09 58 09 73 65 74 62 |ne();..X|..X.setb|
|000019a0| 75 66 28 73 74 64 6f 75 | 74 2c 20 62 75 66 29 3b |uf(stdou|t, buf);|
|000019b0| 0a 09 58 09 77 68 69 6c | 65 20 28 61 72 67 63 20 |..X.whil|e (argc |
|000019c0| 3e 20 31 20 26 26 20 61 | 72 67 76 5b 31 5d 5b 30 |> 1 && a|rgv[1][0|
|000019d0| 5d 20 3d 3d 20 27 2d 27 | 29 20 7b 0a 09 58 09 09 |] == '-'|) {..X..|
|000019e0| 73 77 69 74 63 68 20 28 | 61 72 67 76 5b 31 5d 5b |switch (|argv[1][|
|000019f0| 31 5d 29 20 7b 0a 09 58 | 09 09 63 61 73 65 20 27 |1]) {..X|..case '|
|00001a00| 6f 27 3a 0a 09 58 09 09 | 09 6f 75 74 6c 69 73 74 |o':..X..|.outlist|
|00001a10| 28 26 61 72 67 76 5b 31 | 5d 5b 32 5d 29 3b 0a 09 |(&argv[1|][2]);..|
|00001a20| 58 09 09 09 62 72 65 61 | 6b 3b 0a 09 58 09 09 63 |X...brea|k;..X..c|
|00001a30| 61 73 65 20 27 64 27 3a | 0a 09 58 09 09 09 64 62 |ase 'd':|..X...db|
|00001a40| 67 20 3d 20 61 74 6f 69 | 28 26 61 72 67 76 5b 31 |g = atoi|(&argv[1|
|00001a50| 5d 5b 32 5d 29 3b 0a 09 | 58 09 09 09 69 66 20 28 |][2]);..|X...if (|
|00001a60| 64 62 67 20 3d 3d 20 30 | 29 20 64 62 67 20 3d 20 |dbg == 0|) dbg = |
|00001a70| 31 3b 0a 09 58 09 09 09 | 62 72 65 61 6b 3b 0a 09 |1;..X...|break;..|
|00001a80| 58 09 09 7d 0a 09 58 09 | 09 61 72 67 63 2d 2d 3b |X..}..X.|.argc--;|
|00001a90| 0a 09 58 09 09 61 72 67 | 76 2b 2b 3b 0a 09 58 09 |..X..arg|v++;..X.|
|00001aa0| 7d 0a 09 58 0a 09 58 09 | 69 66 20 28 61 72 67 63 |}..X..X.|if (argc|
|00001ab0| 20 3c 3d 20 31 29 0a 09 | 58 09 09 64 6f 66 69 6c | <= 1)..|X..dofil|
|00001ac0| 65 28 73 74 64 69 6e 29 | 3b 0a 09 58 09 65 6c 73 |e(stdin)|;..X.els|
|00001ad0| 65 0a 09 58 09 09 77 68 | 69 6c 65 20 28 2d 2d 61 |e..X..wh|ile (--a|
|00001ae0| 72 67 63 20 3e 20 30 29 | 20 7b 0a 09 58 09 09 09 |rgc > 0)| {..X...|
|00001af0| 69 66 20 28 73 74 72 63 | 6d 70 28 2a 2b 2b 61 72 |if (strc|mp(*++ar|
|00001b00| 67 76 2c 20 22 2d 22 29 | 20 3d 3d 20 30 29 0a 09 |gv, "-")| == 0)..|
|00001b10| 58 09 09 09 09 66 70 20 | 3d 20 73 74 64 69 6e 3b |X....fp |= stdin;|
|00001b20| 0a 09 58 09 09 09 65 6c | 73 65 20 69 66 20 28 28 |..X...el|se if ((|
|00001b30| 66 70 20 3d 20 66 6f 70 | 65 6e 28 2a 61 72 67 76 |fp = fop|en(*argv|
|00001b40| 2c 20 22 72 22 29 29 20 | 3d 3d 20 4e 55 4c 4c 29 |, "r")) |== NULL)|
|00001b50| 0a 09 58 09 09 09 09 65 | 72 72 6f 72 28 46 41 54 |..X....e|rror(FAT|
|00001b60| 41 4c 2c 20 22 63 61 6e | 27 74 20 6f 70 65 6e 20 |AL, "can|'t open |
|00001b70| 25 73 22 2c 20 2a 61 72 | 67 76 29 3b 0a 09 58 09 |%s", *ar|gv);..X.|
|00001b80| 09 09 64 6f 66 69 6c 65 | 28 66 70 29 3b 0a 09 58 |..dofile|(fp);..X|
|00001b90| 09 09 09 66 63 6c 6f 73 | 65 28 66 70 29 3b 0a 09 |...fclos|e(fp);..|
|00001ba0| 58 09 09 7d 0a 09 58 09 | 64 6f 6e 65 28 29 3b 0a |X..}..X.|done();.|
|00001bb0| 09 58 7d 0a 09 58 0a 09 | 58 6f 75 74 6c 69 73 74 |.X}..X..|Xoutlist|
|00001bc0| 28 73 29 09 2f 2a 20 70 | 72 6f 63 65 73 73 20 6c |(s)./* p|rocess l|
|00001bd0| 69 73 74 20 6f 66 20 70 | 61 67 65 20 6e 75 6d 62 |ist of p|age numb|
|00001be0| 65 72 73 20 74 6f 20 62 | 65 20 70 72 69 6e 74 65 |ers to b|e printe|
|00001bf0| 64 20 2a 2f 0a 09 58 63 | 68 61 72 20 2a 73 3b 0a |d */..Xc|har *s;.|
|00001c00| 09 58 7b 0a 09 58 09 69 | 6e 74 20 73 74 61 72 74 |.X{..X.i|nt start|
|00001c10| 2c 20 66 69 6e 69 73 68 | 2c 20 69 3b 0a 09 58 0a |, finish|, i;..X.|
|00001c20| 09 58 09 70 67 69 6e 64 | 65 78 20 3d 20 30 3b 0a |.X.pgind|ex = 0;.|
|00001c30| 09 58 09 77 68 69 6c 65 | 20 28 2a 73 29 20 7b 0a |.X.while| (*s) {.|
|00001c40| 09 58 09 09 66 6f 72 20 | 28 73 74 61 72 74 20 3d |.X..for |(start =|
|00001c50| 20 30 3b 20 69 73 64 69 | 67 69 74 28 2a 73 29 3b | 0; isdi|git(*s);|
|00001c60| 20 73 74 61 72 74 20 3d | 20 73 74 61 72 74 20 2a | start =| start *|
|00001c70| 20 31 30 20 2b 2a 73 2b | 2b 20 2d 20 27 30 27 29 | 10 +*s+|+ - '0')|
|00001c80| 3b 0a 09 58 09 09 66 69 | 6e 69 73 68 20 3d 20 73 |;..X..fi|nish = s|
|00001c90| 74 61 72 74 3b 0a 09 58 | 09 09 69 66 20 28 2a 73 |tart;..X|..if (*s|
|00001ca0| 20 3d 3d 20 27 2d 27 29 | 7b 0a 09 58 09 09 73 2b | == '-')|{..X..s+|
|00001cb0| 2b 3b 0a 09 58 09 09 66 | 6f 72 20 28 66 69 6e 69 |+;..X..f|or (fini|
|00001cc0| 73 68 20 3d 20 30 3b 20 | 69 73 64 69 67 69 74 28 |sh = 0; |isdigit(|
|00001cd0| 2a 73 29 3b 20 66 69 6e | 69 73 68 20 3d 20 66 69 |*s); fin|ish = fi|
|00001ce0| 6e 69 73 68 20 2a 20 31 | 30 20 2b 2a 73 2b 2b 20 |nish * 1|0 +*s++ |
|00001cf0| 2d 20 27 30 27 29 3b 0a | 09 58 09 09 7d 0a 09 58 |- '0');.|.X..}..X|
|00001d00| 09 09 69 66 20 28 66 69 | 6e 69 73 68 3d 3d 30 29 |..if (fi|nish==0)|
|00001d10| 09 66 69 6e 69 73 68 20 | 3d 20 39 39 39 39 3b 0a |.finish |= 9999;.|
|00001d20| 09 58 0a 09 58 09 09 70 | 61 67 65 6c 69 73 74 5b |.X..X..p|agelist[|
|00001d30| 70 67 69 6e 64 65 78 2b | 2b 5d 20 3d 20 73 74 61 |pgindex+|+] = sta|
|00001d40| 72 74 3b 0a 09 58 09 09 | 70 61 67 65 6c 69 73 74 |rt;..X..|pagelist|
|00001d50| 5b 70 67 69 6e 64 65 78 | 2b 2b 5d 20 3d 20 66 69 |[pgindex|++] = fi|
|00001d60| 6e 69 73 68 3b 0a 09 58 | 09 09 69 66 20 28 2a 73 |nish;..X|..if (*s|
|00001d70| 20 21 3d 20 27 5c 30 27 | 29 0a 09 58 09 09 09 73 | != '\0'|)..X...s|
|00001d80| 2b 2b 3b 0a 09 58 09 7d | 0a 09 58 09 70 61 67 65 |++;..X.}|..X.page|
|00001d90| 6c 69 73 74 5b 70 67 69 | 6e 64 65 78 5d 20 3d 20 |list[pgi|ndex] = |
|00001da0| 30 3b 0a 09 58 09 69 66 | 20 28 64 62 67 29 0a 09 |0;..X.if| (dbg)..|
|00001db0| 58 09 09 66 6f 72 20 28 | 69 3d 30 3b 20 69 3c 70 |X..for (|i=0; i<p|
|00001dc0| 67 69 6e 64 65 78 3b 20 | 69 20 2b 3d 20 32 29 0a |gindex; |i += 2).|
|00001dd0| 09 58 09 09 09 70 72 69 | 6e 74 66 28 22 25 33 64 |.X...pri|ntf("%3d|
|00001de0| 20 25 33 64 5c 6e 22 2c | 20 70 61 67 65 6c 69 73 | %3d\n",| pagelis|
|00001df0| 74 5b 69 5d 2c 20 70 61 | 67 65 6c 69 73 74 5b 69 |t[i], pa|gelist[i|
|00001e00| 2b 31 5d 29 3b 0a 09 58 | 7d 0a 09 58 0a 09 58 69 |+1]);..X|}..X..Xi|
|00001e10| 6e 5f 6f 6c 69 73 74 28 | 6e 29 09 2f 2a 20 69 73 |n_olist(|n)./* is|
|00001e20| 20 70 61 67 65 20 6e 20 | 69 6e 20 70 61 67 65 6c | page n |in pagel|
|00001e30| 69 73 74 3f 20 2a 2f 0a | 09 58 69 6e 74 20 6e 3b |ist? */.|.Xint n;|
|00001e40| 0a 09 58 7b 0a 09 58 09 | 69 6e 74 20 69 3b 0a 09 |..X{..X.|int i;..|
|00001e50| 58 0a 09 58 09 69 66 20 | 28 70 67 69 6e 64 65 78 |X..X.if |(pgindex|
|00001e60| 20 3d 3d 20 30 29 0a 09 | 58 09 09 72 65 74 75 72 | == 0)..|X..retur|
|00001e70| 6e 28 31 29 3b 09 2f 2a | 20 65 76 65 72 79 74 68 |n(1);./*| everyth|
|00001e80| 69 6e 67 20 69 73 20 69 | 6e 63 6c 75 64 65 64 20 |ing is i|ncluded |
|00001e90| 2a 2f 0a 09 58 09 66 6f | 72 20 28 69 20 3d 20 30 |*/..X.fo|r (i = 0|
|00001ea0| 3b 20 69 20 3c 20 70 67 | 69 6e 64 65 78 3b 20 69 |; i < pg|index; i|
|00001eb0| 20 2b 3d 20 32 29 0a 09 | 58 09 09 69 66 20 28 6e | += 2)..|X..if (n|
|00001ec0| 20 3e 3d 20 70 61 67 65 | 6c 69 73 74 5b 69 5d 20 | >= page|list[i] |
|00001ed0| 26 26 20 6e 20 3c 3d 20 | 70 61 67 65 6c 69 73 74 |&& n <= |pagelist|
|00001ee0| 5b 69 2b 31 5d 29 0a 09 | 58 09 09 09 72 65 74 75 |[i+1])..|X...retu|
|00001ef0| 72 6e 28 31 29 3b 0a 09 | 58 09 72 65 74 75 72 6e |rn(1);..|X.return|
|00001f00| 28 30 29 3b 0a 09 58 7d | 0a 09 58 0a 09 58 0a 09 |(0);..X}|..X..X..|
|00001f10| 58 64 6f 66 69 6c 65 28 | 66 70 29 0a 09 58 72 65 |Xdofile(|fp)..Xre|
|00001f20| 67 69 73 74 65 72 20 46 | 49 4c 45 20 2a 66 70 3b |gister F|ILE *fp;|
|00001f30| 0a 09 58 7b 0a 09 58 09 | 72 65 67 69 73 74 65 72 |..X{..X.|register|
|00001f40| 20 69 6e 74 20 63 2c 20 | 6b 3b 0a 09 58 09 69 6e | int c, |k;..X.in|
|00001f50| 74 20 6d 2c 20 6e 2c 20 | 6e 31 2c 20 6d 31 3b 0a |t m, n, |n1, m1;.|
|00001f60| 09 58 09 63 68 61 72 20 | 73 74 72 5b 31 30 30 5d |.X.char |str[100]|
|00001f70| 2c 20 62 75 66 5b 33 30 | 30 5d 3b 0a 09 58 0a 09 |, buf[30|0];..X..|
|00001f80| 58 09 77 68 69 6c 65 20 | 28 28 63 20 3d 20 67 65 |X.while |((c = ge|
|00001f90| 74 63 28 66 70 29 29 20 | 21 3d 20 45 4f 46 29 20 |tc(fp)) |!= EOF) |
|00001fa0| 7b 0a 09 58 09 09 73 77 | 69 74 63 68 20 28 63 29 |{..X..sw|itch (c)|
|00001fb0| 20 7b 0a 09 58 09 09 63 | 61 73 65 20 27 5c 6e 27 | {..X..c|ase '\n'|
|00001fc0| 3a 09 2f 2a 20 77 68 65 | 6e 20 69 6e 70 75 74 20 |:./* whe|n input |
|00001fd0| 69 73 20 74 65 78 74 20 | 2a 2f 0a 09 58 09 09 63 |is text |*/..X..c|
|00001fe0| 61 73 65 20 27 20 27 3a | 0a 09 58 09 09 63 61 73 |ase ' ':|..X..cas|
|00001ff0| 65 20 30 3a 09 09 2f 2a | 20 6f 63 63 61 73 69 6f |e 0:../*| occasio|
|00002000| 6e 61 6c 20 6e 6f 69 73 | 65 20 63 72 65 65 70 73 |nal nois|e creeps|
|00002010| 20 69 6e 20 2a 2f 0a 09 | 58 09 09 09 62 72 65 61 | in */..|X...brea|
|00002020| 6b 3b 0a 09 58 09 09 63 | 61 73 65 20 27 30 27 3a |k;..X..c|ase '0':|
|00002030| 20 63 61 73 65 20 27 31 | 27 3a 20 63 61 73 65 20 | case '1|': case |
|00002040| 27 32 27 3a 20 63 61 73 | 65 20 27 33 27 3a 20 63 |'2': cas|e '3': c|
|00002050| 61 73 65 20 27 34 27 3a | 0a 09 58 09 09 63 61 73 |ase '4':|..X..cas|
|00002060| 65 20 27 35 27 3a 20 63 | 61 73 65 20 27 36 27 3a |e '5': c|ase '6':|
|00002070| 20 63 61 73 65 20 27 37 | 27 3a 20 63 61 73 65 20 | case '7|': case |
|00002080| 27 38 27 3a 20 63 61 73 | 65 20 27 39 27 3a 0a 09 |'8': cas|e '9':..|
|00002090| 58 09 09 09 2f 2a 20 74 | 77 6f 20 6d 6f 74 69 6f |X.../* t|wo motio|
|000020a0| 6e 20 64 69 67 69 74 73 | 20 70 6c 75 73 20 61 20 |n digits| plus a |
|000020b0| 63 68 61 72 61 63 74 65 | 72 20 2a 2f 0a 09 58 09 |characte|r */..X.|
|000020c0| 09 09 68 6d 6f 74 28 28 | 63 2d 27 30 27 29 2a 31 |..hmot((|c-'0')*1|
|000020d0| 30 20 2b 20 67 65 74 63 | 28 66 70 29 2d 27 30 27 |0 + getc|(fp)-'0'|
|000020e0| 29 3b 0a 09 58 09 09 09 | 70 75 74 31 28 67 65 74 |);..X...|put1(get|
|000020f0| 63 28 66 70 29 29 3b 0a | 09 58 09 09 09 62 72 65 |c(fp));.|.X...bre|
|00002100| 61 6b 3b 0a 09 58 09 09 | 63 61 73 65 20 27 63 27 |ak;..X..|case 'c'|
|00002110| 3a 09 2f 2a 20 73 69 6e | 67 6c 65 20 61 73 63 69 |:./* sin|gle asci|
|00002120| 69 20 63 68 61 72 61 63 | 74 65 72 20 2a 2f 0a 09 |i charac|ter */..|
|00002130| 58 09 09 09 70 75 74 31 | 28 67 65 74 63 28 66 70 |X...put1|(getc(fp|
|00002140| 29 29 3b 0a 09 58 09 09 | 09 62 72 65 61 6b 3b 0a |));..X..|.break;.|
|00002150| 09 58 09 09 63 61 73 65 | 20 27 43 27 3a 09 2f 2a |.X..case| 'C':./*|
|00002160| 20 27 66 75 6e 6e 79 27 | 20 63 68 61 72 61 63 74 | 'funny'| charact|
|00002170| 65 72 20 2a 2f 0a 09 58 | 09 09 09 66 73 63 61 6e |er */..X|...fscan|
|00002180| 66 28 66 70 2c 20 22 25 | 73 22 2c 20 73 74 72 29 |f(fp, "%|s", str)|
|00002190| 3b 0a 09 58 23 69 66 64 | 65 66 20 44 45 42 55 47 |;..X#ifd|ef DEBUG|
|000021a0| 0a 09 58 09 09 09 64 70 | 72 69 6e 74 66 28 73 74 |..X...dp|rintf(st|
|000021b0| 64 65 72 72 2c 20 22 25 | 73 22 2c 20 73 74 72 29 |derr, "%|s", str)|
|000021c0| 3b 0a 09 58 23 65 6e 64 | 69 66 0a 09 58 09 09 09 |;..X#end|if..X...|
|000021d0| 70 75 74 31 73 28 73 74 | 72 29 3b 0a 09 58 09 09 |put1s(st|r);..X..|
|000021e0| 09 62 72 65 61 6b 3b 0a | 09 58 09 09 63 61 73 65 |.break;.|.X..case|
|000021f0| 20 27 74 27 3a 09 2f 2a | 20 73 74 72 61 69 67 68 | 't':./*| straigh|
|00002200| 74 20 74 65 78 74 20 2a | 2f 0a 09 58 09 09 09 66 |t text *|/..X...f|
|00002210| 67 65 74 73 28 62 75 66 | 2c 20 73 69 7a 65 6f 66 |gets(buf|, sizeof|
|00002220| 28 62 75 66 29 2c 20 66 | 70 29 3b 0a 09 58 09 09 |(buf), f|p);..X..|
|00002230| 09 74 5f 74 65 78 74 28 | 62 75 66 29 3b 0a 09 58 |.t_text(|buf);..X|
|00002240| 09 09 09 62 72 65 61 6b | 3b 0a 09 58 09 09 63 61 |...break|;..X..ca|
|00002250| 73 65 20 27 44 27 3a 09 | 2f 2a 20 64 72 61 77 20 |se 'D':.|/* draw |
|00002260| 66 75 6e 63 74 69 6f 6e | 20 2d 20 6e 6f 74 20 64 |function| - not d|
|00002270| 6f 6e 65 20 79 65 74 20 | 2a 2f 0a 09 58 09 09 09 |one yet |*/..X...|
|00002280| 66 67 65 74 73 28 62 75 | 66 2c 20 73 69 7a 65 6f |fgets(bu|f, sizeo|
|00002290| 66 28 62 75 66 29 2c 20 | 66 70 29 3b 0a 09 58 09 |f(buf), |fp);..X.|
|000022a0| 09 09 73 77 69 74 63 68 | 20 28 62 75 66 5b 30 5d |..switch| (buf[0]|
|000022b0| 29 20 7b 0a 09 58 09 09 | 09 63 61 73 65 20 27 6c |) {..X..|.case 'l|
|000022c0| 27 3a 09 2f 2a 20 64 72 | 61 77 20 61 20 6c 69 6e |':./* dr|aw a lin|
|000022d0| 65 20 2a 2f 0a 09 58 09 | 09 09 09 73 73 63 61 6e |e */..X.|...sscan|
|000022e0| 66 28 62 75 66 2b 31 2c | 20 22 25 64 20 25 64 22 |f(buf+1,| "%d %d"|
|000022f0| 2c 20 26 6e 2c 20 26 6d | 29 3b 0a 09 58 09 09 09 |, &n, &m|);..X...|
|00002300| 09 64 72 61 77 6c 69 6e | 65 28 6e 2c 20 6d 2c 20 |.drawlin|e(n, m, |
|00002310| 22 2e 22 29 3b 0a 09 58 | 09 09 09 09 62 72 65 61 |".");..X|....brea|
|00002320| 6b 3b 0a 09 58 09 09 09 | 63 61 73 65 20 27 63 27 |k;..X...|case 'c'|
|00002330| 3a 09 2f 2a 20 63 69 72 | 63 6c 65 20 2a 2f 0a 09 |:./* cir|cle */..|
|00002340| 58 09 09 09 09 73 73 63 | 61 6e 66 28 62 75 66 2b |X....ssc|anf(buf+|
|00002350| 31 2c 20 22 25 64 22 2c | 20 26 6e 29 3b 0a 09 58 |1, "%d",| &n);..X|
|00002360| 09 09 09 09 64 72 61 77 | 63 69 72 63 28 6e 29 3b |....draw|circ(n);|
|00002370| 0a 09 58 09 09 09 09 62 | 72 65 61 6b 3b 0a 09 58 |..X....b|reak;..X|
|00002380| 09 09 09 63 61 73 65 20 | 27 65 27 3a 09 2f 2a 20 |...case |'e':./* |
|00002390| 65 6c 6c 69 70 73 65 20 | 2a 2f 0a 09 58 09 09 09 |ellipse |*/..X...|
|000023a0| 09 73 73 63 61 6e 66 28 | 62 75 66 2b 31 2c 20 22 |.sscanf(|buf+1, "|
|000023b0| 25 64 20 25 64 22 2c 20 | 26 6d 2c 20 26 6e 29 3b |%d %d", |&m, &n);|
|000023c0| 0a 09 58 09 09 09 09 64 | 72 61 77 65 6c 6c 69 70 |..X....d|rawellip|
|000023d0| 28 6d 2c 20 6e 29 3b 0a | 09 58 09 09 09 09 62 72 |(m, n);.|.X....br|
|000023e0| 65 61 6b 3b 0a 09 58 09 | 09 09 63 61 73 65 20 27 |eak;..X.|..case '|
|000023f0| 61 27 3a 09 2f 2a 20 61 | 72 63 20 2a 2f 0a 09 58 |a':./* a|rc */..X|
|00002400| 09 09 09 09 73 73 63 61 | 6e 66 28 62 75 66 2b 31 |....ssca|nf(buf+1|
|00002410| 2c 20 22 25 64 20 25 64 | 20 25 64 20 25 64 22 2c |, "%d %d| %d %d",|
|00002420| 20 26 6e 2c 20 26 6d 2c | 20 26 6e 31 2c 20 26 6d | &n, &m,| &n1, &m|
|00002430| 31 29 3b 0a 09 58 09 09 | 09 09 64 72 61 77 61 72 |1);..X..|..drawar|
|00002440| 63 28 6e 2c 20 6d 2c 20 | 6e 31 2c 20 6d 31 29 3b |c(n, m, |n1, m1);|
|00002450| 0a 09 58 09 09 09 09 62 | 72 65 61 6b 3b 0a 09 58 |..X....b|reak;..X|
|00002460| 09 09 09 63 61 73 65 20 | 27 7e 27 3a 09 2f 2a 20 |...case |'~':./* |
|00002470| 77 69 67 67 6c 79 20 6c | 69 6e 65 20 2a 2f 0a 09 |wiggly l|ine */..|
|00002480| 58 09 09 09 09 64 72 61 | 77 77 69 67 28 62 75 66 |X....dra|wwig(buf|
|00002490| 2b 31 29 3b 0a 09 58 09 | 09 09 09 62 72 65 61 6b |+1);..X.|...break|
|000024a0| 3b 0a 09 58 09 09 09 64 | 65 66 61 75 6c 74 3a 0a |;..X...d|efault:.|
|000024b0| 09 58 09 09 09 09 65 72 | 72 6f 72 28 46 41 54 41 |.X....er|ror(FATA|
|000024c0| 4c 2c 20 22 75 6e 6b 6e | 6f 77 6e 20 64 72 61 77 |L, "unkn|own draw|
|000024d0| 69 6e 67 20 66 75 6e 63 | 74 69 6f 6e 20 25 73 22 |ing func|tion %s"|
|000024e0| 2c 20 62 75 66 29 3b 0a | 09 58 09 09 09 09 62 72 |, buf);.|.X....br|
|000024f0| 65 61 6b 3b 0a 09 58 09 | 09 09 7d 0a 09 58 09 09 |eak;..X.|..}..X..|
|00002500| 09 62 72 65 61 6b 3b 0a | 09 58 09 09 63 61 73 65 |.break;.|.X..case|
|00002510| 20 27 73 27 3a 0a 09 58 | 09 09 09 66 73 63 61 6e | 's':..X|...fscan|
|00002520| 66 28 66 70 2c 20 22 25 | 64 22 2c 20 26 6e 29 3b |f(fp, "%|d", &n);|
|00002530| 09 2f 2a 20 69 67 6e 6f | 72 65 20 66 72 61 63 74 |./* igno|re fract|
|00002540| 69 6f 6e 61 6c 20 73 69 | 7a 65 73 20 2a 2f 0a 09 |ional si|zes */..|
|00002550| 58 23 69 66 64 65 66 20 | 44 45 42 55 47 0a 09 58 |X#ifdef |DEBUG..X|
|00002560| 09 09 09 64 70 72 69 6e | 74 66 28 73 74 64 65 72 |...dprin|tf(stder|
|00002570| 72 2c 20 22 25 64 22 2c | 20 6e 29 3b 0a 09 58 23 |r, "%d",| n);..X#|
|00002580| 65 6e 64 69 66 0a 09 58 | 09 09 09 73 65 74 73 69 |endif..X|...setsi|
|00002590| 7a 65 28 74 5f 73 69 7a | 65 28 6e 29 29 3b 0a 09 |ze(t_siz|e(n));..|
|000025a0| 58 09 09 09 62 72 65 61 | 6b 3b 0a 09 58 09 09 63 |X...brea|k;..X..c|
|000025b0| 61 73 65 20 27 66 27 3a | 0a 09 58 09 09 09 66 73 |ase 'f':|..X...fs|
|000025c0| 63 61 6e 66 28 66 70 2c | 20 22 25 73 22 2c 20 73 |canf(fp,| "%s", s|
|000025d0| 74 72 29 3b 0a 09 58 23 | 69 66 64 65 66 20 44 45 |tr);..X#|ifdef DE|
|000025e0| 42 55 47 0a 09 58 09 09 | 09 64 70 72 69 6e 74 66 |BUG..X..|.dprintf|
|000025f0| 28 73 74 64 65 72 72 2c | 20 22 25 73 22 2c 20 73 |(stderr,| "%s", s|
|00002600| 74 72 29 3b 0a 09 58 23 | 65 6e 64 69 66 0a 09 58 |tr);..X#|endif..X|
|00002610| 09 09 09 73 65 74 66 6f | 6e 74 28 74 5f 66 6f 6e |...setfo|nt(t_fon|
|00002620| 74 28 73 74 72 29 29 3b | 0a 09 58 09 09 09 62 72 |t(str));|..X...br|
|00002630| 65 61 6b 3b 0a 09 58 09 | 09 63 61 73 65 20 27 48 |eak;..X.|.case 'H|
|00002640| 27 3a 09 2f 2a 20 61 62 | 73 6f 6c 75 74 65 20 68 |':./* ab|solute h|
|00002650| 6f 72 69 7a 6f 6e 74 61 | 6c 20 6d 6f 74 69 6f 6e |orizonta|l motion|
|00002660| 20 2a 2f 0a 09 58 09 09 | 09 77 68 69 6c 65 20 28 | */..X..|.while (|
|00002670| 28 63 20 3d 20 67 65 74 | 63 28 66 70 29 29 20 3d |(c = get|c(fp)) =|
|00002680| 3d 20 27 20 27 29 0a 09 | 58 09 09 09 09 3b 0a 09 |= ' ')..|X....;..|
|00002690| 58 09 09 09 66 6f 72 20 | 28 6b 20 3d 20 63 2d 27 |X...for |(k = c-'|
|000026a0| 30 27 3b 20 69 73 64 69 | 67 69 74 28 63 20 3d 20 |0'; isdi|git(c = |
|000026b0| 67 65 74 63 28 66 70 29 | 29 3b 20 6b 20 3d 20 31 |getc(fp)|); k = 1|
|000026c0| 30 2a 6b 2b 63 2d 27 30 | 27 29 3b 0a 09 58 09 09 |0*k+c-'0|');..X..|
|000026d0| 09 75 6e 67 65 74 63 28 | 63 2c 20 66 70 29 3b 0a |.ungetc(|c, fp);.|
|000026e0| 09 58 09 09 09 68 67 6f | 74 6f 28 6b 29 3b 0a 09 |.X...hgo|to(k);..|
|000026f0| 58 09 09 09 62 72 65 61 | 6b 3b 0a 09 58 09 09 63 |X...brea|k;..X..c|
|00002700| 61 73 65 20 27 68 27 3a | 09 2f 2a 20 72 65 6c 61 |ase 'h':|./* rela|
|00002710| 74 69 76 65 20 68 6f 72 | 69 7a 6f 6e 74 61 6c 20 |tive hor|izontal |
|00002720| 6d 6f 74 69 6f 6e 20 2a | 2f 0a 09 58 09 09 09 77 |motion *|/..X...w|
|00002730| 68 69 6c 65 20 28 28 63 | 20 3d 20 67 65 74 63 28 |hile ((c| = getc(|
|00002740| 66 70 29 29 20 3d 3d 20 | 27 20 27 29 0a 09 58 09 |fp)) == |' ')..X.|
|00002750| 09 09 09 3b 0a 09 58 09 | 09 09 66 6f 72 20 28 6b |...;..X.|..for (k|
|00002760| 20 3d 20 63 2d 27 30 27 | 3b 20 69 73 64 69 67 69 | = c-'0'|; isdigi|
|00002770| 74 28 63 20 3d 20 67 65 | 74 63 28 66 70 29 29 3b |t(c = ge|tc(fp));|
|00002780| 20 6b 20 3d 20 31 30 2a | 6b 2b 63 2d 27 30 27 29 | k = 10*|k+c-'0')|
|00002790| 3b 0a 09 58 09 09 09 75 | 6e 67 65 74 63 28 63 2c |;..X...u|ngetc(c,|
|000027a0| 20 66 70 29 3b 0a 09 58 | 09 09 09 68 6d 6f 74 28 | fp);..X|...hmot(|
|000027b0| 6b 29 3b 0a 09 58 09 09 | 09 62 72 65 61 6b 3b 0a |k);..X..|.break;.|
|000027c0| 09 58 09 09 63 61 73 65 | 20 27 77 27 3a 09 2f 2a |.X..case| 'w':./*|
|000027d0| 20 77 6f 72 64 20 73 70 | 61 63 65 20 2a 2f 0a 09 | word sp|ace */..|
|000027e0| 58 09 09 09 2f 2a 20 73 | 68 6f 75 6c 64 20 65 69 |X.../* s|hould ei|
|000027f0| 74 68 65 72 20 69 67 6e | 6f 72 65 20 74 68 69 73 |ther ign|ore this|
|00002800| 20 6f 72 20 73 70 61 63 | 65 20 6f 76 65 72 0a 09 | or spac|e over..|
|00002810| 58 09 09 09 74 68 65 20 | 72 69 67 68 74 20 63 68 |X...the |right ch|
|00002820| 61 72 61 63 74 65 72 20 | 77 69 64 74 68 2c 20 6e |aracter |width, n|
|00002830| 6f 74 20 6a 75 73 74 20 | 73 70 61 63 65 20 2a 2f |ot just |space */|
|00002840| 0a 09 58 09 09 09 70 75 | 74 63 28 27 20 27 2c 20 |..X...pu|tc(' ', |
|00002850| 73 74 64 6f 75 74 29 3b | 0a 09 58 09 09 09 62 72 |stdout);|..X...br|
|00002860| 65 61 6b 3b 0a 09 58 09 | 09 63 61 73 65 20 27 56 |eak;..X.|.case 'V|
|00002870| 27 3a 0a 09 58 09 09 09 | 77 68 69 6c 65 20 28 28 |':..X...|while ((|
|00002880| 63 20 3d 20 67 65 74 63 | 28 66 70 29 29 20 3d 3d |c = getc|(fp)) ==|
|00002890| 20 27 20 27 29 0a 09 58 | 09 09 09 09 3b 0a 09 58 | ' ')..X|....;..X|
|000028a0| 09 09 09 66 6f 72 20 28 | 6e 20 3d 20 63 2d 27 30 |...for (|n = c-'0|
|000028b0| 27 3b 20 69 73 64 69 67 | 69 74 28 63 20 3d 20 67 |'; isdig|it(c = g|
|000028c0| 65 74 63 28 66 70 29 29 | 3b 20 6e 20 3d 20 31 30 |etc(fp))|; n = 10|
|000028d0| 2a 6e 2b 63 2d 27 30 27 | 29 3b 0a 09 58 09 09 09 |*n+c-'0'|);..X...|
|000028e0| 75 6e 67 65 74 63 28 63 | 2c 20 66 70 29 3b 0a 09 |ungetc(c|, fp);..|
|000028f0| 58 23 69 66 64 65 66 20 | 44 45 42 55 47 0a 09 58 |X#ifdef |DEBUG..X|
|00002900| 09 09 09 64 70 72 69 6e | 74 66 28 73 74 64 65 72 |...dprin|tf(stder|
|00002910| 72 2c 20 22 25 64 22 2c | 20 6e 29 3b 0a 09 58 23 |r, "%d",| n);..X#|
|00002920| 65 6e 64 69 66 0a 09 58 | 09 09 09 76 67 6f 74 6f |endif..X|...vgoto|
|00002930| 28 6e 29 3b 0a 09 58 09 | 09 09 62 72 65 61 6b 3b |(n);..X.|..break;|
|00002940| 0a 09 58 09 09 63 61 73 | 65 20 27 76 27 3a 0a 09 |..X..cas|e 'v':..|
|00002950| 58 09 09 09 77 68 69 6c | 65 20 28 28 63 20 3d 20 |X...whil|e ((c = |
|00002960| 67 65 74 63 28 66 70 29 | 29 20 3d 3d 20 27 20 27 |getc(fp)|) == ' '|
|00002970| 29 0a 09 58 09 09 09 09 | 3b 0a 09 58 09 09 09 66 |)..X....|;..X...f|
|00002980| 6f 72 20 28 6e 20 3d 20 | 63 2d 27 30 27 3b 20 69 |or (n = |c-'0'; i|
|00002990| 73 64 69 67 69 74 28 63 | 20 3d 20 67 65 74 63 28 |sdigit(c| = getc(|
|000029a0| 66 70 29 29 3b 20 6e 20 | 3d 20 31 30 2a 6e 2b 63 |fp)); n |= 10*n+c|
|000029b0| 2d 27 30 27 29 3b 0a 09 | 58 09 09 09 75 6e 67 65 |-'0');..|X...unge|
|000029c0| 74 63 28 63 2c 20 66 70 | 29 3b 0a 09 58 23 69 66 |tc(c, fp|);..X#if|
|000029d0| 64 65 66 20 44 45 42 55 | 47 0a 09 58 09 09 09 64 |def DEBU|G..X...d|
|000029e0| 70 72 69 6e 74 66 28 73 | 74 64 65 72 72 2c 20 22 |printf(s|tderr, "|
|000029f0| 25 64 22 2c 20 6e 29 3b | 0a 09 58 23 65 6e 64 69 |%d", n);|..X#endi|
|00002a00| 66 0a 09 58 09 09 09 76 | 6d 6f 74 28 6e 29 3b 0a |f..X...v|mot(n);.|
|00002a10| 09 58 09 09 09 62 72 65 | 61 6b 3b 0a 09 58 09 09 |.X...bre|ak;..X..|
|00002a20| 63 61 73 65 20 27 70 27 | 3a 09 2f 2a 20 6e 65 77 |case 'p'|:./* new|
|00002a30| 20 70 61 67 65 20 2a 2f | 0a 09 58 09 09 09 66 73 | page */|..X...fs|
|00002a40| 63 61 6e 66 28 66 70 2c | 20 22 25 64 22 2c 20 26 |canf(fp,| "%d", &|
|00002a50| 6e 29 3b 0a 09 58 23 69 | 66 64 65 66 20 44 45 42 |n);..X#i|fdef DEB|
|00002a60| 55 47 0a 09 58 09 09 09 | 64 70 72 69 6e 74 66 28 |UG..X...|dprintf(|
|00002a70| 73 74 64 65 72 72 2c 20 | 22 25 64 22 2c 20 6e 29 |stderr, |"%d", n)|
|00002a80| 3b 0a 09 58 23 65 6e 64 | 69 66 0a 09 58 09 09 09 |;..X#end|if..X...|
|00002a90| 74 5f 70 61 67 65 28 6e | 29 3b 0a 09 58 09 09 09 |t_page(n|);..X...|
|00002aa0| 62 72 65 61 6b 3b 0a 09 | 58 09 09 63 61 73 65 20 |break;..|X..case |
|00002ab0| 27 6e 27 3a 09 2f 2a 20 | 65 6e 64 20 6f 66 20 6c |'n':./* |end of l|
|00002ac0| 69 6e 65 20 2a 2f 0a 09 | 58 09 09 09 77 68 69 6c |ine */..|X...whil|
|00002ad0| 65 20 28 67 65 74 63 28 | 66 70 29 20 21 3d 20 27 |e (getc(|fp) != '|
|00002ae0| 5c 6e 27 29 0a 09 58 09 | 09 09 09 3b 0a 09 58 09 |\n')..X.|...;..X.|
|00002af0| 09 09 74 5f 6e 65 77 6c | 69 6e 65 28 29 3b 0a 09 |..t_newl|ine();..|
|00002b00| 58 09 09 09 62 72 65 61 | 6b 3b 0a 09 58 09 09 63 |X...brea|k;..X..c|
|00002b10| 61 73 65 20 27 23 27 3a | 09 2f 2a 20 63 6f 6d 6d |ase '#':|./* comm|
|00002b20| 65 6e 74 20 2a 2f 0a 09 | 58 09 09 09 77 68 69 6c |ent */..|X...whil|
|00002b30| 65 20 28 67 65 74 63 28 | 66 70 29 20 21 3d 20 27 |e (getc(|fp) != '|
|00002b40| 5c 6e 27 29 0a 09 58 09 | 09 09 09 3b 0a 09 58 09 |\n')..X.|...;..X.|
|00002b50| 09 09 62 72 65 61 6b 3b | 0a 09 58 09 09 63 61 73 |..break;|..X..cas|
|00002b60| 65 20 27 78 27 3a 09 2f | 2a 20 64 65 76 69 63 65 |e 'x':./|* device|
|00002b70| 20 63 6f 6e 74 72 6f 6c | 20 2a 2f 0a 09 58 09 09 | control| */..X..|
|00002b80| 09 64 65 76 69 63 65 28 | 66 70 29 3b 0a 09 58 09 |.device(|fp);..X.|
|00002b90| 09 09 62 72 65 61 6b 3b | 0a 09 58 09 09 64 65 66 |..break;|..X..def|
|00002ba0| 61 75 6c 74 3a 0a 09 58 | 09 09 09 65 72 72 6f 72 |ault:..X|...error|
|00002bb0| 28 21 46 41 54 41 4c 2c | 20 22 75 6e 6b 6e 6f 77 |(!FATAL,| "unknow|
|00002bc0| 6e 20 69 6e 70 75 74 20 | 63 68 61 72 61 63 74 65 |n input |characte|
|00002bd0| 72 20 25 6f 20 25 63 22 | 2c 20 63 2c 20 63 29 3b |r %o %c"|, c, c);|
|00002be0| 0a 09 58 09 09 09 64 6f | 6e 65 28 29 3b 0a 09 58 |..X...do|ne();..X|
|00002bf0| 09 09 7d 0a 09 58 09 7d | 0a 09 58 7d 0a 09 58 0a |..}..X.}|..X}..X.|
|00002c00| 09 58 64 65 76 69 63 65 | 28 66 70 29 09 2f 2a 20 |.Xdevice|(fp)./* |
|00002c10| 69 6e 74 65 72 70 72 65 | 74 20 64 65 76 69 63 65 |interpre|t device|
|00002c20| 20 63 6f 6e 74 72 6f 6c | 20 66 75 6e 63 74 69 6f | control| functio|
|00002c30| 6e 73 20 2a 2f 0a 09 58 | 46 49 4c 45 20 2a 66 70 |ns */..X|FILE *fp|
|00002c40| 3b 0a 09 58 7b 0a 09 58 | 09 63 68 61 72 20 73 74 |;..X{..X|.char st|
|00002c50| 72 5b 32 30 5d 3b 0a 09 | 58 09 69 6e 74 20 6e 3b |r[20];..|X.int n;|
|00002c60| 0a 09 58 0a 09 58 09 66 | 73 63 61 6e 66 28 66 70 |..X..X.f|scanf(fp|
|00002c70| 2c 20 22 25 73 22 2c 20 | 73 74 72 29 3b 0a 09 58 |, "%s", |str);..X|
|00002c80| 23 69 66 64 65 66 20 44 | 45 42 55 47 0a 09 58 09 |#ifdef D|EBUG..X.|
|00002c90| 64 70 72 69 6e 74 66 28 | 73 74 64 65 72 72 2c 20 |dprintf(|stderr, |
|00002ca0| 22 25 73 22 2c 20 73 74 | 72 29 3b 0a 09 58 23 65 |"%s", st|r);..X#e|
|00002cb0| 6e 64 69 66 0a 09 58 09 | 73 77 69 74 63 68 20 28 |ndif..X.|switch (|
|00002cc0| 73 74 72 5b 30 5d 29 20 | 7b 0a 09 58 09 63 61 73 |str[0]) |{..X.cas|
|00002cd0| 65 20 27 69 27 3a 09 2f | 2a 20 69 6e 69 74 69 61 |e 'i':./|* initia|
|00002ce0| 6c 69 7a 65 20 2a 2f 0a | 09 58 09 09 66 69 6c 65 |lize */.|.X..file|
|00002cf0| 69 6e 69 74 28 29 3b 0a | 09 58 09 09 74 5f 69 6e |init();.|.X..t_in|
|00002d00| 69 74 28 30 29 3b 0a 09 | 58 09 09 62 72 65 61 6b |it(0);..|X..break|
|00002d10| 3b 0a 09 58 09 63 61 73 | 65 20 27 54 27 3a 09 2f |;..X.cas|e 'T':./|
|00002d20| 2a 20 64 65 76 69 63 65 | 20 6e 61 6d 65 20 2a 2f |* device| name */|
|00002d30| 0a 09 58 09 09 66 73 63 | 61 6e 66 28 66 70 2c 20 |..X..fsc|anf(fp, |
|00002d40| 22 25 73 22 2c 20 64 65 | 76 6e 61 6d 65 29 3b 0a |"%s", de|vname);.|
|00002d50| 09 58 23 69 66 64 65 66 | 20 44 45 42 55 47 0a 09 |.X#ifdef| DEBUG..|
|00002d60| 58 09 09 64 70 72 69 6e | 74 66 28 73 74 64 65 72 |X..dprin|tf(stder|
|00002d70| 72 2c 20 22 25 73 22 2c | 20 64 65 76 6e 61 6d 65 |r, "%s",| devname|
|00002d80| 29 3b 0a 09 58 23 65 6e | 64 69 66 0a 09 58 09 09 |);..X#en|dif..X..|
|00002d90| 2f 2a 20 67 65 74 73 20 | 69 67 6e 6f 72 65 64 20 |/* gets |ignored |
|00002da0| 61 6e 79 77 61 79 20 2a | 2f 0a 09 58 09 09 62 72 |anyway *|/..X..br|
|00002db0| 65 61 6b 3b 0a 09 58 09 | 63 61 73 65 20 27 74 27 |eak;..X.|case 't'|
|00002dc0| 3a 09 2f 2a 20 74 72 61 | 69 6c 65 72 20 2a 2f 0a |:./* tra|iler */.|
|00002dd0| 09 58 09 09 74 5f 74 72 | 61 69 6c 65 72 28 29 3b |.X..t_tr|ailer();|
|00002de0| 0a 09 58 09 09 62 72 65 | 61 6b 3b 0a 09 58 09 63 |..X..bre|ak;..X.c|
|00002df0| 61 73 65 20 27 70 27 3a | 09 2f 2a 20 70 61 75 73 |ase 'p':|./* paus|
|00002e00| 65 20 2d 2d 20 63 61 6e | 20 72 65 73 74 61 72 74 |e -- can| restart|
|00002e10| 20 2a 2f 0a 09 58 09 09 | 74 5f 72 65 73 65 74 28 | */..X..|t_reset(|
|00002e20| 27 70 27 29 3b 0a 09 58 | 09 09 62 72 65 61 6b 3b |'p');..X|..break;|
|00002e30| 0a 09 58 09 63 61 73 65 | 20 27 73 27 3a 09 2f 2a |..X.case| 's':./*|
|00002e40| 20 73 74 6f 70 20 2a 2f | 0a 09 58 09 09 74 5f 72 | stop */|..X..t_r|
|00002e50| 65 73 65 74 28 27 73 27 | 29 3b 0a 09 58 09 09 62 |eset('s'|);..X..b|
|00002e60| 72 65 61 6b 3b 0a 09 58 | 09 63 61 73 65 20 27 72 |reak;..X|.case 'r|
|00002e70| 27 3a 09 2f 2a 20 72 65 | 73 6f 6c 75 74 69 6f 6e |':./* re|solution|
|00002e80| 20 61 73 73 75 6d 65 64 | 20 77 68 65 6e 20 70 72 | assumed| when pr|
|00002e90| 65 70 61 72 65 64 20 2a | 2f 0a 09 58 09 09 66 73 |epared *|/..X..fs|
|00002ea0| 63 61 6e 66 28 66 70 2c | 20 22 25 64 22 2c 20 26 |canf(fp,| "%d", &|
|00002eb0| 72 65 73 29 3b 0a 09 58 | 23 69 66 64 65 66 20 44 |res);..X|#ifdef D|
|00002ec0| 45 42 55 47 0a 09 58 09 | 09 64 70 72 69 6e 74 66 |EBUG..X.|.dprintf|
|00002ed0| 28 73 74 64 65 72 72 2c | 20 22 25 64 22 2c 20 72 |(stderr,| "%d", r|
|00002ee0| 65 73 29 3b 0a 09 58 23 | 65 6e 64 69 66 0a 09 58 |es);..X#|endif..X|
|00002ef0| 09 09 62 72 65 61 6b 3b | 0a 09 58 09 63 61 73 65 |..break;|..X.case|
|00002f00| 20 27 66 27 3a 09 2f 2a | 20 66 6f 6e 74 20 75 73 | 'f':./*| font us|
|00002f10| 65 64 20 2a 2f 0a 09 58 | 09 09 66 73 63 61 6e 66 |ed */..X|..fscanf|
|00002f20| 28 66 70 2c 20 22 25 64 | 20 25 73 22 2c 20 26 6e |(fp, "%d| %s", &n|
|00002f30| 2c 20 73 74 72 29 3b 0a | 09 58 23 69 66 64 65 66 |, str);.|.X#ifdef|
|00002f40| 20 44 45 42 55 47 0a 09 | 58 09 09 64 70 72 69 6e | DEBUG..|X..dprin|
|00002f50| 74 66 28 73 74 64 65 72 | 72 2c 20 22 25 64 20 25 |tf(stder|r, "%d %|
|00002f60| 73 22 2c 20 6e 2c 20 73 | 74 72 29 3b 0a 09 58 23 |s", n, s|tr);..X#|
|00002f70| 65 6e 64 69 66 0a 09 58 | 09 09 6c 6f 61 64 66 6f |endif..X|..loadfo|
|00002f80| 6e 74 28 6e 2c 20 73 74 | 72 29 3b 0a 09 58 09 09 |nt(n, st|r);..X..|
|00002f90| 62 72 65 61 6b 3b 0a 09 | 58 09 7d 0a 09 58 09 77 |break;..|X.}..X.w|
|00002fa0| 68 69 6c 65 20 28 67 65 | 74 63 28 66 70 29 20 21 |hile (ge|tc(fp) !|
|00002fb0| 3d 20 27 5c 6e 27 29 09 | 2f 2a 20 73 6b 69 70 20 |= '\n').|/* skip |
|00002fc0| 72 65 73 74 20 6f 66 20 | 69 6e 70 75 74 20 6c 69 |rest of |input li|
|00002fd0| 6e 65 20 2a 2f 0a 09 58 | 09 09 3b 0a 09 58 7d 0a |ne */..X|..;..X}.|
|00002fe0| 09 58 0a 09 58 0a 09 58 | 66 69 6c 65 69 6e 69 74 |.X..X..X|fileinit|
|00002ff0| 28 29 09 2f 2a 20 72 65 | 61 64 20 69 6e 20 66 6f |()./* re|ad in fo|
|00003000| 6e 74 20 61 6e 64 20 63 | 6f 64 65 20 66 69 6c 65 |nt and c|ode file|
|00003010| 73 2c 20 65 74 63 2e 20 | 2a 2f 0a 09 58 7b 0a 09 |s, etc. |*/..X{..|
|00003020| 58 09 2f 2a 0a 09 58 09 | 20 2a 20 64 6f 6e 27 74 |X./*..X.| * don't|
|00003030| 20 64 6f 20 61 6e 79 74 | 68 69 6e 67 20 68 65 72 | do anyt|hing her|
|00003040| 65 20 73 69 6e 63 65 20 | 74 68 65 20 66 69 72 73 |e since |the firs|
|00003050| 74 20 63 6f 6d 6d 61 6e | 64 73 0a 09 58 09 20 2a |t comman|ds..X. *|
|00003060| 20 69 6e 20 61 6e 79 20 | 6f 75 74 70 75 74 20 66 | in any |output f|
|00003070| 72 6f 6d 20 74 72 6f 66 | 66 20 61 72 65 20 66 6f |rom trof|f are fo|
|00003080| 6e 74 20 6c 6f 61 64 20 | 63 6f 6d 6d 61 6e 64 73 |nt load |commands|
|00003090| 20 61 6e 64 0a 09 58 09 | 20 2a 20 77 65 27 6c 6c | and..X.| * we'll|
|000030a0| 20 64 6f 20 74 68 65 6d | 20 74 68 65 72 65 20 61 | do them| there a|
|000030b0| 6e 79 77 61 79 0a 09 58 | 09 20 2a 2f 0a 09 58 7d |nyway..X|. */..X}|
|000030c0| 0a 09 58 0a 09 58 66 6f | 6e 74 70 72 69 6e 74 28 |..X..Xfo|ntprint(|
|000030d0| 69 29 09 2f 2a 20 64 65 | 62 75 67 67 69 6e 67 20 |i)./* de|bugging |
|000030e0| 70 72 69 6e 74 20 6f 66 | 20 66 6f 6e 74 20 69 20 |print of| font i |
|000030f0| 28 31 2c 2e 2e 2e 4e 55 | 4d 46 4f 4e 54 53 29 20 |(1,...NU|MFONTS) |
|00003100| 2a 2f 0a 09 58 7b 0a 09 | 58 09 2f 2a 0a 09 58 09 |*/..X{..|X./*..X.|
|00003110| 20 2a 20 49 27 6d 20 74 | 6f 6f 20 6c 61 7a 79 20 | * I'm t|oo lazy |
|00003120| 2d 20 61 64 64 20 74 68 | 69 73 20 69 66 20 79 6f |- add th|is if yo|
|00003130| 75 20 77 61 6e 74 20 2d | 20 69 74 27 73 20 6a 75 |u want -| it's ju|
|00003140| 73 74 0a 09 58 09 20 2a | 20 61 20 73 69 6d 70 6c |st..X. *| a simpl|
|00003150| 65 20 6c 6f 6f 70 2c 20 | 65 2e 67 20 66 6f 72 20 |e loop, |e.g for |
|00003160| 28 69 3d 30 3b 20 69 3c | 32 35 36 3b 20 63 61 6c |(i=0; i<|256; cal|
|00003170| 6c 20 72 61 73 74 65 72 | 29 0a 09 58 09 20 2a 2f |l raster|)..X. */|
|00003180| 0a 09 58 7d 0a 09 58 0a | 09 58 6c 6f 61 64 63 6f |..X}..X.|.Xloadco|
|00003190| 64 65 28 6e 2c 20 6e 77 | 29 0a 09 58 2f 2a 20 6c |de(n, nw|)..X/* l|
|000031a0| 6f 61 64 20 63 6f 64 65 | 74 61 62 20 6f 6e 20 70 |oad code|tab on p|
|000031b0| 6f 73 69 74 69 6f 6e 20 | 6e 20 28 30 2e 2e 2e 4e |osition |n (0...N|
|000031c0| 55 4d 46 4f 4e 54 53 29 | 3b 20 23 63 68 61 72 73 |UMFONTS)|; #chars|
|000031d0| 20 69 73 20 6e 77 20 2a | 2f 0a 09 58 2f 2a 20 73 | is nw *|/..X/* s|
|000031e0| 6f 6d 65 64 61 79 20 77 | 69 6c 6c 20 67 65 74 20 |omeday w|ill get |
|000031f0| 61 64 64 65 64 20 77 68 | 65 6e 20 69 20 64 69 73 |added wh|en i dis|
|00003200| 63 6f 76 65 72 20 77 68 | 65 72 65 20 74 68 65 20 |cover wh|ere the |
|00003210| 74 61 62 6c 65 73 20 2a | 2f 0a 09 58 2f 2a 20 61 |tables *|/..X/* a|
|00003220| 72 65 2c 20 6f 72 20 69 | 66 20 69 20 63 72 65 61 |re, or i|f i crea|
|00003230| 74 65 20 74 68 65 6d 20 | 66 72 6f 6d 20 6d 79 20 |te them |from my |
|00003240| 66 6f 6e 74 20 64 75 6d | 70 73 2e 20 20 20 20 20 |font dum|ps. |
|00003250| 20 20 20 20 20 20 20 2a | 2f 0a 09 58 69 6e 74 20 | *|/..Xint |
|00003260| 6e 2c 20 6e 77 3b 0a 09 | 58 7b 0a 09 58 2f 2a 0a |n, nw;..|X{..X/*.|
|00003270| 09 58 20 2a 20 64 6f 20 | 77 65 20 6b 6e 6f 77 20 |.X * do |we know |
|00003280| 68 6f 77 20 74 68 65 20 | 63 6f 64 65 20 74 61 62 |how the |code tab|
|00003290| 6c 65 73 20 61 72 65 20 | 6f 72 67 61 6e 69 7a 65 |les are |organize|
|000032a0| 64 3f 0a 09 58 20 2a 20 | 74 68 65 20 63 6f 64 65 |d?..X * |the code|
|000032b0| 20 70 6f 73 69 74 69 6f | 6e 73 20 61 72 65 20 64 | positio|ns are d|
|000032c0| 69 66 66 65 72 65 6e 74 | 20 28 6f 66 20 63 6f 75 |ifferent| (of cou|
|000032d0| 72 73 65 20 2e 2e 2e 29 | 20 66 6f 72 20 76 66 6f |rse ...)| for vfo|
|000032e0| 6e 74 0a 09 58 20 2a 20 | 61 6e 64 20 66 6f 72 20 |nt..X * |and for |
|000032f0| 74 68 65 20 41 54 26 54 | 20 44 57 42 20 66 6f 6e |the AT&T| DWB fon|
|00003300| 74 73 20 28 74 68 65 20 | 69 6d 61 67 65 6e 20 72 |ts (the |imagen r|
|00003310| 61 73 74 65 72 73 29 2e | 0a 09 58 20 2a 20 77 65 |asters).|..X * we|
|00003320| 20 6e 65 65 64 20 61 20 | 77 61 79 20 74 6f 20 64 | need a |way to d|
|00003330| 69 73 74 69 6e 67 75 69 | 73 68 20 62 65 74 77 65 |istingui|sh betwe|
|00003340| 65 6e 20 74 68 65 20 72 | 61 73 74 65 72 20 66 69 |en the r|aster fi|
|00003350| 6c 65 73 0a 09 58 20 2a | 20 6e 6f 74 20 62 61 73 |les..X *| not bas|
|00003360| 65 64 20 6f 6e 20 74 68 | 65 69 72 20 6e 61 6d 65 |ed on th|eir name|
|00003370| 73 2c 20 61 6e 64 20 66 | 5f 6d 61 67 69 63 2c 20 |s, and f|_magic, |
|00003380| 61 73 20 66 61 72 20 61 | 73 20 69 20 72 65 6d 65 |as far a|s i reme|
|00003390| 6d 62 65 72 2c 0a 09 58 | 20 2a 20 69 73 20 6e 6f |mber,..X| * is no|
|000033a0| 74 20 63 6f 6e 73 69 73 | 74 65 6e 74 2e 20 65 69 |t consis|tent. ei|
|000033b0| 74 68 65 72 20 66 69 6e | 64 20 61 20 27 73 6d 61 |ther fin|d a 'sma|
|000033c0| 72 74 27 20 77 61 79 20 | 74 6f 20 64 6f 20 74 68 |rt' way |to do th|
|000033d0| 69 73 2c 20 6f 72 0a 09 | 58 20 2a 20 67 6f 20 6f |is, or..|X * go o|
|000033e0| 76 65 72 20 41 4c 4c 20 | 74 68 65 20 66 6f 6e 74 |ver ALL |the font|
|000033f0| 20 66 69 6c 65 73 20 61 | 6e 64 20 66 6f 72 63 65 | files a|nd force|
|00003400| 20 66 5f 6d 61 67 69 63 | 20 74 6f 20 30 34 33 36 | f_magic| to 0436|
|00003410| 20 66 6f 72 20 76 66 6f | 6e 74 0a 09 58 20 2a 20 | for vfo|nt..X * |
|00003420| 61 6e 64 20 74 6f 20 73 | 6f 6d 65 74 68 69 6e 67 |and to s|omething|
|00003430| 20 65 6c 73 65 20 66 6f | 72 20 72 61 73 74 69 31 | else fo|r rasti1|
|00003440| 30 2e 20 74 68 65 6e 20 | 77 65 20 63 61 6e 20 68 |0. then |we can h|
|00003450| 61 76 65 20 69 6e 64 65 | 70 65 6e 64 65 6e 74 0a |ave inde|pendent.|
|00003460| 09 58 20 2a 20 63 6f 64 | 65 20 74 61 62 6c 65 73 |.X * cod|e tables|
|00003470| 20 61 6e 64 20 61 64 64 | 20 74 68 65 6d 20 74 6f | and add| them to|
|00003480| 20 74 68 65 20 46 49 4e | 46 4f 20 73 74 72 75 63 | the FIN|FO struc|
|00003490| 74 75 72 65 73 2c 20 73 | 6f 20 74 68 61 74 20 77 |tures, s|o that w|
|000034a0| 65 0a 09 58 20 2a 20 63 | 61 6e 20 66 69 6e 64 20 |e..X * c|an find |
|000034b0| 66 69 6e 64 20 61 20 63 | 68 61 72 61 63 74 65 72 |find a c|haracter|
|000034c0| 20 46 41 53 54 2e 0a 09 | 58 20 2a 20 50 2e 53 2e | FAST...|X * P.S.|
|000034d0| 20 2d 20 69 20 74 68 69 | 6e 6b 20 74 68 65 20 6d | - i thi|nk the m|
|000034e0| 61 78 78 2c 20 6d 61 78 | 79 2c 20 61 6e 64 20 78 |axx, max|y, and x|
|000034f0| 74 65 6e 64 20 66 69 65 | 6c 64 73 20 61 72 65 20 |tend fie|lds are |
|00003500| 41 4c 57 41 59 53 20 30 | 20 6f 6e 0a 09 58 20 2a |ALWAYS 0| on..X *|
|00003510| 20 74 68 65 20 72 61 73 | 74 69 31 30 20 73 74 75 | the ras|ti10 stu|
|00003520| 66 66 2c 20 61 6e 64 20 | 41 4c 57 41 59 53 20 69 |ff, and |ALWAYS i|
|00003530| 6e 69 74 69 61 6c 69 7a | 65 64 20 74 6f 20 73 6f |nitializ|ed to so|
|00003540| 6d 65 74 68 69 6e 67 20 | 6e 6f 72 6d 61 6c 20 69 |mething |normal i|
|00003550| 6e 0a 09 58 20 2a 20 76 | 66 6f 6e 74 2c 20 73 6f |n..X * v|font, so|
|00003560| 20 74 68 61 74 20 6d 61 | 79 20 62 65 20 61 20 73 | that ma|y be a s|
|00003570| 6f 6c 75 74 69 6f 6e 2e | 0a 09 58 20 2a 2f 0a 09 |olution.|..X */..|
|00003580| 58 7d 0a 09 58 0a 09 58 | 63 68 65 61 74 5f 73 69 |X}..X..X|cheat_si|
|00003590| 7a 65 28 6e 29 0a 09 58 | 69 6e 74 20 6e 3b 0a 09 |ze(n)..X|int n;..|
|000035a0| 58 7b 0a 09 58 09 72 65 | 67 69 73 74 65 72 20 69 |X{..X.re|gister i|
|000035b0| 6e 74 20 2a 20 73 69 7a | 3b 0a 09 58 09 73 74 61 |nt * siz|;..X.sta|
|000035c0| 74 69 63 20 69 6e 74 20 | 61 76 5f 73 69 7a 20 5b |tic int |av_siz [|
|000035d0| 5d 20 3d 20 7b 0a 09 58 | 09 09 36 2c 20 37 2c 20 |] = {..X|..6, 7, |
|000035e0| 38 2c 20 39 2c 20 31 30 | 2c 20 31 31 2c 20 31 32 |8, 9, 10|, 11, 12|
|000035f0| 2c 0a 09 58 09 09 31 34 | 2c 20 31 36 2c 20 31 38 |,..X..14|, 16, 18|
|00003600| 2c 20 32 30 2c 20 32 32 | 2c 20 32 34 2c 0a 09 58 |, 20, 22|, 24,..X|
|00003610| 09 09 32 38 2c 20 33 36 | 2c 20 30 0a 09 58 09 7d |..28, 36|, 0..X.}|
|00003620| 3b 0a 09 58 0a 09 58 09 | 6e 20 3d 20 28 69 6e 74 |;..X..X.|n = (int|
|00003630| 29 28 6e 2a 31 2e 33 33 | 29 3b 0a 09 58 09 09 2f |)(n*1.33|);..X../|
|00003640| 2a 0a 09 58 09 09 20 2a | 20 69 73 20 76 66 6f 6e |*..X.. *| is vfon|
|00003650| 74 20 66 6f 72 20 32 30 | 30 20 64 70 69 3f 0a 09 |t for 20|0 dpi?..|
|00003660| 58 09 09 20 2a 20 74 68 | 69 73 20 73 65 65 6d 73 |X.. * th|is seems|
|00003670| 20 74 6f 20 67 69 76 65 | 20 61 20 67 6f 6f 64 20 | to give| a good |
|00003680| 73 69 7a 65 20 72 61 74 | 69 6f 0a 09 58 09 09 20 |size rat|io..X.. |
|00003690| 2a 20 62 75 74 20 63 61 | 6e 20 63 68 61 6e 67 65 |* but ca|n change|
|000036a0| 20 74 6f 20 66 69 74 20 | 79 6f 75 72 20 6d 6f 6f | to fit |your moo|
|000036b0| 64 20 2e 2e 2e 0a 09 58 | 09 09 20 2a 20 69 74 27 |d .....X|.. * it'|
|000036c0| 73 20 6e 6f 74 20 65 78 | 61 63 74 20 61 6e 79 77 |s not ex|act anyw|
|000036d0| 61 79 20 63 61 75 73 65 | 20 6f 66 20 63 68 65 61 |ay cause| of chea|
|000036e0| 74 73 69 7a 65 28 29 2e | 0a 09 58 09 09 20 2a 2f |tsize().|..X.. */|
|000036f0| 0a 09 58 0a 09 58 09 66 | 6f 72 20 28 73 69 7a 3d |..X..X.f|or (siz=|
|00003700| 61 76 5f 73 69 7a 3b 20 | 28 2a 73 69 7a 20 21 3d |av_siz; |(*siz !=|
|00003710| 20 30 29 20 26 26 20 28 | 6e 20 3e 20 2a 73 69 7a | 0) && (|n > *siz|
|00003720| 29 3b 20 73 69 7a 2b 2b | 29 0a 09 58 09 09 3b 0a |); siz++|)..X..;.|
|00003730| 09 58 09 72 65 74 75 72 | 6e 20 28 28 2a 73 69 7a |.X.retur|n ((*siz|
|00003740| 20 3d 3d 20 30 29 20 3f | 20 2a 2d 2d 73 69 7a 20 | == 0) ?| *--siz |
|00003750| 3a 20 2a 73 69 7a 29 3b | 0a 09 58 7d 0a 09 58 0a |: *siz);|..X}..X.|
|00003760| 09 58 6c 6f 61 64 66 6f | 6e 74 28 70 6f 73 2c 20 |.Xloadfo|nt(pos, |
|00003770| 73 29 0a 09 58 09 2f 2a | 20 6c 6f 61 64 20 66 6f |s)..X./*| load fo|
|00003780| 6e 74 20 69 6e 66 6f 20 | 66 6f 72 20 66 6f 6e 74 |nt info |for font|
|00003790| 20 73 20 6f 6e 20 70 6f | 73 69 74 69 6f 6e 20 6e | s on po|sition n|
|000037a0| 20 28 31 2e 2e 2e 4e 55 | 4d 46 4f 4e 54 53 29 20 | (1...NU|MFONTS) |
|000037b0| 2a 2f 0a 09 58 69 6e 74 | 20 70 6f 73 3b 0a 09 58 |*/..Xint| pos;..X|
|000037c0| 63 68 61 72 20 2a 73 3b | 0a 09 58 7b 0a 09 58 09 |char *s;|..X{..X.|
|000037d0| 2f 2a 0a 09 58 09 20 2a | 20 72 65 61 64 20 69 6e |/*..X. *| read in|
|000037e0| 20 61 20 66 6f 6e 74 20 | 68 65 72 65 20 66 72 6f | a font |here fro|
|000037f0| 6d 20 74 68 65 20 6c 69 | 62 72 61 72 79 20 2d 20 |m the li|brary - |
|00003800| 6a 75 73 74 20 74 68 65 | 20 68 65 61 64 65 72 0a |just the| header.|
|00003810| 09 58 09 20 2a 20 61 6e | 64 20 74 68 65 20 63 5f |.X. * an|d the c_|
|00003820| 70 61 72 61 6d 20 73 74 | 72 75 63 74 75 72 65 73 |param st|ructures|
|00003830| 2e 20 77 65 27 6c 6c 20 | 64 6f 20 61 6e 20 66 73 |. we'll |do an fs|
|00003840| 65 65 6b 20 61 6e 64 20 | 72 65 61 64 0a 09 58 09 |eek and |read..X.|
|00003850| 20 2a 20 66 6f 72 20 74 | 68 65 20 63 68 61 72 61 | * for t|he chara|
|00003860| 63 74 65 72 73 20 73 65 | 70 61 72 61 74 65 6c 79 |cters se|parately|
|00003870| 2e 0a 09 58 09 20 2a 20 | 63 61 6c 6c 20 74 5f 66 |...X. * |call t_f|
|00003880| 70 20 74 6f 20 75 70 64 | 61 74 65 20 74 68 65 20 |p to upd|ate the |
|00003890| 74 61 62 6c 65 20 6f 66 | 20 66 6f 6e 74 73 20 61 |table of| fonts a|
|000038a0| 6e 64 20 73 65 65 20 69 | 66 20 77 65 0a 09 58 09 |nd see i|f we..X.|
|000038b0| 20 2a 20 61 6c 72 65 61 | 64 79 20 68 61 76 65 20 | * alrea|dy have |
|000038c0| 74 68 65 20 69 6e 66 6f | 20 77 65 20 6e 65 65 64 |the info| we need|
|000038d0| 2c 20 61 6e 64 20 63 68 | 65 63 6b 20 69 66 20 6e |, and ch|eck if n|
|000038e0| 6f 74 20 6f 6e 20 63 61 | 72 74 72 69 64 67 65 2e |ot on ca|rtridge.|
|000038f0| 0a 09 58 09 20 2a 0a 09 | 58 09 20 2a 20 74 68 65 |..X. *..|X. * the|
|00003900| 72 65 20 73 68 6f 75 6c | 64 20 62 65 0a 09 58 09 |re shoul|d be..X.|
|00003910| 20 2a 20 73 70 61 63 65 | 20 66 6f 72 20 6d 6f 72 | * space| for mor|
|00003920| 65 20 74 68 61 6e 20 6f | 6e 65 20 66 6f 6e 74 20 |e than o|ne font |
|00003930| 73 69 6e 63 65 20 74 72 | 6f 66 66 20 73 65 65 6d |since tr|off seem|
|00003940| 73 20 74 6f 20 65 6e 6a | 6f 79 0a 09 58 09 20 2a |s to enj|oy..X. *|
|00003950| 20 63 68 61 6e 67 69 6e | 67 20 70 6f 69 6e 74 20 | changin|g point |
|00003960| 73 69 7a 65 73 20 6f 6e | 20 74 68 65 20 66 6c 79 |sizes on| the fly|
|00003970| 20 2e 2e 0a 09 58 09 20 | 2a 2f 0a 09 58 0a 09 58 | ....X. |*/..X..X|
|00003980| 09 63 68 61 72 09 66 69 | 6c 65 6e 61 6d 65 5b 31 |.char.fi|lename[1|
|00003990| 30 30 5d 3b 0a 09 58 09 | 73 74 72 75 63 74 20 66 |00];..X.|struct f|
|000039a0| 5f 68 65 61 64 65 72 20 | 20 20 66 68 3b 0a 09 58 |_header | fh;..X|
|000039b0| 09 72 65 67 69 73 74 65 | 72 20 69 6e 74 09 20 69 |.registe|r int. i|
|000039c0| 3b 0a 09 58 09 63 68 61 | 72 20 74 6d 70 6e 61 6d |;..X.cha|r tmpnam|
|000039d0| 65 5b 33 30 5d 3b 0a 09 | 58 09 73 74 72 75 63 74 |e[30];..|X.struct|
|000039e0| 20 63 5f 70 61 72 61 6d | 20 2a 20 63 68 70 61 6c | c_param| * chpal|
|000039f0| 6c 6f 63 28 29 3b 0a 09 | 58 0a 09 58 23 69 66 64 |loc();..|X..X#ifd|
|00003a00| 65 66 20 44 45 42 55 47 | 0a 09 58 09 64 69 6e 66 |ef DEBUG|..X.dinf|
|00003a10| 6f 70 72 69 6e 74 28 22 | 6c 6f 61 64 66 6f 6e 74 |oprint("|loadfont|
|00003a20| 20 65 6e 74 65 72 65 64 | 22 29 3b 0a 09 58 23 65 | entered|");..X#e|
|00003a30| 6e 64 69 66 0a 09 58 09 | 73 70 72 69 6e 74 66 28 |ndif..X.|sprintf(|
|00003a40| 74 6d 70 6e 61 6d 65 2c | 20 22 25 73 2e 25 64 22 |tmpname,| "%s.%d"|
|00003a50| 2c 20 73 2c 20 77 61 6e | 74 5f 73 69 7a 29 3b 0a |, s, wan|t_siz);.|
|00003a60| 09 58 09 69 20 3d 20 74 | 5f 66 70 28 70 6f 73 2c |.X.i = t|_fp(pos,|
|00003a70| 20 74 6d 70 6e 61 6d 65 | 29 3b 0a 09 58 09 69 66 | tmpname|);..X.if|
|00003a80| 20 09 20 20 28 28 73 74 | 72 63 6d 70 28 74 6d 70 | . ((st|rcmp(tmp|
|00003a90| 6e 61 6d 65 2c 22 52 2e | 31 30 22 29 3d 3d 30 29 |name,"R.|10")==0)|
|00003aa0| 0a 09 58 09 09 7c 7c 20 | 28 73 74 72 63 6d 70 28 |..X..|| |(strcmp(|
|00003ab0| 74 6d 70 6e 61 6d 65 2c | 22 49 2e 31 30 22 29 3d |tmpname,|"I.10")=|
|00003ac0| 3d 30 29 0a 09 58 09 09 | 7c 7c 20 28 73 74 72 63 |=0)..X..||| (strc|
|00003ad0| 6d 70 28 74 6d 70 6e 61 | 6d 65 2c 22 42 2e 31 30 |mp(tmpna|me,"B.10|
|00003ae0| 22 29 3d 3d 30 29 29 20 | 7b 0a 09 58 09 09 09 09 |")==0)) |{..X....|
|00003af0| 63 61 72 74 72 69 64 67 | 65 20 20 3d 20 31 3b 0a |cartridg|e = 1;.|
|00003b00| 09 58 09 09 09 09 63 5f | 66 6e 74 5f 69 6e 64 78 |.X....c_|fnt_indx|
|00003b10| 20 3d 20 69 3b 0a 09 58 | 09 09 09 09 63 72 6e 74 | = i;..X|....crnt|
|00003b20| 5f 73 69 7a 20 3d 20 77 | 61 6e 74 5f 73 69 7a 3b |_siz = w|ant_siz;|
|00003b30| 0a 09 58 23 69 66 64 65 | 66 20 44 45 42 55 47 0a |..X#ifde|f DEBUG.|
|00003b40| 09 58 09 09 09 09 64 69 | 6e 66 6f 70 72 69 6e 74 |.X....di|nfoprint|
|00003b50| 28 22 6c 6f 61 64 66 6f | 6e 74 22 29 3b 0a 09 58 |("loadfo|nt");..X|
|00003b60| 23 65 6e 64 69 66 0a 09 | 58 09 09 09 09 72 65 74 |#endif..|X....ret|
|00003b70| 75 72 6e 3b 0a 09 58 09 | 7d 0a 09 58 09 73 70 72 |urn;..X.|}..X.spr|
|00003b80| 69 6e 74 66 28 74 6d 70 | 6e 61 6d 65 2c 20 22 25 |intf(tmp|name, "%|
|00003b90| 73 2e 25 64 22 2c 20 73 | 2c 20 63 68 65 61 74 5f |s.%d", s|, cheat_|
|00003ba0| 73 69 7a 65 28 77 61 6e | 74 5f 73 69 7a 29 29 3b |size(wan|t_siz));|
|00003bb0| 0a 09 58 09 2f 2a 20 0a | 09 58 09 20 2a 20 63 68 |..X./* .|.X. * ch|
|00003bc0| 65 61 74 20 77 69 74 68 | 20 74 68 65 20 73 69 7a |eat with| the siz|
|00003bd0| 65 20 68 65 72 65 2e 20 | 6d 61 79 62 65 20 73 68 |e here. |maybe sh|
|00003be0| 6f 75 6c 64 20 75 73 65 | 0a 09 58 09 20 2a 20 28 |ould use|..X. * (|
|00003bf0| 69 6e 74 29 28 77 61 6e | 74 5f 73 69 7a 2f 30 2e |int)(wan|t_siz/0.|
|00003c00| 38 29 20 6f 72 20 28 69 | 6e 74 29 28 77 61 6e 74 |8) or (i|nt)(want|
|00003c10| 5f 73 69 7a 2f 30 2e 36 | 37 29 0a 09 58 09 20 2a |_siz/0.6|7)..X. *|
|00003c20| 20 74 6f 20 63 6f 6d 70 | 65 6e 73 61 74 65 20 2d | to comp|ensate -|
|00003c30| 20 63 68 65 63 6b 0a 09 | 58 09 20 2a 20 61 76 61 | check..|X. * ava|
|00003c40| 69 6c 61 62 69 6c 69 74 | 79 20 6f 66 20 74 68 65 |ilabilit|y of the|
|00003c50| 73 65 20 73 69 7a 65 73 | 20 62 34 20 75 20 74 72 |se sizes| b4 u tr|
|00003c60| 79 20 69 74 0a 09 58 09 | 20 2a 2f 0a 09 58 09 09 |y it..X.| */..X..|
|00003c70| 2f 2a 20 74 68 69 73 20 | 69 73 20 74 68 65 20 66 |/* this |is the f|
|00003c80| 6f 6e 74 20 77 65 20 77 | 61 6e 74 20 2a 2f 0a 09 |ont we w|ant */..|
|00003c90| 58 09 69 66 20 28 66 69 | 6e 66 6f 5b 69 5d 2e 66 |X.if (fi|nfo[i].f|
|00003ca0| 5f 70 74 72 20 21 3d 20 | 4e 55 4c 4c 29 7b 0a 09 |_ptr != |NULL){..|
|00003cb0| 58 09 09 2f 2a 20 66 6f | 75 6e 64 20 69 74 2c 20 |X../* fo|und it, |
|00003cc0| 61 6e 64 20 74 68 65 20 | 66 69 6c 65 20 68 61 73 |and the |file has|
|00003cd0| 20 61 6c 72 65 61 64 79 | 20 62 65 65 6e 20 72 65 | already| been re|
|00003ce0| 61 64 20 2a 2f 0a 09 58 | 09 09 63 61 72 74 72 69 |ad */..X|..cartri|
|00003cf0| 64 67 65 20 20 3d 20 30 | 3b 0a 09 58 09 09 63 5f |dge = 0|;..X..c_|
|00003d00| 66 6e 74 5f 69 6e 64 78 | 20 3d 20 69 3b 0a 09 58 |fnt_indx| = i;..X|
|00003d10| 09 09 63 72 6e 74 5f 73 | 69 7a 20 3d 20 77 61 6e |..crnt_s|iz = wan|
|00003d20| 74 5f 73 69 7a 3b 0a 09 | 58 23 69 66 64 65 66 20 |t_siz;..|X#ifdef |
|00003d30| 44 45 42 55 47 0a 09 58 | 09 09 64 69 6e 66 6f 70 |DEBUG..X|..dinfop|
|00003d40| 72 69 6e 74 28 22 6c 6f | 61 64 66 6f 6e 74 22 29 |rint("lo|adfont")|
|00003d50| 3b 0a 09 58 23 65 6e 64 | 69 66 0a 09 58 09 09 72 |;..X#end|if..X..r|
|00003d60| 65 74 75 72 6e 3b 0a 09 | 58 09 7d 0a 09 58 09 2f |eturn;..|X.}..X./|
|00003d70| 2a 0a 09 58 09 20 2a 20 | 66 6f 75 6e 64 20 61 6e |*..X. * |found an|
|00003d80| 20 65 6e 74 72 79 2c 20 | 62 75 74 20 69 74 20 68 | entry, |but it h|
|00003d90| 61 73 6e 27 74 20 62 65 | 65 6e 20 72 65 61 64 20 |asn't be|en read |
|00003da0| 79 65 74 20 2d 20 61 6c | 6c 6f 63 0a 09 58 09 20 |yet - al|loc..X. |
|00003db0| 2a 20 6d 65 6d 20 69 66 | 20 6e 65 65 64 65 64 2c |* mem if| needed,|
|00003dc0| 20 66 69 6c 65 20 67 65 | 74 73 20 72 65 61 64 20 | file ge|ts read |
|00003dd0| 61 74 20 65 6e 64 20 6f | 66 20 65 6c 73 65 20 63 |at end o|f else c|
|00003de0| 6c 61 75 73 65 2e 0a 09 | 58 09 20 2a 2f 0a 09 58 |lause...|X. */..X|
|00003df0| 09 63 61 72 74 72 69 64 | 67 65 20 20 3d 20 30 3b |.cartrid|ge = 0;|
|00003e00| 0a 09 58 09 63 5f 66 6e | 74 5f 69 6e 64 78 20 3d |..X.c_fn|t_indx =|
|00003e10| 20 69 3b 0a 09 58 09 63 | 72 6e 74 5f 73 69 7a 20 | i;..X.c|rnt_siz |
|00003e20| 3d 20 77 61 6e 74 5f 73 | 69 7a 3b 0a 09 58 09 69 |= want_s|iz;..X.i|
|00003e30| 66 20 28 66 69 6e 66 6f | 5b 63 5f 66 6e 74 5f 69 |f (finfo|[c_fnt_i|
|00003e40| 6e 64 78 5d 2e 66 5f 63 | 68 70 20 3d 3d 20 4e 55 |ndx].f_c|hp == NU|
|00003e50| 4c 4c 29 0a 09 58 09 09 | 69 66 20 28 28 66 69 6e |LL)..X..|if ((fin|
|00003e60| 66 6f 5b 63 5f 66 6e 74 | 5f 69 6e 64 78 5d 2e 66 |fo[c_fnt|_indx].f|
|00003e70| 5f 63 68 70 20 3d 20 63 | 68 70 61 6c 6c 6f 63 28 |_chp = c|hpalloc(|
|00003e80| 29 29 20 3d 3d 20 4e 55 | 4c 4c 29 0a 09 58 09 09 |)) == NU|LL)..X..|
|00003e90| 09 65 72 72 6f 72 28 46 | 41 54 41 4c 2c 22 63 6f |.error(F|ATAL,"co|
|00003ea0| 75 6c 64 6e 27 74 20 61 | 6c 6c 6f 63 61 74 65 20 |uldn't a|llocate |
|00003eb0| 6d 65 6d 6f 72 79 22 29 | 3b 0a 09 58 09 09 09 2f |memory")|;..X.../|
|00003ec0| 2a 20 64 6f 65 73 20 6e | 6f 74 20 72 65 74 75 72 |* does n|ot retur|
|00003ed0| 6e 20 2a 2f 0a 09 58 09 | 2f 2a 0a 09 58 09 20 2a |n */..X.|/*..X. *|
|00003ee0| 20 77 65 20 6e 6f 77 20 | 68 61 76 65 20 61 20 73 | we now |have a s|
|00003ef0| 70 6f 74 20 69 6e 20 66 | 69 6e 66 6f 5b 63 5f 66 |pot in f|info[c_f|
|00003f00| 6e 74 5f 69 6e 64 78 5d | 0a 09 58 09 20 2a 20 65 |nt_indx]|..X. * e|
|00003f10| 69 74 68 65 72 20 62 65 | 63 61 75 73 65 20 77 65 |ither be|cause we|
|00003f20| 20 66 6f 75 6e 64 20 61 | 6e 20 65 6e 74 72 79 20 | found a|n entry |
|00003f30| 74 68 61 74 20 68 61 73 | 6e 27 74 20 0a 09 58 09 |that has|n't ..X.|
|00003f40| 20 2a 20 62 65 65 6e 20 | 72 65 61 64 20 69 6e 2c | * been |read in,|
|00003f50| 0a 09 58 09 20 2a 20 6f | 72 20 62 65 63 61 75 73 |..X. * o|r becaus|
|00003f60| 65 20 77 65 20 72 65 70 | 6c 61 63 65 64 20 61 6e |e we rep|laced an|
|00003f70| 20 6f 6c 64 20 65 6e 74 | 72 79 2e 20 73 6f 20 6e | old ent|ry. so n|
|00003f80| 6f 77 0a 09 58 09 20 2a | 20 77 65 20 72 65 61 64 |ow..X. *| we read|
|00003f90| 20 69 6e 20 74 68 65 20 | 69 6e 66 6f 72 6d 61 74 | in the |informat|
|00003fa0| 69 6f 6e 20 66 72 6f 6d | 20 74 68 65 20 66 6f 6e |ion from| the fon|
|00003fb0| 74 20 66 69 6c 65 2e 0a | 09 58 09 20 2a 2f 0a 09 |t file..|.X. */..|
|00003fc0| 58 09 09 0a 09 58 0a 09 | 58 09 73 70 72 69 6e 74 |X....X..|X.sprint|
|00003fd0| 66 28 66 69 6c 65 6e 61 | 6d 65 2c 20 22 25 73 2f |f(filena|me, "%s/|
|00003fe0| 25 73 22 2c 20 64 66 6c | 74 64 69 72 2c 20 74 6d |%s", dfl|tdir, tm|
|00003ff0| 70 6e 61 6d 65 29 3b 0a | 09 58 09 66 69 6e 66 6f |pname);.|.X.finfo|
|00004000| 5b 63 5f 66 6e 74 5f 69 | 6e 64 78 5d 2e 66 5f 70 |[c_fnt_i|ndx].f_p|
|00004010| 74 72 20 3d 20 66 6f 70 | 65 6e 20 28 66 69 6c 65 |tr = fop|en (file|
|00004020| 6e 61 6d 65 2c 20 22 72 | 22 29 3b 0a 09 58 09 69 |name, "r|");..X.i|
|00004030| 66 20 28 66 69 6e 66 6f | 5b 63 5f 66 6e 74 5f 69 |f (finfo|[c_fnt_i|
|00004040| 6e 64 78 5d 2e 66 5f 70 | 74 72 20 3d 3d 20 4e 55 |ndx].f_p|tr == NU|
|00004050| 4c 4c 29 20 7b 0a 09 58 | 09 09 65 72 72 6f 72 20 |LL) {..X|..error |
|00004060| 28 21 46 41 54 41 4c 2c | 20 22 66 6f 6e 74 20 66 |(!FATAL,| "font f|
|00004070| 69 6c 65 20 2d 20 63 61 | 6e 27 74 20 6f 70 65 6e |ile - ca|n't open|
|00004080| 20 25 73 22 2c 20 66 69 | 6c 65 6e 61 6d 65 29 3b | %s", fi|lename);|
|00004090| 0a 09 58 09 09 66 69 6e | 66 6f 5b 63 5f 66 6e 74 |..X..fin|fo[c_fnt|
|000040a0| 5f 69 6e 64 78 5d 2e 66 | 5f 6e 61 6d 65 5b 30 5d |_indx].f|_name[0]|
|000040b0| 20 3d 20 27 5c 30 27 3b | 0a 09 58 09 09 63 5f 66 | = '\0';|..X..c_f|
|000040c0| 6e 74 5f 69 6e 64 78 20 | 3d 20 30 3b 0a 09 58 23 |nt_indx |= 0;..X#|
|000040d0| 69 66 64 65 66 20 44 45 | 42 55 47 0a 09 58 09 09 |ifdef DE|BUG..X..|
|000040e0| 64 69 6e 66 6f 70 72 69 | 6e 74 28 22 6c 6f 61 64 |dinfopri|nt("load|
|000040f0| 66 6f 6e 74 22 29 3b 0a | 09 58 23 65 6e 64 69 66 |font");.|.X#endif|
|00004100| 0a 09 58 09 09 72 65 74 | 75 72 6e 3b 0a 09 58 09 |..X..ret|urn;..X.|
|00004110| 7d 0a 09 58 23 69 66 64 | 65 66 20 44 45 42 55 47 |}..X#ifd|ef DEBUG|
|00004120| 0a 09 58 09 64 70 72 69 | 6e 74 66 20 28 73 74 64 |..X.dpri|ntf (std|
|00004130| 65 72 72 2c 20 22 66 6f | 6e 74 20 66 69 6c 65 20 |err, "fo|nt file |
|00004140| 25 73 5c 6e 22 2c 20 66 | 69 6c 65 6e 61 6d 65 29 |%s\n", f|ilename)|
|00004150| 3b 0a 09 58 23 65 6e 64 | 69 66 0a 09 58 0a 09 58 |;..X#end|if..X..X|
|00004160| 09 66 72 65 61 64 20 28 | 26 66 68 2c 20 73 69 7a |.fread (|&fh, siz|
|00004170| 65 6f 66 20 28 73 74 72 | 75 63 74 20 66 5f 68 65 |eof (str|uct f_he|
|00004180| 61 64 65 72 29 2c 20 31 | 2c 20 66 69 6e 66 6f 5b |ader), 1|, finfo[|
|00004190| 63 5f 66 6e 74 5f 69 6e | 64 78 5d 2e 66 5f 70 74 |c_fnt_in|dx].f_pt|
|000041a0| 72 29 3b 0a 09 58 09 2f | 2a 0a 09 58 09 20 2a 20 |r);..X./|*..X. * |
|000041b0| 6e 6f 74 20 75 73 65 64 | 20 61 74 20 74 68 65 20 |not used| at the |
|000041c0| 74 69 6d 65 2e 20 6d 61 | 79 20 6e 65 65 64 20 69 |time. ma|y need i|
|000041d0| 74 20 6c 61 74 65 72 20 | 6f 6e 20 73 69 6e 63 65 |t later |on since|
|000041e0| 20 77 65 20 68 61 76 65 | 0a 09 58 09 20 2a 20 74 | we have|..X. * t|
|000041f0| 6f 20 64 69 73 74 69 6e | 67 75 69 73 68 20 62 65 |o distin|guish be|
|00004200| 74 77 65 65 6e 20 62 65 | 72 6b 65 6c 65 79 20 76 |tween be|rkeley v|
|00004210| 66 6f 6e 74 20 61 6e 64 | 20 64 77 62 20 72 61 73 |font and| dwb ras|
|00004220| 74 69 31 30 0a 09 58 09 | 20 2a 20 66 69 6c 65 73 |ti10..X.| * files|
|00004230| 2c 20 73 6f 20 6d 69 67 | 68 74 20 73 74 75 66 66 |, so mig|ht stuff|
|00004240| 20 61 20 64 69 66 66 65 | 72 65 6e 74 20 6d 61 67 | a diffe|rent mag|
|00004250| 69 63 20 6e 75 6d 62 65 | 72 20 61 6e 64 20 73 74 |ic numbe|r and st|
|00004260| 69 63 6b 0a 09 58 09 20 | 2a 20 61 6e 20 69 6e 64 |ick..X. |* an ind|
|00004270| 69 63 61 74 6f 72 20 69 | 6e 74 6f 20 74 68 65 20 |icator i|nto the |
|00004280| 66 69 6e 66 6f 20 73 74 | 72 75 63 74 75 72 65 2e |finfo st|ructure.|
|00004290| 0a 09 58 09 20 2a 2f 0a | 09 58 09 66 72 65 61 64 |..X. */.|.X.fread|
|000042a0| 20 28 66 69 6e 66 6f 5b | 63 5f 66 6e 74 5f 69 6e | (finfo[|c_fnt_in|
|000042b0| 64 78 5d 2e 66 5f 63 68 | 70 2c 0a 09 58 09 09 09 |dx].f_ch|p,..X...|
|000042c0| 73 69 7a 65 6f 66 20 28 | 73 74 72 75 63 74 20 63 |sizeof (|struct c|
|000042d0| 5f 70 61 72 61 6d 29 2c | 20 32 35 36 2c 20 66 69 |_param),| 256, fi|
|000042e0| 6e 66 6f 5b 63 5f 66 6e | 74 5f 69 6e 64 78 5d 2e |nfo[c_fn|t_indx].|
|000042f0| 66 5f 70 74 72 29 3b 0a | 09 58 09 63 72 6e 74 5f |f_ptr);.|.X.crnt_|
|00004300| 73 69 7a 20 3d 20 77 61 | 6e 74 5f 73 69 7a 3b 0a |siz = wa|nt_siz;.|
|00004310| 09 58 23 69 66 64 65 66 | 20 44 45 42 55 47 0a 09 |.X#ifdef| DEBUG..|
|00004320| 58 09 64 69 6e 66 6f 70 | 72 69 6e 74 28 22 6c 6f |X.dinfop|rint("lo|
|00004330| 61 64 66 6f 6e 74 22 29 | 3b 0a 09 58 23 65 6e 64 |adfont")|;..X#end|
|00004340| 69 66 0a 09 58 7d 0a 09 | 58 0a 09 58 0a 09 58 0a |if..X}..|X..X..X.|
|00004350| 09 58 0a 09 58 63 68 61 | 72 09 64 65 76 6e 61 6d |.X..Xcha|r.devnam|
|00004360| 65 5b 32 30 5d 09 3d 20 | 22 68 70 32 36 38 36 41 |e[20].= |"hp2686A|
|00004370| 22 3b 0a 09 58 09 2f 2a | 20 28 4c 61 73 65 72 6a |";..X./*| (Laserj|
|00004380| 65 74 29 20 2d 20 6e 6f | 74 20 75 73 65 64 20 61 |et) - no|t used a|
|00004390| 6e 79 77 68 65 72 65 20 | 2a 2f 0a 09 58 69 6e 74 |nywhere |*/..Xint|
|000043a0| 20 68 70 6f 73 2c 20 76 | 70 6f 73 3b 0a 09 58 0a | hpos, v|pos;..X.|
|000043b0| 09 58 74 5f 69 6e 69 74 | 28 72 65 69 6e 69 74 29 |.Xt_init|(reinit)|
|000043c0| 09 2f 2a 20 69 6e 69 74 | 69 61 6c 69 7a 65 20 64 |./* init|ialize d|
|000043d0| 65 76 69 63 65 20 2a 2f | 0a 09 58 69 6e 74 20 72 |evice */|..Xint r|
|000043e0| 65 69 6e 69 74 3b 0a 09 | 58 7b 0a 09 58 0a 09 58 |einit;..|X{..X..X|
|000043f0| 09 66 66 6c 75 73 68 28 | 73 74 64 6f 75 74 29 3b |.fflush(|stdout);|
|00004400| 0a 09 58 09 68 70 6f 73 | 20 3d 20 76 70 6f 73 20 |..X.hpos| = vpos |
|00004410| 3d 20 30 3b 0a 09 58 7d | 0a 09 58 0a 09 58 74 5f |= 0;..X}|..X..Xt_|
|00004420| 70 61 67 65 28 6e 29 09 | 2f 2a 20 64 6f 20 77 68 |page(n).|/* do wh|
|00004430| 61 74 65 76 65 72 20 6e | 65 77 20 70 61 67 65 20 |atever n|ew page |
|00004440| 66 75 6e 63 74 69 6f 6e | 73 20 2a 2f 0a 09 58 7b |function|s */..X{|
|00004450| 0a 09 58 09 68 70 6f 73 | 20 3d 20 76 70 6f 73 20 |..X.hpos| = vpos |
|00004460| 3d 20 30 3b 0a 09 58 09 | 69 66 20 28 6f 75 74 70 |= 0;..X.|if (outp|
|00004470| 75 74 20 3d 3d 20 30 29 | 20 7b 0a 09 58 09 09 6f |ut == 0)| {..X..o|
|00004480| 75 74 70 75 74 20 3d 20 | 69 6e 5f 6f 6c 69 73 74 |utput = |in_olist|
|00004490| 28 6e 29 3b 0a 09 58 09 | 09 74 5f 69 6e 69 74 28 |(n);..X.|.t_init(|
|000044a0| 31 29 3b 0a 09 58 09 09 | 72 65 74 75 72 6e 3b 0a |1);..X..|return;.|
|000044b0| 09 58 09 7d 0a 09 58 09 | 70 75 74 70 61 67 65 28 |.X.}..X.|putpage(|
|000044c0| 29 3b 0a 09 58 09 66 66 | 6c 75 73 68 28 73 74 64 |);..X.ff|lush(std|
|000044d0| 6f 75 74 29 3b 0a 09 58 | 7d 0a 09 58 0a 09 58 70 |out);..X|}..X..Xp|
|000044e0| 75 74 70 61 67 65 28 29 | 0a 09 58 7b 0a 09 58 09 |utpage()|..X{..X.|
|000044f0| 70 75 74 63 68 61 72 28 | 27 5c 66 27 29 3b 0a 09 |putchar(|'\f');..|
|00004500| 58 7d 0a 09 58 0a 09 58 | 74 5f 6e 65 77 6c 69 6e |X}..X..X|t_newlin|
|00004510| 65 28 29 09 2f 2a 20 64 | 6f 20 77 68 61 74 65 76 |e()./* d|o whatev|
|00004520| 65 72 20 66 6f 72 20 74 | 68 65 20 65 6e 64 20 6f |er for t|he end o|
|00004530| 66 20 61 20 6c 69 6e 65 | 20 2a 2f 0a 09 58 7b 0a |f a line| */..X{.|
|00004540| 09 58 09 70 75 74 63 68 | 61 72 28 27 5c 6e 27 29 |.X.putch|ar('\n')|
|00004550| 3b 0a 09 58 09 2f 2a 0a | 09 58 09 20 2a 20 6e 6f |;..X./*.|.X. * no|
|00004560| 74 20 72 65 61 6c 6c 79 | 20 6e 65 65 64 65 64 2c |t really| needed,|
|00004570| 20 62 75 74 20 67 6f 6f | 64 20 66 6f 72 20 62 72 | but goo|d for br|
|00004580| 65 61 6b 69 6e 67 20 75 | 70 0a 09 58 09 20 2a 20 |eaking u|p..X. * |
|00004590| 6f 75 74 70 75 74 20 66 | 69 6c 65 20 28 64 65 62 |output f|ile (deb|
|000045a0| 75 67 67 69 6e 67 2c 20 | 6d 6f 64 69 66 79 69 6e |ugging, |modifyin|
|000045b0| 67 29 2e 0a 09 58 09 20 | 2a 2f 0a 09 58 09 68 70 |g)...X. |*/..X.hp|
|000045c0| 6f 73 20 3d 20 30 3b 0a | 09 58 7d 0a 09 58 0a 09 |os = 0;.|.X}..X..|
|000045d0| 58 74 5f 73 69 7a 65 28 | 6e 29 0a 09 58 69 6e 74 |Xt_size(|n)..Xint|
|000045e0| 20 6e 3b 0a 09 58 7b 0a | 09 58 09 72 65 74 75 72 | n;..X{.|.X.retur|
|000045f0| 6e 28 6e 29 3b 0a 09 58 | 7d 0a 09 58 0a 09 58 74 |n(n);..X|}..X..Xt|
|00004600| 5f 66 6f 6e 74 28 73 29 | 09 2f 2a 20 63 6f 6e 76 |_font(s)|./* conv|
|00004610| 65 72 74 20 73 74 72 69 | 6e 67 20 74 6f 20 69 6e |ert stri|ng to in|
|00004620| 74 65 72 6e 61 6c 20 66 | 6f 6e 74 20 6e 75 6d 62 |ternal f|ont numb|
|00004630| 65 72 20 2a 2f 0a 09 58 | 63 68 61 72 20 2a 73 3b |er */..X|char *s;|
|00004640| 0a 09 58 7b 0a 09 58 09 | 2f 2a 20 77 69 6c 6c 20 |..X{..X.|/* will |
|00004650| 68 61 76 65 20 74 6f 20 | 63 68 6f 6f 73 65 20 77 |have to |choose w|
|00004660| 68 69 63 68 20 66 6f 6e | 74 20 74 6f 20 72 65 61 |hich fon|t to rea|
|00004670| 64 0a 09 58 09 69 6e 74 | 6f 20 74 68 65 20 74 61 |d..X.int|o the ta|
|00004680| 62 6c 65 73 20 73 6f 20 | 62 65 20 63 61 72 65 66 |bles so |be caref|
|00004690| 75 6c 20 68 65 72 65 20 | 2a 2f 0a 09 58 09 72 65 |ul here |*/..X.re|
|000046a0| 74 75 72 6e 28 61 74 6f | 69 28 73 29 29 3b 0a 09 |turn(ato|i(s));..|
|000046b0| 58 7d 0a 09 58 0a 09 58 | 74 5f 74 65 78 74 28 73 |X}..X..X|t_text(s|
|000046c0| 29 09 2f 2a 20 70 72 69 | 6e 74 20 73 74 72 69 6e |)./* pri|nt strin|
|000046d0| 67 20 73 20 61 73 20 74 | 65 78 74 20 2a 2f 0a 09 |g s as t|ext */..|
|000046e0| 58 63 68 61 72 20 2a 73 | 3b 0a 09 58 7b 0a 09 58 |Xchar *s|;..X{..X|
|000046f0| 09 69 6e 74 20 63 2c 20 | 77 73 70 63 3b 0a 09 58 |.int c, |wspc;..X|
|00004700| 09 63 68 61 72 20 73 74 | 72 5b 31 30 30 5d 3b 0a |.char st|r[100];.|
|00004710| 09 58 0a 09 58 09 69 66 | 20 28 21 6f 75 74 70 75 |.X..X.if| (!outpu|
|00004720| 74 29 0a 09 58 09 09 72 | 65 74 75 72 6e 3b 0a 09 |t)..X..r|eturn;..|
|00004730| 58 09 77 68 69 6c 65 20 | 28 28 63 20 3d 20 2a 73 |X.while |((c = *s|
|00004740| 2b 2b 29 20 21 3d 20 27 | 5c 6e 27 29 20 7b 0a 09 |++) != '|\n') {..|
|00004750| 58 09 09 69 66 20 28 63 | 20 3d 3d 20 27 5c 5c 27 |X..if (c| == '\\'|
|00004760| 29 20 7b 0a 09 58 09 09 | 09 73 77 69 74 63 68 20 |) {..X..|.switch |
|00004770| 28 63 20 3d 20 2a 73 2b | 2b 29 20 7b 0a 09 58 09 |(c = *s+|+) {..X.|
|00004780| 09 09 63 61 73 65 20 27 | 5c 5c 27 3a 0a 09 58 09 |..case '|\\':..X.|
|00004790| 09 09 63 61 73 65 20 27 | 65 27 3a 0a 09 58 09 09 |..case '|e':..X..|
|000047a0| 09 09 70 75 74 31 28 27 | 5c 5c 27 29 3b 0a 09 58 |..put1('|\\');..X|
|000047b0| 09 09 09 09 62 72 65 61 | 6b 3b 0a 09 58 09 09 09 |....brea|k;..X...|
|000047c0| 63 61 73 65 20 27 28 27 | 3a 0a 09 58 09 09 09 09 |case '('|:..X....|
|000047d0| 73 74 72 5b 30 5d 20 3d | 20 2a 73 2b 2b 3b 0a 09 |str[0] =| *s++;..|
|000047e0| 58 09 09 09 09 73 74 72 | 5b 31 5d 20 3d 20 2a 73 |X....str|[1] = *s|
|000047f0| 2b 2b 3b 0a 09 58 09 09 | 09 09 73 74 72 5b 32 5d |++;..X..|..str[2]|
|00004800| 20 3d 20 27 5c 30 27 3b | 0a 09 58 09 09 09 09 70 | = '\0';|..X....p|
|00004810| 75 74 31 73 28 73 74 72 | 29 3b 0a 09 58 09 09 09 |ut1s(str|);..X...|
|00004820| 09 62 72 65 61 6b 3b 0a | 09 58 09 09 09 7d 0a 09 |.break;.|.X...}..|
|00004830| 58 09 09 7d 20 65 6c 73 | 65 20 7b 0a 09 58 09 09 |X..} els|e {..X..|
|00004840| 09 70 75 74 31 28 63 29 | 3b 0a 09 58 09 09 7d 0a |.put1(c)|;..X..}.|
|00004850| 09 58 09 09 77 73 70 63 | 20 3d 20 63 72 6e 74 5f |.X..wspc| = crnt_|
|00004860| 73 69 7a 2a 33 30 30 2e | 2f 37 32 2e 3b 20 2f 2a |siz*300.|/72.; /*|
|00004870| 20 61 6e 20 27 65 6d 27 | 73 20 77 6f 72 74 68 3f | an 'em'|s worth?|
|00004880| 20 2a 2f 0a 09 58 09 09 | 68 6d 6f 74 28 77 73 70 | */..X..|hmot(wsp|
|00004890| 63 29 3b 0a 09 58 09 7d | 0a 09 58 7d 0a 09 58 0a |c);..X.}|..X}..X.|
|000048a0| 09 58 74 5f 72 65 73 65 | 74 28 63 29 0a 09 58 7b |.Xt_rese|t(c)..X{|
|000048b0| 0a 09 58 0a 09 58 09 6f | 75 74 70 75 74 20 3d 20 |..X..X.o|utput = |
|000048c0| 31 3b 0a 09 58 09 69 66 | 20 28 63 20 3d 3d 20 27 |1;..X.if| (c == '|
|000048d0| 73 27 29 7b 0a 09 58 09 | 09 70 72 69 6e 74 66 28 |s'){..X.|.printf(|
|000048e0| 22 5c 30 33 33 45 22 29 | 3b 0a 09 58 09 09 74 5f |"\033E")|;..X..t_|
|000048f0| 70 61 67 65 28 39 39 39 | 39 29 3b 0a 09 58 09 09 |page(999|9);..X..|
|00004900| 7d 0a 09 58 09 66 66 6c | 75 73 68 28 73 74 64 6f |}..X.ffl|ush(stdo|
|00004910| 75 74 29 3b 0a 09 58 7d | 0a 09 58 0a 09 58 74 5f |ut);..X}|..X..Xt_|
|00004920| 74 72 61 69 6c 65 72 28 | 29 0a 09 58 7b 0a 09 58 |trailer(|)..X{..X|
|00004930| 7d 0a 09 58 0a 09 58 68 | 67 6f 74 6f 28 6e 29 0a |}..X..Xh|goto(n).|
|00004940| 09 58 7b 0a 09 58 09 68 | 70 6f 73 20 3d 20 6e 3b |.X{..X.h|pos = n;|
|00004950| 09 2f 2a 20 74 68 69 73 | 20 69 73 20 77 68 65 72 |./* this| is wher|
|00004960| 65 20 77 65 20 77 61 6e | 74 20 74 6f 20 62 65 20 |e we wan|t to be |
|00004970| 2a 2f 0a 09 58 09 09 09 | 2f 2a 20 62 65 66 6f 72 |*/..X...|/* befor|
|00004980| 65 20 70 72 69 6e 74 69 | 6e 67 20 61 20 63 68 61 |e printi|ng a cha|
|00004990| 72 61 63 74 65 72 2c 20 | 2a 2f 0a 09 58 09 09 09 |racter, |*/..X...|
|000049a0| 2f 2a 20 68 61 76 65 20 | 74 6f 20 6d 61 6b 65 20 |/* have |to make |
|000049b0| 73 75 72 65 20 69 74 27 | 73 20 74 72 75 65 20 2a |sure it'|s true *|
|000049c0| 2f 0a 09 58 7d 0a 09 58 | 0a 09 58 68 6d 6f 74 28 |/..X}..X|..Xhmot(|
|000049d0| 6e 29 09 2f 2a 20 67 65 | 6e 65 72 61 74 65 20 6e |n)./* ge|nerate n|
|000049e0| 20 75 6e 69 74 73 20 6f | 66 20 68 6f 72 69 7a 6f | units o|f horizo|
|000049f0| 6e 74 61 6c 20 6d 6f 74 | 69 6f 6e 20 2a 2f 0a 09 |ntal mot|ion */..|
|00004a00| 58 69 6e 74 20 6e 3b 0a | 09 58 7b 0a 09 58 09 68 |Xint n;.|.X{..X.h|
|00004a10| 70 6f 73 20 2b 3d 20 6e | 3b 0a 09 58 7d 0a 09 58 |pos += n|;..X}..X|
|00004a20| 0a 09 58 68 66 6c 75 73 | 68 28 29 09 2f 2a 20 61 |..Xhflus|h()./* a|
|00004a30| 63 74 75 61 6c 20 68 6f | 72 69 7a 6f 6e 74 61 6c |ctual ho|rizontal|
|00004a40| 20 6f 75 74 70 75 74 20 | 6f 63 63 75 72 73 20 68 | output |occurs h|
|00004a50| 65 72 65 20 2a 2f 0a 09 | 58 7b 0a 09 58 09 70 72 |ere */..|X{..X.pr|
|00004a60| 69 6e 74 66 28 22 5c 30 | 33 33 26 61 25 64 48 22 |intf("\0|33&a%dH"|
|00004a70| 2c 68 70 6f 73 29 3b 0a | 09 58 7d 0a 09 58 0a 09 |,hpos);.|.X}..X..|
|00004a80| 58 76 67 6f 74 6f 28 6e | 29 0a 09 58 7b 0a 09 58 |Xvgoto(n|)..X{..X|
|00004a90| 09 73 74 61 74 69 63 20 | 69 6e 74 20 6f 6c 64 76 |.static |int oldv|
|00004aa0| 70 6f 73 20 3d 20 30 3b | 0a 09 58 0a 09 58 09 76 |pos = 0;|..X..X.v|
|00004ab0| 70 6f 73 20 3d 20 6e 3b | 0a 09 58 09 69 66 20 28 |pos = n;|..X.if (|
|00004ac0| 76 70 6f 73 20 21 3d 20 | 6f 6c 64 76 70 6f 73 29 |vpos != |oldvpos)|
|00004ad0| 7b 0a 09 58 09 09 70 72 | 69 6e 74 66 28 22 5c 30 |{..X..pr|intf("\0|
|00004ae0| 33 33 26 61 25 64 56 22 | 2c 76 70 6f 73 29 3b 0a |33&a%dV"|,vpos);.|
|00004af0| 09 58 09 09 6f 6c 64 76 | 70 6f 73 20 3d 20 76 70 |.X..oldv|pos = vp|
|00004b00| 6f 73 3b 0a 09 58 09 09 | 7d 0a 09 58 7d 0a 09 58 |os;..X..|}..X}..X|
|00004b10| 0a 09 58 76 6d 6f 74 28 | 6e 29 09 2f 2a 20 67 65 |..Xvmot(|n)./* ge|
|00004b20| 6e 65 72 61 74 65 20 6e | 20 75 6e 69 74 73 20 6f |nerate n| units o|
|00004b30| 66 20 76 65 72 74 69 63 | 61 6c 20 6d 6f 74 69 6f |f vertic|al motio|
|00004b40| 6e 20 2a 2f 0a 09 58 69 | 6e 74 20 6e 3b 0a 09 58 |n */..Xi|nt n;..X|
|00004b50| 7b 0a 09 58 09 76 67 6f | 74 6f 28 76 70 6f 73 20 |{..X.vgo|to(vpos |
|00004b60| 2b 20 6e 29 3b 09 2f 2a | 20 69 67 6e 6f 72 65 73 |+ n);./*| ignores|
|00004b70| 20 72 6f 75 6e 64 69 6e | 67 20 2a 2f 0a 09 58 7d | roundin|g */..X}|
|00004b80| 0a 09 58 0a 09 58 70 75 | 74 31 73 28 73 29 09 2f |..X..Xpu|t1s(s)./|
|00004b90| 2a 20 73 20 69 73 20 61 | 20 66 75 6e 6e 79 20 63 |* s is a| funny c|
|00004ba0| 68 61 72 20 6e 61 6d 65 | 20 2a 2f 0a 09 58 63 68 |har name| */..Xch|
|00004bb0| 61 72 20 2a 73 3b 0a 09 | 58 7b 0a 09 58 09 72 65 |ar *s;..|X{..X.re|
|00004bc0| 67 69 73 74 65 72 20 69 | 6e 74 20 69 2c 20 6a 3b |gister i|nt i, j;|
|00004bd0| 0a 09 58 09 72 65 67 69 | 73 74 65 72 20 63 68 61 |..X.regi|ster cha|
|00004be0| 72 20 2a 70 3b 0a 09 58 | 09 65 78 74 65 72 6e 20 |r *p;..X|.extern |
|00004bf0| 63 68 61 72 20 2a 61 73 | 63 74 61 62 5b 5d 3b 0a |char *as|ctab[];.|
|00004c00| 09 58 09 09 2f 2a 20 69 | 73 20 6f 6e 6c 79 20 67 |.X../* i|s only g|
|00004c10| 6f 6f 64 20 66 6f 72 20 | 74 68 65 20 66 6f 6e 74 |ood for |the font|
|00004c20| 73 20 6f 6e 20 74 68 65 | 20 63 61 72 74 72 69 64 |s on the| cartrid|
|00004c30| 67 65 0a 09 58 09 09 20 | 2a 20 6e 65 65 64 20 61 |ge..X.. |* need a|
|00004c40| 20 63 6f 64 65 74 61 62 | 6c 65 20 66 6f 72 20 74 | codetab|le for t|
|00004c50| 68 65 20 72 61 73 74 65 | 72 20 64 75 6d 70 73 2e |he raste|r dumps.|
|00004c60| 0a 09 58 09 09 20 2a 2f | 0a 09 58 09 65 78 74 65 |..X.. */|..X.exte|
|00004c70| 72 6e 20 63 68 61 72 20 | 2a 73 70 65 63 74 61 62 |rn char |*spectab|
|00004c80| 5b 5d 3b 0a 09 58 09 09 | 2f 2a 20 6e 61 6d 65 73 |[];..X..|/* names|
|00004c90| 20 6f 66 20 63 68 61 72 | 73 20 6f 6e 20 53 20 66 | of char|s on S f|
|00004ca0| 6f 6e 74 2d 20 69 6e 64 | 65 78 20 6f 66 20 6e 61 |ont- ind|ex of na|
|00004cb0| 6d 65 20 3d 20 69 6e 64 | 65 78 20 6f 66 0a 09 58 |me = ind|ex of..X|
|00004cc0| 09 09 20 2a 20 63 5f 70 | 61 72 61 6d 20 73 6f 20 |.. * c_p|aram so |
|00004cd0| 65 61 73 79 20 74 6f 20 | 66 69 6e 64 20 72 61 73 |easy to |find ras|
|00004ce0| 74 65 72 20 6d 61 70 0a | 09 58 09 09 20 2a 2f 0a |ter map.|.X.. */.|
|00004cf0| 09 58 09 73 74 61 74 69 | 63 20 63 68 61 72 20 70 |.X.stati|c char p|
|00004d00| 72 65 76 5b 31 30 5d 20 | 3d 20 22 22 3b 0a 09 58 |rev[10] |= "";..X|
|00004d10| 09 73 74 61 74 69 63 20 | 69 6e 74 20 70 72 65 76 |.static |int prev|
|00004d20| 69 3b 0a 09 58 09 73 74 | 61 74 69 63 20 63 68 61 |i;..X.st|atic cha|
|00004d30| 72 20 70 72 65 76 73 5b | 31 30 5d 20 3d 20 22 22 |r prevs[|10] = ""|
|00004d40| 3b 0a 09 58 09 73 74 61 | 74 69 63 20 69 6e 74 20 |;..X.sta|tic int |
|00004d50| 70 72 65 76 73 69 3b 0a | 09 58 09 63 68 61 72 20 |prevsi;.|.X.char |
|00004d60| 74 6d 70 6e 61 6d 65 5b | 33 30 5d 3b 0a 09 58 09 |tmpname[|30];..X.|
|00004d70| 69 6e 74 20 6f 5f 66 6e | 74 5f 69 6e 64 78 3b 0a |int o_fn|t_indx;.|
|00004d80| 09 58 09 69 6e 74 20 6f | 5f 63 61 72 74 72 69 64 |.X.int o|_cartrid|
|00004d90| 67 65 3b 0a 09 58 0a 09 | 58 09 69 66 20 28 21 6f |ge;..X..|X.if (!o|
|00004da0| 75 74 70 75 74 29 0a 09 | 58 09 09 72 65 74 75 72 |utput)..|X..retur|
|00004db0| 6e 3b 0a 09 58 0a 09 58 | 23 69 66 64 65 66 20 44 |n;..X..X|#ifdef D|
|00004dc0| 45 42 55 47 0a 09 58 09 | 64 69 6e 66 6f 70 72 69 |EBUG..X.|dinfopri|
|00004dd0| 6e 74 28 22 70 75 74 31 | 73 20 65 6e 74 65 72 65 |nt("put1|s entere|
|00004de0| 64 22 29 3b 0a 09 58 23 | 65 6e 64 69 66 0a 09 58 |d");..X#|endif..X|
|00004df0| 09 69 66 20 28 73 74 72 | 63 6d 70 28 73 2c 20 70 |.if (str|cmp(s, p|
|00004e00| 72 65 76 29 20 21 3d 20 | 30 29 20 7b 0a 09 58 09 |rev) != |0) {..X.|
|00004e10| 09 70 72 65 76 69 20 3d | 20 2d 31 3b 0a 09 58 09 |.previ =| -1;..X.|
|00004e20| 09 66 6f 72 20 28 69 20 | 3d 20 30 3b 20 61 73 63 |.for (i |= 0; asc|
|00004e30| 74 61 62 5b 69 5d 20 21 | 3d 20 30 3b 20 69 20 2b |tab[i] !|= 0; i +|
|00004e40| 3d 20 32 29 0a 09 58 09 | 09 09 69 66 20 28 73 74 |= 2)..X.|..if (st|
|00004e50| 72 63 6d 70 28 61 73 63 | 74 61 62 5b 69 5d 2c 20 |rcmp(asc|tab[i], |
|00004e60| 73 29 20 3d 3d 20 30 29 | 20 7b 0a 09 58 09 09 09 |s) == 0)| {..X...|
|00004e70| 09 73 74 72 63 70 79 28 | 70 72 65 76 2c 20 73 29 |.strcpy(|prev, s)|
|00004e80| 3b 0a 09 58 09 09 09 09 | 70 72 65 76 69 20 3d 20 |;..X....|previ = |
|00004e90| 69 3b 0a 09 58 09 09 09 | 09 62 72 65 61 6b 3b 0a |i;..X...|.break;.|
|00004ea0| 09 58 09 09 09 7d 0a 09 | 58 09 7d 0a 09 58 09 69 |.X...}..|X.}..X.i|
|00004eb0| 66 20 28 70 72 65 76 69 | 20 3e 3d 20 30 29 20 7b |f (previ| >= 0) {|
|00004ec0| 0a 09 58 09 09 68 66 6c | 75 73 68 28 29 3b 20 76 |..X..hfl|ush(); v|
|00004ed0| 67 6f 74 6f 28 76 70 6f | 73 29 3b 0a 09 58 09 09 |goto(vpo|s);..X..|
|00004ee0| 2f 2a 0a 09 58 09 09 20 | 2a 20 73 68 6f 75 6c 64 |/*..X.. |* should|
|00004ef0| 20 6f 6e 6c 79 20 75 73 | 65 20 74 68 69 73 20 66 | only us|e this f|
|00004f00| 6f 72 20 74 68 65 20 63 | 61 72 74 72 69 64 67 65 |or the c|artridge|
|00004f10| 20 66 6f 6e 74 73 2c 20 | 62 75 74 20 73 69 6e 63 | fonts, |but sinc|
|00004f20| 65 0a 09 58 09 09 20 2a | 20 64 6f 6e 27 74 20 68 |e..X.. *| don't h|
|00004f30| 61 76 65 20 61 20 63 6f | 64 65 74 61 62 6c 65 20 |ave a co|detable |
|00004f40| 79 65 74 20 66 6f 72 20 | 74 68 65 20 72 61 73 74 |yet for |the rast|
|00004f50| 65 72 73 2c 20 75 73 65 | 20 74 68 69 73 0a 09 58 |ers, use| this..X|
|00004f60| 09 09 20 2a 20 61 6e 79 | 77 61 79 20 2d 20 69 74 |.. * any|way - it|
|00004f70| 20 77 69 6c 6c 20 63 6f | 6d 65 20 6f 75 74 20 69 | will co|me out i|
|00004f80| 6e 20 74 68 65 20 77 72 | 6f 6e 67 20 66 6f 6e 74 |n the wr|ong font|
|00004f90| 20 61 6e 64 20 73 69 7a | 65 0a 09 58 09 09 20 2a | and siz|e..X.. *|
|00004fa0| 20 62 75 74 20 69 74 27 | 73 20 61 74 20 6c 65 61 | but it'|s at lea|
|00004fb0| 73 74 20 76 69 65 77 61 | 62 6c 65 2e 0a 09 58 09 |st viewa|ble...X.|
|00004fc0| 09 20 2a 2f 0a 09 58 09 | 09 66 6f 72 20 28 70 20 |. */..X.|.for (p |
|00004fd0| 3d 20 61 73 63 74 61 62 | 5b 70 72 65 76 69 2b 31 |= asctab|[previ+1|
|00004fe0| 5d 3b 20 2a 70 3b 20 70 | 2b 2b 29 0a 09 58 09 09 |]; *p; p|++)..X..|
|00004ff0| 09 70 75 74 63 28 2a 70 | 2c 20 73 74 64 6f 75 74 |.putc(*p|, stdout|
|00005000| 29 3b 0a 09 58 0a 09 58 | 23 69 66 64 65 66 20 44 |);..X..X|#ifdef D|
|00005010| 45 42 55 47 0a 09 58 09 | 09 64 70 72 69 6e 74 66 |EBUG..X.|.dprintf|
|00005020| 28 73 74 64 65 72 72 2c | 22 61 73 63 69 69 20 63 |(stderr,|"ascii c|
|00005030| 68 61 72 61 63 74 65 72 | 20 25 73 2c 20 66 6f 6e |haracter| %s, fon|
|00005040| 74 20 69 73 20 25 73 5c | 6e 22 2c 0a 09 58 09 09 |t is %s\|n",..X..|
|00005050| 09 09 61 73 63 74 61 62 | 5b 70 72 65 76 69 5d 2c |..asctab|[previ],|
|00005060| 20 66 69 6e 66 6f 5b 63 | 5f 66 6e 74 5f 69 6e 64 | finfo[c|_fnt_ind|
|00005070| 78 5d 2e 66 5f 6e 61 6d | 65 29 3b 0a 09 58 0a 09 |x].f_nam|e);..X..|
|00005080| 58 09 09 64 69 6e 66 6f | 70 72 69 6e 74 28 22 70 |X..dinfo|print("p|
|00005090| 75 74 31 73 22 29 3b 0a | 09 58 23 65 6e 64 69 66 |ut1s");.|.X#endif|
|000050a0| 0a 09 58 09 09 72 65 74 | 75 72 6e 3b 0a 09 58 09 |..X..ret|urn;..X.|
|000050b0| 7d 20 65 6c 73 65 0a 09 | 58 09 09 70 72 65 76 5b |} else..|X..prev[|
|000050c0| 30 5d 20 3d 20 30 3b 0a | 09 58 0a 09 58 0a 09 58 |0] = 0;.|.X..X..X|
|000050d0| 09 69 66 20 28 73 74 72 | 63 6d 70 28 73 2c 20 70 |.if (str|cmp(s, p|
|000050e0| 72 65 76 73 29 20 21 3d | 20 30 29 20 7b 0a 09 58 |revs) !=| 0) {..X|
|000050f0| 09 09 70 72 65 76 73 69 | 20 3d 20 2d 31 3b 0a 09 |..prevsi| = -1;..|
|00005100| 58 09 09 66 6f 72 20 28 | 69 20 3d 20 30 3b 20 69 |X..for (|i = 0; i|
|00005110| 3c 31 32 38 3b 20 69 2b | 2b 29 0a 09 58 09 09 09 |<128; i+|+)..X...|
|00005120| 69 66 20 28 73 74 72 63 | 6d 70 28 73 70 65 63 74 |if (strc|mp(spect|
|00005130| 61 62 5b 69 5d 2c 20 73 | 29 20 3d 3d 20 30 29 20 |ab[i], s|) == 0) |
|00005140| 7b 0a 09 58 09 09 09 09 | 73 74 72 63 70 79 28 70 |{..X....|strcpy(p|
|00005150| 72 65 76 73 2c 20 73 29 | 3b 0a 09 58 09 09 09 09 |revs, s)|;..X....|
|00005160| 70 72 65 76 73 69 20 3d | 20 69 3b 0a 09 58 09 09 |prevsi =| i;..X..|
|00005170| 09 09 62 72 65 61 6b 3b | 0a 09 58 09 09 09 7d 0a |..break;|..X...}.|
|00005180| 09 58 09 7d 0a 09 58 09 | 69 66 20 28 70 72 65 76 |.X.}..X.|if (prev|
|00005190| 73 69 20 3e 3d 20 30 29 | 20 7b 0a 09 58 09 09 66 |si >= 0)| {..X..f|
|000051a0| 6f 72 20 28 69 3d 30 3b | 20 69 3c 4e 55 4d 46 4f |or (i=0;| i<NUMFO|
|000051b0| 4e 54 53 3b 20 69 2b 2b | 29 7b 0a 09 58 09 09 09 |NTS; i++|){..X...|
|000051c0| 69 66 20 28 66 69 6e 66 | 6f 5b 69 5d 2e 66 5f 6e |if (finf|o[i].f_n|
|000051d0| 75 6d 62 20 3d 3d 20 36 | 29 20 62 72 65 61 6b 3b |umb == 6|) break;|
|000051e0| 0a 09 58 09 09 09 7d 0a | 09 58 09 09 69 66 20 28 |..X...}.|.X..if (|
|000051f0| 69 20 3e 3d 20 4e 55 4d | 46 4f 4e 54 53 29 20 65 |i >= NUM|FONTS) e|
|00005200| 72 72 6f 72 28 46 41 54 | 41 4c 2c 22 6e 6f 74 68 |rror(FAT|AL,"noth|
|00005210| 69 6e 67 20 6d 6f 75 6e | 74 65 64 20 6f 6e 20 70 |ing moun|ted on p|
|00005220| 6f 73 69 74 69 6f 6e 20 | 36 22 29 3b 0a 09 58 09 |osition |6");..X.|
|00005230| 09 2f 2a 20 6d 61 79 20 | 61 64 64 20 61 20 73 5f |./* may |add a s_|
|00005240| 66 6e 74 5f 69 6e 64 78 | 20 74 6f 20 67 65 74 20 |fnt_indx| to get |
|00005250| 61 72 6f 75 6e 64 20 74 | 68 69 73 20 2a 2f 0a 09 |around t|his */..|
|00005260| 58 0a 09 58 23 69 66 64 | 65 66 20 44 45 42 55 47 |X..X#ifd|ef DEBUG|
|00005270| 0a 09 58 09 64 70 72 69 | 6e 74 66 28 73 74 64 65 |..X.dpri|ntf(stde|
|00005280| 72 72 2c 22 73 70 65 63 | 69 61 6c 20 63 68 61 72 |rr,"spec|ial char|
|00005290| 61 63 74 65 72 20 25 73 | 2c 20 66 6f 6e 74 20 6f |acter %s|, font o|
|000052a0| 6e 20 70 6f 73 69 74 69 | 6f 6e 20 36 20 69 73 20 |n positi|on 6 is |
|000052b0| 25 73 5c 6e 22 2c 0a 09 | 58 09 09 09 09 73 70 65 |%s\n",..|X....spe|
|000052c0| 63 74 61 62 5b 70 72 65 | 76 73 69 5d 2c 20 66 69 |ctab[pre|vsi], fi|
|000052d0| 6e 66 6f 5b 69 5d 2e 66 | 5f 6e 61 6d 65 29 3b 0a |nfo[i].f|_name);.|
|000052e0| 09 58 23 65 6e 64 69 66 | 0a 09 58 0a 09 58 09 09 |.X#endif|..X..X..|
|000052f0| 6f 5f 66 6e 74 5f 69 6e | 64 78 20 3d 20 63 5f 66 |o_fnt_in|dx = c_f|
|00005300| 6e 74 5f 69 6e 64 78 3b | 0a 09 58 09 09 6f 5f 63 |nt_indx;|..X..o_c|
|00005310| 61 72 74 72 69 64 67 65 | 20 3d 20 63 61 72 74 72 |artridge| = cartr|
|00005320| 69 64 67 65 3b 0a 09 58 | 0a 09 58 09 09 69 66 20 |idge;..X|..X..if |
|00005330| 28 28 70 20 3d 20 69 6e | 64 65 78 28 66 69 6e 66 |((p = in|dex(finf|
|00005340| 6f 5b 69 5d 2e 66 5f 6e | 61 6d 65 2c 27 2e 27 29 |o[i].f_n|ame,'.')|
|00005350| 29 3d 3d 30 29 0a 09 58 | 09 09 09 65 72 72 6f 72 |)==0)..X|...error|
|00005360| 28 46 41 54 41 4c 2c 22 | 66 69 6e 66 6f 20 65 6e |(FATAL,"|finfo en|
|00005370| 74 72 79 20 73 63 72 65 | 77 65 64 20 75 70 22 29 |try scre|wed up")|
|00005380| 3b 0a 09 58 0a 09 58 09 | 09 2f 2a 20 73 69 7a 65 |;..X..X.|./* size|
|00005390| 20 63 68 65 63 6b 20 2d | 20 6d 61 79 20 6e 65 65 | check -| may nee|
|000053a0| 64 20 6e 65 77 20 66 69 | 6c 65 20 2a 2f 0a 09 58 |d new fi|le */..X|
|000053b0| 0a 09 58 09 09 69 66 20 | 28 61 74 6f 69 28 2b 2b |..X..if |(atoi(++|
|000053c0| 70 29 21 3d 77 61 6e 74 | 5f 73 69 7a 29 20 7b 0a |p)!=want|_siz) {.|
|000053d0| 09 58 09 09 09 66 6f 72 | 20 28 6a 3d 30 3b 20 28 |.X...for| (j=0; (|
|000053e0| 74 6d 70 6e 61 6d 65 5b | 6a 5d 3d 66 69 6e 66 6f |tmpname[|j]=finfo|
|000053f0| 5b 69 5d 2e 66 5f 6e 61 | 6d 65 5b 6a 5d 29 21 3d |[i].f_na|me[j])!=|
|00005400| 27 2e 27 20 3b 6a 2b 2b | 29 3b 0a 09 58 09 09 09 |'.' ;j++|);..X...|
|00005410| 74 6d 70 6e 61 6d 65 5b | 6a 5d 3d 27 5c 30 27 3b |tmpname[|j]='\0';|
|00005420| 0a 09 58 09 09 09 2f 2a | 20 63 6f 70 79 20 74 68 |..X.../*| copy th|
|00005430| 65 20 66 6f 6e 74 20 6e | 61 6d 65 20 75 70 20 74 |e font n|ame up t|
|00005440| 6f 20 74 68 65 20 27 2e | 27 20 69 6e 74 6f 20 74 |o the '.|' into t|
|00005450| 6d 70 6e 61 6d 65 20 2a | 2f 0a 09 58 0a 09 58 09 |mpname *|/..X..X.|
|00005460| 09 09 6c 6f 61 64 66 6f | 6e 74 28 66 69 6e 66 6f |..loadfo|nt(finfo|
|00005470| 5b 69 5d 2e 66 5f 6e 75 | 6d 62 2c 20 74 6d 70 6e |[i].f_nu|mb, tmpn|
|00005480| 61 6d 65 29 3b 0a 09 58 | 09 09 09 2f 2a 20 64 6f |ame);..X|.../* do|
|00005490| 20 61 20 6e 65 77 20 6c | 6f 61 64 20 6f 6e 20 70 | a new l|oad on p|
|000054a0| 6f 73 69 74 69 6f 6e 20 | 36 20 66 6f 72 20 6e 65 |osition |6 for ne|
|000054b0| 77 20 73 69 7a 65 20 2a | 2f 0a 09 58 09 09 09 2f |w size *|/..X.../|
|000054c0| 2a 20 74 68 69 73 20 77 | 69 6c 6c 20 63 68 61 6e |* this w|ill chan|
|000054d0| 67 65 20 63 5f 66 6e 74 | 5f 69 6e 64 78 20 61 6e |ge c_fnt|_indx an|
|000054e0| 64 20 2a 2f 0a 09 58 09 | 09 09 2f 2a 20 63 61 72 |d */..X.|../* car|
|000054f0| 74 72 69 64 67 65 20 69 | 6e 64 69 63 61 74 6f 72 |tridge i|ndicator|
|00005500| 2c 20 73 6f 20 6e 65 65 | 64 20 74 6f 20 72 65 73 |, so nee|d to res|
|00005510| 74 6f 72 65 2e 20 2a 2f | 0a 09 58 09 09 09 69 20 |tore. */|..X...i |
|00005520| 3d 20 63 5f 66 6e 74 5f | 69 6e 64 78 3b 0a 09 58 |= c_fnt_|indx;..X|
|00005530| 0a 09 58 23 69 66 64 65 | 66 20 44 45 42 55 47 0a |..X#ifde|f DEBUG.|
|00005540| 09 58 09 09 64 70 72 69 | 6e 74 66 28 73 74 64 65 |.X..dpri|ntf(stde|
|00005550| 72 72 2c 0a 09 58 09 09 | 09 22 70 75 74 31 73 20 |rr,..X..|."put1s |
|00005560| 2d 20 6e 65 65 64 65 64 | 20 73 69 7a 65 20 63 68 |- needed| size ch|
|00005570| 61 6e 67 65 2c 20 63 75 | 72 72 65 6e 74 20 66 6f |ange, cu|rrent fo|
|00005580| 6e 74 20 70 6f 73 20 25 | 64 20 68 61 73 20 25 73 |nt pos %|d has %s|
|00005590| 5c 6e 22 2c 0a 09 58 09 | 09 09 09 66 69 6e 66 6f |\n",..X.|...finfo|
|000055a0| 5b 63 5f 66 6e 74 5f 69 | 6e 64 78 5d 2e 66 5f 6e |[c_fnt_i|ndx].f_n|
|000055b0| 75 6d 62 2c 20 66 69 6e | 66 6f 5b 63 5f 66 6e 74 |umb, fin|fo[c_fnt|
|000055c0| 5f 69 6e 64 78 5d 2e 66 | 5f 6e 61 6d 65 29 3b 0a |_indx].f|_name);.|
|000055d0| 09 58 23 65 6e 64 69 66 | 0a 09 58 09 09 7d 0a 09 |.X#endif|..X..}..|
|000055e0| 58 09 09 65 6c 73 65 20 | 7b 0a 09 58 09 09 09 2f |X..else |{..X.../|
|000055f0| 2a 20 0a 09 58 09 09 09 | 20 2a 20 77 65 20 64 69 |* ..X...| * we di|
|00005600| 64 6e 27 74 20 63 61 6c | 6c 20 6c 6f 61 64 66 6f |dn't cal|l loadfo|
|00005610| 6e 74 20 73 69 6e 63 65 | 20 73 69 7a 65 20 77 61 |nt since| size wa|
|00005620| 73 20 6f 6b 2c 0a 09 58 | 09 09 09 20 2a 20 62 75 |s ok,..X|... * bu|
|00005630| 74 20 72 61 73 74 65 72 | 20 6c 6f 6f 6b 73 20 61 |t raster| looks a|
|00005640| 74 20 63 5f 66 6e 74 5f | 69 6e 64 78 20 74 6f 20 |t c_fnt_|indx to |
|00005650| 67 65 74 20 61 20 66 69 | 6c 65 0a 09 58 09 09 09 |get a fi|le..X...|
|00005660| 20 2a 20 70 6f 69 6e 74 | 65 72 2c 20 73 6f 20 63 | * point|er, so c|
|00005670| 68 61 6e 67 65 20 69 74 | 20 68 65 72 65 20 61 6e |hange it| here an|
|00005680| 64 20 72 65 73 65 74 20 | 6c 61 74 65 72 2e 0a 09 |d reset |later...|
|00005690| 58 09 09 09 20 2a 20 64 | 69 72 74 79 2c 20 6c 6f |X... * d|irty, lo|
|000056a0| 75 73 79 20 63 6f 64 65 | 20 2d 20 72 65 64 6f 20 |usy code| - redo |
|000056b0| 74 68 69 73 20 77 68 6f | 6c 65 20 73 65 63 74 69 |this who|le secti|
|000056c0| 6f 6e 0a 09 58 09 09 09 | 20 2a 2f 0a 09 58 09 09 |on..X...| */..X..|
|000056d0| 09 20 63 5f 66 6e 74 5f | 69 6e 64 78 20 3d 20 69 |. c_fnt_|indx = i|
|000056e0| 3b 0a 09 58 09 09 7d 0a | 09 58 0a 09 58 23 69 66 |;..X..}.|.X..X#if|
|000056f0| 64 65 66 20 44 45 42 55 | 47 0a 09 58 09 09 64 69 |def DEBU|G..X..di|
|00005700| 6e 66 6f 70 72 69 6e 74 | 28 22 70 75 74 31 73 22 |nfoprint|("put1s"|
|00005710| 29 3b 0a 09 58 23 65 6e | 64 69 66 0a 09 58 09 09 |);..X#en|dif..X..|
|00005720| 72 61 73 74 65 72 28 66 | 69 6e 66 6f 5b 69 5d 2e |raster(f|info[i].|
|00005730| 66 5f 63 68 70 2b 70 72 | 65 76 73 69 29 3b 0a 09 |f_chp+pr|evsi);..|
|00005740| 58 0a 09 58 09 09 63 61 | 72 74 72 69 64 67 65 20 |X..X..ca|rtridge |
|00005750| 3d 20 6f 5f 63 61 72 74 | 72 69 64 67 65 3b 0a 09 |= o_cart|ridge;..|
|00005760| 58 09 09 63 5f 66 6e 74 | 5f 69 6e 64 78 20 3d 20 |X..c_fnt|_indx = |
|00005770| 6f 5f 66 6e 74 5f 69 6e | 64 78 3b 0a 09 58 0a 09 |o_fnt_in|dx;..X..|
|00005780| 58 23 69 66 64 65 66 20 | 44 45 42 55 47 0a 09 58 |X#ifdef |DEBUG..X|
|00005790| 09 09 64 70 72 69 6e 74 | 66 28 73 74 64 65 72 72 |..dprint|f(stderr|
|000057a0| 2c 0a 09 58 09 09 09 22 | 70 75 74 31 73 20 2d 20 |,..X..."|put1s - |
|000057b0| 72 65 73 74 6f 72 65 64 | 20 6f 6c 64 20 66 6f 6e |restored| old fon|
|000057c0| 74 2c 20 70 6f 73 69 74 | 69 6f 6e 20 25 64 20 68 |t, posit|ion %d h|
|000057d0| 61 73 20 25 73 5c 6e 22 | 2c 0a 09 58 09 09 09 09 |as %s\n"|,..X....|
|000057e0| 66 69 6e 66 6f 5b 63 5f | 66 6e 74 5f 69 6e 64 78 |finfo[c_|fnt_indx|
|000057f0| 5d 2e 66 5f 6e 75 6d 62 | 2c 20 66 69 6e 66 6f 5b |].f_numb|, finfo[|
|00005800| 63 5f 66 6e 74 5f 69 6e | 64 78 5d 2e 66 5f 6e 61 |c_fnt_in|dx].f_na|
|00005810| 6d 65 29 3b 0a 09 58 0a | 09 58 09 09 64 69 6e 66 |me);..X.|.X..dinf|
|00005820| 6f 70 72 69 6e 74 28 22 | 70 75 74 31 73 22 29 3b |oprint("|put1s");|
|00005830| 0a 09 58 23 65 6e 64 69 | 66 0a 09 58 09 09 72 65 |..X#endi|f..X..re|
|00005840| 74 75 72 6e 3b 0a 09 58 | 09 7d 20 65 6c 73 65 0a |turn;..X|.} else.|
|00005850| 09 58 09 09 70 72 65 76 | 73 5b 30 5d 20 3d 20 30 |.X..prev|s[0] = 0|
|00005860| 3b 0a 09 58 23 69 66 64 | 65 66 20 44 45 42 55 47 |;..X#ifd|ef DEBUG|
|00005870| 0a 09 58 09 09 64 69 6e | 66 6f 70 72 69 6e 74 28 |..X..din|foprint(|
|00005880| 22 70 75 74 31 73 22 29 | 3b 0a 09 58 23 65 6e 64 |"put1s")|;..X#end|
|00005890| 69 66 0a 09 58 7d 0a 09 | 58 0a 09 58 0a 09 58 70 |if..X}..|X..X..Xp|
|000058a0| 75 74 31 28 63 29 09 2f | 2a 20 6f 75 74 70 75 74 |ut1(c)./|* output|
|000058b0| 20 63 68 61 72 20 63 20 | 2a 2f 0a 09 58 69 6e 74 | char c |*/..Xint|
|000058c0| 20 63 3b 0a 09 58 7b 0a | 09 58 09 72 65 67 69 73 | c;..X{.|.X.regis|
|000058d0| 74 65 72 20 63 68 61 72 | 20 2a 20 70 74 3b 09 2f |ter char| * pt;./|
|000058e0| 2a 20 66 69 6e 64 73 20 | 74 68 65 20 73 69 7a 65 |* finds |the size|
|000058f0| 20 6f 66 20 74 68 65 20 | 63 75 72 72 65 6e 74 20 | of the |current |
|00005900| 66 6f 6e 74 20 2a 2f 0a | 09 58 0a 09 58 09 69 66 |font */.|.X..X.if|
|00005910| 20 28 21 6f 75 74 70 75 | 74 29 0a 09 58 09 09 72 | (!outpu|t)..X..r|
|00005920| 65 74 75 72 6e 3b 0a 09 | 58 09 76 67 6f 74 6f 28 |eturn;..|X.vgoto(|
|00005930| 76 70 6f 73 29 3b 0a 09 | 58 09 2f 2a 0a 09 58 09 |vpos);..|X./*..X.|
|00005940| 68 6f 72 69 7a 20 70 6f | 73 69 74 69 6f 6e 20 67 |horiz po|sition g|
|00005950| 65 74 73 20 66 6c 75 73 | 68 65 64 20 69 66 20 69 |ets flus|hed if i|
|00005960| 74 27 73 20 6e 6f 74 20 | 61 20 0a 09 58 09 27 6e |t's not |a ..X.'n|
|00005970| 6e 63 27 20 73 65 71 75 | 65 6e 63 65 2c 20 69 6e |nc' sequ|ence, in|
|00005980| 20 77 68 69 63 68 20 63 | 61 73 65 20 77 65 20 74 | which c|ase we t|
|00005990| 72 79 20 74 6f 20 6c 65 | 74 20 0a 09 58 09 74 68 |ry to le|t ..X.th|
|000059a0| 65 20 6c 61 73 65 72 6a | 65 74 20 68 61 6e 64 6c |e laserj|et handl|
|000059b0| 65 20 74 68 65 20 73 70 | 61 63 69 6e 67 0a 09 58 |e the sp|acing..X|
|000059c0| 09 2a 2f 0a 09 58 09 2f | 2a 0a 09 58 09 43 61 6e |.*/..X./|*..X.Can|
|000059d0| 63 65 6c 20 74 68 65 20 | 61 62 6f 76 65 20 2d 20 |cel the |above - |
|000059e0| 74 68 65 20 6c 61 73 65 | 72 6a 65 74 27 73 20 73 |the lase|rjet's s|
|000059f0| 70 61 63 69 6e 67 20 69 | 73 20 74 6f 6f 0a 09 58 |pacing i|s too..X|
|00005a00| 09 77 69 64 65 20 66 6f | 72 20 74 72 6f 66 66 2e |.wide fo|r troff.|
|00005a10| 20 69 74 20 64 6f 65 73 | 6e 27 74 20 6c 6f 6f 6b | it does|n't look|
|00005a20| 20 61 73 20 6e 69 63 65 | 20 65 69 74 68 65 72 2e | as nice| either.|
|00005a30| 20 77 68 69 6c 65 0a 09 | 58 09 74 68 69 73 20 63 | while..|X.this c|
|00005a40| 75 74 73 20 66 69 6c 65 | 20 73 69 7a 65 20 26 20 |uts file| size & |
|00005a50| 78 6d 69 73 73 69 6f 6e | 20 74 69 6d 65 2c 20 77 |xmission| time, w|
|00005a60| 65 20 6e 65 65 64 20 61 | 20 62 65 74 74 65 72 0a |e need a| better.|
|00005a70| 09 58 09 73 6f 6c 75 74 | 69 6f 6e 2c 20 69 2e 65 |.X.solut|ion, i.e|
|00005a80| 2e 20 77 69 64 74 68 20 | 74 61 62 6c 65 73 2c 20 |. width |tables, |
|00005a90| 65 74 63 2e 0a 09 58 09 | 2a 2f 0a 09 58 09 09 68 |etc...X.|*/..X..h|
|00005aa0| 66 6c 75 73 68 28 29 3b | 0a 09 58 0a 09 58 09 2f |flush();|..X..X./|
|00005ab0| 2a 0a 09 58 09 20 2a 20 | 74 68 65 20 66 6f 6c 6c |*..X. * |the foll|
|00005ac0| 6f 77 69 6e 67 20 69 73 | 20 53 4c 4f 57 20 61 6e |owing is| SLOW an|
|00005ad0| 64 20 6d 65 73 73 79 2e | 20 66 69 6e 64 20 61 20 |d messy.| find a |
|00005ae0| 62 65 74 74 65 72 0a 09 | 58 09 20 2a 20 77 61 79 |better..|X. * way|
|00005af0| 20 6f 66 20 6b 6e 6f 77 | 69 6e 67 20 77 68 61 74 | of know|ing what|
|00005b00| 20 74 68 65 20 73 69 7a | 65 20 69 73 2e 20 79 75 | the siz|e is. yu|
|00005b10| 63 6b 2e 0a 09 58 09 20 | 2a 2f 0a 09 58 0a 09 58 |ck...X. |*/..X..X|
|00005b20| 23 69 66 64 65 66 20 44 | 45 42 55 47 0a 09 58 09 |#ifdef D|EBUG..X.|
|00005b30| 64 69 6e 66 6f 70 72 69 | 6e 74 28 22 70 75 74 31 |dinfopri|nt("put1|
|00005b40| 20 65 6e 74 65 72 65 64 | 22 29 3b 0a 09 58 23 65 | entered|");..X#e|
|00005b50| 6e 64 69 66 0a 09 58 0a | 09 58 09 69 66 20 28 28 |ndif..X.|.X.if ((|
|00005b60| 70 74 20 3d 20 69 6e 64 | 65 78 28 66 69 6e 66 6f |pt = ind|ex(finfo|
|00005b70| 5b 63 5f 66 6e 74 5f 69 | 6e 64 78 5d 2e 66 5f 6e |[c_fnt_i|ndx].f_n|
|00005b80| 61 6d 65 2c 27 2e 27 29 | 29 3d 3d 30 29 0a 09 58 |ame,'.')|)==0)..X|
|00005b90| 09 09 65 72 72 6f 72 28 | 46 41 54 41 4c 2c 22 66 |..error(|FATAL,"f|
|00005ba0| 69 6e 66 6f 20 65 6e 74 | 72 79 20 73 63 72 65 77 |info ent|ry screw|
|00005bb0| 65 64 20 75 70 22 29 3b | 0a 09 58 0a 09 58 09 69 |ed up");|..X..X.i|
|00005bc0| 66 20 28 61 74 6f 69 28 | 2b 2b 70 74 29 21 3d 77 |f (atoi(|++pt)!=w|
|00005bd0| 61 6e 74 5f 73 69 7a 29 | 20 7b 0a 09 58 09 09 2f |ant_siz)| {..X../|
|00005be0| 2a 20 63 6f 70 79 20 74 | 68 65 20 66 6f 6e 74 20 |* copy t|he font |
|00005bf0| 6e 61 6d 65 20 75 70 20 | 74 6f 20 74 68 65 20 27 |name up |to the '|
|00005c00| 2e 27 20 69 6e 74 6f 20 | 74 6d 70 6e 61 6d 65 20 |.' into |tmpname |
|00005c10| 2a 2f 0a 09 58 09 09 73 | 65 74 66 6f 6e 74 28 66 |*/..X..s|etfont(f|
|00005c20| 69 6e 66 6f 5b 63 5f 66 | 6e 74 5f 69 6e 64 78 5d |info[c_f|nt_indx]|
|00005c30| 2e 66 5f 6e 75 6d 62 29 | 3b 0a 09 58 09 09 09 2f |.f_numb)|;..X.../|
|00005c40| 2a 20 64 6f 20 61 20 6e | 65 77 20 6c 6f 61 64 20 |* do a n|ew load |
|00005c50| 73 69 6e 63 65 20 77 65 | 20 6c 6f 73 74 20 6f 75 |since we| lost ou|
|00005c60| 72 20 73 69 7a 65 20 2a | 2f 0a 09 58 0a 09 58 23 |r size *|/..X..X#|
|00005c70| 69 66 64 65 66 20 44 45 | 42 55 47 0a 09 58 09 09 |ifdef DE|BUG..X..|
|00005c80| 64 70 72 69 6e 74 66 28 | 73 74 64 65 72 72 2c 0a |dprintf(|stderr,.|
|00005c90| 09 58 09 09 09 22 70 75 | 74 31 20 2d 20 6e 65 65 |.X..."pu|t1 - nee|
|00005ca0| 64 65 64 20 73 69 7a 65 | 20 63 68 61 6e 67 65 2c |ded size| change,|
|00005cb0| 20 63 75 72 72 65 6e 74 | 20 66 6f 6e 74 20 70 6f | current| font po|
|00005cc0| 73 20 25 64 20 68 61 73 | 20 25 73 5c 6e 22 2c 0a |s %d has| %s\n",.|
|00005cd0| 09 58 09 09 09 09 66 69 | 6e 66 6f 5b 63 5f 66 6e |.X....fi|nfo[c_fn|
|00005ce0| 74 5f 69 6e 64 78 5d 2e | 66 5f 6e 75 6d 62 2c 20 |t_indx].|f_numb, |
|00005cf0| 66 69 6e 66 6f 5b 63 5f | 66 6e 74 5f 69 6e 64 78 |finfo[c_|fnt_indx|
|00005d00| 5d 2e 66 5f 6e 61 6d 65 | 29 3b 0a 09 58 23 65 6e |].f_name|);..X#en|
|00005d10| 64 69 66 0a 09 58 09 7d | 0a 09 58 0a 09 58 23 69 |dif..X.}|..X..X#i|
|00005d20| 66 64 65 66 20 44 45 42 | 55 47 0a 09 58 09 64 69 |fdef DEB|UG..X.di|
|00005d30| 6e 66 6f 70 72 69 6e 74 | 28 22 70 75 74 31 22 29 |nfoprint|("put1")|
|00005d40| 3b 0a 09 58 23 65 6e 64 | 69 66 0a 09 58 09 69 66 |;..X#end|if..X.if|
|00005d50| 20 28 63 61 72 74 72 69 | 64 67 65 29 20 70 75 74 | (cartri|dge) put|
|00005d60| 63 28 63 2c 20 73 74 64 | 6f 75 74 29 3b 0a 09 58 |c(c, std|out);..X|
|00005d70| 09 65 6c 73 65 20 7b 0a | 09 58 09 09 72 61 73 74 |.else {.|.X..rast|
|00005d80| 65 72 28 66 69 6e 66 6f | 5b 63 5f 66 6e 74 5f 69 |er(finfo|[c_fnt_i|
|00005d90| 6e 64 78 5d 2e 66 5f 63 | 68 70 2b 63 29 3b 0a 09 |ndx].f_c|hp+c);..|
|00005da0| 58 09 09 2f 2a 20 6f 6e | 6c 79 20 67 6f 6f 64 20 |X../* on|ly good |
|00005db0| 66 6f 72 20 76 66 6f 6e | 74 2c 20 64 77 62 20 6e |for vfon|t, dwb n|
|00005dc0| 65 65 64 73 20 61 20 63 | 6f 64 65 20 74 61 62 6c |eeds a c|ode tabl|
|00005dd0| 65 20 2a 2f 0a 09 58 09 | 7d 0a 09 58 23 69 66 64 |e */..X.|}..X#ifd|
|00005de0| 65 66 20 44 45 42 55 47 | 0a 09 58 09 64 69 6e 66 |ef DEBUG|..X.dinf|
|00005df0| 6f 70 72 69 6e 74 28 22 | 70 75 74 31 22 29 3b 0a |oprint("|put1");.|
|00005e00| 09 58 23 65 6e 64 69 66 | 0a 09 58 7d 0a 09 58 0a |.X#endif|..X}..X.|
|00005e10| 09 58 73 65 74 73 69 7a | 65 28 6e 29 09 2f 2a 20 |.Xsetsiz|e(n)./* |
|00005e20| 73 65 74 20 70 6f 69 6e | 74 20 73 69 7a 65 20 74 |set poin|t size t|
|00005e30| 6f 20 6e 20 28 69 6e 74 | 65 72 6e 61 6c 29 20 2a |o n (int|ernal) *|
|00005e40| 2f 0a 09 58 69 6e 74 20 | 6e 3b 0a 09 58 7b 0a 09 |/..Xint |n;..X{..|
|00005e50| 58 23 69 66 64 65 66 20 | 44 45 42 55 47 0a 09 58 |X#ifdef |DEBUG..X|
|00005e60| 09 64 70 72 69 6e 74 66 | 28 73 74 64 65 72 72 2c |.dprintf|(stderr,|
|00005e70| 22 67 6f 69 6e 67 20 74 | 6f 20 70 6f 69 6e 74 20 |"going t|o point |
|00005e80| 73 69 7a 65 20 25 64 5c | 6e 22 2c 6e 29 3b 0a 09 |size %d\|n",n);..|
|00005e90| 58 23 65 6e 64 69 66 0a | 09 58 09 77 61 6e 74 5f |X#endif.|.X.want_|
|00005ea0| 73 69 7a 20 3d 20 6e 3b | 0a 09 58 7d 0a 09 58 0a |siz = n;|..X}..X.|
|00005eb0| 09 58 74 5f 66 70 28 6e | 2c 20 73 29 09 2f 2a 20 |.Xt_fp(n|, s)./* |
|00005ec0| 66 6f 6e 74 20 70 6f 73 | 69 74 69 6f 6e 20 6e 20 |font pos|ition n |
|00005ed0| 6e 6f 77 20 63 6f 6e 74 | 61 69 6e 73 20 66 6f 6e |now cont|ains fon|
|00005ee0| 74 20 73 20 2a 2f 0a 09 | 58 69 6e 74 20 6e 3b 0a |t s */..|Xint n;.|
|00005ef0| 09 58 63 68 61 72 20 2a | 73 3b 09 2f 2a 20 73 20 |.Xchar *|s;./* s |
|00005f00| 69 73 20 61 20 6e 61 6d | 65 2e 73 69 7a 65 20 63 |is a nam|e.size c|
|00005f10| 6f 6d 62 69 6e 61 74 69 | 6f 6e 20 2a 2f 0a 09 58 |ombinati|on */..X|
|00005f20| 7b 0a 09 58 09 72 65 67 | 69 73 74 65 72 20 69 6e |{..X.reg|ister in|
|00005f30| 74 20 69 6e 64 3b 0a 09 | 58 0a 09 58 23 69 66 64 |t ind;..|X..X#ifd|
|00005f40| 65 66 20 44 45 42 55 47 | 0a 09 58 09 64 69 6e 66 |ef DEBUG|..X.dinf|
|00005f50| 6f 70 72 69 6e 74 28 22 | 74 5f 66 70 20 65 6e 74 |oprint("|t_fp ent|
|00005f60| 65 72 65 64 22 29 3b 0a | 09 58 23 65 6e 64 69 66 |ered");.|.X#endif|
|00005f70| 0a 09 58 09 66 6f 72 20 | 28 69 6e 64 20 3d 20 30 |..X.for |(ind = 0|
|00005f80| 3b 20 69 6e 64 20 3c 20 | 4e 55 4d 46 4f 4e 54 53 |; ind < |NUMFONTS|
|00005f90| 3b 20 69 6e 64 2b 2b 29 | 7b 0a 09 58 09 09 69 66 |; ind++)|{..X..if|
|00005fa0| 20 28 66 69 6e 66 6f 5b | 69 6e 64 5d 2e 66 5f 6e | (finfo[|ind].f_n|
|00005fb0| 75 6d 62 20 3d 3d 20 6e | 29 7b 0a 09 58 09 09 09 |umb == n|){..X...|
|00005fc0| 69 66 20 28 73 74 72 63 | 6d 70 28 66 69 6e 66 6f |if (strc|mp(finfo|
|00005fd0| 5b 69 6e 64 5d 2e 66 5f | 6e 61 6d 65 2c 20 73 29 |[ind].f_|name, s)|
|00005fe0| 3d 3d 30 29 7b 0a 09 58 | 23 69 66 64 65 66 20 44 |==0){..X|#ifdef D|
|00005ff0| 45 42 55 47 0a 09 58 09 | 09 09 09 64 69 6e 66 6f |EBUG..X.|...dinfo|
|00006000| 70 72 69 6e 74 28 22 74 | 5f 66 70 22 29 3b 0a 09 |print("t|_fp");..|
|00006010| 58 23 65 6e 64 69 66 0a | 09 58 09 09 09 09 72 65 |X#endif.|.X....re|
|00006020| 74 75 72 6e 28 69 6e 64 | 29 3b 09 2f 2a 20 61 6c |turn(ind|);./* al|
|00006030| 72 65 61 64 79 20 74 68 | 65 72 65 20 2a 2f 0a 09 |ready th|ere */..|
|00006040| 58 09 09 09 09 7d 0a 09 | 58 09 09 09 65 6c 73 65 |X....}..|X...else|
|00006050| 20 7b 0a 09 58 09 09 09 | 09 73 74 72 63 70 79 28 | {..X...|.strcpy(|
|00006060| 66 69 6e 66 6f 5b 69 6e | 64 5d 2e 66 5f 6e 61 6d |finfo[in|d].f_nam|
|00006070| 65 2c 20 73 29 3b 0a 09 | 58 09 09 09 09 69 66 20 |e, s);..|X....if |
|00006080| 28 66 69 6e 66 6f 5b 69 | 6e 64 5d 2e 66 5f 70 74 |(finfo[i|nd].f_pt|
|00006090| 72 20 21 3d 20 4e 55 4c | 4c 29 0a 09 58 09 09 09 |r != NUL|L)..X...|
|000060a0| 09 09 66 63 6c 6f 73 65 | 28 66 69 6e 66 6f 5b 69 |..fclose|(finfo[i|
|000060b0| 6e 64 5d 2e 66 5f 70 74 | 72 29 3b 0a 09 58 09 09 |nd].f_pt|r);..X..|
|000060c0| 09 09 66 69 6e 66 6f 5b | 69 6e 64 5d 2e 66 5f 70 |..finfo[|ind].f_p|
|000060d0| 74 72 20 3d 20 4e 55 4c | 4c 3b 0a 09 58 23 69 66 |tr = NUL|L;..X#if|
|000060e0| 64 65 66 20 44 45 42 55 | 47 0a 09 58 09 09 09 09 |def DEBU|G..X....|
|000060f0| 64 69 6e 66 6f 70 72 69 | 6e 74 28 22 74 5f 66 70 |dinfopri|nt("t_fp|
|00006100| 22 29 3b 0a 09 58 23 65 | 6e 64 69 66 0a 09 58 09 |");..X#e|ndif..X.|
|00006110| 09 09 09 72 65 74 75 72 | 6e 28 69 6e 64 29 3b 0a |...retur|n(ind);.|
|00006120| 09 58 09 09 09 7d 0a 09 | 58 09 09 7d 0a 09 58 09 |.X...}..|X..}..X.|
|00006130| 7d 0a 09 58 23 69 66 64 | 65 66 20 44 45 42 55 47 |}..X#ifd|ef DEBUG|
|00006140| 0a 09 58 09 64 69 6e 66 | 6f 70 72 69 6e 74 28 22 |..X.dinf|oprint("|
|00006150| 74 5f 66 70 22 29 3b 0a | 09 58 23 65 6e 64 69 66 |t_fp");.|.X#endif|
|00006160| 0a 09 58 09 65 72 72 6f | 72 28 46 41 54 41 4c 2c |..X.erro|r(FATAL,|
|00006170| 20 22 63 61 6e 27 74 20 | 6d 6f 75 6e 74 20 25 73 | "can't |mount %s|
|00006180| 2c 20 70 6f 73 20 25 64 | 20 64 6f 65 73 6e 27 74 |, pos %d| doesn't|
|00006190| 20 65 78 69 73 74 22 2c | 20 73 2c 20 6e 29 3b 0a | exist",| s, n);.|
|000061a0| 09 58 09 2f 2a 20 4e 4f | 54 52 45 41 43 48 45 44 |.X./* NO|TREACHED|
|000061b0| 20 2a 2f 0a 09 58 7d 0a | 09 58 0a 09 58 73 65 74 | */..X}.|.X..Xset|
|000061c0| 66 6f 6e 74 28 6e 29 09 | 2f 2a 20 73 65 74 20 66 |font(n).|/* set f|
|000061d0| 6f 6e 74 20 74 6f 20 6e | 20 2a 2f 0a 09 58 69 6e |ont to n| */..Xin|
|000061e0| 74 20 6e 3b 0a 09 58 7b | 0a 09 58 09 72 65 67 69 |t n;..X{|..X.regi|
|000061f0| 73 74 65 72 20 69 6e 74 | 20 69 6e 64 3b 0a 09 58 |ster int| ind;..X|
|00006200| 09 72 65 67 69 73 74 65 | 72 20 63 68 61 72 20 2a |.registe|r char *|
|00006210| 20 70 74 3b 0a 09 58 09 | 63 68 61 72 20 74 6d 70 | pt;..X.|char tmp|
|00006220| 6e 61 6d 65 5b 33 30 5d | 3b 09 2f 2a 20 6a 75 73 |name[30]|;./* jus|
|00006230| 74 20 61 20 63 6f 6e 76 | 65 6e 69 65 6e 63 65 20 |t a conv|enience |
|00006240| 2a 2f 0a 09 58 0a 09 58 | 23 69 66 64 65 66 20 44 |*/..X..X|#ifdef D|
|00006250| 45 42 55 47 0a 09 58 09 | 64 69 6e 66 6f 70 72 69 |EBUG..X.|dinfopri|
|00006260| 6e 74 28 22 73 65 74 66 | 6f 6e 74 20 65 6e 74 65 |nt("setf|ont ente|
|00006270| 72 65 64 22 29 3b 0a 09 | 58 09 64 70 72 69 6e 74 |red");..|X.dprint|
|00006280| 66 28 73 74 64 65 72 72 | 2c 22 72 65 71 75 65 73 |f(stderr|,"reques|
|00006290| 74 20 66 6f 72 20 66 6f | 6e 74 20 6f 6e 20 70 6f |t for fo|nt on po|
|000062a0| 73 69 74 69 6f 6e 20 25 | 64 5c 6e 22 2c 6e 29 3b |sition %|d\n",n);|
|000062b0| 0a 09 58 23 65 6e 64 69 | 66 0a 09 58 0a 09 58 09 |..X#endi|f..X..X.|
|000062c0| 66 6f 72 20 28 69 6e 64 | 20 3d 20 30 3b 20 69 6e |for (ind| = 0; in|
|000062d0| 64 20 3c 20 4e 55 4d 46 | 4f 4e 54 53 3b 20 69 6e |d < NUMF|ONTS; in|
|000062e0| 64 2b 2b 29 7b 0a 09 58 | 09 09 09 69 66 20 28 66 |d++){..X|...if (f|
|000062f0| 69 6e 66 6f 5b 69 6e 64 | 5d 2e 66 5f 6e 75 6d 62 |info[ind|].f_numb|
|00006300| 20 3d 3d 20 6e 29 20 62 | 72 65 61 6b 3b 0a 09 58 | == n) b|reak;..X|
|00006310| 09 09 09 7d 0a 09 58 09 | 69 66 20 28 69 6e 64 20 |...}..X.|if (ind |
|00006320| 3e 3d 20 4e 55 4d 46 4f | 4e 54 53 29 0a 09 58 09 |>= NUMFO|NTS)..X.|
|00006330| 09 65 72 72 6f 72 28 46 | 41 54 41 4c 2c 20 22 6e |.error(F|ATAL, "n|
|00006340| 6f 74 68 69 6e 67 20 6d | 6f 75 6e 74 65 64 20 6f |othing m|ounted o|
|00006350| 6e 20 70 6f 73 69 74 69 | 6f 6e 20 25 64 22 2c 20 |n positi|on %d", |
|00006360| 6e 29 3b 0a 09 58 0a 09 | 58 09 63 5f 66 6e 74 5f |n);..X..|X.c_fnt_|
|00006370| 69 6e 64 78 20 3d 20 69 | 6e 64 3b 0a 09 58 09 63 |indx = i|nd;..X.c|
|00006380| 72 6e 74 5f 73 69 7a 20 | 3d 20 77 61 6e 74 5f 73 |rnt_siz |= want_s|
|00006390| 69 7a 3b 0a 09 58 0a 09 | 58 09 63 61 72 74 72 69 |iz;..X..|X.cartri|
|000063a0| 64 67 65 20 3d 20 30 3b | 0a 09 58 0a 09 58 09 2f |dge = 0;|..X..X./|
|000063b0| 2a 0a 09 58 09 20 2a 20 | 63 68 65 63 6b 20 74 68 |*..X. * |check th|
|000063c0| 65 20 73 69 7a 65 20 6f | 66 20 74 68 65 20 6d 6f |e size o|f the mo|
|000063d0| 75 6e 74 65 64 20 66 6f | 6e 74 20 61 6e 64 20 6d |unted fo|nt and m|
|000063e0| 61 6b 65 0a 09 58 09 20 | 2a 20 73 75 72 65 20 69 |ake..X. |* sure i|
|000063f0| 74 73 20 77 68 61 74 20 | 77 65 20 77 61 6e 74 2c |ts what |we want,|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.