/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */ /* time: July 28, 1993 10:15:55 am PDT */ /* C2C version: April 20, 1993 (sun4) */ /* ref-counting: off */ /* file: ImagerColorPrivateImpl, module: ImagerColorPrivateImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> static char versionStamp[] = "@(#)mob←version [2475705411,748828630] ImagerColorPrivateImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef word (*fPt)(); typedef struct {word f0, f1;} W2; typedef struct {word f0, f1, f2;} W3; typedef W2 *W2Pt; typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8; typedef struct {W8 f; W3 r;} W11; typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7; typedef struct {word f0, f1, f2, f3;} W4; typedef W4 *W4Pt; #define SOURCE(p, l) /* source p, l */ static float fc58 = 0.0; #define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) ) #define MIN(cast, x, y) ( ( cast x) < ( cast y) ? (x) : (y) ) #define MAX(cast, x, y) ( ( cast x) > ( cast y) ? (x) : (y) ) #define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i ) static float fc123 = 1.0; static void NoName←Q6864(); static void ImagerColorPrivateImpl←P0(); static word MakeStructure←P60(); static word SSize←P120(); static word SCheckSize←P180(); static void SGet←P240(); static word SGetAtom←P300(); static word SGetReal←P360(); static word SGetInt←P420(); static word SGetStructure←P480(); static word SGetOptionalStructure←P540(); static word SGetColor←P600(); static word SGetColorOperator←P660(); static void SGetProp←P720(); static word FlatSize←P780(); static void FlatGet←P840(); static word StructureFromElementGenerator←P900(); static void CountElements←P3732(); static void StoreElements←P3792(); static word StructureFromList←P960(); static void GenerateElements←P4140(); static word MergeSize←P1020(); static void MergeGet←P1080(); static word SMergeProp←P1140(); static word StructureEqual←P1200(); static word ColorEqual←P1260(); static word ConstantColorsEqual←P1320(); static word ApplyPixelEncoding←P1380(); static word PixelEncodingEqual←P1440(); static word PixelEncodingFromStructure←P1500(); static word StructureFromPixelEncoding←P1560(); static void G←P5448(); static word MakeSampleEncoding←P1620(); static word SampleEncodingEqual←P1680(); static word SampleEncodingFromStructure←P1740(); static word SampleEncodingSize←P1800(); static void SampleEncodingGet←P1860(); static word StructureFromSampleEncoding←P1920(); static void RegisterNamedColor←P1980(); static word DefineProcessSpace←P2040(); static word StoreColorOperator←P2100(); static word ColorOperatorFromColorSpace←P2160(); static word ColorSpaceDimension←P2220(); static word GetPixelEncoding←P2280(); static word TransformConstantColor←P2340(); static word pixelIn←P6036(); static word ApplyToList←P2400(); static word pixelIn←P6096(); static word MakeColorPoint←P2460(); static word DestroyColorPoint←P2520(); static word ChooseColorSpace←P2580(); static word ColorPointFromColor←P2640(); static word NarrowToOp←P2700(); static word IntensityFromColor←P2760(); static word GrayFromColor←P2820(); static word FindColorOperatorClass←P2880(); static word NewColorOperatorClass←P2940(); static word NewColorOperator←P3000(); static word compare←P6696(); static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\207\164\301\163\300\327\135\041\305\105\234\000\000"}; static struct {unsigned f; char r[4];} string2 = {196611, "\004@A"}; static struct {unsigned f; char r[16];} string3 = {851984, "\257\300\207\164\301\163\300\327\135\041\305\100\340\000\000"}; static struct {unsigned f; char r[16];} string4 = {851984, "\257\300\223\220\104\103\300\054\242\067\326\103\260\000\000"}; static struct {unsigned f; char r[12];} string5 = {524296, "\011\000\004\000\040\000\004\001\000\000\000"}; static struct {unsigned f; char r[16];} string6 = {851984, "\257\300\132\124\077\010\300\370\073\075\073\100\354\000\000"}; static struct {unsigned f; char r[4];} string7 = {131074, "\004\003\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[4];} string9 = {65537, "\001\000\000"}; static struct {unsigned f; char r[16];} string10 = {851984, "\257\300\132\124\077\010\300\370\073\075\073\100\370\000\000"}; static struct {unsigned f; char r[4];} string11 = {131074, "\004\034\000"}; static struct {unsigned f; char r[4];} string12 = {131076, "\216\251\000"}; static struct {unsigned f; char r[44];} string13 = {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];} string14 = {131074, "\004\007\000"}; static struct {unsigned f; char r[16];} string15 = {851984, "\257\300\207\164\301\163\300\327\135\041\305\104\034\000\000"}; static struct {unsigned f; char r[20];} string16 = {1179668, "\260\006\005\146\151\162\163\164\256\005\004\162\145\163\164\214\256\261\000"}; static struct {unsigned f; char r[4];} string17 = {131074, "\003\001\000"}; static struct {unsigned f; char r[16];} string18 = {851984, "\257\300ZT?\010\300\370;=;B`\000\000"}; static struct {unsigned f; char r[16];} string19 = {851984, "\257\300\223\220\104\103\300\054\242\067\326\101\240\000\000"}; static struct {unsigned f; char r[16];} string20 = {851984, "\257\300\207\164\301\163\300\327\135\041\305\100\164\000\000"}; static struct {unsigned f; char r[12];} string21 = {720907, "\007\000\040\006\003\001\013\000\000\013\013"}; static struct {unsigned f; char r[16];} string22 = {851984, "\257\300\223\220\104\103\300\054\242\067\326\102\030\000\000"}; static struct {unsigned f; char r[4];} string23 = {131074, "\004\006\000"}; static struct {unsigned f; char r[16];} string24 = {851984, "\257\300ZT?\010\300\370;=;BT\000\000"}; static struct {unsigned f; char r[36];} string25 = {2293796, "Wrong type (expected ColorOperator)"}; static struct {unsigned f; char r[28];} string26 = {1769500, "Wrong type (expected Color)"}; static struct {unsigned f; char r[36];} string27 = {2162724, "Wrong type (expected Vector or 0)\000\000"}; static struct {unsigned f; char r[56];} string28 = {3407928, "this color operator is not supported for this device\000\000\000"}; static struct {unsigned f; char r[32];} string29 = {1835040, "Wrong type (expected Vector)\000\000\000"}; static struct {unsigned f; char r[32];} string30 = {1900576, "Wrong type (expected Integer)\000\000"}; static struct {unsigned f; char r[16];} string31 = {851984, "ColorOperator\000\000"}; static struct {unsigned f; char r[32];} string32 = {1835040, "Wrong type (expected Number)\000\000\000"}; static struct {unsigned f; char r[36];} string33 = {2097188, "Wrong type (expected Identifier)\000\000\000"}; static struct {unsigned f; char r[32];} string34 = {1966112, "No substitute for SpecialColor\000"}; static struct {unsigned f; char r[40];} string35 = {2424872, "Failed to find color model operator: \000\000"}; static struct {unsigned f; char r[8];} string36 = {262152, "name\000\000\000"}; static struct {unsigned f; char r[84];} string37 = {5242964, "Argument vector to ColorModelOperator has incorrect size (expected %g, found %g)\000\000\000"}; static struct {unsigned f; char r[16];} string38 = {851984, "\257\300\223\220\104\103\300\054\242\067\326\100\164\000\000"}; static struct {unsigned f; char r[28];} string39 = {1769499, "\006\011\040\001\044\001\050\001\054\001\060\001\064\004\100\377\100\124\001\100\130\001\100\310\004\137\377"}; static struct {unsigned f; char r[16];} string40 = {851984, "\257\300\161\264\233\303\300\026\075\022\161\100\150\000\000"}; static struct {unsigned f; char r[16];} string41 = {851984, "\257\300\045\370\116\014\300\270\323\074\131\100\150\000\000"}; static struct {unsigned f; char r[16];} string42 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"}; static struct {unsigned f; char r[16];} string43 = {851984, "\257\300\275\320\070\317\300\004\110\363\366\100\150\000\000"}; static struct {unsigned f; char r[16];} string44 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"}; static struct {unsigned f; char r[16];} string45 = {851984, "\257\300\072\337\114\355\300\232\070\352\142\100\150\000\000"}; static struct {unsigned f; char r[16];} string46 = {851984, "\257\300ZT?\010\300\370;=;@h\000\000"}; static struct {unsigned f; char r[32];} string47 = {1966112, "\211\022\021StructureClassRep\300ZT?\010\300\370;=;\000"}; static struct {unsigned f; char r[36];} string48 = {2228260, "\211\026\025ColorOperatorClassRep\300ZT?\010\300\370;=;\000"}; static struct {unsigned f; char r[16];} string49 = {851984, "\257\300\207\164\301\163\300\327\135\041\305\100\150\000\000"}; static struct { word f0[63]; word f63; word f64; word f65; word f66; word f67; word f68; word f69; word f70; word f71; word f72; word f73; word f74; word f75; word f76; word f77; word f78; word f79; word f80; word f81; word f82; word f83; word f84; word f85; word f86; word f87; word f88; word f89; word f90; word f91; word f92; word f93; word f94; word f95; word f96; word f97; word f98; word f99; word f100; word f101; word f102; word f103; word f104; word f105; word f106; word f107; word f108; word f109; word f110; word f111; word f112; word f113; word f114; word f115; word f116; word f117; word f118; word f119; word f120; word f121; word f122; word f123; word f124; word f125; word f126; word f127; word f128; word f129; word f130; word f131; word f132; word f133; word f134; word f135; word f136; word f137; word f138; word f139; word f140; word f141; word f142; word f143; word f144; word f145; word f146; word f147; word f148; word f149; word f150; word f151; word f152; word f153; word f154; word f155; word f156; word f157; word f158; word f159; word f160; word f161; word f162; word f163; word f164[9]; } globalframe = { {0}, (word) NewColorOperator←P3000, 0, (word) NewColorOperatorClass←P2940, 0, (word) FindColorOperatorClass←P2880, 0, (word) GrayFromColor←P2820, 0, (word) IntensityFromColor←P2760, 0, (word) NarrowToOp←P2700, 0, (word) ColorPointFromColor←P2640, 0, (word) ChooseColorSpace←P2580, 0, (word) DestroyColorPoint←P2520, 0, (word) MakeColorPoint←P2460, 0, (word) ApplyToList←P2400, 0, (word) TransformConstantColor←P2340, 0, (word) GetPixelEncoding←P2280, 0, (word) ColorSpaceDimension←P2220, 0, (word) ColorOperatorFromColorSpace←P2160, 0, (word) StoreColorOperator←P2100, 0, (word) DefineProcessSpace←P2040, 0, (word) RegisterNamedColor←P1980, 0, (word) StructureFromSampleEncoding←P1920, 0, (word) SampleEncodingGet←P1860, 0, (word) SampleEncodingSize←P1800, 0, (word) SampleEncodingFromStructure←P1740, 0, (word) SampleEncodingEqual←P1680, 0, (word) MakeSampleEncoding←P1620, 0, (word) StructureFromPixelEncoding←P1560, 0, (word) PixelEncodingFromStructure←P1500, 0, (word) PixelEncodingEqual←P1440, 0, (word) ApplyPixelEncoding←P1380, 0, (word) ConstantColorsEqual←P1320, 0, (word) ColorEqual←P1260, 0, (word) StructureEqual←P1200, 0, (word) SMergeProp←P1140, 0, (word) MergeGet←P1080, 0, (word) MergeSize←P1020, 0, (word) StructureFromList←P960, 0, (word) StructureFromElementGenerator←P900, 0, (word) FlatGet←P840, 0, (word) FlatSize←P780, 0, (word) SGetProp←P720, 0, (word) SGetColorOperator←P660, 0, (word) SGetColor←P600, 0, (word) SGetOptionalStructure←P540, 0, (word) SGetStructure←P480, 0, (word) SGetInt←P420, 0, (word) SGetReal←P360, 0, (word) SGetAtom←P300, 0, (word) SGet←P240, 0, (word) SCheckSize←P180, 0, (word) SSize←P120, 0, (word) MakeStructure←P60, 0, (word) ImagerColorPrivateImpl←P0, {0} }; static void NoName←Q6864() { register ptr gf←c0491 = (ptr) &globalframe; word var←c38876; (* (( (ptr) gf←c0491)+23) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2); (* (( (ptr) gf←c0491)+24) ) = (word) XR←GetTypeIndexS((word) (&string3)); (* (( (ptr) gf←c0491)+25) ) = (word) XR←GetTypeIndex((word) &string4, 0, (word) &string5); (* (( (ptr) gf←c0491)+31) ) = (word) XR←GetTypeIndex((word) &string6, 0, (word) &string7); (* (( (ptr) gf←c0491)+33) ) = (word) XR←GetTypeIndex((word) &string8, 0, (word) &string9); (* (( (ptr) gf←c0491)+34) ) = (word) XR←GetTypeIndex((word) &string10, 0, (word) &string11); (* (( (ptr) gf←c0491)+37) ) = (word) XR←GetTypeIndex((word) &string12, 0, (word) &string9); (* (( (ptr) gf←c0491)+38) ) = (word) XR←GetTypeIndex((word) &string13, 0, (word) &string14); (* (( (ptr) gf←c0491)+39) ) = (word) XR←GetTypeIndexS((word) (&string15)); (* (( (ptr) gf←c0491)+40) ) = (word) XR←GetTypeIndex((word) &string16, 0, (word) &string17); (* (( (ptr) gf←c0491)+41) ) = (word) XR←GetTypeIndexS((word) (&string18)); (* (( (ptr) gf←c0491)+42) ) = (word) XR←GetTypeIndex((word) &string19, 0, (word) &string5); (* (( (ptr) gf←c0491)+43) ) = (word) XR←GetTypeIndex((word) &string20, 0, (word) &string21); (* (( (ptr) gf←c0491)+48) ) = (word) XR←GetTypeIndex((word) &string22, 0, (word) &string23); (* (( (ptr) gf←c0491)+49) ) = (word) XR←GetTypeIndex((word) &string24, 0, (word) &string5); (* (ptr) (( (bPt) gf←c0491)+200) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0491)+33) ), (word) &string25); (* (ptr) (( (bPt) gf←c0491)+204) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0491)+33) ), (word) &string26); (* (ptr) (( (bPt) gf←c0491)+208) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0491)+33) ), (word) &string27); (* (ptr) (( (bPt) gf←c0491)+212) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0491)+33) ), (word) &string28); (* (ptr) (( (bPt) gf←c0491)+216) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0491)+33) ), (word) &string29); (* (ptr) (( (bPt) gf←c0491)+220) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0491)+33) ), (word) &string30); (* (ptr) (( (bPt) gf←c0491)+224) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0491)+37) ), (word) &string31); (* (ptr) (( (bPt) gf←c0491)+228) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0491)+33) ), (word) &string32); (* (ptr) (( (bPt) gf←c0491)+232) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0491)+33) ), (word) &string33); (* (ptr) (( (bPt) gf←c0491)+236) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0491)+33) ), (word) &string34); (* (ptr) (( (bPt) gf←c0491)+240) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0491)+33) ), (word) &string35); (* (ptr) (( (bPt) gf←c0491)+244) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0491)+37) ), (word) &string36); (* (ptr) (( (bPt) gf←c0491)+248) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0491)+33) ), (word) &string37); (void) XR←DeclareGlobalFrame((word) "ImagerColorPrivateImpl", &globalframe, (word) XR←GetTypeIndex((word) &string38, 0, (word) &string39) , (word) (( (bPt) gf←c0491)+652)/* var←c33820 */ ); var←c38876 = (word) XR←ImportInterface((word) "FunctionCache", (word) XR←GetTypeIndexS((word) (&string40)), 14); (* (( (ptr) gf←c0491)+166)/* var←c34012 */ ) = var←c38876; (void) XR←ImportProcS(var←c38876, 1311237); (void) XR←ImportProcS(var←c38876, 135005443); (void) XR←ImportProcS(var←c38876, 67633154); var←c38876 = (word) XR←ImportInterface((word) "ImagerError", (word) XR←GetTypeIndexS((word) (&string41)), 3); (* (( (ptr) gf←c0491)+167)/* var←c34108 */ ) = var←c38876; var←c38876 = (word) XR←ImportInterface((word) "IO", (word) XR←GetTypeIndexS((word) (&string42)), 103); (* (( (ptr) gf←c0491)+168)/* var←c34268 */ ) = var←c38876; (void) XR←ImportProcS(var←c38876, 68958724); var←c38876 = (word) XR←ImportInterface((word) "RuntimeError", (word) XR←GetTypeIndexS((word) (&string43)), 27); (* (( (ptr) gf←c0491)+169)/* var←c34332 */ ) = var←c38876; var←c38876 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string44)), 43); (* (( (ptr) gf←c0491)+170)/* var←c36380 */ ) = var←c38876; (void) XR←ImportProcS(var←c38876, 67633666); (void) XR←ImportProcS(var←c38876, 67896323); var←c38876 = (word) XR←ImportInterface((word) "SymTab", (word) XR←GetTypeIndexS((word) (&string45)), 13); (* (( (ptr) gf←c0491)+165)/* var←c33948 */ ) = var←c38876; (void) XR←ImportProcS(var←c38876, 134742786); (void) XR←ImportProcS(var←c38876, 67896835); (void) XR←ImportProcS(var←c38876, 67633410); var←c38876 = (word) XR←ExportInterface((word) "ImagerColor", (word) XR←GetTypeIndexS((word) (&string46)), 32); (* (( (ptr) gf←c0491)+171)/* var←c38908 */ ) = var←c38876; (void) XR←ExportType((word) "StructureClassRep", (word) XR←GetTypeIndexS((word) (&string47)), (word) XR←GetTypeIndexS((word) (&string3)) ); (void) XR←ExportType((word) "ColorOperatorClassRep", (word) XR←GetTypeIndexS((word) (&string48)), (word) XR←GetTypeIndex( (word) &string1, 0, (word) &string2)); var←c38876 = (word) XR←ExportInterface((word) "ImagerColorPrivate", (word) XR←GetTypeIndexS((word) (&string49)), 48); (* (( (ptr) gf←c0491)+172)/* var←c38940 */ ) = var←c38876; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+644)/* var←c33788 */ , 67633154, (word) "MakeStructure"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+636)/* var←c33756 */ , 67371265, (word) "SSize"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+628)/* var←c33724 */ , 67633666, (word) "SCheckSize"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+620)/* var←c33692 */ , 134742786, (word) "SGet"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+612)/* var←c33660 */ , 67634178, (word) "SGetAtom"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+604)/* var←c33628 */ , 67634434, (word) "SGetReal"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+596)/* var←c33596 */ , 67634690, (word) "SGetInt"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+588)/* var←c33564 */ , 67634946, (word) "SGetStructure"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+580)/* var←c33532 */ , 67897347, (word) "SGetOptionalStructure") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+572)/* var←c33500 */ , 67635458, (word) "SGetColor"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+564)/* var←c33468 */ , 67635714, (word) "SGetColorOperator"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+556)/* var←c33436 */ , 134744834, (word) "SGetProp"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+500)/* var←c33212 */ , 67636226, (word) "SMergeProp"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+532)/* var←c33340 */ , 67374337, (word) "StructureFromElementGenerator") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+524)/* var←c33308 */ , 67374593, (word) "StructureFromList"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+492)/* var←c33180 */ , 67636994, (word) "StructureEqual"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+484)/* var←c33148 */ , 67637250, (word) "ColorEqual"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+468)/* var←c33084 */ , 67899651, (word) "ApplyPixelEncoding") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+460)/* var←c33052 */ , 67637762, (word) "PixelEncodingEqual") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+452)/* var←c33020 */ , 67375873, (word) "PixelEncodingFromStructure") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+444)/* var←c32988 */ , 67376129, (word) "StructureFromPixelEncoding") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+436)/* var←c32956 */ , 67638530, (word) "MakeSampleEncoding") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+428)/* var←c32924 */ , 67638786, (word) "SampleEncodingEqual") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+420)/* var←c32892 */ , 67376897, (word) "SampleEncodingFromStructure") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+396)/* var←c32796 */ , 67377153, (word) "StructureFromSampleEncoding") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+476)/* var←c33116 */ , 67639554, (word) "ConstantColorsEqual") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+276)/* var←c32316 */ , 67377665, (word) "GrayFromColor"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+284)/* var←c32348 */ , 67377921, (word) "IntensityFromColor") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+332)/* var←c32540 */ , 67902467, (word) "ApplyToList"); (void) XR←ExportVar(var←c38876, 29, (word) (( (bPt) gf←c0491)+44)/* namedColorTable←v5016 */ ); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+388)/* var←c32764 */ , 269825, (word) "RegisterNamedColor"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+324)/* var←c32508 */ , 67641090, (word) "MakeColorPoint"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+316)/* var←c32476 */ , 67379201, (word) "DestroyColorPoint"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+380)/* var←c32732 */ , 67641602, (word) "DefineProcessSpace") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+364)/* var←c32668 */ , 67379713, (word) "ColorOperatorFromColorSpace") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+356)/* var←c32636 */ , 67379969, (word) "ColorSpaceDimension") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+348)/* var←c32604 */ , 67380225, (word) "GetPixelEncoding"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+340)/* var←c32572 */ , 67642626, (word) "TransformConstantColor") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+308)/* var←c32444 */ , 67642882, (word) "ChooseColorSpace"); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+300)/* var←c32412 */ , 67643138, (word) "ColorPointFromColor") ; (void) XR←ExportVar(var←c38876, 42, (word) (( (bPt) gf←c0491)+84)/* colorOperatorClassTable←v5576 */ ); (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+268)/* var←c32284 */ , 67382017, (word) "FindColorOperatorClass") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+260)/* var←c32252 */ , 68955143, (word) "NewColorOperatorClass") ; (void) XR←ExportProcS(var←c38876, (word) (( (bPt) gf←c0491)+252)/* var←c32220 */ , 68431109, (word) "NewColorOperator"); } static void ImagerColorPrivateImpl←P0(formal←c077, formal←c072) word formal←c077; word formal←c072; { register ptr gf←c38972 = (ptr) &globalframe; /* ImagerColorPrivateImpl: */ SOURCE(1027, 20498) SOURCE(6422, 92) { word var←c33852; var←c33852 = XR←NewObject(8, (* (( (ptr) gf←c38972)+24) )); (* (ptr) var←c33852 ) = (word) (( (bPt) gf←c38972)+548)/* var←c33404 */ ; (* (( (ptr) var←c33852)+1) ) = (word) (( (bPt) gf←c38972)+540)/* var←c33372 */ ; (* (( (ptr) gf←c38972)+8)/* flatStructureClass←v4232 */ ) = var←c33852; }; SOURCE(8114, 95) { word var←c33884; var←c33884 = XR←NewObject(8, (* (( (ptr) gf←c38972)+24) )); (* (ptr) var←c33884 ) = (word) (( (bPt) gf←c38972)+516)/* var←c33276 */ ; (* (( (ptr) var←c33884)+1) ) = (word) (( (bPt) gf←c38972)+508)/* var←c33244 */ ; (* (( (ptr) gf←c38972)+9)/* mergeStructureClass←v4400 */ ) = var←c33884; }; SOURCE(13446, 134) { word var←c33916; var←c33916 = XR←NewObject(8, (* (( (ptr) gf←c38972)+24) )); (* (ptr) var←c33916 ) = (word) (( (bPt) gf←c38972)+412)/* var←c32860 */ ; (* (( (ptr) var←c33916)+1) ) = (word) (( (bPt) gf←c38972)+404)/* var←c32828 */ ; (* (( (ptr) gf←c38972)+10)/* sampleEncodingClass←v4904 */ ) = var←c33916; }; SOURCE(14097, 72) { word pd50; pd50 = (* (( (ptr) (* (( (ptr) gf←c38972)+165)/* var←c33948 */ ))+5) ); (* (( (ptr) gf←c38972)+11)/* namedColorTable←v5016 */ ) = (word) ( *( (fPt) ((* (ptr) pd50 ))))(53, 0, pd50); }; SOURCE(14424, 96) { word var←c33980; var←c33980 = XR←NewObject(28, (* (( (ptr) gf←c38972)+25) )); (* (ptr) var←c33980 ) = 6; (* (( (ptr) gf←c38972)+12)/* colorSpaceTable←v5100 */ ) = var←c33980; }; SOURCE(19549, 71) { word pd51; pd51 = (* (( (ptr) (* (( (ptr) gf←c38972)+165)/* var←c33948 */ ))+5) ); (* (( (ptr) gf←c38972)+21)/* colorOperatorClassTable←v5576 */ ) = (word) ( *( (fPt) ((* (ptr) pd51 ))))(17, 0, pd51); }; SOURCE(20592, 108) { word pd52; pd52 = (* (( (ptr) (* (( (ptr) gf←c38972)+166)/* var←c34012 */ ))+4) ); (* (( (ptr) gf←c38972)+22)/* colorOperatorCache←v5660 */ ) = (word) ( *( (fPt) ((* (ptr) pd52 ))))(2147483647, 2147483647, pd52) ; }; } static word MakeStructure←P60(class←v5780, data←v5808) word class←v5780; word data←v5808; { register ptr gf←c39004 = (ptr) &globalframe; word var←c5868; word structure←v12952; /* MakeStructure: */ SOURCE(3027, 188) SOURCE(3113, 81) structure←v12952 = XR←NewObject(8, (* (( (ptr) gf←c39004)+31) )); (* (ptr) structure←v12952 ) = class←v5780; (* (( (ptr) structure←v12952)+1) ) = data←v5808; SOURCE(3196, 19) return(structure←v12952); } static word SSize←P120(structure←v5928) word structure←v5928; { word var←c5972; /* SSize: */ SOURCE(3219, 132) SOURCE(3279, 72) { word pd53; if ((structure←v5928 == 0)) { return(0); } else { pd53 = (* (ptr) (* (ptr) structure←v5928 ) ); return((word) ( *( (fPt) ((* (ptr) pd53 ))))(structure←v5928, pd53)); }; }; } static word SCheckSize←P180(structure←v6032, size←v6060) word structure←v6032; word size←v6060; { register ptr gf←c39036 = (ptr) &globalframe; word var←c6104; word structureSize←v12996; /* SCheckSize: */ SOURCE(3355, 334) SOURCE(3431, 37) structureSize←v12996 = (word) SSize←P120(structure←v6032); SOURCE(3470, 42) if (( (int)structureSize←v12996 == (int)size←v6060)) { SOURCE(3499, 13) return(size←v6060); }; SOURCE(3514, 175) { word var←c34140; { W2 var←c34172; W2 var←c34204; W2 var←c0536; var←c34172.f0 = 5; var←c34172.f1 = size←v6060; var←c34204.f0 = 5; var←c34204.f1 = structureSize←v12996; (* (ptr) (word) &var←c0536 ) = 0; (* (( (ptr) (word) &var←c0536) + 1) ) = 0; { word pd54; pd54 = (* (( (ptr) (* (( (ptr) gf←c39036)+168)/* var←c34268 */ ))+62) ); var←c34140 = (word) ( *( (fPt) ((* (ptr) pd54 ))))((* (( (ptr) gf←c39036)+62) ), var←c34172, var←c34204, var←c0536, pd54) ; }; }; { W3 var←c092; var←c092.f0 = 66; var←c092.f1 = var←c34140; var←c092.f2 = 0; (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c39036)+167)/* var←c34108 */ ))+4) ), (word) &var←c092); }; }; } static void SGet←P240(formal←c098, structure←v6164, i←v6192) word formal←c098; word structure←v6164; word i←v6192; { register ptr gf←c39068 = (ptr) &globalframe; W2 var←c6236; /* SGet: */ SOURCE(3695, 173) SOURCE(3766, 57) if ((structure←v6164 == 0) || ( (int)i←v6192 < (int)0)) { SOURCE(3799, 24) (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c39068)+169)/* var←c34332 */ ))+8) ), 0); }; SOURCE(3825, 43) { W2 var←c34396; { word pd55; pd55 = (* (( (ptr) (* (ptr) structure←v6164 ))+1) ); (void) ( *( (fPt) ((* (ptr) pd55 ))))((word) &var←c34396, structure←v6164, i←v6192, pd55); }; var←c6236 = var←c34396; /* removed tail goto */ }; (* (W2Pt) formal←c098 ) = var←c6236; return; } static word SGetAtom←P300(structure←v6296, i←v6324) word structure←v6296; word i←v6324; { register ptr gf←c39100 = (ptr) &globalframe; word var←c6368; /* SGetAtom: */ SOURCE(3872, 241) SOURCE(3944, 70) { W2 var←c34428; (void) SGet←P240((word) &var←c34428, structure←v6296, i←v6324); if ((var←c34428.f0 == 0)) { { W2 e←v13040; e←v13040 = var←c34428; SOURCE(3999, 15) return(e←v13040.f1); }; } else { }; }; SOURCE(4033, 80) { W3 var←c0106; var←c0106.f0 = 70; var←c0106.f1 = (* (( (ptr) gf←c39100)+58) ); var←c0106.f2 = 0; (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c39100)+167)/* var←c34108 */ ))+4) ), (word) &var←c0106); }; } static word SGetReal←P360(structure←v6428, i←v6456) word structure←v6428; word i←v6456; { register ptr gf←c39132 = (ptr) &globalframe; word var←c6500; /* SGetReal: */ SOURCE(4119, 271) SOURCE(4191, 104) { W2 var←c34492; (void) SGet←P240((word) &var←c34492, structure←v6428, i←v6456); { word var←c34524; var←c34524 = var←c34492.f0; if ((var←c34524 == 3)) { { W2 e←v13084; e←v13084 = var←c34492; SOURCE(4245, 14) { float tf56; return(( tf56 = (float)(int)e←v13084.f1, *(word*)&tf56 )); }; }; } else { if ((var←c34524 == 2)) { { W2 e←v13128; e←v13128 = var←c34492; SOURCE(4280, 15) return(e←v13128.f1); }; } else { }; }; }; }; SOURCE(4314, 76) { W3 var←c0116; var←c0116.f0 = 70; var←c0116.f1 = (* (( (ptr) gf←c39132)+57) ); var←c0116.f2 = 0; (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c39132)+167)/* var←c34108 */ ))+4) ), (word) &var←c0116); }; } static word SGetInt←P420(structure←v6560, i←v6588) word structure←v6560; word i←v6588; { register ptr gf←c39164 = (ptr) &globalframe; word var←c6632; /* SGetInt: */ SOURCE(4396, 234) SOURCE(4466, 68) { W2 var←c34588; (void) SGet←P240((word) &var←c34588, structure←v6560, i←v6588); if ((var←c34588.f0 == 3)) { { W2 e←v13172; e←v13172 = var←c34588; SOURCE(4520, 14) return(e←v13172.f1); }; } else { }; }; SOURCE(4553, 77) { W3 var←c0124; var←c0124.f0 = 70; var←c0124.f1 = (* (( (ptr) gf←c39164)+55) ); var←c0124.f2 = 0; (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c39164)+167)/* var←c34108 */ ))+4) ), (word) &var←c0124); }; } static word SGetStructure←P480(structure←v6692, i←v6720) word structure←v6692; word i←v6720; { register ptr gf←c39196 = (ptr) &globalframe; word var←c6764; /* SGetStructure: */ SOURCE(4636, 399) SOURCE(4718, 222) { W2 var←c34652; (void) SGet←P240((word) &var←c34652, structure←v6692, i←v6720); { word var←c34748; var←c34748 = var←c34652.f0; switch (var←c34748) { case 1: { W2 e←v13216; e←v13216 = var←c34652; SOURCE(4778, 20) return(e←v13216.f1); }; case 3: { W2 e←v13260; e←v13260 = var←c34652; SOURCE(4818, 49) if (( (int)e←v13260.f1 == (int)0)) { SOURCE(4836, 31) return((word) StructureFromList←P960(0)); }; }; break; case 2: { W2 e←v13304; e←v13304 = var←c34652; SOURCE(4888, 52) { word x57; word x59; if ((( x57 = e←v13304.f1, *(float*)&x57 ) == ( x59 = (* (ptr) &fc58 ), *(float*)&x59 ))) { SOURCE(4909, 31) return((word) StructureFromList←P960(0)); }; }; }; break; default: break; }; }; }; SOURCE(4959, 76) { W3 var←c0135; var←c0135.f0 = 70; var←c0135.f1 = (* (( (ptr) gf←c39196)+54) ); var←c0135.f2 = 0; (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c39196)+167)/* var←c34108 */ ))+4) ), (word) &var←c0135); }; } static word SGetOptionalStructure←P540(structure←v6824, i←v6852, wantSize←v6880) word structure←v6824; word i←v6852; word wantSize←v6880; { register ptr gf←c39228 = (ptr) &globalframe; word var←c6924; /* SGetOptionalStructure: */ SOURCE(5041, 461) SOURCE(5151, 251) { W2 var←c34812; (void) SGet←P240((word) &var←c34812, structure←v6824, i←v6852); { word var←c34876; var←c34876 = var←c34812.f0; switch (var←c34876) { case 1: { W2 e←v13348; e←v13348 = var←c34812; SOURCE(5213, 60) if (( (int)wantSize←v6880 >= (int)0)) { SOURCE(5235, 38) { word var←c34844; var←c34844 = (word) SCheckSize←P180(e←v13348.f1, wantSize←v6880); }; }; SOURCE(5275, 20) return(e←v13348.f1); }; case 3: { W2 e←v13392; e←v13392 = var←c34812; SOURCE(5318, 30) if (( (int)e←v13392.f1 == (int)0)) { SOURCE(5336, 12) return(0); }; }; break; case 2: { W2 e←v13436; e←v13436 = var←c34812; SOURCE(5369, 33) { word x60; word x61; if ((( x60 = e←v13436.f1, *(float*)&x60 ) == ( x61 = (* (ptr) &fc58 ), *(float*)&x61 ))) { SOURCE(5390, 12) return(0); }; }; }; break; default: break; }; }; }; SOURCE(5421, 81) { W3 var←c0148; var←c0148.f0 = 70; var←c0148.f1 = (* (( (ptr) gf←c39228)+52) ); var←c0148.f2 = 0; (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c39228)+167)/* var←c34108 */ ))+4) ), (word) &var←c0148); }; } static word SGetColor←P600(structure←v6984, i←v7012) word structure←v6984; word i←v7012; { register ptr gf←c39260 = (ptr) &globalframe; word var←c7056; /* SGetColor: */ SOURCE(5508, 240) SOURCE(5582, 72) { W2 var←c34940; (void) SGet←P240((word) &var←c34940, structure←v6984, i←v7012); if ((var←c34940.f0 == 4)) { { W2 e←v13480; e←v13480 = var←c34940; SOURCE(5638, 16) return(e←v13480.f1); }; } else { }; }; SOURCE(5673, 75) { W3 var←c0156; var←c0156.f0 = 70; var←c0156.f1 = (* (( (ptr) gf←c39260)+51) ); var←c0156.f2 = 0; (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c39260)+167)/* var←c34108 */ ))+4) ), (word) &var←c0156); }; } static word SGetColorOperator←P660(structure←v7116, i←v7144) word structure←v7116; word i←v7144; { register ptr gf←c39292 = (ptr) &globalframe; word var←c7188; /* SGetColorOperator: */ SOURCE(5754, 280) SOURCE(5844, 88) { W2 var←c35004; (void) SGet←P240((word) &var←c35004, structure←v7116, i←v7144); if ((var←c35004.f0 == 5)) { { W2 e←v13524; e←v13524 = var←c35004; SOURCE(5908, 24) return(e←v13524.f1); }; } else { }; }; SOURCE(5951, 83) { W3 var←c0164; var←c0164.f0 = 70; var←c0164.f1 = (* (( (ptr) gf←c39292)+50) ); var←c0164.f2 = 0; (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c39292)+167)/* var←c34108 */ ))+4) ), (word) &var←c0164); }; } static void SGetProp←P720(formal←c0175, structure←v7248, key←v7276) word formal←c0175; word structure←v7248; word key←v7276; { W2 var←c7320; word size←v13568; /* SGetProp: */ SOURCE(6040, 309) SOURCE(6118, 28) size←v13568 = (word) SSize←P120(structure←v7248); SOURCE(6148, 146) { register word i←v13612; i←v13612 = 0; lab←L100005: ; if (( (int)(i←v13612 + 1) < (int)size←v13568)) { } else { goto lab←L100002; }; SOURCE(6188, 106) { W2 var←c35068; (void) SGet←P240((word) &var←c35068, structure←v7248, i←v13612); if ((var←c35068.f0 == 0)) { { W2 a←v13656; a←v13656 = var←c35068; SOURCE(6244, 50) if ((a←v13656.f1 == key←v7276)) { SOURCE(6265, 29) { W2 var←c35132; (void) SGet←P240((word) &var←c35132, structure←v7248, (i←v13612 + 1)); var←c7320 = var←c35132; goto lab←L100001; }; }; }; } else { }; }; i←v13612 = (i←v13612 + 2); goto lab←L100005; lab←L100002: ; }; SOURCE(6323, 26) var←c7320.f0 = 1; var←c7320.f1 = 0; /* removed tail goto */ lab←L100001: ; (* (W2Pt) formal←c0175 ) = var←c7320; return; } static word FlatSize←P780(structure←v7484) word structure←v7484; { register ptr gf←c39324 = (ptr) &globalframe; word var←c7528; word data←v13700; /* FlatSize: */ SOURCE(6516, 128) SOURCE(6572, 51) data←v13700 = XR←Narrow((* (( (ptr) structure←v7484)+1) ), (* (( (ptr) gf←c39324)+42) )); SOURCE(6625, 19) return((* (ptr) data←v13700 )); } static void FlatGet←P840(formal←c0184, structure←v7588, i←v7616) word formal←c0184; word structure←v7588; word i←v7616; { register ptr gf←c39356 = (ptr) &globalframe; W2 var←c7660; word data←v13756; W2 element←v13784; /* FlatGet: */ SOURCE(6647, 166) SOURCE(6714, 51) data←v13756 = XR←Narrow((* (( (ptr) structure←v7588)+1) ), (* (( (ptr) gf←c39356)+42) )); SOURCE(6767, 27) { word limit62; element←v13784 = (* (W2Pt) (* ((( (ptr) data←v13756)+1)+( limit62 = (* (ptr) data←v13756 ), BCK(i←v7616, limit62) )) ) ); }; SOURCE(6796, 17) var←c7660 = element←v13784; /* removed tail goto */ (* (W2Pt) formal←c0184 ) = var←c7660; return; } static word StructureFromElementGenerator←P900(elementGenerator←v7720) word elementGenerator←v7720; { W11 var←c39388; register ptr gf←c39420 = (ptr) &globalframe; word var←c7764; /* declaration of var←c35196 skipped */ /* declaration of var←c35228 skipped */ /* declaration of data←v13840 skipped */ /* declaration of size←v13868 skipped */ /* declaration of i←v13924 skipped */ /* StructureFromElementGenerator: */ SOURCE(6817, 946) { word tmpAddr63; tmpAddr63 = (word) (( (ptr) &var←c39388)+4)/* var←c35196 */ ; (* (ptr) tmpAddr63 ) = ( ((word) (fPt) StoreElements←P3792) ); (* (( (ptr) tmpAddr63) + 1) ) = 1; }; { word tmpAddr64; tmpAddr64 = (word) (( (ptr) &var←c39388)+6)/* var←c35228 */ ; (* (ptr) tmpAddr64 ) = ( ((word) (fPt) CountElements←P3732) ); (* (( (ptr) tmpAddr64) + 1) ) = 1; }; SOURCE(6921, 32) (* (( (ptr) &var←c39388)+8)/* data←v13840 */ ) = 0; SOURCE(6955, 13) (* (( (ptr) &var←c39388)+9)/* size←v13868 */ ) = 0; SOURCE(7022, 10) (* (( (ptr) &var←c39388)+10)/* i←v13924 */ ) = 0; SOURCE(7527, 31) (void) ( *( (fPt) ((* (ptr) elementGenerator←v7720 ))))((word) ((( (bPt) &var←c39388)+24)/* var←c35228 */ ), elementGenerator←v7720) ; SOURCE(7560, 34) { word var←c35260; word var←c35292; word var←c35324; { word idx65; var←c35260 = ( idx65 = (* (( (ptr) &var←c39388)+9)/* size←v13868 */ ), BCK(idx65, 67108863) ); }; var←c35292 = ((word) var←c35260 << 2); var←c35324 = XR←NewObject((4 + var←c35292), (* (( (ptr) gf←c39420)+42) )); (* (ptr) var←c35324 ) = var←c35260; (* (( (ptr) &var←c39388)+8)/* data←v13840 */ ) = var←c35324; }; SOURCE(7596, 31) (void) ( *( (fPt) ((* (ptr) elementGenerator←v7720 ))))((word) ((( (bPt) &var←c39388)+16)/* var←c35196 */ ), elementGenerator←v7720) ; SOURCE(7629, 17) if (( (int)(* (( (ptr) &var←c39388)+10)/* i←v13924 */ ) != (int)(* (( (ptr) &var←c39388)+9)/* size←v13868 */ ))) { SOURCE(7646, 5) (void) XR←RaiseUnnamedError(); }; SOURCE(7701, 62) return((word) MakeStructure←P60((* (( (ptr) gf←c39420)+8)/* flatStructureClass←v4232 */ ), (* (( (ptr) &var←c39388)+8)/* data←v13840 */ )) ); } static void CountElements←P3732(element←v30792, formal←c39452) W2 element←v30792; word formal←c39452; { formal←c39452 = (formal←c39452 - 24); /* CountElements: */ SOURCE(6970, 49) SOURCE(7003, 16) (* (( (ptr) formal←c39452)+9) ) = ((* (( (ptr) formal←c39452)+9) ) + 1); } static void StoreElements←P3792(element←v30852, formal←c39516) W2 element←v30852; word formal←c39516; { register ptr gf←c39484 = (ptr) &globalframe; formal←c39516 = (formal←c39516 - 16); /* StoreElements: */ SOURCE(7034, 490) SOURCE(7067, 427) { W2 var←c35388; var←c35388 = element←v30852; { word var←c35612; var←c35612 = var←c35388.f0; switch (var←c35612) { case 0: { W2 atom←v14008; atom←v14008 = var←c35388; SOURCE(7114, 34) { word var←c35420; var←c35420 = XR←NewObject(8, (* (( (ptr) gf←c39484)+43) )); (* (W2Pt) var←c35420 ) = atom←v14008; { word idx66; word limit67; (* ((( (ptr) (* (( (ptr) formal←c39516)+8) ))+1)+( /*1*/ idx66 = (* (( (ptr) formal←c39516)+10) ), /*1*/ limit67 = (* (ptr) (* (( (ptr) formal←c39516)+8) ) ), /*1*/ BCK(idx66, limit67) /*1*/ )) ) = var←c35420; }; }; }; break; case 1: { W2 structure←v14052; structure←v14052 = var←c35388; SOURCE(7182, 44) { word var←c35452; var←c35452 = XR←NewObject(8, (* (( (ptr) gf←c39484)+43) )); (* (W2Pt) var←c35452 ) = structure←v14052; { word idx68; word limit69; (* ((( (ptr) (* (( (ptr) formal←c39516)+8) ))+1)+( /*1*/ idx68 = (* (( (ptr) formal←c39516)+10) ), /*1*/ limit69 = (* (ptr) (* (( (ptr) formal←c39516)+8) ) ), /*1*/ BCK(idx68, limit69) /*1*/ )) ) = var←c35452; }; }; }; break; case 2: { W2 real←v14096; real←v14096 = var←c35388; SOURCE(7250, 34) { word var←c35484; var←c35484 = XR←NewObject(8, (* (( (ptr) gf←c39484)+43) )); (* (W2Pt) var←c35484 ) = real←v14096; { word idx70; word limit71; (* ((( (ptr) (* (( (ptr) formal←c39516)+8) ))+1)+( /*1*/ idx70 = (* (( (ptr) formal←c39516)+10) ), /*1*/ limit71 = (* (ptr) (* (( (ptr) formal←c39516)+8) ) ), /*1*/ BCK(idx70, limit71) /*1*/ )) ) = var←c35484; }; }; }; break; case 3: { W2 int←v14140; int←v14140 = var←c35388; SOURCE(7306, 32) { word var←c35516; var←c35516 = XR←NewObject(8, (* (( (ptr) gf←c39484)+43) )); (* (W2Pt) var←c35516 ) = int←v14140; { word idx72; word limit73; (* ((( (ptr) (* (( (ptr) formal←c39516)+8) ))+1)+( /*1*/ idx72 = (* (( (ptr) formal←c39516)+10) ), /*1*/ limit73 = (* (ptr) (* (( (ptr) formal←c39516)+8) ) ), /*1*/ BCK(idx72, limit73) /*1*/ )) ) = var←c35516; }; }; }; break; case 4: { W2 color←v14184; color←v14184 = var←c35388; SOURCE(7364, 36) { word var←c35548; var←c35548 = XR←NewObject(8, (* (( (ptr) gf←c39484)+43) )); (* (W2Pt) var←c35548 ) = color←v14184; { word idx74; word limit75; (* ((( (ptr) (* (( (ptr) formal←c39516)+8) ))+1)+( /*1*/ idx74 = (* (( (ptr) formal←c39516)+10) ), /*1*/ limit75 = (* (ptr) (* (( (ptr) formal←c39516)+8) ) ), /*1*/ BCK(idx74, limit75) /*1*/ )) ) = var←c35548; }; }; }; break; case 5: { W2 colorOperator←v14228; colorOperator←v14228 = var←c35388; SOURCE(7442, 52) { word var←c35580; var←c35580 = XR←NewObject(8, (* (( (ptr) gf←c39484)+43) )); (* (W2Pt) var←c35580 ) = colorOperator←v14228; { word idx76; word limit77; (* ((( (ptr) (* (( (ptr) formal←c39516)+8) ))+1)+( /*1*/ idx76 = (* (( (ptr) formal←c39516)+10) ), /*1*/ limit77 = (* (ptr) (* (( (ptr) formal←c39516)+8) ) ), /*1*/ BCK(idx76, limit77) /*1*/ )) ) = var←c35580; }; }; }; break; default: SOURCE(7507, 5) (void) XR←RaiseUnnamedError(); break; }; }; }; SOURCE(7514, 10) (* (( (ptr) formal←c39516)+10) ) = ((* (( (ptr) formal←c39516)+10) ) + 1); } static word StructureFromList←P960(formal←c0551) word formal←c0551; { W7 var←c39548; /* declaration of list←v7824 skipped */ word var←c7952; /* declaration of var←c35644 skipped */ var←c39548.f4/* list←v7824 */ = formal←c0551; /* StructureFromList: */ SOURCE(7767, 277) { word tmpAddr78; tmpAddr78 = (word) (( (ptr) &var←c39548)+5)/* var←c35644 */ ; (* (ptr) tmpAddr78 ) = ( ((word) (fPt) GenerateElements←P4140) ); (* (( (ptr) tmpAddr78) + 1) ) = 1; }; SOURCE(7988, 56) return((word) StructureFromElementGenerator←P900((word) ((( (bPt) &var←c39548)+20)/* var←c35644 */ ))); } static void GenerateElements←P4140(elementAction←v30984, formal←c39580) word elementAction←v30984; word formal←c39580; { formal←c39580 = (formal←c39580 - 20); /* GenerateElements: */ SOURCE(7846, 128) SOURCE(7885, 89) { register word each←v14316; each←v14316 = (* (( (ptr) formal←c39580)+4) ); lab←L100010: ; if ((each←v14316 != 0)) { } else { goto lab←L100007; }; SOURCE(7949, 25) (void) ( *( (fPt) ((* (ptr) elementAction←v30984 ))))((* (W2Pt) (each←v14316) ), elementAction←v30984); each←v14316 = (* (( (ptr) each←v14316)+2) ); goto lab←L100010; lab←L100007: ; }; } static word MergeSize←P1020(structure←v8112) word structure←v8112; { register ptr gf←c39612 = (ptr) &globalframe; word var←c8156; word data←v14444; /* MergeSize: */ SOURCE(8211, 145) SOURCE(8268, 52) data←v14444 = XR←Narrow((* (( (ptr) structure←v8112)+1) ), (* (( (ptr) gf←c39612)+48) )); SOURCE(8322, 34) return(((* (ptr) data←v14444 ) + (word) SSize←P120((* ((( (ptr) data←v14444)+2)) )))); } static void MergeGet←P1080(formal←c0227, structure←v8216, i←v8244) word formal←c0227; word structure←v8216; word i←v8244; { register ptr gf←c39644 = (ptr) &globalframe; W2 var←c8288; word data←v14500; /* MergeGet: */ SOURCE(8359, 210) SOURCE(8427, 52) data←v14500 = XR←Narrow((* (( (ptr) structure←v8216)+1) ), (* (( (ptr) gf←c39644)+48) )); SOURCE(8481, 88) if (( (int)i←v8244 < (int)(* (ptr) data←v14500 ))) { SOURCE(8504, 30) { W2 var←c35772; (void) SGet←P240((word) &var←c35772, (* (( (ptr) data←v14500)+1) ), i←v8244); var←c8288 = var←c35772; /* removed tail goto */ }; } else { SOURCE(8534, 35) { W2 var←c35836; (void) SGet←P240((word) &var←c35836, (* (( (ptr) data←v14500)+2) ), (i←v8244 - (* (ptr) data←v14500 ))); var←c8288 = var←c35836; /* removed tail goto */ }; }; (* (W2Pt) formal←c0227 ) = var←c8288; return; } static word SMergeProp←P1140(s←v8348, t←v8376) word s←v8348; word t←v8376; { register ptr gf←c39676 = (ptr) &globalframe; word var←c8420; /* SMergeProp: */ SOURCE(8575, 368) if ((s←v8348 == 0)) { SOURCE(8669, 10) return(t←v8376); } else { if ((t←v8376 == 0)) { SOURCE(8692, 10) return(s←v8348); } else { SOURCE(8715, 228) { word sSize←v14556; word tSize←v14584; word data←v14612; word structure←v14640; SOURCE(8717, 21) sSize←v14556 = (word) SSize←P120(s←v8348); SOURCE(8740, 21) tSize←v14584 = (word) SSize←P120(t←v8376); SOURCE(8763, 81) data←v14612 = XR←NewObject(12, (* (( (ptr) gf←c39676)+48) )); (* (ptr) data←v14612 ) = sSize←v14556; (* (( (ptr) data←v14612)+1) ) = s←v8348; (* (( (ptr) data←v14612)+2) ) = t←v8376; SOURCE(8846, 76) structure←v14640 = (word) MakeStructure←P60((* (( (ptr) gf←c39676)+9)/* mergeStructureClass←v4400 */ ), data←v14612); SOURCE(8924, 19) return(structure←v14640); }; }; }; } static word StructureEqual←P1200(s←v8480, t←v8508) word s←v8480; word t←v8508; { word var←c8552; /* StructureEqual: */ SOURCE(8950, 1183) SOURCE(9015, 1118) if ((s←v8480 == t←v8508)) { SOURCE(9029, 19) return(1); } else { SOURCE(9048, 1085) { word sSize←v14696; word tSize←v14724; SOURCE(9050, 21) sSize←v14696 = (word) SSize←P120(s←v8480); SOURCE(9073, 21) tSize←v14724 = (word) SSize←P120(t←v8508); SOURCE(9096, 36) if (( (int)sSize←v14696 != (int)tSize←v14724)) { SOURCE(9118, 14) return(0); }; SOURCE(9134, 956) { register word i←v14768 = 0; if (( (int)i←v14768 >= (int)sSize←v14696)) { goto lab←L100012; }; lab←L100015: ; SOURCE(9162, 928) { W2 var←c35900; (void) SGet←P240((word) &var←c35900, s←v8480, i←v14768); { word var←c36124; var←c36124 = var←c35900.f0; switch (var←c36124) { case 0: { W2 si←v14812; si←v14812 = var←c35900; SOURCE(9210, 112) { /*1*/ W2 var←c35932; /*1*/ (void) SGet←P240((word) &var←c35932, t←v8508, i←v14768); /*1*/ if ((var←c35932.f0 == 0)) { /*1*/ { /*1*/ W2 ti←v14856; /*1*/ ti←v14856 = var←c35932; SOURCE(9258, 50) /*1*/ if ((si←v14812.f1 != ti←v14856.f1)) { SOURCE(9282, 26) /*1*/ return(0); /*1*/ }; /*1*/ }; /*1*/ } /*1*/ else { SOURCE(9308, 14) /*1*/ return(0); /*1*/ }; /*1*/ }; }; break; case 3: { W2 si←v14900; si←v14900 = var←c35900; SOURCE(9343, 109) { /*1*/ W2 var←c35964; /*1*/ (void) SGet←P240((word) &var←c35964, t←v8508, i←v14768); /*1*/ if ((var←c35964.f0 == 3)) { /*1*/ { /*1*/ W2 ti←v14944; /*1*/ ti←v14944 = var←c35964; SOURCE(9390, 48) /*1*/ if (( (int)si←v14900.f1 != (int)ti←v14944.f1)) { SOURCE(9412, 26) /*1*/ return(0); /*1*/ }; /*1*/ }; /*1*/ } /*1*/ else { SOURCE(9438, 14) /*1*/ return(0); /*1*/ }; /*1*/ }; }; break; case 2: { W2 si←v14988; si←v14988 = var←c35900; SOURCE(9474, 112) { /*1*/ W2 var←c35996; /*1*/ (void) SGet←P240((word) &var←c35996, t←v8508, i←v14768); /*1*/ if ((var←c35996.f0 == 2)) { /*1*/ { /*1*/ W2 ti←v15032; /*1*/ ti←v15032 = var←c35996; SOURCE(9522, 50) /*1*/ { /*1*/ word x79; /*1*/ word x80; /*1*/ if ((( /*1*/ x79 = si←v14988.f1, *(float*)&x79 /*1*/ ) != ( /*1*/ x80 = ti←v15032.f1, *(float*)&x80 /*1*/ ))) { SOURCE(9546, 26) /*1*/ return(0); /*1*/ }; /*1*/ }; /*1*/ }; /*1*/ } /*1*/ else { SOURCE(9572, 14) /*1*/ return(0); /*1*/ }; /*1*/ }; }; break; case 1: { W2 si←v15076; si←v15076 = var←c35900; SOURCE(9613, 148) { /*1*/ W2 var←c36028; /*1*/ (void) SGet←P240((word) &var←c36028, t←v8508, i←v14768); /*1*/ if ((var←c36028.f0 == 1)) { /*1*/ { /*1*/ W2 ti←v15120; /*1*/ ti←v15120 = var←c36028; SOURCE(9666, 81) /*1*/ if ((0 == (word) StructureEqual←P1200(si←v15076.f1, ti←v15120.f1))) { SOURCE(9721, 26) /*1*/ return(0); /*1*/ }; /*1*/ }; /*1*/ } /*1*/ else { SOURCE(9747, 14) /*1*/ return(0); /*1*/ }; /*1*/ }; }; break; case 4: { W2 si←v15164; si←v15164 = var←c35900; SOURCE(9784, 132) { /*1*/ W2 var←c36060; /*1*/ (void) SGet←P240((word) &var←c36060, t←v8508, i←v14768); /*1*/ if ((var←c36060.f0 == 4)) { /*1*/ { /*1*/ W2 ti←v15208; /*1*/ ti←v15208 = var←c36060; SOURCE(9833, 69) /*1*/ if ((0 == (word) ColorEqual←P1260(si←v15164.f1, ti←v15208.f1))) { SOURCE(9876, 26) /*1*/ return(0); /*1*/ }; /*1*/ }; /*1*/ } /*1*/ else { SOURCE(9902, 14) /*1*/ return(0); /*1*/ }; /*1*/ }; }; break; case 5: { W2 si←v15252; si←v15252 = var←c35900; SOURCE(9947, 143) { /*1*/ W2 var←c36092; /*1*/ (void) SGet←P240((word) &var←c36092, t←v8508, i←v14768); /*1*/ if ((var←c36092.f0 == 5)) { /*1*/ { /*1*/ W2 ti←v15296; /*1*/ ti←v15296 = var←c36092; SOURCE(10004, 72) /*1*/ if ((si←v15252.f1 == ti←v15296.f1)) { SOURCE(10050, 26) /*1*/ return(0); /*1*/ }; /*1*/ }; /*1*/ } /*1*/ else { SOURCE(10076, 14) /*1*/ return(0); /*1*/ }; /*1*/ }; }; break; default: SOURCE(10103, 5) (void) XR←RaiseUnnamedError(); break; }; }; }; i←v14768 = (i←v14768 + 1); if (( (int)i←v14768 < (int)sSize←v14696)) { goto lab←L100015; }; lab←L100012: ; }; SOURCE(10119, 14) return(1); }; }; } static word ColorEqual←P1260(a←v8612, b←v8640) word a←v8612; word b←v8640; { word var←c8684; /* ColorEqual: */ SOURCE(10140, 301) SOURCE(10209, 27) if ((a←v8612 == b←v8640)) { SOURCE(10223, 13) return(1); }; SOURCE(10238, 149) { word var←c36156; var←c36156 = a←v8612; if ((var←c36156 == 0)) { goto lab←L100016; }; if (((* (ptr) var←c36156 ) == 0)) { { word aConstant←v15340; aConstant←v15340 = var←c36156; SOURCE(10287, 100) { word var←c36188; var←c36188 = b←v8640; if ((var←c36188 == 0)) { goto lab←L100017; }; if (((* (ptr) var←c36188 ) == 0)) { { word bConstant←v15384; bConstant←v15384 = var←c36188; SOURCE(10336, 51) return((word) ConstantColorsEqual←P1320(aConstant←v15340, bConstant←v15384)); }; } else { lab←L100017: ; }; }; }; } else { lab←L100016: ; }; }; SOURCE(10427, 14) return(0); } static word ConstantColorsEqual←P1320(a←v8744, b←v8772) word a←v8744; word b←v8772; { register ptr gf←c39708 = (ptr) &globalframe; word var←c8816; /* ConstantColorsEqual: */ SOURCE(10447, 728) SOURCE(10521, 25) if ((a←v8744 == b←v8772)) { SOURCE(10533, 13) return(1); }; SOURCE(10548, 627) { word var←c36252; var←c36252 = a←v8744; if ((var←c36252 == 0)) { goto lab←L100018; }; { word var←c36444; var←c36444 = (* (( (ptr) var←c36252)+1) ); if ((var←c36444 == 0)) { { word aOp←v15428; aOp←v15428 = var←c36252; SOURCE(10592, 273) { word var←c36284; var←c36284 = b←v8772; if ((var←c36284 == 0)) { goto lab←L100019; }; if (((* (( (ptr) var←c36284)+1) ) == 0)) { { word bOp←v15472; bOp←v15472 = var←c36284; SOURCE(10637, 60) if (((* (( (ptr) aOp←v15428)+2) ) != (* (( (ptr) bOp←v15472)+2) ))) { SOURCE(10683, 14) return(0); }; SOURCE(10699, 42) if (((* (( (ptr) aOp←v15428)+3) ) != (* (( (ptr) bOp←v15472)+3) ))) { SOURCE(10727, 14) return(0); }; SOURCE(10743, 69) { register word j←v15516 = 0; register word noName←c36316; noName←c36316 = (* (( (ptr) aOp←v15428)+3) ); if ((j←v15516 >= noName←c36316)) { /*1*/ goto lab←L100020; /*1*/ }; lab←L100023: ; SOURCE(10774, 38) { /*1*/ word limit81; /*1*/ word x82; /*1*/ word limit83; /*1*/ word x84; /*1*/ if ((( /*1*/ x82 = (* ((( (ptr) aOp←v15428)+4)+( /*1*/ limit81 = (* (( (ptr) aOp←v15428)+3) ), /*1*/ BCK(j←v15516, limit81) /*1*/ )) ), *(float*)&x82 /*1*/ ) != ( /*1*/ x84 = (* ((( (ptr) bOp←v15472)+4)+( /*1*/ limit83 = (* (( (ptr) bOp←v15472)+3) ), /*1*/ BCK(j←v15516, limit83) /*1*/ )) ), *(float*)&x84 /*1*/ ))) { SOURCE(10798, 14) /*1*/ return(0); /*1*/ }; /*1*/ }; j←v15516 = (j←v15516 + 1); if ((j←v15516 < noName←c36316)) { /*1*/ goto lab←L100023; /*1*/ }; lab←L100020: ; }; SOURCE(10823, 14) return(1); }; } else { lab←L100019: ; SOURCE(10851, 14) return(0); }; }; }; } else { if ((var←c36444 == 1)) { { word aSp←v15560; aSp←v15560 = var←c36252; SOURCE(10889, 286) { word var←c36348; var←c36348 = b←v8772; if ((var←c36348 == 0)) { goto lab←L100024; }; if (((* (( (ptr) var←c36348)+1) ) == 1)) { { word bSp←v15604; bSp←v15604 = var←c36348; SOURCE(10931, 42) if (((* (( (ptr) aSp←v15560)+2) ) != (* (( (ptr) bSp←v15604)+2) ))) { SOURCE(10959, 14) /*1*/ return(0); /*1*/ }; SOURCE(10975, 64) { /*1*/ word pd85; /*1*/ pd85 = (* (( (ptr) (* (( (ptr) gf←c39708)+170)/* var←c36380 */ ))+8) ); /*1*/ if ((0 == (word) ( *( (fPt) ((* (ptr) pd85 ))))((* (( (ptr) aSp←v15560)+3) ), (* (( (ptr) bSp←v15604)+3) ), 0, pd85))) { SOURCE(11025, 14) /*1*/ return(0); /*1*/ }; /*1*/ }; SOURCE(11041, 42) if (((* (( (ptr) aSp←v15560)+4) ) != (* (( (ptr) bSp←v15604)+4) ))) { SOURCE(11069, 14) /*1*/ return(0); /*1*/ }; SOURCE(11085, 60) return((word) ConstantColorsEqual←P1320((* (( (ptr) aSp←v15560)+5) ), (* (( (ptr) bSp←v15604)+5) ))); }; } else { lab←L100024: ; SOURCE(11161, 14) return(0); }; }; }; } else { lab←L100018: ; SOURCE(11188, 5) (void) XR←RaiseUnnamedError(); }; }; }; }; } static word ApplyPixelEncoding←P1380(pm←v8888, i←v8916, value←v8944) word pm←v8888; word i←v8916; word value←v8944; { word var←c8988; /* ApplyPixelEncoding: */ SOURCE(11298, 190) SOURCE(11390, 98) if ((pm←v8888 == 0)) { return(value←v8944); } else { { word var←c36508; word var←c36540; { word x86; word x87; word limit88; word x89; var←c36508 = (x87 = (x86 = (word) XR←REAL32←Round(value←v8944), MAX((int)(word), x86, 0)), x89 = ((* (ptr) (* ((( (ptr) pm←v8888)+1)+( limit88 = (* (ptr) pm←v8888 ), BCK(i←v8916, limit88) )) ) ) - 1), MIN((int)(word), x87, x89)); }; { word limit90; var←c36540 = (* ((( (ptr) pm←v8888)+1)+( limit90 = (* (ptr) pm←v8888 ), BCK(i←v8916, limit90) )) ); }; { word limit91; return((* ((( (ptr) var←c36540)+1)+( limit91 = (* (ptr) var←c36540 ), BCK(var←c36508, limit91) )) )); }; }; }; } static word PixelEncodingEqual←P1440(a←v9048, b←v9076) word a←v9048; word b←v9076; { word var←c9120; /* PixelEncodingEqual: */ SOURCE(11492, 294) SOURCE(11565, 35) if ((a←v9048 == 0) || (b←v9076 == 0)) { SOURCE(11588, 12) return( (unsigned) (a←v9048 == b←v9076)); }; SOURCE(11602, 60) if (((* (ptr) a←v9048 ) != (* (ptr) b←v9076 ))) { SOURCE(11648, 14) return(0); }; SOURCE(11664, 106) { register word i←v15648 = 0; register word noName←c36572; noName←c36572 = (* (ptr) a←v9048 ); if ((i←v15648 >= noName←c36572)) { goto lab←L100025; }; lab←L100028: ; SOURCE(11704, 66) { word limit92; word limit93; if ((0 == (word) SampleEncodingEqual←P1680((* ((( (ptr) a←v9048)+1)+( limit92 = (* (ptr) a←v9048 ), BCK(i←v15648, limit92) )) ), (* ((( (ptr) b←v9076)+1)+( limit93 = (* (ptr) b←v9076 ), BCK(i←v15648, limit93) )) )))) { SOURCE(11748, 22) return(0); }; }; i←v15648 = (i←v15648 + 1); if ((i←v15648 < noName←c36572)) { goto lab←L100028; }; lab←L100025: ; }; SOURCE(11772, 14) return(1); } static word PixelEncodingFromStructure←P1500(structure←v9180) word structure←v9180; { register ptr gf←c39740 = (ptr) &globalframe; word var←c9224; /* PixelEncodingFromStructure: */ SOURCE(11790, 330) SOURCE(11881, 239) if ((structure←v9180 == 0)) { SOURCE(11905, 18) return(0); } else { SOURCE(11923, 197) { word size←v15692; word map←v15720; SOURCE(11925, 28) { word idx94; size←v15692 = ( idx94 = (word) SSize←P120(structure←v9180), SGNCK(idx94) ); }; SOURCE(11955, 48) { word var←c36604; word var←c36636; word var←c36668; var←c36604 = BCK(size←v15692, 67108863); var←c36636 = ((word) var←c36604 << 2); var←c36668 = XR←NewObject((4 + var←c36636), (* (( (ptr) gf←c39740)+49) )); (* (ptr) var←c36668 ) = var←c36604; map←v15720 = var←c36668; }; SOURCE(12005, 100) { register word j←v15764 = 0; if (( (int)j←v15764 >= (int)size←v15692)) { goto lab←L100029; }; lab←L100032: ; SOURCE(12032, 73) { word var←c36700; { word var←c36732; var←c36732 = (word) SGetStructure←P480(structure←v9180, j←v15764); var←c36700 = (word) SampleEncodingFromStructure←P1740(var←c36732); }; { word limit95; (* ((( (ptr) map←v15720)+1)+( limit95 = (* (ptr) map←v15720 ), BCK(j←v15764, limit95) )) ) = var←c36700; }; }; j←v15764 = (j←v15764 + 1); if (( (int)j←v15764 < (int)size←v15692)) { goto lab←L100032; }; lab←L100029: ; }; SOURCE(12107, 13) return(map←v15720); }; }; } static word StructureFromPixelEncoding←P1560(formal←c0552) word formal←c0552; { W7 var←c39772; /* declaration of map←v9284 skipped */ word var←c9328; /* declaration of var←c36764 skipped */ var←c39772.f4/* map←v9284 */ = formal←c0552; /* StructureFromPixelEncoding: */ SOURCE(12127, 307) { word tmpAddr96; tmpAddr96 = (word) (( (ptr) &var←c39772)+5)/* var←c36764 */ ; (* (ptr) tmpAddr96 ) = ( ((word) (fPt) G←P5448) ); (* (( (ptr) tmpAddr96) + 1) ) = 1; }; SOURCE(12392, 42) return((word) StructureFromElementGenerator←P900((word) ((( (bPt) &var←c39772)+20)/* var←c36764 */ ))); } static void G←P5448(elementAction←v15884, formal←c39804) word elementAction←v15884; word formal←c39804; { formal←c39804 = (formal←c39804 - 20); /* G: */ SOURCE(12212, 175) SOURCE(12274, 113) { register word i←v15912 = 0; register word noName←c36828; noName←c36828 = (* (ptr) (* (( (ptr) formal←c39804)+4) ) ); if ((i←v15912 >= noName←c36828)) { goto lab←L100033; }; lab←L100036: ; SOURCE(12316, 71) { word var←c36860; { word limit97; var←c36860 = (word) StructureFromSampleEncoding←P1920((* (((( (ptr) (* (( (ptr) formal←c39804)+4) ))+1)+( limit97 = (* (ptr) (* (( (ptr) formal←c39804)+4) ) ), BCK(i←v15912, limit97) ))) )); }; { W2 var←c36892; var←c36892.f0 = 1; var←c36892.f1 = var←c36860; (void) ( *( (fPt) ((* (ptr) elementAction←v15884 ))))(var←c36892, elementAction←v15884); }; }; i←v15912 = (i←v15912 + 1); if ((i←v15912 < noName←c36828)) { goto lab←L100036; }; lab←L100033: ; }; } static word MakeSampleEncoding←P1620(size←v9400, sampleTableProc←v9428) word size←v9400; word sampleTableProc←v9428; { register ptr gf←c39836 = (ptr) &globalframe; word var←c9472; /* MakeSampleEncoding: */ SOURCE(12542, 307) SOURCE(12649, 200) if ((size←v9400 == 0)) { SOURCE(12664, 18) return(0); } else { SOURCE(12682, 169) { word map←v15956; SOURCE(12684, 50) { word var←c36924; word var←c36956; word var←c36988; var←c36924 = BCK(size←v9400, 67108863); var←c36956 = ((word) var←c36924 << 2); var←c36988 = XR←NewObject((4 + var←c36956), (* (( (ptr) gf←c39836)+41) )); (* (ptr) var←c36988 ) = var←c36924; map←v15956 = var←c36988; }; SOURCE(12736, 99) { register word i←v16000 = 0; register word noName←c37020; noName←c37020 = size←v9400; if ((i←v16000 >= noName←c37020)) { goto lab←L100037; }; lab←L100040: ; SOURCE(12763, 72) { word var←c37052; { float tf98; if ((sampleTableProc←v9428 == 0)) { var←c37052 = ( tf98 = (float)(unsigned)i←v16000, *(word*)&tf98 ); } else { var←c37052 = (word) ( *( (fPt) ((* (ptr) sampleTableProc←v9428 ))))(i←v16000, sampleTableProc←v9428); }; }; { word limit99; (* ((( (ptr) map←v15956)+1)+( limit99 = (* (ptr) map←v15956 ), BCK(i←v16000, limit99) )) ) = var←c37052; }; }; i←v16000 = (i←v16000 + 1); if ((i←v16000 < noName←c37020)) { goto lab←L100040; }; lab←L100037: ; }; SOURCE(12837, 12) return(map←v15956); }; }; } static word SampleEncodingEqual←P1680(a←v9532, b←v9560) word a←v9532; word b←v9560; { word var←c9604; /* SampleEncodingEqual: */ SOURCE(12858, 288) SOURCE(12933, 41) if ( ( (a←v9532 == 0) ? (b←v9560 == 0) : 0 ) ) { SOURCE(12961, 13) return(1); }; SOURCE(12976, 41) if ((a←v9532 == 0) || (b←v9560 == 0)) { SOURCE(13003, 14) return(0); }; SOURCE(13019, 38) if (((* (ptr) a←v9532 ) != (* (ptr) b←v9560 ))) { SOURCE(13043, 14) return(0); }; SOURCE(13059, 71) { register word i←v16044 = 0; register word noName←c37084; noName←c37084 = (* (ptr) a←v9532 ); if ((i←v16044 >= noName←c37084)) { goto lab←L100041; }; lab←L100044: ; SOURCE(13088, 42) { word limit100; word x101; word limit102; word x103; if ((( x101 = (* ((( (ptr) a←v9532)+1)+( limit100 = (* (ptr) a←v9532 ), BCK(i←v16044, limit100) )) ), *(float*)&x101 ) != ( x103 = (* ((( (ptr) b←v9560)+1)+( limit102 = (* (ptr) b←v9560 ), BCK(i←v16044, limit102) )) ), *(float*)&x103 ))) { SOURCE(13108, 22) return(0); }; }; i←v16044 = (i←v16044 + 1); if ((i←v16044 < noName←c37084)) { goto lab←L100044; }; lab←L100041: ; }; SOURCE(13132, 14) return(1); } static word SampleEncodingFromStructure←P1740(structure←v9664) word structure←v9664; { register ptr gf←c39868 = (ptr) &globalframe; word var←c9708; word size←v16088; /* SampleEncodingFromStructure: */ SOURCE(13150, 289) SOURCE(13243, 28) size←v16088 = (word) SSize←P120(structure←v9664); SOURCE(13273, 166) if (( (int)size←v16088 == (int)0)) { SOURCE(13290, 13) return(0); } else { SOURCE(13310, 129) { word v←v16132; SOURCE(13312, 48) { word var←c37116; word var←c37148; word var←c37180; var←c37116 = BCK(size←v16088, 67108863); var←c37148 = ((word) var←c37116 << 2); var←c37180 = XR←NewObject((4 + var←c37148), (* (( (ptr) gf←c39868)+41) )); (* (ptr) var←c37180 ) = var←c37116; v←v16132 = var←c37180; }; SOURCE(13362, 64) { register word i←v16176 = 0; if (( (int)i←v16176 >= (int)size←v16088)) { goto lab←L100045; }; lab←L100048: ; SOURCE(13389, 37) { word var←c37212; var←c37212 = (word) SGetReal←P360(structure←v9664, i←v16176); { word limit104; (* ((( (ptr) v←v16132)+1)+( limit104 = (* (ptr) v←v16132 ), BCK(i←v16176, limit104) )) ) = var←c37212; }; }; i←v16176 = (i←v16176 + 1); if (( (int)i←v16176 < (int)size←v16088)) { goto lab←L100048; }; lab←L100045: ; }; SOURCE(13428, 11) return(v←v16132); }; }; } static word SampleEncodingSize←P1800(structure←v9768) word structure←v9768; { register ptr gf←c39900 = (ptr) &globalframe; word var←c9812; /* SampleEncodingSize: */ SOURCE(13583, 157) SOURCE(13649, 91) { word var←c37244; var←c37244 = (* (( (ptr) structure←v9768)+1) ); if ((var←c37244 == 0)) { goto lab←L100049; }; if (((* (( (ptr) gf←c39900)+41) ) == XR←GetReferentType(var←c37244))) { { word v←v16220; v←v16220 = var←c37244; SOURCE(13702, 15) return((* (ptr) v←v16220 )); }; } else { lab←L100049: ; SOURCE(13730, 10) return(0); }; }; } static void SampleEncodingGet←P1860(formal←c0352, structure←v9872, i←v9900) word formal←c0352; word structure←v9872; word i←v9900; { register ptr gf←c39932 = (ptr) &globalframe; W2 var←c9944; /* SampleEncodingGet: */ SOURCE(13746, 184) SOURCE(13823, 107) { word var←c37276; var←c37276 = (* (( (ptr) structure←v9872)+1) ); if ((var←c37276 == 0)) { goto lab←L100051; }; if (((* (( (ptr) gf←c39932)+41) ) == XR←GetReferentType(var←c37276))) { { word v←v16264; v←v16264 = var←c37276; SOURCE(13876, 21) { W2 var←c37340; { W2 var←c37308; var←c37308.f0 = 2; { word limit105; var←c37308.f1 = (* ((( (ptr) v←v16264)+1)+( limit105 = (* (ptr) v←v16264 ), BCK(i←v9900, limit105) )) ); }; var←c37340 = var←c37308; }; var←c9944 = var←c37340; /* removed tail goto */ }; }; } else { lab←L100051: ; SOURCE(13910, 20) var←c9944.f0 = 2; var←c9944.f1 = (* (ptr) &fc58 ); goto lab←L100050; }; }; lab←L100050: ; (* (W2Pt) formal←c0352 ) = var←c9944; return; } static word StructureFromSampleEncoding←P1920(e←v10004) word e←v10004; { register ptr gf←c39964 = (ptr) &globalframe; word var←c10048; /* StructureFromSampleEncoding: */ SOURCE(13936, 157) SOURCE(14021, 72) if ((e←v10004 == 0)) { return(0); } else { return((word) MakeStructure←P60((* (( (ptr) gf←c39964)+10)/* sampleEncodingClass←v4904 */ ), e←v10004)); }; } static void RegisterNamedColor←P1980(color←v10108) word color←v10108; { register ptr gf←c39996 = (ptr) &globalframe; /* RegisterNamedColor: */ SOURCE(14171, 168) SOURCE(14241, 25) if (((* (( (ptr) color←v10108)+3) ) == 0)) { SOURCE(14266, 5) (void) XR←RaiseUnnamedError(); }; SOURCE(14273, 66) { word var←c37436; word pd106; pd106 = (* (( (ptr) (* (( (ptr) gf←c39996)+165)/* var←c33948 */ ))+10) ); var←c37436 = (word) ( *( (fPt) ((* (ptr) pd106 ))))((* (( (ptr) gf←c39996)+11)/* namedColorTable←v5016 */ ), (* (( (ptr) color←v10108)+3) ), color←v10108, pd106); }; } static word DefineProcessSpace←P2040(colorOperator←v10272, val←v10300) word colorOperator←v10272; word val←v10300; { word var←c10364; word result←v16308; /* DefineProcessSpace: */ SOURCE(14523, 260) SOURCE(14660, 24) result←v16308 = val←v10300; SOURCE(14686, 79) lab←L100054: ; if ((0 == (word) StoreColorOperator←P2100(result←v16308, colorOperator←v10272))) { } else { goto lab←L100052; }; SOURCE(14737, 28) result←v16308 = (result←v16308 + 1); goto lab←L100054; lab←L100052: ; SOURCE(14767, 16) return(result←v16308); } static word StoreColorOperator←P2100(colorSpace←v10424, colorOperator←v10452) word colorSpace←v10424; word colorOperator←v10452; { register ptr gf←c40028 = (ptr) &globalframe; word var←c10496; word cst←v16352; /* StoreColorOperator: */ SOURCE(14787, 567) (void) (XR←MonitorEntry((word) (( (bPt) gf←c40028)+16)/* LOCK←v2888 */ )); SOURCE(14892, 45) cst←v16352 = (* (( (ptr) gf←c40028)+12)/* colorSpaceTable←v5100 */ ); SOURCE(14939, 259) if ((colorSpace←v10424 >= (* (ptr) cst←v16352 ))) { SOURCE(14969, 231) { word newSize←v16408; word new←v16436; SOURCE(14971, 55) { word x107; newSize←v16408 = (x107 = ((* (ptr) cst←v16352 ) << 1), MAX( (unsigned) , x107, (colorSpace←v10424 + 1))); }; SOURCE(15028, 62) { word var←c37468; word var←c37500; var←c37468 = ((word) newSize←v16408 << 2); var←c37500 = XR←NewObject((4 + var←c37468), (* (( (ptr) gf←c40028)+25) )); (* (ptr) var←c37500 ) = newSize←v16408; new←v16436 = var←c37500; }; SOURCE(15092, 68) { register word s←v16492 = 0; register word noName←c37532; noName←c37532 = (* (ptr) cst←v16352 ); if ((s←v16492 >= noName←c37532)) { goto lab←L100055; }; lab←L100058: ; SOURCE(15145, 15) { word limit108; word limit109; (* ((( (ptr) new←v16436)+1)+( limit108 = (* (ptr) new←v16436 ), BCK(s←v16492, limit108) )) ) = (* ((( (ptr) cst←v16352)+1)+( limit109 = (* (ptr) cst←v16352 ), BCK(s←v16492, limit109) )) ); }; s←v16492 = (s←v16492 + 1); if ((s←v16492 < noName←c37532)) { goto lab←L100058; }; lab←L100055: ; }; SOURCE(15171, 27) (* (( (ptr) gf←c40028)+12)/* colorSpaceTable←v5100 */ ) = new←v16436; cst←v16352 = new←v16436; }; }; SOURCE(15203, 151) { word var←c37596; { word limit110; var←c37596 = (* ((( (ptr) cst←v16352)+1)+( limit110 = (* (ptr) cst←v16352 ), BCK(colorSpace←v10424, limit110) )) ); }; if ((var←c37596 == colorOperator←v10452)) { SOURCE(15250, 14) (void) (XR←MonitorExit((word) (( (bPt) gf←c40028)+16)/* LOCK←v2888 */ )); return(1); } else { if ((var←c37596 == 0)) { SOURCE(15276, 31) { word limit111; (* ((( (ptr) cst←v16352)+1)+( limit111 = (* (ptr) cst←v16352 ), BCK(colorSpace←v10424, limit111) )) ) = colorOperator←v10452; }; SOURCE(15309, 14) (void) (XR←MonitorExit((word) (( (bPt) gf←c40028)+16)/* LOCK←v2888 */ )); return(1); } else { SOURCE(15339, 15) (void) (XR←MonitorExit((word) (( (bPt) gf←c40028)+16)/* LOCK←v2888 */ )); return(0); }; }; }; } static word ColorOperatorFromColorSpace←P2160(colorSpace←v10556) word colorSpace←v10556; { register ptr gf←c40060 = (ptr) &globalframe; word var←c10600; /* ColorOperatorFromColorSpace: */ SOURCE(15361, 187) (void) (XR←MonitorEntry((word) (( (bPt) gf←c40060)+16)/* LOCK←v2888 */ )); SOURCE(15461, 87) { word var←c37660; if ((colorSpace←v10556 < (* (ptr) (* (( (ptr) gf←c40060)+12)/* colorSpaceTable←v5100 */ ) ))) { { word var←c37628; var←c37628 = (* (( (ptr) gf←c40060)+12)/* colorSpaceTable←v5100 */ ); { word limit112; var←c37660 = (* ((( (ptr) var←c37628)+1)+( limit112 = (* (ptr) var←c37628 ), BCK(colorSpace←v10556, limit112) )) ); }; }; } else { var←c37660 = 0; }; (void) (XR←MonitorExit((word) (( (bPt) gf←c40060)+16)/* LOCK←v2888 */ )); return(var←c37660); }; } static word ColorSpaceDimension←P2220(colorSpace←v10660) word colorSpace←v10660; { word var←c10704; /* ColorSpaceDimension: */ SOURCE(15552, 306) SOURCE(15628, 230) { word var←c37692; var←c37692 = colorSpace←v10660; switch (var←c37692) { case 0: SOURCE(15657, 10) return(1); case 1: case 2: case 3: SOURCE(15692, 10) return(3); case 4: SOURCE(15718, 10) return(2); default: SOURCE(15741, 117) { word op←v16536; SOURCE(15743, 59) op←v16536 = (word) ColorOperatorFromColorSpace←P2160(colorSpace←v10660); SOURCE(15804, 54) if ((op←v16536 == 0)) { return(0); } else { return((* (( (ptr) op←v16536)+1) )); }; }; }; }; } static word GetPixelEncoding←P2280(colorOperator←v10764) word colorOperator←v10764; { word var←c10808; word class←v16580; /* GetPixelEncoding: */ SOURCE(15864, 183) SOURCE(15953, 47) class←v16580 = (* (( (ptr) colorOperator←v10764)+2) ); SOURCE(16002, 45) { word pd113; pd113 = (* (( (ptr) class←v16580)+3) ); return((word) ( *( (fPt) ((* (ptr) pd113 ))))(colorOperator←v10764, pd113)); }; } static word TransformConstantColor←P2340(formal←c0553, colorSpace←v10896) word formal←c0553; word colorSpace←v10896; { W8 var←c40092; /* declaration of color←v10868 skipped */ word var←c10940; /* declaration of var←c37756 skipped */ word class←v16624; /* declaration of pixelEncoding←v16652 skipped */ word out←v16708; var←c40092.f4/* color←v10868 */ = formal←c0553; /* TransformConstantColor: */ SOURCE(16053, 457) { word tmpAddr114; tmpAddr114 = (word) (( (ptr) &var←c40092)+5)/* var←c37756 */ ; (* (ptr) tmpAddr114 ) = ( ((word) (fPt) pixelIn←P6036) ); (* (( (ptr) tmpAddr114) + 1) ) = 1; }; SOURCE(16163, 53) class←v16624 = (* (( (ptr) (* (( (ptr) var←c40092.f4/* color←v10868 */ )+2) ))+2) ); SOURCE(16218, 68) var←c40092.f7/* pixelEncoding←v16652 */ = (word) GetPixelEncoding←P2280((* ((( (ptr) var←c40092.f4/* color←v10868 */ )+2) ) )); SOURCE(16370, 65) { word var←c37788; var←c37788 = (word) ColorSpaceDimension←P2220(colorSpace←v10896); out←v16708 = (word) MakeColorPoint←P2460(var←c37788, (* (ptr) &fc58 )); }; SOURCE(16437, 58) { word pd115; pd115 = (* (( (ptr) class←v16624)+4) ); (void) ( *( (fPt) ((* (ptr) pd115 ))))((* (( (ptr) var←c40092.f4/* color←v10868 */ )+2) ), (word) (( (bPt) &var←c40092)+20) /* var←c37756 */ , colorSpace←v10896, out←v16708, pd115); }; SOURCE(16497, 13) return(out←v16708); } static word pixelIn←P6036(i←v31256, formal←c40124) word i←v31256; word formal←c40124; { word var←c31300; formal←c40124 = (formal←c40124 - 20); /* pixelIn: */ SOURCE(16288, 79) SOURCE(16311, 56) { word limit116; return((word) ApplyPixelEncoding←P1380((* (( (ptr) formal←c40124)+7) ), i←v31256, (* ((( (ptr) (* (( (ptr) formal←c40124)+4) ))+4)+( limit116 = (* (( (ptr) (* (( (ptr) formal←c40124)+4) ))+3) ), BCK(i←v31256, limit116) )) ))); }; } static word ApplyToList←P2400(colorOperator←v11000, colorSpace←v11028, formal←c0554) word colorOperator←v11000; word colorSpace←v11028; word formal←c0554; { W8 var←c40156; /* declaration of pixel←v11056 skipped */ register ptr gf←c40188 = (ptr) &globalframe; word var←c11184; /* declaration of var←c37852 skipped */ word class←v16752; /* declaration of pixelEncoding←v16780 skipped */ word outList←v16836; word out←v16864; var←c40156.f4/* pixel←v11056 */ = formal←c0554; /* ApplyToList: */ SOURCE(16514, 680) { word tmpAddr117; tmpAddr117 = (word) (( (ptr) &var←c40156)+5)/* var←c37852 */ ; (* (ptr) tmpAddr117 ) = ( ((word) (fPt) pixelIn←P6096) ); (* (( (ptr) tmpAddr117) + 1) ) = 1; }; SOURCE(16642, 47) class←v16752 = (* (( (ptr) colorOperator←v11000)+2) ); SOURCE(16691, 62) var←c40156.f7/* pixelEncoding←v16780 */ = (word) GetPixelEncoding←P2280(colorOperator←v11000); SOURCE(16911, 9) { word var←c37916; outList←v16836 = XR←NewObject(8, (* (( (ptr) gf←c40188)+40) )); var←c37916 = outList←v16836; (* (ptr) var←c37916 ) = (* (ptr) &fc58 ); }; SOURCE(16944, 65) { word var←c37948; var←c37948 = (word) ColorSpaceDimension←P2220(colorSpace←v11028); out←v16864 = (word) MakeColorPoint←P2460(var←c37948, (* (ptr) &fc58 )); }; SOURCE(17011, 52) { word pd118; pd118 = (* (( (ptr) class←v16752)+4) ); (void) ( *( (fPt) ((* (ptr) pd118 ))))(colorOperator←v11000, (word) (( (bPt) &var←c40156)+20)/* var←c37852 */ , colorSpace←v11028, out←v16864, pd118) ; }; SOURCE(17065, 72) { register word i←v16992; i←v16992 = (* (( (ptr) out←v16864)+1) ); if ((0 >= i←v16992)) { goto lab←L100059; }; i←v16992 = (i←v16992 - 1); lab←L100062: ; SOURCE(17106, 31) { word var←c37980; var←c37980 = XR←NewObject(8, (* (( (ptr) gf←c40188)+40) )); { word limit119; (* (ptr) var←c37980 ) = (* ((( (ptr) out←v16864)+2)+( limit119 = (* (( (ptr) out←v16864)+1) ), BCK(i←v16992, limit119) )) ); }; (* (( (ptr) var←c37980)+1) ) = outList←v16836; outList←v16836 = var←c37980; }; if ((0 >= i←v16992)) { goto lab←L100059; }; i←v16992 = (i←v16992 - 1); goto lab←L100062; lab←L100059: ; }; SOURCE(17148, 28) out←v16864 = (word) DestroyColorPoint←P2520(out←v16864); SOURCE(17178, 16) return(outList←v16836); } static word pixelIn←P6096(i←v31360, formal←c40220) word i←v31360; word formal←c40220; { word var←c31404; word list←v17036; formal←c40220 = (formal←c40220 - 20); /* pixelIn: */ SOURCE(16755, 153) SOURCE(16778, 6) list←v17036 = (* (( (ptr) formal←c40220)+4) ); SOURCE(16806, 42) { register word noName←c38012 = 0; register word noName←c38044; noName←c38044 = i←v31360; if ((noName←c38012 >= noName←c38044)) { goto lab←L100063; }; lab←L100066: ; SOURCE(16824, 24) list←v17036 = (* (( (ptr) list←v17036)+1) ); noName←c38012 = (noName←c38012 + 1); if ((noName←c38012 < noName←c38044)) { goto lab←L100066; }; lab←L100063: ; }; SOURCE(16850, 58) return((word) ApplyPixelEncoding←P1380((* (( (ptr) formal←c40220)+7) ), i←v31360, (* (ptr) list←v17036 ))); } static word MakeColorPoint←P2460(dim←v11400, s←v11428) word dim←v11400; word s←v11428; { register ptr gf←c40252 = (ptr) &globalframe; word d←v11472; /* MakeColorPoint: */ SOURCE(17308, 416) SOURCE(17308, 416) d←v11472 = 0; SOURCE(17576, 37) if (((dim←v11400 - 1) <= 3)) { SOURCE(17601, 12) SOURCE(17601, 12) (void) (XR←MonitorEntry((word) (( (bPt) gf←c40252)+16)/* LOCK←v2888 */ )); SOURCE(17424, 137) { register word i←v17268 = 0; lab←L100070: ; SOURCE(17472, 29) d←v11472 = (* (( (ptr) (( (W4Pt) (( (ptr) gf←c40252)+13)/* scratchColorPoint←v5352 */ )+BCK(i←v17268, 2)))+BCK((dim←v11400 - 1), 4) ) ); SOURCE(17503, 58) if ((d←v11472 != 0)) { SOURCE(17521, 31) (* (( (ptr) (( (W4Pt) (( (ptr) gf←c40252)+13)/* scratchColorPoint←v5352 */ )+BCK(i←v17268, 2)))+BCK((dim←v11400 - 1), 4)) ) = 0; SOURCE(17554, 7) goto lab←L100071; }; if ((i←v17268 >= 1)) { goto lab←L100067; }; i←v17268 = (i←v17268 + 1); goto lab←L100070; lab←L100067: ; }; lab←L100071: ; (void) (XR←MonitorExit((word) (( (bPt) gf←c40252)+16)/* LOCK←v2888 */ )); }; SOURCE(17615, 43) if ((d←v11472 == 0)) { SOURCE(17631, 27) { word var←c38108; word var←c38140; word var←c38172; var←c38108 = BCK(dim←v11400, 67108863); var←c38140 = ((word) var←c38108 << 2); var←c38172 = XR←NewObject((8 + var←c38140), (* (( (ptr) gf←c40252)+39) )); (* (( (ptr) var←c38172)+1) ) = var←c38108; d←v11472 = var←c38172; }; }; SOURCE(17660, 20) (* (ptr) d←v11472 ) = 0; SOURCE(17682, 42) { register word i←v17224 = 0; register word noName←c38204; noName←c38204 = dim←v11400; if ((i←v17224 >= noName←c38204)) { goto lab←L100072; }; lab←L100075: ; SOURCE(17708, 16) { word limit120; (* ((( (ptr) d←v11472)+2)+( limit120 = (* (( (ptr) d←v11472)+1) ), BCK(i←v17224, limit120) )) ) = s←v11428; }; i←v17224 = (i←v17224 + 1); if ((i←v17224 < noName←c38204)) { goto lab←L100075; }; lab←L100072: ; }; SOURCE(17308, 416) return(d←v11472); } static word DestroyColorPoint←P2520(d←v11532) word d←v11532; { register ptr gf←c40284 = (ptr) &globalframe; word var←c11576; /* DestroyColorPoint: */ SOURCE(17730, 275) (void) (XR←MonitorEntry((word) (( (bPt) gf←c40284)+16)/* LOCK←v2888 */ )); SOURCE(17730, 275) var←c11576 = 0; SOURCE(17814, 191) if ((d←v11532 != 0)) { SOURCE(17830, 190) { word dim←v17296; SOURCE(17832, 16) dim←v17296 = (* (( (ptr) d←v11532)+1) ); SOURCE(17850, 155) if (((dim←v17296 - 1) <= 3)) { SOURCE(17877, 128) { register word i←v17340 = 0; lab←L100079: ; SOURCE(17925, 80) if (((* (( (ptr) (( (W4Pt) (( (ptr) gf←c40284)+13)/* scratchColorPoint←v5352 */ )+BCK(i←v17340, 2)))+BCK((dim←v17296 - 1), 4) ) ) == 0)) { SOURCE(17967, 29) (* (( (ptr) (( (W4Pt) (( (ptr) gf←c40284)+13)/* scratchColorPoint←v5352 */ )+BCK(i←v17340, 2)))+BCK((dim←v17296 - 1), 4)) ) = d←v11532; SOURCE(17998, 7) (void) (XR←MonitorExit((word) (( (bPt) gf←c40284)+16)/* LOCK←v2888 */ )); return(var←c11576); }; if ((i←v17340 >= 1)) { goto lab←L100076; }; i←v17340 = (i←v17340 + 1); goto lab←L100079; lab←L100076: ; }; }; }; }; SOURCE(17730, 275) (void) (XR←MonitorExit((word) (( (bPt) gf←c40284)+16)/* LOCK←v2888 */ )); return(var←c11576); } static word ChooseColorSpace←P2580(colorOperator←v11636, spaces←v11664) word colorOperator←v11636; word spaces←v11664; { register ptr gf←c40316 = (ptr) &globalframe; word var←c11792; /* ChooseColorSpace: */ SOURCE(18027, 572) SOURCE(18141, 291) { register word tail←v17384; tail←v17384 = spaces←v11664; lab←L100083: ; if ((tail←v17384 != 0)) { } else { goto lab←L100080; }; { word c←v17512; SOURCE(18210, 26) c←v17512 = (* (ptr) tail←v17384 ); SOURCE(18238, 74) if (((word) ColorOperatorFromColorSpace←P2160((* (ptr) (tail←v17384) )) == colorOperator←v11636)) { SOURCE(18302, 10) return(c←v17512); }; SOURCE(18314, 118) { register word t←v17556; t←v17556 = (* (( (ptr) (* (( (ptr) colorOperator←v11636)+2) ))+6) ); lab←L100087: ; if ((t←v17556 != 0)) { } else { goto lab←L100084; }; SOURCE(18402, 30) if (((* (ptr) t←v17556 ) == c←v17512)) { SOURCE(18422, 10) return(c←v17512); }; t←v17556 = (* (( (ptr) t←v17556)+1) ); goto lab←L100087; lab←L100084: ; }; }; tail←v17384 = (* (( (ptr) tail←v17384)+1) ); goto lab←L100083; lab←L100080: ; }; SOURCE(18452, 147) { word var←c38236; { word var←c38268; word var←c38300; var←c38268 = XR←NewObject(12, (* (( (ptr) gf←c40316)+38) )); var←c38300 = var←c38268; (* (ptr) var←c38300 ) = (* (( (ptr) gf←c40316)+56) ); (* (( (ptr) var←c38300)+1) ) = colorOperator←v11636; var←c38236 = var←c38268; }; { W3 var←c0435; var←c0435.f0 = 101; var←c0435.f1 = (* (( (ptr) gf←c40316)+53) ); var←c0435.f2 = var←c38236; (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c40316)+167)/* var←c34108 */ ))+4) ), (word) &var←c0435); }; }; } static word ColorPointFromColor←P2640(color←v11852, transform←v11880) word color←v11852; word transform←v11880; { word var←c11924; word colorSpace←v17684; word v←v17712; word d←v17740; /* ColorPointFromColor: */ SOURCE(18605, 338) SOURCE(18715, 41) colorSpace←v17684 = (* (ptr) transform←v11880 ); SOURCE(18758, 57) v←v17712 = (word) TransformConstantColor←P2340(color←v11852, colorSpace←v17684); SOURCE(18817, 54) d←v17740 = (word) MakeColorPoint←P2460((* (( (ptr) (* (( (ptr) transform←v11880)+1) ))+1) ), (* (ptr) &fc58 )); SOURCE(18873, 31) { word pd121; pd121 = (* (( (ptr) transform←v11880)+2) ); (void) ( *( (fPt) ((* (ptr) pd121 ))))(transform←v11880, v←v17712, d←v17740, pd121); }; SOURCE(18906, 24) v←v17712 = (word) DestroyColorPoint←P2520(v←v17712); SOURCE(18932, 11) return(d←v17740); } static word NarrowToOp←P2700(color←v11984) word color←v11984; { register ptr gf←c40348 = (ptr) &globalframe; word var←c12028; word c←v17784; /* NarrowToOp: */ SOURCE(18947, 301) SOURCE(19017, 24) c←v17784 = color←v11984; SOURCE(19043, 205) lab←L100090: ; SOURCE(19046, 202) { word var←c38364; var←c38364 = c←v17784; if ((var←c38364 == 0)) { goto lab←L100091; }; { word var←c38428; var←c38428 = (* (( (ptr) var←c38364)+1) ); if ((var←c38428 == 1)) { { word special←v17828; special←v17828 = var←c38364; SOURCE(19090, 22) c←v17784 = (* (( (ptr) special←v17828)+5) ); }; } else { if ((var←c38428 == 0)) { { word op←v17872; op←v17872 = var←c38364; SOURCE(19137, 11) return(op←v17872); }; } else { lab←L100091: ; SOURCE(19161, 87) { W3 var←c0450; var←c0450.f0 = 122; var←c0450.f1 = (* (( (ptr) gf←c40348)+59) ); var←c0450.f2 = 0; (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c40348)+167)/* var←c34108 */ ))+4) ), (word) &var←c0450); }; }; }; }; }; goto lab←L100090; } static word IntensityFromColor←P2760(color←v12088) word color←v12088; { word Y←v12132; word p←v17916; /* IntensityFromColor: */ SOURCE(19254, 178) SOURCE(19254, 178) Y←v12132 = (* (ptr) &fc58 ); SOURCE(19335, 61) { word var←c38460; var←c38460 = (word) NarrowToOp←P2700(color←v12088); p←v17916 = (word) TransformConstantColor←P2340(var←c38460, 0); }; SOURCE(19398, 8) { word limit122; Y←v12132 = (* ((( (ptr) p←v17916)+2)+( limit122 = (* (( (ptr) p←v17916)+1) ), BCK(0, limit122) )) ); }; SOURCE(19408, 24) p←v17916 = (word) DestroyColorPoint←P2520(p←v17916); SOURCE(19254, 178) return(Y←v12132); } static word GrayFromColor←P2820(color←v12192) word color←v12192; { word var←c12236; /* GrayFromColor: */ SOURCE(19438, 108) SOURCE(19507, 39) { word x124; word x125; float tf126; return(( tf126 = ( x124 = (* (ptr) &fc123 ), *(float*)&x124 ) - ( x125 = (word) IntensityFromColor←P2760(color←v12192), *(float*)&x125 ), *(word*)&tf126 )); }; } static word FindColorOperatorClass←P2880(name←v12296) word name←v12296; { register ptr gf←c40380 = (ptr) &globalframe; word var←c12340; word class←v17960; /* FindColorOperatorClass: */ SOURCE(19623, 339) SOURCE(19705, 83) { W2 var←c0460; word var←c0537; { word pd127; pd127 = (* (( (ptr) (* (( (ptr) gf←c40380)+165)/* var←c33948 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd127 ))))((word) &var←c0460, (* (( (ptr) gf←c40380)+21)/* colorOperatorClassTable←v5576 */ ), name←v12296, pd127) ; }; var←c0537 = var←c0460.f1; class←v17960 = XR←Narrow(var←c0537, (* (( (ptr) gf←c40380)+23) )); }; SOURCE(19790, 156) if ((class←v17960 == 0)) { SOURCE(19810, 136) { word var←c38524; word var←c38556; { word pd128; pd128 = (* (( (ptr) (* (( (ptr) gf←c40380)+170)/* var←c36380 */ ))+6) ); var←c38524 = (word) ( *( (fPt) ((* (ptr) pd128 ))))((* (( (ptr) gf←c40380)+60) ), name←v12296, pd128); }; { word var←c38588; word var←c38620; var←c38588 = XR←NewObject(12, (* (( (ptr) gf←c40380)+38) )); var←c38620 = var←c38588; (* (ptr) var←c38620 ) = (* (( (ptr) gf←c40380)+61) ); (* (( (ptr) var←c38620)+1) ) = name←v12296; var←c38556 = var←c38588; }; { W3 var←c0466; var←c0466.f0 = 21; var←c0466.f1 = var←c38524; var←c0466.f2 = var←c38556; (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c40380)+167)/* var←c34108 */ ))+4) ), (word) &var←c0466); }; }; }; SOURCE(19948, 14) return(class←v17960); } static word NewColorOperatorClass←P2940(name←v12400, createColorOperator←v12428, getCreateData←v12456, getPixelEncoding←v12484, apply←v12512, dataEqual←v12540, supportedOutputs←v12568) word name←v12400; word createColorOperator←v12428; word getCreateData←v12456; word getPixelEncoding←v12484; word apply←v12512; word dataEqual←v12540; word supportedOutputs←v12568; { register ptr gf←c40412 = (ptr) &globalframe; word var←c12696; word class←v18004; /* NewColorOperatorClass: */ SOURCE(19968, 618) SOURCE(20251, 249) class←v18004 = XR←NewObject(28, (* (( (ptr) gf←c40412)+23) )); (* (ptr) class←v18004 ) = name←v12400; (* (( (ptr) class←v18004)+1) ) = XR←CheckProc(createColorOperator←v12428); (* (( (ptr) class←v18004)+2) ) = XR←CheckProc(getCreateData←v12456); (* (( (ptr) class←v18004)+3) ) = XR←CheckProc(getPixelEncoding←v12484); (* (( (ptr) class←v18004)+4) ) = XR←CheckProc(apply←v12512); (* (( (ptr) class←v18004)+5) ) = XR←CheckProc(dataEqual←v12540); (* (( (ptr) class←v18004)+6) ) = supportedOutputs←v12568; SOURCE(20502, 68) { word var←c38716; word pd129; pd129 = (* (( (ptr) (* (( (ptr) gf←c40412)+165)/* var←c33948 */ ))+10) ); var←c38716 = (word) ( *( (fPt) ((* (ptr) pd129 ))))((* (( (ptr) gf←c40412)+21)/* colorOperatorClassTable←v5576 */ ), name←v12400, class←v18004, pd129) ; }; SOURCE(20572, 14) return(class←v18004); } static word NewColorOperator←P3000(formal←c0555, formal←c0556, formal←c0557, formal←c0558, formal←c0559) word formal←c0555; word formal←c0556; word formal←c0557; word formal←c0558; word formal←c0559; { W11 var←c40444; /* declaration of chromatic←v12756 skipped */ /* declaration of samplesPerPixelIn←v12784 skipped */ /* declaration of class←v12812 skipped */ /* declaration of data←v12840 skipped */ /* declaration of appearanceHints←v12868 skipped */ register ptr gf←c40476 = (ptr) &globalframe; word var←c12924; /* declaration of var←c38748 skipped */ word new←v18076; (* (( (ptr) &var←c40444)+4)/* chromatic←v12756 */ ) = formal←c0555; (* (( (ptr) &var←c40444)+5)/* samplesPerPixelIn←v12784 */ ) = formal←c0556; (* (( (ptr) &var←c40444)+6)/* class←v12812 */ ) = formal←c0557; (* (( (ptr) &var←c40444)+7)/* data←v12840 */ ) = formal←c0558; (* (( (ptr) &var←c40444)+8)/* appearanceHints←v12868 */ ) = formal←c0559; /* NewColorOperator: */ SOURCE(20703, 822) { word tmpAddr130; tmpAddr130 = (word) (( (ptr) &var←c40444)+9)/* var←c38748 */ ; (* (ptr) tmpAddr130 ) = ( ((word) (fPt) compare←P6696) ); (* (( (ptr) tmpAddr130) + 1) ) = 1; }; SOURCE(21183, 96) { W2 var←c0485; word var←c0538; { word pd131; pd131 = (* (( (ptr) (* (( (ptr) gf←c40476)+166)/* var←c34012 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd131 ))))((word) &var←c0485, (* (( (ptr) gf←c40476)+22)/* colorOperatorCache←v5660 */ ), (word) ( ( (bPt) &var←c40444)+36)/* var←c38748 */ , 0, pd131); }; var←c0538 = var←c0485.f0; new←v18076 = XR←Narrow(var←c0538, (* (( (ptr) gf←c40476)+34) )); }; SOURCE(21281, 30) if ((new←v18076 != 0)) { SOURCE(21299, 12) return(new←v18076); }; SOURCE(21313, 116) { word var←c38780; var←c38780 = XR←NewObject(20, (* (( (ptr) gf←c40476)+34) )); (* (ptr) var←c38780 ) = (* (( (ptr) &var←c40444)+4)/* chromatic←v12756 */ ); (* (( (ptr) var←c38780)+1) ) = (* (( (ptr) &var←c40444)+5)/* samplesPerPixelIn←v12784 */ ); (* (( (ptr) var←c38780)+2) ) = (* (( (ptr) &var←c40444)+6)/* class←v12812 */ ); (* (( (ptr) var←c38780)+3) ) = (* (( (ptr) &var←c40444)+7)/* data←v12840 */ ); new←v18076 = var←c38780; }; SOURCE(21431, 79) { word pd132; pd132 = (* (( (ptr) (* (( (ptr) gf←c40476)+166)/* var←c34012 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd132 ))))((* (( (ptr) gf←c40476)+22)/* colorOperatorCache←v5660 */ ), new←v18076, new←v18076, 1, 0, pd132) ; }; SOURCE(21512, 13) return(new←v18076); } static word compare←P6696(argument←v31980, formal←c40540) word argument←v31980; word formal←c40540; { register ptr gf←c40508 = (ptr) &globalframe; word good←v32024; formal←c40540 = (formal←c40540 - 36); /* compare: */ SOURCE(20869, 309) SOURCE(20908, 270) { word var←c38812; var←c38812 = argument←v31980; if ((var←c38812 == 0)) { goto lab←L100092; }; if (((* (( (ptr) gf←c40508)+34) ) == XR←GetReferentType(var←c38812))) { { word old←v18120; old←v18120 = var←c38812; SOURCE(20956, 195) { word tc133; word pd134; if ( ( ( ( ((* (ptr) old←v18120 ) == (* (( (ptr) formal←c40540)+4) )) ? ((* (( (ptr) old←v18120)+1) ) == (* (( (ptr) formal←c40540)+5) )) : 0 ) ? ((* (( (ptr) old←v18120)+2) ) == (* (( (ptr) formal←c40540)+6) )) : 0 ) ? (0 != (word) StructureEqual←P1200( (* (( (ptr) old←v18120)+4) ), (* (( (ptr) formal←c40540)+8) ))) : 0 ) ) { pd134 = (* (( (ptr) (* (( (ptr) formal←c40540)+6) ))+5) ); tc133 = (word) (unsigned) (0 != (word) ( *( (fPt) ((* (ptr) pd134 ))))((* (( (ptr) formal←c40540)+7) ), (* (( (ptr) old←v18120)+3) ), pd134)); } else { tc133 = (word) (unsigned) 0; }; return(tc133); }; }; } else { lab←L100092: ; SOURCE(21164, 14) return(0); }; }; } /* file: ImagerColorPrivateImpl, module: ImagerColorPrivateImpl, compiled at: July 28, 1993 10:15:55 am PDT */ extern void XR←install←ImagerColorPrivateImpl() { NoName←Q6864(); } extern void XR←run←ImagerColorPrivateImpl() { XR←Start(&globalframe); }