paul@frcs.UUCP (Paul Nash) (09/20/90)
A while back I wrote: >says that as the fonts are for a Mac, they cannot be downloaded >from an IBM PClone. Robert Elliott replied: >Macs: all data is stored in POST resources of one file (in the System >Folder usually), and the eexec portion of the font is stored as full >8bit characters rather than hex. The Mac OS converts all this to an >ASCII file on the fly when it sends it to the printer. I have managed to copy the resource fork off from MAC to PC-DOS format, and am about to knock up some code to pull the resources into a suitable PostScript file. This would be (sort of) a DOS version of unAdobe. If anyone would like a copy (assuming that it all works!), send me mail and I will mail you, or, if there is enough interest, post to the net. >There is a Mac program called unAdobe which will convert the Mac >format into a standard ASCII file, which you could then send from >any computer (UNIX, PCs, etc.) If anyone has source for this (or hints for writing one from scratch) I would be grateful for it, to use as a starting point for a PC version. A MAC executable would _still_ be useful, if anyone has one floating around. -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Paul Nash Flagship Wide Area Networks (Pty) Ltd paul@frcs.UUCP ...!ddsw1!proxima!frcs!paul
verket@venice.SEDD.TRW.COM (Paul Verket) (09/24/90)
From article <76@frcs.UUCP>, by paul@frcs.UUCP (Paul Nash): > If anyone has source for this (or hints for writing one from > scratch) I would be grateful for it, to use as a starting point > for a PC version. Check out the file mac-font2next on nova.cc.purdue.edu. It has (from a very brief inspection) the source to read macbinary files and produce ascii output. It doesn't appear to be too NeXT specific. Paul Verket
mark@orcas.ucsb.edu (Probert's Guest) (09/26/90)
The mac version of unadobe can be FTP'd from the SUMEX archive. Below is a program I have not tested but you might find useful. Unfortunately I don't remember where I got this. Mark Probert probert@aviary.gm.hac.com Here is a program that "`unpacks` IBM PC-format Adobe PostScript fonts into a downloadable form" on UNIX systems. Input is *___.PFB files from Adobe distribution diskettes; output is fonts that are ready to be downloaded. Usage: unfont [ -v ] [ files ] -v Prints execution information on the standard error. Example usage (unpacks IBM PC version of Adobe's Palatino Roman): unfont POR_____.PFB > PalatinoR.down -- Jim Ingram uunet!h-three!jimi | jimi%h-three@uunet.uu.net h-three Systems Corporation P.O. Box 12557 RTP NC 27709 919 549 8334 __________________________________CUT_HERE______________________________________ /* * NOTICE * * Copyright 1988, 1989 by h-three Systems Corporation. * * Permission is hereby granted for this software's free reproduction * and modification for non-commercial purposes, provided that this * notice is retained. Commercial enterprises may give away copies * as part of their products provided that they do so without charge, * that they retain this notice, and that they acknowledge the source * of the software. * * PostScript is a registered trademark of Adobe Systems Incorporated. * IBM is a registered trademark of International Business Machines * Corporation. * * h-three Systems Corporation * 100 Park Drive Suite 204/ P.O. Box 12557 * Research Triangle Park, NC 27709 */ #ifdef NOWHAT static char *sccsid = "%W% - %E%"; #endif /* * unfont.c * * usage: unfont [ -v ] [ files ] * -v Prints execution information on the standard error. * * Unpacks IBM PC-format PostScript fonts into a downloadable form. * */ char *USAGE = "\ usage: unfont [ -? ] [ -v ] [files ]\n\ -? Prints this message.\n\ -v Prints execution information on the standard error.\n\ "; #include <stdio.h> #include <fcntl.h> #include <ctype.h> #include <varargs.h> #define OK 0 #define FAILURE (-1) #define Failed(x) ((x) == FAILURE) #define TRUE 1 #define FALSE 0 typedef char bool; #define STREQ(a,b) (strcmp(a,b) == 0) FILE *fp; /* * used to convert nibbles (n0 is least sig) to ascii-hex */ #define N0(c) hexbyt[((c) & 0x000f)] #define N1(c) N0((c) >> 4) char hexbyt[] = "0123456789ABCDEF"; /* * vars controlled by command line options */ bool verbose = FALSE; /* be verbose */ extern char *optarg; /* getopt(3) control vars */ extern int optind; extern int errno; char *infile; char *progname; /* for error() */ char *strchr(), *strrchr(); long stol(), getparm(); int mygetc(); void dounfont(); long getcount(); void bintohex(); main(argc, argv) int argc; char **argv; { register int c; bool showusage = FALSE; /* usage error? */ /* * figure out invocation leaf-name */ if ((progname = strrchr(argv[0], '/')) == (char *) NULL) progname = argv[0]; else progname++; argv[0] = progname; /* for getopt err reporting */ /* * Check options and arguments. */ progname = argv[0]; while ((c = getopt(argc, argv, "v")) != EOF) switch (c) { case 'v': /* toggle verbose */ verbose = ! verbose; break; case '?': showusage = TRUE; } if (showusage) { (void) fprintf(stderr, "%s", USAGE); exit(1); } /* unfont stuff */ if (argv[optind]) { for ( ; argv[optind]; optind++) { if (!(fp = fopen(argv[optind], "r"))) { error(0, "can't open input file '%s'", argv[optind]); continue; } infile = argv[optind]; dounfont(); close(fp); } } else { infile = "<stdin>"; fp = stdin; dounfont(); } exit(0); } long getcount(); void dounfont() { register int c; register int ch; long count; register int i; for (;;) { if ((c = mygetc()) != 0x80) { error(0, "not a proper font data segment '%s'", infile); error(0, "foobar char is 0x%x", c); exit(1); } c = mygetc(); switch (c) { case 1: /* get count, output count bytes to stdout */ count = getcount(); if (verbose) fprintf(stderr, "case1 count is %ld\n", count); for (i=0; i<count; i++) putchar(mygetc()); break; case 2: /* get count, convert count bytes to hex, output */ /* to stdout */ count = getcount(); if (verbose) fprintf(stderr, "case2 count is %ld\n", count); bintohex(count); break; case 3: /* reached EOF; next file, please */ if (verbose) fprintf(stderr, "logical eof encountered\n"); return; default: error(0, "not a valid segment type '%s'", infile); return; } } } /* * getc for error-checking */ int mygetc() { int ch; if ((ch = getc(fp)) == -1) { error(-1, "unexpected eof on input in '%s'", infile); exit(1); } return(ch); } /* * get count of bytes from segment header */ long getcount() { int i; long count = 0; for (i=0; i<4; i++) count += ((long) mygetc()) << (i * 8); return(count); } /* * convert binary to ASCII hex and write it to stdout */ void bintohex(count) long count; { int ch; long i; for (i=0; i<count; i++) { if ((i % 30) == 0) putchar('\n'); ch = mygetc(); putchar(N1(ch)); putchar(N0(ch)); } } /* end of unfont stuff /* * error(errn, arglist) * report an error to stderr using printf(3) conventions. * Any output is preceded by '<progname>: ' * If 'errn' is non-zero, it is assumed to be an 'errno' and its * associated error message is appended to the output. */ /*VARARGS*/ error(errn, va_alist) int errn; va_dcl { va_list arglist; register char *format; extern char *sys_errlist[]; extern int sys_nerr; extern int errno; if (errn == -1) /* use errno if -1 */ errn = errno; va_start(arglist); format = va_arg(arglist, char *); (void) fprintf(stderr, "%s: ", progname); (void) vfprintf(stderr, format, arglist); va_end(arglist); if (errn) if ((errn > 0) && (errn <= sys_nerr)) (void) fprintf(stderr, " (%s)\n", sys_errlist[errn]); else (void) fprintf(stderr, " (unknown errno=%d)\n", errn); else (void) fprintf(stderr, "\n"); } ------------------------------ End of File ----------------------------
paul@frcs.UUCP (Paul Nash) (09/26/90)
A while back (like last week) I wrote: >A while back I wrote: >>There is a Mac program called unAdobe which will convert the Mac >>format into a standard ASCII file, which you could then send from >>any computer (UNIX, PCs, etc.) >Now I have but one problem -- I need to get hold of a copy of unAdobe >and a Mac. I have had many (well, at least one :-)) requests for unAdobe if I managed to get hold of it. Well, I did! The thanks goes to Robert Elliott (yet again!) for sending me a copy, which arrived as I sent the request :-). I have tried to mail it to everyone who asked for a copy, but just in case I missed someone, here goes: From: Robert C Elliott <olsa99!ddsw1!uunet!uiucuxc!uiucuxa!rce10845> (This file must be converted with BinHex 4.0) :$R9Z3@4[BQ8J+'C[ER3T!%&38%a+5e4&)3!!!!!!!!!GlQb9!!!!!!%!!!!G5!! !(%J!!!#Q!!!!!$X$p`"3"%%%"N0KEQ0PE!!!!!!!(33Q!#d&")J(G@j"C'pLC3) !!!""8&"-5NY845!!!!!!!!!!!!!&@`!!39"36%T,9%8J!!!!!!!!!!!!!!!!!!! !!!!!!!!!!!#H8bp"!!!!!!!!(Hil"0!!633'5'PNC'9Z!!!!!!#M!3!!Y3&3"!C $B@jMC@`!!!!!!#F!k!!l!9Z!!!!!!!!!4!%!!&B"8!3&4@TPBh3!!!!!!!"G!3! !E`&3"!9%FQPfC3!!!!!!!#F!$!#j!1B!!!!!!!!!*`$P!,N!pJ!!!!!!!!"m!2` !I3&8J!!!!!!CD!!)!!&19[rS6R&1F5"Z!!`3%'!!!64J!!&1)#i!#&@!,8$rl&9 22bhm3NKZrq`J,J!-9)![!%kk%PSlAra'B!!"*N*Yr9BJ,J!-9)!Y3!!-)#i!#&@ !,8!!#&P2,bi!#(!#,`"1ZJbB6VS9GLeIrqJ[,[rS6VS@[LmZrqK1ZKC#,bi!$#" ZrqJ[%#mZ!!K1ZJJk,bi!#(!#,`"1ZJaL,9m!##"ZrqJY8!!-5Ui!#'m!!'"`8#e !rqa`8,#Z!!K[!!!),@i!#2rX98mr,Ia#5'lrl#mZ!!a1ZK'k1erm4P922bhm3NK Yr%T"lIa))!K5J#m!6VS4RMYIr%C`80#Z!!`Y3!!-F,$3VJ!),8!!#'#D,blrk%k k&E3[,[rS6VS8cQ!!!%3EI!!"r%9J!!!k2bhm3NKYr&!r,Ia16VS'fKYm!!(m4@! !!#")J!a!!!CN&Y"!-$X!"Nll!!,q[2l!rZMrb[r8rmT1AL"I8%p1d%j@rXj1F8j a)'i!#%2Zr["`2b,B8FMrr$mZ!!bSLNKZ!!p)E[l32c`!!8kk$RiGE[l[rXj`!"! ZrXir!+L)98p)E[l`U)``2!'3!*!!AdM!JI`!!Mm!2bi!%+L65'lqm+L%6PiJAdr [!!T1d%j@rXj1F8ja)'i!#%2Zr["`2b,B8FMrr$mZ!!bSLNKZ!!p)E[l32c`!!8k k$K3GE[l[rXj`!"!ZrXir!+L)2bi!%$mZ!"+SNdKZr[#SK%jH)&p2l`!-6Y"19[r L6R&1F6em!%Erk$em!$,rkMem!5,rl$em!F,rlPP23UG)E[rS5(S$(Kmm!!%r2!! $F2m[!%)R3UHT%beIrq3[,[rNU(-r2!!S(A`!!rrLF!!3,[rL2`!r2!!B5(S#h%k krYSr2!"'(A`!!IrLF!!3,[rL2`!r2!!-5(S#NNkkrV`r2!"9(A`!!IrLF!!3,[r L2`!r2!!+5(S#6NkkrTir2!"c3LlriR!!%#lriMm!2c`!$%Kk!JC1Z[k#2c`!JN) Zrq*`!"!Zrq)r!$mm!!a)HJ(!6VVqCMmm!*XGI!!"rq*`!"!Zrq)r!$mm!!a)HJ' D6VVq5$mm!+p#,[rLF!!3,[rL2`!r2!!*5(S"5%kkrL`r2!#j3LlriR!!%#lriMm !2c`!#8Kk!0a1Z[i32c`!c6mm!%BGI!!"rq*`!"!Zrq)r!$mm!!P)HJ#X6VVq@$m m!-dr2!#-3LlriR!!%#lriMm!2c`!#8Kk!)"1Z[ii2c`!c6mm!0)GI!!"rq*`!"! Zrq)r!$mm!!P)HJ"16VVq&Mmm!-dr2!%L3LlriR!!%#lriMm!2c`!#8Kk!#*1Z[h f98qTG"!I#J!!!8S!C`!!"'$Z,blrj+N86Pj1G3Y2GA4`GA3JCQPXC3j6C@0[EQ3 JC'PKE'pR1KB+5@j`GA3JCQPXC4B04QPbFh3JC'PKE'pR1Np8D'8J68P88N8J3fp bF'pbBA4TEfiJBA0cG@eP)'j[)(*PFh"[ER0TBQPXDA4j)'C[FL"dD'8JGA0P)'p Q)(4SDA-JBA"`E'PMBA4TEfiZ0&4SDA-JBA"`E'PMBA4TEfiJDA-JEQpd)'C[FL" cB@aP,#"QC@9X)'CbC@8JG'mJBfp`H5i@"bSJ)#SJ)#SSBQPZBA*j)'C[FQeKG#" TER4[)'&Z)%&63dP*)'C[FQeKG#"QD@aP,KBU9'KTFb"KF("XD@0KG'P[EL"eER" KBfYc)'%JCQpZG#"TEL""BQpLC5Gc&L4AFQPdG'9Z)'*j)%TPFR*j)%YPEh9RD#" KEQ3J9'9N)%9NC5i@+N0[F(PbD@GSG##T)$%j1$JJBRNJ9'KP)%e*9&*&)%0[FR" [FQ&dD@pZ,KB+G@j"C'pLC5iZ,KB!%N)R6VS&bNj@rr"1ZJFq3Hhq)Lm)U'kSrUN 5U6#Tc%+RUAZS8(!"+d$m5MYm!!hm5%kkr)4)EIa35'hm6Nkk!f4+,Ia3C`!!Y&9 25'hm8$mYr%ir2!!"UF3lAra'$'hrrra'C`!!KNKYr&")EIa#6VS"'%)Yr%8lI!( dr93`,Ie88N!l32e8@8m[2&"28e3r,Ie8UD!VAre35Uhp8'F!!$3[,Ie36VS4&#m Yr9"1ZK#B)'hp8#m3@8m[,Ie36VS2[NkkqFJ[,Ie36VS3KLmYr9#TSdUYr9"A`%3 !J#hm48S!CjSr,Ia#6VS"FNKYr&")EIa16VS#VQ!!rdK1ANkk"KC19[kL6R&1F6e m!&$rlMem!$Irl#mZrqa)HJ"X5'lqSL"Z!!`[#%Kk!&3r2!!#6VS+IPK25'lqSN+ R5'lrSNkk%T)3,[qL#J!!!8S!C`!!$#"Z!!a#%'!!!"`JEJ!-2c`!rdKZrk`[#%k k#EBJEJ!)-+lrU%jH)&p36dl3##jeEN&NEf*P&J!56PEpl%ja6R%JEJ!-3qlqm(! r)YK4b2rm2c`!rdKZr[")E[h`6VS*FNKZrI")E[hZ6VVr4NSZrI"Q!!!'B!!!M&9 25'lpm$mZrHiJEJ!),`K1ZJak29rpl%TZrHaQ!!!'B!!!D!aZrpApl'B!!#496dK ZrI!r,[hZ,ca+5e4&,ca849K86VS-!MeIrHaJ!!!F$'lrcrhXCJ!!%P92)'i!#$m 36VS-p$eIrHa+E[hXCJ!!'P925'lpm$mZrHiJEJ!),`K1ZJ`)29rpl%jH)&p36dl 36PErkNja6R&96cmZ!!K)E[rX6VS-)$eIrqT96cmZ!!J[,[rX6VS-IMeIrqT96cm Z!!K1ZJb529rrkNjH)&p86dl36PEqj%ja6R%JEJ!+3qlqm(!r)YK4b2rm98p)E[l `2bi!#%KZrZa1ZJZ3!$eIrZj96cmZrZa)E[lS6VS-"$eIrZjC6bmZrZK1ZJf#,9r qj#mZrZ41ZJl+,blqj%kk$Nj96cmZrZa)E[lS)'lqj#m36VS+#$eIrZj96cmZrZa 1ZJ`'29rqlP922bi!$NKZrZJJE[lN,a"1ZJRQ29rqlLmZrZ41ZJi5,blqj%kk$5a 1AL"I8%p1d%j@!!")ja!J)'i!%#*Z!!`J,J!)4IS!,")B0M`!!HNC&!%#3J!2%[) J!&(,rr*6J'EQ60m%#%jH)&rIr!!!!!a1d$!a-M-d06Bh1$P"3N0%48C19[q56R& 1F6em!&$rlMem!$Irl#em6&G'6[q5,blrl%Kk!&"#Tcmm!!&)E[q53UG)E[qL6VS 3#K!Zrk)+!!!"5J"R!!!-)'i!$%)3B!!!(#"Z!!`r2!$r5'lrV#m)6VS((L"Z!!J `V[qS6PiJAe"26Y!!%JC!q%#Tb5"251FB!#B1+!KK"NcI!"K1G5m,*#hrXQB%*Pp 1G5C#Ym0L",I%BJBN+`!!B1T1ZJ&)5LX!"QF33IS"F$#V!"*"qJ&J6VS""#3V!!" 1ZJ!F5S*Ja#m!)![!Z!-D*fhrXJ!!+d$rXL!I6R8[!5),`VJ$'N2Yrl)J%@F3X)& R"#*!B23J3#+3!#)I6R8`223fUFPK#QF#6R8`223hUFP)jd#!)#hrXQF3)J[#Z!- DX)&R$L"!)""QpNcI!3*`!%je60m"!R!"6R8[#%r[rmj#V`!-,dJ!%N*[!"C#E`! D3HX!&Lp)!"`J6k!!0fm!'!!%6qm!-L"I5N"R'Ja!rp9Q"(!"6R8-32rTCJ$qmNS V!"&R!2lUF!"1G5m)6qrrcN+[!!`[5!!53Qm!&N*[!"SJ6k!)6qm!-L"I5N"R$!a !rp"Q!2kkF!&1GA!!6R8[#%r[rmj#V`!-,dJ!%N*[!"C#E`!D)%qJ#8r[!$)JAdT !C`K+,IqUC`$qKNje5LX!%@BL6qrrcN+[!!`rD`!%!"JJ6k!"6qm!-NT!C`K+,Iq UC`$qA%je#8a68&4PEA!!!!3a,M*"!&0Yrq!lI!!#rpj#EIrB3UhrXN*YrkSlI$! `rkK1ZJ"!6VS!@%kk!+"1ZJ%16VS"%La0*Pp+(fFNGJ!f,3!Ji8Y)EIiLU'kSrUN 5U6#Tc%+RUAXJ6j($S#e1ZJ%L6Y0K4QF+Da!lI2rjrka1G6YmrrIrV%je3QhrV%j eB5TR%'XF1hcrprqZ1hcrq2q`6R8lI2rjrkilI2rkrl"1G8*Yrkj#EIq`6R831!) (CKB31!+4DJ4`!%je!J!!$e-!C[4`rdjeF!&1G8IYqL"#+`!(#1X!!3!(&h`!!J! 481X!$P(V!!C3k`!-8HX!$8+V!!JhI!!#!"3AI!!0!""1Z[fQ4qhhrN)V!!F)k`! !!!FAI!!"!"&3k`!18HX!"P(V!!a4k`!03UX!#$Gm!!)!&"Gm!!d!%%kkr@j1G6( m!!d+5Nje3UhrT%je81hrUL!Yrl*Q#N+Yrl*4lIqUUI3Q3%kkrQK++`!'Ca""q[k 3!$#V!"*"q[k!6VVq*#!V!!"JdNSi!SjU+L"i!6"$q!%8)!L3!*&d$,##C4BL85( )!43LJ%)4)RJ#UL+))),4U3!-6R@JBdje"$%Z-N%!51I!`#![!"3L,`!B,fm!%!! 8B3j)l`!"!"K-h`-$@%p1G8MR-!!N!%K#aF%Q!8K$am$@3NK$3N2#`0D")!0-h`! -6R9)jm$!)Lm!&'G#)#m!'#p[!"!!&'%k,d%!'%cI!`0B6dje51I!`#)[!"4R)#! [!"KK(NU!DJ63V`!8,d!!'#p[!"!!&%cI!`0B6djeF!#"`%MR2J!U!'S#4)!X!@S #4)%N!#B"3S"#JAJIij,MN!$MLE#$E353!)05J90%E1j+K@S#4)#lKQS#4)&-h`" m6R8%-5ib33![##m!)'m!$(!!)-!J`#$!)-!J`#$!)-!J`#!I)&mZRdje51I!J#" [!""`!#$!)-!J`#$!)-!J`#$!)-!JE`!3-#m!&()IjNL53$![!"3#3!!(!I!3!%c I!3-[9`!'A%p1G8MRm)!JE`!BF!!J`#$!)-!J`#$!)-!J`#$!)'m!'(3I-#m!(1C )P%"b(c![!"lQ5**!-!*J"P$`!!"53,""ErB`,`!H!N!!"hEri5[(-"!!F!Fb,`! F!N%!"j!!3AEri#[(-#!!60m"$bpA!!K36dje51IJJ#"[!"4b(c![!"VQ5**!F!" J#%S`!!"Q8&*!X%&Yp(!(0#m!'J*#!!H3!%*drq!U4J)3-"!!`!*Q-()I-#m!'1C )NN!`!@!'5M!!!'BF8N!-3!!IEr)`,`!B!N!!"h6ri5T'!K!`%!$!!NcI!3G!jbp [!!)!#N6I8%p1G8MR`)!JE`!3-#m!&()IjNL53$![!"3#3!!(,fm!$!!5!6!3!%c I!30F6dje51I!`#"[!"3LE`!BFJFJ'B'B8FRrqNcI!`-[9`!)8%p1G8MR`-!JE`! 8)Qm!'()()"R"Q&(*rrT-h`-$,eF!#&"26R9)jm$!)'m!&#*[!"Kb"b!C4S$"Q&( *rrK-h`-$,eF!#&"26R9)jq$!-#m!'#"[!"SLE`!H,fm!&!!Hd%!`1`!'6[X!!J! -!!`!!!!!!"i!,R!(XiK@b2rm60m$"dr[!!T1GA!()KJN'B+#XS*@b2rfB1C`"b) B*"Q%JE5"9XMrpQ$@51I!`$)[!"3JE`!@)NK`!#,!)X!L`#,!)X!L`#,!)X!LE`! D8d&R(R!IN!""iNP"m!!!-0P4bIrm60m$!bpA!!T2l`!+6R84@3!IB1a)jq$!)Qm !'#"[!"`[E`!8!"a`!"!B0!!5'E)!C!)8!90#E3Lc#&E+rraQ!V)!60m$"e#26R8 [#L*[!!JNE`!--#m!%$3!%KUb!Q3#&!%5`Q!#%YT4b[rmX!%NAb"I6qm!#Nl351I !J#"[!")[E`!-!"*`!"!3-Lm!%&0"8d"P!T!!38cI!30FMdje,`SJE`!)F!!3'() !)Qm!$(3!&"Q`3Qd@*%K5390#E4#c#PE+rraR#&*)8d"JhR)!*&mJAe"22S&1d$! [!!4$l`!'-J$P5G,")&%LPdMR!1"b!&*)B"SNBA3!&"V5!Q3-P!&6!R!!F[pJ!K$ D8FVrr&()rq4-h`F!%)%Z59*")&G1d#3I-"pX!R!!-KpZ$%4"8N'3!%&X!R!!FJ% JAb*A,`*d!"33d-&53T4"E!*d!,"#E`)`!K,!B!)5f&()rra1G8cI!3-L9dMR`%" `!"!3%YK4b2rm*"m`(f`#F!!b(fi-4%&53C!!3@`#F!"b!5"I,`*d!"33P%&53Qm BX%*[!M!#N4#830$"3r!!!'!#%0P4b[rm6R8J(c)I5%%b2!$r)PmJE`!%G!!8%4$ C8FVrr#*I)&GJ"%cI!`-[!%MR'$"i!(!!%"Pd!"330J$@3VC"E`3f!AMr%)0)38T "EJ*b!90"XN*[!M)#8N&&m$!"4r!3!63,*NU@`*4,4%*Y"K8M8FVrr%A`%!#@39* $YN"["MB!B!)8f9(,rra54%cI$"K1G9("B!*3`8j@rmj"l[r1)@i!#!!J-@i!%!! B)Qi!$#&4!#4#D!!X3UJ!,NS"CJ5J!Q!#S!-p3!!5)Qi!$#+S!#K1AL*Ihr`!!!! +6Y&19[r!3Hlr`#&Z!"!!%M&Z!"3!&N*S!"bJ"ce!!"BLEJ!--UJ!&L!S!$$JJ1+ !`1J!2Z1!iB!LEJ!))S"1AL*Ihr`!!!!16Y&19[r!3Hlr`#&Z!!`!%U!828!!%#* Z!!JbU!!@6PiLAe#26Y&19[r!3Hlr`#&Z!!S!%M&Z!!J!&U!928!!$NjH)PpFMdl 46PEr`%(Zrm!aEJ!)!"BKEJ!+!"+J%ce!!!j1AL*IA)p1d8j@rl""l[q`)@i!%J! 5-@i!%!!@3LJ!'U!)5N"Q&N*S!"bJ$#!)3qJ!)#,Z!!JLVJ!-S!dp3!!@6PiLApr m!!!!$Nl46PErcN(ZrmiKEJ!1!")aEJ!-!"C#+!!D3LJ!'d+S!"bJ!#*Z!!JbU!! B28!!%NjH)&rIr!!!!!T1d%j@rmj"l[r1-@i!$!!BS"Jp3!!1)Qi!##+S!#j1AL* IA)p1d8j@rmj"l[r1-@i!$J!B-@i!$!!X)@i!#!!ZS%3p3!!36PiLAe#26Y&19[r 13HlrcM&Z!!`!'+!428!!$L*Z!!JLU!!F6PiLAeb26Y&19[r13HlrcM&Z!!`!'#& Z!!J!(+!528!!$NjH)PpFMdl46PErcN(ZrmiaEJ!)!"LJ!6e!!!T1AL"I9)p1d%j @rl""l[q`)@i!$J!5-@i!$!!@3LJ!'N*S!"bJ$$e!!"*"k!!J)Qi!#$!m!"#J,Nj H)PrIr!!!!!T1d8j@rl""l[q`)@i!$J!5-@i!$!!@3LJ!'N*S!"bJ$%2S!#!JEJ! )-$`!%+!Z3HlrX+!028!!%NjH)PrIr!!!!!T1d8j@rmj"l[r1)@i!$J!5-@i!$!! @3LJ!'L&Z!!J!(+!,28!!%NjH)PrIr!!!!!T1d8j@rmj"l[r1)@i!#J!5-@i!#!! @3LJ!'U!*28!!$NjH)PpFMdl4S#a1qJ'F)PmJAk"A6[S"N!!LAb"2S"RHr!!16[S "JL*I)&qJ,8lk!ALJ0Nlk!A5K'Lp)!!41qJ&U)PmJAk!E6[S"ALpi!UB!"%lk!9` [H!+U!!41qJ&5)PmJ(k%L,SK1qJ%q)PmJAk!M6[S"0#*I)&qJ*5k!DJC#Pdlk!54 1qJ%H)PmJ(b"IS#41qJ%8)PmJAk%Q,SK1qJ%))PmJAk%S,SK1qJ$k)PmJ(b"IS#G 1qJ$`)PmJ(k%H,SK1qJ$N)PmJAk!I6[S!fL*I)&qJ)5k!DJC#Pdlk!-T1qJ$%)Pm J(b"IS#"1qJ#k)PmJAk&),SK1qJ#ZS"`[3!!%6[S!V#*IS4dL##"I))%ZJ%lk!*) LAb!IS%`ZJ%lk!)BLAb!IS%"1qJ"q)PmJ(k"06[S!G#*I)&qJ+dlk!'SLAb"IS#P 1qJ"J)PmJAk!U6[S!9L*I)&qJ58lk!%`LAb"IS%T1qJ"#)PmJAk",6[S!1#pi!bJ !"%je)KmJ(b*I)&qJ,L*"6[S!)#pi!3J!"%lk!"irH!)J!!41G5pi!6!!"%lk!!a `!#m*-F!#)%jeF!"JpNcI!`![#%MR(ciJ%F#i!aTQ"R#66[S"DLK*#"3!"fF'-$c rLf$Z,(J"'#CZ!!!L%F+i!aSL39'*)LN!!-+i!aSZ!9'(F!$6`E2,C!!"0%ST!!" R%'S!!5SLD3!%dmj+%@X!!4iL$b"i!UU5U!!!F2mN2!!!"!#bJQd!!3B%3J#!NS) )J3!!Rm'Hr!!5+Nm[33!))&445#pS!!!!!#!8`,J$'Lp!!!`I9!!36VS!hNS5CL` L+J!!)!&4J*!!Kf8JC`J-J!!!!!aP&L"8)NV6`5!(Nm#4VJ!-S#iJ6+!VB(Cm!%k k!1C1ZJ%S6VS!S#)U!!!J,3!%3Hd!%L*+dm'6`0b!NDi!$+!Z5SGR!!"+)!Q3!)T R'L)!8B'5Kf81C`J-J3!!!!aP"#"8B+BP3!!!60%!-#01!!3M4J!!%h`!3!!!,`P 1ZJ#'6VS!b%kk!%!LAdM4!$"JQ&'*8Di!$#!*N!#+C`3P3!!!*%NNl3!!)%b4cL6 )+)SBV`!3F!$Il`!)h[`!%NcII2Ja`!)J6R8J&'F+`,J$'L"!88KJ"%(Z!$3L+!! !`VJ$'NSS!!"R$'S8)QJ!"0215K&V#L4)dF'abfAHB!Dal3!-Br"1G5!Y!!L`Kfd #)!G$l3!5)&64aj(!RS!V3!!%)J#J,L"-)!GQ"+!V6R8J8&&)&#J!!&#!)8!!!"& #!!$4`#&"!!$6VJ!-6R8J2!#!!!#J6%jeG!%JAcm#,`LYkR3$6[Vrp(3#6[VrlR3 %6[Vrk!!!!#!!!!!`!!!)!J!!!"!!!!!J!%"1l3!U6R%&GMmm!!'Tm!!!!3$rrri !J!!$!)!!!S#2ri*!J!!#),rriK#!!!))JIrQ")!!#J+IrK2rJ!!J#B2q3!Q!!)! *[q%!#B!#!JQ(p!B*J!J+#Em3%JQ!)#)*Rd"q#B#!!!QG!!!*JJ!!#E3(rJQ)#!) *N!!4iJQJ)!)*`%2k#B#!!JRr!!2jJ!!!!Irrrrrrrrrrrrrrrrrrrrrrrrrrrrr rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr rrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrrr rrrrrrrrrrrrrrrrrr`!!!3!!rri!!Irr!!1!!i!(!!(!$J1"i"`(`r!i$ZHiF"j h(1!q1Jl!IK`(`2i1!m(q4`2$rQ1$arja`mrqB12(rN4c`ri1im(q(m2!rMq$`(j r!m#qIJ2KhR`(Fmji$Mq'F"`I!q!i$J(!F!F!J1!$J!(!!IrrJ!$rr`!!!!!!!!! !!!"`!!"rrrriIrrrq(rrrrKrrrriIrrrq(rrrrKrrrriIrrrq2rrrrMrrrrirrr rq(rrrrKrrrriIrrrq(rrrrKrrrriIrrrq(rrrrKrrrriIrrrq(rrrrKrrrriIrr rq(rrrrKrrrriIrrrq(rrrrKrrrri!!!!!!!!!!!!!!!!!!!!*%T,9%8!!!!"580 1)`!"!!!"!!!"!3&'8N9'!!%!!!%!!!%"!3!!!'jYG@j"C'pLC5`JBRNJ9'9N)%9 NC5!Q)%TPFR*j)%YPEh9RD#!S6@&TEQaj)%TPFR*j+5iJ3fp`HA*TCfKd)+NJBRN J9'KP)%e*9&*&)%0[FR"[FQ&dD@pZ,L""E'`JFQPRD(4c)(*PFf9bGQ9N,J!!!!G "8&"-!!!!!!!!"e4&@&3!!3!!!!%!!!!G5!!!(%J!!!#Q!!)#3!,b!!!!(!#Q!!4 $6d4&!!%!+NP$6L-!!3"#3Nj%6!!!!&T+5e4&!!!!CNC548B!!3"b!!(rrc3!!!! !!MD'!!$rrb!!'@`!!!!!!3(rr`!!'C!!!!)fJJ%!rrm!!"U8!!!!!!%!rrm!!"Z B!!)fIJ!!rrm!!"[!!!!!!!%!rrm!!"`b!!)fHJ%"rrm!!"`p!!!!!!8r: -=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- Paul Nash Flagship Wide Area Networks (Pty) Ltd paul@frcs.UUCP ...!ddsw1!proxima!frcs!paul
woody@chinacat.Unicom.COM (Woody Baker @ Eagle Signal) (09/26/90)
Now all we need, is a routine that will take MAC screen fonts, and build Windows screen fonts out of them. Does anyone know where such a beastie may be found? Cheers Woody