#undef TRIP
#undef TRAP
#define STAT
#define INI
#define INIMF
#define MF
#ifdef TEXMF_DEBUG
#endif /* TEXMF_DEBUG */
#define MFCOERCE
#include "texmfmp.h"
/* 1 9998 9999 */
#define maxinternal ( 300 )
#define bufsize ( 3000 )
#define screenwidth ( 1664 )
#define screendepth ( 1200 )
#define stacksize ( 300 )
#define maxstrings ( 7500 )
#define stringvacancies ( 74000L )
#define poolsize ( 100000L )
#define movesize ( 20000 )
#define maxwiggle ( 1000 )
#define poolname ( "mf.pool" )
#define pathsize ( 1000 )
#define bistacksize ( 1500 )
#define headersize ( 100 )
#define ligtablesize ( 15000 )
#define maxkerns ( 2500 )
#define maxfontdimen ( 60 )
#define infmainmemory ( 2999 )
#define supmainmemory ( 8000000L )
typedef unsigned char ASCIIcode ;
typedef unsigned char eightbits ;
typedef text /* of ASCIIcode */ alphafile ;
typedef text /* of eightbits */ bytefile ;
typedef integer poolpointer ;
typedef integer strnumber ;
typedef unsigned char packedASCIIcode ;
typedef integer scaled ;
typedef char smallnumber ;
typedef integer fraction ;
typedef integer angle ;
typedef unsigned char quarterword ;
typedef integer halfword ;
typedef char twochoices ;
typedef char threechoices ;
#include "texmfmem.h"
typedef text /* of memoryword */ wordfile ;
typedef char commandcode ;
typedef integer screenrow ;
typedef integer screencol ;
typedef screencol transspec [screenwidth + 1] ;
typedef char pixelcolor ;
typedef char windownumber ;
typedef struct {
quarterword indexfield ;
halfword startfield, locfield, limitfield, namefield ;
} instaterecord ;
typedef integer gfindex ;
EXTERN integer bad ;
#ifdef INIMF
EXTERN boolean iniversion ;
EXTERN boolean dumpoption ;
EXTERN boolean dumpline ;
#endif /* INIMF */
EXTERN integer bounddefault ;
EXTERN char * boundname ;
EXTERN integer mainmemory ;
EXTERN integer memtop ;
EXTERN integer memmax ;
EXTERN integer errorline ;
EXTERN integer halferrorline ;
EXTERN integer maxprintline ;
EXTERN integer gfbufsize ;
EXTERN ASCIIcode xord[256] ;
EXTERN ASCIIcode xchr[256] ;
EXTERN ASCIIcode * nameoffile ;
EXTERN integer namelength ;
EXTERN ASCIIcode buffer[bufsize + 1] ;
EXTERN integer first ;
EXTERN integer last ;
EXTERN integer maxbufstack ;
EXTERN packedASCIIcode strpool[poolsize + 1] ;
EXTERN poolpointer strstart[maxstrings + 1] ;
EXTERN poolpointer poolptr ;
EXTERN strnumber strptr ;
EXTERN poolpointer initpoolptr ;
EXTERN strnumber initstrptr ;
EXTERN poolpointer maxpoolptr ;
EXTERN strnumber maxstrptr ;
EXTERN char strref[maxstrings + 1] ;
#ifdef INIMF
EXTERN alphafile poolfile ;
#endif /* INIMF */
EXTERN alphafile logfile ;
EXTERN char selector ;
EXTERN char dig[23] ;
EXTERN integer tally ;
EXTERN integer termoffset ;
EXTERN integer fileoffset ;
EXTERN ASCIIcode trickbuf[256] ;
EXTERN integer trickcount ;
EXTERN integer firstcount ;
EXTERN char interaction ;
EXTERN char interactionoption ;
EXTERN boolean deletionsallowed ;
EXTERN char history ;
EXTERN schar errorcount ;
EXTERN strnumber helpline[6] ;
EXTERN char helpptr ;
EXTERN boolean useerrhelp ;
EXTERN strnumber errhelp ;
EXTERN integer interrupt ;
EXTERN boolean OKtointerrupt ;
EXTERN boolean aritherror ;
EXTERN integer twotothe[31] ;
EXTERN integer speclog[29] ;
EXTERN angle specatan[27] ;
EXTERN fraction nsin, ncos ;
EXTERN fraction randoms[55] ;
EXTERN char jrandom ;
EXTERN memoryword * mem ;
EXTERN halfword lomemmax ;
EXTERN halfword himemmin ;
EXTERN integer varused, dynused ;
EXTERN halfword avail ;
EXTERN halfword memend ;
EXTERN halfword rover ;
#ifdef TEXMF_DEBUG
EXTERN boolean freearr[2] ;
EXTERN boolean wasfree[2] ;
EXTERN halfword wasmemend, waslomax, washimin ;
EXTERN boolean panicking ;
#endif /* TEXMF_DEBUG */
EXTERN scaled internal[maxinternal + 1] ;
EXTERN strnumber intname[maxinternal + 1] ;
EXTERN integer intptr ;
EXTERN char oldsetting ;
EXTERN char charclass[256] ;
EXTERN halfword hashused ;
EXTERN integer stcount ;
EXTERN twohalves hash[9770] ;
EXTERN twohalves eqtb[9770] ;
EXTERN halfword gpointer ;
EXTERN smallnumber
#define bignodesize (zzzaa -13)
zzzaa[2] ;
EXTERN halfword saveptr ;
EXTERN halfword pathtail ;
EXTERN scaled deltax[pathsize + 1], deltay[pathsize + 1], delta[pathsize + 1] ;
EXTERN angle psi[pathsize + 1] ;
EXTERN angle theta[pathsize + 1] ;
EXTERN fraction uu[pathsize + 1] ;
EXTERN angle vv[pathsize + 1] ;
EXTERN fraction ww[pathsize + 1] ;
EXTERN fraction st, ct, sf, cf ;
EXTERN integer move[movesize + 1] ;
EXTERN integer moveptr ;
EXTERN integer bisectstack[bistacksize + 1] ;
EXTERN integer bisectptr ;
EXTERN halfword curedges ;
EXTERN integer curwt ;
EXTERN integer tracex ;
EXTERN integer tracey ;
EXTERN integer traceyy ;
EXTERN char octant ;
EXTERN scaled curx, cury ;
EXTERN strnumber octantdir[9] ;
EXTERN halfword curspec ;
EXTERN integer turningnumber ;
EXTERN halfword curpen ;
EXTERN char curpathtype ;
EXTERN scaled maxallowed ;
EXTERN scaled before[maxwiggle + 1], after[maxwiggle + 1] ;
EXTERN halfword nodetoround[maxwiggle + 1] ;
EXTERN integer curroundingptr ;
EXTERN integer maxroundingptr ;
EXTERN scaled curgran ;
EXTERN char octantnumber[9] ;
EXTERN char octantcode[9] ;
EXTERN boolean revturns ;
EXTERN char ycorr[9], xycorr[9], zcorr[9] ;
EXTERN schar xcorr[9] ;
EXTERN integer m0, n0, m1, n1 ;
EXTERN char d0, d1 ;
EXTERN integer envmove[movesize + 1] ;
EXTERN char tolstep ;
EXTERN integer curt, curtt ;
EXTERN integer timetogo ;
EXTERN integer maxt ;
EXTERN integer delx, dely ;
EXTERN integer tol ;
EXTERN integer uv, xy ;
EXTERN integer threel ;
EXTERN integer apprt, apprtt ;
EXTERN boolean screenstarted ;
EXTERN boolean screenOK ;
EXTERN boolean windowopen[16] ;
EXTERN screencol leftcol[16] ;
EXTERN screencol rightcol[16] ;
EXTERN screenrow toprow[16] ;
EXTERN screenrow botrow[16] ;
EXTERN integer mwindow[16] ;
EXTERN integer nwindow[16] ;
EXTERN integer windowtime[16] ;
EXTERN transspec rowtransition ;
EXTERN integer serialno ;
EXTERN boolean fixneeded ;
EXTERN boolean watchcoefs ;
EXTERN halfword depfinal ;
EXTERN eightbits curcmd ;
EXTERN integer curmod ;
EXTERN halfword cursym ;
EXTERN instaterecord inputstack[stacksize + 1] ;
EXTERN integer inputptr ;
EXTERN integer maxinstack ;
EXTERN instaterecord curinput ;
EXTERN char inopen ;
EXTERN char openparens ;
EXTERN alphafile inputfile[16] ;
EXTERN integer line ;
EXTERN integer linestack[16] ;
EXTERN halfword paramstack[151] ;
EXTERN unsigned char paramptr ;
EXTERN integer maxparamstack ;
EXTERN integer fileptr ;
EXTERN char scannerstatus ;
EXTERN integer warninginfo ;
EXTERN boolean forceeof ;
EXTERN short bgloc, egloc ;
EXTERN halfword condptr ;
EXTERN char iflimit ;
EXTERN smallnumber curif ;
EXTERN integer ifline ;
EXTERN halfword loopptr ;
EXTERN strnumber curname ;
EXTERN strnumber curarea ;
EXTERN strnumber curext ;
EXTERN poolpointer areadelimiter ;
EXTERN poolpointer extdelimiter ;
EXTERN integer basedefaultlength ;
EXTERN char * MFbasedefault ;
EXTERN strnumber jobname ;
EXTERN boolean logopened ;
EXTERN strnumber texmflogname ;
EXTERN strnumber gfext ;
EXTERN bytefile gffile ;
EXTERN strnumber outputfilename ;
EXTERN smallnumber curtype ;
EXTERN integer curexp ;
EXTERN integer
#define maxc (zzzab -17)
zzzab[2] ;
EXTERN halfword
#define maxptr (zzzac -17)
zzzac[2] ;
EXTERN halfword
#define maxlink (zzzad -17)
zzzad[2] ;
EXTERN char varflag ;
EXTERN scaled txx, txy, tyx, tyy, tx, ty ;
EXTERN halfword startsym ;
EXTERN boolean longhelpseen ;
EXTERN bytefile tfmfile ;
EXTERN strnumber metricfilename ;
EXTERN eightbits bc, ec ;
EXTERN scaled tfmwidth[256] ;
EXTERN scaled tfmheight[256] ;
EXTERN scaled tfmdepth[256] ;
EXTERN scaled tfmitalcorr[256] ;
EXTERN boolean charexists[256] ;
EXTERN char chartag[256] ;
EXTERN integer charremainder[256] ;
EXTERN short headerbyte[headersize + 1] ;
EXTERN fourquarters ligkern[ligtablesize + 1] ;
EXTERN short nl ;
EXTERN scaled kern[maxkerns + 1] ;
EXTERN integer nk ;
EXTERN fourquarters exten[256] ;
EXTERN short ne ;
EXTERN scaled param[maxfontdimen + 1] ;
EXTERN integer np ;
EXTERN short nw, nh, nd, ni ;
EXTERN integer skiptable[256] ;
EXTERN boolean lkstarted ;
EXTERN integer bchar ;
EXTERN integer bchlabel ;
EXTERN integer ll, lll ;
EXTERN integer labelloc[257] ;
EXTERN eightbits labelchar[257] ;
EXTERN short labelptr ;
EXTERN scaled perturbation ;
EXTERN integer excess ;
EXTERN halfword dimenhead[5] ;
EXTERN scaled maxtfmdimen ;
EXTERN integer tfmchanged ;
EXTERN integer gfminm, gfmaxm, gfminn, gfmaxn ;
EXTERN integer gfprevptr ;
EXTERN integer totalchars ;
EXTERN integer charptr[256] ;
EXTERN integer gfdx[256], gfdy[256] ;
EXTERN eightbits * gfbuf ;
EXTERN gfindex halfbuf ;
EXTERN gfindex gflimit ;
EXTERN gfindex gfptr ;
EXTERN integer gfoffset ;
EXTERN integer bocc, bocp ;
EXTERN strnumber baseident ;
EXTERN wordfile basefile ;
EXTERN integer readyalready ;
EXTERN poolpointer editnamestart ;
EXTERN integer editnamelength, editline ;
#include "mfcoerce.h"
|