home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 9 / FreshFishVol9-CD2.bin / bbs / gnu / unixtex-6.1b-src.lha / unixtex-6.1b / web2c / fontutil / gftopk.web < prev    next >
LaTeX Document  |  1991-03-26  |  89.9 KB

open in: MacOS 8.1     |     Win98     |     DOS

browse contents    |     view JSON data     |     view as text


This file was processed as: LaTeX Document (document/latex).

ConfidenceProgramDetectionMatch TypeSupport
100% dexvert LaTeX Document (document/latex) magic Supported
99% dexvert Texinfo Document (document/texInfo) magic Supported
1% dexvert Text File (text/txt) fallback Supported
100% file LaTeX document text default
99% file TeX document, ASCII text default
100% checkBytes Printable ASCII default
100% perlTextCheck Likely Text (Perl) default
100% siegfried fmt/281 LaTeX (Subdocument) default
100% detectItEasy Format: plain text[LF] default (weak)



hex view
+--------+-------------------------+-------------------------+--------+--------+
|00000000| 25 20 54 68 69 73 20 70 | 72 6f 67 72 61 6d 20 69 |% This p|rogram i|
|00000010| 73 20 62 79 20 54 6f 6d | 61 73 20 52 6f 6b 69 63 |s by Tom|as Rokic|
|00000020| 6b 69 2e 20 20 41 20 66 | 65 77 20 72 6f 75 74 69 |ki. A f|ew routi|
|00000030| 6e 65 73 20 77 65 72 65 | 20 62 6f 72 72 6f 77 65 |nes were| borrowe|
|00000040| 64 20 66 72 6f 6d 0a 25 | 20 47 46 74 6f 50 58 4c |d from.%| GFtoPXL|
|00000050| 20 62 79 20 41 72 74 68 | 75 72 20 53 61 6d 75 65 | by Arth|ur Samue|
|00000060| 6c 2c 20 77 68 6f 20 62 | 6f 72 72 6f 77 65 64 20 |l, who b|orrowed |
|00000070| 66 72 6f 6d 20 47 46 74 | 79 70 65 20 62 79 20 44 |from GFt|ype by D|
|00000080| 52 46 20 61 6e 64 20 44 | 45 4b 2c 0a 25 20 77 68 |RF and D|EK,.% wh|
|00000090| 6f 20 62 6f 72 72 6f 77 | 65 64 20 66 72 6f 6d 20 |o borrow|ed from |
|000000a0| 44 56 49 74 79 70 65 2c | 20 61 6e 64 20 73 6f 20 |DVItype,| and so |
|000000b0| 6f 6e 2e 0a 0a 25 20 56 | 65 72 73 69 6f 6e 20 30 |on...% V|ersion 0|
|000000c0| 2e 30 20 28 64 65 76 65 | 6c 6f 70 6d 65 6e 74 29 |.0 (deve|lopment)|
|000000d0| 3a 20 73 74 61 72 74 65 | 64 20 32 36 20 4a 75 6c |: starte|d 26 Jul|
|000000e0| 79 20 31 39 38 35 20 54 | 47 52 2e 0a 25 20 56 65 |y 1985 T|GR..% Ve|
|000000f0| 72 73 69 6f 6e 20 31 2e | 30 3a 20 66 69 6e 69 73 |rsion 1.|0: finis|
|00000100| 68 65 64 20 32 39 20 4a | 75 6c 79 20 31 39 38 35 |hed 29 J|uly 1985|
|00000110| 20 54 47 52 2e 0a 25 20 | 56 65 72 73 69 6f 6e 20 | TGR..% |Version |
|00000120| 31 2e 31 3a 20 72 65 76 | 69 73 65 64 20 66 6f 72 |1.1: rev|ised for|
|00000130| 20 6e 65 77 20 70 6b 20 | 66 6f 72 6d 61 74 20 39 | new pk |format 9|
|00000140| 20 41 75 67 75 73 74 20 | 31 39 38 35 20 54 47 52 | August |1985 TGR|
|00000150| 2e 0a 25 20 56 65 72 73 | 69 6f 6e 20 31 2e 32 3a |..% Vers|ion 1.2:|
|00000160| 20 66 69 78 65 64 20 74 | 77 6f 27 73 20 63 6f 6d | fixed t|wo's com|
|00000170| 70 6c 65 6d 65 6e 74 20 | 62 75 67 20 32 33 20 4a |plement |bug 23 J|
|00000180| 61 6e 75 61 72 79 20 31 | 39 38 35 20 54 47 52 2e |anuary 1|985 TGR.|
|00000190| 0a 25 20 56 65 72 73 69 | 6f 6e 20 31 2e 33 3a 20 |.% Versi|on 1.3: |
|000001a0| 66 69 78 65 64 20 62 6f | 75 6e 64 69 6e 67 20 62 |fixed bo|unding b|
|000001b0| 6f 78 20 63 61 6c 63 75 | 6c 61 74 69 6f 6e 73 20 |ox calcu|lations |
|000001c0| 61 6e 64 20 73 6f 6d 65 | 20 64 6f 63 75 6d 65 6e |and some| documen|
|000001d0| 74 61 74 69 6f 6e 2e 0a | 25 20 20 20 20 20 20 20 |tation..|% |
|000001e0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 20 20 | | |
|000001f0| 20 20 20 20 20 20 20 20 | 20 20 20 20 20 20 37 20 | | 7 |
|00000200| 53 65 70 74 65 6d 62 65 | 72 20 31 39 38 36 20 54 |Septembe|r 1986 T|
|00000210| 47 52 0a 25 20 56 65 72 | 73 69 6f 6e 20 31 2e 34 |GR.% Ver|sion 1.4|
|00000220| 3a 20 66 69 78 65 64 20 | 72 6f 77 20 74 6f 20 67 |: fixed |row to g|
|00000230| 6c 79 70 68 20 63 6f 6e | 76 65 72 73 69 6f 6e 20 |lyph con|version |
|00000240| 31 34 20 4e 6f 76 65 6d | 62 65 72 20 31 39 38 37 |14 Novem|ber 1987|
|00000250| 20 54 47 52 0a 25 20 56 | 65 72 73 69 6f 6e 20 31 | TGR.% V|ersion 1|
|00000260| 2e 35 3a 20 65 6c 69 6d | 69 6e 61 74 65 64 20 73 |.5: elim|inated s|
|00000270| 65 6d 69 63 6f 6c 6f 6e | 73 20 62 65 66 6f 72 65 |emicolon|s before|
|00000280| 20 65 6e 64 63 61 73 65 | 73 20 31 32 20 4a 75 6c | endcase|s 12 Jul|
|00000290| 79 20 31 39 38 38 20 54 | 47 52 0a 25 20 56 65 72 |y 1988 T|GR.% Ver|
|000002a0| 73 69 6f 6e 20 32 2e 30 | 3a 20 73 6c 69 67 68 74 |sion 2.0|: slight|
|000002b0| 6c 79 20 74 75 6e 65 64 | 20 75 70 20 66 6f 72 20 |ly tuned| up for |
|000002c0| 4d 45 54 41 46 4f 4e 54 | 77 61 72 65 20 72 65 70 |METAFONT|ware rep|
|000002d0| 6f 72 74 20 31 37 20 41 | 70 72 20 31 39 38 39 20 |ort 17 A|pr 1989 |
|000002e0| 44 45 4b 2f 54 47 52 0a | 25 20 56 65 72 73 69 6f |DEK/TGR.|% Versio|
|000002f0| 6e 20 32 2e 31 3a 20 66 | 69 78 65 64 20 70 61 69 |n 2.1: f|ixed pai|
|00000300| 6e 74 30 2f 65 6e 64 72 | 6f 77 20 62 75 67 20 72 |nt0/endr|ow bug r|
|00000310| 65 70 6f 72 74 65 64 20 | 62 79 20 4a 6f 68 6e 20 |eported |by John |
|00000320| 48 6f 62 62 79 20 33 31 | 20 4a 75 6c 20 31 39 38 |Hobby 31| Jul 198|
|00000330| 39 20 54 47 52 0a 25 20 | 56 65 72 73 69 6f 6e 20 |9 TGR.% |Version |
|00000340| 32 2e 32 3a 20 6d 69 6e | 6f 72 20 74 75 6e 65 20 |2.2: min|or tune |
|00000350| 75 70 3b 20 72 65 74 61 | 69 6e 20 70 72 65 76 69 |up; reta|in previ|
|00000360| 6f 75 73 20 73 6f 75 72 | 63 65 20 69 6e 66 6f 20 |ous sour|ce info |
|00000370| 32 31 20 4e 6f 76 20 31 | 39 38 39 20 64 6f 6e 0a |21 Nov 1|989 don.|
|00000380| 25 20 56 65 72 73 69 6f | 6e 20 32 2e 33 3a 20 66 |% Versio|n 2.3: f|
|00000390| 69 78 65 64 20 61 20 66 | 65 77 20 62 75 67 73 20 |ixed a f|ew bugs |
|000003a0| 77 69 74 68 20 73 65 6c | 65 63 74 69 6f 6e 20 6f |with sel|ection o|
|000003b0| 66 20 70 72 65 61 6d 62 | 6c 65 20 74 79 70 65 73 |f preamb|le types|
|000003c0| 2c 20 69 66 0a 25 20 20 | 67 66 5f 63 68 20 3c 20 |, if.% |gf_ch < |
|000003d0| 30 2c 20 6f 72 20 69 66 | 20 63 6f 6d 70 5f 73 69 |0, or if| comp_si|
|000003e0| 7a 65 20 3d 20 31 30 31 | 36 20 28 62 6f 74 68 20 |ze = 101|6 (both |
|000003f0| 75 6e 6c 69 6b 65 6c 79 | 29 2e 20 20 52 65 6d 6f |unlikely|). Remo|
|00000400| 76 65 64 20 73 6f 6d 65 | 0a 25 20 20 63 6f 64 65 |ved some|.% code|
|00000410| 20 74 68 61 74 20 77 6f | 75 6c 64 20 6e 65 76 65 | that wo|uld neve|
|00000420| 72 20 67 65 74 20 65 78 | 65 63 75 74 65 64 20 73 |r get ex|ecuted s|
|00000430| 69 6e 63 65 20 62 61 64 | 5f 67 66 20 74 65 72 6d |ince bad|_gf term|
|00000440| 69 6e 61 74 65 73 2e 20 | 20 41 6c 73 6f 0a 25 20 |inates. | Also.% |
|00000450| 20 73 6f 6d 65 20 6f 74 | 68 65 72 20 6e 69 74 73 | some ot|her nits|
|00000460| 20 74 68 61 74 20 64 6f | 6e 27 74 20 72 65 61 6c | that do|n't real|
|00000470| 6c 79 20 61 66 66 65 63 | 74 20 66 75 6e 63 74 69 |ly affec|t functi|
|00000480| 6f 6e 61 6c 69 74 79 2e | 20 20 32 39 20 4a 75 6c |onality.| 29 Jul|
|00000490| 20 31 39 39 30 20 20 54 | 47 52 0a 25 20 20 42 75 | 1990 T|GR.% Bu|
|000004a0| 67 73 20 61 6e 64 20 66 | 69 78 65 73 20 72 65 70 |gs and f|ixes rep|
|000004b0| 6f 72 74 65 64 20 62 79 | 20 50 65 74 65 72 20 42 |orted by| Peter B|
|000004c0| 72 65 69 74 65 6e 6c 6f | 68 6e 65 72 2e 0a 0a 5c |reitenlo|hner...\|
|000004d0| 64 65 66 5c 76 65 72 73 | 69 6f 6e 64 61 74 65 7b |def\vers|iondate{|
|000004e0| 32 39 20 4a 75 6c 79 20 | 31 39 39 30 7d 0a 0a 25 |29 July |1990}..%|
|000004f0| 20 48 65 72 65 20 69 73 | 20 54 65 58 20 6d 61 74 | Here is| TeX mat|
|00000500| 65 72 69 61 6c 20 74 68 | 61 74 20 67 65 74 73 20 |erial th|at gets |
|00000510| 69 6e 73 65 72 74 65 64 | 20 61 66 74 65 72 20 5c |inserted| after \|
|00000520| 69 6e 70 75 74 20 77 65 | 62 6d 61 63 0a 5c 64 65 |input we|bmac.\de|
|00000530| 66 5c 68 61 6e 67 7b 5c | 68 61 6e 67 69 6e 64 65 |f\hang{\|hanginde|
|00000540| 6e 74 20 33 65 6d 5c 6e | 6f 69 6e 64 65 6e 74 5c |nt 3em\n|oindent\|
|00000550| 69 67 6e 6f 72 65 73 70 | 61 63 65 73 7d 0a 5c 64 |ignoresp|aces}.\d|
|00000560| 65 66 5c 74 65 78 74 69 | 6e 64 65 6e 74 23 31 7b |ef\texti|ndent#1{|
|00000570| 5c 68 61 6e 67 69 6e 64 | 65 6e 74 32 2e 35 65 6d |\hangind|ent2.5em|
|00000580| 5c 6e 6f 69 6e 64 65 6e | 74 5c 68 62 6f 78 20 74 |\noinden|t\hbox t|
|00000590| 6f 32 2e 35 65 6d 7b 5c | 68 73 73 23 31 20 7d 5c |o2.5em{\|hss#1 }\|
|000005a0| 69 67 6e 6f 72 65 73 70 | 61 63 65 73 7d 0a 5c 66 |ignoresp|aces}.\f|
|000005b0| 6f 6e 74 5c 6e 69 6e 65 | 72 6d 3d 63 6d 72 39 0a |ont\nine|rm=cmr9.|
|000005c0| 5c 6c 65 74 5c 6d 63 3d | 5c 6e 69 6e 65 72 6d 20 |\let\mc=|\ninerm |
|000005d0| 25 20 6d 65 64 69 75 6d | 20 63 61 70 73 20 66 6f |% medium| caps fo|
|000005e0| 72 20 6e 61 6d 65 73 20 | 6c 69 6b 65 20 53 41 49 |r names |like SAI|
|000005f0| 4c 0a 5c 66 6f 6e 74 5c | 74 65 6e 73 73 3d 63 6d |L.\font\|tenss=cm|
|00000600| 73 73 31 30 20 25 20 66 | 6f 72 20 60 54 68 65 20 |ss10 % f|or `The |
|00000610| 4d 45 54 41 46 4f 4e 54 | 62 6f 6f 6b 27 0a 5c 64 |METAFONT|book'.\d|
|00000620| 65 66 5c 50 41 53 43 41 | 4c 7b 50 61 73 63 61 6c |ef\PASCA|L{Pascal|
|00000630| 7d 0a 5c 64 65 66 5c 70 | 68 7b 7b 5c 6d 63 20 50 |}.\def\p|h{{\mc P|
|00000640| 41 53 43 41 4c 2d 48 7d | 7d 0a 5c 66 6f 6e 74 5c |ASCAL-H}|}.\font\|
|00000650| 6c 6f 67 6f 3d 6d 61 6e | 66 6e 74 20 25 20 66 6f |logo=man|fnt % fo|
|00000660| 6e 74 20 75 73 65 64 20 | 66 6f 72 20 74 68 65 20 |nt used |for the |
|00000670| 4d 45 54 41 46 4f 4e 54 | 20 6c 6f 67 6f 0a 5c 64 |METAFONT| logo.\d|
|00000680| 65 66 5c 4d 46 7b 7b 5c | 6c 6f 67 6f 20 4d 45 54 |ef\MF{{\|logo MET|
|00000690| 41 7d 5c 2d 7b 5c 6c 6f | 67 6f 20 46 4f 4e 54 7d |A}\-{\lo|go FONT}|
|000006a0| 7d 0a 5c 64 65 66 5c 3c | 23 31 3e 7b 24 5c 6c 61 |}.\def\<|#1>{$\la|
|000006b0| 6e 67 6c 65 23 31 5c 72 | 61 6e 67 6c 65 24 7d 0a |ngle#1\r|angle$}.|
|000006c0| 5c 64 65 66 5c 73 65 63 | 74 69 6f 6e 7b 5c 6d 61 |\def\sec|tion{\ma|
|000006d0| 74 68 68 65 78 62 6f 78 | 32 37 38 7d 0a 5c 6c 65 |thhexbox|278}.\le|
|000006e0| 74 5c 73 77 61 70 3d 5c | 6c 65 66 74 72 69 67 68 |t\swap=\|leftrigh|
|000006f0| 74 61 72 72 6f 77 0a 5c | 64 65 66 5c 72 6f 75 6e |tarrow.\|def\roun|
|00000700| 64 7b 5c 6d 61 74 68 6f | 70 7b 5c 72 6d 20 72 6f |d{\matho|p{\rm ro|
|00000710| 75 6e 64 7d 5c 6e 6f 6c | 69 6d 69 74 73 7d 0a 0a |und}\nol|imits}..|
|00000720| 5c 64 65 66 5c 28 23 31 | 29 7b 7d 20 25 20 74 68 |\def\(#1|){} % th|
|00000730| 69 73 20 69 73 20 75 73 | 65 64 20 74 6f 20 6d 61 |is is us|ed to ma|
|00000740| 6b 65 20 73 65 63 74 69 | 6f 6e 20 6e 61 6d 65 73 |ke secti|on names|
|00000750| 20 73 6f 72 74 20 74 68 | 65 6d 73 65 6c 76 65 73 | sort th|emselves|
|00000760| 20 62 65 74 74 65 72 0a | 5c 64 65 66 5c 39 23 31 | better.|\def\9#1|
|00000770| 7b 7d 20 25 20 74 68 69 | 73 20 69 73 20 75 73 65 |{} % thi|s is use|
|00000780| 64 20 66 6f 72 20 73 6f | 72 74 20 6b 65 79 73 20 |d for so|rt keys |
|00000790| 69 6e 20 74 68 65 20 69 | 6e 64 65 78 20 76 69 61 |in the i|ndex via|
|000007a0| 20 40 40 3a 73 6f 72 74 | 20 6b 65 79 7d 7b 65 6e | @@:sort| key}{en|
|000007b0| 74 72 79 40 40 3e 0a 0a | 5c 64 65 66 5c 74 69 74 |try@@>..|\def\tit|
|000007c0| 6c 65 7b 47 46 74 6f 50 | 4b 7d 0a 5c 64 65 66 5c |le{GFtoP|K}.\def\|
|000007d0| 63 6f 6e 74 65 6e 74 73 | 70 61 67 65 6e 75 6d 62 |contents|pagenumb|
|000007e0| 65 72 7b 32 30 31 7d 0a | 5c 64 65 66 5c 74 6f 70 |er{201}.|\def\top|
|000007f0| 6f 66 63 6f 6e 74 65 6e | 74 73 7b 5c 6e 75 6c 6c |ofconten|ts{\null|
|00000800| 0a 20 20 5c 64 65 66 5c | 74 69 74 6c 65 70 61 67 |. \def\|titlepag|
|00000810| 65 7b 46 7d 20 25 20 69 | 6e 63 6c 75 64 65 20 68 |e{F} % i|nclude h|
|00000820| 65 61 64 6c 69 6e 65 20 | 6f 6e 20 74 68 65 20 63 |eadline |on the c|
|00000830| 6f 6e 74 65 6e 74 73 20 | 70 61 67 65 0a 20 20 5c |ontents |page. \|
|00000840| 64 65 66 5c 72 68 65 61 | 64 65 72 7b 5c 6d 61 69 |def\rhea|der{\mai|
|00000850| 6e 66 6f 6e 74 5c 68 66 | 69 6c 20 5c 63 6f 6e 74 |nfont\hf|il \cont|
|00000860| 65 6e 74 73 70 61 67 65 | 6e 75 6d 62 65 72 7d 0a |entspage|number}.|
|00000870| 20 20 5c 76 66 69 6c 6c | 0a 20 20 5c 63 65 6e 74 | \vfill|. \cent|
|00000880| 65 72 6c 69 6e 65 7b 5c | 74 69 74 6c 65 66 6f 6e |erline{\|titlefon|
|00000890| 74 20 54 68 65 20 7b 5c | 74 74 69 74 6c 65 66 6f |t The {\|ttitlefo|
|000008a0| 6e 74 20 47 46 74 6f 50 | 4b 7d 20 70 72 6f 63 65 |nt GFtoP|K} proce|
|000008b0| 73 73 6f 72 7d 0a 20 20 | 5c 76 73 6b 69 70 20 31 |ssor}. |\vskip 1|
|000008c0| 35 70 74 0a 20 20 5c 63 | 65 6e 74 65 72 6c 69 6e |5pt. \c|enterlin|
|000008d0| 65 7b 28 56 65 72 73 69 | 6f 6e 20 32 2e 33 2c 20 |e{(Versi|on 2.3, |
|000008e0| 5c 76 65 72 73 69 6f 6e | 64 61 74 65 29 7d 0a 20 |\version|date)}. |
|000008f0| 20 5c 76 66 69 6c 6c 7d | 0a 5c 64 65 66 5c 62 6f | \vfill}|.\def\bo|
|00000900| 74 6f 66 63 6f 6e 74 65 | 6e 74 73 7b 5c 76 66 69 |tofconte|nts{\vfi|
|00000910| 6c 6c 0a 20 20 5c 63 65 | 6e 74 65 72 6c 69 6e 65 |ll. \ce|nterline|
|00000920| 7b 5c 68 73 69 7a 65 20 | 35 69 6e 5c 62 61 73 65 |{\hsize |5in\base|
|00000930| 6c 69 6e 65 73 6b 69 70 | 39 70 74 0a 20 20 20 20 |lineskip|9pt. |
|00000940| 5c 76 62 6f 78 7b 5c 6e | 69 6e 65 72 6d 5c 6e 6f |\vbox{\n|inerm\no|
|00000950| 69 6e 64 65 6e 74 0a 20 | 20 20 20 54 68 65 20 70 |indent. | The p|
|00000960| 72 65 70 61 72 61 74 69 | 6f 6e 20 6f 66 20 74 68 |reparati|on of th|
|00000970| 69 73 20 72 65 70 6f 72 | 74 0a 20 20 20 20 77 61 |is repor|t. wa|
|00000980| 73 20 73 75 70 70 6f 72 | 74 65 64 20 69 6e 20 70 |s suppor|ted in p|
|00000990| 61 72 74 20 62 79 20 74 | 68 65 20 4e 61 74 69 6f |art by t|he Natio|
|000009a0| 6e 61 6c 20 53 63 69 65 | 6e 63 65 0a 20 20 20 20 |nal Scie|nce. |
|000009b0| 46 6f 75 6e 64 61 74 69 | 6f 6e 20 75 6e 64 65 72 |Foundati|on under|
|000009c0| 20 67 72 61 6e 74 73 20 | 49 53 54 2d 38 32 30 31 | grants |IST-8201|
|000009d0| 39 32 36 2c 20 4d 43 53 | 2d 38 33 30 30 39 38 34 |926, MCS|-8300984|
|000009e0| 2c 20 61 6e 64 0a 20 20 | 20 20 43 43 52 2d 38 36 |, and. | CCR-86|
|000009f0| 31 30 31 38 31 2c 0a 20 | 20 20 20 61 6e 64 20 62 |10181,. | and b|
|00000a00| 79 20 74 68 65 20 53 79 | 73 74 65 6d 20 44 65 76 |y the Sy|stem Dev|
|00000a10| 65 6c 6f 70 6d 65 6e 74 | 20 46 6f 75 6e 64 61 74 |elopment| Foundat|
|00000a20| 69 6f 6e 2e 20 60 5c 54 | 65 58 27 20 69 73 20 61 |ion. `\T|eX' is a|
|00000a30| 0a 20 20 20 20 74 72 61 | 64 65 6d 61 72 6b 20 6f |. tra|demark o|
|00000a40| 66 20 74 68 65 20 41 6d | 65 72 69 63 61 6e 20 4d |f the Am|erican M|
|00000a50| 61 74 68 65 6d 61 74 69 | 63 61 6c 20 53 6f 63 69 |athemati|cal Soci|
|00000a60| 65 74 79 2e 0a 20 20 20 | 20 60 7b 5c 6c 6f 67 6f |ety.. | `{\logo|
|00000a70| 20 68 69 6a 6b 6c 6d 6e | 6a 7d 5c 6b 65 72 6e 31 | hijklmn|j}\kern1|
|00000a80| 70 74 27 20 69 73 20 61 | 20 74 72 61 64 65 6d 61 |pt' is a| tradema|
|00000a90| 72 6b 20 6f 66 20 41 64 | 64 69 73 6f 6e 2d 57 65 |rk of Ad|dison-We|
|00000aa0| 73 6c 65 79 0a 20 20 20 | 20 50 75 62 6c 69 73 68 |sley. | Publish|
|00000ab0| 69 6e 67 20 43 6f 6d 70 | 61 6e 79 2e 7d 7d 7d 0a |ing Comp|any.}}}.|
|00000ac0| 5c 70 61 67 65 6e 6f 3d | 5c 63 6f 6e 74 65 6e 74 |\pageno=|\content|
|00000ad0| 73 70 61 67 65 6e 75 6d | 62 65 72 20 5c 61 64 76 |spagenum|ber \adv|
|00000ae0| 61 6e 63 65 5c 70 61 67 | 65 6e 6f 20 62 79 20 31 |ance\pag|eno by 1|
|00000af0| 0a 0a 40 2a 20 49 6e 74 | 72 6f 64 75 63 74 69 6f |..@* Int|roductio|
|00000b00| 6e 2e 0a 54 68 69 73 20 | 70 72 6f 67 72 61 6d 20 |n..This |program |
|00000b10| 72 65 61 64 73 20 61 20 | 5c 2e 7b 47 46 7d 20 66 |reads a |\.{GF} f|
|00000b20| 69 6c 65 20 61 6e 64 20 | 70 61 63 6b 73 20 69 74 |ile and |packs it|
|00000b30| 20 69 6e 74 6f 20 61 20 | 5c 2e 7b 50 4b 7d 20 66 | into a |\.{PK} f|
|00000b40| 69 6c 65 2e 20 20 5c 2e | 7b 50 4b 7d 20 66 69 6c |ile. \.|{PK} fil|
|00000b50| 65 73 0a 61 72 65 20 73 | 69 67 6e 69 66 69 63 61 |es.are s|ignifica|
|00000b60| 6e 74 6c 79 20 73 6d 61 | 6c 6c 65 72 20 74 68 61 |ntly sma|ller tha|
|00000b70| 6e 20 5c 2e 7b 47 46 7d | 20 66 69 6c 65 73 2c 20 |n \.{GF}| files, |
|00000b80| 61 6e 64 20 74 68 65 79 | 20 61 72 65 20 6d 75 63 |and they| are muc|
|00000b90| 68 20 65 61 73 69 65 72 | 20 74 6f 0a 69 6e 74 65 |h easier| to.inte|
|00000ba0| 72 70 72 65 74 2e 20 20 | 54 68 69 73 20 70 72 6f |rpret. |This pro|
|00000bb0| 67 72 61 6d 20 69 73 20 | 6d 65 61 6e 74 20 74 6f |gram is |meant to|
|00000bc0| 20 62 65 20 74 68 65 20 | 62 72 69 64 67 65 20 62 | be the |bridge b|
|00000bd0| 65 74 77 65 65 6e 20 5c | 4d 46 5c 20 61 6e 64 20 |etween \|MF\ and |
|00000be0| 5c 2e 7b 44 56 49 7d 0a | 64 72 69 76 65 72 73 20 |\.{DVI}.|drivers |
|00000bf0| 74 68 61 74 20 72 65 61 | 64 20 5c 2e 7b 50 4b 7d |that rea|d \.{PK}|
|00000c00| 20 66 69 6c 65 73 2e 20 | 20 48 65 72 65 20 61 72 | files. | Here ar|
|00000c10| 65 20 73 6f 6d 65 20 73 | 74 61 74 69 73 74 69 63 |e some s|tatistic|
|00000c20| 73 20 63 6f 6d 70 61 72 | 69 6e 67 20 74 79 70 69 |s compar|ing typi|
|00000c30| 63 61 6c 0a 69 6e 70 75 | 74 20 61 6e 64 20 6f 75 |cal.inpu|t and ou|
|00000c40| 74 70 75 74 20 66 69 6c | 65 20 73 69 7a 65 73 3a |tput fil|e sizes:|
|00000c50| 0a 0a 24 24 5c 76 62 6f | 78 7b 0a 5c 68 61 6c 69 |..$$\vbo|x{.\hali|
|00000c60| 67 6e 7b 23 5c 68 66 69 | 6c 5c 71 75 61 64 26 5c |gn{#\hfi|l\quad&\|
|00000c70| 68 66 69 6c 23 5c 71 71 | 75 61 64 26 26 5c 68 66 |hfil#\qq|uad&&\hf|
|00000c80| 69 6c 23 5c 71 75 61 64 | 5c 63 72 0a 46 6f 6e 74 |il#\quad|\cr.Font|
|00000c90| 26 5c 6f 6d 69 74 5c 68 | 66 69 6c 20 52 65 73 6f |&\omit\h|fil Reso|
|00000ca0| 6c 75 74 69 6f 6e 5c 68 | 66 69 6c 5c 71 75 61 64 |lution\h|fil\quad|
|00000cb0| 0a 20 26 5c 2e 7b 47 46 | 7d 20 73 69 7a 65 26 5c |. &\.{GF|} size&\|
|00000cc0| 2e 7b 50 4b 7d 20 73 69 | 7a 65 26 52 65 64 75 63 |.{PK} si|ze&Reduc|
|00000cd0| 74 69 6f 6e 20 66 61 63 | 74 6f 72 5c 63 72 0a 5c |tion fac|tor\cr.\|
|00000ce0| 6e 6f 61 6c 69 67 6e 7b | 5c 6d 65 64 73 6b 69 70 |noalign{|\medskip|
|00000cf0| 7d 0a 63 6d 72 31 30 26 | 33 30 30 26 31 33 32 30 |}.cmr10&|300&1320|
|00000d00| 30 26 35 34 38 34 26 34 | 32 5c 63 68 61 72 60 5c |0&5484&4|2\char`\|
|00000d10| 25 5c 63 72 0a 63 6d 72 | 31 30 26 33 36 30 26 31 |%\cr.cmr|10&360&1|
|00000d20| 35 33 34 32 26 36 34 39 | 36 26 34 32 5c 63 68 61 |5342&649|6&42\cha|
|00000d30| 72 60 5c 25 5c 63 72 0a | 63 6d 72 31 30 26 34 33 |r`\%\cr.|cmr10&43|
|00000d40| 32 26 31 38 31 32 30 26 | 37 38 30 38 26 34 33 5c |2&18120&|7808&43\|
|00000d50| 63 68 61 72 60 5c 25 5c | 63 72 0a 63 6d 72 31 30 |char`\%\|cr.cmr10|
|00000d60| 26 35 31 31 26 32 31 30 | 32 30 26 39 34 34 30 26 |&511&210|20&9440&|
|00000d70| 34 35 5c 63 68 61 72 60 | 5c 25 5c 63 72 0a 63 6d |45\char`|\%\cr.cm|
|00000d80| 72 31 30 26 36 32 32 26 | 32 34 38 38 30 26 31 31 |r10&622&|24880&11|
|00000d90| 34 39 32 26 34 36 5c 63 | 68 61 72 60 5c 25 5c 63 |492&46\c|har`\%\c|
|00000da0| 72 0a 63 6d 72 31 30 26 | 37 34 36 26 32 39 34 36 |r.cmr10&|746&2946|
|00000db0| 34 26 31 33 39 31 32 26 | 34 37 5c 63 68 61 72 60 |4&13912&|47\char`|
|00000dc0| 5c 25 5c 63 72 0a 63 6d | 69 6e 63 68 26 33 30 30 |\%\cr.cm|inch&300|
|00000dd0| 26 34 38 37 36 34 26 32 | 32 30 37 36 26 34 35 5c |&48764&2|2076&45\|
|00000de0| 63 68 61 72 60 5c 25 5c | 63 72 0a 7d 7d 24 24 0a |char`\%\|cr.}}$$.|
|00000df0| 49 74 20 69 73 20 68 6f | 70 65 64 20 74 68 61 74 |It is ho|ped that|
|00000e00| 20 74 68 65 20 73 69 6d | 70 6c 69 63 69 74 79 20 | the sim|plicity |
|00000e10| 61 6e 64 20 73 6d 61 6c | 6c 20 73 69 7a 65 20 6f |and smal|l size o|
|00000e20| 66 20 74 68 65 20 5c 2e | 7b 50 4b 7d 20 66 69 6c |f the \.|{PK} fil|
|00000e30| 65 73 20 77 69 6c 6c 20 | 6d 61 6b 65 0a 74 68 65 |es will |make.the|
|00000e40| 6d 20 77 69 64 65 6c 79 | 20 61 63 63 65 70 74 65 |m widely| accepte|
|00000e50| 64 2e 0a 0a 54 68 65 20 | 5c 2e 7b 50 4b 7d 20 66 |d...The |\.{PK} f|
|00000e60| 6f 72 6d 61 74 20 77 61 | 73 20 64 65 73 69 67 6e |ormat wa|s design|
|00000e70| 65 64 20 61 6e 64 20 69 | 6d 70 6c 65 6d 65 6e 74 |ed and i|mplement|
|00000e80| 65 64 20 62 79 20 54 6f | 6d 61 73 20 52 6f 6b 69 |ed by To|mas Roki|
|00000e90| 63 6b 69 20 64 75 72 69 | 6e 67 0a 40 5e 52 6f 6b |cki duri|ng.@^Rok|
|00000ea0| 69 63 6b 69 2c 20 54 6f | 6d 61 73 20 47 65 72 68 |icki, To|mas Gerh|
|00000eb0| 61 72 64 20 50 61 75 6c | 40 3e 0a 74 68 65 20 73 |ard Paul|@>.the s|
|00000ec0| 75 6d 6d 65 72 20 6f 66 | 20 31 39 38 35 2e 20 54 |ummer of| 1985. T|
|00000ed0| 68 69 73 20 70 72 6f 67 | 72 61 6d 20 62 6f 72 72 |his prog|ram borr|
|00000ee0| 6f 77 73 20 61 20 66 65 | 77 20 72 6f 75 74 69 6e |ows a fe|w routin|
|00000ef0| 65 73 20 66 72 6f 6d 20 | 5c 2e 7b 47 46 74 6f 50 |es from |\.{GFtoP|
|00000f00| 58 4c 7d 20 62 79 0a 41 | 72 74 68 75 72 20 53 61 |XL} by.A|rthur Sa|
|00000f10| 6d 75 65 6c 2e 0a 40 5e | 53 61 6d 75 65 6c 2c 20 |muel..@^|Samuel, |
|00000f20| 41 72 74 68 75 72 20 4c | 65 65 40 3e 0a 0a 54 68 |Arthur L|ee@>..Th|
|00000f30| 65 20 7c 62 61 6e 6e 65 | 72 7c 20 73 74 72 69 6e |e |banne|r| strin|
|00000f40| 67 20 64 65 66 69 6e 65 | 64 20 68 65 72 65 20 73 |g define|d here s|
|00000f50| 68 6f 75 6c 64 20 62 65 | 20 63 68 61 6e 67 65 64 |hould be| changed|
|00000f60| 20 77 68 65 6e 65 76 65 | 72 20 5c 2e 7b 47 46 74 | wheneve|r \.{GFt|
|00000f70| 6f 50 4b 7d 0a 67 65 74 | 73 20 6d 6f 64 69 66 69 |oPK}.get|s modifi|
|00000f80| 65 64 2e 20 54 68 65 20 | 7c 70 72 65 61 6d 62 6c |ed. The ||preambl|
|00000f90| 65 5f 63 6f 6d 6d 65 6e | 74 7c 20 6d 61 63 72 6f |e_commen|t| macro|
|00000fa0| 20 28 6e 65 61 72 20 74 | 68 65 20 65 6e 64 20 6f | (near t|he end o|
|00000fb0| 66 20 74 68 65 20 70 72 | 6f 67 72 61 6d 29 0a 73 |f the pr|ogram).s|
|00000fc0| 68 6f 75 6c 64 20 62 65 | 20 63 68 61 6e 67 65 64 |hould be| changed|
|00000fd0| 20 74 6f 6f 2e 0a 0a 40 | 64 20 62 61 6e 6e 65 72 | too...@|d banner|
|00000fe0| 3d 3d 27 54 68 69 73 20 | 69 73 20 47 46 74 6f 50 |=='This |is GFtoP|
|00000ff0| 4b 2c 20 56 65 72 73 69 | 6f 6e 20 32 2e 33 27 20 |K, Versi|on 2.3' |
|00001000| 7b 70 72 69 6e 74 65 64 | 20 77 68 65 6e 20 74 68 |{printed| when th|
|00001010| 65 20 70 72 6f 67 72 61 | 6d 20 73 74 61 72 74 73 |e progra|m starts|
|00001020| 7d 0a 0a 40 20 53 6f 6d | 65 20 6f 66 20 74 68 65 |}..@ Som|e of the|
|00001030| 20 64 69 61 67 6e 6f 73 | 74 69 63 20 69 6e 66 6f | diagnos|tic info|
|00001040| 72 6d 61 74 69 6f 6e 20 | 69 73 20 70 72 69 6e 74 |rmation |is print|
|00001050| 65 64 20 75 73 69 6e 67 | 0a 7c 64 5f 70 72 69 6e |ed using|.|d_prin|
|00001060| 74 5f 6c 6e 7c 2e 20 20 | 57 68 65 6e 20 64 65 62 |t_ln|. |When deb|
|00001070| 75 67 67 69 6e 67 2c 20 | 69 74 20 73 68 6f 75 6c |ugging, |it shoul|
|00001080| 64 20 62 65 20 73 65 74 | 20 74 68 65 20 73 61 6d |d be set| the sam|
|00001090| 65 20 61 73 0a 7c 70 72 | 69 6e 74 5f 6c 6e 7c 2c |e as.|pr|int_ln|,|
|000010a0| 20 64 65 66 69 6e 65 64 | 20 6c 61 74 65 72 2e 0a | defined| later..|
|000010b0| 40 5e 64 65 62 75 67 67 | 69 6e 67 40 3e 0a 0a 40 |@^debugg|ing@>..@|
|000010c0| 64 20 64 5f 70 72 69 6e | 74 5f 6c 6e 28 23 29 3d |d d_prin|t_ln(#)=|
|000010d0| 3d 0a 0a 40 20 54 68 69 | 73 20 70 72 6f 67 72 61 |=..@ Thi|s progra|
|000010e0| 6d 20 69 73 20 77 72 69 | 74 74 65 6e 20 69 6e 20 |m is wri|tten in |
|000010f0| 73 74 61 6e 64 61 72 64 | 20 5c 50 41 53 43 41 4c |standard| \PASCAL|
|00001100| 2c 20 65 78 63 65 70 74 | 20 77 68 65 72 65 20 69 |, except| where i|
|00001110| 74 20 69 73 0a 6e 65 63 | 65 73 73 61 72 79 20 74 |t is.nec|essary t|
|00001120| 6f 20 75 73 65 20 65 78 | 74 65 6e 73 69 6f 6e 73 |o use ex|tensions|
|00001130| 3b 20 66 6f 72 20 65 78 | 61 6d 70 6c 65 2c 20 6f |; for ex|ample, o|
|00001140| 6e 65 20 65 78 74 65 6e | 73 69 6f 6e 20 69 73 20 |ne exten|sion is |
|00001150| 74 6f 20 75 73 65 20 61 | 0a 64 65 66 61 75 6c 74 |to use a|.default|
|00001160| 20 7c 63 61 73 65 7c 20 | 61 73 20 69 6e 20 5c 2e | |case| |as in \.|
|00001170| 7b 54 41 4e 47 4c 45 7d | 2c 20 5c 2e 7b 57 45 41 |{TANGLE}|, \.{WEA|
|00001180| 56 45 7d 2c 20 65 74 63 | 2e 20 20 41 6c 6c 20 70 |VE}, etc|. All p|
|00001190| 6c 61 63 65 73 20 77 68 | 65 72 65 0a 6e 6f 6e 73 |laces wh|ere.nons|
|000011a0| 74 61 6e 64 61 72 64 20 | 63 6f 6e 73 74 72 75 63 |tandard |construc|
|000011b0| 74 69 6f 6e 73 20 61 72 | 65 20 75 73 65 64 20 73 |tions ar|e used s|
|000011c0| 68 6f 75 6c 64 20 62 65 | 20 6c 69 73 74 65 64 20 |hould be| listed |
|000011d0| 69 6e 20 74 68 65 20 69 | 6e 64 65 78 20 75 6e 64 |in the i|ndex und|
|000011e0| 65 72 0a 60 60 73 79 73 | 74 65 6d 20 64 65 70 65 |er.``sys|tem depe|
|000011f0| 6e 64 65 6e 63 69 65 73 | 2e 27 27 0a 40 21 40 5e |ndencies|.''.@!@^|
|00001200| 73 79 73 74 65 6d 20 64 | 65 70 65 6e 64 65 6e 63 |system d|ependenc|
|00001210| 69 65 73 40 3e 0a 0a 40 | 64 20 6f 74 68 65 72 63 |ies@>..@|d otherc|
|00001220| 61 73 65 73 20 3d 3d 20 | 6f 74 68 65 72 73 3a 20 |ases == |others: |
|00001230| 7b 64 65 66 61 75 6c 74 | 20 66 6f 72 20 63 61 73 |{default| for cas|
|00001240| 65 73 20 6e 6f 74 20 6c | 69 73 74 65 64 20 65 78 |es not l|isted ex|
|00001250| 70 6c 69 63 69 74 6c 79 | 7d 0a 40 64 20 65 6e 64 |plicitly|}.@d end|
|00001260| 63 61 73 65 73 20 3d 3d | 20 40 2b 65 6e 64 20 7b |cases ==| @+end {|
|00001270| 66 6f 6c 6c 6f 77 73 20 | 74 68 65 20 64 65 66 61 |follows |the defa|
|00001280| 75 6c 74 20 63 61 73 65 | 20 69 6e 20 61 6e 20 65 |ult case| in an e|
|00001290| 78 74 65 6e 64 65 64 20 | 7c 63 61 73 65 7c 20 73 |xtended ||case| s|
|000012a0| 74 61 74 65 6d 65 6e 74 | 7d 0a 40 66 20 6f 74 68 |tatement|}.@f oth|
|000012b0| 65 72 63 61 73 65 73 20 | 3d 3d 20 65 6c 73 65 0a |ercases |== else.|
|000012c0| 40 66 20 65 6e 64 63 61 | 73 65 73 20 3d 3d 20 65 |@f endca|ses == e|
|000012d0| 6e 64 0a 0a 40 20 54 68 | 65 20 62 69 6e 61 72 79 |nd..@ Th|e binary|
|000012e0| 20 69 6e 70 75 74 20 63 | 6f 6d 65 73 20 66 72 6f | input c|omes fro|
|000012f0| 6d 20 7c 67 66 5f 66 69 | 6c 65 7c 2c 20 61 6e 64 |m |gf_fi|le|, and|
|00001300| 20 74 68 65 20 6f 75 74 | 70 75 74 20 66 6f 6e 74 | the out|put font|
|00001310| 20 69 73 20 77 72 69 74 | 74 65 6e 0a 6f 6e 20 7c | is writ|ten.on ||
|00001320| 70 6b 5f 66 69 6c 65 7c | 2e 20 20 41 6c 6c 20 74 |pk_file||. All t|
|00001330| 65 78 74 20 6f 75 74 70 | 75 74 20 69 73 20 77 72 |ext outp|ut is wr|
|00001340| 69 74 74 65 6e 20 6f 6e | 20 5c 50 41 53 43 41 4c |itten on| \PASCAL|
|00001350| 27 73 20 73 74 61 6e 64 | 61 72 64 20 7c 6f 75 74 |'s stand|ard |out|
|00001360| 70 75 74 7c 0a 66 69 6c | 65 2e 20 20 54 68 65 20 |put|.fil|e. The |
|00001370| 74 65 72 6d 20 7c 70 72 | 69 6e 74 7c 20 69 73 20 |term |pr|int| is |
|00001380| 75 73 65 64 20 69 6e 73 | 74 65 61 64 20 6f 66 20 |used ins|tead of |
|00001390| 7c 77 72 69 74 65 7c 20 | 77 68 65 6e 20 74 68 69 ||write| |when thi|
|000013a0| 73 20 70 72 6f 67 72 61 | 6d 20 77 72 69 74 65 73 |s progra|m writes|
|000013b0| 0a 6f 6e 20 7c 6f 75 74 | 70 75 74 7c 2c 20 73 6f |.on |out|put|, so|
|000013c0| 20 74 68 61 74 20 61 6c | 6c 20 73 75 63 68 20 6f | that al|l such o|
|000013d0| 75 74 70 75 74 20 63 6f | 75 6c 64 20 65 61 73 69 |utput co|uld easi|
|000013e0| 6c 79 20 62 65 20 72 65 | 64 69 72 65 63 74 65 64 |ly be re|directed|
|000013f0| 20 69 66 20 64 65 73 69 | 72 65 64 2e 0a 0a 40 64 | if desi|red...@d|
|00001400| 20 70 72 69 6e 74 28 23 | 29 3d 3d 77 72 69 74 65 | print(#|)==write|
|00001410| 28 23 29 0a 40 64 20 70 | 72 69 6e 74 5f 6c 6e 28 |(#).@d p|rint_ln(|
|00001420| 23 29 3d 3d 77 72 69 74 | 65 5f 6c 6e 28 23 29 0a |#)==writ|e_ln(#).|
|00001430| 0a 40 70 20 70 72 6f 67 | 72 61 6d 20 47 46 74 6f |.@p prog|ram GFto|
|00001440| 50 4b 28 40 21 67 66 5f | 66 69 6c 65 2c 40 21 70 |PK(@!gf_|file,@!p|
|00001450| 6b 5f 66 69 6c 65 2c 40 | 21 6f 75 74 70 75 74 29 |k_file,@|!output)|
|00001460| 3b 0a 6c 61 62 65 6c 20 | 40 3c 4c 61 62 65 6c 73 |;.label |@<Labels|
|00001470| 20 69 6e 20 74 68 65 20 | 6f 75 74 65 72 20 62 6c | in the |outer bl|
|00001480| 6f 63 6b 40 3e 40 2f 0a | 63 6f 6e 73 74 20 40 3c |ock@>@/.|const @<|
|00001490| 43 6f 6e 73 74 61 6e 74 | 73 20 69 6e 20 74 68 65 |Constant|s in the|
|000014a0| 20 6f 75 74 65 72 20 62 | 6c 6f 63 6b 40 3e 40 2f | outer b|lock@>@/|
|000014b0| 0a 74 79 70 65 20 40 3c | 54 79 70 65 73 20 69 6e |.type @<|Types in|
|000014c0| 20 74 68 65 20 6f 75 74 | 65 72 20 62 6c 6f 63 6b | the out|er block|
|000014d0| 40 3e 40 2f 0a 76 61 72 | 20 40 3c 47 6c 6f 62 61 |@>@/.var| @<Globa|
|000014e0| 6c 73 20 69 6e 20 74 68 | 65 20 6f 75 74 65 72 20 |ls in th|e outer |
|000014f0| 62 6c 6f 63 6b 40 3e 40 | 2f 0a 70 72 6f 63 65 64 |block@>@|/.proced|
|00001500| 75 72 65 20 69 6e 69 74 | 69 61 6c 69 7a 65 3b 20 |ure init|ialize; |
|00001510| 7b 74 68 69 73 20 70 72 | 6f 63 65 64 75 72 65 20 |{this pr|ocedure |
|00001520| 67 65 74 73 20 74 68 69 | 6e 67 73 20 73 74 61 72 |gets thi|ngs star|
|00001530| 74 65 64 20 70 72 6f 70 | 65 72 6c 79 7d 0a 20 20 |ted prop|erly}. |
|00001540| 76 61 72 20 69 3a 69 6e | 74 65 67 65 72 3b 20 7b |var i:in|teger; {|
|00001550| 6c 6f 6f 70 20 69 6e 64 | 65 78 20 66 6f 72 20 69 |loop ind|ex for i|
|00001560| 6e 69 74 69 61 6c 69 7a | 61 74 69 6f 6e 73 7d 0a |nitializ|ations}.|
|00001570| 20 20 62 65 67 69 6e 20 | 70 72 69 6e 74 5f 6c 6e | begin |print_ln|
|00001580| 28 62 61 6e 6e 65 72 29 | 3b 40 2f 0a 20 20 40 3c |(banner)|;@/. @<|
|00001590| 53 65 74 20 69 6e 69 74 | 69 61 6c 20 76 61 6c 75 |Set init|ial valu|
|000015a0| 65 73 40 3e 40 2f 0a 20 | 20 65 6e 64 3b 0a 0a 40 |es@>@/. | end;..@|
|000015b0| 20 49 66 20 74 68 65 20 | 70 72 6f 67 72 61 6d 20 | If the |program |
|000015c0| 68 61 73 20 74 6f 20 73 | 74 6f 70 20 70 72 65 6d |has to s|top prem|
|000015d0| 61 74 75 72 65 6c 79 2c | 20 69 74 20 67 6f 65 73 |aturely,| it goes|
|000015e0| 20 74 6f 20 74 68 65 0a | 60 7c 66 69 6e 61 6c 5f | to the.|`|final_|
|000015f0| 65 6e 64 7c 27 2e 0a 0a | 40 64 20 66 69 6e 61 6c |end|'...|@d final|
|00001600| 5f 65 6e 64 3d 39 39 39 | 39 20 7b 6c 61 62 65 6c |_end=999|9 {label|
|00001610| 20 66 6f 72 20 74 68 65 | 20 65 6e 64 20 6f 66 20 | for the| end of |
|00001620| 69 74 20 61 6c 6c 7d 0a | 0a 40 3c 4c 61 62 65 6c |it all}.|.@<Label|
|00001630| 73 2e 2e 2e 40 3e 3d 66 | 69 6e 61 6c 5f 65 6e 64 |s...@>=f|inal_end|
|00001640| 3b 0a 0a 40 20 54 68 65 | 20 66 6f 6c 6c 6f 77 69 |;..@ The| followi|
|00001650| 6e 67 20 70 61 72 61 6d | 65 74 65 72 73 20 63 61 |ng param|eters ca|
|00001660| 6e 20 62 65 20 63 68 61 | 6e 67 65 64 20 61 74 20 |n be cha|nged at |
|00001670| 63 6f 6d 70 69 6c 65 20 | 74 69 6d 65 20 74 6f 20 |compile |time to |
|00001680| 65 78 74 65 6e 64 20 6f | 72 0a 72 65 64 75 63 65 |extend o|r.reduce|
|00001690| 20 5c 2e 7b 47 46 74 6f | 50 4b 7d 27 73 20 63 61 | \.{GFto|PK}'s ca|
|000016a0| 70 61 63 69 74 79 2e 20 | 20 54 68 65 20 76 61 6c |pacity. | The val|
|000016b0| 75 65 73 20 67 69 76 65 | 6e 20 68 65 72 65 20 73 |ues give|n here s|
|000016c0| 68 6f 75 6c 64 20 62 65 | 20 71 75 69 74 65 0a 61 |hould be| quite.a|
|000016d0| 64 65 71 75 61 74 65 20 | 66 6f 72 20 6d 6f 73 74 |dequate |for most|
|000016e0| 20 75 73 65 73 2e 20 20 | 41 73 73 75 6d 69 6e 67 | uses. |Assuming|
|000016f0| 20 61 6e 20 61 76 65 72 | 61 67 65 20 6f 66 20 61 | an aver|age of a|
|00001700| 62 6f 75 74 20 74 68 72 | 65 65 20 73 74 72 6f 6b |bout thr|ee strok|
|00001710| 65 73 20 70 65 72 0a 72 | 61 73 74 65 72 20 6c 69 |es per.r|aster li|
|00001720| 6e 65 2c 20 74 68 65 72 | 65 20 61 72 65 20 73 69 |ne, ther|e are si|
|00001730| 78 20 72 75 6e 2d 63 6f | 75 6e 74 73 20 70 65 72 |x run-co|unts per|
|00001740| 20 6c 69 6e 65 2c 20 61 | 6e 64 20 74 68 65 72 65 | line, a|nd there|
|00001750| 66 6f 72 65 20 7c 6d 61 | 78 5f 72 6f 77 7c 0a 77 |fore |ma|x_row|.w|
|00001760| 69 6c 6c 20 62 65 20 73 | 75 66 66 69 63 69 65 6e |ill be s|ufficien|
|00001770| 74 20 66 6f 72 20 61 20 | 63 68 61 72 61 63 74 65 |t for a |characte|
|00001780| 72 20 32 36 30 30 20 70 | 69 78 65 6c 73 20 68 69 |r 2600 p|ixels hi|
|00001790| 67 68 2e 0a 0a 40 3c 43 | 6f 6e 73 74 61 6e 74 73 |gh...@<C|onstants|
|000017a0| 2e 2e 2e 40 3e 3d 0a 40 | 21 6c 69 6e 65 5f 6c 65 |...@>=.@|!line_le|
|000017b0| 6e 67 74 68 3d 37 39 3b | 20 7b 62 72 61 63 6b 65 |ngth=79;| {bracke|
|000017c0| 74 65 64 20 6c 69 6e 65 | 73 20 6f 66 20 6f 75 74 |ted line|s of out|
|000017d0| 70 75 74 20 77 69 6c 6c | 20 62 65 20 61 74 20 6d |put will| be at m|
|000017e0| 6f 73 74 20 74 68 69 73 | 20 6c 6f 6e 67 7d 0a 40 |ost this| long}.@|
|000017f0| 21 6d 61 78 5f 72 6f 77 | 3d 31 36 30 30 30 3b 20 |!max_row|=16000; |
|00001800| 7b 6c 61 72 67 65 73 74 | 20 69 6e 64 65 78 20 69 |{largest| index i|
|00001810| 6e 20 74 68 65 20 6d 61 | 69 6e 20 7c 72 6f 77 7c |n the ma|in |row||
|00001820| 20 61 72 72 61 79 7d 0a | 0a 40 20 48 65 72 65 20 | array}.|.@ Here |
|00001830| 61 72 65 20 73 6f 6d 65 | 20 6d 61 63 72 6f 73 20 |are some| macros |
|00001840| 66 6f 72 20 63 6f 6d 6d | 6f 6e 20 70 72 6f 67 72 |for comm|on progr|
|00001850| 61 6d 6d 69 6e 67 20 69 | 64 69 6f 6d 73 2e 0a 0a |amming i|dioms...|
|00001860| 40 64 20 69 6e 63 72 28 | 23 29 20 3d 3d 20 23 3a |@d incr(|#) == #:|
|00001870| 3d 23 2b 31 20 7b 69 6e | 63 72 65 61 73 65 20 61 |=#+1 {in|crease a|
|00001880| 20 76 61 72 69 61 62 6c | 65 20 62 79 20 75 6e 69 | variabl|e by uni|
|00001890| 74 79 7d 0a 40 64 20 64 | 65 63 72 28 23 29 20 3d |ty}.@d d|ecr(#) =|
|000018a0| 3d 20 23 3a 3d 23 2d 31 | 20 7b 64 65 63 72 65 61 |= #:=#-1| {decrea|
|000018b0| 73 65 20 61 20 76 61 72 | 69 61 62 6c 65 20 62 79 |se a var|iable by|
|000018c0| 20 75 6e 69 74 79 7d 0a | 0a 40 20 49 66 20 74 68 | unity}.|.@ If th|
|000018d0| 65 20 5c 2e 7b 47 46 7d | 20 66 69 6c 65 20 69 73 |e \.{GF}| file is|
|000018e0| 20 62 61 64 6c 79 20 6d | 61 6c 66 6f 72 6d 65 64 | badly m|alformed|
|000018f0| 2c 20 74 68 65 20 77 68 | 6f 6c 65 20 70 72 6f 63 |, the wh|ole proc|
|00001900| 65 73 73 20 6d 75 73 74 | 20 62 65 20 61 62 6f 72 |ess must| be abor|
|00001910| 74 65 64 3b 0a 5c 2e 7b | 47 46 74 6f 50 4b 7d 20 |ted;.\.{|GFtoPK} |
|00001920| 77 69 6c 6c 20 67 69 76 | 65 20 75 70 2c 20 61 66 |will giv|e up, af|
|00001930| 74 65 72 20 69 73 73 75 | 69 6e 67 20 61 6e 20 65 |ter issu|ing an e|
|00001940| 72 72 6f 72 20 6d 65 73 | 73 61 67 65 20 61 62 6f |rror mes|sage abo|
|00001950| 75 74 20 74 68 65 20 73 | 79 6d 70 74 6f 6d 73 0a |ut the s|ymptoms.|
|00001960| 74 68 61 74 20 77 65 72 | 65 20 6e 6f 74 69 63 65 |that wer|e notice|
|00001970| 64 2e 0a 0a 53 75 63 68 | 20 65 72 72 6f 72 73 20 |d...Such| errors |
|00001980| 6d 69 67 68 74 20 62 65 | 20 64 69 73 63 6f 76 65 |might be| discove|
|00001990| 72 65 64 20 69 6e 73 69 | 64 65 20 6f 66 20 73 75 |red insi|de of su|
|000019a0| 62 72 6f 75 74 69 6e 65 | 73 20 69 6e 73 69 64 65 |broutine|s inside|
|000019b0| 20 6f 66 20 73 75 62 72 | 6f 75 74 69 6e 65 73 2c | of subr|outines,|
|000019c0| 0a 73 6f 20 61 20 70 72 | 6f 63 65 64 75 72 65 20 |.so a pr|ocedure |
|000019d0| 63 61 6c 6c 65 64 20 7c | 6a 75 6d 70 5f 6f 75 74 |called ||jump_out|
|000019e0| 7c 20 68 61 73 20 62 65 | 65 6e 20 69 6e 74 72 6f || has be|en intro|
|000019f0| 64 75 63 65 64 2e 20 54 | 68 69 73 20 70 72 6f 63 |duced. T|his proc|
|00001a00| 65 64 75 72 65 2c 20 77 | 68 69 63 68 0a 73 69 6d |edure, w|hich.sim|
|00001a10| 70 6c 79 20 74 72 61 6e | 73 66 65 72 73 20 63 6f |ply tran|sfers co|
|00001a20| 6e 74 72 6f 6c 20 74 6f | 20 74 68 65 20 6c 61 62 |ntrol to| the lab|
|00001a30| 65 6c 20 7c 66 69 6e 61 | 6c 5f 65 6e 64 7c 20 61 |el |fina|l_end| a|
|00001a40| 74 20 74 68 65 20 65 6e | 64 20 6f 66 20 74 68 65 |t the en|d of the|
|00001a50| 20 70 72 6f 67 72 61 6d | 2c 0a 63 6f 6e 74 61 69 | program|,.contai|
|00001a60| 6e 73 20 74 68 65 20 6f | 6e 6c 79 20 6e 6f 6e 2d |ns the o|nly non-|
|00001a70| 6c 6f 63 61 6c 20 7c 67 | 6f 74 6f 7c 20 73 74 61 |local |g|oto| sta|
|00001a80| 74 65 6d 65 6e 74 20 69 | 6e 20 5c 2e 7b 47 46 74 |tement i|n \.{GFt|
|00001a90| 6f 50 4b 7d 2e 0a 40 5e | 73 79 73 74 65 6d 20 64 |oPK}..@^|system d|
|00001aa0| 65 70 65 6e 64 65 6e 63 | 69 65 73 40 3e 0a 0a 40 |ependenc|ies@>..@|
|00001ab0| 64 20 61 62 6f 72 74 28 | 23 29 3d 3d 62 65 67 69 |d abort(|#)==begi|
|00001ac0| 6e 20 70 72 69 6e 74 28 | 27 20 27 2c 23 29 3b 20 |n print(|' ',#); |
|00001ad0| 6a 75 6d 70 5f 6f 75 74 | 3b 0a 20 20 20 20 65 6e |jump_out|;. en|
|00001ae0| 64 0a 40 64 20 62 61 64 | 5f 67 66 28 23 29 3d 3d |d.@d bad|_gf(#)==|
|00001af0| 61 62 6f 72 74 28 27 42 | 61 64 20 47 46 20 66 69 |abort('B|ad GF fi|
|00001b00| 6c 65 3a 20 27 2c 23 2c | 27 21 27 29 0a 40 2e 42 |le: ',#,|'!').@.B|
|00001b10| 61 64 20 47 46 20 66 69 | 6c 65 40 3e 0a 0a 40 70 |ad GF fi|le@>..@p|
|00001b20| 20 70 72 6f 63 65 64 75 | 72 65 20 6a 75 6d 70 5f | procedu|re jump_|
|00001b30| 6f 75 74 3b 0a 62 65 67 | 69 6e 20 67 6f 74 6f 20 |out;.beg|in goto |
|00001b40| 66 69 6e 61 6c 5f 65 6e | 64 3b 0a 65 6e 64 3b 0a |final_en|d;.end;.|
|00001b50| 0a 40 2a 20 54 68 65 20 | 63 68 61 72 61 63 74 65 |.@* The |characte|
|00001b60| 72 20 73 65 74 2e 0a 4c | 69 6b 65 20 61 6c 6c 20 |r set..L|ike all |
|00001b70| 70 72 6f 67 72 61 6d 73 | 20 77 72 69 74 74 65 6e |programs| written|
|00001b80| 20 77 69 74 68 20 74 68 | 65 20 20 5c 2e 7b 57 45 | with th|e \.{WE|
|00001b90| 42 7d 20 73 79 73 74 65 | 6d 2c 20 5c 2e 7b 47 46 |B} syste|m, \.{GF|
|00001ba0| 74 6f 50 4b 7d 20 63 61 | 6e 20 62 65 0a 75 73 65 |toPK} ca|n be.use|
|00001bb0| 64 20 77 69 74 68 20 61 | 6e 79 20 63 68 61 72 61 |d with a|ny chara|
|00001bc0| 63 74 65 72 20 73 65 74 | 2e 20 42 75 74 20 69 74 |cter set|. But it|
|00001bd0| 20 75 73 65 73 20 41 53 | 43 49 49 20 63 6f 64 65 | uses AS|CII code|
|00001be0| 20 69 6e 74 65 72 6e 61 | 6c 6c 79 2c 20 62 65 63 | interna|lly, bec|
|00001bf0| 61 75 73 65 0a 74 68 65 | 20 70 72 6f 67 72 61 6d |ause.the| program|
|00001c00| 6d 69 6e 67 20 66 6f 72 | 20 70 6f 72 74 61 62 6c |ming for| portabl|
|00001c10| 65 20 69 6e 70 75 74 2d | 6f 75 74 70 75 74 20 69 |e input-|output i|
|00001c20| 73 20 65 61 73 69 65 72 | 20 77 68 65 6e 20 61 20 |s easier| when a |
|00001c30| 66 69 78 65 64 20 69 6e | 74 65 72 6e 61 6c 0a 63 |fixed in|ternal.c|
|00001c40| 6f 64 65 20 69 73 20 75 | 73 65 64 2e 0a 0a 54 68 |ode is u|sed...Th|
|00001c50| 65 20 6e 65 78 74 20 66 | 65 77 20 73 65 63 74 69 |e next f|ew secti|
|00001c60| 6f 6e 73 20 6f 66 20 5c | 2e 7b 47 46 74 6f 50 4b |ons of \|.{GFtoPK|
|00001c70| 7d 20 68 61 76 65 20 74 | 68 65 72 65 66 6f 72 65 |} have t|herefore|
|00001c80| 20 62 65 65 6e 20 63 6f | 70 69 65 64 20 66 72 6f | been co|pied fro|
|00001c90| 6d 20 74 68 65 0a 61 6e | 61 6c 6f 67 6f 75 73 20 |m the.an|alogous |
|00001ca0| 6f 6e 65 73 20 69 6e 20 | 74 68 65 20 5c 2e 7b 57 |ones in |the \.{W|
|00001cb0| 45 42 7d 20 73 79 73 74 | 65 6d 20 72 6f 75 74 69 |EB} syst|em routi|
|00001cc0| 6e 65 73 2e 20 54 68 65 | 79 20 68 61 76 65 20 62 |nes. The|y have b|
|00001cd0| 65 65 6e 20 63 6f 6e 73 | 69 64 65 72 61 62 6c 79 |een cons|iderably|
|00001ce0| 0a 73 69 6d 70 6c 69 66 | 69 65 64 2c 20 73 69 6e |.simplif|ied, sin|
|00001cf0| 63 65 20 5c 2e 7b 47 46 | 74 6f 50 4b 7d 20 6e 65 |ce \.{GF|toPK} ne|
|00001d00| 65 64 20 6e 6f 74 20 64 | 65 61 6c 20 77 69 74 68 |ed not d|eal with|
|00001d10| 20 74 68 65 20 63 6f 6e | 74 72 6f 76 65 72 73 69 | the con|troversi|
|00001d20| 61 6c 0a 41 53 43 49 49 | 20 63 6f 64 65 73 20 6c |al.ASCII| codes l|
|00001d30| 65 73 73 20 74 68 61 6e | 20 40 27 34 30 20 6f 72 |ess than| @'40 or|
|00001d40| 20 67 72 65 61 74 65 72 | 20 74 68 61 6e 20 40 27 | greater| than @'|
|00001d50| 31 37 36 2e 0a 49 66 20 | 73 75 63 68 20 63 6f 64 |176..If |such cod|
|00001d60| 65 73 20 61 70 70 65 61 | 72 20 69 6e 20 74 68 65 |es appea|r in the|
|00001d70| 20 5c 2e 7b 47 46 7d 20 | 66 69 6c 65 2c 0a 74 68 | \.{GF} |file,.th|
|00001d80| 65 79 20 77 69 6c 6c 20 | 62 65 20 70 72 69 6e 74 |ey will |be print|
|00001d90| 65 64 20 61 73 20 71 75 | 65 73 74 69 6f 6e 20 6d |ed as qu|estion m|
|00001da0| 61 72 6b 73 2e 0a 0a 40 | 3c 54 79 70 65 73 2e 2e |arks...@|<Types..|
|00001db0| 2e 40 3e 3d 0a 40 21 41 | 53 43 49 49 5f 63 6f 64 |.@>=.@!A|SCII_cod|
|00001dc0| 65 3d 22 20 22 2e 2e 22 | 7e 22 3b 20 7b 61 20 73 |e=" ".."|~"; {a s|
|00001dd0| 75 62 72 61 6e 67 65 20 | 6f 66 20 74 68 65 20 69 |ubrange |of the i|
|00001de0| 6e 74 65 67 65 72 73 7d | 0a 0a 40 20 54 68 65 20 |ntegers}|..@ The |
|00001df0| 6f 72 69 67 69 6e 61 6c | 20 5c 50 41 53 43 41 4c |original| \PASCAL|
|00001e00| 5c 20 63 6f 6d 70 69 6c | 65 72 20 77 61 73 20 64 |\ compil|er was d|
|00001e10| 65 73 69 67 6e 65 64 20 | 69 6e 20 74 68 65 20 6c |esigned |in the l|
|00001e20| 61 74 65 20 36 30 73 2c | 20 77 68 65 6e 20 73 69 |ate 60s,| when si|
|00001e30| 78 2d 62 69 74 0a 63 68 | 61 72 61 63 74 65 72 20 |x-bit.ch|aracter |
|00001e40| 73 65 74 73 20 77 65 72 | 65 20 63 6f 6d 6d 6f 6e |sets wer|e common|
|00001e50| 2c 20 73 6f 20 69 74 20 | 64 69 64 20 6e 6f 74 20 |, so it |did not |
|00001e60| 6d 61 6b 65 20 70 72 6f | 76 69 73 69 6f 6e 20 66 |make pro|vision f|
|00001e70| 6f 72 20 6c 6f 77 65 72 | 20 63 61 73 65 0a 6c 65 |or lower| case.le|
|00001e80| 74 74 65 72 73 2e 20 4e | 6f 77 61 64 61 79 73 2c |tters. N|owadays,|
|00001e90| 20 6f 66 20 63 6f 75 72 | 73 65 2c 20 77 65 20 6e | of cour|se, we n|
|00001ea0| 65 65 64 20 74 6f 20 64 | 65 61 6c 20 77 69 74 68 |eed to d|eal with|
|00001eb0| 20 62 6f 74 68 20 75 70 | 70 65 72 20 61 6e 64 20 | both up|per and |
|00001ec0| 6c 6f 77 65 72 20 63 61 | 73 65 0a 61 6c 70 68 61 |lower ca|se.alpha|
|00001ed0| 62 65 74 73 20 69 6e 20 | 61 20 63 6f 6e 76 65 6e |bets in |a conven|
|00001ee0| 69 65 6e 74 20 77 61 79 | 2c 20 65 73 70 65 63 69 |ient way|, especi|
|00001ef0| 61 6c 6c 79 20 69 6e 20 | 61 20 70 72 6f 67 72 61 |ally in |a progra|
|00001f00| 6d 20 6c 69 6b 65 20 5c | 2e 7b 47 46 74 6f 50 4b |m like \|.{GFtoPK|
|00001f10| 7d 2e 0a 53 6f 20 77 65 | 20 73 68 61 6c 6c 20 61 |}..So we| shall a|
|00001f20| 73 73 75 6d 65 20 74 68 | 61 74 20 74 68 65 20 5c |ssume th|at the \|
|00001f30| 50 41 53 43 41 4c 5c 20 | 73 79 73 74 65 6d 20 62 |PASCAL\ |system b|
|00001f40| 65 69 6e 67 20 75 73 65 | 64 20 66 6f 72 20 5c 2e |eing use|d for \.|
|00001f50| 7b 47 46 74 6f 50 4b 7d | 0a 68 61 73 20 61 20 63 |{GFtoPK}|.has a c|
|00001f60| 68 61 72 61 63 74 65 72 | 20 73 65 74 20 63 6f 6e |haracter| set con|
|00001f70| 74 61 69 6e 69 6e 67 20 | 61 74 20 6c 65 61 73 74 |taining |at least|
|00001f80| 20 74 68 65 20 73 74 61 | 6e 64 61 72 64 20 76 69 | the sta|ndard vi|
|00001f90| 73 69 62 6c 65 20 63 68 | 61 72 61 63 74 65 72 73 |sible ch|aracters|
|00001fa0| 0a 6f 66 20 41 53 43 49 | 49 20 63 6f 64 65 20 28 |.of ASCI|I code (|
|00001fb0| 7c 22 21 22 7c 20 74 68 | 72 6f 75 67 68 20 7c 22 ||"!"| th|rough |"|
|00001fc0| 7e 22 7c 29 2e 0a 0a 53 | 6f 6d 65 20 5c 50 41 53 |~"|)...S|ome \PAS|
|00001fd0| 43 41 4c 5c 20 63 6f 6d | 70 69 6c 65 72 73 20 75 |CAL\ com|pilers u|
|00001fe0| 73 65 20 74 68 65 20 6f | 72 69 67 69 6e 61 6c 20 |se the o|riginal |
|00001ff0| 6e 61 6d 65 20 7c 63 68 | 61 72 7c 20 66 6f 72 20 |name |ch|ar| for |
|00002000| 74 68 65 20 64 61 74 61 | 20 74 79 70 65 0a 61 73 |the data| type.as|
|00002010| 73 6f 63 69 61 74 65 64 | 20 77 69 74 68 20 74 68 |sociated| with th|
|00002020| 65 20 63 68 61 72 61 63 | 74 65 72 73 20 69 6e 20 |e charac|ters in |
|00002030| 74 65 78 74 20 66 69 6c | 65 73 2c 20 77 68 69 6c |text fil|es, whil|
|00002040| 65 20 6f 74 68 65 72 20 | 5c 50 41 53 43 41 4c 20 |e other |\PASCAL |
|00002050| 73 0a 63 6f 6e 73 69 64 | 65 72 20 7c 63 68 61 72 |s.consid|er |char|
|00002060| 7c 20 74 6f 20 62 65 20 | 61 20 36 34 2d 65 6c 65 || to be |a 64-ele|
|00002070| 6d 65 6e 74 20 73 75 62 | 72 61 6e 67 65 20 6f 66 |ment sub|range of|
|00002080| 20 61 20 6c 61 72 67 65 | 72 20 64 61 74 61 20 74 | a large|r data t|
|00002090| 79 70 65 20 74 68 61 74 | 20 68 61 73 0a 73 6f 6d |ype that| has.som|
|000020a0| 65 20 6f 74 68 65 72 20 | 6e 61 6d 65 2e 20 20 49 |e other |name. I|
|000020b0| 6e 20 6f 72 64 65 72 20 | 74 6f 20 61 63 63 6f 6d |n order |to accom|
|000020c0| 6d 6f 64 61 74 65 20 74 | 68 69 73 20 64 69 66 66 |modate t|his diff|
|000020d0| 65 72 65 6e 63 65 2c 20 | 77 65 20 73 68 61 6c 6c |erence, |we shall|
|000020e0| 20 75 73 65 0a 74 68 65 | 20 6e 61 6d 65 20 7c 74 | use.the| name |t|
|000020f0| 65 78 74 5f 63 68 61 72 | 7c 20 74 6f 20 73 74 61 |ext_char|| to sta|
|00002100| 6e 64 20 66 6f 72 20 74 | 68 65 20 64 61 74 61 20 |nd for t|he data |
|00002110| 74 79 70 65 20 6f 66 20 | 74 68 65 20 63 68 61 72 |type of |the char|
|00002120| 61 63 74 65 72 73 20 69 | 6e 20 74 68 65 0a 6f 75 |acters i|n the.ou|
|00002130| 74 70 75 74 20 66 69 6c | 65 2e 20 20 57 65 20 73 |tput fil|e. We s|
|00002140| 68 61 6c 6c 20 61 6c 73 | 6f 20 61 73 73 75 6d 65 |hall als|o assume|
|00002150| 20 74 68 61 74 20 7c 74 | 65 78 74 5f 63 68 61 72 | that |t|ext_char|
|00002160| 7c 20 63 6f 6e 73 69 73 | 74 73 20 6f 66 0a 74 68 || consis|ts of.th|
|00002170| 65 20 65 6c 65 6d 65 6e | 74 73 20 7c 63 68 72 28 |e elemen|ts |chr(|
|00002180| 66 69 72 73 74 5f 74 65 | 78 74 5f 63 68 61 72 29 |first_te|xt_char)|
|00002190| 7c 20 74 68 72 6f 75 67 | 68 20 7c 63 68 72 28 6c || throug|h |chr(l|
|000021a0| 61 73 74 5f 74 65 78 74 | 5f 63 68 61 72 29 7c 2c |ast_text|_char)|,|
|000021b0| 0a 69 6e 63 6c 75 73 69 | 76 65 2e 20 54 68 65 20 |.inclusi|ve. The |
|000021c0| 66 6f 6c 6c 6f 77 69 6e | 67 20 64 65 66 69 6e 69 |followin|g defini|
|000021d0| 74 69 6f 6e 73 20 73 68 | 6f 75 6c 64 20 62 65 20 |tions sh|ould be |
|000021e0| 61 64 6a 75 73 74 65 64 | 20 69 66 20 6e 65 63 65 |adjusted| if nece|
|000021f0| 73 73 61 72 79 2e 0a 40 | 5e 73 79 73 74 65 6d 20 |ssary..@|^system |
|00002200| 64 65 70 65 6e 64 65 6e | 63 69 65 73 40 3e 0a 0a |dependen|cies@>..|
|00002210| 40 64 20 74 65 78 74 5f | 63 68 61 72 20 3d 3d 20 |@d text_|char == |
|00002220| 63 68 61 72 20 7b 74 68 | 65 20 64 61 74 61 20 74 |char {th|e data t|
|00002230| 79 70 65 20 6f 66 20 63 | 68 61 72 61 63 74 65 72 |ype of c|haracter|
|00002240| 73 20 69 6e 20 74 65 78 | 74 20 66 69 6c 65 73 7d |s in tex|t files}|
|00002250| 0a 40 64 20 66 69 72 73 | 74 5f 74 65 78 74 5f 63 |.@d firs|t_text_c|
|00002260| 68 61 72 3d 30 20 7b 6f | 72 64 69 6e 61 6c 20 6e |har=0 {o|rdinal n|
|00002270| 75 6d 62 65 72 20 6f 66 | 20 74 68 65 20 73 6d 61 |umber of| the sma|
|00002280| 6c 6c 65 73 74 20 65 6c | 65 6d 65 6e 74 20 6f 66 |llest el|ement of|
|00002290| 20 7c 74 65 78 74 5f 63 | 68 61 72 7c 7d 0a 40 64 | |text_c|har|}.@d|
|000022a0| 20 6c 61 73 74 5f 74 65 | 78 74 5f 63 68 61 72 3d | last_te|xt_char=|
|000022b0| 31 32 37 20 7b 6f 72 64 | 69 6e 61 6c 20 6e 75 6d |127 {ord|inal num|
|000022c0| 62 65 72 20 6f 66 20 74 | 68 65 20 6c 61 72 67 65 |ber of t|he large|
|000022d0| 73 74 20 65 6c 65 6d 65 | 6e 74 20 6f 66 20 7c 74 |st eleme|nt of |t|
|000022e0| 65 78 74 5f 63 68 61 72 | 7c 7d 0a 0a 40 3c 54 79 |ext_char||}..@<Ty|
|000022f0| 70 65 73 2e 2e 2e 40 3e | 3d 0a 40 21 74 65 78 74 |pes...@>|=.@!text|
|00002300| 5f 66 69 6c 65 3d 70 61 | 63 6b 65 64 20 66 69 6c |_file=pa|cked fil|
|00002310| 65 20 6f 66 20 74 65 78 | 74 5f 63 68 61 72 3b 0a |e of tex|t_char;.|
|00002320| 0a 40 20 54 68 65 20 5c | 2e 7b 47 46 74 6f 50 4b |.@ The \|.{GFtoPK|
|00002330| 7d 20 70 72 6f 63 65 73 | 73 6f 72 20 63 6f 6e 76 |} proces|sor conv|
|00002340| 65 72 74 73 20 62 65 74 | 77 65 65 6e 20 41 53 43 |erts bet|ween ASC|
|00002350| 49 49 20 63 6f 64 65 20 | 61 6e 64 0a 74 68 65 20 |II code |and.the |
|00002360| 75 73 65 72 27 73 20 65 | 78 74 65 72 6e 61 6c 20 |user's e|xternal |
|00002370| 63 68 61 72 61 63 74 65 | 72 20 73 65 74 20 62 79 |characte|r set by|
|00002380| 20 6d 65 61 6e 73 20 6f | 66 20 61 72 72 61 79 73 | means o|f arrays|
|00002390| 20 7c 78 6f 72 64 7c 20 | 61 6e 64 20 7c 78 63 68 | |xord| |and |xch|
|000023a0| 72 7c 0a 74 68 61 74 20 | 61 72 65 20 61 6e 61 6c |r|.that |are anal|
|000023b0| 6f 67 6f 75 73 20 74 6f | 20 5c 50 41 53 43 41 4c |ogous to| \PASCAL|
|000023c0| 27 73 20 7c 6f 72 64 7c | 20 61 6e 64 20 7c 63 68 |'s |ord|| and |ch|
|000023d0| 72 7c 20 66 75 6e 63 74 | 69 6f 6e 73 2e 0a 0a 40 |r| funct|ions...@|
|000023e0| 3c 47 6c 6f 62 61 6c 73 | 2e 2e 2e 40 3e 3d 0a 40 |<Globals|...@>=.@|
|000023f0| 21 78 6f 72 64 3a 20 61 | 72 72 61 79 20 5b 74 65 |!xord: a|rray [te|
|00002400| 78 74 5f 63 68 61 72 5d | 20 6f 66 20 41 53 43 49 |xt_char]| of ASCI|
|00002410| 49 5f 63 6f 64 65 3b 0a | 20 20 7b 73 70 65 63 69 |I_code;.| {speci|
|00002420| 66 69 65 73 20 63 6f 6e | 76 65 72 73 69 6f 6e 20 |fies con|version |
|00002430| 6f 66 20 69 6e 70 75 74 | 20 63 68 61 72 61 63 74 |of input| charact|
|00002440| 65 72 73 7d 0a 40 21 78 | 63 68 72 3a 20 61 72 72 |ers}.@!x|chr: arr|
|00002450| 61 79 20 5b 30 2e 2e 32 | 35 35 5d 20 6f 66 20 74 |ay [0..2|55] of t|
|00002460| 65 78 74 5f 63 68 61 72 | 3b 0a 20 20 7b 73 70 65 |ext_char|;. {spe|
|00002470| 63 69 66 69 65 73 20 63 | 6f 6e 76 65 72 73 69 6f |cifies c|onversio|
|00002480| 6e 20 6f 66 20 6f 75 74 | 70 75 74 20 63 68 61 72 |n of out|put char|
|00002490| 61 63 74 65 72 73 7d 0a | 0a 40 20 55 6e 64 65 72 |acters}.|.@ Under|
|000024a0| 20 6f 75 72 20 61 73 73 | 75 6d 70 74 69 6f 6e 20 | our ass|umption |
|000024b0| 74 68 61 74 20 74 68 65 | 20 76 69 73 69 62 6c 65 |that the| visible|
|000024c0| 20 63 68 61 72 61 63 74 | 65 72 73 20 6f 66 20 73 | charact|ers of s|
|000024d0| 74 61 6e 64 61 72 64 20 | 41 53 43 49 49 20 61 72 |tandard |ASCII ar|
|000024e0| 65 0a 61 6c 6c 20 70 72 | 65 73 65 6e 74 2c 20 74 |e.all pr|esent, t|
|000024f0| 68 65 20 66 6f 6c 6c 6f | 77 69 6e 67 20 61 73 73 |he follo|wing ass|
|00002500| 69 67 6e 6d 65 6e 74 20 | 73 74 61 74 65 6d 65 6e |ignment |statemen|
|00002510| 74 73 20 69 6e 69 74 69 | 61 6c 69 7a 65 20 74 68 |ts initi|alize th|
|00002520| 65 0a 7c 78 63 68 72 7c | 20 61 72 72 61 79 20 70 |e.|xchr|| array p|
|00002530| 72 6f 70 65 72 6c 79 2c | 20 77 69 74 68 6f 75 74 |roperly,| without|
|00002540| 20 6e 65 65 64 69 6e 67 | 20 61 6e 79 20 73 79 73 | needing| any sys|
|00002550| 74 65 6d 2d 64 65 70 65 | 6e 64 65 6e 74 20 63 68 |tem-depe|ndent ch|
|00002560| 61 6e 67 65 73 2e 0a 0a | 40 3c 53 65 74 20 69 6e |anges...|@<Set in|
|00002570| 69 74 2e 2e 2e 40 3e 3d | 0a 66 6f 72 20 69 3a 3d |it...@>=|.for i:=|
|00002580| 30 20 74 6f 20 40 27 33 | 37 20 64 6f 20 78 63 68 |0 to @'3|7 do xch|
|00002590| 72 5b 69 5d 3a 3d 27 3f | 27 3b 0a 78 63 68 72 5b |r[i]:='?|';.xchr[|
|000025a0| 40 27 34 30 5d 3a 3d 27 | 20 27 3b 0a 78 63 68 72 |@'40]:='| ';.xchr|
|000025b0| 5b 40 27 34 31 5d 3a 3d | 27 21 27 3b 0a 78 63 68 |[@'41]:=|'!';.xch|
|000025c0| 72 5b 40 27 34 32 5d 3a | 3d 27 22 27 3b 0a 78 63 |r[@'42]:|='"';.xc|
|000025d0| 68 72 5b 40 27 34 33 5d | 3a 3d 27 23 27 3b 0a 78 |hr[@'43]|:='#';.x|
|000025e0| 63 68 72 5b 40 27 34 34 | 5d 3a 3d 27 24 27 3b 0a |chr[@'44|]:='$';.|
|000025f0| 78 63 68 72 5b 40 27 34 | 35 5d 3a 3d 27 25 27 3b |xchr[@'4|5]:='%';|
|00002600| 0a 78 63 68 72 5b 40 27 | 34 36 5d 3a 3d 27 26 27 |.xchr[@'|46]:='&'|
|00002610| 3b 0a 78 63 68 72 5b 40 | 27 34 37 5d 3a 3d 27 27 |;.xchr[@|'47]:=''|
|00002620| 27 27 3b 40 2f 0a 78 63 | 68 72 5b 40 27 35 30 5d |'';@/.xc|hr[@'50]|
|00002630| 3a 3d 27 28 27 3b 0a 78 | 63 68 72 5b 40 27 35 31 |:='(';.x|chr[@'51|
|00002640| 5d 3a 3d 27 29 27 3b 0a | 78 63 68 72 5b 40 27 35 |]:=')';.|xchr[@'5|
|00002650| 32 5d 3a 3d 27 2a 27 3b | 0a 78 63 68 72 5b 40 27 |2]:='*';|.xchr[@'|
|00002660| 35 33 5d 3a 3d 27 2b 27 | 3b 0a 78 63 68 72 5b 40 |53]:='+'|;.xchr[@|
|00002670| 27 35 34 5d 3a 3d 27 2c | 27 3b 0a 78 63 68 72 5b |'54]:=',|';.xchr[|
|00002680| 40 27 35 35 5d 3a 3d 27 | 2d 27 3b 0a 78 63 68 72 |@'55]:='|-';.xchr|
|00002690| 5b 40 27 35 36 5d 3a 3d | 27 2e 27 3b 0a 78 63 68 |[@'56]:=|'.';.xch|
|000026a0| 72 5b 40 27 35 37 5d 3a | 3d 27 2f 27 3b 40 2f 0a |r[@'57]:|='/';@/.|
|000026b0| 78 63 68 72 5b 40 27 36 | 30 5d 3a 3d 27 30 27 3b |xchr[@'6|0]:='0';|
|000026c0| 0a 78 63 68 72 5b 40 27 | 36 31 5d 3a 3d 27 31 27 |.xchr[@'|61]:='1'|
|000026d0| 3b 0a 78 63 68 72 5b 40 | 27 36 32 5d 3a 3d 27 32 |;.xchr[@|'62]:='2|
|000026e0| 27 3b 0a 78 63 68 72 5b | 40 27 36 33 5d 3a 3d 27 |';.xchr[|@'63]:='|
|000026f0| 33 27 3b 0a 78 63 68 72 | 5b 40 27 36 34 5d 3a 3d |3';.xchr|[@'64]:=|
|00002700| 27 34 27 3b 0a 78 63 68 | 72 5b 40 27 36 35 5d 3a |'4';.xch|r[@'65]:|
|00002710| 3d 27 35 27 3b 0a 78 63 | 68 72 5b 40 27 36 36 5d |='5';.xc|hr[@'66]|
|00002720| 3a 3d 27 36 27 3b 0a 78 | 63 68 72 5b 40 27 36 37 |:='6';.x|chr[@'67|
|00002730| 5d 3a 3d 27 37 27 3b 40 | 2f 0a 78 63 68 72 5b 40 |]:='7';@|/.xchr[@|
|00002740| 27 37 30 5d 3a 3d 27 38 | 27 3b 0a 78 63 68 72 5b |'70]:='8|';.xchr[|
|00002750| 40 27 37 31 5d 3a 3d 27 | 39 27 3b 0a 78 63 68 72 |@'71]:='|9';.xchr|
|00002760| 5b 40 27 37 32 5d 3a 3d | 27 3a 27 3b 0a 78 63 68 |[@'72]:=|':';.xch|
|00002770| 72 5b 40 27 37 33 5d 3a | 3d 27 3b 27 3b 0a 78 63 |r[@'73]:|=';';.xc|
|00002780| 68 72 5b 40 27 37 34 5d | 3a 3d 27 3c 27 3b 0a 78 |hr[@'74]|:='<';.x|
|00002790| 63 68 72 5b 40 27 37 35 | 5d 3a 3d 27 3d 27 3b 0a |chr[@'75|]:='=';.|
|000027a0| 78 63 68 72 5b 40 27 37 | 36 5d 3a 3d 27 3e 27 3b |xchr[@'7|6]:='>';|
|000027b0| 0a 78 63 68 72 5b 40 27 | 37 37 5d 3a 3d 27 3f 27 |.xchr[@'|77]:='?'|
|000027c0| 3b 40 2f 0a 78 63 68 72 | 5b 40 27 31 30 30 5d 3a |;@/.xchr|[@'100]:|
|000027d0| 3d 27 40 40 27 3b 0a 78 | 63 68 72 5b 40 27 31 30 |='@@';.x|chr[@'10|
|000027e0| 31 5d 3a 3d 27 41 27 3b | 0a 78 63 68 72 5b 40 27 |1]:='A';|.xchr[@'|
|000027f0| 31 30 32 5d 3a 3d 27 42 | 27 3b 0a 78 63 68 72 5b |102]:='B|';.xchr[|
|00002800| 40 27 31 30 33 5d 3a 3d | 27 43 27 3b 0a 78 63 68 |@'103]:=|'C';.xch|
|00002810| 72 5b 40 27 31 30 34 5d | 3a 3d 27 44 27 3b 0a 78 |r[@'104]|:='D';.x|
|00002820| 63 68 72 5b 40 27 31 30 | 35 5d 3a 3d 27 45 27 3b |chr[@'10|5]:='E';|
|00002830| 0a 78 63 68 72 5b 40 27 | 31 30 36 5d 3a 3d 27 46 |.xchr[@'|106]:='F|
|00002840| 27 3b 0a 78 63 68 72 5b | 40 27 31 30 37 5d 3a 3d |';.xchr[|@'107]:=|
|00002850| 27 47 27 3b 40 2f 0a 78 | 63 68 72 5b 40 27 31 31 |'G';@/.x|chr[@'11|
|00002860| 30 5d 3a 3d 27 48 27 3b | 0a 78 63 68 72 5b 40 27 |0]:='H';|.xchr[@'|
|00002870| 31 31 31 5d 3a 3d 27 49 | 27 3b 0a 78 63 68 72 5b |111]:='I|';.xchr[|
|00002880| 40 27 31 31 32 5d 3a 3d | 27 4a 27 3b 0a 78 63 68 |@'112]:=|'J';.xch|
|00002890| 72 5b 40 27 31 31 33 5d | 3a 3d 27 4b 27 3b 0a 78 |r[@'113]|:='K';.x|
|000028a0| 63 68 72 5b 40 27 31 31 | 34 5d 3a 3d 27 4c 27 3b |chr[@'11|4]:='L';|
|000028b0| 0a 78 63 68 72 5b 40 27 | 31 31 35 5d 3a 3d 27 4d |.xchr[@'|115]:='M|
|000028c0| 27 3b 0a 78 63 68 72 5b | 40 27 31 31 36 5d 3a 3d |';.xchr[|@'116]:=|
|000028d0| 27 4e 27 3b 0a 78 63 68 | 72 5b 40 27 31 31 37 5d |'N';.xch|r[@'117]|
|000028e0| 3a 3d 27 4f 27 3b 40 2f | 0a 78 63 68 72 5b 40 27 |:='O';@/|.xchr[@'|
|000028f0| 31 32 30 5d 3a 3d 27 50 | 27 3b 0a 78 63 68 72 5b |120]:='P|';.xchr[|
|00002900| 40 27 31 32 31 5d 3a 3d | 27 51 27 3b 0a 78 63 68 |@'121]:=|'Q';.xch|
|00002910| 72 5b 40 27 31 32 32 5d | 3a 3d 27 52 27 3b 0a 78 |r[@'122]|:='R';.x|
|00002920| 63 68 72 5b 40 27 31 32 | 33 5d 3a 3d 27 53 27 3b |chr[@'12|3]:='S';|
|00002930| 0a 78 63 68 72 5b 40 27 | 31 32 34 5d 3a 3d 27 54 |.xchr[@'|124]:='T|
|00002940| 27 3b 0a 78 63 68 72 5b | 40 27 31 32 35 5d 3a 3d |';.xchr[|@'125]:=|
|00002950| 27 55 27 3b 0a 78 63 68 | 72 5b 40 27 31 32 36 5d |'U';.xch|r[@'126]|
|00002960| 3a 3d 27 56 27 3b 0a 78 | 63 68 72 5b 40 27 31 32 |:='V';.x|chr[@'12|
|00002970| 37 5d 3a 3d 27 57 27 3b | 40 2f 0a 78 63 68 72 5b |7]:='W';|@/.xchr[|
|00002980| 40 27 31 33 30 5d 3a 3d | 27 58 27 3b 0a 78 63 68 |@'130]:=|'X';.xch|
|00002990| 72 5b 40 27 31 33 31 5d | 3a 3d 27 59 27 3b 0a 78 |r[@'131]|:='Y';.x|
|000029a0| 63 68 72 5b 40 27 31 33 | 32 5d 3a 3d 27 5a 27 3b |chr[@'13|2]:='Z';|
|000029b0| 0a 78 63 68 72 5b 40 27 | 31 33 33 5d 3a 3d 27 5b |.xchr[@'|133]:='[|
|000029c0| 27 3b 0a 78 63 68 72 5b | 40 27 31 33 34 5d 3a 3d |';.xchr[|@'134]:=|
|000029d0| 27 5c 27 3b 0a 78 63 68 | 72 5b 40 27 31 33 35 5d |'\';.xch|r[@'135]|
|000029e0| 3a 3d 27 5d 27 3b 0a 78 | 63 68 72 5b 40 27 31 33 |:=']';.x|chr[@'13|
|000029f0| 36 5d 3a 3d 27 5e 27 3b | 0a 78 63 68 72 5b 40 27 |6]:='^';|.xchr[@'|
|00002a00| 31 33 37 5d 3a 3d 27 5f | 27 3b 40 2f 0a 78 63 68 |137]:='_|';@/.xch|
|00002a10| 72 5b 40 27 31 34 30 5d | 3a 3d 27 60 27 3b 0a 78 |r[@'140]|:='`';.x|
|00002a20| 63 68 72 5b 40 27 31 34 | 31 5d 3a 3d 27 61 27 3b |chr[@'14|1]:='a';|
|00002a30| 0a 78 63 68 72 5b 40 27 | 31 34 32 5d 3a 3d 27 62 |.xchr[@'|142]:='b|
|00002a40| 27 3b 0a 78 63 68 72 5b | 40 27 31 34 33 5d 3a 3d |';.xchr[|@'143]:=|
|00002a50| 27 63 27 3b 0a 78 63 68 | 72 5b 40 27 31 34 34 5d |'c';.xch|r[@'144]|
|00002a60| 3a 3d 27 64 27 3b 0a 78 | 63 68 72 5b 40 27 31 34 |:='d';.x|chr[@'14|
|00002a70| 35 5d 3a 3d 27 65 27 3b | 0a 78 63 68 72 5b 40 27 |5]:='e';|.xchr[@'|
|00002a80| 31 34 36 5d 3a 3d 27 66 | 27 3b 0a 78 63 68 72 5b |146]:='f|';.xchr[|
|00002a90| 40 27 31 34 37 5d 3a 3d | 27 67 27 3b 40 2f 0a 78 |@'147]:=|'g';@/.x|
|00002aa0| 63 68 72 5b 40 27 31 35 | 30 5d 3a 3d 27 68 27 3b |chr[@'15|0]:='h';|
|00002ab0| 0a 78 63 68 72 5b 40 27 | 31 35 31 5d 3a 3d 27 69 |.xchr[@'|151]:='i|
|00002ac0| 27 3b 0a 78 63 68 72 5b | 40 27 31 35 32 5d 3a 3d |';.xchr[|@'152]:=|
|00002ad0| 27 6a 27 3b 0a 78 63 68 | 72 5b 40 27 31 35 33 5d |'j';.xch|r[@'153]|
|00002ae0| 3a 3d 27 6b 27 3b 0a 78 | 63 68 72 5b 40 27 31 35 |:='k';.x|chr[@'15|
|00002af0| 34 5d 3a 3d 27 6c 27 3b | 0a 78 63 68 72 5b 40 27 |4]:='l';|.xchr[@'|
|00002b00| 31 35 35 5d 3a 3d 27 6d | 27 3b 0a 78 63 68 72 5b |155]:='m|';.xchr[|
|00002b10| 40 27 31 35 36 5d 3a 3d | 27 6e 27 3b 0a 78 63 68 |@'156]:=|'n';.xch|
|00002b20| 72 5b 40 27 31 35 37 5d | 3a 3d 27 6f 27 3b 40 2f |r[@'157]|:='o';@/|
|00002b30| 0a 78 63 68 72 5b 40 27 | 31 36 30 5d 3a 3d 27 70 |.xchr[@'|160]:='p|
|00002b40| 27 3b 0a 78 63 68 72 5b | 40 27 31 36 31 5d 3a 3d |';.xchr[|@'161]:=|
|00002b50| 27 71 27 3b 0a 78 63 68 | 72 5b 40 27 31 36 32 5d |'q';.xch|r[@'162]|
|00002b60| 3a 3d 27 72 27 3b 0a 78 | 63 68 72 5b 40 27 31 36 |:='r';.x|chr[@'16|
|00002b70| 33 5d 3a 3d 27 73 27 3b | 0a 78 63 68 72 5b 40 27 |3]:='s';|.xchr[@'|
|00002b80| 31 36 34 5d 3a 3d 27 74 | 27 3b 0a 78 63 68 72 5b |164]:='t|';.xchr[|
|00002b90| 40 27 31 36 35 5d 3a 3d | 27 75 27 3b 0a 78 63 68 |@'165]:=|'u';.xch|
|00002ba0| 72 5b 40 27 31 36 36 5d | 3a 3d 27 76 27 3b 0a 78 |r[@'166]|:='v';.x|
|00002bb0| 63 68 72 5b 40 27 31 36 | 37 5d 3a 3d 27 77 27 3b |chr[@'16|7]:='w';|
|00002bc0| 40 2f 0a 78 63 68 72 5b | 40 27 31 37 30 5d 3a 3d |@/.xchr[|@'170]:=|
|00002bd0| 27 78 27 3b 0a 78 63 68 | 72 5b 40 27 31 37 31 5d |'x';.xch|r[@'171]|
|00002be0| 3a 3d 27 79 27 3b 0a 78 | 63 68 72 5b 40 27 31 37 |:='y';.x|chr[@'17|
|00002bf0| 32 5d 3a 3d 27 7a 27 3b | 0a 78 63 68 72 5b 40 27 |2]:='z';|.xchr[@'|
|00002c00| 31 37 33 5d 3a 3d 27 7b | 27 3b 0a 78 63 68 72 5b |173]:='{|';.xchr[|
|00002c10| 40 27 31 37 34 5d 3a 3d | 27 7c 27 3b 0a 78 63 68 |@'174]:=|'|';.xch|
|00002c20| 72 5b 40 27 31 37 35 5d | 3a 3d 27 7d 27 3b 0a 78 |r[@'175]|:='}';.x|
|00002c30| 63 68 72 5b 40 27 31 37 | 36 5d 3a 3d 27 7e 27 3b |chr[@'17|6]:='~';|
|00002c40| 0a 66 6f 72 20 69 3a 3d | 40 27 31 37 37 20 74 6f |.for i:=|@'177 to|
|00002c50| 20 32 35 35 20 64 6f 20 | 78 63 68 72 5b 69 5d 3a | 255 do |xchr[i]:|
|00002c60| 3d 27 3f 27 3b 0a 0a 40 | 20 54 68 65 20 66 6f 6c |='?';..@| The fol|
|00002c70| 6c 6f 77 69 6e 67 20 73 | 79 73 74 65 6d 2d 69 6e |lowing s|ystem-in|
|00002c80| 64 65 70 65 6e 64 65 6e | 74 20 63 6f 64 65 20 6d |dependen|t code m|
|00002c90| 61 6b 65 73 20 74 68 65 | 20 7c 78 6f 72 64 7c 20 |akes the| |xord| |
|00002ca0| 61 72 72 61 79 20 63 6f | 6e 74 61 69 6e 20 61 0a |array co|ntain a.|
|00002cb0| 73 75 69 74 61 62 6c 65 | 20 69 6e 76 65 72 73 65 |suitable| inverse|
|00002cc0| 20 74 6f 20 74 68 65 20 | 69 6e 66 6f 72 6d 61 74 | to the |informat|
|00002cd0| 69 6f 6e 20 69 6e 20 7c | 78 63 68 72 7c 2e 0a 0a |ion in ||xchr|...|
|00002ce0| 40 3c 53 65 74 20 69 6e | 69 74 2e 2e 2e 40 3e 3d |@<Set in|it...@>=|
|00002cf0| 0a 66 6f 72 20 69 3a 3d | 66 69 72 73 74 5f 74 65 |.for i:=|first_te|
|00002d00| 78 74 5f 63 68 61 72 20 | 74 6f 20 6c 61 73 74 5f |xt_char |to last_|
|00002d10| 74 65 78 74 5f 63 68 61 | 72 20 64 6f 20 78 6f 72 |text_cha|r do xor|
|00002d20| 64 5b 63 68 72 28 69 29 | 5d 3a 3d 40 27 34 30 3b |d[chr(i)|]:=@'40;|
|00002d30| 0a 66 6f 72 20 69 3a 3d | 22 20 22 20 74 6f 20 22 |.for i:=|" " to "|
|00002d40| 7e 22 20 64 6f 20 78 6f | 72 64 5b 78 63 68 72 5b |~" do xo|rd[xchr[|
|00002d50| 69 5d 5d 3a 3d 69 3b 0a | 0a 40 2a 20 47 65 6e 65 |i]]:=i;.|.@* Gene|
|00002d60| 72 69 63 20 66 6f 6e 74 | 20 66 69 6c 65 20 66 6f |ric font| file fo|
|00002d70| 72 6d 61 74 2e 0a 54 68 | 65 20 6d 6f 73 74 20 69 |rmat..Th|e most i|
|00002d80| 6d 70 6f 72 74 61 6e 74 | 20 6f 75 74 70 75 74 20 |mportant| output |
|00002d90| 70 72 6f 64 75 63 65 64 | 20 62 79 20 61 20 74 79 |produced| by a ty|
|00002da0| 70 69 63 61 6c 20 72 75 | 6e 20 6f 66 20 5c 4d 46 |pical ru|n of \MF|
|00002db0| 5c 20 69 73 20 74 68 65 | 0a 60 60 67 65 6e 65 72 |\ is the|.``gener|
|00002dc0| 69 63 20 66 6f 6e 74 27 | 27 20 28 5c 2e 7b 47 46 |ic font'|' (\.{GF|
|00002dd0| 7d 29 20 66 69 6c 65 20 | 74 68 61 74 20 73 70 65 |}) file |that spe|
|00002de0| 63 69 66 69 65 73 20 74 | 68 65 20 62 69 74 20 70 |cifies t|he bit p|
|00002df0| 61 74 74 65 72 6e 73 20 | 6f 66 20 74 68 65 0a 63 |atterns |of the.c|
|00002e00| 68 61 72 61 63 74 65 72 | 73 20 74 68 61 74 20 68 |haracter|s that h|
|00002e10| 61 76 65 20 62 65 65 6e | 20 64 72 61 77 6e 2e 20 |ave been| drawn. |
|00002e20| 54 68 65 20 74 65 72 6d | 20 7b 5c 73 6c 20 67 65 |The term| {\sl ge|
|00002e30| 6e 65 72 69 63 5c 2f 7d | 20 69 6e 64 69 63 61 74 |neric\/}| indicat|
|00002e40| 65 73 20 74 68 61 74 0a | 74 68 69 73 20 66 69 6c |es that.|this fil|
|00002e50| 65 20 66 6f 72 6d 61 74 | 20 64 6f 65 73 6e 27 74 |e format| doesn't|
|00002e60| 20 6d 61 74 63 68 20 74 | 68 65 20 63 6f 6e 76 65 | match t|he conve|
|00002e70| 6e 74 69 6f 6e 73 20 6f | 66 20 61 6e 79 20 6e 61 |ntions o|f any na|
|00002e80| 6d 65 2d 62 72 61 6e 64 | 20 6d 61 6e 75 66 61 63 |me-brand| manufac|
|00002e90| 74 75 72 65 72 3b 0a 62 | 75 74 20 69 74 20 69 73 |turer;.b|ut it is|
|00002ea0| 20 65 61 73 79 20 74 6f | 20 63 6f 6e 76 65 72 74 | easy to| convert|
|00002eb0| 20 5c 2e 7b 47 46 7d 20 | 66 69 6c 65 73 20 74 6f | \.{GF} |files to|
|00002ec0| 20 74 68 65 20 73 70 65 | 63 69 61 6c 20 66 6f 72 | the spe|cial for|
|00002ed0| 6d 61 74 20 72 65 71 75 | 69 72 65 64 20 62 79 0a |mat requ|ired by.|
|00002ee0| 61 6c 6d 6f 73 74 20 61 | 6c 6c 20 64 69 67 69 74 |almost a|ll digit|
|00002ef0| 61 6c 20 70 68 6f 74 6f | 74 79 70 65 73 65 74 74 |al photo|typesett|
|00002f00| 69 6e 67 20 65 71 75 69 | 70 6d 65 6e 74 2e 20 54 |ing equi|pment. T|
|00002f10| 68 65 72 65 27 73 20 61 | 20 73 74 72 6f 6e 67 20 |here's a| strong |
|00002f20| 61 6e 61 6c 6f 67 79 0a | 62 65 74 77 65 65 6e 20 |analogy.|between |
|00002f30| 74 68 65 20 5c 2e 7b 44 | 56 49 7d 20 66 69 6c 65 |the \.{D|VI} file|
|00002f40| 73 20 77 72 69 74 74 65 | 6e 20 62 79 20 5c 54 65 |s writte|n by \Te|
|00002f50| 58 5c 20 61 6e 64 20 74 | 68 65 20 5c 2e 7b 47 46 |X\ and t|he \.{GF|
|00002f60| 7d 20 66 69 6c 65 73 20 | 77 72 69 74 74 65 6e 0a |} files |written.|
|00002f70| 62 79 20 5c 4d 46 3b 20 | 61 6e 64 2c 20 69 6e 20 |by \MF; |and, in |
|00002f80| 66 61 63 74 2c 20 74 68 | 65 20 66 69 6c 65 20 66 |fact, th|e file f|
|00002f90| 6f 72 6d 61 74 73 20 68 | 61 76 65 20 61 20 6c 6f |ormats h|ave a lo|
|00002fa0| 74 20 69 6e 20 63 6f 6d | 6d 6f 6e 2e 0a 0a 41 20 |t in com|mon...A |
|00002fb0| 5c 2e 7b 47 46 7d 20 66 | 69 6c 65 20 69 73 20 61 |\.{GF} f|ile is a|
|00002fc0| 20 73 74 72 65 61 6d 20 | 6f 66 20 38 2d 62 69 74 | stream |of 8-bit|
|00002fd0| 20 62 79 74 65 73 20 74 | 68 61 74 20 6d 61 79 20 | bytes t|hat may |
|00002fe0| 62 65 0a 72 65 67 61 72 | 64 65 64 20 61 73 20 61 |be.regar|ded as a|
|00002ff0| 20 73 65 72 69 65 73 20 | 6f 66 20 63 6f 6d 6d 61 | series |of comma|
|00003000| 6e 64 73 20 69 6e 20 61 | 20 6d 61 63 68 69 6e 65 |nds in a| machine|
|00003010| 2d 6c 69 6b 65 20 6c 61 | 6e 67 75 61 67 65 2e 20 |-like la|nguage. |
|00003020| 54 68 65 20 66 69 72 73 | 74 0a 62 79 74 65 20 6f |The firs|t.byte o|
|00003030| 66 20 65 61 63 68 20 63 | 6f 6d 6d 61 6e 64 20 69 |f each c|ommand i|
|00003040| 73 20 74 68 65 20 6f 70 | 65 72 61 74 69 6f 6e 20 |s the op|eration |
|00003050| 63 6f 64 65 2c 20 61 6e | 64 20 74 68 69 73 20 63 |code, an|d this c|
|00003060| 6f 64 65 20 69 73 20 66 | 6f 6c 6c 6f 77 65 64 20 |ode is f|ollowed |
|00003070| 62 79 0a 7a 65 72 6f 20 | 6f 72 20 6d 6f 72 65 20 |by.zero |or more |
|00003080| 62 79 74 65 73 20 74 68 | 61 74 20 70 72 6f 76 69 |bytes th|at provi|
|00003090| 64 65 20 70 61 72 61 6d | 65 74 65 72 73 20 74 6f |de param|eters to|
|000030a0| 20 74 68 65 20 63 6f 6d | 6d 61 6e 64 2e 20 54 68 | the com|mand. Th|
|000030b0| 65 20 70 61 72 61 6d 65 | 74 65 72 73 0a 74 68 65 |e parame|ters.the|
|000030c0| 6d 73 65 6c 76 65 73 20 | 6d 61 79 20 63 6f 6e 73 |mselves |may cons|
|000030d0| 69 73 74 20 6f 66 20 73 | 65 76 65 72 61 6c 20 63 |ist of s|everal c|
|000030e0| 6f 6e 73 65 63 75 74 69 | 76 65 20 62 79 74 65 73 |onsecuti|ve bytes|
|000030f0| 3b 20 66 6f 72 20 65 78 | 61 6d 70 6c 65 2c 20 74 |; for ex|ample, t|
|00003100| 68 65 0a 60 7c 62 6f 63 | 7c 27 20 28 62 65 67 69 |he.`|boc||' (begi|
|00003110| 6e 6e 69 6e 67 20 6f 66 | 20 63 68 61 72 61 63 74 |nning of| charact|
|00003120| 65 72 29 20 63 6f 6d 6d | 61 6e 64 20 68 61 73 20 |er) comm|and has |
|00003130| 73 69 78 20 70 61 72 61 | 6d 65 74 65 72 73 2c 20 |six para|meters, |
|00003140| 65 61 63 68 20 6f 66 0a | 77 68 69 63 68 20 69 73 |each of.|which is|
|00003150| 20 66 6f 75 72 20 62 79 | 74 65 73 20 6c 6f 6e 67 | four by|tes long|
|00003160| 2e 20 50 61 72 61 6d 65 | 74 65 72 73 20 61 72 65 |. Parame|ters are|
|00003170| 20 75 73 75 61 6c 6c 79 | 20 72 65 67 61 72 64 65 | usually| regarde|
|00003180| 64 20 61 73 20 6e 6f 6e | 6e 65 67 61 74 69 76 65 |d as non|negative|
|00003190| 0a 69 6e 74 65 67 65 72 | 73 3b 20 62 75 74 20 66 |.integer|s; but f|
|000031a0| 6f 75 72 2d 62 79 74 65 | 2d 6c 6f 6e 67 20 70 61 |our-byte|-long pa|
|000031b0| 72 61 6d 65 74 65 72 73 | 20 63 61 6e 20 62 65 20 |rameters| can be |
|000031c0| 65 69 74 68 65 72 20 70 | 6f 73 69 74 69 76 65 20 |either p|ositive |
|000031d0| 6f 72 0a 6e 65 67 61 74 | 69 76 65 2c 20 68 65 6e |or.negat|ive, hen|
|000031e0| 63 65 20 74 68 65 79 20 | 72 61 6e 67 65 20 69 6e |ce they |range in|
|000031f0| 20 76 61 6c 75 65 20 66 | 72 6f 6d 20 24 2d 32 5e | value f|rom $-2^|
|00003200| 7b 33 31 7d 24 20 74 6f | 20 24 32 5e 7b 33 31 7d |{31}$ to| $2^{31}|
|00003210| 2d 31 24 2e 0a 41 73 20 | 69 6e 20 5c 2e 7b 54 46 |-1$..As |in \.{TF|
|00003220| 4d 7d 20 66 69 6c 65 73 | 2c 20 6e 75 6d 62 65 72 |M} files|, number|
|00003230| 73 20 74 68 61 74 20 6f | 63 63 75 70 79 0a 6d 6f |s that o|ccupy.mo|
|00003240| 72 65 20 74 68 61 6e 20 | 6f 6e 65 20 62 79 74 65 |re than |one byte|
|00003250| 20 70 6f 73 69 74 69 6f | 6e 20 61 70 70 65 61 72 | positio|n appear|
|00003260| 20 69 6e 20 42 69 67 45 | 6e 64 69 61 6e 20 6f 72 | in BigE|ndian or|
|00003270| 64 65 72 2c 0a 61 6e 64 | 20 6e 65 67 61 74 69 76 |der,.and| negativ|
|00003280| 65 20 6e 75 6d 62 65 72 | 73 20 61 70 70 65 61 72 |e number|s appear|
|00003290| 20 69 6e 20 74 77 6f 27 | 73 20 63 6f 6d 70 6c 65 | in two'|s comple|
|000032a0| 6d 65 6e 74 20 6e 6f 74 | 61 74 69 6f 6e 2e 0a 0a |ment not|ation...|
|000032b0| 41 20 5c 2e 7b 47 46 7d | 20 66 69 6c 65 20 63 6f |A \.{GF}| file co|
|000032c0| 6e 73 69 73 74 73 20 6f | 66 20 61 20 60 60 70 72 |nsists o|f a ``pr|
|000032d0| 65 61 6d 62 6c 65 2c 27 | 27 20 66 6f 6c 6c 6f 77 |eamble,'|' follow|
|000032e0| 65 64 20 62 79 20 61 20 | 73 65 71 75 65 6e 63 65 |ed by a |sequence|
|000032f0| 20 6f 66 20 6f 6e 65 20 | 6f 72 0a 6d 6f 72 65 20 | of one |or.more |
|00003300| 60 60 63 68 61 72 61 63 | 74 65 72 73 2c 27 27 20 |``charac|ters,'' |
|00003310| 66 6f 6c 6c 6f 77 65 64 | 20 62 79 20 61 20 60 60 |followed| by a ``|
|00003320| 70 6f 73 74 61 6d 62 6c | 65 2e 27 27 20 54 68 65 |postambl|e.'' The|
|00003330| 20 70 72 65 61 6d 62 6c | 65 20 69 73 20 73 69 6d | preambl|e is sim|
|00003340| 70 6c 79 20 61 0a 7c 70 | 72 65 7c 20 63 6f 6d 6d |ply a.|p|re| comm|
|00003350| 61 6e 64 2c 20 77 69 74 | 68 20 69 74 73 20 70 61 |and, wit|h its pa|
|00003360| 72 61 6d 65 74 65 72 73 | 20 74 68 61 74 20 69 6e |rameters| that in|
|00003370| 74 72 6f 64 75 63 65 20 | 74 68 65 20 66 69 6c 65 |troduce |the file|
|00003380| 3b 20 74 68 69 73 20 6d | 75 73 74 20 63 6f 6d 65 |; this m|ust come|
|00003390| 0a 66 69 72 73 74 2e 20 | 20 45 61 63 68 20 60 60 |.first. | Each ``|
|000033a0| 63 68 61 72 61 63 74 65 | 72 27 27 20 63 6f 6e 73 |characte|r'' cons|
|000033b0| 69 73 74 73 20 6f 66 20 | 61 20 7c 62 6f 63 7c 20 |ists of |a |boc| |
|000033c0| 63 6f 6d 6d 61 6e 64 2c | 20 66 6f 6c 6c 6f 77 65 |command,| followe|
|000033d0| 64 20 62 79 20 61 6e 79 | 0a 6e 75 6d 62 65 72 20 |d by any|.number |
|000033e0| 6f 66 20 6f 74 68 65 72 | 20 63 6f 6d 6d 61 6e 64 |of other| command|
|000033f0| 73 20 74 68 61 74 20 73 | 70 65 63 69 66 79 20 60 |s that s|pecify `|
|00003400| 60 62 6c 61 63 6b 27 27 | 20 70 69 78 65 6c 73 2c |`black''| pixels,|
|00003410| 0a 66 6f 6c 6c 6f 77 65 | 64 20 62 79 20 61 6e 20 |.followe|d by an |
|00003420| 7c 65 6f 63 7c 20 63 6f | 6d 6d 61 6e 64 2e 20 54 ||eoc| co|mmand. T|
|00003430| 68 65 20 63 68 61 72 61 | 63 74 65 72 73 20 61 70 |he chara|cters ap|
|00003440| 70 65 61 72 20 69 6e 20 | 74 68 65 20 6f 72 64 65 |pear in |the orde|
|00003450| 72 20 74 68 61 74 20 5c | 4d 46 5c 0a 67 65 6e 65 |r that \|MF\.gene|
|00003460| 72 61 74 65 64 20 74 68 | 65 6d 2e 20 49 66 20 77 |rated th|em. If w|
|00003470| 65 20 69 67 6e 6f 72 65 | 20 6e 6f 2d 6f 70 20 63 |e ignore| no-op c|
|00003480| 6f 6d 6d 61 6e 64 73 20 | 28 77 68 69 63 68 20 61 |ommands |(which a|
|00003490| 72 65 20 61 6c 6c 6f 77 | 65 64 20 62 65 74 77 65 |re allow|ed betwe|
|000034a0| 65 6e 20 61 6e 79 0a 74 | 77 6f 20 63 6f 6d 6d 61 |en any.t|wo comma|
|000034b0| 6e 64 73 20 69 6e 20 74 | 68 65 20 66 69 6c 65 29 |nds in t|he file)|
|000034c0| 2c 20 65 61 63 68 20 7c | 65 6f 63 7c 20 63 6f 6d |, each ||eoc| com|
|000034d0| 6d 61 6e 64 20 69 73 20 | 69 6d 6d 65 64 69 61 74 |mand is |immediat|
|000034e0| 65 6c 79 20 66 6f 6c 6c | 6f 77 65 64 20 62 79 20 |ely foll|owed by |
|000034f0| 61 0a 7c 62 6f 63 7c 20 | 63 6f 6d 6d 61 6e 64 2c |a.|boc| |command,|
|00003500| 20 6f 72 20 62 79 20 61 | 20 7c 70 6f 73 74 7c 20 | or by a| |post| |
|00003510| 63 6f 6d 6d 61 6e 64 3b | 20 69 6e 20 74 68 65 20 |command;| in the |
|00003520| 6c 61 74 74 65 72 20 63 | 61 73 65 2c 20 74 68 65 |latter c|ase, the|
|00003530| 72 65 20 61 72 65 20 6e | 6f 0a 6d 6f 72 65 20 63 |re are n|o.more c|
|00003540| 68 61 72 61 63 74 65 72 | 73 20 69 6e 20 74 68 65 |haracter|s in the|
|00003550| 20 66 69 6c 65 2c 20 61 | 6e 64 20 74 68 65 20 72 | file, a|nd the r|
|00003560| 65 6d 61 69 6e 69 6e 67 | 20 62 79 74 65 73 20 66 |emaining| bytes f|
|00003570| 6f 72 6d 20 74 68 65 20 | 70 6f 73 74 61 6d 62 6c |orm the |postambl|
|00003580| 65 2e 0a 46 75 72 74 68 | 65 72 20 64 65 74 61 69 |e..Furth|er detai|
|00003590| 6c 73 20 61 62 6f 75 74 | 20 74 68 65 20 70 6f 73 |ls about| the pos|
|000035a0| 74 61 6d 62 6c 65 20 77 | 69 6c 6c 20 62 65 20 65 |tamble w|ill be e|
|000035b0| 78 70 6c 61 69 6e 65 64 | 20 6c 61 74 65 72 2e 0a |xplained| later..|
|000035c0| 0a 53 6f 6d 65 20 70 61 | 72 61 6d 65 74 65 72 73 |.Some pa|rameters|
|000035d0| 20 69 6e 20 5c 2e 7b 47 | 46 7d 20 63 6f 6d 6d 61 | in \.{G|F} comma|
|000035e0| 6e 64 73 20 61 72 65 20 | 60 60 70 6f 69 6e 74 65 |nds are |``pointe|
|000035f0| 72 73 2e 27 27 20 54 68 | 65 73 65 20 61 72 65 20 |rs.'' Th|ese are |
|00003600| 66 6f 75 72 2d 62 79 74 | 65 0a 71 75 61 6e 74 69 |four-byt|e.quanti|
|00003610| 74 69 65 73 20 74 68 61 | 74 20 67 69 76 65 20 74 |ties tha|t give t|
|00003620| 68 65 20 6c 6f 63 61 74 | 69 6f 6e 20 6e 75 6d 62 |he locat|ion numb|
|00003630| 65 72 20 6f 66 20 73 6f | 6d 65 20 6f 74 68 65 72 |er of so|me other|
|00003640| 20 62 79 74 65 20 69 6e | 20 74 68 65 20 66 69 6c | byte in| the fil|
|00003650| 65 3b 0a 74 68 65 20 66 | 69 72 73 74 20 66 69 6c |e;.the f|irst fil|
|00003660| 65 20 62 79 74 65 20 69 | 73 20 6e 75 6d 62 65 72 |e byte i|s number|
|00003670| 7e 30 2c 20 74 68 65 6e | 20 63 6f 6d 65 73 20 6e |~0, then| comes n|
|00003680| 75 6d 62 65 72 7e 31 2c | 20 61 6e 64 20 73 6f 20 |umber~1,| and so |
|00003690| 6f 6e 2e 0a 0a 40 20 54 | 68 65 20 5c 2e 7b 47 46 |on...@ T|he \.{GF|
|000036a0| 7d 20 66 6f 72 6d 61 74 | 20 69 73 20 69 6e 74 65 |} format| is inte|
|000036b0| 6e 64 65 64 20 74 6f 20 | 62 65 20 62 6f 74 68 20 |nded to |be both |
|000036c0| 63 6f 6d 70 61 63 74 20 | 61 6e 64 20 65 61 73 69 |compact |and easi|
|000036d0| 6c 79 20 69 6e 74 65 72 | 70 72 65 74 65 64 0a 62 |ly inter|preted.b|
|000036e0| 79 20 61 20 6d 61 63 68 | 69 6e 65 2e 20 43 6f 6d |y a mach|ine. Com|
|000036f0| 70 61 63 74 6e 65 73 73 | 20 69 73 20 61 63 68 69 |pactness| is achi|
|00003700| 65 76 65 64 20 62 79 20 | 6d 61 6b 69 6e 67 20 6d |eved by |making m|
|00003710| 6f 73 74 20 6f 66 20 74 | 68 65 20 69 6e 66 6f 72 |ost of t|he infor|
|00003720| 6d 61 74 69 6f 6e 0a 72 | 65 6c 61 74 69 76 65 20 |mation.r|elative |
|00003730| 69 6e 73 74 65 61 64 20 | 6f 66 20 61 62 73 6f 6c |instead |of absol|
|00003740| 75 74 65 2e 20 57 68 65 | 6e 20 61 20 5c 2e 7b 47 |ute. Whe|n a \.{G|
|00003750| 46 7d 2d 72 65 61 64 69 | 6e 67 20 70 72 6f 67 72 |F}-readi|ng progr|
|00003760| 61 6d 20 72 65 61 64 73 | 20 74 68 65 0a 63 6f 6d |am reads| the.com|
|00003770| 6d 61 6e 64 73 20 66 6f | 72 20 61 20 63 68 61 72 |mands fo|r a char|
|00003780| 61 63 74 65 72 2c 20 69 | 74 20 6b 65 65 70 73 20 |acter, i|t keeps |
|00003790| 74 72 61 63 6b 20 6f 66 | 20 74 77 6f 20 71 75 61 |track of| two qua|
|000037a0| 6e 74 69 74 69 65 73 3a | 20 28 61 29 7e 74 68 65 |ntities:| (a)~the|
|000037b0| 20 63 75 72 72 65 6e 74 | 0a 63 6f 6c 75 6d 6e 20 | current|.column |
|000037c0| 6e 75 6d 62 65 72 2c 7e | 7c 6d 7c 3b 20 61 6e 64 |number,~||m|; and|
|000037d0| 20 28 62 29 7e 74 68 65 | 20 63 75 72 72 65 6e 74 | (b)~the| current|
|000037e0| 20 72 6f 77 20 6e 75 6d | 62 65 72 2c 7e 7c 6e 7c | row num|ber,~|n||
|000037f0| 2e 20 20 54 68 65 73 65 | 20 61 72 65 20 33 32 2d |. These| are 32-|
|00003800| 62 69 74 0a 73 69 67 6e | 65 64 20 69 6e 74 65 67 |bit.sign|ed integ|
|00003810| 65 72 73 2c 20 61 6c 74 | 68 6f 75 67 68 20 6d 6f |ers, alt|hough mo|
|00003820| 73 74 20 61 63 74 75 61 | 6c 20 66 6f 6e 74 20 66 |st actua|l font f|
|00003830| 6f 72 6d 61 74 73 20 70 | 72 6f 64 75 63 65 64 20 |ormats p|roduced |
|00003840| 66 72 6f 6d 20 5c 2e 7b | 47 46 7d 0a 66 69 6c 65 |from \.{|GF}.file|
|00003850| 73 20 77 69 6c 6c 20 6e | 65 65 64 20 74 6f 20 63 |s will n|eed to c|
|00003860| 75 72 74 61 69 6c 20 74 | 68 69 73 20 76 61 73 74 |urtail t|his vast|
|00003870| 20 72 61 6e 67 65 20 62 | 65 63 61 75 73 65 20 6f | range b|ecause o|
|00003880| 66 20 70 72 61 63 74 69 | 63 61 6c 0a 6c 69 6d 69 |f practi|cal.limi|
|00003890| 74 61 74 69 6f 6e 73 2e | 20 28 5c 4d 46 5c 20 6f |tations.| (\MF\ o|
|000038a0| 75 74 70 75 74 20 77 69 | 6c 6c 20 6e 65 76 65 72 |utput wi|ll never|
|000038b0| 20 61 6c 6c 6f 77 20 24 | 5c 76 65 72 74 20 6d 5c | allow $|\vert m\|
|000038c0| 76 65 72 74 24 20 6f 72 | 20 24 5c 76 65 72 74 0a |vert$ or| $\vert.|
|000038d0| 6e 5c 76 65 72 74 24 20 | 74 6f 20 67 65 74 20 65 |n\vert$ |to get e|
|000038e0| 78 74 72 65 6d 65 6c 79 | 20 6c 61 72 67 65 2c 20 |xtremely| large, |
|000038f0| 62 75 74 20 74 68 65 20 | 5c 2e 7b 47 46 7d 20 66 |but the |\.{GF} f|
|00003900| 6f 72 6d 61 74 20 74 72 | 69 65 73 20 74 6f 20 62 |ormat tr|ies to b|
|00003910| 65 20 6d 6f 72 65 0a 67 | 65 6e 65 72 61 6c 2e 29 |e more.g|eneral.)|
|00003920| 0a 0a 48 6f 77 20 64 6f | 20 5c 2e 7b 47 46 7d 27 |..How do| \.{GF}'|
|00003930| 73 20 72 6f 77 20 61 6e | 64 20 63 6f 6c 75 6d 6e |s row an|d column|
|00003940| 20 6e 75 6d 62 65 72 73 | 20 63 6f 72 72 65 73 70 | numbers| corresp|
|00003950| 6f 6e 64 20 74 6f 20 74 | 68 65 20 63 6f 6e 76 65 |ond to t|he conve|
|00003960| 6e 74 69 6f 6e 73 0a 6f | 66 20 5c 54 65 58 5c 20 |ntions.o|f \TeX\ |
|00003970| 61 6e 64 20 5c 4d 46 3f | 20 57 65 6c 6c 2c 20 74 |and \MF?| Well, t|
|00003980| 68 65 20 60 60 72 65 66 | 65 72 65 6e 63 65 20 70 |he ``ref|erence p|
|00003990| 6f 69 6e 74 27 27 20 6f | 66 20 61 20 63 68 61 72 |oint'' o|f a char|
|000039a0| 61 63 74 65 72 2c 20 69 | 6e 20 5c 54 65 58 27 73 |acter, i|n \TeX's|
|000039b0| 0a 76 69 65 77 2c 20 69 | 73 20 63 6f 6e 73 69 64 |.view, i|s consid|
|000039c0| 65 72 65 64 20 74 6f 20 | 62 65 20 61 74 20 74 68 |ered to |be at th|
|000039d0| 65 20 6c 6f 77 65 72 20 | 6c 65 66 74 20 63 6f 72 |e lower |left cor|
|000039e0| 6e 65 72 20 6f 66 20 74 | 68 65 20 70 69 78 65 6c |ner of t|he pixel|
|000039f0| 20 69 6e 20 72 6f 77 7e | 30 0a 61 6e 64 20 63 6f | in row~|0.and co|
|00003a00| 6c 75 6d 6e 7e 30 2e 20 | 54 68 69 73 20 70 6f 69 |lumn~0. |This poi|
|00003a10| 6e 74 20 69 73 20 74 68 | 65 20 69 6e 74 65 72 73 |nt is th|e inters|
|00003a20| 65 63 74 69 6f 6e 20 6f | 66 20 74 68 65 20 62 61 |ection o|f the ba|
|00003a30| 73 65 6c 69 6e 65 20 77 | 69 74 68 20 74 68 65 20 |seline w|ith the |
|00003a40| 6c 65 66 74 0a 65 64 67 | 65 20 6f 66 20 74 68 65 |left.edg|e of the|
|00003a50| 20 74 79 70 65 3b 20 69 | 74 20 63 6f 72 72 65 73 | type; i|t corres|
|00003a60| 70 6f 6e 64 73 20 74 6f | 20 6c 6f 63 61 74 69 6f |ponds to| locatio|
|00003a70| 6e 20 24 28 30 2c 30 29 | 24 20 69 6e 20 5c 4d 46 |n $(0,0)|$ in \MF|
|00003a80| 5c 20 70 72 6f 67 72 61 | 6d 73 2e 0a 54 68 75 73 |\ progra|ms..Thus|
|00003a90| 20 74 68 65 20 70 69 78 | 65 6c 20 69 6e 20 5c 2e | the pix|el in \.|
|00003aa0| 7b 47 46 7d 20 72 6f 77 | 7e 30 20 61 6e 64 20 63 |{GF} row|~0 and c|
|00003ab0| 6f 6c 75 6d 6e 7e 30 20 | 69 73 20 5c 4d 46 27 73 |olumn~0 |is \MF's|
|00003ac0| 20 75 6e 69 74 20 73 71 | 75 61 72 65 2c 20 63 6f | unit sq|uare, co|
|00003ad0| 6d 70 72 69 73 69 6e 67 | 0a 74 68 65 20 72 65 67 |mprising|.the reg|
|00003ae0| 69 6f 6e 20 6f 66 20 74 | 68 65 20 70 6c 61 6e 65 |ion of t|he plane|
|00003af0| 20 77 68 6f 73 65 20 63 | 6f 6f 72 64 69 6e 61 74 | whose c|oordinat|
|00003b00| 65 73 20 62 6f 74 68 20 | 6c 69 65 20 62 65 74 77 |es both |lie betw|
|00003b10| 65 65 6e 20 30 20 61 6e | 64 7e 31 2e 20 54 68 65 |een 0 an|d~1. The|
|00003b20| 0a 70 69 78 65 6c 20 69 | 6e 20 5c 2e 7b 47 46 7d |.pixel i|n \.{GF}|
|00003b30| 20 72 6f 77 7e 7c 6e 7c | 20 61 6e 64 20 63 6f 6c | row~|n|| and col|
|00003b40| 75 6d 6e 7e 7c 6d 7c 20 | 63 6f 6e 73 69 73 74 73 |umn~|m| |consists|
|00003b50| 20 6f 66 20 74 68 65 20 | 70 6f 69 6e 74 73 20 77 | of the |points w|
|00003b60| 68 6f 73 65 20 5c 4d 46 | 5c 0a 63 6f 6f 72 64 69 |hose \MF|\.coordi|
|00003b70| 6e 61 74 65 73 20 7c 28 | 78 2c 79 29 7c 20 73 61 |nates |(|x,y)| sa|
|00003b80| 74 69 73 66 79 20 7c 6d | 3c 3d 78 3c 3d 6d 2b 31 |tisfy |m|<=x<=m+1|
|00003b90| 7c 20 61 6e 64 20 7c 6e | 3c 3d 79 3c 3d 6e 2b 31 || and |n|<=y<=n+1|
|00003ba0| 7c 2e 20 20 4e 65 67 61 | 74 69 76 65 20 76 61 6c ||. Nega|tive val|
|00003bb0| 75 65 73 20 6f 66 0a 7c | 6d 7c 20 61 6e 64 7e 7c |ues of.||m| and~||
|00003bc0| 78 7c 20 63 6f 72 72 65 | 73 70 6f 6e 64 20 74 6f |x| corre|spond to|
|00003bd0| 20 63 6f 6c 75 6d 6e 73 | 20 6f 66 20 70 69 78 65 | columns| of pixe|
|00003be0| 6c 73 20 7b 5c 73 6c 20 | 6c 65 66 74 5c 2f 7d 20 |ls {\sl |left\/} |
|00003bf0| 6f 66 20 74 68 65 20 72 | 65 66 65 72 65 6e 63 65 |of the r|eference|
|00003c00| 0a 70 6f 69 6e 74 3b 20 | 6e 65 67 61 74 69 76 65 |.point; |negative|
|00003c10| 20 76 61 6c 75 65 73 20 | 6f 66 20 7c 6e 7c 20 61 | values |of |n| a|
|00003c20| 6e 64 7e 7c 79 7c 20 63 | 6f 72 72 65 73 70 6f 6e |nd~|y| c|orrespon|
|00003c30| 64 20 74 6f 20 72 6f 77 | 73 20 6f 66 20 70 69 78 |d to row|s of pix|
|00003c40| 65 6c 73 20 7b 5c 73 6c | 0a 62 65 6c 6f 77 5c 2f |els {\sl|.below\/|
|00003c50| 7d 20 74 68 65 20 62 61 | 73 65 6c 69 6e 65 2e 0a |} the ba|seline..|
|00003c60| 0a 42 65 73 69 64 65 73 | 20 7c 6d 7c 20 61 6e 64 |.Besides| |m| and|
|00003c70| 20 7c 6e 7c 2c 20 74 68 | 65 72 65 27 73 20 61 6c | |n|, th|ere's al|
|00003c80| 73 6f 20 61 20 74 68 69 | 72 64 20 61 73 70 65 63 |so a thi|rd aspec|
|00003c90| 74 20 6f 66 20 74 68 65 | 20 63 75 72 72 65 6e 74 |t of the| current|
|00003ca0| 0a 73 74 61 74 65 2c 20 | 6e 61 6d 65 6c 79 20 74 |.state, |namely t|
|00003cb0| 68 65 20 40 21 7c 70 61 | 69 6e 74 5f 73 77 69 74 |he @!|pa|int_swit|
|00003cc0| 63 68 7c 2c 20 77 68 69 | 63 68 20 69 73 20 61 6c |ch|, whi|ch is al|
|00003cd0| 77 61 79 73 20 65 69 74 | 68 65 72 20 5c 5c 7b 62 |ways eit|her \\{b|
|00003ce0| 6c 61 63 6b 7d 20 6f 72 | 0a 5c 5c 7b 77 68 69 74 |lack} or|.\\{whit|
|00003cf0| 65 7d 2e 20 45 61 63 68 | 20 5c 5c 7b 70 61 69 6e |e}. Each| \\{pain|
|00003d00| 74 7d 20 63 6f 6d 6d 61 | 6e 64 20 61 64 76 61 6e |t} comma|nd advan|
|00003d10| 63 65 73 20 7c 6d 7c 20 | 62 79 20 61 20 73 70 65 |ces |m| |by a spe|
|00003d20| 63 69 66 69 65 64 20 61 | 6d 6f 75 6e 74 7e 7c 64 |cified a|mount~|d|
|00003d30| 7c 2c 0a 61 6e 64 20 62 | 6c 61 63 6b 65 6e 73 20 ||,.and b|lackens |
|00003d40| 74 68 65 20 69 6e 74 65 | 72 76 65 6e 69 6e 67 20 |the inte|rvening |
|00003d50| 70 69 78 65 6c 73 20 69 | 66 20 7c 70 61 69 6e 74 |pixels i|f |paint|
|00003d60| 5f 73 77 69 74 63 68 3d | 62 6c 61 63 6b 7c 3b 20 |_switch=|black|; |
|00003d70| 74 68 65 6e 0a 74 68 65 | 20 7c 70 61 69 6e 74 5f |then.the| |paint_|
|00003d80| 73 77 69 74 63 68 7c 20 | 63 68 61 6e 67 65 73 20 |switch| |changes |
|00003d90| 74 6f 20 74 68 65 20 6f | 70 70 6f 73 69 74 65 20 |to the o|pposite |
|00003da0| 73 74 61 74 65 2e 20 5c | 2e 7b 47 46 7d 27 73 20 |state. \|.{GF}'s |
|00003db0| 63 6f 6d 6d 61 6e 64 73 | 20 61 72 65 0a 64 65 73 |commands| are.des|
|00003dc0| 69 67 6e 65 64 20 73 6f | 20 74 68 61 74 20 7c 6d |igned so| that |m|
|00003dd0| 7c 20 77 69 6c 6c 20 6e | 65 76 65 72 20 64 65 63 || will n|ever dec|
|00003de0| 72 65 61 73 65 20 77 69 | 74 68 69 6e 20 61 20 72 |rease wi|thin a r|
|00003df0| 6f 77 2c 20 61 6e 64 20 | 7c 6e 7c 20 77 69 6c 6c |ow, and ||n| will|
|00003e00| 20 6e 65 76 65 72 0a 69 | 6e 63 72 65 61 73 65 20 | never.i|ncrease |
|00003e10| 77 69 74 68 69 6e 20 61 | 20 63 68 61 72 61 63 74 |within a| charact|
|00003e20| 65 72 3b 20 68 65 6e 63 | 65 20 74 68 65 72 65 20 |er; henc|e there |
|00003e30| 69 73 20 6e 6f 20 77 61 | 79 20 74 6f 20 77 68 69 |is no wa|y to whi|
|00003e40| 74 65 6e 20 61 20 70 69 | 78 65 6c 20 74 68 61 74 |ten a pi|xel that|
|00003e50| 0a 68 61 73 20 62 65 65 | 6e 20 62 6c 61 63 6b 65 |.has bee|n blacke|
|00003e60| 6e 65 64 2e 0a 0a 40 20 | 48 65 72 65 20 69 73 20 |ned...@ |Here is |
|00003e70| 61 20 6c 69 73 74 20 6f | 66 20 61 6c 6c 20 74 68 |a list o|f all th|
|00003e80| 65 20 63 6f 6d 6d 61 6e | 64 73 20 74 68 61 74 20 |e comman|ds that |
|00003e90| 6d 61 79 20 61 70 70 65 | 61 72 20 69 6e 20 61 20 |may appe|ar in a |
|00003ea0| 5c 2e 7b 47 46 7d 20 66 | 69 6c 65 2e 20 45 61 63 |\.{GF} f|ile. Eac|
|00003eb0| 68 0a 63 6f 6d 6d 61 6e | 64 20 69 73 20 73 70 65 |h.comman|d is spe|
|00003ec0| 63 69 66 69 65 64 20 62 | 79 20 69 74 73 20 73 79 |cified b|y its sy|
|00003ed0| 6d 62 6f 6c 69 63 20 6e | 61 6d 65 20 28 65 2e 67 |mbolic n|ame (e.g|
|00003ee0| 2e 2c 20 7c 62 6f 63 7c | 29 2c 20 69 74 73 20 6f |., |boc||), its o|
|00003ef0| 70 63 6f 64 65 20 62 79 | 74 65 0a 28 65 2e 67 2e |pcode by|te.(e.g.|
|00003f00| 2c 20 36 37 29 2c 20 61 | 6e 64 20 69 74 73 20 70 |, 67), a|nd its p|
|00003f10| 61 72 61 6d 65 74 65 72 | 73 20 28 69 66 20 61 6e |arameter|s (if an|
|00003f20| 79 29 2e 20 54 68 65 20 | 70 61 72 61 6d 65 74 65 |y). The |paramete|
|00003f30| 72 73 20 61 72 65 20 66 | 6f 6c 6c 6f 77 65 64 0a |rs are f|ollowed.|
|00003f40| 62 79 20 61 20 62 72 61 | 63 6b 65 74 65 64 20 6e |by a bra|cketed n|
|00003f50| 75 6d 62 65 72 20 74 65 | 6c 6c 69 6e 67 20 68 6f |umber te|lling ho|
|00003f60| 77 20 6d 61 6e 79 20 62 | 79 74 65 73 20 74 68 65 |w many b|ytes the|
|00003f70| 79 20 6f 63 63 75 70 79 | 3b 20 66 6f 72 20 65 78 |y occupy|; for ex|
|00003f80| 61 6d 70 6c 65 2c 0a 60 | 7c 64 5b 32 5d 7c 27 20 |ample,.`||d[2]|' |
|00003f90| 6d 65 61 6e 73 20 74 68 | 61 74 20 70 61 72 61 6d |means th|at param|
|00003fa0| 65 74 65 72 20 7c 64 7c | 20 69 73 20 74 77 6f 20 |eter |d|| is two |
|00003fb0| 62 79 74 65 73 20 6c 6f | 6e 67 2e 0a 0a 5c 79 73 |bytes lo|ng...\ys|
|00003fc0| 6b 69 70 5c 68 61 6e 67 | 7c 70 61 69 6e 74 5f 30 |kip\hang||paint_0|
|00003fd0| 7c 20 30 2e 20 54 68 69 | 73 20 69 73 20 61 20 5c || 0. Thi|s is a \|
|00003fe0| 5c 7b 70 61 69 6e 74 7d | 20 63 6f 6d 6d 61 6e 64 |\{paint}| command|
|00003ff0| 20 77 69 74 68 20 7c 64 | 3d 30 7c 3b 20 69 74 20 | with |d|=0|; it |
|00004000| 64 6f 65 73 0a 6e 6f 74 | 68 69 6e 67 20 62 75 74 |does.not|hing but|
|00004010| 20 63 68 61 6e 67 65 20 | 74 68 65 20 7c 70 61 69 | change |the |pai|
|00004020| 6e 74 5f 73 77 69 74 63 | 68 7c 20 66 72 6f 6d 20 |nt_switc|h| from |
|00004030| 5c 5c 7b 62 6c 61 63 6b | 7d 20 74 6f 20 5c 5c 7b |\\{black|} to \\{|
|00004040| 77 68 69 74 65 7d 20 6f | 72 0a 76 69 63 65 7e 76 |white} o|r.vice~v|
|00004050| 65 72 73 61 2e 0a 0a 5c | 79 73 6b 69 70 5c 68 61 |ersa...\|yskip\ha|
|00004060| 6e 67 5c 5c 7b 70 61 69 | 6e 74 5c 5f 31 7d 20 74 |ng\\{pai|nt\_1} t|
|00004070| 68 72 6f 75 67 68 20 5c | 5c 7b 70 61 69 6e 74 5c |hrough \|\{paint\|
|00004080| 5f 36 33 7d 20 28 6f 70 | 63 6f 64 65 73 20 31 20 |_63} (op|codes 1 |
|00004090| 74 6f 20 36 33 29 2e 0a | 54 68 65 73 65 20 61 72 |to 63)..|These ar|
|000040a0| 65 20 5c 5c 7b 70 61 69 | 6e 74 7d 20 63 6f 6d 6d |e \\{pai|nt} comm|
|000040b0| 61 6e 64 73 20 77 69 74 | 68 20 7c 64 3d 31 7c 20 |ands wit|h |d=1| |
|000040c0| 74 6f 7e 36 33 2c 20 64 | 65 66 69 6e 65 64 20 61 |to~63, d|efined a|
|000040d0| 73 20 66 6f 6c 6c 6f 77 | 73 3a 20 49 66 0a 7c 70 |s follow|s: If.|p|
|000040e0| 61 69 6e 74 5f 73 77 69 | 74 63 68 3d 62 6c 61 63 |aint_swi|tch=blac|
|000040f0| 6b 7c 2c 20 62 6c 61 63 | 6b 65 6e 20 7c 64 7c 7e |k|, blac|ken |d|~|
|00004100| 70 69 78 65 6c 73 20 6f | 66 20 74 68 65 20 63 75 |pixels o|f the cu|
|00004110| 72 72 65 6e 74 20 72 6f | 77 7e 7c 6e 7c 2c 0a 69 |rrent ro|w~|n|,.i|
|00004120| 6e 20 63 6f 6c 75 6d 6e | 73 20 7c 6d 7c 20 74 68 |n column|s |m| th|
|00004130| 72 6f 75 67 68 20 7c 6d | 2b 64 2d 31 7c 20 69 6e |rough |m|+d-1| in|
|00004140| 63 6c 75 73 69 76 65 2e | 20 54 68 65 6e 2c 20 69 |clusive.| Then, i|
|00004150| 6e 20 61 6e 79 20 63 61 | 73 65 2c 0a 63 6f 6d 70 |n any ca|se,.comp|
|00004160| 6c 65 6d 65 6e 74 20 74 | 68 65 20 7c 70 61 69 6e |lement t|he |pain|
|00004170| 74 5f 73 77 69 74 63 68 | 7c 20 61 6e 64 20 61 64 |t_switch|| and ad|
|00004180| 76 61 6e 63 65 20 7c 6d | 7c 20 62 79 7e 7c 64 7c |vance |m|| by~|d||
|00004190| 2e 0a 0a 5c 79 73 6b 69 | 70 5c 68 61 6e 67 7c 70 |...\yski|p\hang|p|
|000041a0| 61 69 6e 74 31 7c 20 36 | 34 20 7c 64 5b 31 5d 7c |aint1| 6|4 |d[1]||
|000041b0| 2e 20 54 68 69 73 20 69 | 73 20 61 20 5c 5c 7b 70 |. This i|s a \\{p|
|000041c0| 61 69 6e 74 7d 20 63 6f | 6d 6d 61 6e 64 20 77 69 |aint} co|mmand wi|
|000041d0| 74 68 20 61 20 73 70 65 | 63 69 66 69 65 64 0a 76 |th a spe|cified.v|
|000041e0| 61 6c 75 65 20 6f 66 7e | 7c 64 7c 3b 20 5c 4d 46 |alue of~||d|; \MF|
|000041f0| 5c 20 75 73 65 73 20 69 | 74 20 74 6f 20 70 61 69 |\ uses i|t to pai|
|00004200| 6e 74 20 77 68 65 6e 20 | 7c 36 34 3c 3d 64 3c 32 |nt when ||64<=d<2|
|00004210| 35 36 7c 2e 0a 0a 5c 79 | 73 6b 69 70 5c 68 61 6e |56|...\y|skip\han|
|00004220| 67 7c 40 21 70 61 69 6e | 74 32 7c 20 36 35 20 7c |g|@!pain|t2| 65 ||
|00004230| 64 5b 32 5d 7c 2e 20 53 | 61 6d 65 20 61 73 20 7c |d[2]|. S|ame as ||
|00004240| 70 61 69 6e 74 31 7c 2c | 20 62 75 74 20 7c 64 7c |paint1|,| but |d||
|00004250| 7e 63 61 6e 20 62 65 20 | 61 73 20 68 69 67 68 0a |~can be |as high.|
|00004260| 61 73 7e 36 35 35 33 35 | 2e 0a 0a 5c 79 73 6b 69 |as~65535|...\yski|
|00004270| 70 5c 68 61 6e 67 7c 40 | 21 70 61 69 6e 74 33 7c |p\hang|@|!paint3||
|00004280| 20 36 36 20 7c 64 5b 33 | 5d 7c 2e 20 53 61 6d 65 | 66 |d[3|]|. Same|
|00004290| 20 61 73 20 7c 70 61 69 | 6e 74 31 7c 2c 20 62 75 | as |pai|nt1|, bu|
|000042a0| 74 20 7c 64 7c 7e 63 61 | 6e 20 62 65 20 61 73 20 |t |d|~ca|n be as |
|000042b0| 68 69 67 68 0a 61 73 20 | 24 32 5e 7b 32 34 7d 2d |high.as |$2^{24}-|
|000042c0| 31 24 2e 20 5c 4d 46 5c | 20 6e 65 76 65 72 20 6e |1$. \MF\| never n|
|000042d0| 65 65 64 73 20 74 68 69 | 73 20 63 6f 6d 6d 61 6e |eeds thi|s comman|
|000042e0| 64 2c 20 61 6e 64 20 69 | 74 20 69 73 20 68 61 72 |d, and i|t is har|
|000042f0| 64 20 74 6f 20 69 6d 61 | 67 69 6e 65 0a 61 6e 79 |d to ima|gine.any|
|00004300| 62 6f 64 79 20 6d 61 6b | 69 6e 67 20 70 72 61 63 |body mak|ing prac|
|00004310| 74 69 63 61 6c 20 75 73 | 65 20 6f 66 20 69 74 3b |tical us|e of it;|
|00004320| 20 73 75 72 65 6c 79 20 | 61 20 6d 6f 72 65 20 63 | surely |a more c|
|00004330| 6f 6d 70 61 63 74 20 65 | 6e 63 6f 64 69 6e 67 20 |ompact e|ncoding |
|00004340| 77 69 6c 6c 20 62 65 0a | 64 65 73 69 72 61 62 6c |will be.|desirabl|
|00004350| 65 20 77 68 65 6e 20 63 | 68 61 72 61 63 74 65 72 |e when c|haracter|
|00004360| 73 20 63 61 6e 20 62 65 | 20 74 68 69 73 20 6c 61 |s can be| this la|
|00004370| 72 67 65 2e 20 42 75 74 | 20 74 68 65 20 63 6f 6d |rge. But| the com|
|00004380| 6d 61 6e 64 20 69 73 20 | 74 68 65 72 65 2c 0a 61 |mand is |there,.a|
|00004390| 6e 79 77 61 79 2c 20 6a | 75 73 74 20 69 6e 20 63 |nyway, j|ust in c|
|000043a0| 61 73 65 2e 0a 0a 5c 79 | 73 6b 69 70 5c 68 61 6e |ase...\y|skip\han|
|000043b0| 67 7c 62 6f 63 7c 20 36 | 37 20 7c 63 5b 34 5d 7c |g|boc| 6|7 |c[4]||
|000043c0| 20 7c 70 5b 34 5d 7c 20 | 7c 6d 69 6e 5f 6d 5b 34 | |p[4]| ||min_m[4|
|000043d0| 5d 7c 20 7c 6d 61 78 5f | 6d 5b 34 5d 7c 20 7c 6d |]| |max_|m[4]| |m|
|000043e0| 69 6e 5f 6e 5b 34 5d 7c | 0a 7c 6d 61 78 5f 6e 5b |in_n[4]||.|max_n[|
|000043f0| 34 5d 7c 2e 20 42 65 67 | 69 6e 6e 69 6e 67 20 6f |4]|. Beg|inning o|
|00004400| 66 20 61 20 63 68 61 72 | 61 63 74 65 72 3a 20 20 |f a char|acter: |
|00004410| 48 65 72 65 20 7c 63 7c | 20 69 73 20 74 68 65 20 |Here |c|| is the |
|00004420| 63 68 61 72 61 63 74 65 | 72 20 63 6f 64 65 2c 20 |characte|r code, |
|00004430| 61 6e 64 0a 7c 70 7c 20 | 70 6f 69 6e 74 73 20 74 |and.|p| |points t|
|00004440| 6f 20 74 68 65 20 70 72 | 65 76 69 6f 75 73 20 63 |o the pr|evious c|
|00004450| 68 61 72 61 63 74 65 72 | 20 62 65 67 69 6e 6e 69 |haracter| beginni|
|00004460| 6e 67 20 28 69 66 20 61 | 6e 79 29 20 66 6f 72 20 |ng (if a|ny) for |
|00004470| 63 68 61 72 61 63 74 65 | 72 73 20 68 61 76 69 6e |characte|rs havin|
|00004480| 67 0a 74 68 69 73 20 63 | 6f 64 65 20 6e 75 6d 62 |g.this c|ode numb|
|00004490| 65 72 20 6d 6f 64 75 6c | 6f 20 32 35 36 2e 20 20 |er modul|o 256. |
|000044a0| 28 54 68 65 20 70 6f 69 | 6e 74 65 72 20 7c 70 7c |(The poi|nter |p||
|000044b0| 20 69 73 20 7c 2d 31 7c | 20 69 66 20 74 68 65 72 | is |-1|| if ther|
|000044c0| 65 20 77 61 73 20 6e 6f | 0a 70 72 69 6f 72 20 63 |e was no|.prior c|
|000044d0| 68 61 72 61 63 74 65 72 | 20 77 69 74 68 20 61 6e |haracter| with an|
|000044e0| 20 65 71 75 69 76 61 6c | 65 6e 74 20 63 6f 64 65 | equival|ent code|
|000044f0| 2e 29 20 54 68 65 20 76 | 61 6c 75 65 73 20 6f 66 |.) The v|alues of|
|00004500| 20 72 65 67 69 73 74 65 | 72 73 20 7c 6d 7c 20 61 | registe|rs |m| a|
|00004510| 6e 64 20 7c 6e 7c 0a 64 | 65 66 69 6e 65 64 20 62 |nd |n|.d|efined b|
|00004520| 79 20 74 68 65 20 69 6e | 73 74 72 75 63 74 69 6f |y the in|structio|
|00004530| 6e 73 20 74 68 61 74 20 | 66 6f 6c 6c 6f 77 20 66 |ns that |follow f|
|00004540| 6f 72 20 74 68 69 73 20 | 63 68 61 72 61 63 74 65 |or this |characte|
|00004550| 72 20 6d 75 73 74 0a 73 | 61 74 69 73 66 79 20 7c |r must.s|atisfy ||
|00004560| 6d 69 6e 5f 6d 3c 3d 6d | 3c 3d 6d 61 78 5f 6d 7c |min_m<=m|<=max_m||
|00004570| 20 61 6e 64 20 7c 6d 69 | 6e 5f 6e 3c 3d 6e 3c 3d | and |mi|n_n<=n<=|
|00004580| 6d 61 78 5f 6e 7c 2e 20 | 20 28 54 68 65 20 76 61 |max_n|. | (The va|
|00004590| 6c 75 65 73 20 6f 66 20 | 7c 6d 61 78 5f 6d 7c 20 |lues of ||max_m| |
|000045a0| 61 6e 64 0a 7c 6d 69 6e | 5f 6e 7c 20 6e 65 65 64 |and.|min|_n| need|
|000045b0| 20 6e 6f 74 20 62 65 20 | 74 68 65 20 74 69 67 68 | not be |the tigh|
|000045c0| 74 65 73 74 20 62 6f 75 | 6e 64 73 20 70 6f 73 73 |test bou|nds poss|
|000045d0| 69 62 6c 65 2e 29 20 20 | 57 68 65 6e 20 61 20 5c |ible.) |When a \|
|000045e0| 2e 7b 47 46 7d 2d 72 65 | 61 64 69 6e 67 0a 70 72 |.{GF}-re|ading.pr|
|000045f0| 6f 67 72 61 6d 20 73 65 | 65 73 20 61 20 7c 62 6f |ogram se|es a |bo|
|00004600| 63 7c 2c 20 69 74 20 63 | 61 6e 20 75 73 65 20 7c |c|, it c|an use ||
|00004610| 6d 69 6e 5f 6d 7c 2c 20 | 7c 6d 61 78 5f 6d 7c 2c |min_m|, ||max_m|,|
|00004620| 20 7c 6d 69 6e 5f 6e 7c | 2c 20 61 6e 64 20 7c 6d | |min_n||, and |m|
|00004630| 61 78 5f 6e 7c 20 74 6f | 0a 69 6e 69 74 69 61 6c |ax_n| to|.initial|
|00004640| 69 7a 65 20 74 68 65 20 | 62 6f 75 6e 64 73 20 6f |ize the |bounds o|
|00004650| 66 20 61 6e 20 61 72 72 | 61 79 2e 20 54 68 65 6e |f an arr|ay. Then|
|00004660| 20 69 74 20 73 65 74 73 | 20 7c 6d 3a 3d 6d 69 6e | it sets| |m:=min|
|00004670| 5f 6d 7c 2c 20 7c 6e 3a | 3d 6d 61 78 5f 6e 7c 2c |_m|, |n:|=max_n|,|
|00004680| 20 61 6e 64 0a 7c 70 61 | 69 6e 74 5f 73 77 69 74 | and.|pa|int_swit|
|00004690| 63 68 3a 3d 77 68 69 74 | 65 7c 2e 0a 0a 5c 79 73 |ch:=whit|e|...\ys|
|000046a0| 6b 69 70 5c 68 61 6e 67 | 7c 62 6f 63 31 7c 20 36 |kip\hang||boc1| 6|
|000046b0| 38 20 7c 63 5b 31 5d 7c | 20 7c 40 21 64 65 6c 5f |8 |c[1]|| |@!del_|
|000046c0| 6d 5b 31 5d 7c 20 7c 6d | 61 78 5f 6d 5b 31 5d 7c |m[1]| |m|ax_m[1]||
|000046d0| 20 7c 40 21 64 65 6c 5f | 6e 5b 31 5d 7c 20 7c 6d | |@!del_|n[1]| |m|
|000046e0| 61 78 5f 6e 5b 31 5d 7c | 2e 0a 53 61 6d 65 20 61 |ax_n[1]||..Same a|
|000046f0| 73 20 7c 62 6f 63 7c 2c | 20 62 75 74 20 7c 70 7c |s |boc|,| but |p||
|00004700| 20 69 73 20 61 73 73 75 | 6d 65 64 20 74 6f 20 62 | is assu|med to b|
|00004710| 65 7e 24 2d 31 24 3b 20 | 61 6c 73 6f 20 7c 64 65 |e~$-1$; |also |de|
|00004720| 6c 5f 6d 3d 6d 61 78 5f | 6d 2d 6d 69 6e 5f 6d 7c |l_m=max_|m-min_m||
|00004730| 0a 61 6e 64 20 7c 64 65 | 6c 5f 6e 3d 6d 61 78 5f |.and |de|l_n=max_|
|00004740| 6e 2d 6d 69 6e 5f 6e 7c | 20 61 72 65 20 67 69 76 |n-min_n|| are giv|
|00004750| 65 6e 20 69 6e 73 74 65 | 61 64 20 6f 66 20 7c 6d |en inste|ad of |m|
|00004760| 69 6e 5f 6d 7c 20 61 6e | 64 20 7c 6d 69 6e 5f 6e |in_m| an|d |min_n|
|00004770| 7c 2e 0a 54 68 65 20 6f | 6e 65 2d 62 79 74 65 20 ||..The o|ne-byte |
|00004780| 70 61 72 61 6d 65 74 65 | 72 73 20 6d 75 73 74 20 |paramete|rs must |
|00004790| 62 65 20 62 65 74 77 65 | 65 6e 20 30 20 61 6e 64 |be betwe|en 0 and|
|000047a0| 20 32 35 35 2c 20 69 6e | 63 6c 75 73 69 76 65 2e | 255, in|clusive.|
|000047b0| 0a 5c 20 28 54 68 69 73 | 20 61 62 62 72 65 76 69 |.\ (This| abbrevi|
|000047c0| 61 74 65 64 20 7c 62 6f | 63 7c 20 73 61 76 65 73 |ated |bo|c| saves|
|000047d0| 20 31 39 7e 62 79 74 65 | 73 20 70 65 72 20 63 68 | 19~byte|s per ch|
|000047e0| 61 72 61 63 74 65 72 2c | 20 69 6e 20 63 6f 6d 6d |aracter,| in comm|
|000047f0| 6f 6e 20 63 61 73 65 73 | 2e 29 0a 0a 5c 79 73 6b |on cases|.)..\ysk|
|00004800| 69 70 5c 68 61 6e 67 7c | 65 6f 63 7c 20 36 39 2e |ip\hang||eoc| 69.|
|00004810| 20 45 6e 64 20 6f 66 20 | 63 68 61 72 61 63 74 65 | End of |characte|
|00004820| 72 3a 20 41 6c 6c 20 70 | 69 78 65 6c 73 20 62 6c |r: All p|ixels bl|
|00004830| 61 63 6b 65 6e 65 64 20 | 73 6f 20 66 61 72 0a 63 |ackened |so far.c|
|00004840| 6f 6e 73 74 69 74 75 74 | 65 20 74 68 65 20 70 61 |onstitut|e the pa|
|00004850| 74 74 65 72 6e 20 66 6f | 72 20 74 68 69 73 20 63 |ttern fo|r this c|
|00004860| 68 61 72 61 63 74 65 72 | 2e 20 49 6e 20 70 61 72 |haracter|. In par|
|00004870| 74 69 63 75 6c 61 72 2c | 20 61 20 63 6f 6d 70 6c |ticular,| a compl|
|00004880| 65 74 65 6c 79 0a 62 6c | 61 6e 6b 20 63 68 61 72 |etely.bl|ank char|
|00004890| 61 63 74 65 72 20 6d 69 | 67 68 74 20 68 61 76 65 |acter mi|ght have|
|000048a0| 20 7c 65 6f 63 7c 20 69 | 6d 6d 65 64 69 61 74 65 | |eoc| i|mmediate|
|000048b0| 6c 79 20 66 6f 6c 6c 6f | 77 69 6e 67 20 7c 62 6f |ly follo|wing |bo|
|000048c0| 63 7c 2e 0a 0a 5c 79 73 | 6b 69 70 5c 68 61 6e 67 |c|...\ys|kip\hang|
|000048d0| 7c 73 6b 69 70 30 7c 20 | 37 30 2e 20 44 65 63 72 ||skip0| |70. Decr|
|000048e0| 65 61 73 65 20 7c 6e 7c | 20 62 79 20 31 20 61 6e |ease |n|| by 1 an|
|000048f0| 64 20 73 65 74 20 7c 6d | 3a 3d 6d 69 6e 5f 6d 7c |d set |m|:=min_m||
|00004900| 2c 0a 7c 70 61 69 6e 74 | 5f 73 77 69 74 63 68 3a |,.|paint|_switch:|
|00004910| 3d 77 68 69 74 65 7c 2e | 20 5c 20 28 54 68 69 73 |=white|.| \ (This|
|00004920| 20 66 69 6e 69 73 68 65 | 73 20 6f 6e 65 20 72 6f | finishe|s one ro|
|00004930| 77 20 61 6e 64 20 62 65 | 67 69 6e 73 20 61 6e 6f |w and be|gins ano|
|00004940| 74 68 65 72 2c 0a 72 65 | 61 64 79 20 74 6f 20 77 |ther,.re|ady to w|
|00004950| 68 69 74 65 6e 20 74 68 | 65 20 6c 65 66 74 6d 6f |hiten th|e leftmo|
|00004960| 73 74 20 70 69 78 65 6c | 20 69 6e 20 74 68 65 20 |st pixel| in the |
|00004970| 6e 65 77 20 72 6f 77 2e | 29 0a 0a 5c 79 73 6b 69 |new row.|)..\yski|
|00004980| 70 5c 68 61 6e 67 7c 73 | 6b 69 70 31 7c 20 37 31 |p\hang|s|kip1| 71|
|00004990| 20 7c 64 5b 31 5d 7c 2e | 20 44 65 63 72 65 61 73 | |d[1]|.| Decreas|
|000049a0| 65 20 7c 6e 7c 20 62 79 | 20 7c 64 2b 31 7c 2c 20 |e |n| by| |d+1|, |
|000049b0| 73 65 74 20 7c 6d 3a 3d | 6d 69 6e 5f 6d 7c 2c 20 |set |m:=|min_m|, |
|000049c0| 61 6e 64 20 73 65 74 0a | 7c 70 61 69 6e 74 5f 73 |and set.||paint_s|
|000049d0| 77 69 74 63 68 3a 3d 77 | 68 69 74 65 7c 2e 20 54 |witch:=w|hite|. T|
|000049e0| 68 69 73 20 69 73 20 61 | 20 77 61 79 20 74 6f 20 |his is a| way to |
|000049f0| 70 72 6f 64 75 63 65 20 | 7c 64 7c 20 61 6c 6c 2d |produce ||d| all-|
|00004a00| 77 68 69 74 65 20 72 6f | 77 73 2e 0a 0a 5c 79 73 |white ro|ws...\ys|
|00004a10| 6b 69 70 5c 68 61 6e 67 | 7c 40 21 73 6b 69 70 32 |kip\hang||@!skip2|
|00004a20| 7c 20 37 32 20 7c 64 5b | 32 5d 7c 2e 20 53 61 6d || 72 |d[|2]|. Sam|
|00004a30| 65 20 61 73 20 7c 73 6b | 69 70 31 7c 2c 20 62 75 |e as |sk|ip1|, bu|
|00004a40| 74 20 7c 64 7c 20 63 61 | 6e 20 62 65 20 61 73 20 |t |d| ca|n be as |
|00004a50| 6c 61 72 67 65 0a 61 73 | 20 36 35 35 33 35 2e 0a |large.as| 65535..|
|00004a60| 0a 5c 79 73 6b 69 70 5c | 68 61 6e 67 7c 40 21 73 |.\yskip\|hang|@!s|
|00004a70| 6b 69 70 33 7c 20 37 33 | 20 7c 64 5b 33 5d 7c 2e |kip3| 73| |d[3]|.|
|00004a80| 20 53 61 6d 65 20 61 73 | 20 7c 73 6b 69 70 31 7c | Same as| |skip1||
|00004a90| 2c 20 62 75 74 20 7c 64 | 7c 20 63 61 6e 20 62 65 |, but |d|| can be|
|00004aa0| 20 61 73 20 6c 61 72 67 | 65 0a 61 73 20 24 32 5e | as larg|e.as $2^|
|00004ab0| 7b 32 34 7d 2d 31 24 2e | 20 5c 4d 46 5c 20 6f 62 |{24}-1$.| \MF\ ob|
|00004ac0| 76 69 6f 75 73 6c 79 20 | 6e 65 76 65 72 20 6e 65 |viously |never ne|
|00004ad0| 65 64 73 20 74 68 69 73 | 20 63 6f 6d 6d 61 6e 64 |eds this| command|
|00004ae0| 2e 0a 0a 5c 79 73 6b 69 | 70 5c 68 61 6e 67 7c 6e |...\yski|p\hang|n|
|00004af0| 65 77 5f 72 6f 77 5f 30 | 7c 20 37 34 2e 20 44 65 |ew_row_0|| 74. De|
|00004b00| 63 72 65 61 73 65 20 7c | 6e 7c 20 62 79 20 31 20 |crease ||n| by 1 |
|00004b10| 61 6e 64 20 73 65 74 20 | 7c 6d 3a 3d 6d 69 6e 5f |and set ||m:=min_|
|00004b20| 6d 7c 2c 0a 7c 70 61 69 | 6e 74 5f 73 77 69 74 63 |m|,.|pai|nt_switc|
|00004b30| 68 3a 3d 62 6c 61 63 6b | 7c 2e 20 5c 20 28 54 68 |h:=black||. \ (Th|
|00004b40| 69 73 20 66 69 6e 69 73 | 68 65 73 20 6f 6e 65 20 |is finis|hes one |
|00004b50| 72 6f 77 20 61 6e 64 20 | 62 65 67 69 6e 73 20 61 |row and |begins a|
|00004b60| 6e 6f 74 68 65 72 2c 0a | 72 65 61 64 79 20 74 6f |nother,.|ready to|
|00004b70| 20 7b 5c 73 6c 20 62 6c | 61 63 6b 65 6e 5c 2f 7d | {\sl bl|acken\/}|
|00004b80| 20 74 68 65 20 6c 65 66 | 74 6d 6f 73 74 20 70 69 | the lef|tmost pi|
|00004b90| 78 65 6c 20 69 6e 20 74 | 68 65 20 6e 65 77 20 72 |xel in t|he new r|
|00004ba0| 6f 77 2e 29 0a 0a 5c 79 | 73 6b 69 70 5c 68 61 6e |ow.)..\y|skip\han|
|00004bb0| 67 7c 40 21 6e 65 77 5f | 72 6f 77 5f 31 7c 20 74 |g|@!new_|row_1| t|
|00004bc0| 68 72 6f 75 67 68 20 7c | 40 21 6e 65 77 5f 72 6f |hrough ||@!new_ro|
|00004bd0| 77 5f 31 36 34 7c 20 28 | 6f 70 63 6f 64 65 73 20 |w_164| (|opcodes |
|00004be0| 37 35 20 74 6f 20 32 33 | 38 29 2e 20 53 61 6d 65 |75 to 23|8). Same|
|00004bf0| 20 61 73 0a 7c 6e 65 77 | 5f 72 6f 77 5f 30 7c 2c | as.|new|_row_0|,|
|00004c00| 20 62 75 74 20 77 69 74 | 68 20 7c 6d 3a 3d 6d 69 | but wit|h |m:=mi|
|00004c10| 6e 5f 6d 2b 31 7c 20 74 | 68 72 6f 75 67 68 20 7c |n_m+1| t|hrough ||
|00004c20| 6d 69 6e 5f 6d 2b 31 36 | 34 7c 2c 20 72 65 73 70 |min_m+16|4|, resp|
|00004c30| 65 63 74 69 76 65 6c 79 | 2e 0a 0a 5c 79 73 6b 69 |ectively|...\yski|
|00004c40| 70 5c 68 61 6e 67 7c 78 | 78 78 31 7c 20 32 33 39 |p\hang|x|xx1| 239|
|00004c50| 20 7c 6b 5b 31 5d 7c 20 | 7c 78 5b 6b 5d 7c 2e 20 | |k[1]| ||x[k]|. |
|00004c60| 54 68 69 73 20 63 6f 6d | 6d 61 6e 64 20 69 73 20 |This com|mand is |
|00004c70| 75 6e 64 65 66 69 6e 65 | 64 20 69 6e 0a 67 65 6e |undefine|d in.gen|
|00004c80| 65 72 61 6c 3b 20 69 74 | 20 66 75 6e 63 74 69 6f |eral; it| functio|
|00004c90| 6e 73 20 61 73 20 61 20 | 24 28 6b 2b 32 29 24 2d |ns as a |$(k+2)$-|
|00004ca0| 62 79 74 65 20 7c 6e 6f | 5f 6f 70 7c 20 75 6e 6c |byte |no|_op| unl|
|00004cb0| 65 73 73 20 73 70 65 63 | 69 61 6c 20 5c 2e 7b 47 |ess spec|ial \.{G|
|00004cc0| 46 7d 2d 72 65 61 64 69 | 6e 67 0a 70 72 6f 67 72 |F}-readi|ng.progr|
|00004cd0| 61 6d 73 20 61 72 65 20 | 62 65 69 6e 67 20 75 73 |ams are |being us|
|00004ce0| 65 64 2e 20 5c 4d 46 5c | 20 67 65 6e 65 72 61 74 |ed. \MF\| generat|
|00004cf0| 65 73 20 5c 5c 7b 78 78 | 78 7d 20 63 6f 6d 6d 61 |es \\{xx|x} comma|
|00004d00| 6e 64 73 20 77 68 65 6e | 20 65 6e 63 6f 75 6e 74 |nds when| encount|
|00004d10| 65 72 69 6e 67 0a 61 20 | 5c 26 7b 73 70 65 63 69 |ering.a |\&{speci|
|00004d20| 61 6c 7d 20 73 74 72 69 | 6e 67 3b 20 74 68 69 73 |al} stri|ng; this|
|00004d30| 20 6f 63 63 75 72 73 20 | 69 6e 20 74 68 65 20 5c | occurs |in the \|
|00004d40| 2e 7b 47 46 7d 20 66 69 | 6c 65 20 6f 6e 6c 79 20 |.{GF} fi|le only |
|00004d50| 62 65 74 77 65 65 6e 0a | 63 68 61 72 61 63 74 65 |between.|characte|
|00004d60| 72 73 2c 20 61 66 74 65 | 72 20 74 68 65 20 70 72 |rs, afte|r the pr|
|00004d70| 65 61 6d 62 6c 65 2c 20 | 61 6e 64 20 62 65 66 6f |eamble, |and befo|
|00004d80| 72 65 20 74 68 65 20 70 | 6f 73 74 61 6d 62 6c 65 |re the p|ostamble|
|00004d90| 2e 20 48 6f 77 65 76 65 | 72 2c 0a 5c 5c 7b 78 78 |. Howeve|r,.\\{xx|
|00004da0| 78 7d 20 63 6f 6d 6d 61 | 6e 64 73 20 6d 69 67 68 |x} comma|nds migh|
|00004db0| 74 20 61 70 70 65 61 72 | 20 77 69 74 68 69 6e 20 |t appear| within |
|00004dc0| 63 68 61 72 61 63 74 65 | 72 73 2c 0a 69 6e 20 5c |characte|rs,.in \|
|00004dd0| 2e 7b 47 46 7d 20 66 69 | 6c 65 73 20 67 65 6e 65 |.{GF} fi|les gene|
|00004de0| 72 61 74 65 64 20 62 79 | 20 6f 74 68 65 72 0a 70 |rated by| other.p|
|00004df0| 72 6f 63 65 73 73 6f 72 | 73 2e 20 49 74 20 69 73 |rocessor|s. It is|
|00004e00| 20 72 65 63 6f 6d 6d 65 | 6e 64 65 64 20 74 68 61 | recomme|nded tha|
|00004e10| 74 20 7c 78 7c 20 62 65 | 20 61 20 73 74 72 69 6e |t |x| be| a strin|
|00004e20| 67 20 68 61 76 69 6e 67 | 20 74 68 65 20 66 6f 72 |g having| the for|
|00004e30| 6d 20 6f 66 20 61 0a 6b | 65 79 77 6f 72 64 20 66 |m of a.k|eyword f|
|00004e40| 6f 6c 6c 6f 77 65 64 20 | 62 79 20 70 6f 73 73 69 |ollowed |by possi|
|00004e50| 62 6c 65 20 70 61 72 61 | 6d 65 74 65 72 73 20 72 |ble para|meters r|
|00004e60| 65 6c 65 76 61 6e 74 20 | 74 6f 20 74 68 61 74 20 |elevant |to that |
|00004e70| 6b 65 79 77 6f 72 64 2e | 0a 0a 5c 79 73 6b 69 70 |keyword.|..\yskip|
|00004e80| 5c 68 61 6e 67 7c 40 21 | 78 78 78 32 7c 20 32 34 |\hang|@!|xxx2| 24|
|00004e90| 30 20 7c 6b 5b 32 5d 7c | 20 7c 78 5b 6b 5d 7c 2e |0 |k[2]|| |x[k]|.|
|00004ea0| 20 4c 69 6b 65 20 7c 78 | 78 78 31 7c 2c 20 62 75 | Like |x|xx1|, bu|
|00004eb0| 74 20 7c 30 3c 3d 6b 3c | 36 35 35 33 36 7c 2e 0a |t |0<=k<|65536|..|
|00004ec0| 0a 5c 79 73 6b 69 70 5c | 68 61 6e 67 7c 78 78 78 |.\yskip\|hang|xxx|
|00004ed0| 33 7c 20 32 34 31 20 7c | 6b 5b 33 5d 7c 20 7c 78 |3| 241 ||k[3]| |x|
|00004ee0| 5b 6b 5d 7c 2e 20 4c 69 | 6b 65 20 7c 78 78 78 31 |[k]|. Li|ke |xxx1|
|00004ef0| 7c 2c 20 62 75 74 20 7c | 30 3c 3d 6b 3c 40 74 24 ||, but ||0<=k<@t$|
|00004f00| 32 5e 7b 32 34 7d 24 40 | 3e 7c 2e 0a 5c 4d 46 5c |2^{24}$@|>|..\MF\|
|00004f10| 20 75 73 65 73 20 74 68 | 69 73 20 77 68 65 6e 20 | uses th|is when |
|00004f20| 73 65 6e 64 69 6e 67 20 | 61 20 5c 26 7b 73 70 65 |sending |a \&{spe|
|00004f30| 63 69 61 6c 7d 20 73 74 | 72 69 6e 67 20 77 68 6f |cial} st|ring who|
|00004f40| 73 65 20 6c 65 6e 67 74 | 68 20 65 78 63 65 65 64 |se lengt|h exceed|
|00004f50| 73 7e 32 35 35 2e 0a 0a | 5c 79 73 6b 69 70 5c 68 |s~255...|\yskip\h|
|00004f60| 61 6e 67 7c 40 21 78 78 | 78 34 7c 20 32 34 32 20 |ang|@!xx|x4| 242 |
|00004f70| 7c 6b 5b 34 5d 7c 20 7c | 78 5b 6b 5d 7c 2e 20 4c ||k[4]| ||x[k]|. L|
|00004f80| 69 6b 65 20 7c 78 78 78 | 31 7c 2c 20 62 75 74 20 |ike |xxx|1|, but |
|00004f90| 7c 6b 7c 20 63 61 6e 20 | 62 65 0a 72 69 64 69 63 ||k| can |be.ridic|
|00004fa0| 75 6c 6f 75 73 6c 79 20 | 6c 61 72 67 65 3b 20 7c |ulously |large; ||
|00004fb0| 6b 7c 20 6d 75 73 74 6e | 27 74 20 62 65 20 6e 65 |k| mustn|'t be ne|
|00004fc0| 67 61 74 69 76 65 2e 0a | 0a 5c 79 73 6b 69 70 5c |gative..|.\yskip\|
|00004fd0| 68 61 6e 67 7c 79 79 79 | 7c 20 32 34 33 20 7c 79 |hang|yyy|| 243 |y|
|00004fe0| 5b 34 5d 7c 2e 20 54 68 | 69 73 20 63 6f 6d 6d 61 |[4]|. Th|is comma|
|00004ff0| 6e 64 20 69 73 20 75 6e | 64 65 66 69 6e 65 64 20 |nd is un|defined |
|00005000| 69 6e 20 67 65 6e 65 72 | 61 6c 3b 0a 69 74 20 66 |in gener|al;.it f|
|00005010| 75 6e 63 74 69 6f 6e 73 | 20 61 73 20 61 20 35 2d |unctions| as a 5-|
|00005020| 62 79 74 65 20 7c 6e 6f | 5f 6f 70 7c 20 75 6e 6c |byte |no|_op| unl|
|00005030| 65 73 73 20 73 70 65 63 | 69 61 6c 20 5c 2e 7b 47 |ess spec|ial \.{G|
|00005040| 46 7d 2d 72 65 61 64 69 | 6e 67 20 70 72 6f 67 72 |F}-readi|ng progr|
|00005050| 61 6d 73 0a 61 72 65 20 | 62 65 69 6e 67 20 75 73 |ams.are |being us|
|00005060| 65 64 2e 20 5c 4d 46 5c | 20 70 75 74 73 20 7c 73 |ed. \MF\| puts |s|
|00005070| 63 61 6c 65 64 7c 20 6e | 75 6d 62 65 72 73 20 69 |caled| n|umbers i|
|00005080| 6e 74 6f 20 7c 79 79 79 | 7c 27 73 2c 20 61 73 20 |nto |yyy||'s, as |
|00005090| 61 0a 72 65 73 75 6c 74 | 20 6f 66 20 5c 26 7b 6e |a.result| of \&{n|
|000050a0| 75 6d 73 70 65 63 69 61 | 6c 7d 20 63 6f 6d 6d 61 |umspecia|l} comma|
|000050b0| 6e 64 73 3b 20 74 68 65 | 20 69 6e 74 65 6e 74 20 |nds; the| intent |
|000050c0| 69 73 20 74 6f 20 70 72 | 6f 76 69 64 65 20 6e 75 |is to pr|ovide nu|
|000050d0| 6d 65 72 69 63 0a 70 61 | 72 61 6d 65 74 65 72 73 |meric.pa|rameters|
|000050e0| 20 74 6f 20 5c 5c 7b 78 | 78 78 7d 20 63 6f 6d 6d | to \\{x|xx} comm|
|000050f0| 61 6e 64 73 20 74 68 61 | 74 20 69 6d 6d 65 64 69 |ands tha|t immedi|
|00005100| 61 74 65 6c 79 20 70 72 | 65 63 65 64 65 2e 0a 0a |ately pr|ecede...|
|00005110| 5c 79 73 6b 69 70 5c 68 | 61 6e 67 7c 6e 6f 5f 6f |\yskip\h|ang|no_o|
|00005120| 70 7c 20 32 34 34 2e 20 | 4e 6f 20 6f 70 65 72 61 |p| 244. |No opera|
|00005130| 74 69 6f 6e 2c 20 64 6f | 20 6e 6f 74 68 69 6e 67 |tion, do| nothing|
|00005140| 2e 20 41 6e 79 20 6e 75 | 6d 62 65 72 20 6f 66 20 |. Any nu|mber of |
|00005150| 7c 6e 6f 5f 6f 70 7c 27 | 73 0a 6d 61 79 20 6f 63 ||no_op|'|s.may oc|
|00005160| 63 75 72 20 62 65 74 77 | 65 65 6e 20 5c 2e 7b 47 |cur betw|een \.{G|
|00005170| 46 7d 20 63 6f 6d 6d 61 | 6e 64 73 2c 20 62 75 74 |F} comma|nds, but|
|00005180| 20 61 20 7c 6e 6f 5f 6f | 70 7c 20 63 61 6e 6e 6f | a |no_o|p| canno|
|00005190| 74 20 62 65 20 69 6e 73 | 65 72 74 65 64 20 62 65 |t be ins|erted be|
|000051a0| 74 77 65 65 6e 0a 61 20 | 63 6f 6d 6d 61 6e 64 20 |tween.a |command |
|000051b0| 61 6e 64 20 69 74 73 20 | 70 61 72 61 6d 65 74 65 |and its |paramete|
|000051c0| 72 73 20 6f 72 20 62 65 | 74 77 65 65 6e 20 74 77 |rs or be|tween tw|
|000051d0| 6f 20 70 61 72 61 6d 65 | 74 65 72 73 2e 0a 0a 5c |o parame|ters...\|
|000051e0| 79 73 6b 69 70 5c 68 61 | 6e 67 7c 63 68 61 72 5f |yskip\ha|ng|char_|
|000051f0| 6c 6f 63 7c 20 32 34 35 | 20 7c 63 5b 31 5d 7c 20 |loc| 245| |c[1]| |
|00005200| 7c 64 78 5b 34 5d 7c 20 | 7c 64 79 5b 34 5d 7c 20 ||dx[4]| ||dy[4]| |
|00005210| 7c 77 5b 34 5d 7c 20 7c | 70 5b 34 5d 7c 2e 0a 54 ||w[4]| ||p[4]|..T|
|00005220| 68 69 73 20 63 6f 6d 6d | 61 6e 64 20 77 69 6c 6c |his comm|and will|
|00005230| 20 61 70 70 65 61 72 20 | 6f 6e 6c 79 20 69 6e 20 | appear |only in |
|00005240| 74 68 65 20 70 6f 73 74 | 61 6d 62 6c 65 2c 20 77 |the post|amble, w|
|00005250| 68 69 63 68 20 77 69 6c | 6c 20 62 65 20 65 78 70 |hich wil|l be exp|
|00005260| 6c 61 69 6e 65 64 0a 73 | 68 6f 72 74 6c 79 2e 0a |lained.s|hortly..|
|00005270| 0a 5c 79 73 6b 69 70 5c | 68 61 6e 67 7c 40 21 63 |.\yskip\|hang|@!c|
|00005280| 68 61 72 5f 6c 6f 63 30 | 7c 20 32 34 36 20 7c 63 |har_loc0|| 246 |c|
|00005290| 5b 31 5d 7c 20 7c 40 21 | 64 6d 5b 31 5d 7c 20 7c |[1]| |@!|dm[1]| ||
|000052a0| 77 5b 34 5d 7c 20 7c 70 | 5b 34 5d 7c 2e 0a 53 61 |w[4]| |p|[4]|..Sa|
|000052b0| 6d 65 20 61 73 20 7c 63 | 68 61 72 5f 6c 6f 63 7c |me as |c|har_loc||
|000052c0| 2c 20 65 78 63 65 70 74 | 20 74 68 61 74 20 7c 64 |, except| that |d|
|000052d0| 79 7c 20 69 73 20 61 73 | 73 75 6d 65 64 20 74 6f |y| is as|sumed to|
|000052e0| 20 62 65 20 7a 65 72 6f | 2c 20 61 6e 64 20 74 68 | be zero|, and th|
|000052f0| 65 20 76 61 6c 75 65 0a | 6f 66 7e 7c 64 78 7c 20 |e value.|of~|dx| |
|00005300| 69 73 20 74 61 6b 65 6e | 20 74 6f 20 62 65 20 7c |is taken| to be ||
|00005310| 36 35 35 33 36 2a 64 6d | 7c 2c 20 77 68 65 72 65 |65536*dm||, where|
|00005320| 20 7c 30 3c 3d 64 6d 3c | 32 35 36 7c 2e 0a 0a 5c | |0<=dm<|256|...\|
|00005330| 79 73 6b 69 70 5c 68 61 | 6e 67 7c 70 72 65 7c 20 |yskip\ha|ng|pre| |
|00005340| 32 34 37 20 7c 69 5b 31 | 5d 7c 20 7c 6b 5b 31 5d |247 |i[1|]| |k[1]|
|00005350| 7c 20 7c 78 5b 6b 5d 7c | 2e 0a 42 65 67 69 6e 6e || |x[k]||..Beginn|
|00005360| 69 6e 67 20 6f 66 20 74 | 68 65 20 70 72 65 61 6d |ing of t|he pream|
|00005370| 62 6c 65 3b 20 74 68 69 | 73 20 6d 75 73 74 20 63 |ble; thi|s must c|
|00005380| 6f 6d 65 20 61 74 20 74 | 68 65 20 76 65 72 79 20 |ome at t|he very |
|00005390| 62 65 67 69 6e 6e 69 6e | 67 20 6f 66 20 74 68 65 |beginnin|g of the|
|000053a0| 0a 66 69 6c 65 2e 20 50 | 61 72 61 6d 65 74 65 72 |.file. P|arameter|
|000053b0| 20 7c 69 7c 20 69 73 20 | 61 6e 20 69 64 65 6e 74 | |i| is |an ident|
|000053c0| 69 66 79 69 6e 67 20 6e | 75 6d 62 65 72 20 66 6f |ifying n|umber fo|
|000053d0| 72 20 5c 2e 7b 47 46 7d | 20 66 6f 72 6d 61 74 2c |r \.{GF}| format,|
|000053e0| 20 63 75 72 72 65 6e 74 | 6c 79 0a 31 33 31 2e 20 | current|ly.131. |
|000053f0| 54 68 65 20 6f 74 68 65 | 72 20 69 6e 66 6f 72 6d |The othe|r inform|
|00005400| 61 74 69 6f 6e 20 69 73 | 20 6d 65 72 65 6c 79 20 |ation is| merely |
|00005410| 63 6f 6d 6d 65 6e 74 61 | 72 79 3b 20 69 74 20 69 |commenta|ry; it i|
|00005420| 73 20 6e 6f 74 20 67 69 | 76 65 6e 0a 73 70 65 63 |s not gi|ven.spec|
|00005430| 69 61 6c 20 69 6e 74 65 | 72 70 72 65 74 61 74 69 |ial inte|rpretati|
|00005440| 6f 6e 20 6c 69 6b 65 20 | 5c 5c 7b 78 78 78 7d 20 |on like |\\{xxx} |
|00005450| 63 6f 6d 6d 61 6e 64 73 | 20 61 72 65 2e 20 28 4e |commands| are. (N|
|00005460| 6f 74 65 20 74 68 61 74 | 20 5c 5c 7b 78 78 78 7d |ote that| \\{xxx}|
|00005470| 0a 63 6f 6d 6d 61 6e 64 | 73 20 6d 61 79 20 69 6d |.command|s may im|
|00005480| 6d 65 64 69 61 74 65 6c | 79 20 66 6f 6c 6c 6f 77 |mediatel|y follow|
|00005490| 20 74 68 65 20 70 72 65 | 61 6d 62 6c 65 2c 20 62 | the pre|amble, b|
|000054a0| 65 66 6f 72 65 20 74 68 | 65 20 66 69 72 73 74 20 |efore th|e first |
|000054b0| 7c 62 6f 63 7c 2e 29 0a | 0a 5c 79 73 6b 69 70 5c ||boc|.).|.\yskip\|
|000054c0| 68 61 6e 67 7c 70 6f 73 | 74 7c 20 32 34 38 2e 20 |hang|pos|t| 248. |
|000054d0| 42 65 67 69 6e 6e 69 6e | 67 20 6f 66 20 74 68 65 |Beginnin|g of the|
|000054e0| 20 70 6f 73 74 61 6d 62 | 6c 65 2c 20 73 65 65 20 | postamb|le, see |
|000054f0| 62 65 6c 6f 77 2e 0a 0a | 5c 79 73 6b 69 70 5c 68 |below...|\yskip\h|
|00005500| 61 6e 67 7c 70 6f 73 74 | 5f 70 6f 73 74 7c 20 32 |ang|post|_post| 2|
|00005510| 34 39 2e 20 45 6e 64 69 | 6e 67 20 6f 66 20 74 68 |49. Endi|ng of th|
|00005520| 65 20 70 6f 73 74 61 6d | 62 6c 65 2c 20 73 65 65 |e postam|ble, see|
|00005530| 20 62 65 6c 6f 77 2e 0a | 0a 5c 79 73 6b 69 70 5c | below..|.\yskip\|
|00005540| 6e 6f 69 6e 64 65 6e 74 | 20 43 6f 6d 6d 61 6e 64 |noindent| Command|
|00005550| 73 20 32 35 30 2d 2d 32 | 35 35 20 61 72 65 20 75 |s 250--2|55 are u|
|00005560| 6e 64 65 66 69 6e 65 64 | 20 61 74 20 74 68 65 20 |ndefined| at the |
|00005570| 70 72 65 73 65 6e 74 20 | 74 69 6d 65 2e 0a 0a 40 |present |time...@|
|00005580| 64 20 67 66 5f 69 64 5f | 62 79 74 65 3d 31 33 31 |d gf_id_|byte=131|
|00005590| 20 7b 69 64 65 6e 74 69 | 66 69 65 73 20 74 68 65 | {identi|fies the|
|000055a0| 20 6b 69 6e 64 20 6f 66 | 20 5c 2e 7b 47 46 7d 20 | kind of| \.{GF} |
|000055b0| 66 69 6c 65 73 20 64 65 | 73 63 72 69 62 65 64 20 |files de|scribed |
|000055c0| 68 65 72 65 7d 0a 0a 40 | 20 48 65 72 65 20 61 72 |here}..@| Here ar|
|000055d0| 65 20 74 68 65 20 6f 70 | 63 6f 64 65 73 20 74 68 |e the op|codes th|
|000055e0| 61 74 20 5c 2e 7b 47 46 | 74 6f 50 4b 7d 20 61 63 |at \.{GF|toPK} ac|
|000055f0| 74 75 61 6c 6c 79 20 72 | 65 66 65 72 73 20 74 6f |tually r|efers to|
|00005600| 2e 0a 0a 40 64 20 70 61 | 69 6e 74 5f 30 3d 30 20 |...@d pa|int_0=0 |
|00005610| 7b 62 65 67 69 6e 6e 69 | 6e 67 20 6f 66 20 74 68 |{beginni|ng of th|
|00005620| 65 20 5c 5c 7b 70 61 69 | 6e 74 7d 20 63 6f 6d 6d |e \\{pai|nt} comm|
|00005630| 61 6e 64 73 7d 0a 40 64 | 20 70 61 69 6e 74 31 3d |ands}.@d| paint1=|
|00005640| 36 34 20 7b 6d 6f 76 65 | 20 72 69 67 68 74 20 61 |64 {move| right a|
|00005650| 20 67 69 76 65 6e 20 6e | 75 6d 62 65 72 20 6f 66 | given n|umber of|
|00005660| 20 63 6f 6c 75 6d 6e 73 | 2c 20 74 68 65 6e 0a 20 | columns|, then. |
|00005670| 20 62 6c 61 63 6b 24 7b | 7d 5c 73 77 61 70 7b 7d | black${|}\swap{}|
|00005680| 24 77 68 69 74 65 7d 0a | 40 64 20 62 6f 63 3d 36 |$white}.|@d boc=6|
|00005690| 37 20 7b 62 65 67 69 6e | 6e 69 6e 67 20 6f 66 20 |7 {begin|ning of |
|000056a0| 61 20 63 68 61 72 61 63 | 74 65 72 7d 0a 40 64 20 |a charac|ter}.@d |
|000056b0| 62 6f 63 31 3d 36 38 20 | 7b 61 62 62 72 65 76 69 |boc1=68 |{abbrevi|
|000056c0| 61 74 65 64 20 7c 62 6f | 63 7c 7d 0a 40 64 20 65 |ated |bo|c|}.@d e|
|000056d0| 6f 63 3d 36 39 20 7b 65 | 6e 64 20 6f 66 20 61 20 |oc=69 {e|nd of a |
|000056e0| 63 68 61 72 61 63 74 65 | 72 7d 0a 40 64 20 73 6b |characte|r}.@d sk|
|000056f0| 69 70 30 3d 37 30 20 7b | 73 6b 69 70 20 6e 6f 20 |ip0=70 {|skip no |
|00005700| 62 6c 61 6e 6b 20 72 6f | 77 73 7d 0a 40 64 20 73 |blank ro|ws}.@d s|
|00005710| 6b 69 70 31 3d 37 31 20 | 7b 73 6b 69 70 20 6f 76 |kip1=71 |{skip ov|
|00005720| 65 72 20 62 6c 61 6e 6b | 20 72 6f 77 73 7d 0a 40 |er blank| rows}.@|
|00005730| 64 20 6e 65 77 5f 72 6f | 77 5f 30 3d 37 34 20 7b |d new_ro|w_0=74 {|
|00005740| 6d 6f 76 65 20 64 6f 77 | 6e 20 6f 6e 65 20 72 6f |move dow|n one ro|
|00005750| 77 20 61 6e 64 20 74 68 | 65 6e 20 72 69 67 68 74 |w and th|en right|
|00005760| 7d 0a 40 64 20 6d 61 78 | 5f 6e 65 77 5f 72 6f 77 |}.@d max|_new_row|
|00005770| 3d 32 33 38 20 7b 6d 6f | 76 65 20 64 6f 77 6e 20 |=238 {mo|ve down |
|00005780| 6f 6e 65 20 72 6f 77 20 | 61 6e 64 20 74 68 65 6e |one row |and then|
|00005790| 20 72 69 67 68 74 7d 0a | 40 64 20 78 78 78 31 3d | right}.|@d xxx1=|
|000057a0| 32 33 39 20 7b 66 6f 72 | 20 5c 26 7b 73 70 65 63 |239 {for| \&{spec|
|000057b0| 69 61 6c 7d 20 73 74 72 | 69 6e 67 73 7d 0a 40 64 |ial} str|ings}.@d|
|000057c0| 20 79 79 79 3d 32 34 33 | 20 7b 66 6f 72 20 5c 26 | yyy=243| {for \&|
|000057d0| 7b 6e 75 6d 73 70 65 63 | 69 61 6c 7d 20 6e 75 6d |{numspec|ial} num|
|000057e0| 62 65 72 73 7d 0a 40 64 | 20 6e 6f 5f 6f 70 3d 32 |bers}.@d| no_op=2|
|000057f0| 34 34 20 7b 6e 6f 20 6f | 70 65 72 61 74 69 6f 6e |44 {no o|peration|
|00005800| 7d 0a 40 64 20 63 68 61 | 72 5f 6c 6f 63 3d 32 34 |}.@d cha|r_loc=24|
|00005810| 35 20 7b 63 68 61 72 61 | 63 74 65 72 20 6c 6f 63 |5 {chara|cter loc|
|00005820| 61 74 6f 72 73 20 69 6e | 20 74 68 65 20 70 6f 73 |ators in| the pos|
|00005830| 74 61 6d 62 6c 65 7d 0a | 40 64 20 63 68 61 72 5f |tamble}.|@d char_|
|00005840| 6c 6f 63 30 3d 32 34 36 | 20 7b 63 68 61 72 61 63 |loc0=246| {charac|
|00005850| 74 65 72 20 6c 6f 63 61 | 74 6f 72 73 20 69 6e 20 |ter loca|tors in |
|00005860| 74 68 65 20 70 6f 73 74 | 61 6d 62 6c 65 7d 0a 40 |the post|amble}.@|
|00005870| 64 20 70 72 65 3d 32 34 | 37 20 7b 70 72 65 61 6d |d pre=24|7 {pream|
|00005880| 62 6c 65 7d 0a 40 64 20 | 70 6f 73 74 3d 32 34 38 |ble}.@d |post=248|
|00005890| 20 7b 70 6f 73 74 61 6d | 62 6c 65 20 62 65 67 69 | {postam|ble begi|
|000058a0| 6e 6e 69 6e 67 7d 0a 40 | 64 20 70 6f 73 74 5f 70 |nning}.@|d post_p|
|000058b0| 6f 73 74 3d 32 34 39 20 | 7b 70 6f 73 74 61 6d 62 |ost=249 |{postamb|
|000058c0| 6c 65 20 65 6e 64 69 6e | 67 7d 0a 40 64 20 75 6e |le endin|g}.@d un|
|000058d0| 64 65 66 69 6e 65 64 5f | 63 6f 6d 6d 61 6e 64 73 |defined_|commands|
|000058e0| 3d 3d 32 35 30 2c 32 35 | 31 2c 32 35 32 2c 32 35 |==250,25|1,252,25|
|000058f0| 33 2c 32 35 34 2c 32 35 | 35 0a 0a 40 20 54 68 65 |3,254,25|5..@ The|
|00005900| 20 6c 61 73 74 20 63 68 | 61 72 61 63 74 65 72 20 | last ch|aracter |
|00005910| 69 6e 20 61 20 5c 2e 7b | 47 46 7d 20 66 69 6c 65 |in a \.{|GF} file|
|00005920| 20 69 73 20 66 6f 6c 6c | 6f 77 65 64 20 62 79 20 | is foll|owed by |
|00005930| 60 7c 70 6f 73 74 7c 27 | 3b 20 74 68 69 73 20 63 |`|post|'|; this c|
|00005940| 6f 6d 6d 61 6e 64 0a 69 | 6e 74 72 6f 64 75 63 65 |ommand.i|ntroduce|
|00005950| 73 20 74 68 65 20 70 6f | 73 74 61 6d 62 6c 65 2c |s the po|stamble,|
|00005960| 20 77 68 69 63 68 20 73 | 75 6d 6d 61 72 69 7a 65 | which s|ummarize|
|00005970| 73 20 69 6d 70 6f 72 74 | 61 6e 74 20 66 61 63 74 |s import|ant fact|
|00005980| 73 20 74 68 61 74 20 5c | 4d 46 5c 20 68 61 73 0a |s that \|MF\ has.|
|00005990| 61 63 63 75 6d 75 6c 61 | 74 65 64 2e 20 54 68 65 |accumula|ted. The|
|000059a0| 20 70 6f 73 74 61 6d 62 | 6c 65 20 68 61 73 20 74 | postamb|le has t|
|000059b0| 68 65 20 66 6f 72 6d 0a | 24 24 5c 76 62 6f 78 7b |he form.|$$\vbox{|
|000059c0| 5c 68 61 6c 69 67 6e 7b | 5c 68 62 6f 78 7b 23 5c |\halign{|\hbox{#\|
|000059d0| 68 66 69 6c 7d 5c 63 72 | 0a 20 20 7c 70 6f 73 74 |hfil}\cr|. |post|
|000059e0| 7c 20 7c 70 5b 34 5d 7c | 20 7c 40 21 64 73 5b 34 || |p[4]|| |@!ds[4|
|000059f0| 5d 7c 20 7c 40 21 63 73 | 5b 34 5d 7c 20 7c 40 21 |]| |@!cs|[4]| |@!|
|00005a00| 68 70 70 70 5b 34 5d 7c | 20 7c 40 21 76 70 70 70 |hppp[4]|| |@!vppp|
|00005a10| 5b 34 5d 7c 0a 20 20 20 | 7c 40 21 6d 69 6e 5f 6d |[4]|. ||@!min_m|
|00005a20| 5b 34 5d 7c 20 7c 40 21 | 6d 61 78 5f 6d 5b 34 5d |[4]| |@!|max_m[4]|
|00005a30| 7c 20 7c 40 21 6d 69 6e | 5f 6e 5b 34 5d 7c 20 7c || |@!min|_n[4]| ||
|00005a40| 40 21 6d 61 78 5f 6e 5b | 34 5d 7c 5c 63 72 0a 20 |@!max_n[|4]|\cr. |
|00005a50| 20 24 5c 6c 61 6e 67 6c | 65 5c 2c 24 63 68 61 72 | $\langl|e\,$char|
|00005a60| 61 63 74 65 72 20 6c 6f | 63 61 74 6f 72 73 24 5c |acter lo|cators$\|
|00005a70| 2c 5c 72 61 6e 67 6c 65 | 24 5c 63 72 0a 20 20 7c |,\rangle|$\cr. ||
|00005a80| 70 6f 73 74 5f 70 6f 73 | 74 7c 20 7c 71 5b 34 5d |post_pos|t| |q[4]|
|00005a90| 7c 20 7c 69 5b 31 5d 7c | 20 32 32 33 27 73 24 5b || |i[1]|| 223's$[|
|00005aa0| 7b 5c 47 7d 34 5d 24 5c | 63 72 7d 7d 24 24 0a 48 |{\G}4]$\|cr}}$$.H|
|00005ab0| 65 72 65 20 7c 70 7c 20 | 69 73 20 61 20 70 6f 69 |ere |p| |is a poi|
|00005ac0| 6e 74 65 72 20 74 6f 20 | 74 68 65 20 62 79 74 65 |nter to |the byte|
|00005ad0| 20 66 6f 6c 6c 6f 77 69 | 6e 67 20 74 68 65 20 66 | followi|ng the f|
|00005ae0| 69 6e 61 6c 20 7c 65 6f | 63 7c 20 69 6e 20 74 68 |inal |eo|c| in th|
|00005af0| 65 20 66 69 6c 65 0a 28 | 6f 72 20 74 6f 20 74 68 |e file.(|or to th|
|00005b00| 65 20 62 79 74 65 20 66 | 6f 6c 6c 6f 77 69 6e 67 |e byte f|ollowing|
|00005b10| 20 74 68 65 20 70 72 65 | 61 6d 62 6c 65 2c 20 69 | the pre|amble, i|
|00005b20| 66 20 74 68 65 72 65 20 | 61 72 65 20 6e 6f 20 63 |f there |are no c|
|00005b30| 68 61 72 61 63 74 65 72 | 73 29 3b 0a 69 74 20 63 |haracter|s);.it c|
|00005b40| 61 6e 20 62 65 20 75 73 | 65 64 20 74 6f 20 6c 6f |an be us|ed to lo|
|00005b50| 63 61 74 65 20 74 68 65 | 20 62 65 67 69 6e 6e 69 |cate the| beginni|
|00005b60| 6e 67 20 6f 66 20 5c 5c | 7b 78 78 78 7d 20 63 6f |ng of \\|{xxx} co|
|00005b70| 6d 6d 61 6e 64 73 0a 74 | 68 61 74 20 6d 69 67 68 |mmands.t|hat migh|
|00005b80| 74 20 68 61 76 65 20 70 | 72 65 63 65 64 65 64 20 |t have p|receded |
|00005b90| 74 68 65 20 70 6f 73 74 | 61 6d 62 6c 65 2e 20 54 |the post|amble. T|
|00005ba0| 68 65 20 7c 64 73 7c 20 | 61 6e 64 20 7c 63 73 7c |he |ds| |and |cs||
|00005bb0| 20 70 61 72 61 6d 65 74 | 65 72 73 0a 40 5e 64 65 | paramet|ers.@^de|
|00005bc0| 73 69 67 6e 20 73 69 7a | 65 40 3e 20 40 5e 63 68 |sign siz|e@> @^ch|
|00005bd0| 65 63 6b 20 73 75 6d 40 | 3e 0a 67 69 76 65 20 74 |eck sum@|>.give t|
|00005be0| 68 65 20 64 65 73 69 67 | 6e 20 73 69 7a 65 20 61 |he desig|n size a|
|00005bf0| 6e 64 20 63 68 65 63 6b | 20 73 75 6d 2c 20 72 65 |nd check| sum, re|
|00005c00| 73 70 65 63 74 69 76 65 | 6c 79 2c 20 77 68 69 63 |spective|ly, whic|
|00005c10| 68 20 61 72 65 20 65 78 | 61 63 74 6c 79 20 74 68 |h are ex|actly th|
|00005c20| 65 0a 76 61 6c 75 65 73 | 20 70 75 74 20 69 6e 74 |e.values| put int|
|00005c30| 6f 20 74 68 65 20 68 65 | 61 64 65 72 20 6f 66 20 |o the he|ader of |
|00005c40| 61 6e 79 20 5c 2e 7b 54 | 46 4d 7d 20 66 69 6c 65 |any \.{T|FM} file|
|00005c50| 20 74 68 61 74 20 73 68 | 61 72 65 73 20 69 6e 66 | that sh|ares inf|
|00005c60| 6f 72 6d 61 74 69 6f 6e | 20 77 69 74 68 0a 74 68 |ormation| with.th|
|00005c70| 69 73 20 5c 2e 7b 47 46 | 7d 20 66 69 6c 65 2e 20 |is \.{GF|} file. |
|00005c80| 50 61 72 61 6d 65 74 65 | 72 73 20 7c 68 70 70 70 |Paramete|rs |hppp|
|00005c90| 7c 20 61 6e 64 20 7c 76 | 70 70 70 7c 20 61 72 65 || and |v|ppp| are|
|00005ca0| 20 74 68 65 20 72 61 74 | 69 6f 73 20 6f 66 0a 70 | the rat|ios of.p|
|00005cb0| 69 78 65 6c 73 20 70 65 | 72 20 70 6f 69 6e 74 2c |ixels pe|r point,|
|00005cc0| 20 68 6f 72 69 7a 6f 6e | 74 61 6c 6c 79 20 61 6e | horizon|tally an|
|00005cd0| 64 20 76 65 72 74 69 63 | 61 6c 6c 79 2c 20 65 78 |d vertic|ally, ex|
|00005ce0| 70 72 65 73 73 65 64 20 | 61 73 20 7c 73 63 61 6c |pressed |as |scal|
|00005cf0| 65 64 7c 20 69 6e 74 65 | 67 65 72 73 0a 28 69 2e |ed| inte|gers.(i.|
|00005d00| 65 2e 2c 20 6d 75 6c 74 | 69 70 6c 69 65 64 20 62 |e., mult|iplied b|
|00005d10| 79 20 24 32 5e 7b 31 36 | 7d 24 29 3b 20 74 68 65 |y $2^{16|}$); the|
|00005d20| 79 20 63 61 6e 20 62 65 | 20 75 73 65 64 20 74 6f |y can be| used to|
|00005d30| 20 63 6f 72 72 65 6c 61 | 74 65 20 74 68 65 20 66 | correla|te the f|
|00005d40| 6f 6e 74 0a 77 69 74 68 | 20 73 70 65 63 69 66 69 |ont.with| specifi|
|00005d50| 63 20 64 65 76 69 63 65 | 20 72 65 73 6f 6c 75 74 |c device| resolut|
|00005d60| 69 6f 6e 73 2c 20 6d 61 | 67 6e 69 66 69 63 61 74 |ions, ma|gnificat|
|00005d70| 69 6f 6e 73 2c 20 61 6e | 64 20 60 60 61 74 20 73 |ions, an|d ``at s|
|00005d80| 69 7a 65 73 2e 27 27 20 | 20 54 68 65 6e 0a 63 6f |izes.'' | Then.co|
|00005d90| 6d 65 20 7c 6d 69 6e 5f | 6d 7c 2c 20 7c 6d 61 78 |me |min_|m|, |max|
|00005da0| 5f 6d 7c 2c 20 7c 6d 69 | 6e 5f 6e 7c 2c 20 61 6e |_m|, |mi|n_n|, an|
|00005db0| 64 20 7c 6d 61 78 5f 6e | 7c 2c 20 77 68 69 63 68 |d |max_n||, which|
|00005dc0| 20 62 6f 75 6e 64 20 74 | 68 65 20 76 61 6c 75 65 | bound t|he value|
|00005dd0| 73 20 74 68 61 74 0a 72 | 65 67 69 73 74 65 72 73 |s that.r|egisters|
|00005de0| 20 7c 6d 7c 20 61 6e 64 | 7e 7c 6e 7c 20 61 73 73 | |m| and|~|n| ass|
|00005df0| 75 6d 65 20 69 6e 20 61 | 6c 6c 20 63 68 61 72 61 |ume in a|ll chara|
|00005e00| 63 74 65 72 73 20 69 6e | 20 74 68 69 73 20 5c 2e |cters in| this \.|
|00005e10| 7b 47 46 7d 20 66 69 6c | 65 2e 0a 28 54 68 65 73 |{GF} fil|e..(Thes|
|00005e20| 65 20 62 6f 75 6e 64 73 | 20 6e 65 65 64 20 6e 6f |e bounds| need no|
|00005e30| 74 20 62 65 20 74 68 65 | 20 62 65 73 74 20 70 6f |t be the| best po|
|00005e40| 73 73 69 62 6c 65 3b 20 | 7c 6d 61 78 5f 6d 7c 20 |ssible; ||max_m| |
|00005e50| 61 6e 64 20 7c 6d 69 6e | 5f 6e 7c 20 6d 61 79 2c |and |min|_n| may,|
|00005e60| 20 6f 6e 20 74 68 65 0a | 6f 74 68 65 72 20 68 61 | on the.|other ha|
|00005e70| 6e 64 2c 20 62 65 20 74 | 69 67 68 74 65 72 20 74 |nd, be t|ighter t|
|00005e80| 68 61 6e 20 74 68 65 20 | 73 69 6d 69 6c 61 72 20 |han the |similar |
|00005e90| 62 6f 75 6e 64 73 20 69 | 6e 20 7c 62 6f 63 7c 20 |bounds i|n |boc| |
|00005ea0| 63 6f 6d 6d 61 6e 64 73 | 2e 20 46 6f 72 0a 65 78 |commands|. For.ex|
|00005eb0| 61 6d 70 6c 65 2c 20 73 | 6f 6d 65 20 63 68 61 72 |ample, s|ome char|
|00005ec0| 61 63 74 65 72 20 6d 61 | 79 20 68 61 76 65 20 7c |acter ma|y have ||
|00005ed0| 6d 69 6e 5f 6e 3d 2d 31 | 30 30 7c 20 69 6e 20 69 |min_n=-1|00| in i|
|00005ee0| 74 73 20 7c 62 6f 63 7c | 2c 20 62 75 74 20 69 74 |ts |boc||, but it|
|00005ef0| 20 6d 69 67 68 74 0a 74 | 75 72 6e 20 6f 75 74 20 | might.t|urn out |
|00005f00| 74 68 61 74 20 7c 6e 7c | 20 6e 65 76 65 72 20 67 |that |n|| never g|
|00005f10| 65 74 73 20 6c 6f 77 65 | 72 20 74 68 61 6e 20 7c |ets lowe|r than ||
|00005f20| 2d 35 30 7c 20 69 6e 20 | 61 6e 79 20 63 68 61 72 |-50| in |any char|
|00005f30| 61 63 74 65 72 3b 20 74 | 68 65 6e 0a 7c 6d 69 6e |acter; t|hen.|min|
|00005f40| 5f 6e 7c 20 63 61 6e 20 | 68 61 76 65 20 61 6e 79 |_n| can |have any|
|00005f50| 20 76 61 6c 75 65 20 7c | 3c 3d 2d 35 30 7c 2e 20 | value ||<=-50|. |
|00005f60| 49 66 20 74 68 65 72 65 | 20 61 72 65 20 6e 6f 20 |If there| are no |
|00005f70| 63 68 61 72 61 63 74 65 | 72 73 20 69 6e 20 74 68 |characte|rs in th|
|00005f80| 65 20 66 69 6c 65 2c 0a | 69 74 27 73 20 70 6f 73 |e file,.|it's pos|
|00005f90| 73 69 62 6c 65 20 74 6f | 20 68 61 76 65 20 7c 6d |sible to| have |m|
|00005fa0| 69 6e 5f 6d 3e 6d 61 78 | 5f 6d 7c 20 61 6e 64 2f |in_m>max|_m| and/|
|00005fb0| 6f 72 20 7c 6d 69 6e 5f | 6e 3e 6d 61 78 5f 6e 7c |or |min_|n>max_n||
|00005fc0| 2e 29 0a 0a 40 20 43 68 | 61 72 61 63 74 65 72 20 |.)..@ Ch|aracter |
|00005fd0| 6c 6f 63 61 74 6f 72 73 | 20 61 72 65 20 69 6e 74 |locators| are int|
|00005fe0| 72 6f 64 75 63 65 64 20 | 62 79 20 7c 63 68 61 72 |roduced |by |char|
|00005ff0| 5f 6c 6f 63 7c 20 63 6f | 6d 6d 61 6e 64 73 2c 0a |_loc| co|mmands,.|
|00006000| 77 68 69 63 68 20 73 70 | 65 63 69 66 79 20 61 20 |which sp|ecify a |
|00006010| 63 68 61 72 61 63 74 65 | 72 20 72 65 73 69 64 75 |characte|r residu|
|00006020| 65 7e 7c 63 7c 2c 20 63 | 68 61 72 61 63 74 65 72 |e~|c|, c|haracter|
|00006030| 20 65 73 63 61 70 65 6d | 65 6e 74 73 20 28 7c 64 | escapem|ents (|d|
|00006040| 78 2c 64 79 7c 29 2c 0a | 61 20 63 68 61 72 61 63 |x,dy|),.|a charac|
|00006050| 74 65 72 20 77 69 64 74 | 68 7e 7c 77 7c 2c 20 61 |ter widt|h~|w|, a|
|00006060| 6e 64 20 61 20 70 6f 69 | 6e 74 65 72 7e 7c 70 7c |nd a poi|nter~|p||
|00006070| 0a 74 6f 20 74 68 65 20 | 62 65 67 69 6e 6e 69 6e |.to the |beginnin|
|00006080| 67 20 6f 66 20 74 68 61 | 74 20 63 68 61 72 61 63 |g of tha|t charac|
|00006090| 74 65 72 2e 20 28 49 66 | 20 74 77 6f 20 6f 72 20 |ter. (If| two or |
|000060a0| 6d 6f 72 65 20 63 68 61 | 72 61 63 74 65 72 73 20 |more cha|racters |
|000060b0| 68 61 76 65 20 74 68 65 | 0a 73 61 6d 65 20 63 6f |have the|.same co|
|000060c0| 64 65 7e 7c 63 7c 20 6d | 6f 64 75 6c 6f 20 32 35 |de~|c| m|odulo 25|
|000060d0| 36 2c 20 6f 6e 6c 79 20 | 74 68 65 20 6c 61 73 74 |6, only |the last|
|000060e0| 20 77 69 6c 6c 20 62 65 | 20 69 6e 64 69 63 61 74 | will be| indicat|
|000060f0| 65 64 3b 20 74 68 65 20 | 6f 74 68 65 72 73 20 63 |ed; the |others c|
|00006100| 61 6e 20 62 65 0a 6c 6f | 63 61 74 65 64 20 62 79 |an be.lo|cated by|
|00006110| 20 66 6f 6c 6c 6f 77 69 | 6e 67 20 62 61 63 6b 70 | followi|ng backp|
|00006120| 6f 69 6e 74 65 72 73 2e | 20 43 68 61 72 61 63 74 |ointers.| Charact|
|00006130| 65 72 73 20 77 68 6f 73 | 65 20 63 6f 64 65 73 20 |ers whos|e codes |
|00006140| 64 69 66 66 65 72 20 62 | 79 20 61 0a 6d 75 6c 74 |differ b|y a.mult|
|00006150| 69 70 6c 65 20 6f 66 20 | 32 35 36 20 61 72 65 20 |iple of |256 are |
|00006160| 61 73 73 75 6d 65 64 20 | 74 6f 20 73 68 61 72 65 |assumed |to share|
|00006170| 20 74 68 65 20 73 61 6d | 65 20 66 6f 6e 74 20 6d | the sam|e font m|
|00006180| 65 74 72 69 63 20 69 6e | 66 6f 72 6d 61 74 69 6f |etric in|formatio|
|00006190| 6e 2c 0a 68 65 6e 63 65 | 20 74 68 65 20 5c 2e 7b |n,.hence| the \.{|
|000061a0| 54 46 4d 7d 20 66 69 6c | 65 20 63 6f 6e 74 61 69 |TFM} fil|e contai|
|000061b0| 6e 73 20 6f 6e 6c 79 20 | 72 65 73 69 64 75 65 73 |ns only |residues|
|000061c0| 20 6f 66 20 63 68 61 72 | 61 63 74 65 72 20 63 6f | of char|acter co|
|000061d0| 64 65 73 20 6d 6f 64 75 | 6c 6f 7e 32 35 36 2e 0a |des modu|lo~256..|
|000061e0| 54 68 69 73 20 63 6f 6e | 76 65 6e 74 69 6f 6e 20 |This con|vention |
|000061f0| 69 73 20 69 6e 74 65 6e | 64 65 64 20 66 6f 72 20 |is inten|ded for |
|00006200| 6f 72 69 65 6e 74 61 6c | 20 6c 61 6e 67 75 61 67 |oriental| languag|
|00006210| 65 73 2c 20 77 68 65 6e | 20 74 68 65 72 65 20 61 |es, when| there a|
|00006220| 72 65 20 6d 61 6e 79 0a | 63 68 61 72 61 63 74 65 |re many.|characte|
|00006230| 72 20 73 68 61 70 65 73 | 20 62 75 74 20 66 65 77 |r shapes| but few|
|00006240| 20 64 69 73 74 69 6e 63 | 74 20 77 69 64 74 68 73 | distinc|t widths|
|00006250| 2e 29 0a 40 5e 6f 72 69 | 65 6e 74 61 6c 20 63 68 |.).@^ori|ental ch|
|00006260| 61 72 61 63 74 65 72 73 | 40 3e 40 5e 43 68 69 6e |aracters|@>@^Chin|
|00006270| 65 73 65 20 63 68 61 72 | 61 63 74 65 72 73 40 3e |ese char|acters@>|
|00006280| 40 5e 4a 61 70 61 6e 65 | 73 65 20 63 68 61 72 61 |@^Japane|se chara|
|00006290| 63 74 65 72 73 40 3e 0a | 0a 54 68 65 20 63 68 61 |cters@>.|.The cha|
|000062a0| 72 61 63 74 65 72 20 65 | 73 63 61 70 65 6d 65 6e |racter e|scapemen|
|000062b0| 74 73 20 28 7c 64 78 2c | 64 79 7c 29 20 61 72 65 |ts (|dx,|dy|) are|
|000062c0| 20 74 68 65 20 76 61 6c | 75 65 73 20 6f 66 20 5c | the val|ues of \|
|000062d0| 4d 46 27 73 20 5c 26 7b | 63 68 61 72 64 78 7d 0a |MF's \&{|chardx}.|
|000062e0| 61 6e 64 20 5c 26 7b 63 | 68 61 72 64 79 7d 20 70 |and \&{c|hardy} p|
|000062f0| 61 72 61 6d 65 74 65 72 | 73 3b 20 74 68 65 79 20 |arameter|s; they |
|00006300| 61 72 65 20 69 6e 20 75 | 6e 69 74 73 20 6f 66 20 |are in u|nits of |
|00006310| 7c 73 63 61 6c 65 64 7c | 20 70 69 78 65 6c 73 3b ||scaled|| pixels;|
|00006320| 0a 69 2e 65 2e 2c 20 7c | 64 78 7c 20 69 73 20 69 |.i.e., ||dx| is i|
|00006330| 6e 20 68 6f 72 69 7a 6f | 6e 74 61 6c 20 70 69 78 |n horizo|ntal pix|
|00006340| 65 6c 20 75 6e 69 74 73 | 20 74 69 6d 65 73 20 24 |el units| times $|
|00006350| 32 5e 7b 31 36 7d 24 2c | 20 61 6e 64 20 7c 64 79 |2^{16}$,| and |dy|
|00006360| 7c 20 69 73 20 69 6e 0a | 76 65 72 74 69 63 61 6c || is in.|vertical|
|00006370| 20 70 69 78 65 6c 20 75 | 6e 69 74 73 20 74 69 6d | pixel u|nits tim|
|00006380| 65 73 20 24 32 5e 7b 31 | 36 7d 24 2e 20 20 54 68 |es $2^{1|6}$. Th|
|00006390| 69 73 20 69 73 20 74 68 | 65 20 69 6e 74 65 6e 64 |is is th|e intend|
|000063a0| 65 64 20 61 6d 6f 75 6e | 74 20 6f 66 0a 64 69 73 |ed amoun|t of.dis|
|000063b0| 70 6c 61 63 65 6d 65 6e | 74 20 61 66 74 65 72 20 |placemen|t after |
|000063c0| 74 79 70 65 73 65 74 74 | 69 6e 67 20 74 68 65 20 |typesett|ing the |
|000063d0| 63 68 61 72 61 63 74 65 | 72 3b 20 66 6f 72 20 5c |characte|r; for \|
|000063e0| 2e 7b 44 56 49 7d 20 66 | 69 6c 65 73 2c 20 7c 64 |.{DVI} f|iles, |d|
|000063f0| 79 7c 0a 73 68 6f 75 6c | 64 20 62 65 20 7a 65 72 |y|.shoul|d be zer|
+--------+-------------------------+-------------------------+--------+--------+
Only 25.0 KB of data is shown above.