/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */ /* time: July 28, 1993 10:18:22 am PDT */ /* C2C version: April 20, 1993 (sun4) */ /* ref-counting: off */ /* file: ImagerFDTypefaceImpl, module: ImagerFDTypefaceImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> static char versionStamp[] = "@(#)mob←version [70224946,451444306] ImagerFDTypefaceImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef word (*fPt)(); typedef struct {word f0, f1, f2, f3, f4, f5;} W6; typedef struct {word f0, f1, f2;} W3; typedef W3 *W3Pt; typedef struct {word f0, f1;} W2; typedef W2 *W2Pt; typedef struct {word f0, f1, f2, f3;} W4; typedef W4 *W4Pt; typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8; typedef struct {W8 f; word r;} W9; typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7; typedef struct {W8 f; W3 r;} W11; static float fc1 = 0.9875; static float fc2 = 1.0125; #define SOURCE(p, l) /* source p, l */ static float fc52 = 1.0; #define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) ) #define MIN(cast, x, y) ( ( cast x) < ( cast y) ? (x) : (y) ) static float fc71 = 0.5; static float fc72 = 0.0; static float fc83 = -0.05; static float fc84 = 0.45; static float fc85 = 0.6; #define FABS(f, t) ( ((t=(f)) >= (float) 0.0) ? (t) : (- (t)) ) #define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i ) static float fc139 = 90.0; static float fc142 = 45.0; static float fc148 = 1.666667E-2; static float fc162 = 0.05; static float fc163 = 0.4; #define INEG(x) ( (word) ( - ((int) (word) (x)) ) ) static void NoName←Q5148(); static void ImagerFDTypefaceImpl←P0(); static word FDCreate←P60(); static word NoName←Q5208(); static word GetRun←P120(); static word FDContains←P180(); static word FDNextChar←P240(); static void FetchCharInfo←P300(); static word FetchCharInfoRun←P360(); static void FDEscapement←P420(); static word FDAmplified←P480(); static word FDCorrection←P540(); static void FDBoundingBox←P600(); static void FDFontBoundingBox←P660(); static void FDKern←P720(); static word FDNextKern←P780(); static word FDLigature←P840(); static word FDNextLigature←P900(); static word RawHash←P960(); static word TransformationHash←P1020(); static word TransformationEqual←P1080(); static word TransformationIndexFromTransformation←P1140(); static void Update←P3120(); static word Right←P3324(); static word SelectTransformationIndex←P1200(); static word NoName←Q5268(); static word InstantiateTypeface←P1260(); static word NoName←Q5328(); static void FDMask←P1320(); static word FDMakeCharMask←P1380(); static word FromStream←P1440(); static word NoName←Q5388(); static void Inner←P3888(); static void GetExtents←P1500(); static word GetRealSeq←P1560(); static word GetTransformationSeq←P1620(); static word GetTransformation←P1680(); static word GetTypefaceCellSeq←P1740(); static word GetCharInfoRunSeq←P1800(); static word GetTypefaceCell←P1860(); static word GetOverflowCharInfoSeq←P1920(); static word GetVerboseCharInfo←P1980(); static void GetVEC←P2040(); static word GetPropList←P2100(); static word GetCharInfoRun←P2160(); static word GetCharRuns←P2220(); static word GetCARD32←P2280(); static word GetBYTE←P2340(); static word GetCount←P2400(); static word GetIdentifier←P2460(); static word GetInteger←P2520(); static word GetREAL←P2580(); static void NoName←Q5448(); static void NoName←Q5508(); static void NoName←Q5568(); static void NoName←Q5628(); static struct {unsigned f; char r[16];} string3 = {851984, "\257\300\301\227\276\106\300\342\254\204\020\100\200\000\000"}; static struct {unsigned f; char r[8];} string4 = {458759, "\006\002\000\001@@\001"}; static struct {unsigned f; char r[4];} string5 = {131076, "\216\251\000"}; static struct {unsigned f; char r[4];} string6 = {65537, "\001\000\000"}; static struct {unsigned f; char r[16];} string7 = {851984, "\257\300\107\202\306\250\300\217\000\064\076\100\230\000\000"}; static struct {unsigned f; char r[16];} string8 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"}; static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\107\202\306\250\300\217\000\064\076\100\274\000\000"}; static struct {unsigned f; char r[16];} string10 = {851984, "\257\300\107\202\306\250\300\217\000\064\076\101\064\000\000"}; static struct {unsigned f; char r[4];} string11 = {131074, "\003\006\000"}; static struct {unsigned f; char r[44];} string12 = {2752556, "\260\006\005\146\151\162\163\164\257\300\240\236\274\171\300\344\000\142\023\100\200\005\004\162\145\163\164\214\257\300\240\236\274\171\300\344\000\142\023\100\200\261\000"}; static struct {unsigned f; char r[4];} string13 = {131074, "\004\007\000"}; static struct {unsigned f; char r[16];} string14 = {851984, "\257\300\107\202\306\250\300\217\000\064\076\101\050\000\000"}; static struct {unsigned f; char r[12];} string15 = {524296, "\011\000\004\000\040\000\004\001\000\000\000"}; static struct {unsigned f; char r[16];} string16 = {851984, "\257\300\301\227\276\106\300\342\254\204\020\100\164\000\000"}; static struct {unsigned f; char r[4];} string17 = {196611, "\004@\357"}; static struct {unsigned f; char r[16];} string18 = {851984, "\257\300\107\202\306\250\300\217\000\064\076\100\164\000\000"}; static struct {unsigned f; char r[36];} string19 = {2228258, "\006\015\020\001\024\001\030\001\034\001\040\001\044\001\050\001\054\001\060\001\064\001\070\001\074\001\100\100\010\000\004\101\000\001\000"}; static struct {unsigned f; char r[16];} string20 = {851984, "\257\300\121\117\377\026\300\315\013\026\004\100\164\000\000"}; static struct {unsigned f; char r[4];} string21 = {65540, "\242\000\000"}; static struct {unsigned f; char r[16];} string22 = {851984, "\257\300\301\227\276\106\300\342\254\204\020\101\304\000\000"}; static struct {unsigned f; char r[4];} string23 = {131074, "\003\001\000"}; static struct {unsigned f; char r[16];} string24 = {851984, "\257\300\107\202\306\250\300\217\000\064\076\100\340\000\000"}; static struct {unsigned f; char r[4];} string25 = {131074, "\004\013\000"}; static struct {unsigned f; char r[16];} string26 = {851984, "\257\300\107\202\306\250\300\217\000\064\076\100\260\000\000"}; static struct {unsigned f; char r[16];} string27 = {851984, "\257\300\107\202\306\250\300\217\000\064\076\100\200\000\000"}; static struct {unsigned f; char r[16];} string28 = {851984, "\257\300\107\202\306\250\300\217\000\064\076\100\214\000\000"}; static struct {unsigned f; char r[16];} string29 = {851984, "\257\300\107\202\306\250\300\217\000\064\076\100\324\000\000"}; static struct {unsigned f; char r[16];} string30 = {983056, "badFileTypeCode"}; static struct {unsigned f; char r[12];} string31 = {655372, "rangeError\000"}; static struct {unsigned f; char r[20];} string32 = {1245204, "unexpectedEndOfFile"}; static struct {unsigned f; char r[8];} string33 = {262152, "name\000\000\000"}; static struct {unsigned f; char r[44];} string34 = {2818092, "Font file %g is malformed (byte index = %g)"}; static struct {unsigned f; char r[4];} string35 = {131076, "FD\000"}; static struct {unsigned f; char r[16];} string36 = {983056, "charsOutOfOrder"}; static struct {unsigned f; char r[16];} string37 = {851984, "\257\300\004\057\214\062\300\032\350\176\122\100\164\000\000"}; static struct {unsigned f; char r[12];} string38 = {720907, "\006\003\050\001\054\001\100\240\004\100\377"}; static struct {unsigned f; char r[16];} string39 = {851984, "\257\300\055\153\222\376\300\327\164\352\142\100\150\000\000"}; static struct {unsigned f; char r[16];} string40 = {851984, "\257\300\074\177\166\242\300\203\113\217\044\100\150\000\000"}; static struct {unsigned f; char r[16];} string41 = {851984, "\257\300\170\064\225\306\300\207\372\245\271\100\150\000\000"}; static struct {unsigned f; char r[16];} string42 = {851984, "\257\300\045\370\116\014\300\270\323\074\131\100\150\000\000"}; static struct {unsigned f; char r[16];} string43 = {851984, "\257\300\041\257\203\366\300\322\161\356\007\100\150\000\000"}; static struct {unsigned f; char r[16];} string44 = {851984, "\257\300\121\117\377\026\300\315\013\026\004\100\150\000\000"}; static struct {unsigned f; char r[16];} string45 = {851984, "\257\300\301\227\276\106\300\342\254\204\020\100\150\000\000"}; static struct {unsigned f; char r[16];} string46 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"}; static struct {unsigned f; char r[16];} string47 = {851984, "\257\300\246\205\220\035\300\344\000\142\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string48 = {851984, "\257\300\242\221\264\046\300\105\142\142\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string49 = {851984, "\257\300\275\320\070\317\300\004\110\363\366\100\150\000\000"}; static struct {unsigned f; char r[16];} string50 = {851984, "\257\300\107\202\306\250\300\217\000\064\076\100\150\000\000"}; static struct { word f0[149]; } globalframe = { {0} }; static void NoName←Q5148() { register ptr gf←c0471 = (ptr) &globalframe; word var←c43608; (* (( (ptr) gf←c0471)+8)/* minScale←v4064 */ ) = (* (ptr) &fc1 ); (* (( (ptr) gf←c0471)+9)/* maxScale←v4092 */ ) = (* (ptr) &fc2 ); (* (( (ptr) gf←c0471)+135) ) = ( ((word) (fPt) ImagerFDTypefaceImpl←P0) ); (* (( (ptr) gf←c0471)+133) ) = ( ((word) (fPt) FDCreate←P60) ); (* (( (ptr) gf←c0471)+131) ) = ( ((word) (fPt) GetRun←P120) ); (* (( (ptr) gf←c0471)+129) ) = ( ((word) (fPt) FDContains←P180) ); (* (( (ptr) gf←c0471)+127) ) = ( ((word) (fPt) FDNextChar←P240) ); (* (( (ptr) gf←c0471)+125) ) = ( ((word) (fPt) FetchCharInfo←P300) ); (* (( (ptr) gf←c0471)+123) ) = ( ((word) (fPt) FetchCharInfoRun←P360) ); (* (( (ptr) gf←c0471)+121) ) = ( ((word) (fPt) FDEscapement←P420) ); (* (( (ptr) gf←c0471)+119) ) = ( ((word) (fPt) FDAmplified←P480) ); (* (( (ptr) gf←c0471)+117) ) = ( ((word) (fPt) FDCorrection←P540) ); (* (( (ptr) gf←c0471)+115) ) = ( ((word) (fPt) FDBoundingBox←P600) ); (* (( (ptr) gf←c0471)+113) ) = ( ((word) (fPt) FDFontBoundingBox←P660) ); (* (( (ptr) gf←c0471)+111) ) = ( ((word) (fPt) FDKern←P720) ); (* (( (ptr) gf←c0471)+109) ) = ( ((word) (fPt) FDNextKern←P780) ); (* (( (ptr) gf←c0471)+107) ) = ( ((word) (fPt) FDLigature←P840) ); (* (( (ptr) gf←c0471)+105) ) = ( ((word) (fPt) FDNextLigature←P900) ); (* (( (ptr) gf←c0471)+103) ) = ( ((word) (fPt) RawHash←P960) ); (* (( (ptr) gf←c0471)+101) ) = ( ((word) (fPt) TransformationHash←P1020) ); (* (( (ptr) gf←c0471)+99) ) = ( ((word) (fPt) TransformationEqual←P1080) ); (* (( (ptr) gf←c0471)+97) ) = ( ((word) (fPt) TransformationIndexFromTransformation←P1140) ); (* (( (ptr) gf←c0471)+95) ) = ( ((word) (fPt) SelectTransformationIndex←P1200) ); (* (( (ptr) gf←c0471)+93) ) = ( ((word) (fPt) InstantiateTypeface←P1260) ); (* (( (ptr) gf←c0471)+91) ) = ( ((word) (fPt) FDMask←P1320) ); (* (( (ptr) gf←c0471)+89) ) = ( ((word) (fPt) FDMakeCharMask←P1380) ); (* (( (ptr) gf←c0471)+87) ) = ( ((word) (fPt) FromStream←P1440) ); (* (( (ptr) gf←c0471)+85) ) = ( ((word) (fPt) GetExtents←P1500) ); (* (( (ptr) gf←c0471)+83) ) = ( ((word) (fPt) GetRealSeq←P1560) ); (* (( (ptr) gf←c0471)+81) ) = ( ((word) (fPt) GetTransformationSeq←P1620) ); (* (( (ptr) gf←c0471)+79) ) = ( ((word) (fPt) GetTransformation←P1680) ); (* (( (ptr) gf←c0471)+77) ) = ( ((word) (fPt) GetTypefaceCellSeq←P1740) ); (* (( (ptr) gf←c0471)+75) ) = ( ((word) (fPt) GetCharInfoRunSeq←P1800) ); (* (( (ptr) gf←c0471)+73) ) = ( ((word) (fPt) GetTypefaceCell←P1860) ); (* (( (ptr) gf←c0471)+71) ) = ( ((word) (fPt) GetOverflowCharInfoSeq←P1920) ); (* (( (ptr) gf←c0471)+69) ) = ( ((word) (fPt) GetVerboseCharInfo←P1980) ); (* (( (ptr) gf←c0471)+67) ) = ( ((word) (fPt) GetVEC←P2040) ); (* (( (ptr) gf←c0471)+65) ) = ( ((word) (fPt) GetPropList←P2100) ); (* (( (ptr) gf←c0471)+63) ) = ( ((word) (fPt) GetCharInfoRun←P2160) ); (* (( (ptr) gf←c0471)+61) ) = ( ((word) (fPt) GetCharRuns←P2220) ); (* (( (ptr) gf←c0471)+59) ) = ( ((word) (fPt) GetCARD32←P2280) ); (* (( (ptr) gf←c0471)+57) ) = ( ((word) (fPt) GetBYTE←P2340) ); (* (( (ptr) gf←c0471)+55) ) = ( ((word) (fPt) GetCount←P2400) ); (* (( (ptr) gf←c0471)+53) ) = ( ((word) (fPt) GetIdentifier←P2460) ); (* (( (ptr) gf←c0471)+51) ) = ( ((word) (fPt) GetInteger←P2520) ); (* (( (ptr) gf←c0471)+49) ) = ( ((word) (fPt) GetREAL←P2580) ); (* (( (ptr) gf←c0471)+12) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4); (* (( (ptr) gf←c0471)+13) ) = (word) XR←GetTypeIndex((word) &string5, 0, (word) &string6); (* (( (ptr) gf←c0471)+14) ) = (word) XR←GetTypeIndex((word) &string7, 0, (word) &string6); (* (( (ptr) gf←c0471)+19) ) = (word) XR←GetTypeIndex((word) &string8, 0, (word) &string6); (* (( (ptr) gf←c0471)+20) ) = (word) XR←GetTypeIndexS((word) (&string9)); (* (( (ptr) gf←c0471)+21) ) = (word) XR←GetTypeIndex((word) &string10, 0, (word) &string11); (* (( (ptr) gf←c0471)+22) ) = (word) XR←GetTypeIndex((word) &string12, 0, (word) &string13); (* (( (ptr) gf←c0471)+23) ) = (word) XR←GetTypeIndex((word) &string14, 0, (word) &string15); (* (( (ptr) gf←c0471)+25) ) = (word) XR←GetTypeIndex((word) &string16, 0, (word) &string17); (* (( (ptr) gf←c0471)+29) ) = (word) XR←GetTypeIndex((word) &string18, 0, (word) &string19); (* (( (ptr) gf←c0471)+30) ) = (word) XR←GetTypeIndexS((word) (&string20)); (* (( (ptr) gf←c0471)+31) ) = (word) XR←GetTypeIndexS((word) (&string21)); (* (( (ptr) gf←c0471)+32) ) = (word) XR←GetTypeIndex((word) &string22, 0, (word) &string23); (* (( (ptr) gf←c0471)+35) ) = (word) XR←GetTypeIndex((word) &string24, 0, (word) &string25); (* (( (ptr) gf←c0471)+36) ) = (word) XR←GetTypeIndex((word) &string26, 0, (word) &string15); (* (( (ptr) gf←c0471)+37) ) = (word) XR←GetTypeIndexS((word) (&string27)); (* (( (ptr) gf←c0471)+38) ) = (word) XR←GetTypeIndex((word) &string28, 0, (word) &string15); (* (( (ptr) gf←c0471)+39) ) = (word) XR←GetTypeIndex((word) &string29, 0, (word) &string15); (* (ptr) (( (bPt) gf←c0471)+160) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0471)+13) ), (word) &string30); (* (ptr) (( (bPt) gf←c0471)+164) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0471)+13) ), (word) &string31); (* (ptr) (( (bPt) gf←c0471)+168) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0471)+13) ), (word) &string32); (* (ptr) (( (bPt) gf←c0471)+172) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0471)+13) ), (word) &string33); (* (ptr) (( (bPt) gf←c0471)+176) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0471)+19) ), (word) &string34); (* (ptr) (( (bPt) gf←c0471)+180) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0471)+19) ), (word) &string35); (* (ptr) (( (bPt) gf←c0471)+184) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0471)+13) ), (word) &string35); (* (ptr) (( (bPt) gf←c0471)+188) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0471)+13) ), (word) &string36); (void) XR←DeclareGlobalFrame((word) "ImagerFDTypefaceImpl", &globalframe, (word) XR←GetTypeIndex((word) &string37, 0, (word) &string38) , (word) (( (bPt) gf←c0471)+540)/* var←c38904 */ ); var←c43608 = (word) XR←ImportInterface((word) "Atom", (word) XR←GetTypeIndexS((word) (&string39)), 16); (* (( (ptr) gf←c0471)+146)/* var←c42840 */ ) = var←c43608; (void) XR←ImportProcS(var←c43608, 67895555); var←c43608 = (word) XR←ImportInterface((word) "Imager", (word) XR←GetTypeIndexS((word) (&string40)), 84); (* (( (ptr) gf←c0471)+140)/* var←c39096 */ ) = var←c43608; (void) XR←ImportProcS(var←c43608, 526850); (void) XR←ImportProcS(var←c43608, 1326338); var←c43608 = (word) XR←ImportInterface((word) "ImagerBackdoor", (word) XR←GetTypeIndexS((word) (&string41)), 42); (* (( (ptr) gf←c0471)+143)/* var←c40888 */ ) = var←c43608; (void) XR←ImportProcS(var←c43608, 67899395); var←c43608 = (word) XR←ImportInterface((word) "ImagerError", (word) XR←GetTypeIndexS((word) (&string42)), 3); (* (( (ptr) gf←c0471)+144)/* var←c41016 */ ) = var←c43608; var←c43608 = (word) XR←ImportInterface((word) "ImagerSys", (word) XR←GetTypeIndexS((word) (&string43)), 15); (* (( (ptr) gf←c0471)+139)/* var←c39064 */ ) = var←c43608; (void) XR←ImportProcS(var←c43608, 67374081); var←c43608 = (word) XR←ImportInterface((word) "ImagerTransformation", (word) XR←GetTypeIndexS((word) (&string44)), 55); (* (( (ptr) gf←c0471)+137)/* var←c38936 */ ) = var←c43608; (void) XR←ImportProcS(var←c43608, 68681734); (void) XR←ImportProcS(var←c43608, 402927105); (void) XR←ImportProcS(var←c43608, 67635458); (void) XR←ImportProcS(var←c43608, 67383041); (void) XR←ImportProcS(var←c43608, 262401); (void) XR←ImportProcS(var←c43608, 67371521); (void) XR←ImportProcS(var←c43608, 67645698); (void) XR←ImportProcS(var←c43608, 67371777); var←c43608 = (word) XR←ImportInterface((word) "ImagerTypeface", (word) XR←GetTypeIndexS((word) (&string45)), 12); (* (( (ptr) gf←c0471)+138)/* var←c39032 */ ) = var←c43608; (void) XR←ImportProcS(var←c43608, 67634178); (void) XR←ImportProcS(var←c43608, 67371777); (void) XR←ImportProcS(var←c43608, 67895299); (void) XR←ImportProcS(var←c43608, 67635202); (void) XR←ImportProcS(var←c43608, 526082); var←c43608 = (word) XR←ImportInterface((word) "IO", (word) XR←GetTypeIndexS((word) (&string46)), 103); (* (( (ptr) gf←c0471)+141)/* var←c39256 */ ) = var←c43608; (void) XR←ImportProcS(var←c43608, 67917827); (void) XR←ImportProcS(var←c43608, 67372801); (void) XR←ImportProcS(var←c43608, 67377409); (void) XR←ImportProcS(var←c43608, 530434); (void) XR←ImportProcS(var←c43608, 68958724); var←c43608 = (word) XR←ImportInterface((word) "Real", (word) XR←GetTypeIndexS((word) (&string47)), 11); (* (( (ptr) gf←c0471)+147)/* var←c43576 */ ) = var←c43608; (void) XR←ImportProcS(var←c43608, 67633154); var←c43608 = (word) XR←ImportInterface((word) "RefTab", (word) XR←GetTypeIndexS((word) (&string48)), 16); (* (( (ptr) gf←c0471)+142)/* var←c40664 */ ) = var←c43608; (void) XR←ImportProcS(var←c43608, 67895555); (void) XR←ImportProcS(var←c43608, 788995); var←c43608 = (word) XR←ImportInterface((word) "RuntimeError", (word) XR←GetTypeIndexS((word) (&string49)), 27); (* (( (ptr) gf←c0471)+145)/* var←c41560 */ ) = var←c43608; var←c43608 = (word) XR←ExportInterface((word) "ImagerFDTypeface", (word) XR←GetTypeIndexS((word) (&string50)), 2); (* (( (ptr) gf←c0471)+148)/* var←c43640 */ ) = var←c43608; (void) XR←ExportProcS(var←c43608, (word) (( (bPt) gf←c0471)+348)/* var←c38136 */ , 67371009, (word) "FromStream"); (void) XR←ExportVar(var←c43608, 1, (word) (( (bPt) gf←c0471)+192)/* var←c37496 */ ); } static void ImagerFDTypefaceImpl←P0(formal←c077, formal←c074) word formal←c077; word formal←c074; { register ptr gf←c43672 = (ptr) &globalframe; /* ImagerFDTypefaceImpl: */ SOURCE(1342, 17795) /* moved to installation proc */ /* moved to installation proc */ SOURCE(8944, 56) { word pd51; pd51 = (* (( (ptr) (* (( (ptr) gf←c43672)+137)/* var←c38936 */ ))+7) ); (* (( (ptr) gf←c43672)+10)/* identity←v4176 */ ) = (word) ( *( (fPt) ((* (ptr) pd51 ))))((* (ptr) (&fc52) ), pd51); }; SOURCE(12068, 408) { word var←c38968; var←c38968 = XR←NewObject(68, (* (( (ptr) gf←c43672)+12) )); (* (ptr) var←c38968 ) = (* (( (ptr) gf←c43672)+46) ); (* (( (ptr) var←c38968)+2) ) = (word) (( (bPt) gf←c43672)+516)/* var←c38808 */ ; (* (( (ptr) var←c38968)+3) ) = (word) (( (bPt) gf←c43672)+508)/* var←c38776 */ ; (* (( (ptr) var←c38968)+4) ) = (word) (( (bPt) gf←c43672)+484)/* var←c38680 */ ; (* (( (ptr) var←c38968)+5) ) = (word) (( (bPt) gf←c43672)+476)/* var←c38648 */ ; (* (( (ptr) var←c38968)+6) ) = (word) (( (bPt) gf←c43672)+468)/* var←c38616 */ ; (* (( (ptr) var←c38968)+7) ) = (word) (( (bPt) gf←c43672)+460)/* var←c38584 */ ; (* (( (ptr) var←c38968)+8) ) = (word) (( (bPt) gf←c43672)+452)/* var←c38552 */ ; (* (( (ptr) var←c38968)+9) ) = (word) (( (bPt) gf←c43672)+428)/* var←c38456 */ ; (* (( (ptr) var←c38968)+10) ) = (word) (( (bPt) gf←c43672)+420)/* var←c38424 */ ; (* (( (ptr) var←c38968)+11) ) = (word) (( (bPt) gf←c43672)+444)/* var←c38520 */ ; (* (( (ptr) var←c38968)+12) ) = (word) (( (bPt) gf←c43672)+436)/* var←c38488 */ ; (* (( (ptr) var←c38968)+13) ) = (word) (( (bPt) gf←c43672)+364)/* var←c38200 */ ; (* (( (ptr) var←c38968)+14) ) = (word) (( (bPt) gf←c43672)+356)/* var←c38168 */ ; (* (( (ptr) var←c38968)+15) ) = XR←CheckProc(0); (* (( (ptr) gf←c43672)+11)/* fdClass←v4288 */ ) = var←c38968; }; SOURCE(19027, 110) { word var←c39000; { word pd53; pd53 = (* (( (ptr) (* (( (ptr) gf←c43672)+138)/* var←c39032 */ ))+12) ); var←c39000 = (word) ( *( (fPt) ((* (ptr) pd53 ))))((* (( (ptr) gf←c43672)+45) ), (word) (( (bPt) gf←c43672)+532)/* var←c38872 */ , pd53) ; }; { word pd54; pd54 = (* (( (ptr) (* (( (ptr) gf←c43672)+138)/* var←c39032 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd54 ))))(var←c39000, 1, pd54); }; }; } static word FDCreate←P60(formal←c0538) word formal←c0538; { W6 var←c43704; /* declaration of stream←v4956 skipped */ register ptr gf←c43736 = (ptr) &globalframe; word var←c5000; word data←v10064; var←c43704.f4/* stream←v4956 */ = formal←c0538; /* FDCreate: */ SOURCE(1864, 7914) SOURCE(1922, 48) { /* declaration of var←c01 skipped */ { word var←c0521; var←c0521 = (word) &var←c43704; (void) (word) XR←Enable(( ((word) (fPt) NoName←Q5208) ), ( ((word) (fPt) NoName←Q5628) ), var←c0521); }; data←v10064 = var←c43704.f5/* var←c01 */ ; }; SOURCE(2174, 16) { word pd55; pd55 = (* (( (ptr) (* (( (ptr) gf←c43736)+141)/* var←c39256 */ ))+28) ); (void) ( *( (fPt) ((* (ptr) pd55 ))))(var←c43704.f4/* stream←v4956 */ , 0, pd55); }; SOURCE(2192, 7586) { word var←c39448; var←c39448 = XR←NewObject(32, (* (( (ptr) gf←c43736)+25) )); (* (ptr) var←c39448 ) = (* (( (ptr) gf←c43736)+11)/* fdClass←v4288 */ ); (* (( (ptr) var←c39448)+1) ) = data←v10064; (* (( (ptr) var←c39448)+4) ) = 2147483647; return(var←c39448); }; } static word NoName←Q5208(formal←c0474) word formal←c0474; { SOURCE(1922, 48) (* (( (ptr) formal←c0474)+5) ) = (word) FromStream←P1440((* ((( (ptr) formal←c0474)+4)) )); return(0); } static word GetRun←P120(data←v5060, char←v5088) word data←v5060; word char←v5088; { word var←c5132; word set←v10152; /* GetRun: */ SOURCE(2268, 7510) SOURCE(2337, 26) set←v10152 = ((word) char←v5088 >> 8); SOURCE(2365, 36) if ((set←v10152 > 255)) { SOURCE(2389, 12) return(0); }; SOURCE(2403, 7375) { register word this←v10196; this←v10196 = (* ((( (ptr) data←v5060)+16)+BCK(set←v10152, 256)) ); lab←L100005: ; if ((this←v10196 != 0)) { } else { goto lab←L100002; }; SOURCE(2474, 7304) if (((char←v5088 & 0377) < (* (( (ptr) this←v10196)+1) ))) { SOURCE(2508, 12) return(0); }; SOURCE(2522, 7256) if (((char←v5088 & 0377) <= (* (( (ptr) this←v10196)+2) ))) { SOURCE(2557, 13) return(this←v10196); }; this←v10196 = (* (ptr) this←v10196 ); goto lab←L100005; lab←L100002: ; }; SOURCE(2581, 13) return(0); } static word FDContains←P180(self←v5204, char←v5232) word self←v5204; word char←v5232; { register ptr gf←c43768 = (ptr) &globalframe; word var←c5276; word data←v10240; /* FDContains: */ SOURCE(2598, 7180) SOURCE(2664, 30) data←v10240 = XR←Narrow((* (( (ptr) self←v5204)+1) ), (* (( (ptr) gf←c43768)+29) )); SOURCE(2696, 7082) return( (unsigned) ((word) GetRun←P120(data←v10240, char←v5232) != 0)); } static word FDNextChar←P240(self←v5336, char←v5364) word self←v5336; word char←v5364; { register ptr gf←c43800 = (ptr) &globalframe; word next←v5408; word data←v10284; word bump←v10312; /* FDNextChar: */ SOURCE(2735, 7043) SOURCE(2808, 30) data←v10284 = XR←Narrow((* (( (ptr) self←v5336)+1) ), (* (( (ptr) gf←c43800)+29) )); SOURCE(2840, 71) bump←v10312 = ( (char←v5364 == (word) -1) ? 0 : (char←v5364 + 1) ) ; SOURCE(2913, 6865) { word set←v37420; word code←v37448; { word x56; set←v37420 = (x56 = ((word) bump←v10312 >> 8), MIN( (unsigned) , x56, 255)); }; code←v37448 = (bump←v10312 & 0377); next←v5408 = (((word) set←v37420 << 8) + code←v37448); }; SOURCE(2965, 6813) lab←L100009: ; SOURCE(2968, 6810) { register word this←v10356; { word idx57; this←v10356 = (* ((( (ptr) data←v10284)+16)+( idx57 = (word) ((word) next←v5408 >> 8), BCK(idx57, 256) )) ); }; lab←L100013: ; if ((this←v10356 != 0)) { } else { goto lab←L100010; }; SOURCE(3050, 6728) if (((next←v5408 & 0377) < (* (( (ptr) this←v10356)+1) ))) { SOURCE(3085, 6693) { word var←c39544; word set←v37344; word code←v37372; set←v37344 = ((word) next←v5408 >> 8); code←v37372 = (* (( (ptr) this←v10356)+1) ); var←c39544 = (((word) set←v37344 << 8) + code←v37372); next←v5408 = var←c39544; }; SOURCE(3128, 6) return(next←v5408); }; SOURCE(3137, 6641) if (((next←v5408 & 0377) <= (* (( (ptr) this←v10356)+2) ))) { SOURCE(3172, 6) return(next←v5408); }; this←v10356 = (* (ptr) this←v10356 ); goto lab←L100013; lab←L100010: ; }; SOURCE(3189, 6589) if ((((word) next←v5408 >> 8) == 255)) { SOURCE(3224, 29) return( (word) -1); }; SOURCE(3255, 6523) { word var←c39576; word set←v37296; { word idx58; set←v37296 = ( idx58 = (word) (((word) next←v5408 >> 8) + 1), BCK(idx58, 16777216) ); }; var←c39576 = ((word) set←v37296 << 8); next←v5408 = var←c39576; }; goto lab←L100009; } static void FetchCharInfo←P300(formal←c0111, data←v5468, run←v5496, char←v5524) word formal←c0111; word data←v5468; word run←v5496; word char←v5524; { W3 var←c5580; word charInfoRun←v10400; /* FetchCharInfo: */ SOURCE(3307, 6471) SOURCE(3398, 54) charInfoRun←v10400 = (word) FetchCharInfoRun←P360(data←v5468, run←v5496); SOURCE(3454, 6324) { W3 var←c39640; { word var←c39608; { word x59; word x60; var←c39608 = (x59 = ((char←v5524 & 0377) - (* (( (ptr) run←v5496)+1) )), x60 = ((* (( (ptr) charInfoRun←v10400)+3) ) - 1), MIN((int)(word), x59, x60)); }; { word limit61; var←c39640 = (* (( (W3Pt) (( (ptr) charInfoRun←v10400)+4))+( limit61 = (* (( (ptr) charInfoRun←v10400)+3) ), BCK(var←c39608, limit61) )) ); }; }; var←c5580 = var←c39640; /* removed tail goto */ }; (* (W3Pt) formal←c0111 ) = var←c5580; return; } static word FetchCharInfoRun←P360(data←v5640, run←v5668) word data←v5640; word run←v5668; { word var←c5724; /* FetchCharInfoRun: */ SOURCE(3529, 6249) SOURCE(3613, 6165) { word var←c39672; word var←c39704; { word limit62; var←c39672 = ( limit62 = (* (( (ptr) run←v5668)+3) ), BCK(0, limit62) ); }; var←c39704 = (* (( (ptr) data←v5640)+13) ); { word idx63; word limit64; return((* ((( (ptr) var←c39704)+1)+( idx63 = (word) (* (( (W2Pt) (( (ptr) run←v5668)+4))+var←c39672) ).f1, limit64 = (* (ptr) var←c39704 ), BCK(idx63, limit64) )) )); }; }; } static void FDEscapement←P420(formal←c0135, self←v5784, char←v5812) word formal←c0135; word self←v5784; word char←v5812; { register ptr gf←c43832 = (ptr) &globalframe; W2 var←c5856; word data←v10444; word run←v10472; /* FDEscapement: */ SOURCE(3671, 6107) SOURCE(3738, 30) data←v10444 = XR←Narrow((* (( (ptr) self←v5784)+1) ), (* (( (ptr) gf←c43832)+29) )); SOURCE(3770, 41) run←v10472 = (word) GetRun←P120(data←v10444, char←v5812); SOURCE(3813, 5965) if ((run←v10472 != 0)) { SOURCE(3833, 5945) { W3 var←c39736; (void) FetchCharInfo←P300((word) &var←c39736, data←v10444, run←v10472, char←v5812); { word var←c39960; var←c39960 = var←c39736.f0; if ((var←c39960 == 0)) { { W3 info←v10528; info←v10528 = var←c39736; SOURCE(3907, 5871) { W2 var←c39864; { W2 var←c39768; { word var←c39800; var←c39800 = (* (( (ptr) data←v10444)+8) ); { /*1*/ word idx65; /*1*/ word limit66; /*1*/ var←c39768.f0 = (* ((( (ptr) var←c39800)+1)+( /*1*/ idx65 = (word) (unsigned) (* (( (bPt) &info←v10528)+8) ), /*1*/ limit66 = (* (ptr) var←c39800 ), /*1*/ BCK(idx65, limit66) /*1*/ )) ); /*1*/ }; }; { word var←c39832; var←c39832 = (* (( (ptr) data←v10444)+8) ); { /*1*/ word idx67; /*1*/ word limit68; /*1*/ var←c39768.f1 = (* ((( (ptr) var←c39832)+1)+( /*1*/ idx67 = (word) ( (((unsigned)(* (( (ptr) &info←v10528)+2) ) << 8) >> 8) ), /*1*/ limit68 = (* (ptr) var←c39832 ), /*1*/ BCK(idx67, limit68) /*1*/ )) ); /*1*/ }; }; var←c39864 = var←c39768; }; var←c5856 = var←c39864; goto lab←L100017; }; }; } else { if ((var←c39960 == 1)) { { W2 info←v10572; info←v10572 = (* (W2Pt) &var←c39736 ); SOURCE(4039, 5739) { W2 var←c39928; word var←c39896; { word idx69; word limit70; var←c39896 = (* (( (ptr) data←v10444)+12) ); var←c39928 = (* (W2Pt) (( (ptr) (* ((( (ptr) var←c39896)+1)+( /*1*/ idx69 = (word) info←v10572.f1, /*1*/ limit70 = (* (ptr) var←c39896 ), /*1*/ BCK(idx69, limit70) /*1*/ )) ))+4) ); }; var←c5856 = var←c39928; goto lab←L100017; }; }; } else { SOURCE(4118, 5) (void) XR←RaiseUnnamedError(); }; }; }; }; }; SOURCE(4128, 5650) if ((char←v5812 != 61642)) { SOURCE(4158, 5620) { W2 var←c40024; (void) FDEscapement←P420((word) &var←c40024, self←v5784, 61642); var←c5856 = var←c40024; goto lab←L100017; }; }; SOURCE(4203, 5575) var←c5856.f0 = (* (ptr) &fc71 ); var←c5856.f1 = (* (ptr) &fc72 ); /* removed tail goto */ lab←L100017: ; (* (W2Pt) formal←c0135 ) = var←c5856; return; } static word FDAmplified←P480(self←v5916, char←v5944) word self←v5916; word char←v5944; { register ptr gf←c43864 = (ptr) &globalframe; word var←c5988; word data←v10616; word run←v10644; /* FDAmplified: */ SOURCE(4226, 5552) SOURCE(4293, 30) data←v10616 = XR←Narrow((* (( (ptr) self←v5916)+1) ), (* (( (ptr) gf←c43864)+29) )); SOURCE(4325, 41) run←v10644 = (word) GetRun←P120(data←v10616, char←v5944); SOURCE(4368, 5410) if ((run←v10644 != 0)) { SOURCE(4386, 94) { word charInfoRun←v10700; SOURCE(4388, 54) charInfoRun←v10700 = (word) FetchCharInfoRun←P360(data←v10616, run←v10644); SOURCE(4444, 36) return( (unsigned) (*((int*)charInfoRun←v10700 + 1)<0)); }; }; SOURCE(4483, 14) return(0); } static word FDCorrection←P540(self←v6048, char←v6076) word self←v6048; word char←v6076; { register ptr gf←c43896 = (ptr) &globalframe; word var←c6120; word data←v10744; word run←v10772; /* FDCorrection: */ SOURCE(4503, 5275) SOURCE(4592, 30) data←v10744 = XR←Narrow((* (( (ptr) self←v6048)+1) ), (* (( (ptr) gf←c43896)+29) )); SOURCE(4624, 41) run←v10772 = (word) GetRun←P120(data←v10744, char←v6076); SOURCE(4667, 5111) if ((run←v10772 != 0)) { SOURCE(4685, 95) { word charInfoRun←v10828; SOURCE(4687, 54) charInfoRun←v10828 = (word) FetchCharInfoRun←P360(data←v10744, run←v10772); SOURCE(4743, 37) return(( (((unsigned)(* (( (ptr) charInfoRun←v10828)+1) ) << 1) >> 1) )); }; }; SOURCE(4783, 13) return(0); } static void FDBoundingBox←P600(formal←c0168, self←v6180, char←v6208) word formal←c0168; word self←v6180; word char←v6208; { register ptr gf←c43928 = (ptr) &globalframe; W4 var←c6252; word data←v10872; word run←v10900; /* FDBoundingBox: */ SOURCE(4860, 4918) SOURCE(4932, 30) data←v10872 = XR←Narrow((* (( (ptr) self←v6180)+1) ), (* (( (ptr) gf←c43928)+29) )); SOURCE(4964, 41) run←v10900 = (word) GetRun←P120(data←v10872, char←v6208); SOURCE(5007, 4771) if ((run←v10900 != 0)) { SOURCE(5027, 4751) { W3 var←c40088; (void) FetchCharInfo←P300((word) &var←c40088, data←v10872, run←v10900, char←v6208); { word var←c40376; var←c40376 = var←c40088.f0; if ((var←c40376 == 0)) { { W3 info←v10956; info←v10956 = var←c40088; SOURCE(5101, 4677) { W4 var←c40280; { W4 var←c40120; { word var←c40152; var←c40152 = (* (( (ptr) data←v10872)+4) ); { /*1*/ word idx73; /*1*/ word limit74; /*1*/ var←c40120.f0 = (* ((( (ptr) var←c40152)+1)+( /*1*/ idx73 = (word) (unsigned) (* (( (bPt) &info←v10956)+4) ), /*1*/ limit74 = (* (ptr) var←c40152 ), /*1*/ BCK(idx73, limit74) /*1*/ )) ); /*1*/ }; }; { word var←c40184; var←c40184 = (* (( (ptr) data←v10872)+5) ); { /*1*/ word idx75; /*1*/ word limit76; /*1*/ var←c40120.f1 = (* ((( (ptr) var←c40184)+1)+( /*1*/ idx75 = (word) (unsigned) (* (( (bPt) &info←v10956)+5) ), /*1*/ limit76 = (* (ptr) var←c40184 ), /*1*/ BCK(idx75, limit76) /*1*/ )) ); /*1*/ }; }; { word var←c40216; var←c40216 = (* (( (ptr) data←v10872)+6) ); { /*1*/ word idx77; /*1*/ word limit78; /*1*/ var←c40120.f2 = (* ((( (ptr) var←c40216)+1)+( /*1*/ idx77 = (word) (unsigned) (* (( (bPt) &info←v10956)+6) ), /*1*/ limit78 = (* (ptr) var←c40216 ), /*1*/ BCK(idx77, limit78) /*1*/ )) ); /*1*/ }; }; { word var←c40248; var←c40248 = (* (( (ptr) data←v10872)+7) ); { /*1*/ word idx79; /*1*/ word limit80; /*1*/ var←c40120.f3 = (* ((( (ptr) var←c40248)+1)+( /*1*/ idx79 = (word) (unsigned) (* (( (bPt) &info←v10956)+7) ), /*1*/ limit80 = (* (ptr) var←c40248 ), /*1*/ BCK(idx79, limit80) /*1*/ )) ); /*1*/ }; }; var←c40280 = var←c40120; }; var←c6252 = var←c40280; goto lab←L100018; }; }; } else { if ((var←c40376 == 1)) { { W2 info←v11000; info←v11000 = (* (W2Pt) &var←c40088 ); SOURCE(5338, 4440) { W4 var←c40344; word var←c40312; { word idx81; word limit82; var←c40312 = (* (( (ptr) data←v10872)+12) ); var←c40344 = (* (W4Pt) (* ((( (ptr) var←c40312)+1)+( /*1*/ idx81 = (word) info←v11000.f1, /*1*/ limit82 = (* (ptr) var←c40312 ), /*1*/ BCK(idx81, limit82) /*1*/ )) ) ); }; var←c6252 = var←c40344; goto lab←L100018; }; }; } else { SOURCE(5414, 5) (void) XR←RaiseUnnamedError(); }; }; }; }; }; SOURCE(5424, 4354) if ((char←v6208 != 61642)) { SOURCE(5454, 4324) { W4 var←c40440; (void) FDBoundingBox←P600((word) &var←c40440, self←v6180, 61642); var←c6252 = var←c40440; goto lab←L100018; }; }; SOURCE(5500, 4278) var←c6252.f0 = (* (ptr) &fc83 ); var←c6252.f1 = (* (ptr) &fc84 ); var←c6252.f2 = (* (ptr) &fc72 ); var←c6252.f3 = (* (ptr) &fc85 ); /* removed tail goto */ lab←L100018: ; (* (W4Pt) formal←c0168 ) = var←c6252; return; } static void FDFontBoundingBox←P660(formal←c0173, self←v6312) word formal←c0173; word self←v6312; { register ptr gf←c43960 = (ptr) &globalframe; W4 var←c6356; word data←v11044; /* FDFontBoundingBox: */ SOURCE(5577, 120) SOURCE(5640, 30) data←v11044 = XR←Narrow((* (( (ptr) self←v6312)+1) ), (* (( (ptr) gf←c43960)+29) )); SOURCE(5672, 25) var←c6356 = (* (W4Pt) data←v11044 ); /* removed tail goto */ (* (W4Pt) formal←c0173 ) = var←c6356; return; } static void FDKern←P720(formal←c0179, self←v6416, char←v6444, successor←v6472) word formal←c0179; word self←v6416; word char←v6444; word successor←v6472; { register ptr gf←c43992 = (ptr) &globalframe; word data←v11088; /* FDKern: */ SOURCE(5703, 4075) /* Return var split */ SOURCE(5775, 30) data←v11088 = XR←Narrow((* (( (ptr) self←v6416)+1) ), (* (( (ptr) gf←c43992)+29) )); SOURCE(5807, 3971) /* eliminated constant return field */ /* eliminated constant return field */ /* removed tail goto */ (* (( (ptr) formal←c0179)+1) ) = (* (ptr) &fc72 ); (* (ptr) formal←c0179 ) = (* (ptr) &fc72 ); return; } static word FDNextKern←P780(self←v6576, char←v6604, successor←v6632) word self←v6576; word char←v6604; word successor←v6632; { register ptr gf←c44024 = (ptr) &globalframe; word var←c6676; word data←v11132; /* FDNextKern: */ SOURCE(5828, 128) SOURCE(5906, 30) data←v11132 = XR←Narrow((* (( (ptr) self←v6576)+1) ), (* (( (ptr) gf←c44024)+29) )); SOURCE(5938, 18) return( (word) -1); } static word FDLigature←P840(self←v6736, char←v6764, successor←v6792) word self←v6736; word char←v6764; word successor←v6792; { register ptr gf←c44056 = (ptr) &globalframe; word var←c6836; word data←v11176; /* FDLigature: */ SOURCE(5962, 128) SOURCE(6040, 30) data←v11176 = XR←Narrow((* (( (ptr) self←v6736)+1) ), (* (( (ptr) gf←c44056)+29) )); SOURCE(6072, 18) return( (word) -1); } static word FDNextLigature←P900(self←v6896, char←v6924, successor←v6952) word self←v6896; word char←v6924; word successor←v6952; { register ptr gf←c44088 = (ptr) &globalframe; word var←c6996; word data←v11220; /* FDNextLigature: */ SOURCE(6096, 132) SOURCE(6178, 30) data←v11220 = XR←Narrow((* (( (ptr) self←v6896)+1) ), (* (( (ptr) gf←c44088)+29) )); SOURCE(6210, 18) return( (word) -1); } static word RawHash←P960(p←v7056, bytes←v7084) word p←v7056; word bytes←v7084; { word hash←v7140; /* RawHash: */ SOURCE(6234, 217) SOURCE(6234, 217) hash←v7140 = 31415; SOURCE(6344, 107) if ((p←v7056 != 0)) { SOURCE(6360, 91) lab←L100023: ; bytes←v7084 = (bytes←v7084 - 4); if (( (int)bytes←v7084 >= (int)0)) { } else { goto lab←L100021; }; SOURCE(6404, 27) hash←v7140 = ((hash←v7140 + ((word) hash←v7140 << 7)) + (* (ptr) p←v7056 )); SOURCE(6433, 18) p←v7056 = (p←v7056 + 4); goto lab←L100023; lab←L100021: ; }; SOURCE(6234, 217) return(hash←v7140); } static word TransformationHash←P1020(key←v24864) word key←v24864; { register ptr gf←c44120 = (ptr) &globalframe; word var←c24908; word m←v11264; /* TransformationHash: */ SOURCE(6466, 3312) SOURCE(6514, 31) m←v11264 = XR←Narrow(key←v24864, (* (( (ptr) gf←c44120)+30) )); SOURCE(6547, 3231) if ((m←v11264 == 0)) { SOURCE(6563, 17) return(13); } else { SOURCE(6580, 218) { W6 a←v11308; word p←v11336; word hash←v11364; SOURCE(6582, 86) { float tf86; word x87; float tf88; a←v11308.f0 = ( tf88 = FABS(( x87 = (* (ptr) m←v11264 ), *(float*)&x87 ), tf86), *(word*)&tf88 ); }; { float tf89; word x90; float tf91; a←v11308.f1 = ( tf91 = FABS(( x90 = (* (( (ptr) m←v11264)+1) ), *(float*)&x90 ), tf89), *(word*)&tf91 ); }; { float tf92; word x93; float tf94; a←v11308.f2 = ( tf94 = FABS(( x93 = (* (( (ptr) m←v11264)+2) ), *(float*)&x93 ), tf92), *(word*)&tf94 ); }; { float tf95; word x96; float tf97; a←v11308.f3 = ( tf97 = FABS(( x96 = (* (( (ptr) m←v11264)+3) ), *(float*)&x96 ), tf95), *(word*)&tf97 ); }; { float tf98; word x99; float tf100; a←v11308.f4 = ( tf100 = FABS(( x99 = (* (( (ptr) m←v11264)+4) ), *(float*)&x99 ), tf98), *(word*)&tf100 ); }; { float tf101; word x102; float tf103; a←v11308.f5 = ( tf103 = FABS(( x102 = (* (( (ptr) m←v11264)+5) ), *(float*)&x102 ), tf101), *(word*)&tf103 ); }; SOURCE(6670, 44) p←v11336 = (word) &a←v11308; SOURCE(6716, 66) hash←v11364 = (word) RawHash←P960(p←v11336, 24); SOURCE(6784, 14) return(hash←v11364); }; }; } static word TransformationEqual←P1080(key1←v24968, key2←v24996) word key1←v24968; word key2←v24996; { register ptr gf←c44152 = (ptr) &globalframe; word var←c25040; word a1←v11528; word a2←v11556; /* TransformationEqual: */ SOURCE(6805, 2973) SOURCE(6847, 33) a1←v11528 = XR←Narrow(key1←v24968, (* (( (ptr) gf←c44152)+30) )); SOURCE(6882, 33) a2←v11556 = XR←Narrow(key2←v24996, (* (( (ptr) gf←c44152)+30) )); SOURCE(6917, 2861) { word tc104; word pd105; if ( ( (a1←v11528 == 0) ? (a2←v11556 == 0) : 0 ) ) { tc104 = (word) (unsigned) 1; } else { pd105 = (* (( (ptr) (* (( (ptr) gf←c44152)+137)/* var←c38936 */ ))+53) ); tc104 = (word) (unsigned) (0 != (word) ( *( (fPt) ((* (ptr) pd105 ))))(a1←v11528, a2←v11556, pd105)); }; return(tc104); }; } static word TransformationIndexFromTransformation←P1140(formal←c0539, formal←c0540) word formal←c0539; word formal←c0540; { W9 var←c44184; /* declaration of data←v7200 skipped */ /* declaration of t←v7228 skipped */ register ptr gf←c44216 = (ptr) &globalframe; /* declaration of index←v7272 skipped */ /* declaration of var←c40632 skipped */ (* (( (ptr) &var←c44184)+4)/* data←v7200 */ ) = formal←c0539; (* (( (ptr) &var←c44184)+5)/* t←v7228 */ ) = formal←c0540; /* TransformationIndexFromTransformation: */ SOURCE(7038, 2740) { word tmpAddr106; tmpAddr106 = (word) (( (ptr) &var←c44184)+7)/* var←c40632 */ ; (* (ptr) tmpAddr106 ) = ( ((word) (fPt) Update←P3120) ); (* (( (ptr) tmpAddr106) + 1) ) = 1; }; SOURCE(7038, 2740) (* (( (ptr) &var←c44184)+6)/* index←v7272 */ ) = 0; SOURCE(8441, 1337) { word pd107; pd107 = (* (( (ptr) (* (( (ptr) gf←c44216)+137)/* var←c38936 */ ))+6) ); (* (( (ptr) &var←c44184)+5)/* t←v7228 */ ) = (word) ( *( (fPt) ((* (ptr) pd107 ))))((* ((( (ptr) &var←c44184)+5)/* t←v7228 */ ) ), pd107) ; }; SOURCE(8511, 66) { word pd108; pd108 = (* (( (ptr) (* (( (ptr) gf←c44216)+142)/* var←c40664 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd108 ))))((* (( (ptr) (* (( (ptr) &var←c44184)+4)/* data←v7200 */ ))+15) ), (* (( (ptr) &var←c44184)+5) /* t←v7228 */ ), (word) (( (bPt) &var←c44184)+28)/* var←c40632 */ , pd108); }; SOURCE(7038, 2740) return((* (( (ptr) &var←c44184)+6)/* index←v7272 */ )); } static void Update←P3120(formal←c0231, found←v34912, val←v34940, formal←c44312) word formal←c0231; word found←v34912; word val←v34940; word formal←c44312; { W7 var←c44248; register ptr gf←c44280 = (ptr) &globalframe; word op←v34984; word new←v35012; /* declaration of var←c40696 skipped */ formal←c44312 = (formal←c44312 - 28); var←c44248.f0 = formal←c44312; /* Update: */ SOURCE(7159, 2619) { word tmpAddr109; tmpAddr109 = (word) (( (ptr) &var←c44248)+4)/* var←c40696 */ ; (* (ptr) tmpAddr109 ) = ( ((word) (fPt) Right←P3324) ); (* (( (ptr) tmpAddr109) + 1) ) = 1; }; SOURCE(7159, 2619) op←v34984 = 0; SOURCE(7159, 2619) new←v35012 = 0; SOURCE(7191, 2587) if ((0 != found←v34912)) { SOURCE(7207, 29) { word idx110; (* (( (ptr) formal←c44312)+6) ) = ( idx110 = (* (ptr) XR←Narrow(val←v34940, (* (( (ptr) gf←c44280)+31) )) ), SGNCK(idx110) ); }; SOURCE(7238, 31) { word pd111; pd111 = (* (( (ptr) (* (( (ptr) gf←c44280)+137)/* var←c38936 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd111 ))))((* ((( (ptr) formal←c44312)+5)) ), pd111); }; } else { SOURCE(7327, 1108) { word closeMatch←v11656 = 0; word deviceToClient←v11684; SOURCE(7355, 66) { word pd112; pd112 = (* (( (ptr) (* (( (ptr) gf←c44280)+137)/* var←c38936 */ ))+51) ); deviceToClient←v11684 = (word) ( *( (fPt) ((* (ptr) pd112 ))))((* ((( (ptr) formal←c44312)+5)) ), pd112); }; SOURCE(7423, 2355) { /* declaration of pass←v11728 skipped */ var←c44248.f6/* pass←v11728 */ = 0; lab←L100028: ; if ((0 == closeMatch←v11656)) { } else { goto lab←L100025; }; SOURCE(7690, 2088) { register word i←v11920 = 0; register word noName←c40728; noName←c40728 = (* (ptr) (* (( (ptr) (* (( (ptr) formal←c44312)+4) ))+9) ) ); if ((i←v11920 >= noName←c40728)) { goto lab←L100029; }; lab←L100032: ; if ((0 == closeMatch←v11656)) { } else { goto lab←L100029; }; { word charToDevice←v11964; SOURCE(7767, 66) { word var←c40760; var←c40760 = (* (( (ptr) (* (( (ptr) formal←c44312)+4) ))+9) ); { word limit113; charToDevice←v11964 = (* ((( (ptr) var←c40760)+1)+( /*1*/ limit113 = (* (ptr) var←c40760 ), /*1*/ BCK(i←v11920, limit113) /*1*/ )) ); }; }; SOURCE(7835, 1943) if ((charToDevice←v11964 != 0)) { SOURCE(7862, 385) { word composite←v12008; W6 f←v12036; word var←c40792; word var←c40824; SOURCE(7864, 85) { word pd114; pd114 = (* (( (ptr) (* (( (ptr) gf←c44280)+137)/* var←c38936 */ ))+13) ); composite←v12008 = (word) ( *( (fPt) ((* (ptr) pd114 ))))(charToDevice←v11964, deviceToClient←v11684, pd114); }; SOURCE(7951, 87) { word pd115; pd115 = (* (( (ptr) (* (( (ptr) gf←c44280)+137)/* var←c38936 */ ))+50) ); (void) ( *( (fPt) ((* (ptr) pd115 ))))((word) &f←v12036, composite←v12008, pd115); }; SOURCE(8040, 39) { word pd116; pd116 = (* (( (ptr) (* (( (ptr) gf←c44280)+137)/* var←c38936 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd116 ))))(composite←v12008, pd116); }; SOURCE(8081, 15) composite←v12008 = 0; SOURCE(8098, 1680) { word tc117; word tc118; word x122; word x123; word x124; word x125; word x129; word x130; word x131; word x132; if ( ( (0 != (word) Right←P3324(f←v12036.f0, (word) (( (bPt) &var←c44248)+16)/* var←c40696 */ )) ? (0 != (word) Right←P3324( /*1*/ f←v12036.f3, (word) (( (bPt) &var←c44248)+16)/* var←c40696 */ )) : 0 ) ) { /*1*/ { /*1*/ float tf119; /*1*/ word x120; /*1*/ float tf121; /*1*/ var←c40792 = ( /*1*/ tf121 = FABS(( /*1*/ x120 = f←v12036.f1, *(float*)&x120 /*1*/ ), tf119), *(word*)&tf121 /*1*/ ); /*1*/ }; /*1*/ if ((( /*1*/ x122 = var←c40792, *(float*)&x122 /*1*/ ) >= ( /*1*/ x123 = (* (( (ptr) gf←c44280)+8)/* minScale←v4064 */ ), *(float*)&x123 /*1*/ ))) { /*1*/ tc118 = (word) (( /*1*/ x124 = var←c40792, *(float*)&x124 /*1*/ ) <= ( /*1*/ x125 = (* (( (ptr) gf←c44280)+9)/* maxScale←v4092 */ ), *(float*)&x125 /*1*/ )); /*1*/ } /*1*/ else { /*1*/ tc118 = (word) 0; /*1*/ }; /*1*/ } else { /*1*/ tc118 = (word) 0; /*1*/ }; if (tc118) { /*1*/ { /*1*/ float tf126; /*1*/ word x127; /*1*/ float tf128; /*1*/ var←c40824 = ( /*1*/ tf128 = FABS(( /*1*/ x127 = f←v12036.f2, *(float*)&x127 /*1*/ ), tf126), *(word*)&tf128 /*1*/ ); /*1*/ }; /*1*/ if ((( /*1*/ x129 = var←c40824, *(float*)&x129 /*1*/ ) >= ( /*1*/ x130 = (* (( (ptr) gf←c44280)+8)/* minScale←v4064 */ ), *(float*)&x130 /*1*/ ))) { /*1*/ tc117 = (word) (( /*1*/ x131 = var←c40824, *(float*)&x131 /*1*/ ) <= ( /*1*/ x132 = (* (( (ptr) gf←c44280)+9)/* maxScale←v4092 */ ), *(float*)&x132 /*1*/ )); /*1*/ } /*1*/ else { /*1*/ tc117 = (word) 0; /*1*/ }; /*1*/ } else { /*1*/ tc117 = (word) 0; /*1*/ }; if (tc117) { SOURCE(8214, 17) /*1*/ closeMatch←v11656 = 1; SOURCE(8233, 9) /*1*/ (* (( (ptr) formal←c44312)+6) ) = i←v11920; /*1*/ }; }; }; }; }; i←v11920 = (i←v11920 + 1); if ((i←v11920 < noName←c40728)) { goto lab←L100032; }; lab←L100029: ; }; if ((var←c44248.f6/* pass←v11728 */ >= 1)) { goto lab←L100025; }; var←c44248.f6/* pass←v11728 */ = (var←c44248.f6/* pass←v11728 */ + 1); goto lab←L100028; lab←L100025: ; }; SOURCE(8268, 44) { word pd133; pd133 = (* (( (ptr) (* (( (ptr) gf←c44280)+137)/* var←c38936 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd133 ))))(deviceToClient←v11684, pd133); }; SOURCE(8314, 20) deviceToClient←v11684 = 0; SOURCE(8336, 22) { word var←c40856; var←c40856 = XR←NewObject(4, (* (( (ptr) gf←c44280)+31) )); (* (ptr) var←c40856 ) = (* (( (ptr) formal←c44312)+6) ); new←v35012 = var←c40856; }; SOURCE(8360, 10) op←v34984 = 1; }; }; /* removed tail goto */ (* (ptr) formal←c0231 ) = op←v34984; (* (( (ptr) formal←c0231)+1) ) = new←v35012; return; } static word Right←P3324(angle←v11848, formal←c44344) word angle←v11848; word formal←c44344; { word var←c11892; formal←c44344 = (formal←c44344 - 16); /* Right: */ SOURCE(7467, 13) SOURCE(7512, 37) if (((* (( (ptr) formal←c44344)+6) ) == 0)) { SOURCE(7529, 20) { word x134; word x135; return( (unsigned) (( x134 = angle←v11848, *(float*)&x134 ) == ( x135 = (* (ptr) &fc72 ), *(float*)&x135 ))); }; }; SOURCE(7551, 47) lab←L100035: ; { word x136; word x137; if ((( x136 = angle←v11848, *(float*)&x136 ) < ( x137 = (* (ptr) &fc72 ), *(float*)&x137 ))) { } else { goto lab←L100033; }; }; SOURCE(7570, 28) { word x138; word x140; *(float*)&angle←v11848 = ( x138 = angle←v11848, *(float*)&x138 ) + ( x140 = (* (ptr) &fc139 ), *(float*)&x140 ); }; goto lab←L100035; lab←L100033: ; SOURCE(7600, 50) lab←L100038: ; { word x141; word x143; if ((( x141 = angle←v11848, *(float*)&x141 ) > ( x143 = (* (ptr) &fc142 ), *(float*)&x143 ))) { } else { goto lab←L100036; }; }; SOURCE(7622, 28) { word x144; word x145; *(float*)&angle←v11848 = ( x144 = angle←v11848, *(float*)&x144 ) - ( x145 = (* (ptr) &fc139 ), *(float*)&x145 ); }; goto lab←L100038; lab←L100036: ; SOURCE(7652, 35) { float tf146; word x147; word x149; return( (unsigned) (FABS(( x147 = angle←v11848, *(float*)&x147 ), tf146) <= ( x149 = (* (ptr) &fc148 ), *(float*)&x149 ))); }; } static word SelectTransformationIndex←P1200(data←v7332, formal←c0541) word data←v7332; word formal←c0541; { W7 var←c44376; /* declaration of context←v7360 skipped */ register ptr gf←c44408 = (ptr) &globalframe; word index←v7404; var←c44376.f4/* context←v7360 */ = formal←c0541; /* SelectTransformationIndex: */ SOURCE(8583, 1195) SOURCE(8583, 1195) index←v7404 = 0; SOURCE(8696, 1082) SOURCE(8698, 114) { word t←v12080; SOURCE(8698, 114) { /* declaration of var←c02 skipped */ var←c44376.f5/* var←c02 */ = (* (( (ptr) (* (( (ptr) gf←c44408)+143)/* var←c40888 */ ))+20) ); { /* declaration of var←c03 skipped */ { word var←c04; { word var←c0522; var←c0522 = (word) &var←c44376; var←c04 = (word) XR←Enable(( ((word) (fPt) NoName←Q5268) ), ( ((word) (fPt) NoName←Q5568) ), var←c0522); }; if ((var←c04 == 2)) { goto lab←L100039; }; }; t←v12080 = var←c44376.f6/* var←c03 */ ; }; }; SOURCE(8823, 955) index←v7404 = (word) TransformationIndexFromTransformation←P1140(data←v7332, t←v12080); SOURCE(8888, 31) { word pd150; pd150 = (* (( (ptr) (* (( (ptr) gf←c44408)+137)/* var←c38936 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd150 ))))(t←v12080, pd150); }; }; goto lab←L100042; lab←L100039: ; lab←L100042: ; SOURCE(8583, 1195) return(index←v7404); } static word NoName←Q5268(formal←c0493) word formal←c0493; { SOURCE(8698, 114) { word pd151; pd151 = (* (( (ptr) formal←c0493)+5) ); (* (( (ptr) formal←c0493)+6) ) = (word) ( *( (fPt) ((* (ptr) pd151 ))))((* (( (ptr) formal←c0493)+4) ), 0, 3, pd151); }; return(0); } static word InstantiateTypeface←P1260(typefaceCell←v7464) word typefaceCell←v7464; { W11 var←c44440; register ptr gf←c44472 = (ptr) &globalframe; word typeface←v7508; /* InstantiateTypeface: */ SOURCE(9003, 1001) SOURCE(9003, 1001) typeface←v7508 = 0; SOURCE(9315, 27) if ((typefaceCell←v7464 == 0)) { SOURCE(9342, 5) (void) XR←RaiseUnnamedError(); }; SOURCE(9397, 381) { word var←c40920; SOURCE(9096, 77) (void) (XR←MonitorEntry((word) (( (bPt) gf←c44472)+16)/* LOCK←v3280 */ )); SOURCE(9143, 30) var←c40920 = (* (( (ptr) typefaceCell←v7464)+1) ); (void) (XR←MonitorExit((word) (( (bPt) gf←c44472)+16)/* LOCK←v3280 */ )); typeface←v7508 = var←c40920; }; SOURCE(9417, 587) if ((typeface←v7508 == 0)) { SOURCE(9440, 566) { /* declaration of errorDesc←v12272 skipped */ /* declaration of version←v12300 skipped */ SOURCE(9442, 44) (* (( (ptr) &var←c44440)+4) ) = 0; (* (( (ptr) &var←c44440)+5) ) = 0; (* (( (ptr) &var←c44440)+6) ) = 0; SOURCE(9488, 129) (* (( (ptr) &var←c44440)+7)/* version←v12300 */ ) = XR←NewObject(8, (* (( (ptr) gf←c44472)+32) )); (* (ptr) (* (( (ptr) &var←c44440)+7)/* version←v12300 */ ) ) = (* (( (ptr) typefaceCell←v7464)+2) ); (* (( (ptr) (* (( (ptr) &var←c44440)+7)/* version←v12300 */ ))+1) ) = (* (( (ptr) typefaceCell←v7464)+3) ); SOURCE(9619, 159) SOURCE(9619, 159) { /* declaration of var←c05 skipped */ /* declaration of var←c06 skipped */ (* (( (ptr) &var←c44440)+8)/* var←c05 */ ) = (* (ptr) typefaceCell←v7464 ); (* (( (ptr) &var←c44440)+9)/* var←c06 */ ) = (* (( (ptr) (* (( (ptr) gf←c44472)+138)/* var←c39032 */ ))+4) ); { /* declaration of var←c07 skipped */ { word var←c08; { word var←c0523; var←c0523 = (word) &var←c44440; var←c08 = (word) XR←Enable(( ((word) (fPt) NoName←Q5328) ), ( ((word) (fPt) NoName←Q5508) ), var←c0523); }; if ((var←c08 == 3)) { goto lab←L100045; }; }; typeface←v7508 = (* (( (ptr) &var←c44440)+10)/* var←c07 */ ); }; }; lab←L100045: ; SOURCE(9824, 121) if ((typeface←v7508 == 0)) { SOURCE(9849, 96) { word pd152; pd152 = (* (( (ptr) (* (( (ptr) gf←c44472)+138)/* var←c39032 */ ))+4) ); typeface←v7508 = (word) ( *( (fPt) ((* (ptr) pd152 ))))((* (ptr) typefaceCell←v7464 ), 0, 0, pd152); }; }; SOURCE(9997, 7) SOURCE(9997, 7) (void) (XR←MonitorEntry((word) (( (bPt) gf←c44472)+16)/* LOCK←v3280 */ )); SOURCE(9205, 107) if (((* (( (ptr) typefaceCell←v7464)+1) ) == 0)) { SOURCE(9241, 38) (* (( (ptr) typefaceCell←v7464)+1) ) = typeface←v7508; } else { SOURCE(9279, 33) typeface←v7508 = (* (( (ptr) typefaceCell←v7464)+1) ); }; (void) (XR←MonitorExit((word) (( (bPt) gf←c44472)+16)/* LOCK←v3280 */ )); }; }; SOURCE(9003, 1001) return(typeface←v7508); } static word NoName←Q5328(formal←c0495) word formal←c0495; { SOURCE(9619, 159) { word pd153; pd153 = (* (( (ptr) formal←c0495)+9) ); (* (( (ptr) formal←c0495)+10) ) = (word) ( *( (fPt) ((* (ptr) pd153 ))))((* (( (ptr) formal←c0495)+8) ), 0, (* (( (ptr) formal←c0495)+7) ), pd153); }; return(0); } static void FDMask←P1320(self←v7568, char←v7596, context←v7624) word self←v7568; word char←v7596; word context←v7624; { register ptr gf←c44504 = (ptr) &globalframe; word data←v12344; word run←v12372; /* FDMask: */ SOURCE(10013, 949) SOURCE(10085, 30) data←v12344 = XR←Narrow((* (( (ptr) self←v7568)+1) ), (* (( (ptr) gf←c44504)+29) )); SOURCE(10117, 41) run←v12372 = (word) GetRun←P120(data←v12344, char←v7596); SOURCE(10160, 674) if ((run←v12372 != 0)) { SOURCE(10178, 658) { word ti←v12428; word typefaceCell←v12456; word charInfoRun←v12484; word placement←v12512; word code←v12540; word typeface←v12568; SOURCE(10180, 66) ti←v12428 = (word) SelectTransformationIndex←P1200(data←v12344, context←v7624); SOURCE(10248, 72) { word var←c41048; word var←c41080; { word limit154; var←c41048 = ( limit154 = (* (( (ptr) run←v12372)+3) ), BCK(ti←v12428, limit154) ); }; var←c41080 = (* (( (ptr) data←v12344)+10) ); { word idx155; word limit156; typefaceCell←v12456 = (* ((( (ptr) var←c41080)+1)+( idx155 = (word) (* (( (W2Pt) (( (ptr) run←v12372)+4))+var←c41048) ).f0, limit156 = (* (ptr) var←c41080 ), BCK(idx155, limit156) )) ); }; }; SOURCE(10322, 72) { word var←c41112; word var←c41144; { word limit157; var←c41112 = ( limit157 = (* (( (ptr) run←v12372)+3) ), BCK(ti←v12428, limit157) ); }; var←c41144 = (* (( (ptr) data←v12344)+13) ); { word idx158; word limit159; charInfoRun←v12484 = (* ((( (ptr) var←c41144)+1)+( idx158 = (word) (* (( (W2Pt) (( (ptr) run←v12372)+4))+var←c41112) ).f1, limit159 = (* (ptr) var←c41144 ), BCK(idx158, limit159) )) ); }; }; SOURCE(10396, 84) { word var←c41176; var←c41176 = (* (( (ptr) data←v12344)+11) ); { word idx160; word limit161; placement←v12512 = (* ((( (ptr) var←c41176)+1)+( idx160 = (* (( (ptr) charInfoRun←v12484)+2) ), limit161 = (* (ptr) var←c41176 ), BCK(idx160, limit161) )) ); }; }; SOURCE(10482, 48) code←v12540 = (char←v7596 + (* (ptr) charInfoRun←v12484 )); SOURCE(10532, 54) typeface←v12568 = (word) InstantiateTypeface←P1260(typefaceCell←v12456); SOURCE(10588, 84) if ((typeface←v12568 == 0)) { SOURCE(10613, 50) { W4 var←c41208; var←c41208.f0 = (* (ptr) &fc162 ); var←c41208.f1 = (* (ptr) &fc72 ); var←c41208.f2 = (* (ptr) &fc163 ); var←c41208.f3 = (* (ptr) &fc85 ); { word pd164; pd164 = (* (( (ptr) (* (( (ptr) gf←c44504)+140)/* var←c39096 */ ))+65) ); (void) ( *( (fPt) ((* (ptr) pd164 ))))(context←v7624, var←c41208, pd164); }; }; SOURCE(10665, 7) return; }; SOURCE(10675, 96) { word pd165; pd165 = (* (( (ptr) (* (( (ptr) gf←c44504)+137)/* var←c38936 */ ))+53) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd165 ))))(placement←v12512, (* (( (ptr) gf←c44504)+10)/* identity←v4176 */ ), pd165) )) { SOURCE(10737, 34) { word pd166; pd166 = (* (( (ptr) (* (( (ptr) gf←c44504)+140)/* var←c39096 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd166 ))))(context←v7624, placement←v12512, pd166); }; }; }; SOURCE(10777, 49) { word pd167; pd167 = (* (( (ptr) (* (ptr) typeface←v12568 ))+13) ); (void) ( *( (fPt) ((* (ptr) pd167 ))))(typeface←v12568, code←v12540, context←v7624, pd167); }; SOURCE(10828, 6) return; }; }; SOURCE(10839, 123) if ((char←v7596 != 61642)) { SOURCE(10869, 43) (void) FDMask←P1320(self←v7568, 61642, context←v7624); } else { SOURCE(10912, 50) { W4 var←c41240; var←c41240.f0 = (* (ptr) &fc162 ); var←c41240.f1 = (* (ptr) &fc72 ); var←c41240.f2 = (* (ptr) &fc163 ); var←c41240.f3 = (* (ptr) &fc85 ); { word pd168; pd168 = (* (( (ptr) (* (( (ptr) gf←c44504)+140)/* var←c39096 */ ))+65) ); (void) ( *( (fPt) ((* (ptr) pd168 ))))(context←v7624, var←c41240, pd168); }; }; }; } static word FDMakeCharMask←P1380(parameters←v7684, font←v7712, char←v7740) word parameters←v7684; word font←v7712; word char←v7740; { register ptr gf←c44536 = (ptr) &globalframe; word var←c7784; word self←v12612; word data←v12640; word run←v12668; /* FDMakeCharMask: */ SOURCE(10968, 1088) SOURCE(10968, 1088) var←c7784 = 0; SOURCE(11111, 54) { word pd169; pd169 = (* (( (ptr) (* (( (ptr) gf←c44536)+138)/* var←c39032 */ ))+7) ); self←v12612 = (word) ( *( (fPt) ((* (ptr) pd169 ))))(font←v7712, pd169); }; SOURCE(11167, 30) data←v12640 = XR←Narrow((* (( (ptr) self←v12612)+1) ), (* (( (ptr) gf←c44536)+29) )); SOURCE(11199, 41) run←v12668 = (word) GetRun←P120(data←v12640, char←v7740); SOURCE(11242, 814) if ((run←v12668 != 0)) { SOURCE(11260, 801) { word ti←v12724; word typefaceCell←v12752; word typeface←v12780; SOURCE(11262, 88) ti←v12724 = (word) TransformationIndexFromTransformation←P1140(data←v12640, (* (ptr) font←v7712 )); SOURCE(11352, 72) { word var←c41272; word var←c41304; { word limit170; var←c41272 = ( limit170 = (* (( (ptr) run←v12668)+3) ), BCK(ti←v12724, limit170) ); }; var←c41304 = (* (( (ptr) data←v12640)+10) ); { word idx171; word limit172; typefaceCell←v12752 = (* ((( (ptr) var←c41304)+1)+( idx171 = (word) (* (( (W2Pt) (( (ptr) run←v12668)+4))+var←c41272) ).f0, limit172 = (* (ptr) var←c41304 ), BCK(idx171, limit172) )) ); }; }; SOURCE(11426, 54) typeface←v12780 = (word) InstantiateTypeface←P1260(typefaceCell←v12752); SOURCE(11482, 574) if ( ( (typeface←v12780 != 0) ? ((* (( (ptr) (* (ptr) typeface←v12780 ))+14) ) != 0) : 0 ) ) { SOURCE(11543, 515) { word charInfoRun←v12824; word placement←v12852; word code←v12880; word charToClient←v12908; word innerFont←v12936; SOURCE(11545, 72) { word var←c41336; word var←c41368; { word limit173; var←c41336 = ( limit173 = (* (( (ptr) run←v12668)+3) ), BCK(ti←v12724, limit173) ); }; var←c41368 = (* (( (ptr) data←v12640)+13) ); { word idx174; word limit175; charInfoRun←v12824 = (* ((( (ptr) var←c41368)+1)+( idx174 = (word) (* (( (W2Pt) (( (ptr) run←v12668)+4))+var←c41336) ).f1, limit175 = (* (ptr) var←c41368 ), BCK(idx174, limit175) )) ); }; }; SOURCE(11619, 84) { word var←c41400; var←c41400 = (* (( (ptr) data←v12640)+11) ); { word idx176; word limit177; placement←v12852 = (* ((( (ptr) var←c41400)+1)+( idx176 = (* (( (ptr) charInfoRun←v12824)+2) ), limit177 = (* (ptr) var←c41400 ), BCK(idx176, limit177) )) ); }; }; SOURCE(11705, 48) code←v12880 = (char←v7740 + (* (ptr) charInfoRun←v12824 )); SOURCE(11755, 88) { word pd178; pd178 = (* (( (ptr) (* (( (ptr) gf←c44536)+137)/* var←c38936 */ ))+13) ); charToClient←v12908 = (word) ( *( (fPt) ((* (ptr) pd178 ))))(placement←v12852, (* (ptr) font←v7712 ), pd178); }; SOURCE(11845, 76) { word pd179; pd179 = (* (( (ptr) (* (( (ptr) gf←c44536)+138)/* var←c39032 */ ))+8) ); innerFont←v12936 = (word) ( *( (fPt) ((* (ptr) pd179 ))))(typeface←v12780, charToClient←v12908, pd179); }; SOURCE(11923, 42) { word pd180; pd180 = (* (( (ptr) (* (( (ptr) gf←c44536)+137)/* var←c38936 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd180 ))))(charToClient←v12908, pd180); }; SOURCE(11967, 18) charToClient←v12908 = 0; SOURCE(11987, 69) { word pd181; pd181 = (* (( (ptr) (* (ptr) typeface←v12780 ))+14) ); return((word) ( *( (fPt) ((* (ptr) pd181 ))))(parameters←v7684, innerFont←v12936, code←v12880, pd181)); }; }; }; }; }; SOURCE(10968, 1088) return(var←c7784); } static word FromStream←P1440(formal←c0542) word formal←c0542; { W8 var←c44568; /* declaration of stream←v7932 skipped */ register ptr gf←c44600 = (ptr) &globalframe; word var←c7976; /* declaration of var←c41464 skipped */ /* declaration of data←v12980 skipped */ var←c44568.f4/* stream←v7932 */ = formal←c0542; /* FromStream: */ SOURCE(12546, 1260) { word tmpAddr182; tmpAddr182 = (word) (( (ptr) &var←c44568)+5)/* var←c41464 */ ; (* (ptr) tmpAddr182 ) = ( ((word) (fPt) Inner←P3888) ); (* (( (ptr) tmpAddr182) + 1) ) = 1; }; SOURCE(12609, 25) var←c44568.f7/* data←v12980 */ = XR←NewObject(1088, (* (( (ptr) gf←c44600)+29) )); SOURCE(13535, 94) { word pd183; pd183 = (* (( (ptr) (* (( (ptr) gf←c44600)+142)/* var←c40664 */ ))+5) ); (* (( (ptr) var←c44568.f7/* data←v12980 */ )+15) ) = (word) ( *( (fPt) ((* (ptr) pd183 ))))(17, (word) (( (bPt) gf←c44600)+396) /* var←c38328 */ , (word) (( (bPt) gf←c44600)+404)/* var←c38360 */ , pd183); }; SOURCE(13631, 156) { word var←c0524; var←c0524 = (word) &var←c44568; (void) (word) XR←Enable(( ((word) (fPt) NoName←Q5388) ), ( ((word) (fPt) NoName←Q5448) ), var←c0524); }; SOURCE(13792, 14) return(var←c44568.f7/* data←v12980 */ ); } static word NoName←Q5388(formal←c0499) word formal←c0499; { SOURCE(13631, 156) (void) Inner←P3888((word) ((( (bPt) formal←c0499)+20))); return(0); } static void Inner←P3888(formal←c44664) word formal←c44664; { register ptr gf←c44632 = (ptr) &globalframe; word nSets←v13068 = 0; formal←c44664 = (formal←c44664 - 20); /* Inner: */ SOURCE(12636, 885) SOURCE(12668, 69) if (((word) GetCARD32←P2280((* ((( (ptr) formal←c44664)+4)) )) != 436038147)) { SOURCE(12705, 32) { W2 var←c0286; (* (ptr) (word) &var←c0286 ) = (* (( (ptr) gf←c44632)+40) ); (* (( (ptr) (word) &var←c0286) + 1) ) = 0; (void) XR←RaiseError((word) (( (bPt) gf←c44632)+192)/* var←c37496 */ , (word) &var←c0286); }; }; SOURCE(12739, 37) { W4 var←c41624; (void) GetExtents←P1500((word) &var←c41624, (* (( (ptr) formal←c44664)+4) )); (* (W4Pt) (* (( (ptr) formal←c44664)+7) ) ) = var←c41624; }; SOURCE(12778, 43) { word var←c41656; var←c41656 = (word) GetRealSeq←P1560((* ((( (ptr) formal←c44664)+4)) )); (* (( (ptr) (* (( (ptr) formal←c44664)+7) ))+4) ) = var←c41656; }; SOURCE(12823, 44) { word var←c41688; var←c41688 = (word) GetRealSeq←P1560((* ((( (ptr) formal←c44664)+4)) )); (* (( (ptr) (* (( (ptr) formal←c44664)+7) ))+5) ) = var←c41688; }; SOURCE(12869, 40) { word var←c41720; var←c41720 = (word) GetRealSeq←P1560((* ((( (ptr) formal←c44664)+4)) )); (* (( (ptr) (* (( (ptr) formal←c44664)+7) ))+6) ) = var←c41720; }; SOURCE(12911, 39) { word var←c41752; var←c41752 = (word) GetRealSeq←P1560((* ((( (ptr) formal←c44664)+4)) )); (* (( (ptr) (* (( (ptr) formal←c44664)+7) ))+7) ) = var←c41752; }; SOURCE(12952, 43) { word var←c41784; var←c41784 = (word) GetRealSeq←P1560((* ((( (ptr) formal←c44664)+4)) )); (* (( (ptr) (* (( (ptr) formal←c44664)+7) ))+8) ) = var←c41784; }; SOURCE(12997, 63) { word var←c41816; var←c41816 = (word) GetTransformationSeq←P1620((* ((( (ptr) formal←c44664)+4)) )); (* (( (ptr) (* (( (ptr) formal←c44664)+7) ))+9) ) = var←c41816; }; SOURCE(13062, 49) { word var←c41848; var←c41848 = (word) GetTypefaceCellSeq←P1740((* ((( (ptr) formal←c44664)+4)) )); (* (( (ptr) (* (( (ptr) formal←c44664)+7) ))+10) ) = var←c41848; }; SOURCE(13113, 60) { word var←c41880; var←c41880 = (word) GetTransformationSeq←P1620((* ((( (ptr) formal←c44664)+4)) )); (* (( (ptr) (* (( (ptr) formal←c44664)+7) ))+11) ) = var←c41880; }; SOURCE(13175, 86) { word var←c41912; var←c41912 = (word) GetCharInfoRunSeq←P1800((* (( (ptr) formal←c44664)+4) ), (* (ptr) (* (( (ptr) (* (( (ptr) formal←c44664)+7) ))+9) ) )); (* (( (ptr) (* (( (ptr) formal←c44664)+7) ))+13) ) = var←c41912; }; SOURCE(13263, 57) { word var←c41944; var←c41944 = (word) GetOverflowCharInfoSeq←P1920((* ((( (ptr) formal←c44664)+4)) )); (* (( (ptr) (* (( (ptr) formal←c44664)+7) ))+12) ) = var←c41944; }; SOURCE(13322, 35) { word var←c41976; var←c41976 = (word) GetPropList←P2100((* ((( (ptr) formal←c44664)+4)) )); (* (( (ptr) (* (( (ptr) formal←c44664)+7) ))+14) ) = var←c41976; }; SOURCE(13359, 24) { word idx184; nSets←v13068 = ( idx184 = (word) GetCount←P2400((* ((( (ptr) formal←c44664)+4)) )), SGNCK(idx184) ); }; SOURCE(13385, 136) { register word i←v13112 = 0; register word noName←c42008; noName←c42008 = nSets←v13068; if ((i←v13112 >= noName←c42008)) { goto lab←L100051; }; lab←L100054: ; { word c←v13156; SOURCE(13413, 29) { word idx185; c←v13156 = ( idx185 = (word) GetCount←P2400((* ((( (ptr) formal←c44664)+4)) )), BCK(idx185, 256) ); }; SOURCE(13444, 77) { word var←c42040; var←c42040 = (word) GetCharRuns←P2220((* (( (ptr) formal←c44664)+4) ), (* (ptr) (* (( (ptr) (* (( (ptr) formal←c44664)+7) ))+9) ) )); (* ((( (ptr) (* (( (ptr) formal←c44664)+7) ))+16)+c←v13156) ) = var←c42040; }; }; i←v13112 = (i←v13112 + 1); if ((i←v13112 < noName←c42008)) { goto lab←L100054; }; lab←L100051: ; }; } static void GetExtents←P1500(formal←c0307, stream←v8036) word formal←c0307; word stream←v8036; { W4 var←c8080; W4 extents←v13200; /* GetExtents: */ SOURCE(13810, 260) SOURCE(13907, 36) extents←v13200.f0 = (word) GetREAL←P2580(stream←v8036); SOURCE(13945, 37) extents←v13200.f1 = (word) GetREAL←P2580(stream←v8036); SOURCE(13984, 33) extents←v13200.f2 = (word) GetREAL←P2580(stream←v8036); SOURCE(14019, 32) extents←v13200.f3 = (word) GetREAL←P2580(stream←v8036); SOURCE(14053, 17) var←c8080 = extents←v13200; /* removed tail goto */ (* (W4Pt) formal←c0307 ) = var←c8080; return; } static word GetRealSeq←P1560(stream←v8140) word stream←v8140; { register ptr gf←c44696 = (ptr) &globalframe; word s←v8184; word size←v13244; /* GetRealSeq: */ SOURCE(14074, 170) SOURCE(14074, 170) s←v8184 = 0; SOURCE(14136, 28) { word idx186; size←v13244 = ( idx186 = (word) GetCount←P2400(stream←v8140), SGNCK(idx186) ); }; SOURCE(14166, 25) { word var←c42072; word var←c42104; word var←c42136; var←c42072 = BCK(size←v13244, 67108863); var←c42104 = ((word) var←c42072 << 2); var←c42136 = XR←NewObject((4 + var←c42104), (* (( (ptr) gf←c44696)+37) )); (* (ptr) var←c42136 ) = var←c42072; s←v8184 = var←c42136; }; SOURCE(14193, 51) { register word i←v13288 = 0; register word noName←c42168; noName←c42168 = (* (ptr) s←v8184 ); if ((i←v13288 >= noName←c42168)) { goto lab←L100056; }; lab←L100059: ; SOURCE(14222, 22) { word var←c42200; var←c42200 = (word) GetREAL←P2580(stream←v8140); { word limit187; (* ((( (ptr) s←v8184)+1)+( limit187 = (* (ptr) s←v8184 ), BCK(i←v13288, limit187) )) ) = var←c42200; }; }; i←v13288 = (i←v13288 + 1); if ((i←v13288 < noName←c42168)) { goto lab←L100059; }; lab←L100056: ; }; SOURCE(14074, 170) return(s←v8184); } static word GetTransformationSeq←P1620(stream←v8244) word stream←v8244; { register ptr gf←c44728 = (ptr) &globalframe; word s←v8288; word size←v13332; /* GetTransformationSeq: */ SOURCE(14259, 210) SOURCE(14259, 210) s←v8288 = 0; SOURCE(14341, 28) { word idx188; size←v13332 = ( idx188 = (word) GetCount←P2400(stream←v8244), SGNCK(idx188) ); }; SOURCE(14371, 35) { word var←c42232; word var←c42264; word var←c42296; var←c42232 = BCK(size←v13332, 67108863); var←c42264 = ((word) var←c42232 << 2); var←c42296 = XR←NewObject((4 + var←c42264), (* (( (ptr) gf←c44728)+38) )); (* (ptr) var←c42296 ) = var←c42232; s←v8288 = var←c42296; }; SOURCE(14408, 61) { register word i←v13376 = 0; register word noName←c42328; noName←c42328 = (* (ptr) s←v8288 ); if ((i←v13376 >= noName←c42328)) { goto lab←L100060; }; lab←L100063: ; SOURCE(14437, 32) { word var←c42360; var←c42360 = (word) GetTransformation←P1680(stream←v8244); { word limit189; (* ((( (ptr) s←v8288)+1)+( limit189 = (* (ptr) s←v8288 ), BCK(i←v13376, limit189) )) ) = var←c42360; }; }; i←v13376 = (i←v13376 + 1); if ((i←v13376 < noName←c42328)) { goto lab←L100063; }; lab←L100060: ; }; SOURCE(14259, 210) return(s←v8288); } static word GetTransformation←P1680(stream←v8348) word stream←v8348; { register ptr gf←c44760 = (ptr) &globalframe; word var←c8392; word count←v13420; /* GetTransformation: */ SOURCE(14484, 339) SOURCE(14557, 30) { word idx190; count←v13420 = ( idx190 = (word) GetCount←P2400(stream←v8348), SGNCK(idx190) ); }; SOURCE(14589, 234) if ((count←v13420 == 0)) { SOURCE(14607, 18) return(0); } else { SOURCE(14625, 198) { word check←v13464; W6 t←v13492; SOURCE(14627, 21) check←v13464 = BCK((count←v13420 - 6), 1); SOURCE(14675, 46) { register word i←v13592 = 0; lab←L100067: ; SOURCE(14699, 22) { word var←c42392; var←c42392 = (word) GetREAL←P2580(stream←v8348); (* (( (ptr) &t←v13492)+BCK(i←v13592, 6)) ) = var←c42392; }; if ((i←v13592 >= 5)) { goto lab←L100064; }; i←v13592 = (i←v13592 + 1); goto lab←L100067; lab←L100064: ; }; SOURCE(14732, 91) { word pd191; pd191 = (* (( (ptr) (* (( (ptr) gf←c44760)+137)/* var←c38936 */ ))+4) ); return((word) ( *( (fPt) ((* (ptr) pd191 ))))(t←v13492.f0, t←v13492.f1, t←v13492.f2, t←v13492.f3, t←v13492.f4, t←v13492.f5, pd191) ); }; }; }; } static word GetTypefaceCellSeq←P1740(stream←v8452) word stream←v8452; { register ptr gf←c44792 = (ptr) &globalframe; word s←v8496; word size←v13636; /* GetTypefaceCellSeq: */ SOURCE(14830, 202) SOURCE(14830, 202) s←v8496 = 0; SOURCE(14908, 28) { word idx192; size←v13636 = ( idx192 = (word) GetCount←P2400(stream←v8452), SGNCK(idx192) ); }; SOURCE(14938, 33) { word var←c42456; word var←c42488; word var←c42520; var←c42456 = BCK(size←v13636, 67108863); var←c42488 = ((word) var←c42456 << 2); var←c42520 = XR←NewObject((4 + var←c42488), (* (( (ptr) gf←c44792)+39) )); (* (ptr) var←c42520 ) = var←c42456; s←v8496 = var←c42520; }; SOURCE(14973, 59) { register word i←v13680 = 0; register word noName←c42552; noName←c42552 = (* (ptr) s←v8496 ); if ((i←v13680 >= noName←c42552)) { goto lab←L100068; }; lab←L100071: ; SOURCE(15002, 30) { word var←c42584; var←c42584 = (word) GetTypefaceCell←P1860(stream←v8452); { word limit193; (* ((( (ptr) s←v8496)+1)+( limit193 = (* (ptr) s←v8496 ), BCK(i←v13680, limit193) )) ) = var←c42584; }; }; i←v13680 = (i←v13680 + 1); if ((i←v13680 < noName←c42552)) { goto lab←L100071; }; lab←L100068: ; }; SOURCE(14830, 202) return(s←v8496); } static word GetCharInfoRunSeq←P1800(stream←v8556, nt←v8584) word stream←v8556; word nt←v8584; { register ptr gf←c44824 = (ptr) &globalframe; word s←v8628; word size←v13724; /* GetCharInfoRunSeq: */ SOURCE(15047, 211) SOURCE(15047, 211) s←v8628 = 0; SOURCE(15132, 28) { word idx194; size←v13724 = ( idx194 = (word) GetCount←P2400(stream←v8556), SGNCK(idx194) ); }; SOURCE(15162, 32) { word var←c42616; word var←c42648; word var←c42680; var←c42616 = BCK(size←v13724, 67108863); var←c42648 = ((word) var←c42616 << 2); var←c42680 = XR←NewObject((4 + var←c42648), (* (( (ptr) gf←c44824)+36) )); (* (ptr) var←c42680 ) = var←c42616; s←v8628 = var←c42680; }; SOURCE(15196, 62) { register word i←v13768 = 0; register word noName←c42712; noName←c42712 = (* (ptr) s←v8628 ); if ((i←v13768 >= noName←c42712)) { goto lab←L100072; }; lab←L100075: ; SOURCE(15225, 33) { word var←c42744; var←c42744 = (word) GetCharInfoRun←P2160(stream←v8556, nt←v8584); { word limit195; (* ((( (ptr) s←v8628)+1)+( limit195 = (* (ptr) s←v8628 ), BCK(i←v13768, limit195) )) ) = var←c42744; }; }; i←v13768 = (i←v13768 + 1); if ((i←v13768 < noName←c42712)) { goto lab←L100075; }; lab←L100072: ; }; SOURCE(15047, 211) return(s←v8628); } static word GetTypefaceCell←P1860(stream←v8688) word stream←v8688; { register ptr gf←c44856 = (ptr) &globalframe; word var←c8732; word s←v13812; /* GetTypefaceCell: */ SOURCE(15273, 247) SOURCE(15342, 38) s←v13812 = XR←NewObject(16, (* (( (ptr) gf←c44856)+35) )); SOURCE(15382, 42) (* (( (ptr) s←v13812)+2) ) = (word) GetCARD32←P2280(stream←v8688); SOURCE(15426, 34) (* (ptr) s←v13812 ) = (word) GetIdentifier←P2460(stream←v8688); SOURCE(15462, 45) { word var←c42808; var←c42808 = (word) GetIdentifier←P2460(stream←v8688); { word pd196; pd196 = (* (( (ptr) (* (( (ptr) gf←c44856)+146)/* var←c42840 */ ))+5) ); (* (( (ptr) s←v13812)+3) ) = (word) ( *( (fPt) ((* (ptr) pd196 ))))(var←c42808, 0, 2147483647, pd196); }; }; SOURCE(15509, 11) return(s←v13812); } static word GetOverflowCharInfoSeq←P1920(stream←v8792) word stream←v8792; { register ptr gf←c44888 = (ptr) &globalframe; word s←v8836; word size←v13856; /* GetOverflowCharInfoSeq: */ SOURCE(15524, 217) SOURCE(15524, 217) s←v8836 = 0; SOURCE(15610, 28) { word idx197; size←v13856 = ( idx197 = (word) GetCount←P2400(stream←v8792), SGNCK(idx197) ); }; SOURCE(15640, 37) { word var←c42872; word var←c42904; word var←c42936; var←c42872 = BCK(size←v13856, 67108863); var←c42904 = ((word) var←c42872 << 2); var←c42936 = XR←NewObject((4 + var←c42904), (* (( (ptr) gf←c44888)+23) )); (* (ptr) var←c42936 ) = var←c42872; s←v8836 = var←c42936; }; SOURCE(15679, 62) { register word i←v13900 = 0; register word noName←c42968; noName←c42968 = (* (ptr) s←v8836 ); if ((i←v13900 >= noName←c42968)) { goto lab←L100076; }; lab←L100079: ; SOURCE(15708, 33) { word var←c43000; var←c43000 = (word) GetVerboseCharInfo←P1980(stream←v8792); { word limit198; (* ((( (ptr) s←v8836)+1)+( limit198 = (* (ptr) s←v8836 ), BCK(i←v13900, limit198) )) ) = var←c43000; }; }; i←v13900 = (i←v13900 + 1); if ((i←v13900 < noName←c42968)) { goto lab←L100079; }; lab←L100076: ; }; SOURCE(15524, 217) return(s←v8836); } static word GetVerboseCharInfo←P1980(stream←v8896) word stream←v8896; { register ptr gf←c44920 = (ptr) &globalframe; word var←c8940; word s←v13944; /* GetVerboseCharInfo: */ SOURCE(15756, 229) SOURCE(15831, 44) s←v13944 = XR←NewObject(28, (* (( (ptr) gf←c44920)+21) )); SOURCE(15877, 30) (void) GetExtents←P1500((word) s←v13944, stream←v8896); SOURCE(15909, 29) (void) GetVEC←P2040((word) (( (bPt) s←v13944)+16), stream←v8896); SOURCE(15940, 32) (* (( (ptr) s←v13944)+6) ) = (word) GetPropList←P2100(stream←v8896); SOURCE(15974, 11) return(s←v13944); } static void GetVEC←P2040(formal←c0372, stream←v9000) word formal←c0372; word stream←v9000; { W2 v←v9044; /* GetVEC: */ SOURCE(15989, 98) SOURCE(16043, 21) v←v9044.f0 = (word) GetREAL←P2580(stream←v9000); SOURCE(16066, 21) v←v9044.f1 = (word) GetREAL←P2580(stream←v9000); /* removed tail goto */ (* (W2Pt) formal←c0372 ) = v←v9044; return; } static word GetPropList←P2100(stream←v9104) word stream←v9104; { word var←c9148; word props←v13988 = 0; word count←v14016; /* GetPropList: */ SOURCE(16093, 182) SOURCE(16187, 29) { word idx199; count←v14016 = ( idx199 = (word) GetCount←P2400(stream←v9104), SGNCK(idx199) ); }; SOURCE(16218, 18) if ((count←v14016 != 0)) { SOURCE(16236, 5) (void) XR←RaiseUnnamedError(); }; SOURCE(16260, 15) return(props←v13988); } static word GetCharInfoRun←P2160(stream←v9208, nt←v9236) word stream←v9208; word nt←v9236; { register ptr gf←c44952 = (ptr) &globalframe; word var←c9280; word xcCodeDelta←v14060; word bits←v14088; word placementCode←v14116; word size←v14144; word charInfoRun←v14172; /* GetCharInfoRun: */ SOURCE(16279, 943) SOURCE(16355, 37) xcCodeDelta←v14060 = (word) GetInteger←P2520(stream←v9208); SOURCE(16394, 28) bits←v14088 = (word) GetBYTE←P2340(stream←v9208); SOURCE(16424, 38) placementCode←v14116 = (word) GetCount←P2400(stream←v9208); SOURCE(16464, 28) { word idx200; size←v14144 = ( idx200 = (word) GetCount←P2400(stream←v9208), SGNCK(idx200) ); }; SOURCE(16494, 52) { word var←c43064; word var←c43096; word var←c43128; var←c43064 = BCK(size←v14144, 22369621); var←c43096 = ((word) var←c43064 * 12); var←c43128 = XR←NewObject((16 + var←c43096), (* (( (ptr) gf←c44952)+20) )); (* (( (ptr) var←c43128)+3) ) = var←c43064; charInfoRun←v14172 = var←c43128; }; SOURCE(16548, 37) (* (ptr) charInfoRun←v14172 ) = xcCodeDelta←v14060; SOURCE(16587, 44) { word tadr201; tadr201 = (word) (( (ptr) charInfoRun←v14172) + 1); (* (ptr) tadr201 ) = ((* (ptr) tadr201 ) & 2147483647) | (((word) ((bits←v14088 & 1) & 1)) << 31); }; SOURCE(16633, 41) { word idx202; word tadr203; tadr203 = (word) (( (ptr) charInfoRun←v14172) + 1); (* (ptr) tadr203 ) = ((* (ptr) tadr203 ) & 2147483648) | ((word) ( idx202 = (word) ((word) bits←v14088 >> 1), BCK(idx202, 4) )); }; SOURCE(16676, 41) (* (( (ptr) charInfoRun←v14172)+2) ) = placementCode←v14116; SOURCE(16719, 467) { register word i←v14216 = 0; if ((i←v14216 >= size←v14144)) { goto lab←L100081; }; lab←L100084: ; { word byte0←v14260; SOURCE(16746, 29) byte0←v14260 = (word) GetBYTE←P2340(stream←v9208); SOURCE(16777, 409) if ((byte0←v14260 == 255)) { SOURCE(16797, 104) { W2 info←v14304; SOURCE(16799, 67) info←v14304.f0 = 1; { word idx204; info←v14304.f1 = ( idx204 = (word) GetCount←P2400(stream←v9208), SGNCK(idx204) ); }; SOURCE(16876, 22) SOURCE(16877, 21) { word limit205; (* (W2Pt) (( (W3Pt) (( (ptr) charInfoRun←v14172)+4))+( limit205 = (* (( (ptr) charInfoRun←v14172)+3) ), BCK(i←v14216, limit205) )) ) = info←v14304; }; }; } else { SOURCE(16908, 281) { W3 info←v14348; SOURCE(16910, 48) info←v14348.f0 = 0; info←v14348.f1 = 0; info←v14348.f2 = 0; SOURCE(16960, 23) (* (( (bPt) &info←v14348)+4) ) = byte0←v14260; SOURCE(16985, 34) (* (( (bPt) &info←v14348)+5) ) = (word) GetBYTE←P2340(stream←v9208); SOURCE(17021, 30) (* (( (bPt) &info←v14348)+6) ) = (word) GetBYTE←P2340(stream←v9208); SOURCE(17053, 29) (* (( (bPt) &info←v14348)+7) ) = (word) GetBYTE←P2340(stream←v9208); SOURCE(17084, 34) (* (( (bPt) &info←v14348)+8) ) = (word) GetBYTE←P2340(stream←v9208); SOURCE(17120, 34) info←v14348.f2 = (info←v14348.f2 & 4278190080) | ((word) ( (((unsigned)(word) GetBYTE←P2340(stream←v9208) << 8) >> 8) )); SOURCE(17164, 22) SOURCE(17165, 21) { word limit206; (* (( (W3Pt) (( (ptr) charInfoRun←v14172)+4))+( limit206 = (* (( (ptr) charInfoRun←v14172)+3) ), BCK(i←v14216, limit206) )) ) = info←v14348; }; }; }; }; i←v14216 = (i←v14216 + 1); if ((i←v14216 < size←v14144)) { goto lab←L100084; }; lab←L100081: ; }; SOURCE(17201, 21) return(charInfoRun←v14172); } static word GetCharRuns←P2220(stream←v9340, nt←v9368) word stream←v9340; word nt←v9368; { register ptr gf←c44984 = (ptr) &globalframe; word charRuns←v9412; word last←v14392 = 0; word count←v14420; word nextOKbc←v14448 = 0; /* GetCharRuns: */ SOURCE(17226, 724) SOURCE(17226, 724) charRuns←v9412 = 0; SOURCE(17334, 29) { word idx207; count←v14420 = ( idx207 = (word) GetCount←P2400(stream←v9340), SGNCK(idx207) ); }; SOURCE(17384, 538) { register word i←v14492 = 0; if ((i←v14492 >= count←v14420)) { goto lab←L100085; }; lab←L100088: ; { word bc←v14536; word ec←v14564; word new←v14592; SOURCE(17412, 26) bc←v14536 = (word) GetBYTE←P2340(stream←v9340); SOURCE(17440, 26) ec←v14564 = (word) GetBYTE←P2340(stream←v9340); SOURCE(17468, 36) { word var←c43224; word var←c43256; word var←c43288; var←c43224 = BCK(nt←v9368, 33554431); var←c43256 = ((word) var←c43224 << 3); var←c43288 = XR←NewObject((16 + var←c43256), (* (( (ptr) gf←c44984)+14) )); (* (( (ptr) var←c43288)+3) ) = var←c43224; new←v14592 = var←c43288; }; SOURCE(17506, 83) if ((ec←v14564 < bc←v14536) || (bc←v14536 < nextOKbc←v14448)) { SOURCE(17539, 50) { word var←c43320; { word pd208; pd208 = (* (( (ptr) (* (( (ptr) gf←c44984)+141)/* var←c39256 */ ))+29) ); var←c43320 = (word) ( *( (fPt) ((* (ptr) pd208 ))))(stream←v9340, pd208); }; { W2 var←c0406; (* (ptr) (word) &var←c0406 ) = (* (( (ptr) gf←c44984)+47) ); (* (( (ptr) (word) &var←c0406) + 1) ) = var←c43320; (void) XR←RaiseError((word) (( (bPt) gf←c44984)+192)/* var←c37496 */ , (word) &var←c0406); }; }; }; SOURCE(17591, 11) (* (( (ptr) new←v14592)+1) ) = bc←v14536; SOURCE(17604, 11) (* (( (ptr) new←v14592)+2) ) = ec←v14564; SOURCE(17617, 20) nextOKbc←v14448 = (ec←v14564 + 1); SOURCE(17639, 204) { register word i←v14636 = 0; register word noName←c43352; noName←c43352 = nt←v9368; if ((i←v14636 >= noName←c43352)) { goto lab←L100089; }; lab←L100092: ; { word typefaceIndex←v14680; word charInfoRunIndex←v14708; SOURCE(17664, 47) { word idx209; typefaceIndex←v14680 = ( idx209 = (word) GetCount←P2400(stream←v9340), SGNCK(idx209) ); }; SOURCE(17713, 53) { word idx210; charInfoRunIndex←v14708 = ( idx210 = (word) GetCount←P2400(stream←v9340), SGNCK(idx210) ); }; SOURCE(17768, 75) { word var←c43384; { word limit211; var←c43384 = (word) (( (W2Pt) (( (bPt) new←v14592)+16))+( limit211 = (* (( (ptr) new←v14592)+3) ), BCK(i←v14636, limit211) )); }; (* (ptr) var←c43384 ) = typefaceIndex←v14680; (* (( (ptr) var←c43384)+1) ) = charInfoRunIndex←v14708; }; }; i←v14636 = (i←v14636 + 1); if ((i←v14636 < noName←c43352)) { goto lab←L100092; }; lab←L100089: ; }; SOURCE(17854, 68) if ((last←v14392 == 0)) { SOURCE(17873, 27) charRuns←v9412 = new←v14592; last←v14392 = new←v14592; } else { SOURCE(17900, 22) { word var←c43448; var←c43448 = new←v14592; (* (ptr) last←v14392 ) = new←v14592; last←v14392 = var←c43448; }; }; }; i←v14492 = (i←v14492 + 1); if ((i←v14492 < count←v14420)) { goto lab←L100088; }; lab←L100085: ; }; SOURCE(17933, 17) return(charRuns←v9412); } static word GetCARD32←P2280(stream←v9472) word stream←v9472; { register ptr gf←c45016 = (ptr) &globalframe; word var←c9516; word ln←v14752 = 0; /* GetCARD32: */ SOURCE(17955, 217) SOURCE(18045, 26) { word pd212; pd212 = (* (( (ptr) (* (( (ptr) gf←c45016)+141)/* var←c39256 */ ))+11) ); ln←v14752 = (ln←v14752 & 16777215) | (((word) ((word) ( *( (fPt) ((* (ptr) pd212 ))))(stream←v9472, pd212) & 0377)) << 24) ; }; SOURCE(18073, 26) { word pd213; pd213 = (* (( (ptr) (* (( (ptr) gf←c45016)+141)/* var←c39256 */ ))+11) ); ln←v14752 = (ln←v14752 & 4278255615) | (((word) ((word) ( *( (fPt) ((* (ptr) pd213 ))))(stream←v9472, pd213) & 0377)) << 16) ; }; SOURCE(18101, 26) { word pd214; pd214 = (* (( (ptr) (* (( (ptr) gf←c45016)+141)/* var←c39256 */ ))+11) ); ln←v14752 = (ln←v14752 & 4294902015) | (((word) ((word) ( *( (fPt) ((* (ptr) pd214 ))))(stream←v9472, pd214) & 0377)) << 8) ; }; SOURCE(18129, 26) { word pd215; pd215 = (* (( (ptr) (* (( (ptr) gf←c45016)+141)/* var←c39256 */ ))+11) ); ln←v14752 = (ln←v14752 & 4294967040) | ((word) ((word) ( *( (fPt) ((* (ptr) pd215 ))))(stream←v9472, pd215) & 0377)); }; SOURCE(18157, 15) return(ln←v14752); } static word GetBYTE←P2340(stream←v9576) word stream←v9576; { register ptr gf←c45048 = (ptr) &globalframe; word var←c9620; /* GetBYTE: */ SOURCE(18176, 80) SOURCE(18229, 27) { word pd216; pd216 = (* (( (ptr) (* (( (ptr) gf←c45048)+141)/* var←c39256 */ ))+11) ); return((word) ( *( (fPt) ((* (ptr) pd216 ))))(stream←v9576, pd216)); }; } static word GetCount←P2400(stream←v9680) word stream←v9680; { register ptr gf←c45080 = (ptr) &globalframe; word count←v9724; word b←v14796; /* GetCount: */ SOURCE(18262, 228) SOURCE(18262, 228) count←v9724 = 0; SOURCE(18327, 28) { word pd217; pd217 = (* (( (ptr) (* (( (ptr) gf←c45080)+141)/* var←c39256 */ ))+11) ); b←v14796 = (word) ( *( (fPt) ((* (ptr) pd217 ))))(stream←v9680, pd217); }; SOURCE(18357, 26) if ((b←v14796 < 128)) { SOURCE(18373, 10) return(b←v14796); }; SOURCE(18385, 71) lab←L100095: ; if ((b←v14796 >= 128)) { } else { goto lab←L100093; }; SOURCE(18403, 29) count←v9724 = (((word) count←v9724 << 7) + (b←v14796 - 128)); SOURCE(18434, 22) { word pd218; pd218 = (* (( (ptr) (* (( (ptr) gf←c45080)+141)/* var←c39256 */ ))+11) ); b←v14796 = (word) ( *( (fPt) ((* (ptr) pd218 ))))(stream←v9680, pd218); }; goto lab←L100095; lab←L100093: ; SOURCE(18467, 23) count←v9724 = (((word) count←v9724 << 7) + b←v14796); SOURCE(18262, 228) return(count←v9724); } static word GetIdentifier←P2460(stream←v9784) word stream←v9784; { register ptr gf←c45112 = (ptr) &globalframe; word var←c9828; word size←v14840; word rope←v14868; /* GetIdentifier: */ SOURCE(18496, 167) SOURCE(18555, 28) { word idx219; size←v14840 = ( idx219 = (word) GetCount←P2400(stream←v9784), SGNCK(idx219) ); }; SOURCE(18585, 62) { word pd220; pd220 = (* (( (ptr) (* (( (ptr) gf←c45112)+141)/* var←c39256 */ ))+92) ); rope←v14868 = (word) ( *( (fPt) ((* (ptr) pd220 ))))(stream←v9784, size←v14840, 1, pd220); }; SOURCE(18649, 14) return(rope←v14868); } static word GetInteger←P2520(stream←v9888) word stream←v9888; { word var←c9932; word card←v14912; /* GetInteger: */ SOURCE(18667, 160) SOURCE(18722, 29) card←v14912 = (word) GetCount←P2400(stream←v9888); SOURCE(18753, 74) if (((card←v14912 & 1) == 1)) { SOURCE(18776, 31) return(INEG(((word) (card←v14912 + 1) >> 1))); } else { SOURCE(18807, 20) return(((word) card←v14912 >> 1)); }; } static word GetREAL←P2580(stream←v9992) word stream←v9992; { register ptr gf←c45144 = (ptr) &globalframe; word var←c10036; word exponent←v14956; word significand←v14984; /* GetREAL: */ SOURCE(18833, 189) SOURCE(18914, 32) significand←v14984 = (word) GetInteger←P2520(stream←v9992); SOURCE(18948, 29) exponent←v14956 = (word) GetInteger←P2520(stream←v9992); SOURCE(18979, 43) { word pd221; float tf222; pd221 = (* (( (ptr) (* (( (ptr) gf←c45144)+147)/* var←c43576 */ ))+4) ); return((word) ( *( (fPt) ((* (ptr) pd221 ))))(( tf222 = (float)(int)significand←v14984, *(word*)&tf222 ), exponent←v14956, pd221)); }; } static void NoName←Q5448(formal←c0442, formal←c200012, formal←c200013, formal←c200014, formal←c200015) word formal←c0442; word formal←c200012; word formal←c200013; word formal←c200014; word formal←c200015; { register ptr gf←c0517 = (ptr) &globalframe; if ((formal←c200013 == (* (( (ptr) (* (( (ptr) gf←c0517)+141)/* var←c39256 */ ))+4) ))) { { word stream←v36172; stream←v36172 = (* (ptr) formal←c200015 ); SOURCE(13658, 54) { word var←c41528; { word pd223; pd223 = (* (( (ptr) (* (( (ptr) gf←c0517)+141)/* var←c39256 */ ))+29) ); var←c41528 = (word) ( *( (fPt) ((* (ptr) pd223 ))))(stream←v36172, pd223); }; { W2 var←c0439; (* (ptr) (word) &var←c0439 ) = (* (( (ptr) gf←c0517)+42) ); (* (( (ptr) (word) &var←c0439) + 1) ) = var←c41528; (void) XR←RaiseError((word) (( (bPt) gf←c0517)+192)/* var←c37496 */ , (word) &var←c0439); }; }; }; } else { if ((formal←c200013 == (* (( (ptr) (* (( (ptr) gf←c0517)+145)/* var←c41560 */ ))+8) ))) { SOURCE(13742, 45) { word var←c41592; { word pd224; pd224 = (* (( (ptr) (* (( (ptr) gf←c0517)+141)/* var←c39256 */ ))+29) ); var←c41592 = (word) ( *( (fPt) ((* (ptr) pd224 ))))((* ((( (ptr) formal←c200012)+4)) ), pd224); }; { W2 var←c0441; (* (ptr) (word) &var←c0441 ) = (* (( (ptr) gf←c0517)+41) ); (* (( (ptr) (word) &var←c0441) + 1) ) = var←c41592; (void) XR←RaiseError((word) (( (bPt) gf←c0517)+192)/* var←c37496 */ , (word) &var←c0441); }; }; }; }; (* (ptr) formal←c0442 ) = 0; (* (( (ptr) formal←c0442)+1) ) = 0; return; } static void NoName←Q5508(formal←c0448, formal←c200008, formal←c200009, formal←c200010, formal←c200011) word formal←c0448; word formal←c200008; word formal←c200009; word formal←c200010; word formal←c200011; { register ptr gf←c0518 = (ptr) &globalframe; if ((formal←c200009 == (* (( (ptr) (* (( (ptr) gf←c0518)+144)/* var←c41016 */ ))+4) ))) { { W3 error←v35708; error←v35708 = (* (W3Pt) formal←c200011 ); SOURCE(9761, 17) (* (W3Pt) (( (ptr) formal←c200008)+4) ) = error←v35708; SOURCE(9780, 8) (* (ptr) formal←c0448 ) = 2; (* (( (ptr) formal←c0448)+1) ) = 3; return; }; }; (* (ptr) formal←c0448 ) = 0; (* (( (ptr) formal←c0448)+1) ) = 0; return; } static void NoName←Q5568(formal←c0454, formal←c200004, formal←c200005, formal←c200006, formal←c200007) word formal←c0454; word formal←c200004; word formal←c200005; word formal←c200006; word formal←c200007; { register ptr gf←c0519 = (ptr) &globalframe; if ((formal←c200005 == (* (ptr) (* (( (ptr) (* (( (ptr) gf←c0519)+140)/* var←c39096 */ ))+6) ) ))) { { W3 error←v35392; error←v35392 = (* (W3Pt) formal←c200007 ); SOURCE(8812, 9) (* (ptr) formal←c0454 ) = 2; (* (( (ptr) formal←c0454)+1) ) = 2; return; }; }; (* (ptr) formal←c0454 ) = 0; (* (( (ptr) formal←c0454)+1) ) = 0; return; } static void NoName←Q5628(formal←c0470, formal←c200000, formal←c200001, formal←c200002, formal←c200003) word formal←c0470; word formal←c200000; word formal←c200001; word formal←c200002; word formal←c200003; { register ptr gf←c0520 = (ptr) &globalframe; if ((formal←c200001 == (word) (( (bPt) gf←c0520)+192)/* var←c37496 */ )) { { word diagnosis←v31300; word byteIndex←v31328; diagnosis←v31300 = (* (ptr) formal←c200003 ); byteIndex←v31328 = (* (( (ptr) formal←c200003)+1) ); SOURCE(1970, 200) { word name←v10108; SOURCE(1972, 45) { word pd225; pd225 = (* (( (ptr) (* (( (ptr) gf←c0520)+139)/* var←c39064 */ ))+16) ); name←v10108 = (word) ( *( (fPt) ((* (ptr) pd225 ))))((* ((( (ptr) formal←c200000)+4)) ), pd225); }; SOURCE(2019, 7759) { word var←c39128; word var←c39288; { W2 var←c39160; W2 var←c39192; W2 var←c0525; var←c39160.f0 = 11; var←c39160.f1 = name←v10108; var←c39192.f0 = 5; var←c39192.f1 = byteIndex←v31328; (* (ptr) (word) &var←c0525 ) = 0; (* (( (ptr) (word) &var←c0525) + 1) ) = 0; { word pd226; pd226 = (* (( (ptr) (* (( (ptr) gf←c0520)+141)/* var←c39256 */ ))+62) ); var←c39128 = (word) ( *( (fPt) ((* (ptr) pd226 ))))((* (( (ptr) gf←c0520)+44) ), var←c39160, var←c39192, var←c0525, pd226) ; }; }; { word var←c39320; word var←c39352; var←c39320 = XR←NewObject(12, (* (( (ptr) gf←c0520)+22) )); var←c39352 = var←c39320; (* (ptr) var←c39352 ) = (* (( (ptr) gf←c0520)+43) ); (* (( (ptr) var←c39352)+1) ) = name←v10108; var←c39288 = var←c39320; }; { W3 var←c0469; var←c0469.f0 = 43; var←c0469.f1 = var←c39128; var←c0469.f2 = var←c39288; (void) XR←RaiseError((* (ptr) (* (( (ptr) (* (( (ptr) gf←c0520)+140)/* var←c39096 */ ))+6) ) ), (word) &var←c0469); }; }; }; }; }; (* (ptr) formal←c0470 ) = 0; (* (( (ptr) formal←c0470)+1) ) = 0; return; } /* file: ImagerFDTypefaceImpl, module: ImagerFDTypefaceImpl, compiled at: July 28, 1993 10:18:22 am PDT */ extern void XR←install←ImagerFDTypefaceImpl() { NoName←Q5148(); } extern void XR←run←ImagerFDTypefaceImpl() { XR←Start(&globalframe); }