/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */
/* time: July 28, 1993 10:15:14 am PDT */
/* C2C version: April 20, 1993 (sun4) */
/* ref-counting: off */
/* file: ImagerColorImpl, module: ImagerColorImpl */
/* switches: bcfhklnouw */
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
static char versionStamp[] = "@(#)mob←version [4137215315,3216195333] ImagerColorImpl";
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, f3, f4, f5, f6;} W7;
typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8;
typedef struct {word f0, f1, f2;} W3;
typedef W2 *W2Pt;
typedef struct {W8 f; W2 r;} W10;
typedef struct {W8 f; word r;} W9;
typedef struct {word f0, f1, f2, f3, f4, f5;} W6;
typedef W3 *W3Pt;
typedef struct {word f0, f1, f2, f3;} W4;
#define SOURCE(p, l) /* source p, l */
static float fc95 = 0.0;
static float fc106 = 0.253;
static float fc107 = 0.684;
static float fc108 = 0.063;
static float fc109 = 0.500;
static float fc110 = -0.500;
static float fc111 = 0.000;
static float fc112 = 0.250;
static float fc115 = 1000.0;
static float fc116 = 2000.0;
static float fc118 = 2.944;
static float fc119 = -1.461;
static float fc120 = -0.457;
static float fc121 = -1.095;
static float fc122 = 2.026;
static float fc123 = 0.036;
static float fc124 = 0.078;
static float fc125 = -0.272;
static float fc126 = 1.452;
static float fc127 = 500.0;
static float fc128 = 10.0;
static float fc133 = 1.0;
static float fc136 = 100.0;
#define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i )
#define MIN(cast, x, y) ( ( cast x) < ( cast y) ? (x) : (y) )
#define MAX(cast, x, y) ( ( cast x) > ( cast y) ? (x) : (y) )
#define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) )
static float fc239 = 0.08;
static float fc242 = 9.033;
static float fc246 = 0.16;
static float fc248 = 1.16;
static float fc251 = 3.0;
static float fc361 = 6.0;
#define FMIN(x, y, tx, ty) ( (tx=((float) x)) <= (ty=((float) y)) ? tx : ty )
#define FMAX(x, y, tx, ty) ( (tx=((float) x)) >= (ty=((float) y)) ? tx : ty )
static float fc422 = 2.0;
static float fc429 = 4.0;
static float fc588 = 0.008856;
static float fc593 = 7.787;
static float fc596 = 16.0;
static float fc598 = 116.0;
static float fc602 = 0.2068929;
static float fc626 = 0.964;
static float fc631 = 200.0;
static float fc635 = 0.824;
static float fc760 = 0.9;
static float fc763 = 0.05;
static float fc766 = 0.95;
static float fc791 = 255.0;
static void NoName←Q11340();
static void ImagerColorImpl←P0();
static word Find←P60();
static word SampleFromReal←P300();
static word SampleEncodingFetch←P360();
static word MakePE←P420();
static word GetSE←P480();
static word CreateColorOperatorGrayLinear←P540();
static word sampleTable←P6948();
static word GetCreateDataGrayLinear←P600();
static void GenerateElements←P7008();
static word GetPixelEncodingGrayLinear←P660();
static void ApplyGrayLinear←P720();
static word DataEqualGrayLinear←P780();
static word NewColorOperatorGrayLinear←P840();
static word ColorFromGray←P900();
static word CreateColorOperatorGrayDensity←P960();
static word sampleTable←P7068();
static word GetCreateDataGrayDensity←P1020();
static void GenerateElements←P7128();
static word GetPixelEncodingGrayDensity←P1080();
static void ApplyGrayDensity←P1140();
static word DataEqualGrayDensity←P1200();
static word NewColorOperatorGrayDensity←P1260();
static word CreateColorOperatorGrayVisual←P1320();
static word sampleTable←P7188();
static word GetCreateDataGrayVisual←P1380();
static void GenerateElements←P7248();
static word GetPixelEncodingGrayVisual←P1440();
static void ApplyGrayVisual←P1500();
static word DataEqualGrayVisual←P1560();
static word NewColorOperatorGrayVisual←P1620();
static word CreateColorOperatorMap←P1680();
static word map←P7308();
static word GetCreateDataMap←P1740();
static word GetIdentityPixelEncoding←P1800();
static void ApplyMap←P1860();
static word DataEqualMap←P1920();
static word DataMapSize←P1980();
static void DataMapGet←P2040();
static word StructureFromDataMap←P2100();
static word NewColorOperatorMap←P2160();
static word ClassBuildMap←P2220();
static void Action←P7560();
static word CreateColorOperatorBuildMap←P2280();
static word map←P7620();
static word GetCreateDataBuildMap←P2340();
static void MapElements←P7680();
static void GenerateElements←P7740();
static void ApplyBuildMap←P2400();
static word PixelMapped←P7848();
static word DataEqualBuildMap←P2460();
static word NewColorOperatorBuildMap←P2520();
static word CreateColorOperatorRGB←P2580();
static word GetCreateDataRGB←P2640();
static void GenerateElements←P7956();
static word GetPixelEncodingRGB←P2700();
static void ApplyRGB←P2760();
static word DataEqualRGB←P2820();
static word NewColorOperatorRGB←P2880();
static word ColorFromRGB←P2940();
static word InitSolidColors←P3000();
static word Def←P8112();
static word ColorFromHSV←P3060();
static void HSVFromColor←P3120();
static word ToRange←P3180();
static void RGBFromHSV←P3240();
static void HSVFromRGB←P3300();
static word CreateColorOperatorOldRGB←P3360();
static word CreateColorOperatorWithRenderingHints←P3420();
static word NewRenderingHints←P3480();
static word Det3←P3540();
static word Cofactor3←P3600();
static word Invert3←P3660();
static word Mul3←P3720();
static void Apply3←P3780();
static void Apply3Out←P3840();
static word ColorFromYES←P3900();
static void YESFromColor←P3960();
static word CreateColorOperatorYES←P4020();
static word GetPixelEncodingYES←P4080();
static void ApplyYES←P4140();
static word GetCreateDataYES←P4200();
static void GenerateElements←P8892();
static word DataEqualYES←P4260();
static word NewColorOperatorYES←P4320();
static word ColorFromCIELAB←P4380();
static word F←P4440();
static word G←P4500();
static void CIELABFromColor←P4560();
static word CreateColorOperatorCIELAB←P4620();
static word GetPixelEncodingCIELAB←P4680();
static void ApplyCIELAB←P4740();
static word NewColorOperatorCIELAB←P4800();
static word ExtraColorFromHighlight←P4860();
static word ColorFromHighlight←P4920();
static void HighlightFromColor←P4980();
static word NarrowToConstantColor←P5040();
static word CreateColorOperatorHighlight←P5100();
static word GetPixelEncodingHighlight←P5160();
static void ApplyHighlight←P5220();
static word GetCreateDataHighlight←P5280();
static void GenerateElements←P9456();
static word DataEqualHighlight←P5340();
static word ExtraNewColorOperatorHighlight←P5400();
static word NewColorOperatorHighlight←P5460();
static word SignalTypeFromSignalTypeName←P5520();
static word SignalTypeNameFromSignalType←P5580();
static word GetProcessArgIndices←P5640();
static word CreateColorOperatorProcess←P5700();
static word SignalNames←P9660();
static word GetCreateDataProcess←P5760();
static void GenerateSignalNameElements←P9720();
static void GenerateElements←P9780();
static word GetPixelEncodingProcess←P5820();
static void ApplyProcess←P5880();
static void DoApplyProcess←P5940();
static word DataEqualProcess←P6000();
static word EqualSignalNames←P6060();
static word CMYKSignalNames←P6120();
static word EnlistSignalNames←P6180();
static word NewColorOperatorProcess←P6240();
static word NewColorOperatorCMYK←P6300();
static word ColorFromCMYK←P6360();
static word NarrowToOpConstantColor←P6420();
static word ColorFromPixel←P6480();
static word MakeSampledBlack←P6540();
static word MakeSampledColor←P6600();
static void RGBFromColor←P6660();
static word IntensityFromStipple←P6720();
static word ColorFromStipple←P6780();
static word Define←P6840();
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 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"};
static struct {unsigned f; char r[4];} string5 = {65537, "\001\000\000"};
static struct {unsigned f; char r[44];} string6 = {2752556, "\260\006\005\146\151\162\163\164\257\300\207\164\301\163\300\327\135\041\305\104\130\005\004\162\145\163\164\214\257\300\207\164\301\163\300\327\135\041\305\104\130\261\000"};
static struct {unsigned f; char r[4];} string7 = {131074, "\003\001\000"};
static struct {unsigned f; char r[16];} string8 = {851984, "\257\300\207\164\301\163\300\327\135\041\305\106\214\000\000"};
static struct {unsigned f; char r[48];} string9 = {2883632, "\260\006\005\146\151\162\163\164\216\257\300\132\124\077\010\300\370\073\075\073\100\230\005\004\162\145\163\164\214\216\257\300\132\124\077\010\300\370\073\075\073\100\230\261\000\000\000"};
static struct {unsigned f; char r[4];} string10 = {131074, "\004\003\000"};
static struct {unsigned f; char r[16];} string11 = {851984, "\257\300\366\230\345\123\300\277\263\077\005\105\204\000\000"};
static struct {unsigned f; char r[4];} string12 = {131074, "\004\030\000"};
static struct {unsigned f; char r[16];} string13 = {851984, "\257\300\366\230\345\123\300\277\263\077\005\104\350\000\000"};
static struct {unsigned f; char r[4];} string14 = {196611, "\004A\014"};
static struct {unsigned f; char r[12];} string15 = {720908, "\205\210\242\000\002\205\210\242\000\002\256"};
static struct {unsigned f; char r[16];} string16 = {851984, "\257\300\366\230\345\123\300\277\263\077\005\104\020\000\000"};
static struct {unsigned f; char r[4];} string17 = {131074, "\003\004\000"};
static struct {unsigned f; char r[32];} string18 = {1835040, "\205\257\300\366\230\345\123\300\277\263\077\005\102\344\216\257\300\132\124\077\010\300\370\073\075\073\100\230\000\000\000"};
static struct {unsigned f; char r[4];} string19 = {196611, "\004@\377"};
static struct {unsigned f; char r[16];} string20 = {851984, "\257\300\366\230\345\123\300\277\263\077\005\102\250\000\000"};
static struct {unsigned f; char r[4];} string21 = {131074, "\003\002\000"};
static struct {unsigned f; char r[16];} string22 = {851984, "\257\300\366\230\345\123\300\277\263\077\005\102\110\000\000"};
static struct {unsigned f; char r[16];} string23 = {851984, "\257\300\132\124\077\010\300\370\073\075\073\100\354\000\000"};
static struct {unsigned f; char r[16];} string24 = {851984, "\257\300\366\230\345\123\300\277\263\077\005\101\304\000\000"};
static struct {unsigned f; char r[12];} string25 = {524296, "\011\000\004\000\040\000\004\001\000\000\000"};
static struct {unsigned f; char r[44];} string26 = {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];} string27 = {131074, "\004\007\000"};
static struct {unsigned f; char r[16];} string28 = {851984, "\257\300\366\230\345\123\300\277\263\077\005\101\240\000\000"};
static struct {unsigned f; char r[4];} string29 = {131076, "\216\251\000"};
static struct {unsigned f; char r[16];} string30 = {851984, "\257\300\366\230\345\123\300\277\263\077\005\101\174\000\000"};
static struct {unsigned f; char r[4];} string31 = {131074, "\003\003\000"};
static struct {unsigned f; char r[16];} string32 = {851984, "\257\300ZT?\010\300\370;=;@t\000\000"};
static struct {unsigned f; char r[20];} string33 = {1048592, "\007\000\040\003\007\040\040\002\003\002\004\074\004\016\004\006\000\000\000"};
static struct {unsigned f; char r[16];} string34 = {851984, "\257\300ZT?\010\300\370;=;BT\000\000"};
static struct {unsigned f; char r[16];} string35 = {851984, "\257\300\366\230\345\123\300\277\263\077\005\101\100\000\000"};
static struct {unsigned f; char r[12];} string36 = {589836, "Highlight\000\000"};
static struct {unsigned f; char r[16];} string37 = {983056, "Xerox/Highlight"};
static struct {unsigned f; char r[36];} string38 = {2293796, "Wrong type (expected ConstantColor)"};
static struct {unsigned f; char r[16];} string39 = {851984, "Xerox/Process\000\000"};
static struct {unsigned f; char r[8];} string40 = {327688, "Color\000\000"};
static struct {unsigned f; char r[8];} string41 = {458760, "density"};
static struct {unsigned f; char r[16];} string42 = {851984, "transmittance\000\000"};
static struct {unsigned f; char r[12];} string43 = {720908, "reflectance"};
static struct {unsigned f; char r[16];} string44 = {917520, "Xerox/BuildMap\000"};
static struct {unsigned f; char r[12];} string45 = {655372, "dotPercent\000"};
static struct {unsigned f; char r[24];} string46 = {1376280, "Xerox/HighlightLinear\000\000"};
static struct {unsigned f; char r[16];} string47 = {786448, "Xerox/CIELAB\000\000\000"};
static struct {unsigned f; char r[20];} string48 = {1114132, "Xerox/Solid/Black\000\000"};
static struct {unsigned f; char r[16];} string49 = {983056, "Xerox/Solid/Red"};
static struct {unsigned f; char r[20];} string50 = {1114132, "Xerox/Solid/Green\000\000"};
static struct {unsigned f; char r[20];} string51 = {1048596, "Xerox/Solid/Blue\000\000\000"};
static struct {unsigned f; char r[20];} string52 = {1048596, "Xerox/Solid/Cyan\000\000\000"};
static struct {unsigned f; char r[20];} string53 = {1245204, "Xerox/Solid/Magenta"};
static struct {unsigned f; char r[20];} string54 = {1179668, "Xerox/Solid/Yellow\000"};
static struct {unsigned f; char r[20];} string55 = {1114132, "Xerox/Solid/White\000\000"};
static struct {unsigned f; char r[8];} string56 = {327688, "Solid\000\000"};
static struct {unsigned f; char r[32];} string57 = {1900576, "Obsolete color model operator\000\000"};
static struct {unsigned f; char r[8];} string58 = {262152, "name\000\000\000"};
static struct {unsigned f; char r[16];} string59 = {983056, "Xerox/YESLinear"};
static struct {unsigned f; char r[68];} string60 = {4194372, "ImagerColor.HighlightFromColor is not implemented for this color\000\000\000"};
static struct {unsigned f; char r[32];} string61 = {1900576, "Color must be a ConstantColor\000\000"};
static struct {unsigned f; char r[8];} string62 = {458760, "culprit"};
static struct {unsigned f; char r[36];} string63 = {2097188, "Xerox/Research/AddRenderingHints\000\000\000"};
static struct {unsigned f; char r[56];} string64 = {3407928, "Unknown Signal type for Xerox/Process color operator\000\000\000"};
static struct {unsigned f; char r[8];} string65 = {393224, "signal\000"};
static struct {unsigned f; char r[68];} string66 = {4325444, "Nonstandard arguments passed to Xerox/Process Color Model Operator\000"};
static struct {unsigned f; char r[28];} string67 = {1572892, "Xerox/Research/RGBLinear\000\000\000"};
static struct {unsigned f; char r[28];} string68 = {1572892, "unimplemented signalType\000\000\000"};
static struct {unsigned f; char r[12];} string69 = {655372, "signalType\000"};
static struct {unsigned f; char r[16];} string70 = {983056, "Xerox/RGBLinear"};
static struct {unsigned f; char r[32];} string71 = {1966112, "No substitute for SpecialColor\000"};
static struct {unsigned f; char r[12];} string72 = {589836, "Xerox/Map\000\000"};
static struct {unsigned f; char r[20];} string73 = {1048596, "Xerox/GrayVisual\000\000\000"};
static struct {unsigned f; char r[20];} string74 = {1114132, "Xerox/GrayDensity\000\000"};
static struct {unsigned f; char r[8];} string75 = {458760, "Stipple"};
static struct {unsigned f; char r[20];} string76 = {1048596, "Xerox/GrayLinear\000\000\000"};
static struct {unsigned f; char r[16];} string77 = {851984, "\257\300\366\230\345\123\300\277\263\077\005\100\164\000\000"};
static struct {unsigned f; char r[88];} string78 = {5505108, "\006\036\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\001\100\104\001\100\110\001\100\114\001\100\120\001\100\124\001\100\130\001\100\134\001\100\140\001\100\144\001\100\150\001\100\154\001\100\160\001\100\170\001\100\174\001\100\200\001\100\204\001\101\014\010\000\004\051\001\000\000\000"};
static struct {unsigned f; char r[16];} string79 = {851984, "\257\300\055\153\222\376\300\327\164\352\142\100\150\000\000"};
static struct {unsigned f; char r[16];} string80 = {851984, "\257\300\045\370\116\014\300\270\323\074\131\100\150\000\000"};
static struct {unsigned f; char r[16];} string81 = {1231905127, "erColorPrivate"};
static struct {unsigned f; char r[16];} string82 = {851984, "\257\300\207\164\301\163\300\327\135\041\305\100\150\000\000"};
static struct {unsigned f; char r[16];} string83 = {851984, "\257\300\230\052\311\306\300\242\375\035\324\100\150\000\000"};
static struct {unsigned f; char r[16];} string84 = {851984, "\257\300\246\205\220\035\300\344\000\142\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string85 = {851984, "\257\300\245\247\302\156\300\052\156\325\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string86 = {851984, "\257\300\242\221\264\046\300\105\142\142\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string87 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"};
static struct {unsigned f; char r[16];} string88 = {851984, "\257\300\072\337\114\355\300\232\070\352\142\100\150\000\000"};
static struct {unsigned f; char r[12];} string89 = {1231905127, "erTestProbe"};
static struct {unsigned f; char r[16];} string90 = {851984, "\257\300\135\274\070\011\300\016\076\207\004\100\150\000\000"};
static struct {unsigned f; char r[16];} string91 = {851984, "\257\300ZT?\010\300\370;=;@h\000\000"};
static struct {unsigned f; char r[32];} string92 = {1966112, "\211\022\021StructureClassRep\300ZT?\010\300\370;=;\000"};
static struct {unsigned f; char r[36];} string93 = {2228260, "\211\026\025ColorOperatorClassRep\300ZT?\010\300\370;=;\000"};
static struct {
word f0[108]; 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; word f165; word f166;
word f167; word f168; word f169; word f170;
word f171; word f172; word f173; word f174;
word f175; word f176; word f177; word f178;
word f179; word f180; word f181; word f182;
word f183; word f184; word f185; word f186;
word f187; word f188; word f189; word f190;
word f191; word f192; word f193; word f194;
word f195; word f196; word f197; word f198;
word f199; word f200; word f201; word f202;
word f203; word f204; word f205; word f206;
word f207; word f208; word f209; word f210;
word f211; word f212; word f213; word f214;
word f215; word f216; word f217; word f218;
word f219; word f220; word f221; word f222;
word f223; word f224; word f225; word f226;
word f227; word f228; word f229; word f230;
word f231; word f232; word f233; word f234;
word f235; word f236; word f237; word f238;
word f239; word f240; word f241; word f242;
word f243; word f244; word f245; word f246;
word f247; word f248; word f249; word f250;
word f251; word f252; word f253; word f254;
word f255; word f256; word f257; word f258;
word f259; word f260; word f261; word f262;
word f263; word f264; word f265; word f266;
word f267; word f268; word f269; word f270;
word f271; word f272; word f273; word f274;
word f275; word f276; word f277; word f278;
word f279; word f280; word f281; word f282;
word f283; word f284; word f285; word f286;
word f287; word f288; word f289; word f290;
word f291; word f292; word f293; word f294;
word f295; word f296; word f297; word f298;
word f299; word f300; word f301; word f302;
word f303; word f304; word f305; word f306;
word f307; word f308; word f309; word f310;
word f311; word f312; word f313; word f314;
word f315; word f316; word f317; word f318;
word f319; word f320; word f321; word f322;
word f323; word f324; word f325; word f326;
word f327; word f328; word f329; word f330;
word f331[13];
} globalframe = {
{0}, (word) Define←P6840, 0, (word) ColorFromStipple←P6780,
0, (word) IntensityFromStipple←P6720, 0, (word) RGBFromColor←P6660,
0, (word) MakeSampledColor←P6600, 0, (word) MakeSampledBlack←P6540,
0, (word) ColorFromPixel←P6480, 0, (word) NarrowToOpConstantColor←P6420,
0, (word) ColorFromCMYK←P6360, 0, (word) NewColorOperatorCMYK←P6300,
0, (word) NewColorOperatorProcess←P6240, 0, (word) EnlistSignalNames←P6180,
0, (word) CMYKSignalNames←P6120, 0, (word) EqualSignalNames←P6060,
0, (word) DataEqualProcess←P6000, 0, (word) DoApplyProcess←P5940,
0, (word) ApplyProcess←P5880, 0, (word) GetPixelEncodingProcess←P5820,
0, (word) GetCreateDataProcess←P5760, 0, (word) CreateColorOperatorProcess←P5700,
0, (word) GetProcessArgIndices←P5640, 0, (word) SignalTypeNameFromSignalType←P5580,
0, (word) SignalTypeFromSignalTypeName←P5520, 0, (word) NewColorOperatorHighlight←P5460,
0, (word) ExtraNewColorOperatorHighlight←P5400, 0, (word) DataEqualHighlight←P5340,
0, (word) GetCreateDataHighlight←P5280, 0, (word) ApplyHighlight←P5220,
0, (word) GetPixelEncodingHighlight←P5160, 0, (word) CreateColorOperatorHighlight←P5100,
0, (word) NarrowToConstantColor←P5040, 0, (word) HighlightFromColor←P4980,
0, (word) ColorFromHighlight←P4920, 0, (word) ExtraColorFromHighlight←P4860,
0, (word) NewColorOperatorCIELAB←P4800, 0, (word) ApplyCIELAB←P4740,
0, (word) GetPixelEncodingCIELAB←P4680, 0, (word) CreateColorOperatorCIELAB←P4620,
0, (word) CIELABFromColor←P4560, 0, (word) G←P4500,
0, (word) F←P4440, 0, (word) ColorFromCIELAB←P4380,
0, (word) NewColorOperatorYES←P4320, 0, (word) DataEqualYES←P4260,
0, (word) GetCreateDataYES←P4200, 0, (word) ApplyYES←P4140,
0, (word) GetPixelEncodingYES←P4080, 0, (word) CreateColorOperatorYES←P4020,
0, (word) YESFromColor←P3960, 0, (word) ColorFromYES←P3900,
0, (word) Apply3Out←P3840, 0, (word) Apply3←P3780,
0, (word) Mul3←P3720, 0, (word) Invert3←P3660,
0, (word) Cofactor3←P3600, 0, (word) Det3←P3540,
0, (word) NewRenderingHints←P3480, 0, (word) CreateColorOperatorWithRenderingHints←P3420,
0, (word) CreateColorOperatorOldRGB←P3360, 0, (word) HSVFromRGB←P3300,
0, (word) RGBFromHSV←P3240, 0, (word) ToRange←P3180,
0, (word) HSVFromColor←P3120, 0, (word) ColorFromHSV←P3060,
0, (word) InitSolidColors←P3000, 0, (word) ColorFromRGB←P2940,
0, (word) NewColorOperatorRGB←P2880, 0, (word) DataEqualRGB←P2820,
0, (word) ApplyRGB←P2760, 0, (word) GetPixelEncodingRGB←P2700,
0, (word) GetCreateDataRGB←P2640, 0, (word) CreateColorOperatorRGB←P2580,
0, (word) NewColorOperatorBuildMap←P2520, 0, (word) DataEqualBuildMap←P2460,
0, (word) ApplyBuildMap←P2400, 0, (word) GetCreateDataBuildMap←P2340,
0, (word) CreateColorOperatorBuildMap←P2280, 0, (word) ClassBuildMap←P2220,
0, (word) NewColorOperatorMap←P2160, 0, (word) StructureFromDataMap←P2100,
0, (word) DataMapGet←P2040, 0, (word) DataMapSize←P1980,
0, (word) DataEqualMap←P1920, 0, (word) ApplyMap←P1860,
0, (word) GetIdentityPixelEncoding←P1800, 0, (word) GetCreateDataMap←P1740,
0, (word) CreateColorOperatorMap←P1680, 0, (word) NewColorOperatorGrayVisual←P1620,
0, (word) DataEqualGrayVisual←P1560, 0, (word) ApplyGrayVisual←P1500,
0, (word) GetPixelEncodingGrayVisual←P1440, 0, (word) GetCreateDataGrayVisual←P1380,
0, (word) CreateColorOperatorGrayVisual←P1320, 0, (word) NewColorOperatorGrayDensity←P1260,
0, (word) DataEqualGrayDensity←P1200, 0, (word) ApplyGrayDensity←P1140,
0, (word) GetPixelEncodingGrayDensity←P1080, 0, (word) GetCreateDataGrayDensity←P1020,
0, (word) CreateColorOperatorGrayDensity←P960, 0, (word) ColorFromGray←P900,
0, (word) NewColorOperatorGrayLinear←P840, 0, (word) DataEqualGrayLinear←P780,
0, (word) ApplyGrayLinear←P720, 0, (word) GetPixelEncodingGrayLinear←P660,
0, (word) GetCreateDataGrayLinear←P600, 0, (word) CreateColorOperatorGrayLinear←P540,
0, (word) GetSE←P480, 0, (word) MakePE←P420,
0, (word) SampleEncodingFetch←P360, 0, (word) SampleFromReal←P300,
0, (word) Find←P60, 0, (word) ImagerColorImpl←P0,
{0}
};
static void NoName←Q11340()
{
register ptr gf←c01131 = (ptr) &globalframe;
word var←c77664;
(* (( (ptr) gf←c01131)+34) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2);
(* (( (ptr) gf←c01131)+35) ) = (word) XR←GetTypeIndexS((word) (&string3));
(* (( (ptr) gf←c01131)+37) ) = (word) XR←GetTypeIndex((word) &string4, 0, (word) &string5);
(* (( (ptr) gf←c01131)+39) ) = (word) XR←GetTypeIndex((word) &string6, 0, (word) &string7);
(* (( (ptr) gf←c01131)+40) ) = (word) XR←GetTypeIndexS((word) (&string8));
(* (( (ptr) gf←c01131)+43) ) = (word) XR←GetTypeIndex((word) &string9, 0, (word) &string10);
(* (( (ptr) gf←c01131)+44) ) = (word) XR←GetTypeIndex((word) &string11, 0, (word) &string12);
(* (( (ptr) gf←c01131)+45) ) = (word) XR←GetTypeIndex((word) &string13, 0, (word) &string14);
(* (( (ptr) gf←c01131)+46) ) = (word) XR←GetTypeIndexS((word) (&string15));
(* (( (ptr) gf←c01131)+47) ) = (word) XR←GetTypeIndex((word) &string16, 0, (word) &string17);
(* (( (ptr) gf←c01131)+48) ) = (word) XR←GetTypeIndex((word) &string18, 0, (word) &string19);
(* (( (ptr) gf←c01131)+49) ) = (word) XR←GetTypeIndex((word) &string20, 0, (word) &string21);
(* (( (ptr) gf←c01131)+50) ) = (word) XR←GetTypeIndex((word) &string22, 0, (word) &string10);
(* (( (ptr) gf←c01131)+51) ) = (word) XR←GetTypeIndex((word) &string23, 0, (word) &string10);
(* (( (ptr) gf←c01131)+52) ) = (word) XR←GetTypeIndex((word) &string24, 0, (word) &string25);
(* (( (ptr) gf←c01131)+55) ) = (word) XR←GetTypeIndex((word) &string26, 0, (word) &string27);
(* (( (ptr) gf←c01131)+58) ) = (word) XR←GetTypeIndex((word) &string28, 0, (word) &string21);
(* (( (ptr) gf←c01131)+59) ) = (word) XR←GetTypeIndex((word) &string29, 0, (word) &string5);
(* (( (ptr) gf←c01131)+60) ) = (word) XR←GetTypeIndex((word) &string30, 0, (word) &string31);
(* (( (ptr) gf←c01131)+62) ) = (word) XR←GetTypeIndex((word) &string32, 0, (word) &string33);
(* (( (ptr) gf←c01131)+64) ) = (word) XR←GetTypeIndex((word) &string34, 0, (word) &string25);
(* (( (ptr) gf←c01131)+65) ) = (word) XR←GetTypeIndex((word) &string35, 0, (word) &string21);
(* (ptr) (( (bPt) gf←c01131)+268) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+59) ), (word) &string36);
(* (ptr) (( (bPt) gf←c01131)+272) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string37);
(* (ptr) (( (bPt) gf←c01131)+276) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string38);
(* (ptr) (( (bPt) gf←c01131)+280) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string39);
(* (ptr) (( (bPt) gf←c01131)+284) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+59) ), (word) &string40);
(* (ptr) (( (bPt) gf←c01131)+288) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string41);
(* (ptr) (( (bPt) gf←c01131)+292) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string42);
(* (ptr) (( (bPt) gf←c01131)+296) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string43);
(* (ptr) (( (bPt) gf←c01131)+300) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string44);
(* (ptr) (( (bPt) gf←c01131)+304) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string45);
(* (ptr) (( (bPt) gf←c01131)+308) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string46);
(* (ptr) (( (bPt) gf←c01131)+312) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string47);
(* (ptr) (( (bPt) gf←c01131)+316) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string48);
(* (ptr) (( (bPt) gf←c01131)+320) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string49);
(* (ptr) (( (bPt) gf←c01131)+324) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string50);
(* (ptr) (( (bPt) gf←c01131)+328) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string51);
(* (ptr) (( (bPt) gf←c01131)+332) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string52);
(* (ptr) (( (bPt) gf←c01131)+336) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string53);
(* (ptr) (( (bPt) gf←c01131)+340) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string54);
(* (ptr) (( (bPt) gf←c01131)+344) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string55);
(* (ptr) (( (bPt) gf←c01131)+348) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+59) ), (word) &string56);
(* (ptr) (( (bPt) gf←c01131)+352) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string57);
(* (ptr) (( (bPt) gf←c01131)+356) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+59) ), (word) &string58);
(* (ptr) (( (bPt) gf←c01131)+360) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string59);
(* (ptr) (( (bPt) gf←c01131)+364) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string60);
(* (ptr) (( (bPt) gf←c01131)+368) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string61);
(* (ptr) (( (bPt) gf←c01131)+372) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+59) ), (word) &string62);
(* (ptr) (( (bPt) gf←c01131)+376) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string63);
(* (ptr) (( (bPt) gf←c01131)+380) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string64);
(* (ptr) (( (bPt) gf←c01131)+384) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+59) ), (word) &string65);
(* (ptr) (( (bPt) gf←c01131)+388) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string66);
(* (ptr) (( (bPt) gf←c01131)+392) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string67);
(* (ptr) (( (bPt) gf←c01131)+396) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string68);
(* (ptr) (( (bPt) gf←c01131)+400) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+59) ), (word) &string69);
(* (ptr) (( (bPt) gf←c01131)+404) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string70);
(* (ptr) (( (bPt) gf←c01131)+408) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string71);
(* (ptr) (( (bPt) gf←c01131)+412) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string72);
(* (ptr) (( (bPt) gf←c01131)+416) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string73);
(* (ptr) (( (bPt) gf←c01131)+420) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string74);
(* (ptr) (( (bPt) gf←c01131)+424) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+59) ), (word) &string75);
(* (ptr) (( (bPt) gf←c01131)+428) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c01131)+37) ), (word) &string76);
(void) XR←DeclareGlobalFrame((word) "ImagerColorImpl", &globalframe, (word) XR←GetTypeIndex((word) &string77, 0, (word) &string78)
, (word) (( (bPt) gf←c01131)+1320)/* var←c66848 */ );
var←c77664 = (word) XR←ImportInterface((word) "Atom", (word) XR←GetTypeIndexS((word) (&string79)), 16);
(* (( (ptr) gf←c01131)+339)/* var←c75584 */ ) = var←c77664;
(void) XR←ImportProcS(var←c77664, 67895555);
(void) XR←ImportProcS(var←c77664, 67372289);
var←c77664 = (word) XR←ImportInterface((word) "ImagerError", (word) XR←GetTypeIndexS((word) (&string80)), 3);
(* (( (ptr) gf←c01131)+336)/* var←c70432 */ ) = var←c77664;
var←c77664 = (word) XR←ImportInterface((word) &string81, (word) XR←GetTypeIndexS((word) (&string82)), 48);
(* (( (ptr) gf←c01131)+332)/* var←c66976 */ ) = var←c77664;
(void) XR←ImportProcS(var←c77664, 269825);
(void) XR←ImportProcS(var←c77664, 67634178);
(void) XR←ImportProcS(var←c77664, 134742786);
(void) XR←ImportProcS(var←c77664, 67379201);
(void) XR←ImportProcS(var←c77664, 67642626);
(void) XR←ImportProcS(var←c77664, 67642882);
(void) XR←ImportProcS(var←c77664, 67636226);
(void) XR←ImportProcS(var←c77664, 67376129);
(void) XR←ImportProcS(var←c77664, 67375873);
(void) XR←ImportProcS(var←c77664, 67897347);
(void) XR←ImportProcS(var←c77664, 67899651);
(void) XR←ImportProcS(var←c77664, 67380225);
(void) XR←ImportProcS(var←c77664, 67635714);
(void) XR←ImportProcS(var←c77664, 67639554);
(void) XR←ImportProcS(var←c77664, 67377921);
(void) XR←ImportProcS(var←c77664, 67635458);
(void) XR←ImportProcS(var←c77664, 68431109);
(void) XR←ImportProcS(var←c77664, 67637762);
(void) XR←ImportProcS(var←c77664, 67374337);
(void) XR←ImportProcS(var←c77664, 67377153);
(void) XR←ImportProcS(var←c77664, 67371265);
(void) XR←ImportProcS(var←c77664, 67634946);
(void) XR←ImportProcS(var←c77664, 67634434);
(void) XR←ImportProcS(var←c77664, 67633666);
(void) XR←ImportProcS(var←c77664, 67638530);
(void) XR←ImportProcS(var←c77664, 67641602);
(void) XR←ImportProcS(var←c77664, 68955143);
var←c77664 = (word) XR←ImportInterface((word) "ImagerPixelArray", (word) XR←GetTypeIndexS((word) (&string83)), 13);
(* (( (ptr) gf←c01131)+341)/* var←c77248 */ ) = var←c77664;
(void) XR←ImportProcS(var←c77664, 67633922);
var←c77664 = (word) XR←ImportInterface((word) "Real", (word) XR←GetTypeIndexS((word) (&string84)), 11);
(* (( (ptr) gf←c01131)+337)/* var←c70656 */ ) = var←c77664;
(void) XR←ImportProcS(var←c77664, 67371265);
(void) XR←ImportProcS(var←c77664, 67371521);
var←c77664 = (word) XR←ImportInterface((word) "RealFns", (word) XR←GetTypeIndexS((word) (&string85)), 36);
(* (( (ptr) gf←c01131)+335)/* var←c69760 */ ) = var←c77664;
(void) XR←ImportProcS(var←c77664, 67633922);
var←c77664 = (word) XR←ImportInterface((word) "RefTab", (word) XR←GetTypeIndexS((word) (&string86)), 16);
(* (( (ptr) gf←c01131)+333)/* var←c67424 */ ) = var←c77664;
(void) XR←ImportProcS(var←c77664, 788995);
(void) XR←ImportProcS(var←c77664, 67895555);
var←c77664 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string87)), 43);
(* (( (ptr) gf←c01131)+338)/* var←c75360 */ ) = var←c77664;
(void) XR←ImportProcS(var←c77664, 67896323);
var←c77664 = (word) XR←ImportInterface((word) "SymTab", (word) XR←GetTypeIndexS((word) (&string88)), 13);
(* (( (ptr) gf←c01131)+334)/* var←c68800 */ ) = var←c77664;
(void) XR←ImportProcS(var←c77664, 134742786);
var←c77664 = (word) XR←ImportInterface((word) &string89, (word) XR←GetTypeIndexS((word) (&string90)), 1);
(* (( (ptr) gf←c01131)+340)/* var←c76160 */ ) = var←c77664;
(void) XR←ImportProcS(var←c77664, 1835015);
var←c77664 = (word) XR←ExportInterface((word) "ImagerColor", (word) XR←GetTypeIndexS((word) (&string91)), 32);
(* (( (ptr) gf←c01131)+342)/* var←c77696 */ ) = var←c77664;
(void) XR←ExportType((word) "StructureClassRep", (word) XR←GetTypeIndexS((word) (&string92)), (word) XR←GetTypeIndexS((word) (&string3))
);
(void) XR←ExportType((word) "ColorOperatorClassRep", (word) XR←GetTypeIndexS((word) (&string93)), (word) XR←GetTypeIndex(
(word) &string1, 0, (word) &string2));
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+1312)/* var←c66816 */ , 67371521, (word) "Find");
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+480)/* var←c63488 */ , 67633922, (word) "ColorFromPixel");
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+488)/* var←c63520 */ , 67372033, (word) "NarrowToOpConstantColor")
;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+472)/* var←c63456 */ , 67896579, (word) "MakeSampledBlack");
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+464)/* var←c63424 */ , 67896835, (word) "MakeSampledColor");
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+1224)/* var←c66464 */ , 67372801, (word) "ColorFromGray");
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+1232)/* var←c66496 */ , 68159492, (word) "NewColorOperatorGrayLinear")
;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+1176)/* var←c66272 */ , 68421893, (word) "NewColorOperatorGrayDensity")
;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+1128)/* var←c66080 */ , 68160004, (word) "NewColorOperatorGrayVisual")
;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+1056)/* var←c65792 */ , 67635970, (word) "NewColorOperatorMap")
;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+1008)/* var←c65600 */ , 67898371, (word) "NewColorOperatorBuildMap")
;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+952)/* var←c65376 */ , 67898625, (word) "ColorFromRGB");
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+456)/* var←c63392 */ , 201592321, (word) "RGBFromColor");
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+960)/* var←c65408 */ , 68161284, (word) "NewColorOperatorRGB")
;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+936)/* var←c65312 */ , 67899395, (word) "ColorFromHSV");
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+928)/* var←c65280 */ , 201593089, (word) "HSVFromColor");
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+824)/* var←c64864 */ , 67899905, (word) "ColorFromYES");
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+816)/* var←c64832 */ , 201593601, (word) "YESFromColor");
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+768)/* var←c64640 */ , 68686854, (word) "NewColorOperatorYES")
;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+760)/* var←c64608 */ , 67900673, (word) "ColorFromCIELAB");
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+736)/* var←c64512 */ , 201594369, (word) "CIELABFromColor");
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+704)/* var←c64384 */ , 68687622, (word) "NewColorOperatorCIELAB")
;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+688)/* var←c64320 */ , 67639297, (word) "ColorFromHighlight")
;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+680)/* var←c64288 */ , 134486273, (word) "HighlightFromColor")
;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+616)/* var←c64032 */ , 68688390, (word) "NewColorOperatorHighlight")
;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+608)/* var←c64000 */ , 67377921, (word) "SignalTypeFromSignalTypeName")
;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+600)/* var←c63968 */ , 67378177, (word) "SignalTypeNameFromSignalType")
;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+512)/* var←c63616 */ , 68951303, (word) "NewColorOperatorProcess")
;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+496)/* var←c63552 */ , 68165121, (word) "ColorFromCMYK");
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+504)/* var←c63584 */ , 67378945, (word) "NewColorOperatorCMYK")
;
var←c77664 = (word) XR←ExportInterface((word) &string81, (word) XR←GetTypeIndexS((word) (&string82)), 48);
(* (( (ptr) gf←c01131)+343)/* var←c77728 */ ) = var←c77664;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+448)/* var←c63360 */ , 67382785, (word) "IntensityFromStipple")
;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+440)/* var←c63328 */ , 67645186, (word) "ColorFromStipple");
var←c77664 = (word) XR←ExportInterface((word) &string89, (word) XR←GetTypeIndexS((word) (&string90)), 1);
(* (( (ptr) gf←c01131)+343)/* var←c77728 */ ) = var←c77664;
(void) XR←ExportProcS(var←c77664, (word) (( (bPt) gf←c01131)+552)/* var←c63776 */ , 1835015, (word) "DoApplyProcess");
}
static void ImagerColorImpl←P0(formal←c0213, formal←c0158)
word formal←c0213;
word formal←c0158;
{
register ptr gf←c77760 = (ptr) &globalframe;
/* ImagerColorImpl: */
SOURCE(371, 55404)
SOURCE(4064, 328)
{
word var←c66880;
var←c66880 = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
{
word var←c66944;
var←c66944 = var←c66880;
};
{
word pd94;
pd94 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+48) );
(* (( (ptr) gf←c77760)+4)/* classGrayLinear←v4484 */ ) = (word) ( *( (fPt) ((* (ptr) pd94 ))))((* (( (ptr) gf←c77760)+107)
), (word) (( (bPt) gf←c77760)+1272)/* var←c66656 */ , (word) (( (bPt) gf←c77760)+1264)/* var←c66624 */ , (word) (( (bPt) gf←c77760)+1256)
/* var←c66592 */ , (word) (( (bPt) gf←c77760)+1248)/* var←c66560 */ , (word) (( (bPt) gf←c77760)+1240)/* var←c66528 */
, var←c66880, pd94);
};
};
SOURCE(6506, 83)
{
float tf96;
(* (( (ptr) gf←c77760)+5)/* makeGrayLinear←v4708 */ ) = (word) NewColorOperatorGrayLinear←P840((* (ptr) &fc95 ), (
tf96 = (float)(unsigned)1000, *(word*)&tf96
), 0, 0);
};
SOURCE(6956, 335)
{
word var←c67008;
var←c67008 = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
{
word var←c67072;
var←c67072 = var←c67008;
};
{
word pd97;
pd97 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+48) );
(* (( (ptr) gf←c77760)+6)/* classGrayDensity←v4820 */ ) = (word) ( *( (fPt) ((* (ptr) pd97 ))))((* (( (ptr) gf←c77760)+105)
), (word) (( (bPt) gf←c77760)+1216)/* var←c66432 */ , (word) (( (bPt) gf←c77760)+1208)/* var←c66400 */ , (word) (( (bPt) gf←c77760)+1200)
/* var←c66368 */ , (word) (( (bPt) gf←c77760)+1192)/* var←c66336 */ , (word) (( (bPt) gf←c77760)+1184)/* var←c66304 */
, var←c67008, pd97);
};
};
SOURCE(9704, 328)
{
word var←c67104;
var←c67104 = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
{
word var←c67168;
var←c67168 = var←c67104;
};
{
word pd98;
pd98 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+48) );
(* (( (ptr) gf←c77760)+7)/* classGrayVisual←v5072 */ ) = (word) ( *( (fPt) ((* (ptr) pd98 ))))((* (( (ptr) gf←c77760)+104)
), (word) (( (bPt) gf←c77760)+1168)/* var←c66240 */ , (word) (( (bPt) gf←c77760)+1160)/* var←c66208 */ , (word) (( (bPt) gf←c77760)+1152)
/* var←c66176 */ , (word) (( (bPt) gf←c77760)+1144)/* var←c66144 */ , (word) (( (bPt) gf←c77760)+1136)/* var←c66112 */
, var←c67104, pd98);
};
};
SOURCE(12232, 299)
{
word var←c67200;
{
word var←c67232;
word var←c67264;
var←c67232 = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c67264 = var←c67232;
(* (( (ptr) var←c67264)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c67264 = (* (( (ptr) var←c67264)+1) );
(* (ptr) var←c67264 ) = 1;
var←c67200 = var←c67232;
};
{
word pd99;
pd99 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+48) );
(* (( (ptr) gf←c77760)+8)/* classMapChromatic←v5324 */ ) = (word) ( *( (fPt) ((* (ptr) pd99 ))))((* (( (ptr) gf←c77760)+103)
), (word) (( (bPt) gf←c77760)+1120)/* var←c66048 */ , (word) (( (bPt) gf←c77760)+1112)/* var←c66016 */ , (word) (( (bPt) gf←c77760)+1104)
/* var←c65984 */ , (word) (( (bPt) gf←c77760)+1096)/* var←c65952 */ , (word) (( (bPt) gf←c77760)+1088)/* var←c65920 */
, var←c67200, pd99);
};
};
SOURCE(12534, 294)
{
word var←c67296;
var←c67296 = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
{
word var←c67360;
var←c67360 = var←c67296;
};
{
word pd100;
pd100 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+48) );
(* (( (ptr) gf←c77760)+9)/* classMapMonochrome←v5352 */ ) = (word) ( *( (fPt) ((* (ptr) pd100 ))))((* (( (ptr) gf←c77760)+103)
), (word) (( (bPt) gf←c77760)+1120)/* var←c66048 */ , (word) (( (bPt) gf←c77760)+1112)/* var←c66016 */ , (word) (( (bPt) gf←c77760)+1104)
/* var←c65984 */ , (word) (( (bPt) gf←c77760)+1096)/* var←c65952 */ , (word) (( (bPt) gf←c77760)+1088)/* var←c65920 */
, var←c67296, pd100);
};
};
SOURCE(14486, 101)
{
word var←c67392;
var←c67392 = XR←NewObject(8, (* (( (ptr) gf←c77760)+35) ));
(* (ptr) var←c67392 ) = (word) (( (bPt) gf←c77760)+1080)/* var←c65888 */ ;
(* (( (ptr) var←c67392)+1) ) = (word) (( (bPt) gf←c77760)+1072)/* var←c65856 */ ;
(* (( (ptr) gf←c77760)+10)/* dataMapStructureClass←v5576 */ ) = var←c67392;
};
SOURCE(15518, 48)
{
word pd101;
pd101 = (* (( (ptr) (* (( (ptr) gf←c77760)+333)/* var←c67424 */ ))+5) );
(* (( (ptr) gf←c77760)+11)/* classBuildMapTable←v5716 */ ) = (word) ( *( (fPt) ((* (ptr) pd101 ))))(17, 0, 0, pd101);
};
SOURCE(18638, 291)
{
word var←c67456;
{
word var←c67488;
word var←c67520;
var←c67488 = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c67520 = var←c67488;
(* (( (ptr) var←c67520)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c67520 = (* (( (ptr) var←c67520)+1) );
(* (ptr) var←c67520 ) = 1;
var←c67456 = var←c67488;
};
{
word pd102;
pd102 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+48) );
(* (( (ptr) gf←c77760)+12)/* classRGB←v5968 */ ) = (word) ( *( (fPt) ((* (ptr) pd102 ))))((* (( (ptr) gf←c77760)+101) ), (word) (
( (bPt) gf←c77760)+1000)/* var←c65568 */ , (word) (( (bPt) gf←c77760)+992)/* var←c65536 */ , (word) (( (bPt) gf←c77760)+984)
/* var←c65504 */ , (word) (( (bPt) gf←c77760)+976)/* var←c65472 */ , (word) (( (bPt) gf←c77760)+968)/* var←c65440 */
, var←c67456, pd102);
};
};
SOURCE(21385, 58)
{
float tf103;
(* (( (ptr) gf←c77760)+13)/* rgb1000←v6164 */ ) = (word) NewColorOperatorRGB←P2880((
tf103 = (float)(unsigned)1000, *(word*)&tf103
), (* (ptr) &fc95 ), 0, 0);
};
SOURCE(21859, 70)
(* (( (ptr) gf←c77760)+14)/* solidColors←v6248 */ ) = (word) InitSolidColors←P3000();
SOURCE(24193, 258)
{
word pd104;
pd104 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+48) );
(* (( (ptr) gf←c77760)+15)/* researchRGBLinear←v6444 */ ) = (word) ( *( (fPt) ((* (ptr) pd104 ))))((* (( (ptr) gf←c77760)+98)
), (word) (( (bPt) gf←c77760)+896)/* var←c65152 */ , 0, 0, 0, 0
, 0, pd104);
};
SOURCE(24772, 278)
{
word pd105;
pd105 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+48) );
(* (( (ptr) gf←c77760)+16)/* addRenderingHints←v6500 */ ) = (word) ( *( (fPt) ((* (ptr) pd105 ))))((* (( (ptr) gf←c77760)+94)
), (word) (( (bPt) gf←c77760)+888)/* var←c65120 */ , 0, 0, 0, 0
, 0, pd105);
};
SOURCE(27873, 123)
{
word var←c67552;
var←c67552 = XR←NewObject(36, (* (( (ptr) gf←c77760)+46) ));
(* (ptr) var←c67552 ) = (* (ptr) &fc106 );
(* (( (ptr) var←c67552)+1) ) = (* (ptr) &fc107 );
(* (( (ptr) var←c67552)+2) ) = (* (ptr) &fc108 );
(* (( (ptr) var←c67552)+3) ) = (* (ptr) &fc109 );
(* (( (ptr) var←c67552)+4) ) = (* (ptr) &fc110 );
(* (( (ptr) var←c67552)+5) ) = (* (ptr) &fc111 );
(* (( (ptr) var←c67552)+6) ) = (* (ptr) &fc112 );
(* (( (ptr) var←c67552)+7) ) = (* (ptr) &fc112 );
(* (( (ptr) var←c67552)+8) ) = (* (ptr) &fc110 );
(* (( (ptr) gf←c77760)+17)/* matYESFromRGB←v6892 */ ) = var←c67552;
};
SOURCE(27999, 47)
(* (( (ptr) gf←c77760)+18)/* matRGBFromYES←v6920 */ ) = (word) Invert3←P3660((* ((( (ptr) gf←c77760)+17)/* matYESFromRGB←v6892 */ ) ))
;
SOURCE(28049, 297)
{
word var←c67584;
{
word var←c67616;
word var←c67648;
var←c67616 = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c67648 = var←c67616;
(* (( (ptr) var←c67648)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c67648 = (* (( (ptr) var←c67648)+1) );
(* (ptr) var←c67648 ) = 3;
(* (( (ptr) var←c67648)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c67648 = (* (( (ptr) var←c67648)+1) );
(* (ptr) var←c67648 ) = 1;
var←c67584 = var←c67616;
};
{
word pd113;
pd113 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+48) );
(* (( (ptr) gf←c77760)+19)/* classYES←v6948 */ ) = (word) ( *( (fPt) ((* (ptr) pd113 ))))((* (( (ptr) gf←c77760)+90) ), (word) (
( (bPt) gf←c77760)+808)/* var←c64800 */ , (word) (( (bPt) gf←c77760)+784)/* var←c64704 */ , (word) (( (bPt) gf←c77760)+800)
/* var←c64768 */ , (word) (( (bPt) gf←c77760)+792)/* var←c64736 */ , (word) (( (bPt) gf←c77760)+776)/* var←c64672 */
, var←c67584, pd113);
};
};
SOURCE(28406, 126)
{
float tf114;
(* (( (ptr) gf←c77760)+20)/* yes1000←v7032 */ ) = (word) NewColorOperatorYES←P4320((
tf114 = (float)(unsigned)1000, *(word*)&tf114
), (* (ptr) &fc95 ), (* (ptr) &fc115 ), (* (ptr) &fc116 ), 0, 0);
};
SOURCE(32280, 347)
{
word var←c67680;
{
word var←c67712;
word var←c67744;
var←c67712 = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c67744 = var←c67712;
(* (( (ptr) var←c67744)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c67744 = (* (( (ptr) var←c67744)+1) );
(* (ptr) var←c67744 ) = 2;
(* (( (ptr) var←c67744)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c67744 = (* (( (ptr) var←c67744)+1) );
(* (ptr) var←c67744 ) = 1;
var←c67680 = var←c67712;
};
{
word pd117;
pd117 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+48) );
(* (( (ptr) gf←c77760)+21)/* classCIELAB←v7368 */ ) = (word) ( *( (fPt) ((* (ptr) pd117 ))))((* (( (ptr) gf←c77760)+78)
), (word) (( (bPt) gf←c77760)+728)/* var←c64480 */ , (word) (( (bPt) gf←c77760)+784)/* var←c64704 */ , (word) (( (bPt) gf←c77760)+720)
/* var←c64448 */ , (word) (( (bPt) gf←c77760)+712)/* var←c64416 */ , (word) (( (bPt) gf←c77760)+776)/* var←c64672 */
, var←c67680, pd117);
};
};
SOURCE(32630, 123)
{
word var←c67776;
var←c67776 = XR←NewObject(36, (* (( (ptr) gf←c77760)+46) ));
(* (ptr) var←c67776 ) = (* (ptr) &fc118 );
(* (( (ptr) var←c67776)+1) ) = (* (ptr) &fc119 );
(* (( (ptr) var←c67776)+2) ) = (* (ptr) &fc120 );
(* (( (ptr) var←c67776)+3) ) = (* (ptr) &fc121 );
(* (( (ptr) var←c67776)+4) ) = (* (ptr) &fc122 );
(* (( (ptr) var←c67776)+5) ) = (* (ptr) &fc123 );
(* (( (ptr) var←c67776)+6) ) = (* (ptr) &fc124 );
(* (( (ptr) var←c67776)+7) ) = (* (ptr) &fc125 );
(* (( (ptr) var←c67776)+8) ) = (* (ptr) &fc126 );
(* (( (ptr) gf←c77760)+22)/* matRGBFromXYZ←v7396 */ ) = var←c67776;
};
SOURCE(32756, 47)
(* (( (ptr) gf←c77760)+23)/* matXYZFromRGB←v7424 */ ) = (word) Invert3←P3660((* ((( (ptr) gf←c77760)+22)/* matRGBFromXYZ←v7396 */ ) ))
;
SOURCE(32806, 102)
(* (( (ptr) gf←c77760)+24)/* cielab1000←v7452 */ ) = (word) NewColorOperatorCIELAB←P4800((* (ptr) &fc115 ), (* (ptr) &fc95 ), (* (ptr) &fc127 ), (* (ptr) &fc128 ), 0, 0)
;
SOURCE(33506, 22)
{
word var←c67808;
word var←c67840;
var←c67808 = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c67840 = var←c67808;
(* (ptr) var←c67840 ) = 2;
(* (( (ptr) var←c67840)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c67840 = (* (( (ptr) var←c67840)+1) );
(* (ptr) var←c67840 ) = 1;
(* (( (ptr) var←c67840)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c67840 = (* (( (ptr) var←c67840)+1) );
(* (( (ptr) gf←c77760)+25)/* chooseCIELABorRGBorY←v7620 */ ) = var←c67808;
};
SOURCE(36972, 353)
{
word var←c67872;
{
word var←c67904;
word var←c67936;
var←c67904 = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c67936 = var←c67904;
(* (ptr) var←c67936 ) = 4;
(* (( (ptr) var←c67936)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c67936 = (* (( (ptr) var←c67936)+1) );
(* (( (ptr) var←c67936)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c67936 = (* (( (ptr) var←c67936)+1) );
(* (ptr) var←c67936 ) = 1;
var←c67872 = var←c67904;
};
{
word pd129;
pd129 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+48) );
(* (( (ptr) gf←c77760)+26)/* classHighlightPassThru←v7872 */ ) = (word) ( *( (fPt) ((* (ptr) pd129 ))))((* (( (ptr) gf←c77760)+77)
), (word) (( (bPt) gf←c77760)+664)/* var←c64224 */ , (word) (( (bPt) gf←c77760)+640)/* var←c64128 */ , (word) (( (bPt) gf←c77760)+656)
/* var←c64192 */ , (word) (( (bPt) gf←c77760)+648)/* var←c64160 */ , (word) (( (bPt) gf←c77760)+632)/* var←c64096 */
, var←c67872, pd129);
};
};
SOURCE(37328, 333)
{
word var←c67968;
{
word var←c68000;
word var←c68032;
var←c68000 = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c68032 = var←c68000;
(* (( (ptr) var←c68032)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c68032 = (* (( (ptr) var←c68032)+1) );
(* (ptr) var←c68032 ) = 1;
var←c67968 = var←c68000;
};
{
word pd130;
pd130 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+48) );
(* (( (ptr) gf←c77760)+27)/* classHighlight←v7900 */ ) = (word) ( *( (fPt) ((* (ptr) pd130 ))))((* (( (ptr) gf←c77760)+77)
), (word) (( (bPt) gf←c77760)+664)/* var←c64224 */ , (word) (( (bPt) gf←c77760)+640)/* var←c64128 */ , (word) (( (bPt) gf←c77760)+656)
/* var←c64192 */ , (word) (( (bPt) gf←c77760)+648)/* var←c64160 */ , (word) (( (bPt) gf←c77760)+632)/* var←c64096 */
, var←c67968, pd130);
};
};
SOURCE(44572, 313)
{
word var←c68064;
{
word var←c68096;
word var←c68128;
var←c68096 = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c68128 = var←c68096;
(* (( (ptr) var←c68128)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c68128 = (* (( (ptr) var←c68128)+1) );
(* (ptr) var←c68128 ) = 1;
var←c68064 = var←c68096;
};
{
word pd131;
pd131 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+48) );
(* (( (ptr) gf←c77760)+28)/* classProcess←v8404 */ ) = (word) ( *( (fPt) ((* (ptr) pd131 ))))((* (( (ptr) gf←c77760)+70)
), (word) (( (bPt) gf←c77760)+584)/* var←c63904 */ , (word) (( (bPt) gf←c77760)+576)/* var←c63872 */ , (word) (( (bPt) gf←c77760)+568)
/* var←c63840 */ , (word) (( (bPt) gf←c77760)+560)/* var←c63808 */ , (word) (( (bPt) gf←c77760)+544)/* var←c63744 */
, var←c68064, pd131);
};
};
SOURCE(44888, 41)
(* (( (ptr) gf←c77760)+29)/* cmykColorSpace←v8432 */ ) = 5;
SOURCE(44970, 348)
{
word var←c68160;
{
word var←c68192;
word var←c68224;
var←c68192 = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c68224 = var←c68192;
(* (( (ptr) var←c68224)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c68224 = (* (( (ptr) var←c68224)+1) );
(* (ptr) var←c68224 ) = 1;
var←c68160 = var←c68192;
};
{
word pd132;
pd132 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+48) );
(* (( (ptr) gf←c77760)+30)/* classCMYK←v8460 */ ) = (word) ( *( (fPt) ((* (ptr) pd132 ))))((* (( (ptr) gf←c77760)+70) ), (word) (
( (bPt) gf←c77760)+584)/* var←c63904 */ , (word) (( (bPt) gf←c77760)+576)/* var←c63872 */ , (word) (( (bPt) gf←c77760)+568)
/* var←c63840 */ , (word) (( (bPt) gf←c77760)+560)/* var←c63808 */ , (word) (( (bPt) gf←c77760)+544)/* var←c63744 */
, var←c68160, pd132);
};
};
SOURCE(50874, 17)
(* (( (ptr) gf←c77760)+31)/* cmykSignalNames←v8796 */ ) = (word) EnlistSignalNames←P6180(4, (word) (( (bPt) gf←c77760)+528)
/* var←c63680 */ );
SOURCE(51853, 52)
(* (( (ptr) gf←c77760)+32)/* cmyk1000←v8880 */ ) = (word) NewColorOperatorCMYK←P6300(1000);
SOURCE(53506, 14)
{
word var←c68256;
word var←c68288;
var←c68256 = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c68288 = var←c68256;
(* (ptr) var←c68288 ) = 1;
(* (( (ptr) var←c68288)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
var←c68288 = (* (( (ptr) var←c68288)+1) );
(* (( (ptr) gf←c77760)+33)/* eitherRGBorY←v9076 */ ) = var←c68256;
};
SOURCE(54929, 101)
{
word var←c68352;
{
word var←c68320;
var←c68320 = (word) NewColorOperatorGrayLinear←P840((* (ptr) &fc133 ), (* (ptr) &fc95 ), 0, 0);
{
word pd134;
pd134 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+37) );
var←c68352 = (word) ( *( (fPt) ((* (ptr) pd134 ))))(var←c68320, 0, pd134);
};
};
};
SOURCE(55033, 75)
{
word var←c68416;
{
word var←c68384;
var←c68384 = (word) NewColorOperatorRGB←P2880((* (ptr) &fc133 ), (* (ptr) &fc95 ), 0, 0);
{
word pd135;
pd135 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+37) );
var←c68416 = (word) ( *( (fPt) ((* (ptr) pd135 ))))(var←c68384, 1, pd135);
};
};
};
SOURCE(55111, 132)
{
word var←c68480;
{
word var←c68448;
var←c68448 = (word) NewColorOperatorCIELAB←P4800((* (ptr) &fc136 ), (* (ptr) &fc95 ), (* (ptr) &fc95 ), (* (ptr) &fc133 ), 0, 0)
;
{
word pd137;
pd137 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+37) );
var←c68480 = (word) ( *( (fPt) ((* (ptr) pd137 ))))(var←c68448, 2, pd137);
};
};
};
SOURCE(55246, 124)
{
word var←c68544;
{
word var←c68512;
var←c68512 = (word) NewColorOperatorYES←P4320((* (ptr) &fc133 ), (* (ptr) &fc95 ), (* (ptr) &fc95 ), (* (ptr) &fc133 ), 0, 0)
;
{
word pd138;
pd138 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+37) );
var←c68544 = (word) ( *( (fPt) ((* (ptr) pd138 ))))(var←c68512, 3, pd138);
};
};
};
SOURCE(55373, 239)
{
word var←c68704;
{
word var←c68576;
{
word var←c68608;
{
word var←c68640;
{
W2 var←c68672;
var←c68672.f0 = (* (ptr) &fc95 );
var←c68672.f1 = (* (ptr) &fc133 );
var←c68640 = (word) ColorFromHighlight←P4920(var←c68672);
};
var←c68608 = (word) Define←P6840((* (( (ptr) gf←c77760)+68) ), (* (( (ptr) gf←c77760)+67) ), var←c68640);
};
var←c68576 = (word) ExtraNewColorOperatorHighlight←P5400((* (ptr) &fc133 ), (* (ptr) &fc95 ), 0, (* (( (ptr) (* (( (ptr) gf←c77760)+14)
/* solidColors←v6248 */ ))+7) ), var←c68608, 0);
};
{
word pd139;
pd139 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+37) );
var←c68704 = (word) ( *( (fPt) ((* (ptr) pd139 ))))(var←c68576, 4, pd139);
};
};
};
SOURCE(55615, 81)
{
word var←c68736;
var←c68736 = (word) NewColorOperatorCMYK←P6300(255);
{
word pd140;
pd140 = (* (( (ptr) (* (( (ptr) gf←c77760)+332)/* var←c66976 */ ))+37) );
(* (( (ptr) gf←c77760)+29)/* cmykColorSpace←v8432 */ ) = (word) ( *( (fPt) ((* (ptr) pd140 ))))(var←c68736, 5, pd140);
};
};
SOURCE(55698, 77)
{
word var←c68768;
var←c68768 = XR←NewObject(8, (* (( (ptr) gf←c77760)+39) ));
(* (ptr) var←c68768 ) = (* (( (ptr) gf←c77760)+29)/* cmykColorSpace←v8432 */ );
(* (( (ptr) var←c68768)+1) ) = (* (( (ptr) (* (( (ptr) gf←c77760)+30)/* classCMYK←v8460 */ ))+6) );
(* (( (ptr) (* (( (ptr) gf←c77760)+30)/* classCMYK←v8460 */ ))+6) ) = var←c68768;
};
}
static word Find←P60(name←v9280)
word name←v9280;
{
register ptr gf←c77792 = (ptr) &globalframe;
word var←c9324;
word color←v21440;
/* Find: */
SOURCE(2630, 165)
SOURCE(2689, 89)
{
W2 var←c0217;
word var←c01258;
{
word pd141;
pd141 = (* (( (ptr) (* (( (ptr) gf←c77792)+334)/* var←c68800 */ ))+7) );
(void) ( *( (fPt) ((* (ptr) pd141 ))))((word) &var←c0217, (* (ptr) (* (( (ptr) (* (( (ptr) gf←c77792)+332)/* var←c66976 */ ))+33)
) ), name←v9280, pd141);
};
var←c01258 = var←c0217.f1;
color←v21440 = XR←Narrow(var←c01258, (* (( (ptr) gf←c77792)+62) ));
};
if ((color←v21440 == 0)) {
goto lab←L100000;
};
if (((* (ptr) color←v21440 ) == 0)) {
goto lab←L100000;
};
(void) XR←RaiseError(XR←NarrowFault, 0);
lab←L100000: ;
SOURCE(2780, 15)
return(color←v21440);
}
static word SampleFromReal←P300(r←v9752, max←v9780)
word r←v9752;
word max←v9780;
{
word var←c9824;
/* SampleFromReal: */
SOURCE(3117, 112)
SOURCE(3186, 43)
{
word var←c01259;
{
word var←c68896;
{
word x142;
word x143;
word x144;
word x145;
word x146;
*(float*)&var←c68896 = (
x146 = ( ((
x142 = r←v9752, *(float*)&x142
) <= (
x143 = (* (ptr) &fc95 ), *(float*)&x143
)) ? (* (ptr) &fc95 ) : ( ((
x144 = r←v9752, *(float*)&x144
) > (
x145 = (* (ptr) &fc133 ), *(float*)&x145
)) ? (* (ptr) &fc133 ) : r←v9752 ) ) , *(float*)&x146
) * (float)(unsigned)max←v9780;
};
{
word idx147;
var←c01259 = (
idx147 = (word) XR←REAL32←Round(var←c68896),
SGNCK(idx147)
);
};
};
return(var←c01259);
};
}
static word SampleEncodingFetch←P360(sampleEncoding←v9884, value←v9912)
word sampleEncoding←v9884;
word value←v9912;
{
word var←c9956;
/* SampleEncodingFetch: */
SOURCE(3233, 236)
SOURCE(3343, 126)
if ((sampleEncoding←v9884 == 0)) {
return(value←v9912);
}
else {
{
word var←c68960;
{
word x148;
word x149;
word x150;
var←c68960 = (x149 = (x148 = (word) XR←REAL32←Round(value←v9912),
MAX((int)(word), x148, 0)),
x150 = ((* (ptr) sampleEncoding←v9884 ) - 1),
MIN((int)(word), x149, x150));
};
{
word limit151;
return((* ((( (ptr) sampleEncoding←v9884)+1)+(
limit151 = (* (ptr) sampleEncoding←v9884 ),
BCK(var←c68960, limit151)
)) ));
};
};
};
}
static word MakePE←P420(size←v10016, sampleTableProc←v10044)
word size←v10016;
word sampleTableProc←v10044;
{
register ptr gf←c77824 = (ptr) &globalframe;
word var←c10088;
word se←v21484;
/* MakePE: */
SOURCE(3475, 311)
SOURCE(3584, 81)
{
word pd152;
pd152 = (* (( (ptr) (* (( (ptr) gf←c77824)+332)/* var←c66976 */ ))+25) );
se←v21484 = (word) ( *( (fPt) ((* (ptr) pd152 ))))(size←v10016, sampleTableProc←v10044, pd152);
};
SOURCE(3667, 119)
if ((se←v21484 == 0)) {
SOURCE(3684, 18)
return(0);
}
else {
SOURCE(3702, 84)
{
word pe←v21528;
SOURCE(3704, 56)
pe←v21528 = XR←NewObject(8, (* (( (ptr) gf←c77824)+64) ));
(* (ptr) pe←v21528 ) = 1;
SOURCE(3762, 10)
{
word limit153;
(* ((( (ptr) pe←v21528)+1)+(
limit153 = (* (ptr) pe←v21528 ),
BCK(0, limit153)
)) ) = se←v21484;
};
SOURCE(3774, 12)
return(pe←v21528);
};
};
}
static word GetSE←P480(pm←v10148)
word pm←v10148;
{
word var←c10192;
/* GetSE: */
SOURCE(3793, 145)
SOURCE(3854, 29)
if ((pm←v10148 == 0)) {
SOURCE(3871, 12)
return(0);
};
SOURCE(3885, 31)
if (((* (ptr) pm←v10148 ) != 1)) {
SOURCE(3916, 5)
(void) XR←RaiseUnnamedError();
};
SOURCE(3923, 15)
{
word limit154;
return((* ((( (ptr) pm←v10148)+1)+(
limit154 = (* (ptr) pm←v10148 ),
BCK(0, limit154)
)) ));
};
}
static word CreateColorOperatorGrayLinear←P540(class←v44664, structure←v44692)
word class←v44664;
word structure←v44692;
{
W7 var←c77856;
register ptr gf←c77888 = (ptr) &globalframe;
word var←c44736;
/* declaration of var←c69024 skipped */
word size←v21572;
word sWhite←v21600;
word sBlack←v21628;
/* declaration of mapStructure←v21656 skipped */
word colorOperator←v21712;
/* CreateColorOperatorGrayLinear: */
SOURCE(4395, 608)
{
word tmpAddr155;
tmpAddr155 = (word) (( (ptr) &var←c77856)+4)/* var←c69024 */ ;
(* (ptr) tmpAddr155 ) = ( ((word) (fPt) sampleTable←P6948) );
(* (( (ptr) tmpAddr155) + 1) ) = 1;
};
SOURCE(4454, 55)
{
word pd156;
pd156 = (* (( (ptr) (* (( (ptr) gf←c77888)+332)/* var←c66976 */ ))+6) );
size←v21572 = (word) ( *( (fPt) ((* (ptr) pd156 ))))(structure←v44692, 3, pd156);
};
SOURCE(4511, 56)
{
word pd157;
pd157 = (* (( (ptr) (* (( (ptr) gf←c77888)+332)/* var←c66976 */ ))+9) );
sWhite←v21600 = (word) ( *( (fPt) ((* (ptr) pd157 ))))(structure←v44692, 0, pd157);
};
SOURCE(4569, 56)
{
word pd158;
pd158 = (* (( (ptr) (* (( (ptr) gf←c77888)+332)/* var←c66976 */ ))+9) );
sBlack←v21628 = (word) ( *( (fPt) ((* (ptr) pd158 ))))(structure←v44692, 1, pd158);
};
SOURCE(4627, 72)
{
word pd159;
pd159 = (* (( (ptr) (* (( (ptr) gf←c77888)+332)/* var←c66976 */ ))+11) );
var←c77856.f6/* mapStructure←v21656 */ = (word) ( *( (fPt) ((* (ptr) pd159 ))))(structure←v44692, 2, pd159);
};
SOURCE(4802, 176)
{
word var←c69056;
{
word pd160;
word idx161;
pd160 = (* (( (ptr) (* (( (ptr) gf←c77888)+332)/* var←c66976 */ ))+5) );
var←c69056 = (
idx161 = (word) ( *( (fPt) ((* (ptr) pd160 ))))(var←c77856.f6/* mapStructure←v21656 */ , pd160),
SGNCK(idx161)
);
};
colorOperator←v21712 = (word) NewColorOperatorGrayLinear←P840(sWhite←v21600, sBlack←v21628, var←c69056, (word) (( (bPt) &var←c77856)+16)
/* var←c69024 */ );
};
SOURCE(4980, 23)
return(colorOperator←v21712);
}
static word sampleTable←P6948(i←v21788, formal←c77952)
word i←v21788;
word formal←c77952;
{
register ptr gf←c77920 = (ptr) &globalframe;
word var←c21832;
formal←c77952 = (formal←c77952 - 16);
/* sampleTable: */
SOURCE(4701, 98)
SOURCE(4746, 53)
{
word pd162;
pd162 = (* (( (ptr) (* (( (ptr) gf←c77920)+332)/* var←c66976 */ ))+9) );
return((word) ( *( (fPt) ((* (ptr) pd162 ))))((* (( (ptr) formal←c77952)+6) ), i←v21788, pd162));
};
}
static word GetCreateDataGrayLinear←P600(colorOperator←v44796)
word colorOperator←v44796;
{
W8 var←c77984;
register ptr gf←c78016 = (ptr) &globalframe;
word var←c44840;
/* declaration of var←c69120 skipped */
/* declaration of data←v21860 skipped */
/* declaration of mapStructure←v21888 skipped */
word structure←v21944;
/* GetCreateDataGrayLinear: */
SOURCE(5007, 454)
{
word tmpAddr163;
tmpAddr163 = (word) (( (ptr) &var←c77984)+4)/* var←c69120 */ ;
(* (ptr) tmpAddr163 ) = ( ((word) (fPt) GenerateElements←P7008) );
(* (( (ptr) tmpAddr163) + 1) ) = 1;
};
SOURCE(5054, 49)
var←c77984.f6/* data←v21860 */ = XR←Narrow((* (( (ptr) colorOperator←v44796)+3) ), (* (( (ptr) gf←c78016)+65) ));
SOURCE(5105, 88)
{
word var←c69152;
var←c69152 = (word) GetSE←P480((* ((( (ptr) var←c77984.f6/* data←v21860 */ )+2)) ));
{
word pd164;
pd164 = (* (( (ptr) (* (( (ptr) gf←c78016)+332)/* var←c66976 */ ))+28) );
var←c77984.f7/* mapStructure←v21888 */ = (word) ( *( (fPt) ((* (ptr) pd164 ))))(var←c69152, pd164);
};
};
SOURCE(5351, 89)
{
word pd165;
pd165 = (* (( (ptr) (* (( (ptr) gf←c78016)+332)/* var←c66976 */ ))+17) );
structure←v21944 = (word) ( *( (fPt) ((* (ptr) pd165 ))))((word) ((( (bPt) &var←c77984)+16)/* var←c69120 */ ), pd165);
};
SOURCE(5442, 19)
return(structure←v21944);
}
static void GenerateElements←P7008(elementAction←v55128, formal←c78048)
word elementAction←v55128;
word formal←c78048;
{
formal←c78048 = (formal←c78048 - 16);
/* GenerateElements: */
SOURCE(5195, 151)
SOURCE(5234, 34)
{
W2 var←c69184;
var←c69184.f0 = 2;
var←c69184.f1 = (* (ptr) (* (( (ptr) formal←c78048)+6) ) );
(void) ( *( (fPt) ((* (ptr) elementAction←v55128 ))))(var←c69184, elementAction←v55128);
};
SOURCE(5270, 34)
{
W2 var←c69216;
var←c69216.f0 = 2;
var←c69216.f1 = (* (( (ptr) (* (( (ptr) formal←c78048)+6) ))+1) );
(void) ( *( (fPt) ((* (ptr) elementAction←v55128 ))))(var←c69216, elementAction←v55128);
};
SOURCE(5306, 40)
{
W2 var←c69248;
var←c69248.f0 = 1;
var←c69248.f1 = (* (( (ptr) formal←c78048)+7) );
(void) ( *( (fPt) ((* (ptr) elementAction←v55128 ))))(var←c69248, elementAction←v55128);
};
}
static word GetPixelEncodingGrayLinear←P660(colorOperator←v44900)
word colorOperator←v44900;
{
register ptr gf←c78080 = (ptr) &globalframe;
word var←c44944;
word data←v21988;
/* GetPixelEncodingGrayLinear: */
SOURCE(5465, 121)
SOURCE(5518, 49)
data←v21988 = XR←Narrow((* (( (ptr) colorOperator←v44900)+3) ), (* (( (ptr) gf←c78080)+65) ));
SOURCE(5569, 17)
return((* (( (ptr) data←v21988)+2) ));
}
static void ApplyGrayLinear←P720(colorOperator←v45004, pixelIn←v45032, colorSpace←v45060, out←v45088)
word colorOperator←v45004;
word pixelIn←v45032;
word colorSpace←v45060;
word out←v45088;
{
register ptr gf←c78112 = (ptr) &globalframe;
word data←v22032;
word s←v22060;
word f←v22088;
word x←v22116;
/* ApplyGrayLinear: */
SOURCE(5590, 222)
SOURCE(5621, 49)
data←v22032 = XR←Narrow((* (( (ptr) colorOperator←v45004)+3) ), (* (( (ptr) gf←c78112)+65) ));
SOURCE(5672, 20)
s←v22060 = (word) ( *( (fPt) ((* (ptr) pixelIn←v45032 ))))(0, pixelIn←v45032);
SOURCE(5694, 51)
{
word x166;
word x167;
word x168;
word x169;
*(float*)&f←v22088 = ((
x166 = s←v22060, *(float*)&x166
) - (
x167 = (* (ptr) data←v22032 ), *(float*)&x167
)) / ((
x168 = (* (( (ptr) data←v22032)+1) ), *(float*)&x168
) - (
x169 = (* (ptr) data←v22032 ), *(float*)&x169
));
};
SOURCE(5747, 53)
{
word x170;
word x171;
word x172;
word x173;
word x174;
word x175;
float tf176;
x←v22116 = ( ((
x170 = f←v22088, *(float*)&x170
) <= (
x171 = (* (ptr) &fc95 ), *(float*)&x171
)) ? (* (ptr) &fc133 ) : ( ((
x172 = f←v22088, *(float*)&x172
) >= (
x173 = (* (ptr) &fc133 ), *(float*)&x173
)) ? (* (ptr) &fc95 ) : (
tf176 = (
x174 = (* (ptr) &fc133 ), *(float*)&x174
) - (
x175 = f←v22088, *(float*)&x175
), *(word*)&tf176
) ) ) ;
};
SOURCE(5802, 10)
{
word limit177;
(* ((( (ptr) out←v45088)+2)+(
limit177 = (* (( (ptr) out←v45088)+1) ),
BCK(0, limit177)
)) ) = x←v22116;
};
}
static word DataEqualGrayLinear←P780(selfData←v45148, otherData←v45176)
word selfData←v45148;
word otherData←v45176;
{
register ptr gf←c78144 = (ptr) &globalframe;
word var←c45220;
word a←v22160;
word b←v22188;
/* DataEqualGrayLinear: */
SOURCE(5818, 223)
SOURCE(5857, 36)
a←v22160 = XR←Narrow(selfData←v45148, (* (( (ptr) gf←c78144)+65) ));
SOURCE(5895, 37)
b←v22188 = XR←Narrow(otherData←v45176, (* (( (ptr) gf←c78144)+65) ));
SOURCE(5934, 107)
{
word tc178;
word x179;
word x180;
word x181;
word x182;
word pd183;
if ( ( ((
x179 = (* (ptr) a←v22160 ), *(float*)&x179
) == (
x180 = (* (ptr) b←v22188 ), *(float*)&x180
)) ? ((
x181 = (* (( (ptr) a←v22160)+1) ), *(float*)&x181
) == (
x182 = (* (( (ptr) b←v22188)+1) ), *(float*)&x182
)) : 0 ) ) {
pd183 = (* (( (ptr) (* (( (ptr) gf←c78144)+332)/* var←c66976 */ ))+22) );
tc178 = (word) (unsigned) (0 != (word) ( *( (fPt) ((* (ptr) pd183 ))))((* (( (ptr) a←v22160)+2) ), (* (( (ptr) b←v22188)+2)
), pd183));
}
else {
tc178 = (word) (unsigned) 0;
};
return(tc178);
};
}
static word NewColorOperatorGrayLinear←P840(sWhite←v10364, sBlack←v10392, sampleTableSize←v10420, sampleTableProc←v10448)
word sWhite←v10364;
word sBlack←v10392;
word sampleTableSize←v10420;
word sampleTableProc←v10448;
{
register ptr gf←c78176 = (ptr) &globalframe;
word var←c10492;
word data←v22232;
/* NewColorOperatorGrayLinear: */
SOURCE(6045, 429)
SOURCE(6202, 129)
{
word var←c69312;
word var←c69344;
var←c69312 = (word) MakePE←P420(sampleTableSize←v10420, sampleTableProc←v10448);
var←c69344 = XR←NewObject(12, (* (( (ptr) gf←c78176)+65) ));
(* (ptr) var←c69344 ) = sWhite←v10364;
(* (( (ptr) var←c69344)+1) ) = sBlack←v10392;
(* (( (ptr) var←c69344)+2) ) = var←c69312;
data←v22232 = var←c69344;
};
SOURCE(6333, 141)
{
word pd184;
pd184 = (* (( (ptr) (* (( (ptr) gf←c78176)+332)/* var←c66976 */ ))+49) );
return((word) ( *( (fPt) ((* (ptr) pd184 ))))(0, 1, (* (( (ptr) gf←c78176)+4)/* classGrayLinear←v4484 */ ), data←v22232, 0, pd184)
);
};
}
static word ColorFromGray←P900(f←v10552)
word f←v10552;
{
register ptr gf←c78208 = (ptr) &globalframe;
word var←c10596;
word color←v22276;
/* ColorFromGray: */
SOURCE(6592, 224)
SOURCE(6659, 53)
color←v22276 = XR←NewObject(20, (* (( (ptr) gf←c78208)+62) ));
(* (( (ptr) color←v22276)+3) ) = 1;
SOURCE(6714, 36)
(* (( (ptr) color←v22276)+2) ) = (* (( (ptr) gf←c78208)+5)/* makeGrayLinear←v4708 */ );
SOURCE(6752, 48)
{
word var←c69440;
{
float tf185;
var←c69440 = (
tf185 = (float)(unsigned)(word) SampleFromReal←P300(f←v10552, 1000), *(word*)&tf185
);
};
{
word limit186;
(* ((( (ptr) color←v22276)+4)+(
limit186 = (* (( (ptr) color←v22276)+3) ),
BCK(0, limit186)
)) ) = var←c69440;
};
};
SOURCE(6802, 14)
return(color←v22276);
}
static word CreateColorOperatorGrayDensity←P960(class←v45312, structure←v45340)
word class←v45312;
word structure←v45340;
{
W7 var←c78240;
register ptr gf←c78272 = (ptr) &globalframe;
word var←c45384;
/* declaration of var←c69472 skipped */
word size←v22320;
word sWhite←v22348;
word sBlack←v22376;
word dBlack←v22404;
/* declaration of mapStructure←v22432 skipped */
word colorOperator←v22488;
/* CreateColorOperatorGrayDensity: */
SOURCE(7294, 684)
{
word tmpAddr187;
tmpAddr187 = (word) (( (ptr) &var←c78240)+4)/* var←c69472 */ ;
(* (ptr) tmpAddr187 ) = ( ((word) (fPt) sampleTable←P7068) );
(* (( (ptr) tmpAddr187) + 1) ) = 1;
};
SOURCE(7354, 55)
{
word pd188;
pd188 = (* (( (ptr) (* (( (ptr) gf←c78272)+332)/* var←c66976 */ ))+6) );
size←v22320 = (word) ( *( (fPt) ((* (ptr) pd188 ))))(structure←v45340, 4, pd188);
};
SOURCE(7411, 56)
{
word pd189;
pd189 = (* (( (ptr) (* (( (ptr) gf←c78272)+332)/* var←c66976 */ ))+9) );
sWhite←v22348 = (word) ( *( (fPt) ((* (ptr) pd189 ))))(structure←v45340, 0, pd189);
};
SOURCE(7469, 56)
{
word pd190;
pd190 = (* (( (ptr) (* (( (ptr) gf←c78272)+332)/* var←c66976 */ ))+9) );
sBlack←v22376 = (word) ( *( (fPt) ((* (ptr) pd190 ))))(structure←v45340, 1, pd190);
};
SOURCE(7527, 56)
{
word pd191;
pd191 = (* (( (ptr) (* (( (ptr) gf←c78272)+332)/* var←c66976 */ ))+9) );
dBlack←v22404 = (word) ( *( (fPt) ((* (ptr) pd191 ))))(structure←v45340, 2, pd191);
};
SOURCE(7585, 72)
{
word pd192;
pd192 = (* (( (ptr) (* (( (ptr) gf←c78272)+332)/* var←c66976 */ ))+11) );
var←c78240.f6/* mapStructure←v22432 */ = (word) ( *( (fPt) ((* (ptr) pd192 ))))(structure←v45340, 3, pd192);
};
SOURCE(7760, 193)
{
word var←c69504;
{
word pd193;
word idx194;
pd193 = (* (( (ptr) (* (( (ptr) gf←c78272)+332)/* var←c66976 */ ))+5) );
var←c69504 = (
idx194 = (word) ( *( (fPt) ((* (ptr) pd193 ))))(var←c78240.f6/* mapStructure←v22432 */ , pd193),
SGNCK(idx194)
);
};
colorOperator←v22488 = (word) NewColorOperatorGrayDensity←P1260(sWhite←v22348, sBlack←v22376, dBlack←v22404, var←c69504, (word) (
( (bPt) &var←c78240)+16)/* var←c69472 */ );
};
SOURCE(7955, 23)
return(colorOperator←v22488);
}
static word sampleTable←P7068(i←v22564, formal←c78336)
word i←v22564;
word formal←c78336;
{
register ptr gf←c78304 = (ptr) &globalframe;
word var←c22608;
formal←c78336 = (formal←c78336 - 16);
/* sampleTable: */
SOURCE(7659, 98)
SOURCE(7704, 53)
{
word pd195;
pd195 = (* (( (ptr) (* (( (ptr) gf←c78304)+332)/* var←c66976 */ ))+9) );
return((word) ( *( (fPt) ((* (ptr) pd195 ))))((* (( (ptr) formal←c78336)+6) ), i←v22564, pd195));
};
}
static word GetCreateDataGrayDensity←P1020(colorOperator←v45444)
word colorOperator←v45444;
{
W8 var←c78368;
register ptr gf←c78400 = (ptr) &globalframe;
word var←c45488;
/* declaration of var←c69568 skipped */
/* declaration of data←v22636 skipped */
/* declaration of mapStructure←v22664 skipped */
word structure←v22720;
/* GetCreateDataGrayDensity: */
SOURCE(7982, 492)
{
word tmpAddr196;
tmpAddr196 = (word) (( (ptr) &var←c78368)+4)/* var←c69568 */ ;
(* (ptr) tmpAddr196 ) = ( ((word) (fPt) GenerateElements←P7128) );
(* (( (ptr) tmpAddr196) + 1) ) = 1;
};
SOURCE(8030, 50)
var←c78368.f6/* data←v22636 */ = XR←Narrow((* (( (ptr) colorOperator←v45444)+3) ), (* (( (ptr) gf←c78400)+60) ));
SOURCE(8082, 88)
{
word var←c69600;
var←c69600 = (word) GetSE←P480((* ((( (ptr) var←c78368.f6/* data←v22636 */ )+3)) ));
{
word pd197;
pd197 = (* (( (ptr) (* (( (ptr) gf←c78400)+332)/* var←c66976 */ ))+28) );
var←c78368.f7/* mapStructure←v22664 */ = (word) ( *( (fPt) ((* (ptr) pd197 ))))(var←c69600, pd197);
};
};
SOURCE(8364, 89)
{
word pd198;
pd198 = (* (( (ptr) (* (( (ptr) gf←c78400)+332)/* var←c66976 */ ))+17) );
structure←v22720 = (word) ( *( (fPt) ((* (ptr) pd198 ))))((word) ((( (bPt) &var←c78368)+16)/* var←c69568 */ ), pd198);
};
SOURCE(8455, 19)
return(structure←v22720);
}
static void GenerateElements←P7128(elementAction←v55896, formal←c78432)
word elementAction←v55896;
word formal←c78432;
{
formal←c78432 = (formal←c78432 - 16);
/* GenerateElements: */
SOURCE(8172, 187)
SOURCE(8211, 34)
{
W2 var←c69632;
var←c69632.f0 = 2;
var←c69632.f1 = (* (ptr) (* (( (ptr) formal←c78432)+6) ) );
(void) ( *( (fPt) ((* (ptr) elementAction←v55896 ))))(var←c69632, elementAction←v55896);
};
SOURCE(8247, 34)
{
W2 var←c69664;
var←c69664.f0 = 2;
var←c69664.f1 = (* (( (ptr) (* (( (ptr) formal←c78432)+6) ))+1) );
(void) ( *( (fPt) ((* (ptr) elementAction←v55896 ))))(var←c69664, elementAction←v55896);
};
SOURCE(8283, 34)
{
W2 var←c69696;
var←c69696.f0 = 2;
var←c69696.f1 = (* (( (ptr) (* (( (ptr) formal←c78432)+6) ))+2) );
(void) ( *( (fPt) ((* (ptr) elementAction←v55896 ))))(var←c69696, elementAction←v55896);
};
SOURCE(8319, 40)
{
W2 var←c69728;
var←c69728.f0 = 1;
var←c69728.f1 = (* (( (ptr) formal←c78432)+7) );
(void) ( *( (fPt) ((* (ptr) elementAction←v55896 ))))(var←c69728, elementAction←v55896);
};
}
static word GetPixelEncodingGrayDensity←P1080(colorOperator←v45548)
word colorOperator←v45548;
{
register ptr gf←c78464 = (ptr) &globalframe;
word var←c45592;
word data←v22764;
/* GetPixelEncodingGrayDensity: */
SOURCE(8478, 123)
SOURCE(8532, 50)
data←v22764 = XR←Narrow((* (( (ptr) colorOperator←v45548)+3) ), (* (( (ptr) gf←c78464)+60) ));
SOURCE(8584, 17)
return((* (( (ptr) data←v22764)+3) ));
}
static void ApplyGrayDensity←P1140(colorOperator←v45652, pixelIn←v45680, colorSpace←v45708, out←v45736)
word colorOperator←v45652;
word pixelIn←v45680;
word colorSpace←v45708;
word out←v45736;
{
register ptr gf←c78496 = (ptr) &globalframe;
word data←v22808;
word s←v22836;
word d←v22864;
word f←v22892;
word x←v22920;
/* ApplyGrayDensity: */
SOURCE(8605, 255)
SOURCE(8637, 50)
data←v22808 = XR←Narrow((* (( (ptr) colorOperator←v45652)+3) ), (* (( (ptr) gf←c78496)+60) ));
SOURCE(8689, 20)
s←v22836 = (word) ( *( (fPt) ((* (ptr) pixelIn←v45680 ))))(0, pixelIn←v45680);
SOURCE(8711, 65)
{
word x199;
word x200;
word x201;
word x202;
word x203;
*(float*)&d←v22864 = (((
x199 = s←v22836, *(float*)&x199
) - (
x200 = (* (ptr) data←v22808 ), *(float*)&x200
)) / ((
x201 = (* (( (ptr) data←v22808)+1) ), *(float*)&x201
) - (
x202 = (* (ptr) data←v22808 ), *(float*)&x202
))) * (
x203 = (* (( (ptr) data←v22808)+2) ), *(float*)&x203
);
};
SOURCE(8778, 47)
{
word pd204;
word x205;
float tf206;
pd204 = (* (( (ptr) (* (( (ptr) gf←c78496)+335)/* var←c69760 */ ))+7) );
f←v22892 = (word) ( *( (fPt) ((* (ptr) pd204 ))))((* (ptr) &fc128 ), (
tf206 = - (
x205 = d←v22864, *(float*)&x205
), *(word*)&tf206
), pd204);
};
SOURCE(8827, 21)
{
word x←v62700;
{
word x207;
word x208;
*(float*)&x←v62700 = (
x207 = (* (ptr) &fc133 ), *(float*)&x207
) - (
x208 = f←v22892, *(float*)&x208
);
};
SOURCE(2971, 27)
{
word x209;
word x210;
word x211;
word x212;
if (((
x209 = x←v62700, *(float*)&x209
) <= (
x210 = (* (ptr) &fc95 ), *(float*)&x210
))) {
x←v22920 = (* (ptr) &fc95 );
}
else {
if (((
x211 = x←v62700, *(float*)&x211
) > (
x212 = (* (ptr) &fc133 ), *(float*)&x212
))) {
x←v22920 = (* (ptr) &fc133 );
}
else {
x←v22920 = x←v62700;
};
};
};
};
SOURCE(8850, 10)
{
word limit213;
(* ((( (ptr) out←v45736)+2)+(
limit213 = (* (( (ptr) out←v45736)+1) ),
BCK(0, limit213)
)) ) = x←v22920;
};
}
static word DataEqualGrayDensity←P1200(selfData←v45796, otherData←v45824)
word selfData←v45796;
word otherData←v45824;
{
register ptr gf←c78528 = (ptr) &globalframe;
word var←c45868;
word a←v22964;
word b←v22992;
/* DataEqualGrayDensity: */
SOURCE(8866, 250)
SOURCE(8906, 37)
a←v22964 = XR←Narrow(selfData←v45796, (* (( (ptr) gf←c78528)+60) ));
SOURCE(8945, 38)
b←v22992 = XR←Narrow(otherData←v45824, (* (( (ptr) gf←c78528)+60) ));
SOURCE(8985, 131)
{
word tc214;
word x215;
word x216;
word x217;
word x218;
word x219;
word x220;
word pd221;
if ( ( ( ((
x215 = (* (ptr) a←v22964 ), *(float*)&x215
) == (
x216 = (* (ptr) b←v22992 ), *(float*)&x216
)) ? ((
x217 = (* (( (ptr) a←v22964)+1) ), *(float*)&x217
) == (
x218 = (* (( (ptr) b←v22992)+1) ), *(float*)&x218
)) : 0 ) ? ((
x219 = (* (( (ptr) a←v22964)+2) ), *(float*)&x219
) == (
x220 = (* (( (ptr) b←v22992)+2) ), *(float*)&x220
)) : 0 ) ) {
pd221 = (* (( (ptr) (* (( (ptr) gf←c78528)+332)/* var←c66976 */ ))+22) );
tc214 = (word) (unsigned) (0 != (word) ( *( (fPt) ((* (ptr) pd221 ))))((* (( (ptr) a←v22964)+3) ), (* (( (ptr) b←v22992)+3)
), pd221));
}
else {
tc214 = (word) (unsigned) 0;
};
return(tc214);
};
}
static word NewColorOperatorGrayDensity←P1260(sWhite←v10796, sBlack←v10824, dBlack←v10852, sampleTableSize←v10880, sampleTableProc←v10908)
word sWhite←v10796;
word sBlack←v10824;
word dBlack←v10852;
word sampleTableSize←v10880;
word sampleTableProc←v10908;
{
register ptr gf←c78560 = (ptr) &globalframe;
word var←c10952;
word data←v23036;
/* NewColorOperatorGrayDensity: */
SOURCE(9120, 456)
SOURCE(9286, 146)
{
word var←c69888;
word var←c69920;
var←c69888 = (word) MakePE←P420(sampleTableSize←v10880, sampleTableProc←v10908);
var←c69920 = XR←NewObject(16, (* (( (ptr) gf←c78560)+60) ));
(* (ptr) var←c69920 ) = sWhite←v10796;
(* (( (ptr) var←c69920)+1) ) = sBlack←v10824;
(* (( (ptr) var←c69920)+2) ) = dBlack←v10852;
(* (( (ptr) var←c69920)+3) ) = var←c69888;
data←v23036 = var←c69920;
};
SOURCE(9434, 142)
{
word pd222;
pd222 = (* (( (ptr) (* (( (ptr) gf←c78560)+332)/* var←c66976 */ ))+49) );
return((word) ( *( (fPt) ((* (ptr) pd222 ))))(0, 1, (* (( (ptr) gf←c78560)+6)/* classGrayDensity←v4820 */ ), data←v23036, 0, pd222)
);
};
}
static word CreateColorOperatorGrayVisual←P1320(class←v45928, structure←v45956)
word class←v45928;
word structure←v45956;
{
W7 var←c78592;
register ptr gf←c78624 = (ptr) &globalframe;
word var←c46000;
/* declaration of var←c69984 skipped */
word size←v23080;
word sWhite←v23108;
word sBlack←v23136;
/* declaration of mapStructure←v23164 skipped */
word colorOperator←v23220;
/* CreateColorOperatorGrayVisual: */
SOURCE(10035, 608)
{
word tmpAddr223;
tmpAddr223 = (word) (( (ptr) &var←c78592)+4)/* var←c69984 */ ;
(* (ptr) tmpAddr223 ) = ( ((word) (fPt) sampleTable←P7188) );
(* (( (ptr) tmpAddr223) + 1) ) = 1;
};
SOURCE(10094, 55)
{
word pd224;
pd224 = (* (( (ptr) (* (( (ptr) gf←c78624)+332)/* var←c66976 */ ))+6) );
size←v23080 = (word) ( *( (fPt) ((* (ptr) pd224 ))))(structure←v45956, 3, pd224);
};
SOURCE(10151, 56)
{
word pd225;
pd225 = (* (( (ptr) (* (( (ptr) gf←c78624)+332)/* var←c66976 */ ))+9) );
sWhite←v23108 = (word) ( *( (fPt) ((* (ptr) pd225 ))))(structure←v45956, 0, pd225);
};
SOURCE(10209, 56)
{
word pd226;
pd226 = (* (( (ptr) (* (( (ptr) gf←c78624)+332)/* var←c66976 */ ))+9) );
sBlack←v23136 = (word) ( *( (fPt) ((* (ptr) pd226 ))))(structure←v45956, 1, pd226);
};
SOURCE(10267, 72)
{
word pd227;
pd227 = (* (( (ptr) (* (( (ptr) gf←c78624)+332)/* var←c66976 */ ))+11) );
var←c78592.f6/* mapStructure←v23164 */ = (word) ( *( (fPt) ((* (ptr) pd227 ))))(structure←v45956, 2, pd227);
};
SOURCE(10442, 176)
{
word var←c70016;
{
word pd228;
word idx229;
pd228 = (* (( (ptr) (* (( (ptr) gf←c78624)+332)/* var←c66976 */ ))+5) );
var←c70016 = (
idx229 = (word) ( *( (fPt) ((* (ptr) pd228 ))))(var←c78592.f6/* mapStructure←v23164 */ , pd228),
SGNCK(idx229)
);
};
colorOperator←v23220 = (word) NewColorOperatorGrayVisual←P1620(sWhite←v23108, sBlack←v23136, var←c70016, (word) (( (bPt) &var←c78592)+16)
/* var←c69984 */ );
};
SOURCE(10620, 23)
return(colorOperator←v23220);
}
static word sampleTable←P7188(i←v23296, formal←c78688)
word i←v23296;
word formal←c78688;
{
register ptr gf←c78656 = (ptr) &globalframe;
word var←c23340;
formal←c78688 = (formal←c78688 - 16);
/* sampleTable: */
SOURCE(10341, 98)
SOURCE(10386, 53)
{
word pd230;
pd230 = (* (( (ptr) (* (( (ptr) gf←c78656)+332)/* var←c66976 */ ))+9) );
return((word) ( *( (fPt) ((* (ptr) pd230 ))))((* (( (ptr) formal←c78688)+6) ), i←v23296, pd230));
};
}
static word GetCreateDataGrayVisual←P1380(colorOperator←v46060)
word colorOperator←v46060;
{
W8 var←c78720;
register ptr gf←c78752 = (ptr) &globalframe;
word var←c46104;
/* declaration of var←c70080 skipped */
/* declaration of data←v23368 skipped */
/* declaration of mapStructure←v23396 skipped */
word structure←v23452;
/* GetCreateDataGrayVisual: */
SOURCE(10647, 454)
{
word tmpAddr231;
tmpAddr231 = (word) (( (ptr) &var←c78720)+4)/* var←c70080 */ ;
(* (ptr) tmpAddr231 ) = ( ((word) (fPt) GenerateElements←P7248) );
(* (( (ptr) tmpAddr231) + 1) ) = 1;
};
SOURCE(10694, 49)
var←c78720.f6/* data←v23368 */ = XR←Narrow((* (( (ptr) colorOperator←v46060)+3) ), (* (( (ptr) gf←c78752)+58) ));
SOURCE(10745, 88)
{
word var←c70112;
var←c70112 = (word) GetSE←P480((* ((( (ptr) var←c78720.f6/* data←v23368 */ )+2)) ));
{
word pd232;
pd232 = (* (( (ptr) (* (( (ptr) gf←c78752)+332)/* var←c66976 */ ))+28) );
var←c78720.f7/* mapStructure←v23396 */ = (word) ( *( (fPt) ((* (ptr) pd232 ))))(var←c70112, pd232);
};
};
SOURCE(10991, 89)
{
word pd233;
pd233 = (* (( (ptr) (* (( (ptr) gf←c78752)+332)/* var←c66976 */ ))+17) );
structure←v23452 = (word) ( *( (fPt) ((* (ptr) pd233 ))))((word) ((( (bPt) &var←c78720)+16)/* var←c70080 */ ), pd233);
};
SOURCE(11082, 19)
return(structure←v23452);
}
static void GenerateElements←P7248(elementAction←v55956, formal←c78784)
word elementAction←v55956;
word formal←c78784;
{
formal←c78784 = (formal←c78784 - 16);
/* GenerateElements: */
SOURCE(10835, 151)
SOURCE(10874, 34)
{
W2 var←c70144;
var←c70144.f0 = 2;
var←c70144.f1 = (* (ptr) (* (( (ptr) formal←c78784)+6) ) );
(void) ( *( (fPt) ((* (ptr) elementAction←v55956 ))))(var←c70144, elementAction←v55956);
};
SOURCE(10910, 34)
{
W2 var←c70176;
var←c70176.f0 = 2;
var←c70176.f1 = (* (( (ptr) (* (( (ptr) formal←c78784)+6) ))+1) );
(void) ( *( (fPt) ((* (ptr) elementAction←v55956 ))))(var←c70176, elementAction←v55956);
};
SOURCE(10946, 40)
{
W2 var←c70208;
var←c70208.f0 = 1;
var←c70208.f1 = (* (( (ptr) formal←c78784)+7) );
(void) ( *( (fPt) ((* (ptr) elementAction←v55956 ))))(var←c70208, elementAction←v55956);
};
}
static word GetPixelEncodingGrayVisual←P1440(colorOperator←v46164)
word colorOperator←v46164;
{
register ptr gf←c78816 = (ptr) &globalframe;
word var←c46208;
word data←v23496;
/* GetPixelEncodingGrayVisual: */
SOURCE(11105, 121)
SOURCE(11158, 49)
data←v23496 = XR←Narrow((* (( (ptr) colorOperator←v46164)+3) ), (* (( (ptr) gf←c78816)+58) ));
SOURCE(11209, 17)
return((* (( (ptr) data←v23496)+2) ));
}
static void ApplyGrayVisual←P1500(colorOperator←v46268, pixelIn←v46296, colorSpace←v46324, out←v46352)
word colorOperator←v46268;
word pixelIn←v46296;
word colorSpace←v46324;
word out←v46352;
{
register ptr gf←c78848 = (ptr) &globalframe;
word data←v23540;
word s←v23568;
word L←v23596;
word Y←v23624;
/* ApplyGrayVisual: */
SOURCE(11230, 234)
SOURCE(11261, 49)
data←v23540 = XR←Narrow((* (( (ptr) colorOperator←v46268)+3) ), (* (( (ptr) gf←c78848)+58) ));
SOURCE(11312, 20)
s←v23568 = (word) ( *( (fPt) ((* (ptr) pixelIn←v46296 ))))(0, pixelIn←v46296);
SOURCE(11334, 51)
{
word x234;
word x235;
word x236;
word x237;
*(float*)&L←v23596 = ((
x234 = s←v23568, *(float*)&x234
) - (
x235 = (* (( (ptr) data←v23540)+1) ), *(float*)&x235
)) / ((
x236 = (* (ptr) data←v23540 ), *(float*)&x236
) - (
x237 = (* (( (ptr) data←v23540)+1) ), *(float*)&x237
));
};
SOURCE(11387, 57)
{
word x238;
word x240;
word x241;
word x243;
float tf244;
word x245;
word x247;
word x249;
float tf250;
Y←v23624 = ( ((
x238 = L←v23596, *(float*)&x238
) <= (
x240 = (* (ptr) &fc239 ), *(float*)&x240
)) ? (
tf244 = (
x241 = L←v23596, *(float*)&x241
) / (
x243 = (* (ptr) &fc242 ), *(float*)&x243
), *(word*)&tf244
) : XR←RealPwr((
tf250 = ((
x245 = L←v23596, *(float*)&x245
) + (
x247 = (* (ptr) &fc246 ), *(float*)&x247
)) / (
x249 = (* (ptr) &fc248 ), *(float*)&x249
), *(word*)&tf250
), (* (ptr) &fc251 )) ) ;
};
SOURCE(11446, 18)
{
word x252;
word x253;
word limit254;
word x255;
word x256;
word limit257;
word limit258;
if (((
x252 = Y←v23624, *(float*)&x252
) <= (
x253 = (* (ptr) &fc95 ), *(float*)&x253
))) {
(* ((( (ptr) out←v46352)+2)+(
limit254 = (* (( (ptr) out←v46352)+1) ),
BCK(0, limit254)
)) ) = (* (ptr) &fc95 );
}
else {
if (((
x255 = Y←v23624, *(float*)&x255
) > (
x256 = (* (ptr) &fc133 ), *(float*)&x256
))) {
(* ((( (ptr) out←v46352)+2)+(
limit257 = (* (( (ptr) out←v46352)+1) ),
BCK(0, limit257)
)) ) = (* (ptr) &fc133 );
}
else {
(* ((( (ptr) out←v46352)+2)+(
limit258 = (* (( (ptr) out←v46352)+1) ),
BCK(0, limit258)
)) ) = Y←v23624;
};
};
};
}
static word DataEqualGrayVisual←P1560(selfData←v46412, otherData←v46440)
word selfData←v46412;
word otherData←v46440;
{
register ptr gf←c78880 = (ptr) &globalframe;
word var←c46484;
word a←v23668;
word b←v23696;
/* DataEqualGrayVisual: */
SOURCE(11470, 223)
SOURCE(11509, 36)
a←v23668 = XR←Narrow(selfData←v46412, (* (( (ptr) gf←c78880)+58) ));
SOURCE(11547, 37)
b←v23696 = XR←Narrow(otherData←v46440, (* (( (ptr) gf←c78880)+58) ));
SOURCE(11586, 107)
{
word tc259;
word x260;
word x261;
word x262;
word x263;
word pd264;
if ( ( ((
x260 = (* (ptr) a←v23668 ), *(float*)&x260
) == (
x261 = (* (ptr) b←v23696 ), *(float*)&x261
)) ? ((
x262 = (* (( (ptr) a←v23668)+1) ), *(float*)&x262
) == (
x263 = (* (( (ptr) b←v23696)+1) ), *(float*)&x263
)) : 0 ) ) {
pd264 = (* (( (ptr) (* (( (ptr) gf←c78880)+332)/* var←c66976 */ ))+22) );
tc259 = (word) (unsigned) (0 != (word) ( *( (fPt) ((* (ptr) pd264 ))))((* (( (ptr) a←v23668)+2) ), (* (( (ptr) b←v23696)+2)
), pd264));
}
else {
tc259 = (word) (unsigned) 0;
};
return(tc259);
};
}
static word NewColorOperatorGrayVisual←P1620(sWhite←v11124, sBlack←v11152, sampleTableSize←v11180, sampleTableProc←v11208)
word sWhite←v11124;
word sBlack←v11152;
word sampleTableSize←v11180;
word sampleTableProc←v11208;
{
register ptr gf←c78912 = (ptr) &globalframe;
word var←c11252;
word data←v23740;
/* NewColorOperatorGrayVisual: */
SOURCE(11697, 429)
SOURCE(11854, 129)
{
word var←c70272;
word var←c70304;
var←c70272 = (word) MakePE←P420(sampleTableSize←v11180, sampleTableProc←v11208);
var←c70304 = XR←NewObject(12, (* (( (ptr) gf←c78912)+58) ));
(* (ptr) var←c70304 ) = sWhite←v11124;
(* (( (ptr) var←c70304)+1) ) = sBlack←v11152;
(* (( (ptr) var←c70304)+2) ) = var←c70272;
data←v23740 = var←c70304;
};
SOURCE(11985, 141)
{
word pd265;
pd265 = (* (( (ptr) (* (( (ptr) gf←c78912)+332)/* var←c66976 */ ))+49) );
return((word) ( *( (fPt) ((* (ptr) pd265 ))))(0, 1, (* (( (ptr) gf←c78912)+7)/* classGrayVisual←v5072 */ ), data←v23740, 0, pd265)
);
};
}
static word CreateColorOperatorMap←P1680(class←v46544, formal←c01297)
word class←v46544;
word formal←c01297;
{
W7 var←c78944;
/* declaration of structure←v46572 skipped */
register ptr gf←c78976 = (ptr) &globalframe;
word var←c46616;
/* declaration of var←c70368 skipped */
word size←v23784;
word colorOperator←v23840;
var←c78944.f4/* structure←v46572 */ = formal←c01297;
/* CreateColorOperatorMap: */
SOURCE(12831, 517)
{
word tmpAddr266;
tmpAddr266 = (word) (( (ptr) &var←c78944)+5)/* var←c70368 */ ;
(* (ptr) tmpAddr266 ) = ( ((word) (fPt) map←P7308) );
(* (( (ptr) tmpAddr266) + 1) ) = 1;
};
SOURCE(12883, 47)
{
word pd267;
pd267 = (* (( (ptr) (* (( (ptr) gf←c78976)+332)/* var←c66976 */ ))+5) );
size←v23784 = (word) ( *( (fPt) ((* (ptr) pd267 ))))(var←c78944.f4/* structure←v46572 */ , pd267);
};
SOURCE(13239, 84)
colorOperator←v23840 = (word) NewColorOperatorMap←P2160(SGNCK((size←v23784 - 1)), (word) (( (bPt) &var←c78944)+20)/* var←c70368 */ )
;
SOURCE(13325, 23)
return(colorOperator←v23840);
}
static word map←P7308(i←v23916, formal←c79040)
word i←v23916;
word formal←c79040;
{
register ptr gf←c79008 = (ptr) &globalframe;
word var←c23960;
word color←v23988;
formal←c79040 = (formal←c79040 - 20);
/* map: */
SOURCE(12932, 302)
SOURCE(12979, 57)
{
word pd268;
pd268 = (* (( (ptr) (* (( (ptr) gf←c79008)+332)/* var←c66976 */ ))+13) );
color←v23988 = (word) ( *( (fPt) ((* (ptr) pd268 ))))((* (( (ptr) formal←c79040)+4) ), i←v23916, pd268);
};
SOURCE(13038, 196)
{
word var←c70400;
var←c70400 = color←v23988;
if ((var←c70400 == 0)) {
goto lab←L100002;
};
if (((* (ptr) var←c70400 ) == 0)) {
{
word constantColor←v24032;
constantColor←v24032 = var←c70400;
SOURCE(13093, 22)
return(constantColor←v24032);
};
}
else {
lab←L100002: ;
SOURCE(13128, 106)
{
word var←c70464;
{
word var←c70496;
word var←c70528;
var←c70496 = XR←NewObject(12, (* (( (ptr) gf←c79008)+55) ));
var←c70528 = var←c70496;
(* (ptr) var←c70528 ) = (* (( (ptr) gf←c79008)+71) );
(* (( (ptr) var←c70528)+1) ) = color←v23988;
var←c70464 = var←c70496;
};
{
W3 var←c0398;
var←c0398.f0 = 70;
var←c0398.f1 = (* (( (ptr) gf←c79008)+69) );
var←c0398.f2 = var←c70464;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c79008)+336)/* var←c70432 */ ))+4) ), (word) &var←c0398);
};
};
};
};
}
static word GetCreateDataMap←P1740(colorOperator←v46676)
word colorOperator←v46676;
{
register ptr gf←c79072 = (ptr) &globalframe;
word var←c46720;
word data←v24076;
word structure←v24104;
/* GetCreateDataMap: */
SOURCE(13352, 154)
SOURCE(13392, 42)
data←v24076 = XR←Narrow((* (( (ptr) colorOperator←v46676)+3) ), (* (( (ptr) gf←c79072)+52) ));
SOURCE(13436, 49)
structure←v24104 = (word) StructureFromDataMap←P2100(data←v24076);
SOURCE(13487, 19)
return(structure←v24104);
}
static word GetIdentityPixelEncoding←P1800(colorOperator←v46780)
word colorOperator←v46780;
{
word var←c46824;
/* GetIdentityPixelEncoding: */
SOURCE(13510, 64)
SOURCE(13561, 13)
return(0);
}
static void ApplyMap←P1860(colorOperator←v46884, pixelIn←v46912, colorSpace←v46940, out←v46968)
word colorOperator←v46884;
word pixelIn←v46912;
word colorSpace←v46940;
word out←v46968;
{
register ptr gf←c79104 = (ptr) &globalframe;
word data←v24148;
word color←v24176;
/* ApplyMap: */
SOURCE(13578, 314)
SOURCE(13602, 42)
data←v24148 = XR←Narrow((* (( (ptr) colorOperator←v46884)+3) ), (* (( (ptr) gf←c79104)+52) ));
SOURCE(13646, 104)
{
word var←c70592;
{
word var←c70688;
{
word var←c70624;
word var←c01260;
var←c70624 = (word) ( *( (fPt) ((* (ptr) pixelIn←v46912 ))))(0, pixelIn←v46912);
{
word pd269;
word x270;
pd269 = (* (( (ptr) (* (( (ptr) gf←c79104)+337)/* var←c70656 */ ))+6) );
var←c01260 = (x270 = (word) ( *( (fPt) ((* (ptr) pd269 ))))(var←c70624, pd269),
MAX((int)(word), x270, 0));
};
{
word x271;
var←c70688 = (x271 = ((* (ptr) data←v24148 ) - 1),
MIN((int)(word), var←c01260, x271));
};
};
{
word limit272;
var←c70592 = (* ((( (ptr) data←v24148)+1)+(
limit272 = (* (ptr) data←v24148 ),
BCK(var←c70688, limit272)
)) );
};
};
color←v24176 = (word) NarrowToOpConstantColor←P6420(var←c70592);
};
SOURCE(13752, 140)
{
word var←c70720;
var←c70720 = colorSpace←v46940;
if ((var←c70720 == 0)) {
SOURCE(13781, 53)
{
word var←c70752;
{
word pd273;
pd273 = (* (( (ptr) (* (( (ptr) gf←c79104)+332)/* var←c66976 */ ))+31) );
var←c70752 = (word) ( *( (fPt) ((* (ptr) pd273 ))))(color←v24176, pd273);
};
{
word limit274;
(* ((( (ptr) out←v46968)+2)+(
limit274 = (* (( (ptr) out←v46968)+1) ),
BCK(0, limit274)
)) ) = var←c70752;
};
};
}
else {
if ((var←c70720 == 1)) {
SOURCE(13844, 48)
{
W3 var←c70784;
(void) RGBFromColor←P6660((word) &var←c70784, color←v24176);
{
word limit275;
(* ((( (ptr) out←v46968)+2)+(
limit275 = (* (( (ptr) out←v46968)+1) ),
BCK(2, limit275)
)) ) = var←c70784.f2;
};
{
word limit276;
(* ((( (ptr) out←v46968)+2)+(
limit276 = (* (( (ptr) out←v46968)+1) ),
BCK(1, limit276)
)) ) = var←c70784.f1;
};
{
word limit277;
(* ((( (ptr) out←v46968)+2)+(
limit277 = (* (( (ptr) out←v46968)+1) ),
BCK(0, limit277)
)) ) = var←c70784.f0;
};
};
}
else {
SOURCE(13905, 5)
(void) XR←RaiseUnnamedError();
};
};
};
}
static word DataEqualMap←P1920(selfData←v47028, otherData←v47056)
word selfData←v47028;
word otherData←v47056;
{
register ptr gf←c79136 = (ptr) &globalframe;
word var←c47100;
word a←v24220;
word b←v24248;
/* DataEqualMap: */
SOURCE(13916, 292)
SOURCE(13948, 29)
a←v24220 = XR←Narrow(selfData←v47028, (* (( (ptr) gf←c79136)+52) ));
SOURCE(13979, 30)
b←v24248 = XR←Narrow(otherData←v47056, (* (( (ptr) gf←c79136)+52) ));
SOURCE(14011, 25)
if ((a←v24220 == b←v24248)) {
SOURCE(14023, 13)
return(1);
};
SOURCE(14038, 38)
if (((* (ptr) a←v24220 ) != (* (ptr) b←v24248 ))) {
SOURCE(14062, 14)
return(0);
};
SOURCE(14078, 106)
{
register word i←v24292 = 0;
register word noName←c70816;
noName←c70816 = (* (ptr) a←v24220 );
if ((i←v24292 >= noName←c70816)) {
goto lab←L100003;
};
lab←L100006: ;
SOURCE(14107, 77)
{
word pd278;
word limit279;
word limit280;
pd278 = (* (( (ptr) (* (( (ptr) gf←c79136)+332)/* var←c66976 */ ))+29) );
if ((0 == (word) ( *( (fPt) ((* (ptr) pd278 ))))((* ((( (ptr) a←v24220)+1)+(
limit279 = (* (ptr) a←v24220 ),
BCK(i←v24292, limit279)
)) ), (* ((( (ptr) b←v24248)+1)+(
limit280 = (* (ptr) b←v24248 ),
BCK(i←v24292, limit280)
)) ), pd278))) {
SOURCE(14170, 14)
return(0);
};
};
i←v24292 = (i←v24292 + 1);
if ((i←v24292 < noName←c70816)) {
goto lab←L100006;
};
lab←L100003: ;
};
SOURCE(14195, 13)
return(1);
}
static word DataMapSize←P1980(structure←v11416)
word structure←v11416;
{
register ptr gf←c79168 = (ptr) &globalframe;
word var←c11460;
word dataMap←v24336;
/* DataMapSize: */
SOURCE(14214, 124)
SOURCE(14273, 41)
dataMap←v24336 = XR←Narrow((* (( (ptr) structure←v11416)+1) ), (* (( (ptr) gf←c79168)+52) ));
SOURCE(14316, 22)
return((* (ptr) dataMap←v24336 ));
}
static void DataMapGet←P2040(formal←c0434, structure←v11520, i←v11548)
word formal←c0434;
word structure←v11520;
word i←v11548;
{
register ptr gf←c79200 = (ptr) &globalframe;
W2 var←c11592;
word dataMap←v24380;
/* DataMapGet: */
SOURCE(14341, 142)
SOURCE(14411, 41)
dataMap←v24380 = XR←Narrow((* (( (ptr) structure←v11520)+1) ), (* (( (ptr) gf←c79200)+52) ));
SOURCE(14454, 29)
{
W2 var←c70880;
{
W2 var←c70848;
var←c70848.f0 = 4;
{
word limit281;
var←c70848.f1 = (* ((( (ptr) dataMap←v24380)+1)+(
limit281 = (* (ptr) dataMap←v24380 ),
BCK(i←v11548, limit281)
)) );
};
var←c70880 = var←c70848;
};
var←c11592 = var←c70880;
/* removed tail goto */
};
(* (W2Pt) formal←c0434 ) = var←c11592;
return;
}
static word StructureFromDataMap←P2100(dataMap←v11652)
word dataMap←v11652;
{
register ptr gf←c79232 = (ptr) &globalframe;
word var←c11696;
word structure←v24424;
/* StructureFromDataMap: */
SOURCE(14589, 198)
SOURCE(14666, 100)
structure←v24424 = XR←NewObject(8, (* (( (ptr) gf←c79232)+51) ));
(* (ptr) structure←v24424 ) = (* (( (ptr) gf←c79232)+10)/* dataMapStructureClass←v5576 */ );
(* (( (ptr) structure←v24424)+1) ) = dataMap←v11652;
SOURCE(14768, 19)
return(structure←v24424);
}
static word NewColorOperatorMap←P2160(maxSampleValue←v11756, map←v11784)
word maxSampleValue←v11756;
word map←v11784;
{
register ptr gf←c79264 = (ptr) &globalframe;
word var←c11932;
word data←v24468;
word chromatic←v24496 = 0;
/* NewColorOperatorMap: */
SOURCE(14791, 595)
SOURCE(14915, 49)
{
word var←c70944;
word var←c70976;
word var←c71008;
var←c70944 = BCK((maxSampleValue←v11756 + 1), 67108863);
var←c70976 = ((word) var←c70944 << 2);
var←c71008 = XR←NewObject((4 + var←c70976), (* (( (ptr) gf←c79264)+52) ));
(* (ptr) var←c71008 ) = var←c70944;
data←v24468 = var←c71008;
};
SOURCE(14991, 195)
{
register word s0←v24540 = 0;
register word noName←c71040;
noName←c71040 = maxSampleValue←v11756;
if ((s0←v24540 > noName←c71040)) {
goto lab←L100008;
};
lab←L100011: ;
{
word color←v24584;
word op←v24612;
SOURCE(15029, 30)
color←v24584 = (word) ( *( (fPt) ((* (ptr) map←v11784 ))))(s0←v24540, map←v11784);
SOURCE(15061, 52)
op←v24612 = (word) NarrowToOpConstantColor←P6420(color←v24584);
SOURCE(15115, 18)
{
word limit282;
(* ((( (ptr) data←v24468)+1)+(
limit282 = (* (ptr) data←v24468 ),
BCK(s0←v24540, limit282)
)) ) = color←v24584;
};
SOURCE(15135, 51)
if ((0 != chromatic←v24496)) {
chromatic←v24496 = (unsigned) 1;
}
else {
chromatic←v24496 = (unsigned) (0 != (* (ptr) (* (( (ptr) op←v24612)+2) ) ));
};
};
if ((s0←v24540 >= noName←c71040)) {
goto lab←L100008;
};
s0←v24540 = (s0←v24540 + 1);
goto lab←L100011;
lab←L100008: ;
};
SOURCE(15197, 189)
{
word pd283;
pd283 = (* (( (ptr) (* (( (ptr) gf←c79264)+332)/* var←c66976 */ ))+49) );
return((word) ( *( (fPt) ((* (ptr) pd283 ))))(chromatic←v24496, 1, ( (0 != chromatic←v24496) ? (* (( (ptr) gf←c79264)+8)
/* classMapChromatic←v5324 */ ) : (* (( (ptr) gf←c79264)+9)/* classMapMonochrome←v5352 */ ) ) , data←v24468, 0, pd283));
};
}
static word ClassBuildMap←P2220(formal←c01298)
word formal←c01298;
{
W8 var←c79296;
/* declaration of supportedOutputs←v12076 skipped */
register ptr gf←c79328 = (ptr) &globalframe;
/* declaration of classBuildMap←v12204 skipped */
/* declaration of var←c71104 skipped */
var←c79296.f4/* supportedOutputs←v12076 */ = formal←c01298;
/* ClassBuildMap: */
SOURCE(15568, 591)
{
word tmpAddr284;
tmpAddr284 = (word) (( (ptr) &var←c79296)+6)/* var←c71104 */ ;
(* (ptr) tmpAddr284 ) = ( ((word) (fPt) Action←P7560) );
(* (( (ptr) tmpAddr284) + 1) ) = 1;
};
SOURCE(15568, 591)
var←c79296.f5/* classBuildMap←v12204 */ = 0;
SOURCE(16100, 59)
{
word pd285;
pd285 = (* (( (ptr) (* (( (ptr) gf←c79328)+333)/* var←c67424 */ ))+14) );
(void) ( *( (fPt) ((* (ptr) pd285 ))))((* (( (ptr) gf←c79328)+11)/* classBuildMapTable←v5716 */ ), var←c79296.f4/* supportedOutputs←v12076 */ , (word) (
( (bPt) &var←c79296)+24)/* var←c71104 */ , pd285);
};
SOURCE(15568, 591)
return(var←c79296.f5/* classBuildMap←v12204 */ );
}
static void Action←P7560(formal←c0457, found←v57304, val←v57332, formal←c79392)
word formal←c0457;
word found←v57304;
word val←v57332;
word formal←c79392;
{
register ptr gf←c79360 = (ptr) &globalframe;
word op←v57376;
word new←v57404;
formal←c79392 = (formal←c79392 - 24);
/* Action: */
SOURCE(15675, 419)
SOURCE(15675, 419)
op←v57376 = 0;
SOURCE(15675, 419)
new←v57404 = 0;
SOURCE(15707, 387)
if ((0 != found←v57304)) {
SOURCE(15723, 28)
(* (( (ptr) formal←c79392)+5) ) = XR←Narrow(val←v57332, (* (( (ptr) gf←c79360)+34) ));
}
else {
SOURCE(15760, 302)
{
word pd286;
pd286 = (* (( (ptr) (* (( (ptr) gf←c79360)+332)/* var←c66976 */ ))+48) );
(* (( (ptr) formal←c79392)+5) ) = (word) ( *( (fPt) ((* (ptr) pd286 ))))((* (( (ptr) gf←c79360)+75) ), (word) (( (bPt) gf←c79360)+1040)
/* var←c65728 */ , (word) (( (bPt) gf←c79360)+1032)/* var←c65696 */ , (word) (( (bPt) gf←c79360)+1104)/* var←c65984 */ , (word) (
( (bPt) gf←c79360)+1024)/* var←c65664 */ , (word) (( (bPt) gf←c79360)+1016)/* var←c65632 */
, (* (( (ptr) formal←c79392)+4) ), pd286);
};
SOURCE(16064, 30)
op←v57376 = 1;
new←v57404 = (* (( (ptr) formal←c79392)+5) );
goto lab←L100012;
};
/* removed tail goto */
lab←L100012: ;
(* (ptr) formal←c0457 ) = op←v57376;
(* (( (ptr) formal←c0457)+1) ) = new←v57404;
return;
}
static word CreateColorOperatorBuildMap←P2280(class←v48296, structure←v48324)
word class←v48296;
word structure←v48324;
{
W7 var←c79424;
register ptr gf←c79456 = (ptr) &globalframe;
word var←c48368;
/* declaration of var←c71136 skipped */
word size←v24700;
/* declaration of v←v24728 skipped */
word baseColorOperator←v24756;
word colorOperator←v24812;
/* CreateColorOperatorBuildMap: */
SOURCE(16165, 519)
{
word tmpAddr287;
tmpAddr287 = (word) (( (ptr) &var←c79424)+4)/* var←c71136 */ ;
(* (ptr) tmpAddr287 ) = ( ((word) (fPt) map←P7620) );
(* (( (ptr) tmpAddr287) + 1) ) = 1;
};
SOURCE(16222, 55)
{
word pd288;
pd288 = (* (( (ptr) (* (( (ptr) gf←c79456)+332)/* var←c66976 */ ))+6) );
size←v24700 = (word) ( *( (fPt) ((* (ptr) pd288 ))))(structure←v48324, 2, pd288);
};
SOURCE(16279, 61)
{
word pd289;
pd289 = (* (( (ptr) (* (( (ptr) gf←c79456)+332)/* var←c66976 */ ))+11) );
var←c79424.f6/* v←v24728 */ = (word) ( *( (fPt) ((* (ptr) pd289 ))))(structure←v48324, 0, pd289);
};
SOURCE(16342, 85)
{
word pd290;
pd290 = (* (( (ptr) (* (( (ptr) gf←c79456)+332)/* var←c66976 */ ))+14) );
baseColorOperator←v24756 = (word) ( *( (fPt) ((* (ptr) pd290 ))))(structure←v48324, 1, pd290);
};
SOURCE(16513, 146)
{
word var←c71168;
{
word pd291;
word idx292;
pd291 = (* (( (ptr) (* (( (ptr) gf←c79456)+332)/* var←c66976 */ ))+5) );
var←c71168 = (
idx292 = (word) ((word) ( *( (fPt) ((* (ptr) pd291 ))))(var←c79424.f6/* v←v24728 */ , pd291) - 1),
SGNCK(idx292)
);
};
colorOperator←v24812 = (word) NewColorOperatorBuildMap←P2520(baseColorOperator←v24756, var←c71168, (word) (( (bPt) &var←c79424)+16)
/* var←c71136 */ );
};
SOURCE(16661, 23)
return(colorOperator←v24812);
}
static word map←P7620(i←v24888, formal←c79520)
word i←v24888;
word formal←c79520;
{
register ptr gf←c79488 = (ptr) &globalframe;
word var←c24932;
formal←c79520 = (formal←c79520 - 16);
/* map: */
SOURCE(16429, 81)
SOURCE(16467, 43)
{
word pd293;
pd293 = (* (( (ptr) (* (( (ptr) gf←c79488)+332)/* var←c66976 */ ))+9) );
return((word) ( *( (fPt) ((* (ptr) pd293 ))))((* (( (ptr) formal←c79520)+6) ), i←v24888, pd293));
};
}
static word GetCreateDataBuildMap←P2340(colorOperator←v48428)
word colorOperator←v48428;
{
W10 var←c79552;
register ptr gf←c79584 = (ptr) &globalframe;
word var←c48472;
/* declaration of var←c71232 skipped */
/* declaration of var←c71264 skipped */
/* declaration of data←v24960 skipped */
/* declaration of mapStructure←v25016 skipped */
word structure←v25072;
/* GetCreateDataBuildMap: */
SOURCE(16688, 541)
{
word tmpAddr294;
tmpAddr294 = (word) (( (ptr) &var←c79552)+4)/* var←c71232 */ ;
(* (ptr) tmpAddr294 ) = ( ((word) (fPt) GenerateElements←P7740) );
(* (( (ptr) tmpAddr294) + 1) ) = 1;
};
{
word tmpAddr295;
tmpAddr295 = (word) (( (ptr) &var←c79552)+6)/* var←c71264 */ ;
(* (ptr) tmpAddr295 ) = ( ((word) (fPt) MapElements←P7680) );
(* (( (ptr) tmpAddr295) + 1) ) = 1;
};
SOURCE(16733, 47)
(* (( (ptr) &var←c79552)+8)/* data←v24960 */ ) = XR←Narrow((* (( (ptr) colorOperator←v48428)+3) ), (* (( (ptr) gf←c79584)+50)
));
SOURCE(16894, 87)
{
word pd296;
pd296 = (* (( (ptr) (* (( (ptr) gf←c79584)+332)/* var←c66976 */ ))+17) );
(* (( (ptr) &var←c79552)+9)/* mapStructure←v25016 */ ) = (word) ( *( (fPt) ((* (ptr) pd296 ))))((word) ((( (bPt) &var←c79552)+24)
/* var←c71264 */ ), pd296);
};
SOURCE(17119, 89)
{
word pd297;
pd297 = (* (( (ptr) (* (( (ptr) gf←c79584)+332)/* var←c66976 */ ))+17) );
structure←v25072 = (word) ( *( (fPt) ((* (ptr) pd297 ))))((word) ((( (bPt) &var←c79552)+16)/* var←c71232 */ ), pd297);
};
SOURCE(17210, 19)
return(structure←v25072);
}
static void MapElements←P7680(elementAction←v57808, formal←c79616)
word elementAction←v57808;
word formal←c79616;
{
formal←c79616 = (formal←c79616 - 24);
/* MapElements: */
SOURCE(16782, 109)
SOURCE(16816, 75)
{
register word i←v25116 = 0;
register word noName←c71296;
noName←c71296 = (* (ptr) (* (ptr) (* (( (ptr) formal←c79616)+8) ) ) );
if ((i←v25116 >= noName←c71296)) {
goto lab←L100013;
};
lab←L100016: ;
SOURCE(16850, 41)
{
W2 var←c71328;
word var←c71360;
var←c71328.f0 = 2;
{
word limit298;
var←c71360 = (* (ptr) (* (( (ptr) formal←c79616)+8) ) );
var←c71328.f1 = (* ((( (ptr) var←c71360)+1)+(
limit298 = (* (ptr) var←c71360 ),
BCK(i←v25116, limit298)
)) );
};
(void) ( *( (fPt) ((* (ptr) elementAction←v57808 ))))(var←c71328, elementAction←v57808);
};
i←v25116 = (i←v25116 + 1);
if ((i←v25116 < noName←c71296)) {
goto lab←L100016;
};
lab←L100013: ;
};
}
static void GenerateElements←P7740(elementAction←v57868, formal←c79648)
word elementAction←v57868;
word formal←c79648;
{
formal←c79648 = (formal←c79648 - 16);
/* GenerateElements: */
SOURCE(16983, 131)
SOURCE(17022, 40)
{
W2 var←c71392;
var←c71392.f0 = 1;
var←c71392.f1 = (* (( (ptr) formal←c79648)+9) );
(void) ( *( (fPt) ((* (ptr) elementAction←v57868 ))))(var←c71392, elementAction←v57868);
};
SOURCE(17064, 50)
{
W2 var←c71424;
var←c71424.f0 = 5;
var←c71424.f1 = (* (( (ptr) (* (( (ptr) formal←c79648)+8) ))+1) );
(void) ( *( (fPt) ((* (ptr) elementAction←v57868 ))))(var←c71424, elementAction←v57868);
};
}
static void ApplyBuildMap←P2400(colorOperator←v48532, formal←c01299, colorSpace←v48588, out←v48616)
word colorOperator←v48532;
word formal←c01299;
word colorSpace←v48588;
word out←v48616;
{
W9 var←c79680;
/* declaration of pixelIn←v48560 skipped */
register ptr gf←c79712 = (ptr) &globalframe;
/* declaration of var←c71456 skipped */
/* declaration of data←v25160 skipped */
word class←v25188;
/* declaration of pe←v25216 skipped */
(* (( (ptr) &var←c79680)+4)/* pixelIn←v48560 */ ) = formal←c01299;
/* ApplyBuildMap: */
SOURCE(17233, 456)
{
word tmpAddr299;
tmpAddr299 = (word) (( (ptr) &var←c79680)+5)/* var←c71456 */ ;
(* (ptr) tmpAddr299 ) = ( ((word) (fPt) PixelMapped←P7848) );
(* (( (ptr) tmpAddr299) + 1) ) = 1;
};
SOURCE(17262, 47)
(* (( (ptr) &var←c79680)+7)/* data←v25160 */ ) = XR←Narrow((* (( (ptr) colorOperator←v48532)+3) ), (* (( (ptr) gf←c79712)+50)
));
SOURCE(17311, 52)
class←v25188 = (* (( (ptr) (* (( (ptr) (* (( (ptr) &var←c79680)+7)/* data←v25160 */ ))+1) ))+2) );
SOURCE(17365, 75)
{
word pd300;
pd300 = (* (( (ptr) (* (( (ptr) gf←c79712)+332)/* var←c66976 */ ))+40) );
(* (( (ptr) &var←c79680)+8)/* pe←v25216 */ ) = (word) ( *( (fPt) ((* (ptr) pd300 ))))((* ((( (ptr) (* (( (ptr) &var←c79680)+7)
/* data←v25160 */ ))+1)) ), pd300);
};
SOURCE(17628, 61)
{
word pd301;
pd301 = (* (( (ptr) class←v25188)+4) );
(void) ( *( (fPt) ((* (ptr) pd301 ))))((* (( (ptr) (* (( (ptr) &var←c79680)+7)/* data←v25160 */ ))+1) ), (word) (( (bPt) &var←c79680)+20)
/* var←c71456 */ , colorSpace←v48588, out←v48616, pd301);
};
}
static word PixelMapped←P7848(i←v58156, formal←c79776)
word i←v58156;
word formal←c79776;
{
register ptr gf←c79744 = (ptr) &globalframe;
word var←c58200;
word check←v25288;
word s0←v25316;
word s←v25344;
word t←v25372;
formal←c79776 = (formal←c79776 - 20);
/* PixelMapped: */
SOURCE(17442, 181)
SOURCE(17469, 17)
check←v25288 = BCK(i←v58156, 1);
SOURCE(17488, 21)
{
word pd302;
pd302 = (* (( (ptr) formal←c79776)+4) );
s0←v25316 = (word) ( *( (fPt) ((* (ptr) pd302 ))))(0, pd302);
};
SOURCE(17511, 41)
s←v25344 = (word) SampleEncodingFetch←P360((* (ptr) (* (( (ptr) formal←c79776)+7) ) ), s0←v25316);
SOURCE(17554, 57)
{
word pd303;
pd303 = (* (( (ptr) (* (( (ptr) gf←c79744)+332)/* var←c66976 */ ))+21) );
t←v25372 = (word) ( *( (fPt) ((* (ptr) pd303 ))))((* (( (ptr) formal←c79776)+8) ), i←v58156, s←v25344, pd303);
};
SOURCE(17613, 10)
return(t←v25372);
}
static word DataEqualBuildMap←P2460(selfData←v48676, otherData←v48704)
word selfData←v48676;
word otherData←v48704;
{
register ptr gf←c79808 = (ptr) &globalframe;
word var←c48748;
word a←v25436;
word b←v25464;
/* DataEqualBuildMap: */
SOURCE(17695, 304)
SOURCE(17732, 34)
a←v25436 = XR←Narrow(selfData←v48676, (* (( (ptr) gf←c79808)+50) ));
SOURCE(17768, 35)
b←v25464 = XR←Narrow(otherData←v48704, (* (( (ptr) gf←c79808)+50) ));
SOURCE(17805, 56)
if (((* (( (ptr) a←v25436)+1) ) != (* (( (ptr) b←v25464)+1) ))) {
SOURCE(17847, 14)
return(0);
};
SOURCE(17863, 42)
if (((* (ptr) (* (ptr) a←v25436 ) ) != (* (ptr) (* (ptr) b←v25464 ) ))) {
SOURCE(17891, 14)
return(0);
};
SOURCE(17907, 77)
{
register word i←v25508 = 0;
register word noName←c71488;
word var←c71520;
word var←c01261;
word var←c71552;
noName←c71488 = (* (ptr) (* (ptr) a←v25436 ) );
if ((i←v25508 >= noName←c71488)) {
goto lab←L100017;
};
lab←L100020: ;
SOURCE(17938, 46)
{
word x305;
word limit306;
word x307;
var←c71520 = (* (ptr) a←v25436 );
{
word limit304;
var←c01261 = (* ((( (ptr) var←c71520)+1)+(
limit304 = (* (ptr) var←c71520 ),
BCK(i←v25508, limit304)
)) );
};
var←c71552 = (* (ptr) b←v25464 );
if ((((
x305 = var←c01261, *(float*)&x305
) != (
x307 = (* ((( (ptr) var←c71552)+1)+(
limit306 = (* (ptr) var←c71552 ),
BCK(i←v25508, limit306)
)) ), *(float*)&x307
))
)) {
SOURCE(17962, 22)
return(0);
};
};
i←v25508 = (i←v25508 + 1);
if ((i←v25508 < noName←c71488)) {
goto lab←L100020;
};
lab←L100017: ;
};
SOURCE(17986, 13)
return(1);
}
static word NewColorOperatorBuildMap←P2520(colorOperator←v12264, maxSampleValue←v12292, map←v12320)
word colorOperator←v12264;
word maxSampleValue←v12292;
word map←v12320;
{
register ptr gf←c79840 = (ptr) &globalframe;
word var←c12468;
word data←v25552;
/* NewColorOperatorBuildMap: */
SOURCE(18005, 517)
SOURCE(18155, 41)
data←v25552 = XR←NewObject(8, (* (( (ptr) gf←c79840)+50) ));
SOURCE(18198, 92)
{
word pd308;
pd308 = (* (( (ptr) (* (( (ptr) gf←c79840)+332)/* var←c66976 */ ))+25) );
(* (ptr) data←v25552 ) = (word) ( *( (fPt) ((* (ptr) pd308 ))))((maxSampleValue←v12292 + 1), map←v12320, pd308);
};
SOURCE(18292, 34)
(* (( (ptr) data←v25552)+1) ) = colorOperator←v12264;
SOURCE(18328, 194)
{
word var←c71616;
var←c71616 = (word) ClassBuildMap←P2220((* ((( (ptr) (* (( (ptr) colorOperator←v12264)+2) ))+6)) ));
{
word pd309;
pd309 = (* (( (ptr) (* (( (ptr) gf←c79840)+332)/* var←c66976 */ ))+49) );
return((word) ( *( (fPt) ((* (ptr) pd309 ))))((* (ptr) colorOperator←v12264 ), 1, var←c71616, data←v25552, 0, pd309));
};
};
}
static word CreateColorOperatorRGB←P2580(class←v48808, structure←v48836)
word class←v48808;
word structure←v48836;
{
register ptr gf←c79872 = (ptr) &globalframe;
word var←c48880;
word consistencyTest←v25596;
word sWhite←v25624;
word sBlack←v25652;
word pixelEncodingStructure←v25680;
word map←v25708;
word appearanceHints←v25736;
word colorOperator←v25764;
/* CreateColorOperatorRGB: */
SOURCE(18932, 651)
SOURCE(18984, 66)
{
word pd310;
pd310 = (* (( (ptr) (* (( (ptr) gf←c79872)+332)/* var←c66976 */ ))+6) );
consistencyTest←v25596 = (word) ( *( (fPt) ((* (ptr) pd310 ))))(structure←v48836, 4, pd310);
};
SOURCE(19052, 56)
{
word pd311;
pd311 = (* (( (ptr) (* (( (ptr) gf←c79872)+332)/* var←c66976 */ ))+9) );
sWhite←v25624 = (word) ( *( (fPt) ((* (ptr) pd311 ))))(structure←v48836, 0, pd311);
};
SOURCE(19110, 56)
{
word pd312;
pd312 = (* (( (ptr) (* (( (ptr) gf←c79872)+332)/* var←c66976 */ ))+9) );
sBlack←v25652 = (word) ( *( (fPt) ((* (ptr) pd312 ))))(structure←v48836, 1, pd312);
};
SOURCE(19168, 93)
{
word pd313;
pd313 = (* (( (ptr) (* (( (ptr) gf←c79872)+332)/* var←c66976 */ ))+12) );
pixelEncodingStructure←v25680 = (word) ( *( (fPt) ((* (ptr) pd313 ))))(structure←v48836, 2, 3, pd313);
};
SOURCE(19263, 90)
{
word pd314;
pd314 = (* (( (ptr) (* (( (ptr) gf←c79872)+332)/* var←c66976 */ ))+23) );
map←v25708 = (word) ( *( (fPt) ((* (ptr) pd314 ))))(pixelEncodingStructure←v25680, pd314);
};
SOURCE(19355, 75)
{
word pd315;
pd315 = (* (( (ptr) (* (( (ptr) gf←c79872)+332)/* var←c66976 */ ))+11) );
appearanceHints←v25736 = (word) ( *( (fPt) ((* (ptr) pd315 ))))(structure←v48836, 3, pd315);
};
SOURCE(19432, 126)
colorOperator←v25764 = (word) NewColorOperatorRGB←P2880(sWhite←v25624, sBlack←v25652, map←v25708, appearanceHints←v25736)
;
SOURCE(19560, 23)
return(colorOperator←v25764);
}
static word GetCreateDataRGB←P2640(formal←c01300)
word formal←c01300;
{
W8 var←c79904;
/* declaration of colorOperator←v48940 skipped */
register ptr gf←c79936 = (ptr) &globalframe;
word var←c48984;
/* declaration of var←c71648 skipped */
/* declaration of data←v25808 skipped */
word structure←v25864;
var←c79904.f4/* colorOperator←v48940 */ = formal←c01300;
/* GetCreateDataRGB: */
SOURCE(19587, 588)
{
word tmpAddr316;
tmpAddr316 = (word) (( (ptr) &var←c79904)+5)/* var←c71648 */ ;
(* (ptr) tmpAddr316 ) = ( ((word) (fPt) GenerateElements←P7956) );
(* (( (ptr) tmpAddr316) + 1) ) = 1;
};
SOURCE(19627, 42)
var←c79904.f7/* data←v25808 */ = XR←Narrow((* (( (ptr) var←c79904.f4/* colorOperator←v48940 */ )+3) ), (* (( (ptr) gf←c79936)+49)
));
SOURCE(20065, 89)
{
word pd317;
pd317 = (* (( (ptr) (* (( (ptr) gf←c79936)+332)/* var←c66976 */ ))+17) );
structure←v25864 = (word) ( *( (fPt) ((* (ptr) pd317 ))))((word) ((( (bPt) &var←c79904)+20)/* var←c71648 */ ), pd317);
};
SOURCE(20156, 19)
return(structure←v25864);
}
static void GenerateElements←P7956(elementAction←v58780, formal←c80000)
word elementAction←v58780;
word formal←c80000;
{
register ptr gf←c79968 = (ptr) &globalframe;
formal←c80000 = (formal←c80000 - 20);
/* GenerateElements: */
SOURCE(19671, 391)
SOURCE(19710, 34)
{
W2 var←c71680;
var←c71680.f0 = 2;
var←c71680.f1 = (* (ptr) (* (( (ptr) formal←c80000)+7) ) );
(void) ( *( (fPt) ((* (ptr) elementAction←v58780 ))))(var←c71680, elementAction←v58780);
};
SOURCE(19746, 34)
{
W2 var←c71712;
var←c71712.f0 = 2;
var←c71712.f1 = (* (( (ptr) (* (( (ptr) formal←c80000)+7) ))+1) );
(void) ( *( (fPt) ((* (ptr) elementAction←v58780 ))))(var←c71712, elementAction←v58780);
};
SOURCE(19782, 144)
if (((* (( (ptr) (* (( (ptr) formal←c80000)+7) ))+2) ) == 0)) {
SOURCE(19809, 24)
{
W2 var←c71744;
var←c71744.f0 = 3;
var←c71744.f1 = 0;
(void) ( *( (fPt) ((* (ptr) elementAction←v58780 ))))(var←c71744, elementAction←v58780);
};
}
else {
SOURCE(19842, 84)
{
word var←c71776;
{
word pd318;
pd318 = (* (( (ptr) (* (( (ptr) gf←c79968)+332)/* var←c66976 */ ))+24) );
var←c71776 = (word) ( *( (fPt) ((* (ptr) pd318 ))))((* ((( (ptr) (* (( (ptr) formal←c80000)+7) ))+2)) ), pd318);
};
{
W2 var←c71808;
var←c71808.f0 = 1;
var←c71808.f1 = var←c71776;
(void) ( *( (fPt) ((* (ptr) elementAction←v58780 ))))(var←c71808, elementAction←v58780);
};
};
};
SOURCE(19929, 133)
if (((* (( (ptr) (* (( (ptr) formal←c80000)+4) ))+4) ) == 0)) {
SOURCE(19975, 29)
{
W2 var←c71840;
var←c71840.f0 = 3;
var←c71840.f1 = 0;
(void) ( *( (fPt) ((* (ptr) elementAction←v58780 ))))(var←c71840, elementAction←v58780);
};
}
else {
SOURCE(20004, 58)
{
W2 var←c71872;
var←c71872.f0 = 1;
var←c71872.f1 = (* (( (ptr) (* (( (ptr) formal←c80000)+4) ))+4) );
(void) ( *( (fPt) ((* (ptr) elementAction←v58780 ))))(var←c71872, elementAction←v58780);
};
};
}
static word GetPixelEncodingRGB←P2700(colorOperator←v49044)
word colorOperator←v49044;
{
register ptr gf←c80032 = (ptr) &globalframe;
word var←c49088;
word data←v25908;
/* GetPixelEncodingRGB: */
SOURCE(20179, 108)
SOURCE(20225, 42)
data←v25908 = XR←Narrow((* (( (ptr) colorOperator←v49044)+3) ), (* (( (ptr) gf←c80032)+49) ));
SOURCE(20269, 18)
return((* (( (ptr) data←v25908)+2) ));
}
static void ApplyRGB←P2760(colorOperator←v49148, pixelIn←v49176, colorSpace←v49204, out←v49232)
word colorOperator←v49148;
word pixelIn←v49176;
word colorSpace←v49204;
word out←v49232;
{
register ptr gf←c80064 = (ptr) &globalframe;
word data←v25952;
word sWhite←v25980;
word sBlack←v26008;
word d←v26036;
word pm←v26064;
W3 x←v26092;
/* ApplyRGB: */
SOURCE(20291, 419)
SOURCE(20315, 42)
data←v25952 = XR←Narrow((* (( (ptr) colorOperator←v49148)+3) ), (* (( (ptr) gf←c80064)+49) ));
SOURCE(20359, 26)
sWhite←v25980 = (* (ptr) data←v25952 );
SOURCE(20387, 26)
sBlack←v26008 = (* (( (ptr) data←v25952)+1) );
SOURCE(20415, 33)
{
word x319;
word x320;
word x321;
*(float*)&d←v26036 = (
x319 = (* (ptr) &fc133 ), *(float*)&x319
) / ((
x320 = sWhite←v25980, *(float*)&x320
) - (
x321 = sBlack←v26008, *(float*)&x321
));
};
SOURCE(20450, 28)
pm←v26064 = (* (( (ptr) data←v25952)+2) );
SOURCE(20505, 59)
{
register word i←v26172 = 0;
lab←L100024: ;
SOURCE(20532, 32)
{
word var←c71904;
{
word x322;
word x323;
word x324;
*(float*)&var←c71904 = ((
x322 = (word) ( *( (fPt) ((* (ptr) pixelIn←v49176 ))))(i←v26172, pixelIn←v49176), *(float*)&x322
) - (
x323 = sBlack←v26008, *(float*)&x323
)) * (
x324 = d←v26036, *(float*)&x324
);
};
(* (( (ptr) &x←v26092)+i←v26172) ) = var←c71904;
};
if ((i←v26172 >= 2)) {
goto lab←L100021;
};
i←v26172 = (i←v26172 + 1);
goto lab←L100024;
lab←L100021: ;
};
SOURCE(20575, 135)
{
word var←c71936;
var←c71936 = colorSpace←v49204;
if ((var←c71936 == 1)) {
SOURCE(20606, 45)
{
register word i←v26236 = 0;
lab←L100028: ;
SOURCE(20630, 21)
{
word limit325;
(* ((( (ptr) out←v49232)+2)+(
limit325 = (* (( (ptr) out←v49232)+1) ),
BCK(i←v26236, limit325)
)) ) = (* (( (ptr) &x←v26092)+BCK(i←v26236, 3)) );
};
if ((i←v26236 >= 2)) {
goto lab←L100025;
};
i←v26236 = (i←v26236 + 1);
goto lab←L100028;
lab←L100025: ;
};
}
else {
if ((var←c71936 == 0)) {
SOURCE(20661, 49)
{
word x←v62564;
{
word x326;
word x327;
word x328;
word x329;
word x330;
word x331;
*(float*)&x←v62564 = (((
x326 = (* (ptr) &fc106 ), *(float*)&x326
) * (
x327 = x←v26092.f0, *(float*)&x327
)) + ((
x328 = (* (ptr) &fc107 ), *(float*)&x328
) * (
x329 = x←v26092.f1, *(float*)&x329
))) + ((
x330 = (* (ptr) &fc108 ), *(float*)&x330
) * (
x331 = x←v26092.f2, *(float*)&x331
));
};
SOURCE(2971, 27)
{
word x332;
word x333;
word limit334;
word x335;
word x336;
word limit337;
word limit338;
if (((
x332 = x←v62564, *(float*)&x332
) <= (
x333 = (* (ptr) &fc95 ), *(float*)&x333
))) {
(* ((( (ptr) out←v49232)+2)+(
limit334 = (* (( (ptr) out←v49232)+1) ),
BCK(0, limit334)
)) ) = (* (ptr) &fc95 );
}
else {
if (((
x335 = x←v62564, *(float*)&x335
) > (
x336 = (* (ptr) &fc133 ), *(float*)&x336
))) {
(* ((( (ptr) out←v49232)+2)+(
/*1*/ limit337 = (* (( (ptr) out←v49232)+1) ),
/*1*/ BCK(0, limit337)
/*1*/ )) ) = (* (ptr) &fc133 );
}
else {
(* ((( (ptr) out←v49232)+2)+(
/*1*/ limit338 = (* (( (ptr) out←v49232)+1) ),
/*1*/ BCK(0, limit338)
/*1*/ )) ) = x←v62564;
};
};
};
};
}
else {
SOURCE(20726, 5)
(void) XR←RaiseUnnamedError();
};
};
};
}
static word DataEqualRGB←P2820(selfData←v49292, otherData←v49320)
word selfData←v49292;
word otherData←v49320;
{
register ptr gf←c80096 = (ptr) &globalframe;
word var←c49364;
word a←v26280;
word b←v26308;
/* DataEqualRGB: */
SOURCE(20737, 259)
SOURCE(20769, 29)
a←v26280 = XR←Narrow(selfData←v49292, (* (( (ptr) gf←c80096)+49) ));
SOURCE(20800, 30)
b←v26308 = XR←Narrow(otherData←v49320, (* (( (ptr) gf←c80096)+49) ));
SOURCE(20832, 69)
{
word x339;
word x340;
word x341;
word x342;
if (((
x339 = (* (ptr) a←v26280 ), *(float*)&x339
) != (
x340 = (* (ptr) b←v26308 ), *(float*)&x340
)) || ((
x341 = (* (( (ptr) a←v26280)+1) ), *(float*)&x341
) != (
x342 = (* (( (ptr) b←v26308)+1) ), *(float*)&x342
))) {
SOURCE(20887, 14)
return(0);
};
};
SOURCE(20903, 78)
{
word pd343;
pd343 = (* (( (ptr) (* (( (ptr) gf←c80096)+332)/* var←c66976 */ ))+22) );
if ((0 == (word) ( *( (fPt) ((* (ptr) pd343 ))))((* (( (ptr) a←v26280)+2) ), (* (( (ptr) b←v26308)+2) ), pd343))) {
SOURCE(20967, 14)
return(0);
};
};
SOURCE(20983, 13)
return(1);
}
static word NewColorOperatorRGB←P2880(sWhite←v12640, sBlack←v12668, map←v12696, appearanceHints←v12724)
word sWhite←v12640;
word sBlack←v12668;
word map←v12696;
word appearanceHints←v12724;
{
register ptr gf←c80128 = (ptr) &globalframe;
word var←c12768;
word data←v26352;
/* NewColorOperatorRGB: */
SOURCE(21002, 379)
SOURCE(21156, 76)
data←v26352 = XR←NewObject(12, (* (( (ptr) gf←c80128)+49) ));
(* (ptr) data←v26352 ) = sWhite←v12640;
(* (( (ptr) data←v26352)+1) ) = sBlack←v12668;
(* (( (ptr) data←v26352)+2) ) = map←v12696;
SOURCE(21234, 147)
{
word pd344;
pd344 = (* (( (ptr) (* (( (ptr) gf←c80128)+332)/* var←c66976 */ ))+49) );
return((word) ( *( (fPt) ((* (ptr) pd344 ))))(1, 3, (* (( (ptr) gf←c80128)+12)/* classRGB←v5968 */ ), data←v26352, appearanceHints←v12724, pd344)
);
};
}
static word ColorFromRGB←P2940(rgb←v12828)
W3 rgb←v12828;
{
register ptr gf←c80160 = (ptr) &globalframe;
word var←c12872;
word color←v26396;
/* ColorFromRGB: */
SOURCE(21446, 329)
SOURCE(21513, 53)
color←v26396 = XR←NewObject(28, (* (( (ptr) gf←c80160)+62) ));
(* (( (ptr) color←v26396)+3) ) = 3;
SOURCE(21568, 29)
(* (( (ptr) color←v26396)+2) ) = (* (( (ptr) gf←c80160)+13)/* rgb1000←v6164 */ );
SOURCE(21599, 52)
{
word var←c72128;
{
float tf345;
var←c72128 = (
tf345 = (float)(unsigned)(word) SampleFromReal←P300(rgb←v12828.f0, 1000), *(word*)&tf345
);
};
{
word limit346;
(* ((( (ptr) color←v26396)+4)+(
limit346 = (* (( (ptr) color←v26396)+3) ),
BCK(0, limit346)
)) ) = var←c72128;
};
};
SOURCE(21653, 52)
{
word var←c72160;
{
float tf347;
var←c72160 = (
tf347 = (float)(unsigned)(word) SampleFromReal←P300(rgb←v12828.f1, 1000), *(word*)&tf347
);
};
{
word limit348;
(* ((( (ptr) color←v26396)+4)+(
limit348 = (* (( (ptr) color←v26396)+3) ),
BCK(1, limit348)
)) ) = var←c72160;
};
};
SOURCE(21707, 52)
{
word var←c72192;
{
float tf349;
var←c72192 = (
tf349 = (float)(unsigned)(word) SampleFromReal←P300(rgb←v12828.f2, 1000), *(word*)&tf349
);
};
{
word limit350;
(* ((( (ptr) color←v26396)+4)+(
limit350 = (* (( (ptr) color←v26396)+3) ),
BCK(2, limit350)
)) ) = var←c72192;
};
};
SOURCE(21761, 14)
return(color←v26396);
}
static word InitSolidColors←P3000()
{
W6 var←c80192;
register ptr gf←c80224 = (ptr) &globalframe;
word var←c13200;
/* declaration of var←c72224 skipped */
word a←v26440;
/* InitSolidColors: */
SOURCE(21931, 658)
{
word tmpAddr351;
tmpAddr351 = (word) (( (ptr) &var←c80192)+4)/* var←c72224 */ ;
(* (ptr) tmpAddr351 ) = ( ((word) (fPt) Def←P8112) );
(* (( (ptr) tmpAddr351) + 1) ) = 1;
};
SOURCE(22005, 81)
a←v26440 = XR←NewObject(32, (* (( (ptr) gf←c80224)+48) ));
SOURCE(22212, 44)
(* (ptr) a←v26440 ) = (word) Def←P8112((* (( (ptr) gf←c80224)+79) ), (* (ptr) &fc95 ), (* (ptr) &fc95 ), (* (ptr) &fc95 ), (word) (
( (bPt) &var←c80192)+16)/* var←c72224 */ );
SOURCE(22258, 40)
(* (( (ptr) a←v26440)+1) ) = (word) Def←P8112((* (( (ptr) gf←c80224)+80) ), (* (ptr) &fc133 ), (* (ptr) &fc95 ), (* (ptr) &fc95 ), (word) (
( (bPt) &var←c80192)+16)/* var←c72224 */ );
SOURCE(22300, 44)
(* (( (ptr) a←v26440)+2) ) = (word) Def←P8112((* (( (ptr) gf←c80224)+81) ), (* (ptr) &fc95 ), (* (ptr) &fc133 ), (* (ptr) &fc95 ), (word) (
( (bPt) &var←c80192)+16)/* var←c72224 */ );
SOURCE(22346, 42)
(* (( (ptr) a←v26440)+3) ) = (word) Def←P8112((* (( (ptr) gf←c80224)+82) ), (* (ptr) &fc95 ), (* (ptr) &fc95 ), (* (ptr) &fc133 ), (word) (
( (bPt) &var←c80192)+16)/* var←c72224 */ );
SOURCE(22390, 42)
(* (( (ptr) a←v26440)+4) ) = (word) Def←P8112((* (( (ptr) gf←c80224)+83) ), (* (ptr) &fc95 ), (* (ptr) &fc133 ), (* (ptr) &fc133 ), (word) (
( (bPt) &var←c80192)+16)/* var←c72224 */ );
SOURCE(22434, 48)
(* (( (ptr) a←v26440)+5) ) = (word) Def←P8112((* (( (ptr) gf←c80224)+84) ), (* (ptr) &fc133 ), (* (ptr) &fc95 ), (* (ptr) &fc133 ), (word) (
( (bPt) &var←c80192)+16)/* var←c72224 */ );
SOURCE(22484, 46)
(* (( (ptr) a←v26440)+6) ) = (word) Def←P8112((* (( (ptr) gf←c80224)+85) ), (* (ptr) &fc133 ), (* (ptr) &fc133 ), (* (ptr) &fc95 ), (word) (
( (bPt) &var←c80192)+16)/* var←c72224 */ );
SOURCE(22532, 44)
(* (( (ptr) a←v26440)+7) ) = (word) Def←P8112((* (( (ptr) gf←c80224)+86) ), (* (ptr) &fc133 ), (* (ptr) &fc133 ), (* (ptr) &fc133 ), (word) (
( (bPt) &var←c80192)+16)/* var←c72224 */ );
SOURCE(22578, 11)
return(a←v26440);
}
static word Def←P8112(name←v26588, r←v26616, g←v26644, b←v26672, formal←c80288)
word name←v26588;
word r←v26616;
word g←v26644;
word b←v26672;
word formal←c80288;
{
register ptr gf←c80256 = (ptr) &globalframe;
word var←c26716;
formal←c80288 = (formal←c80288 - 16);
/* Def: */
SOURCE(22088, 121)
SOURCE(22154, 55)
{
W3 var←c72352;
word var←c72320;
var←c72352.f0 = r←v26616;
var←c72352.f1 = g←v26644;
var←c72352.f2 = b←v26672;
var←c72320 = (word) ColorFromRGB←P2940(var←c72352);
return((word) Define←P6840(name←v26588, (* (( (ptr) gf←c80256)+87) ), var←c72320));
};
}
static word ColorFromHSV←P3060(H←v13288, S←v13316, V←v13344)
word H←v13288;
word S←v13316;
word V←v13344;
{
word var←c13388;
/* ColorFromHSV: */
SOURCE(22592, 115)
SOURCE(22664, 43)
{
W3 var←c0586;
W3 var←c72416;
(void) RGBFromHSV←P3240((word) &var←c0586, H←v13288, S←v13316, V←v13344);
var←c72416 = var←c0586;
return((word) ColorFromRGB←P2940(var←c72416));
};
}
static void HSVFromColor←P3120(formal←c0595, c←v13448)
word formal←c0595;
word c←v13448;
{
word H←v13492;
word S←v13520;
word V←v13548;
/* HSVFromColor: */
SOURCE(22711, 110)
SOURCE(22786, 35)
{
W3 var←c72480;
{
W3 var←c72448;
(void) RGBFromColor←P6660((word) &var←c72448, c←v13448);
{
W3 var←c0594;
(void) HSVFromRGB←P3300((word) &var←c0594, var←c72448);
var←c72480 = var←c0594;
};
};
H←v13492 = var←c72480.f0;
S←v13520 = var←c72480.f1;
V←v13548 = var←c72480.f2;
/* removed tail goto */
};
(* (ptr) formal←c0595 ) = H←v13492;
(* (( (ptr) formal←c0595)+1) ) = S←v13520;
(* (( (ptr) formal←c0595)+2) ) = V←v13548;
return;
}
static word ToRange←P3180(v←v13608)
word v←v13608;
{
word var←c13652;
/* ToRange: */
SOURCE(22825, 90)
SOURCE(22868, 47)
{
word x352;
word x353;
word x354;
word x355;
if (((
x352 = v←v13608, *(float*)&x352
) < (
x353 = (* (ptr) &fc95 ), *(float*)&x353
))) {
return((* (ptr) &fc95 ));
}
else {
if (((
x354 = v←v13608, *(float*)&x354
) > (
x355 = (* (ptr) &fc133 ), *(float*)&x355
))) {
return((* (ptr) &fc133 ));
}
else {
return(v←v13608);
};
};
};
}
static void RGBFromHSV←P3240(formal←c0608, hue←v13712, saturation←v13740, value←v13768)
word formal←c0608;
word hue←v13712;
word saturation←v13740;
word value←v13768;
{
register ptr gf←c80320 = (ptr) &globalframe;
W3 var←c13812;
word ihue←v26744;
word fhue←v26772;
word m←v26800;
word n←v26828;
word k←v26856;
/* RGBFromHSV: */
SOURCE(22922, 642)
SOURCE(23020, 61)
{
word x356;
word x357;
word x358;
word x359;
if (((
x356 = value←v13768, *(float*)&x356
) == (
x357 = (* (ptr) &fc95 ), *(float*)&x357
)) || ((
x358 = saturation←v13740, *(float*)&x358
) == (
x359 = (* (ptr) &fc95 ), *(float*)&x359
))) {
SOURCE(23052, 29)
var←c13812.f0 = value←v13768;
var←c13812.f1 = value←v13768;
var←c13812.f2 = value←v13768;
goto lab←L100031;
};
};
SOURCE(23083, 18)
hue←v13712 = (word) ToRange←P3180(hue←v13712);
SOURCE(23103, 32)
saturation←v13740 = (word) ToRange←P3180(saturation←v13740);
SOURCE(23137, 22)
value←v13768 = (word) ToRange←P3180(value←v13768);
SOURCE(23161, 11)
{
word x360;
word x362;
*(float*)&hue←v13712 = (
x360 = hue←v13712, *(float*)&x360
) * (
x362 = (* (ptr) &fc361 ), *(float*)&x362
);
};
SOURCE(23174, 20)
{
word pd363;
pd363 = (* (( (ptr) (* (( (ptr) gf←c80320)+337)/* var←c70656 */ ))+5) );
ihue←v26744 = (word) ( *( (fPt) ((* (ptr) pd363 ))))(hue←v13712, pd363);
};
SOURCE(23210, 15)
{
word x364;
*(float*)&fhue←v26772 = (
x364 = hue←v13712, *(float*)&x364
) - (float)(int)ihue←v26744;
};
SOURCE(23244, 23)
if (( (int)ihue←v26744 == (int)6)) {
SOURCE(23259, 8)
ihue←v26744 = 0;
};
SOURCE(23269, 24)
{
word x365;
word x366;
word x367;
*(float*)&m←v26800 = (
x365 = value←v13768, *(float*)&x365
) * ((
x366 = (* (ptr) &fc133 ), *(float*)&x366
) - (
x367 = saturation←v13740, *(float*)&x367
));
};
SOURCE(23295, 31)
{
word x368;
word x369;
word x370;
word x371;
*(float*)&n←v26828 = (
x368 = value←v13768, *(float*)&x368
) * ((
x369 = (* (ptr) &fc133 ), *(float*)&x369
) - ((
x370 = saturation←v13740, *(float*)&x370
) * (
x371 = fhue←v26772, *(float*)&x371
)));
};
SOURCE(23328, 35)
{
word x372;
word x373;
word x374;
word x375;
word x376;
*(float*)&k←v26856 = (
x372 = value←v13768, *(float*)&x372
) * ((
x373 = (* (ptr) &fc133 ), *(float*)&x373
) - ((
x374 = saturation←v13740, *(float*)&x374
) * ((
x375 = (* (ptr) &fc133 ), *(float*)&x375
) - (
x376 = fhue←v26772, *(float*)&x376
))));
};
SOURCE(23365, 199)
{
word var←c72544;
var←c72544 = ihue←v26744;
switch (var←c72544) {
case 0:
SOURCE(23387, 19)
var←c13812.f0 = value←v13768;
var←c13812.f1 = k←v26856;
var←c13812.f2 = m←v26800;
/* removed tail goto */
break;
case 1:
SOURCE(23413, 19)
var←c13812.f0 = n←v26828;
var←c13812.f1 = value←v13768;
var←c13812.f2 = m←v26800;
/* removed tail goto */
break;
case 2:
SOURCE(23439, 19)
var←c13812.f0 = m←v26800;
var←c13812.f1 = value←v13768;
var←c13812.f2 = k←v26856;
/* removed tail goto */
break;
case 3:
SOURCE(23465, 19)
var←c13812.f0 = m←v26800;
var←c13812.f1 = n←v26828;
var←c13812.f2 = value←v13768;
/* removed tail goto */
break;
case 4:
SOURCE(23491, 19)
var←c13812.f0 = k←v26856;
var←c13812.f1 = m←v26800;
var←c13812.f2 = value←v13768;
/* removed tail goto */
break;
case 5:
SOURCE(23517, 19)
var←c13812.f0 = value←v13768;
var←c13812.f1 = m←v26800;
var←c13812.f2 = n←v26828;
/* removed tail goto */
break;
default:
SOURCE(23549, 15)
var←c13812.f0 = (* (ptr) &fc95 );
var←c13812.f1 = (* (ptr) &fc95 );
var←c13812.f2 = (* (ptr) &fc95 );
/* removed tail goto */
break;
};
};
lab←L100031: ;
(* (W3Pt) formal←c0608 ) = var←c13812;
return;
}
static void HSVFromRGB←P3300(formal←c0625, val←v13872)
word formal←c0625;
W3 val←v13872;
{
word H←v13916;
word S←v13944;
word V←v13972;
word r←v26900;
word g←v26928;
word b←v26956;
word min←v26984;
word max←v27012;
word value←v27040;
word saturation←v27068;
/* HSVFromRGB: */
SOURCE(23570, 613)
SOURCE(23626, 24)
r←v26900 = (word) ToRange←P3180(val←v13872.f0);
SOURCE(23652, 24)
g←v26928 = (word) ToRange←P3180(val←v13872.f1);
SOURCE(23678, 24)
b←v26956 = (word) ToRange←P3180(val←v13872.f2);
SOURCE(23704, 24)
{
word x377;
float tf378;
float tf379;
word x380;
float tf381;
float tf382;
float tf383;
word x384;
float tf385;
tf381 = FMIN((
x377 = r←v26900, *(float*)&x377
), (
x380 = g←v26928, *(float*)&x380
), tf378, tf379);
min←v26984 = (
tf385 = FMIN(tf381, (
x384 = b←v26956, *(float*)&x384
), tf382, tf383), *(word*)&tf385
);
};
SOURCE(23749, 24)
{
word x386;
float tf387;
float tf388;
word x389;
float tf390;
float tf391;
float tf392;
word x393;
float tf394;
tf390 = FMAX((
x386 = r←v26900, *(float*)&x386
), (
x389 = g←v26928, *(float*)&x389
), tf387, tf388);
max←v27012 = (
tf394 = FMAX(tf390, (
x393 = b←v26956, *(float*)&x393
), tf391, tf392), *(word*)&tf394
);
};
SOURCE(23799, 17)
value←v27040 = max←v27012;
SOURCE(23818, 53)
{
word x395;
word x396;
word x397;
word x398;
word x399;
float tf400;
saturation←v27068 = ( ((
x395 = max←v27012, *(float*)&x395
) != (
x396 = (* (ptr) &fc95 ), *(float*)&x396
)) ? (
tf400 = ((
x397 = max←v27012, *(float*)&x397
) - (
x398 = min←v26984, *(float*)&x398
)) / (
x399 = max←v27012, *(float*)&x399
), *(word*)&tf400
) : (* (ptr) &fc95 ) ) ;
};
SOURCE(23873, 310)
{
word x401;
word x402;
if (((
x401 = saturation←v27068, *(float*)&x401
) == (
x402 = (* (ptr) &fc95 ), *(float*)&x402
))) {
SOURCE(23896, 32)
H←v13916 = (* (ptr) &fc95 );
S←v13944 = (* (ptr) &fc95 );
V←v13972 = value←v27040;
/* removed tail goto */
}
else {
SOURCE(23928, 257)
{
word rc←v27112;
word gc←v27140;
word bc←v27168;
word hue←v27196;
SOURCE(23930, 32)
{
word x403;
word x404;
word x405;
word x406;
*(float*)&rc←v27112 = ((
x403 = max←v27012, *(float*)&x403
) - (
x404 = r←v26900, *(float*)&x404
)) / ((
x405 = max←v27012, *(float*)&x405
) - (
x406 = min←v26984, *(float*)&x406
));
};
SOURCE(23964, 32)
{
word x407;
word x408;
word x409;
word x410;
*(float*)&gc←v27140 = ((
x407 = max←v27012, *(float*)&x407
) - (
x408 = g←v26928, *(float*)&x408
)) / ((
x409 = max←v27012, *(float*)&x409
) - (
x410 = min←v26984, *(float*)&x410
));
};
SOURCE(23998, 32)
{
word x411;
word x412;
word x413;
word x414;
*(float*)&bc←v27168 = ((
x411 = max←v27012, *(float*)&x411
) - (
x412 = b←v26956, *(float*)&x412
)) / ((
x413 = max←v27012, *(float*)&x413
) - (
x414 = min←v26984, *(float*)&x414
));
};
SOURCE(24032, 90)
{
word var←c72800;
var←c72800 = max←v27012;
{
word x415;
word x416;
word x417;
word x418;
float tf419;
word x420;
word x421;
word x423;
word x424;
word x425;
float tf426;
word x427;
word x428;
word x430;
word x431;
word x432;
float tf433;
word x434;
word x435;
*(float*)&hue←v27196 = (
x434 = ( ((
x415 = var←c72800, *(float*)&x415
) == (
x416 = r←v26900, *(float*)&x416
)) ? (
tf419 = (
x417 = bc←v27168, *(float*)&x417
) - (
x418 = gc←v27140, *(float*)&x418
), *(word*)&tf419
) : ( ((
x420 = var←c72800, *(float*)&x420
) == (
x421 = g←v26928, *(float*)&x421
)) ? (
tf426 = ((
x423 = (* (ptr) &fc422 ), *(float*)&x423
) + (
x424 = rc←v27112, *(float*)&x424
)) - (
x425 = bc←v27168, *(float*)&x425
), *(word*)&tf426
) : ( ((
x427 = var←c72800, *(float*)&x427
) == (
x428 = b←v26956, *(float*)&x428
)) ? (
tf433 = ((
x430 = (* (ptr) &fc429 ), *(float*)&x430
) + (
x431 = gc←v27140, *(float*)&x431
)) - (
x432 = rc←v27112, *(float*)&x432
), *(word*)&tf433
) : (
XR←RaiseUnnamedError(), 0
) ) ) ) , *(float*)&x434
) / (
x435 = (* (ptr) &fc361 ), *(float*)&x435
);
};
};
SOURCE(24124, 27)
{
word x436;
word x437;
if (((
x436 = hue←v27196, *(float*)&x436
) < (
x437 = (* (ptr) &fc95 ), *(float*)&x437
))) {
SOURCE(24138, 13)
{
word x438;
word x439;
*(float*)&hue←v27196 = (
x438 = hue←v27196, *(float*)&x438
) + (
x439 = (* (ptr) &fc133 ), *(float*)&x439
);
};
};
};
SOURCE(24153, 30)
H←v13916 = hue←v27196;
S←v13944 = saturation←v27068;
V←v13972 = value←v27040;
/* removed tail goto */
};
};
};
(* (ptr) formal←c0625 ) = H←v13916;
(* (( (ptr) formal←c0625)+1) ) = S←v13944;
(* (( (ptr) formal←c0625)+2) ) = V←v13972;
return;
}
static word CreateColorOperatorOldRGB←P3360(class←v49424, structure←v49452)
word class←v49424;
word structure←v49452;
{
register ptr gf←c80352 = (ptr) &globalframe;
word var←c49496;
word consistencyTest←v27240;
word sWhite←v27268;
word colorOperator←v27296;
/* CreateColorOperatorOldRGB: */
SOURCE(24454, 315)
SOURCE(24509, 66)
{
word pd440;
pd440 = (* (( (ptr) (* (( (ptr) gf←c80352)+332)/* var←c66976 */ ))+6) );
consistencyTest←v27240 = (word) ( *( (fPt) ((* (ptr) pd440 ))))(structure←v49452, 1, pd440);
};
SOURCE(24577, 56)
{
word pd441;
pd441 = (* (( (ptr) (* (( (ptr) gf←c80352)+332)/* var←c66976 */ ))+9) );
sWhite←v27268 = (word) ( *( (fPt) ((* (ptr) pd441 ))))(structure←v49452, 0, pd441);
};
SOURCE(24635, 109)
colorOperator←v27296 = (word) NewColorOperatorRGB←P2880(sWhite←v27268, (* (ptr) &fc95 ), 0, 0);
SOURCE(24746, 23)
return(colorOperator←v27296);
}
static word CreateColorOperatorWithRenderingHints←P3420(class←v49556, structure←v49584)
word class←v49556;
word structure←v49584;
{
register ptr gf←c80384 = (ptr) &globalframe;
word var←c49628;
word size←v27340;
word baseColorOperator←v27368;
word appearanceHints←v27396;
word colorOperator←v27424;
/* CreateColorOperatorWithRenderingHints: */
SOURCE(25053, 538)
SOURCE(25120, 55)
{
word pd442;
pd442 = (* (( (ptr) (* (( (ptr) gf←c80384)+332)/* var←c66976 */ ))+6) );
size←v27340 = (word) ( *( (fPt) ((* (ptr) pd442 ))))(structure←v49584, 2, pd442);
};
SOURCE(25177, 85)
{
word pd443;
pd443 = (* (( (ptr) (* (( (ptr) gf←c80384)+332)/* var←c66976 */ ))+14) );
baseColorOperator←v27368 = (word) ( *( (fPt) ((* (ptr) pd443 ))))(structure←v49584, 0, pd443);
};
SOURCE(25264, 75)
{
word pd444;
pd444 = (* (( (ptr) (* (( (ptr) gf←c80384)+332)/* var←c66976 */ ))+11) );
appearanceHints←v27396 = (word) ( *( (fPt) ((* (ptr) pd444 ))))(structure←v49584, 1, pd444);
};
SOURCE(25341, 116)
colorOperator←v27424 = (word) NewRenderingHints←P3480(baseColorOperator←v27368, appearanceHints←v27396);
SOURCE(25459, 108)
{
word var←c72832;
{
word var←c72864;
word var←c72896;
var←c72864 = XR←NewObject(12, (* (( (ptr) gf←c80384)+55) ));
var←c72896 = var←c72864;
(* (ptr) var←c72896 ) = (* (( (ptr) gf←c80384)+89) );
(* (( (ptr) var←c72896)+1) ) = (* (ptr) class←v49556 );
var←c72832 = var←c72864;
};
{
W3 var←c0643;
var←c0643.f0 = 100;
var←c0643.f1 = (* (( (ptr) gf←c80384)+88) );
var←c0643.f2 = var←c72832;
(void) (XR←RaiseSignal((* (( (ptr) (* (( (ptr) gf←c80384)+336)/* var←c70432 */ ))+5) ), 0, (word) &var←c0643));
};
};
SOURCE(25569, 22)
return(colorOperator←v27424);
}
static word NewRenderingHints←P3480(colorOperator←v14032, appearanceHints←v14060)
word colorOperator←v14032;
word appearanceHints←v14060;
{
register ptr gf←c80416 = (ptr) &globalframe;
word var←c14104;
word newRenderingHints←v27468;
/* NewRenderingHints: */
SOURCE(25597, 442)
SOURCE(25708, 108)
{
word pd445;
pd445 = (* (( (ptr) (* (( (ptr) gf←c80416)+332)/* var←c66976 */ ))+16) );
newRenderingHints←v27468 = (word) ( *( (fPt) ((* (ptr) pd445 ))))(appearanceHints←v14060, (* (( (ptr) colorOperator←v14032)+4)
), pd445);
};
SOURCE(25818, 221)
{
word pd446;
pd446 = (* (( (ptr) (* (( (ptr) gf←c80416)+332)/* var←c66976 */ ))+49) );
return((word) ( *( (fPt) ((* (ptr) pd446 ))))((* (ptr) colorOperator←v14032 ), (* (( (ptr) colorOperator←v14032)+1) ), (* (
( (ptr) colorOperator←v14032)+2) ), (* (( (ptr) colorOperator←v14032)+3) ), newRenderingHints←v27468, pd446));
};
}
static word Det3←P3540(m←v14248)
word m←v14248;
{
word var←c14292;
word a00←v27512;
word a01←v27540;
word a02←v27568;
word a10←v27596;
word a11←v27624;
word a12←v27652;
word a20←v27680;
word a21←v27708;
word a22←v27736;
/* Det3: */
SOURCE(26134, 327)
SOURCE(26177, 19)
a00←v27512 = (* (ptr) m←v14248 );
SOURCE(26198, 19)
a01←v27540 = (* (( (ptr) m←v14248)+1) );
SOURCE(26219, 19)
a02←v27568 = (* (( (ptr) m←v14248)+2) );
SOURCE(26240, 19)
a10←v27596 = (* (( (ptr) m←v14248)+3) );
SOURCE(26261, 19)
a11←v27624 = (* (( (ptr) m←v14248)+4) );
SOURCE(26282, 19)
a12←v27652 = (* (( (ptr) m←v14248)+5) );
SOURCE(26303, 19)
a20←v27680 = (* (( (ptr) m←v14248)+6) );
SOURCE(26324, 19)
a21←v27708 = (* (( (ptr) m←v14248)+7) );
SOURCE(26345, 19)
a22←v27736 = (* (( (ptr) m←v14248)+8) );
SOURCE(26366, 95)
{
word x447;
word x448;
word x449;
word x450;
word x451;
word x452;
word x453;
word x454;
word x455;
word x456;
word x457;
word x458;
word x459;
word x460;
word x461;
word x462;
word x463;
word x464;
float tf465;
return((
tf465 = (((((((
x447 = a00←v27512, *(float*)&x447
) * (
x448 = a11←v27624, *(float*)&x448
)) * (
x449 = a22←v27736, *(float*)&x449
)) + (((
x450 = a01←v27540, *(float*)&x450
) * (
x451 = a12←v27652, *(float*)&x451
)) * (
x452 = a20←v27680, *(float*)&x452
))) + (((
x453 = a02←v27568, *(float*)&x453
) * (
x454 = a10←v27596, *(float*)&x454
)) * (
x455 = a21←v27708, *(float*)&x455
))) - (((
x456 = a20←v27680, *(float*)&x456
) * (
x457 = a11←v27624, *(float*)&x457
)) * (
x458 = a02←v27568, *(float*)&x458
))) - (((
x459 = a21←v27708, *(float*)&x459
) * (
x460 = a12←v27652, *(float*)&x460
)) * (
x461 = a00←v27512, *(float*)&x461
))) - (((
x462 = a22←v27736, *(float*)&x462
) * (
x463 = a10←v27596, *(float*)&x463
)) * (
x464 = a01←v27540, *(float*)&x464
)), *(word*)&tf465
));
};
}
static word Cofactor3←P3600(m←v14352, i←v14380, j←v14408)
word m←v14352;
word i←v14380;
word j←v14408;
{
word var←c14472;
word d←v27864;
/* Cofactor3: */
SOURCE(26465, 392)
SOURCE(26766, 47)
{
word idx466;
word idx467;
word x468;
word idx469;
word idx470;
word x471;
word idx472;
word idx473;
word x474;
word idx475;
word idx476;
word x477;
*(float*)&d←v27864 = ((
x468 = (* (( (ptr) (( (W3Pt) m←v14352)+(
idx466 = (word) ( (0 < i←v14380) ? 0 : 1 ) ,
BCK(idx466, 3)
)))+(
idx467 = (word) ( (0 < j←v14408) ? 0 : 1 ) ,
BCK(idx467, 3)
)) ), *(float*)&x468
) * (
x471 = (* (( (ptr) (( (W3Pt) m←v14352)+(
idx469 = (word) ( (1 < i←v14380) ? 1 : 2 ) ,
BCK(idx469, 3)
)))+(
idx470 = (word) ( (1 < j←v14408) ? 1 : 2 ) ,
BCK(idx470, 3)
)) ), *(float*)&x471
)) - ((
x474 = (* (( (ptr) (( (W3Pt) m←v14352)+(
idx472 = (word) ( (1 < i←v14380) ? 1 : 2 ) ,
BCK(idx472, 3)
)))+(
idx473 = (word) ( (0 < j←v14408) ? 0 : 1 ) ,
BCK(idx473, 3)
)) ), *(float*)&x474
) * (
x477 = (* (( (ptr) (( (W3Pt) m←v14352)+(
idx475 = (word) ( (0 < i←v14380) ? 0 : 1 ) ,
BCK(idx475, 3)
)))+(
idx476 = (word) ( (1 < j←v14408) ? 1 : 2 ) ,
BCK(idx476, 3)
)) ), *(float*)&x477
));
};
SOURCE(26815, 42)
{
word x478;
float tf479;
if ((((i←v14380 + j←v14408) & 1) == 0)) {
return(d←v27864);
}
else {
return((
tf479 = - (
x478 = d←v27864, *(float*)&x478
), *(word*)&tf479
));
};
};
}
static word Invert3←P3660(m←v14532)
word m←v14532;
{
register ptr gf←c80448 = (ptr) &globalframe;
word var←c14576;
word a←v28348;
word det←v28376;
/* Invert3: */
SOURCE(26863, 216)
SOURCE(26912, 28)
a←v28348 = XR←NewObject(36, (* (( (ptr) gf←c80448)+46) ));
SOURCE(26942, 19)
det←v28376 = (word) Det3←P3540(m←v14532);
SOURCE(26963, 86)
{
register word i←v28420 = 0;
lab←L100036: ;
SOURCE(26990, 59)
{
register word j←v28484 = 0;
lab←L100040: ;
SOURCE(27017, 32)
{
word var←c72992;
{
word x480;
word x481;
*(float*)&var←c72992 = (
x480 = (word) Cofactor3←P3600(m←v14532, i←v28420, j←v28484), *(float*)&x480
) / (
x481 = det←v28376, *(float*)&x481
);
};
(* (( (ptr) (( (W3Pt) a←v28348)+j←v28484))+i←v28420) ) = var←c72992;
};
if ((j←v28484 >= 2)) {
goto lab←L100037;
};
j←v28484 = (j←v28484 + 1);
goto lab←L100040;
lab←L100037: ;
};
if ((i←v28420 >= 2)) {
goto lab←L100033;
};
i←v28420 = (i←v28420 + 1);
goto lab←L100036;
lab←L100033: ;
};
SOURCE(27069, 10)
return(a←v28348);
}
static word Mul3←P3720(m←v14636, n←v14664)
word m←v14636;
word n←v14664;
{
register ptr gf←c80480 = (ptr) &globalframe;
word var←c14708;
word a←v28548;
/* Mul3: */
SOURCE(27085, 250)
SOURCE(27134, 28)
a←v28548 = XR←NewObject(36, (* (( (ptr) gf←c80480)+46) ));
SOURCE(27164, 141)
{
register word i←v28592 = 0;
lab←L100044: ;
SOURCE(27191, 114)
{
register word j←v28656 = 0;
lab←L100048: ;
{
word s←v28720;
SOURCE(27218, 11)
s←v28720 = (* (ptr) &fc95 );
SOURCE(27231, 52)
{
register word k←v28764 = 0;
lab←L100052: ;
SOURCE(27258, 25)
{
word x482;
word x483;
word x484;
*(float*)&s←v28720 = (
x482 = s←v28720, *(float*)&x482
) + ((
x483 = (* (( (ptr) (( (W3Pt) m←v14636)+i←v28592))+k←v28764) ), *(float*)&x483
) * (
x484 = (* (( (ptr) (( (W3Pt) n←v14664)+k←v28764))+j←v28656) ), *(float*)&x484
));
};
if ((k←v28764 >= 2)) {
goto lab←L100049;
};
k←v28764 = (k←v28764 + 1);
goto lab←L100052;
lab←L100049: ;
};
SOURCE(27294, 11)
(* (( (ptr) (( (W3Pt) a←v28548)+i←v28592))+j←v28656) ) = s←v28720;
};
if ((j←v28656 >= 2)) {
goto lab←L100045;
};
j←v28656 = (j←v28656 + 1);
goto lab←L100048;
lab←L100045: ;
};
if ((i←v28592 >= 2)) {
goto lab←L100041;
};
i←v28592 = (i←v28592 + 1);
goto lab←L100044;
lab←L100041: ;
};
SOURCE(27325, 10)
return(a←v28548);
}
static void Apply3←P3780(formal←c0683, m←v14768, u←v14796)
word formal←c0683;
word m←v14768;
W3 u←v14796;
{
W3 v←v14876;
/* Apply3: */
SOURCE(27341, 165)
SOURCE(27430, 76)
{
register word i←v28828 = 0;
lab←L100057: ;
SOURCE(27457, 49)
{
word x485;
word x486;
word x487;
word x488;
word x489;
word x490;
*(float*)(( (ptr) &v←v14876)+i←v28828) = (((
x485 = (* (( (W3Pt) m←v14768)+i←v28828) ).f0, *(float*)&x485
) * (
x486 = u←v14796.f0, *(float*)&x486
)) + ((
x487 = (* (( (W3Pt) m←v14768)+i←v28828) ).f1, *(float*)&x487
) * (
x488 = u←v14796.f1, *(float*)&x488
))) + ((
x489 = (* (( (W3Pt) m←v14768)+i←v28828) ).f2, *(float*)&x489
) * (
x490 = u←v14796.f2, *(float*)&x490
));
};
if ((i←v28828 >= 2)) {
goto lab←L100054;
};
i←v28828 = (i←v28828 + 1);
goto lab←L100057;
lab←L100054: ;
};
/* removed tail goto */
(* (W3Pt) formal←c0683 ) = v←v14876;
return;
}
static void Apply3Out←P3840(m←v14972, u0←v15000, u1←v15028, u2←v15056, out←v15084)
word m←v14972;
word u0←v15000;
word u1←v15028;
word u2←v15056;
word out←v15084;
{
/* Apply3Out: */
SOURCE(27521, 140)
SOURCE(27589, 72)
{
register word i←v28892 = 0;
lab←L100061: ;
SOURCE(27616, 45)
{
word limit491;
word x492;
word x493;
word x494;
word x495;
word x496;
word x497;
*(float*)((( (ptr) out←v15084)+2)+(
limit491 = (* (( (ptr) out←v15084)+1) ),
BCK(i←v28892, limit491)
)) = (((
x492 = (* (( (W3Pt) m←v14972)+i←v28892) ).f0, *(float*)&x492
) * (
x493 = u0←v15000, *(float*)&x493
)) + ((
x494 = (* (( (W3Pt) m←v14972)+i←v28892) ).f1, *(float*)&x494
) * (
x495 = u1←v15028, *(float*)&x495
))) + ((
x496 = (* (( (W3Pt) m←v14972)+i←v28892) ).f2, *(float*)&x496
) * (
x497 = u2←v15056, *(float*)&x497
));
};
if ((i←v28892 >= 2)) {
goto lab←L100058;
};
i←v28892 = (i←v28892 + 1);
goto lab←L100061;
lab←L100058: ;
};
}
static word ColorFromYES←P3900(yes←v15312)
W3 yes←v15312;
{
register ptr gf←c80512 = (ptr) &globalframe;
word var←c15356;
word color←v28956;
/* ColorFromYES: */
SOURCE(28534, 415)
SOURCE(28601, 53)
color←v28956 = XR←NewObject(28, (* (( (ptr) gf←c80512)+62) ));
(* (( (ptr) color←v28956)+3) ) = 3;
SOURCE(28702, 29)
(* (( (ptr) color←v28956)+2) ) = (* (( (ptr) gf←c80512)+20)/* yes1000←v7032 */ );
SOURCE(28733, 52)
{
word var←c73056;
{
float tf498;
var←c73056 = (
tf498 = (float)(unsigned)(word) SampleFromReal←P300(yes←v15312.f0, 1000), *(word*)&tf498
);
};
{
word limit499;
(* ((( (ptr) color←v28956)+4)+(
limit499 = (* (( (ptr) color←v28956)+3) ),
BCK(0, limit499)
)) ) = var←c73056;
};
};
SOURCE(28787, 72)
{
word var←c73088;
{
word var←c73120;
word x←v62856;
{
word x500;
word x501;
word x502;
*(float*)&x←v62856 = ((
x500 = yes←v15312.f1, *(float*)&x500
) * (
x501 = (* (ptr) &fc116 ), *(float*)&x501
)) + (
x502 = (* (ptr) &fc115 ), *(float*)&x502
);
};
SOURCE(3066, 47)
{
word x503;
word x504;
word x505;
word x506;
word x507;
word x508;
word x509;
word x510;
word x511;
float tf512;
word idx513;
var←c73120 = (
idx513 = (word) XR←REAL32←Round( ( ((
x503 = x←v62856, *(float*)&x503
) <= (
x504 = (* (ptr) &fc95 ), *(float*)&x504
)) ? (* (ptr) &fc95 ) : ( ((
x505 = x←v62856, *(float*)&x505
) > ((
x506 = (* (ptr) &fc422 ), *(float*)&x506
) * (
x507 = (* (ptr) &fc116 ), *(float*)&x507
)) + (
x508 = (* (ptr) &fc115 ), *(float*)&x508
)) ? (
tf512 = ((
x509 = (* (ptr) &fc422 ), *(float*)&x509
) * (
x510 = (* (ptr) &fc116 ), *(float*)&x510
)) + (
x511 = (* (ptr) &fc115 ), *(float*)&x511
), *(word*)&tf512
) : x←v62856 ) ) ),
SGNCK(idx513)
);
};
{
float tf514;
var←c73088 = (
tf514 = (float)(unsigned)var←c73120, *(word*)&tf514
);
};
};
{
word limit515;
(* ((( (ptr) color←v28956)+4)+(
limit515 = (* (( (ptr) color←v28956)+3) ),
BCK(1, limit515)
)) ) = var←c73088;
};
};
SOURCE(28861, 72)
{
word var←c73184;
{
word var←c73216;
word x←v62808;
{
word x516;
word x517;
word x518;
*(float*)&x←v62808 = ((
x516 = yes←v15312.f2, *(float*)&x516
) * (
x517 = (* (ptr) &fc116 ), *(float*)&x517
)) + (
x518 = (* (ptr) &fc115 ), *(float*)&x518
);
};
SOURCE(3066, 47)
{
word x519;
word x520;
word x521;
word x522;
word x523;
word x524;
word x525;
word x526;
word x527;
float tf528;
word idx529;
var←c73216 = (
idx529 = (word) XR←REAL32←Round( ( ((
x519 = x←v62808, *(float*)&x519
) <= (
x520 = (* (ptr) &fc95 ), *(float*)&x520
)) ? (* (ptr) &fc95 ) : ( ((
x521 = x←v62808, *(float*)&x521
) > ((
x522 = (* (ptr) &fc422 ), *(float*)&x522
) * (
x523 = (* (ptr) &fc116 ), *(float*)&x523
)) + (
x524 = (* (ptr) &fc115 ), *(float*)&x524
)) ? (
tf528 = ((
x525 = (* (ptr) &fc422 ), *(float*)&x525
) * (
x526 = (* (ptr) &fc116 ), *(float*)&x526
)) + (
x527 = (* (ptr) &fc115 ), *(float*)&x527
), *(word*)&tf528
) : x←v62808 ) ) ),
SGNCK(idx529)
);
};
{
float tf530;
var←c73184 = (
tf530 = (float)(unsigned)var←c73216, *(word*)&tf530
);
};
};
{
word limit531;
(* ((( (ptr) color←v28956)+4)+(
limit531 = (* (( (ptr) color←v28956)+3) ),
BCK(2, limit531)
)) ) = var←c73184;
};
};
SOURCE(28935, 14)
return(color←v28956);
}
static void YESFromColor←P3960(formal←c0707, c←v15416)
word formal←c0707;
word c←v15416;
{
register ptr gf←c80544 = (ptr) &globalframe;
W3 var←c15460;
W3 rgb←v29028;
W3 yes←v29056;
/* YESFromColor: */
SOURCE(28955, 201)
SOURCE(29020, 26)
(void) RGBFromColor←P6660((word) &rgb←v29028, c←v15416);
SOURCE(29048, 72)
{
W3 var←c0706;
{
W3 var←c73280;
var←c73280.f0 = rgb←v29028.f0;
var←c73280.f1 = rgb←v29028.f1;
var←c73280.f2 = rgb←v29028.f2;
(void) Apply3←P3780((word) &var←c0706, (* (( (ptr) gf←c80544)+17)/* matYESFromRGB←v6892 */ ), var←c73280);
};
yes←v29056 = var←c0706;
};
SOURCE(29122, 34)
var←c15460.f0 = yes←v29056.f0;
var←c15460.f1 = yes←v29056.f1;
var←c15460.f2 = yes←v29056.f2;
/* removed tail goto */
(* (W3Pt) formal←c0707 ) = var←c15460;
return;
}
static word CreateColorOperatorYES←P4020(class←v49688, structure←v49716)
word class←v49688;
word structure←v49716;
{
register ptr gf←c80576 = (ptr) &globalframe;
word var←c49760;
word consistencyTest←v29136;
word sWhite←v29164;
word sBlack←v29192;
word sneutral←v29220;
word srange←v29248;
word pixelEncodingStructure←v29276;
word map←v29304;
word appearanceHints←v29332;
word colorOperator←v29360;
/* CreateColorOperatorYES: */
SOURCE(29160, 805)
SOURCE(29212, 66)
{
word pd532;
pd532 = (* (( (ptr) (* (( (ptr) gf←c80576)+332)/* var←c66976 */ ))+6) );
consistencyTest←v29136 = (word) ( *( (fPt) ((* (ptr) pd532 ))))(structure←v49716, 6, pd532);
};
SOURCE(29280, 56)
{
word pd533;
pd533 = (* (( (ptr) (* (( (ptr) gf←c80576)+332)/* var←c66976 */ ))+9) );
sWhite←v29164 = (word) ( *( (fPt) ((* (ptr) pd533 ))))(structure←v49716, 0, pd533);
};
SOURCE(29338, 56)
{
word pd534;
pd534 = (* (( (ptr) (* (( (ptr) gf←c80576)+332)/* var←c66976 */ ))+9) );
sBlack←v29192 = (word) ( *( (fPt) ((* (ptr) pd534 ))))(structure←v49716, 1, pd534);
};
SOURCE(29396, 58)
{
word pd535;
pd535 = (* (( (ptr) (* (( (ptr) gf←c80576)+332)/* var←c66976 */ ))+9) );
sneutral←v29220 = (word) ( *( (fPt) ((* (ptr) pd535 ))))(structure←v49716, 2, pd535);
};
SOURCE(29456, 56)
{
word pd536;
pd536 = (* (( (ptr) (* (( (ptr) gf←c80576)+332)/* var←c66976 */ ))+9) );
srange←v29248 = (word) ( *( (fPt) ((* (ptr) pd536 ))))(structure←v49716, 3, pd536);
};
SOURCE(29514, 93)
{
word pd537;
pd537 = (* (( (ptr) (* (( (ptr) gf←c80576)+332)/* var←c66976 */ ))+12) );
pixelEncodingStructure←v29276 = (word) ( *( (fPt) ((* (ptr) pd537 ))))(structure←v49716, 4, 3, pd537);
};
SOURCE(29609, 90)
{
word pd538;
pd538 = (* (( (ptr) (* (( (ptr) gf←c80576)+332)/* var←c66976 */ ))+23) );
map←v29304 = (word) ( *( (fPt) ((* (ptr) pd538 ))))(pixelEncodingStructure←v29276, pd538);
};
SOURCE(29701, 75)
{
word pd539;
pd539 = (* (( (ptr) (* (( (ptr) gf←c80576)+332)/* var←c66976 */ ))+11) );
appearanceHints←v29332 = (word) ( *( (fPt) ((* (ptr) pd539 ))))(structure←v49716, 5, pd539);
};
SOURCE(29778, 162)
colorOperator←v29360 = (word) NewColorOperatorYES←P4320(sWhite←v29164, sBlack←v29192, sneutral←v29220, srange←v29248, map←v29304, appearanceHints←v29332)
;
SOURCE(29942, 23)
return(colorOperator←v29360);
}
static word GetPixelEncodingYES←P4080(colorOperator←v49924)
word colorOperator←v49924;
{
register ptr gf←c80608 = (ptr) &globalframe;
word var←c49968;
word data←v29404;
/* GetPixelEncodingYES: */
SOURCE(29969, 108)
SOURCE(30015, 42)
data←v29404 = XR←Narrow((* (( (ptr) colorOperator←v49924)+3) ), (* (( (ptr) gf←c80608)+47) ));
SOURCE(30059, 18)
return((* (( (ptr) data←v29404)+4) ));
}
static void ApplyYES←P4140(colorOperator←v50028, pixelIn←v50056, colorSpace←v50084, out←v50112)
word colorOperator←v50028;
word pixelIn←v50056;
word colorSpace←v50084;
word out←v50112;
{
register ptr gf←c80640 = (ptr) &globalframe;
word data←v29448;
word sWhite←v29476;
word sBlack←v29504;
word pm←v29532;
word Y←v29588;
/* ApplyYES: */
SOURCE(30081, 573)
SOURCE(30105, 42)
data←v29448 = XR←Narrow((* (( (ptr) colorOperator←v50028)+3) ), (* (( (ptr) gf←c80640)+47) ));
SOURCE(30149, 26)
sWhite←v29476 = (* (ptr) data←v29448 );
SOURCE(30177, 26)
sBlack←v29504 = (* (( (ptr) data←v29448)+1) );
SOURCE(30205, 28)
pm←v29532 = (* (( (ptr) data←v29448)+4) );
SOURCE(30301, 45)
{
word x540;
word x541;
word x542;
word x543;
*(float*)&Y←v29588 = ((
x540 = (word) ( *( (fPt) ((* (ptr) pixelIn←v50056 ))))(0, pixelIn←v50056), *(float*)&x540
) - (
x541 = sBlack←v29504, *(float*)&x541
)) / ((
x542 = sWhite←v29476, *(float*)&x542
) - (
x543 = sBlack←v29504, *(float*)&x543
));
};
SOURCE(30348, 306)
if ((colorSpace←v50084 == 0)) {
SOURCE(30374, 11)
{
word limit544;
(* ((( (ptr) out←v50112)+2)+(
limit544 = (* (( (ptr) out←v50112)+1) ),
BCK(0, limit544)
)) ) = Y←v29588;
};
}
else {
SOURCE(30392, 285)
{
word sneutral←v29736;
word srange←v29764;
word E←v29792;
word S←v29820;
SOURCE(30394, 30)
sneutral←v29736 = (* (( (ptr) data←v29448)+2) );
SOURCE(30426, 26)
srange←v29764 = (* (( (ptr) data←v29448)+3) );
SOURCE(30454, 38)
{
word x545;
word x546;
word x547;
*(float*)&E←v29792 = ((
x545 = (word) ( *( (fPt) ((* (ptr) pixelIn←v50056 ))))(1, pixelIn←v50056), *(float*)&x545
) - (
x546 = sneutral←v29736, *(float*)&x546
)) / (
x547 = srange←v29764, *(float*)&x547
);
};
SOURCE(30494, 38)
{
word x548;
word x549;
word x550;
*(float*)&S←v29820 = ((
x548 = (word) ( *( (fPt) ((* (ptr) pixelIn←v50056 ))))(2, pixelIn←v50056), *(float*)&x548
) - (
x549 = sneutral←v29736, *(float*)&x549
)) / (
x550 = srange←v29764, *(float*)&x550
);
};
SOURCE(30534, 120)
{
word var←c73344;
var←c73344 = colorSpace←v50084;
if ((var←c73344 == 3)) {
SOURCE(30567, 10)
{
word limit551;
(* ((( (ptr) out←v50112)+2)+(
limit551 = (* (( (ptr) out←v50112)+1) ),
BCK(0, limit551)
)) ) = Y←v29588;
};
SOURCE(30579, 10)
{
word limit552;
(* ((( (ptr) out←v50112)+2)+(
limit552 = (* (( (ptr) out←v50112)+1) ),
BCK(1, limit552)
)) ) = E←v29792;
};
SOURCE(30591, 10)
{
word limit553;
(* ((( (ptr) out←v50112)+2)+(
limit553 = (* (( (ptr) out←v50112)+1) ),
BCK(2, limit553)
)) ) = S←v29820;
};
}
else {
if ((var←c73344 == 1)) {
SOURCE(30616, 38)
(void) Apply3Out←P3840((* (( (ptr) gf←c80640)+18)/* matRGBFromYES←v6920 */ ), Y←v29588, E←v29792, S←v29820, out←v50112);
}
else {
SOURCE(30670, 5)
(void) XR←RaiseUnnamedError();
};
};
};
};
};
}
static word GetCreateDataYES←P4200(formal←c01301)
word formal←c01301;
{
W8 var←c80672;
/* declaration of colorOperator←v49820 skipped */
register ptr gf←c80704 = (ptr) &globalframe;
word var←c49864;
/* declaration of var←c73376 skipped */
/* declaration of data←v29864 skipped */
word structure←v29920;
var←c80672.f4/* colorOperator←v49820 */ = formal←c01301;
/* GetCreateDataYES: */
SOURCE(30684, 662)
{
word tmpAddr554;
tmpAddr554 = (word) (( (ptr) &var←c80672)+5)/* var←c73376 */ ;
(* (ptr) tmpAddr554 ) = ( ((word) (fPt) GenerateElements←P8892) );
(* (( (ptr) tmpAddr554) + 1) ) = 1;
};
SOURCE(30724, 42)
var←c80672.f7/* data←v29864 */ = XR←Narrow((* (( (ptr) var←c80672.f4/* colorOperator←v49820 */ )+3) ), (* (( (ptr) gf←c80704)+47)
));
SOURCE(31236, 89)
{
word pd555;
pd555 = (* (( (ptr) (* (( (ptr) gf←c80704)+332)/* var←c66976 */ ))+17) );
structure←v29920 = (word) ( *( (fPt) ((* (ptr) pd555 ))))((word) ((( (bPt) &var←c80672)+20)/* var←c73376 */ ), pd555);
};
SOURCE(31327, 19)
return(structure←v29920);
}
static void GenerateElements←P8892(elementAction←v59376, formal←c80768)
word elementAction←v59376;
word formal←c80768;
{
register ptr gf←c80736 = (ptr) &globalframe;
formal←c80768 = (formal←c80768 - 20);
/* GenerateElements: */
SOURCE(30768, 465)
SOURCE(30807, 34)
{
W2 var←c73408;
var←c73408.f0 = 2;
var←c73408.f1 = (* (ptr) (* (( (ptr) formal←c80768)+7) ) );
(void) ( *( (fPt) ((* (ptr) elementAction←v59376 ))))(var←c73408, elementAction←v59376);
};
SOURCE(30843, 34)
{
W2 var←c73440;
var←c73440.f0 = 2;
var←c73440.f1 = (* (( (ptr) (* (( (ptr) formal←c80768)+7) ))+1) );
(void) ( *( (fPt) ((* (ptr) elementAction←v59376 ))))(var←c73440, elementAction←v59376);
};
SOURCE(30879, 36)
{
W2 var←c73472;
var←c73472.f0 = 2;
var←c73472.f1 = (* (( (ptr) (* (( (ptr) formal←c80768)+7) ))+2) );
(void) ( *( (fPt) ((* (ptr) elementAction←v59376 ))))(var←c73472, elementAction←v59376);
};
SOURCE(30917, 34)
{
W2 var←c73504;
var←c73504.f0 = 2;
var←c73504.f1 = (* (( (ptr) (* (( (ptr) formal←c80768)+7) ))+3) );
(void) ( *( (fPt) ((* (ptr) elementAction←v59376 ))))(var←c73504, elementAction←v59376);
};
SOURCE(30953, 144)
if (((* (( (ptr) (* (( (ptr) formal←c80768)+7) ))+4) ) == 0)) {
SOURCE(30980, 24)
{
W2 var←c73536;
var←c73536.f0 = 3;
var←c73536.f1 = 0;
(void) ( *( (fPt) ((* (ptr) elementAction←v59376 ))))(var←c73536, elementAction←v59376);
};
}
else {
SOURCE(31013, 84)
{
word var←c73568;
{
word pd556;
pd556 = (* (( (ptr) (* (( (ptr) gf←c80736)+332)/* var←c66976 */ ))+24) );
var←c73568 = (word) ( *( (fPt) ((* (ptr) pd556 ))))((* ((( (ptr) (* (( (ptr) formal←c80768)+7) ))+4)) ), pd556);
};
{
W2 var←c73600;
var←c73600.f0 = 1;
var←c73600.f1 = var←c73568;
(void) ( *( (fPt) ((* (ptr) elementAction←v59376 ))))(var←c73600, elementAction←v59376);
};
};
};
SOURCE(31100, 133)
if (((* (( (ptr) (* (( (ptr) formal←c80768)+4) ))+4) ) == 0)) {
SOURCE(31146, 29)
{
W2 var←c73632;
var←c73632.f0 = 3;
var←c73632.f1 = 0;
(void) ( *( (fPt) ((* (ptr) elementAction←v59376 ))))(var←c73632, elementAction←v59376);
};
}
else {
SOURCE(31175, 58)
{
W2 var←c73664;
var←c73664.f0 = 1;
var←c73664.f1 = (* (( (ptr) (* (( (ptr) formal←c80768)+4) ))+4) );
(void) ( *( (fPt) ((* (ptr) elementAction←v59376 ))))(var←c73664, elementAction←v59376);
};
};
}
static word DataEqualYES←P4260(selfData←v50172, otherData←v50200)
word selfData←v50172;
word otherData←v50200;
{
register ptr gf←c80800 = (ptr) &globalframe;
word var←c50244;
word a←v29964;
word b←v29992;
/* DataEqualYES: */
SOURCE(31350, 313)
SOURCE(31382, 29)
a←v29964 = XR←Narrow(selfData←v50172, (* (( (ptr) gf←c80800)+47) ));
SOURCE(31413, 30)
b←v29992 = XR←Narrow(otherData←v50200, (* (( (ptr) gf←c80800)+47) ));
SOURCE(31445, 123)
{
word x557;
word x558;
word x559;
word x560;
word x561;
word x562;
word x563;
word x564;
if (((((
x557 = (* (ptr) a←v29964 ), *(float*)&x557
) != (
x558 = (* (ptr) b←v29992 ), *(float*)&x558
)) || ((
x559 = (* (( (ptr) a←v29964)+1) ), *(float*)&x559
) != (
x560 = (* (( (ptr) b←v29992)+1) ), *(float*)&x560
))) || ((
x561 = (* (( (ptr) a←v29964)+2) ), *(float*)&x561
) != (
x562 = (* (( (ptr) b←v29992)+2) ), *(float*)&x562
))) || ((
x563 = (* (( (ptr) a←v29964)+3) ), *(float*)&x563
) != (
x564 = (* (( (ptr) b←v29992)+3) ), *(float*)&x564
))) {
SOURCE(31554, 14)
return(0);
};
};
SOURCE(31570, 78)
{
word pd565;
pd565 = (* (( (ptr) (* (( (ptr) gf←c80800)+332)/* var←c66976 */ ))+22) );
if ((0 == (word) ( *( (fPt) ((* (ptr) pd565 ))))((* (( (ptr) a←v29964)+4) ), (* (( (ptr) b←v29992)+4) ), pd565))) {
SOURCE(31634, 14)
return(0);
};
};
SOURCE(31650, 13)
return(1);
}
static word NewColorOperatorYES←P4320(sWhite←v15520, sBlack←v15548, sneutral←v15576, srange←v15604, map←v15632, appearanceHints←v15660)
word sWhite←v15520;
word sBlack←v15548;
word sneutral←v15576;
word srange←v15604;
word map←v15632;
word appearanceHints←v15660;
{
register ptr gf←c80832 = (ptr) &globalframe;
word var←c15704;
word data←v30036;
/* NewColorOperatorYES: */
SOURCE(31669, 423)
SOURCE(31831, 112)
data←v30036 = XR←NewObject(20, (* (( (ptr) gf←c80832)+47) ));
(* (ptr) data←v30036 ) = sWhite←v15520;
(* (( (ptr) data←v30036)+1) ) = sBlack←v15548;
(* (( (ptr) data←v30036)+2) ) = sneutral←v15576;
(* (( (ptr) data←v30036)+3) ) = srange←v15604;
(* (( (ptr) data←v30036)+4) ) = map←v15632;
SOURCE(31945, 147)
{
word pd566;
pd566 = (* (( (ptr) (* (( (ptr) gf←c80832)+332)/* var←c66976 */ ))+49) );
return((word) ( *( (fPt) ((* (ptr) pd566 ))))(1, 3, (* (( (ptr) gf←c80832)+19)/* classYES←v6948 */ ), data←v30036, appearanceHints←v15660, pd566)
);
};
}
static word ColorFromCIELAB←P4380(cielab←v15776)
W3 cielab←v15776;
{
register ptr gf←c80864 = (ptr) &globalframe;
word var←c15820;
word color←v30080;
/* ColorFromCIELAB: */
SOURCE(32910, 325)
SOURCE(32986, 53)
color←v30080 = XR←NewObject(28, (* (( (ptr) gf←c80864)+62) ));
(* (( (ptr) color←v30080)+3) ) = 3;
SOURCE(33041, 32)
(* (( (ptr) color←v30080)+2) ) = (* (( (ptr) gf←c80864)+24)/* cielab1000←v7452 */ );
SOURCE(33075, 44)
{
word var←c73792;
{
word pd567;
word x568;
word x569;
float tf570;
float tf571;
pd567 = (* (( (ptr) (* (( (ptr) gf←c80864)+337)/* var←c70656 */ ))+6) );
var←c73792 = (
tf571 = (float)(int)(word) ( *( (fPt) ((* (ptr) pd567 ))))((
tf570 = (
x568 = cielab←v15776.f0, *(float*)&x568
) * (
x569 = (* (ptr) &fc128 ), *(float*)&x569
), *(word*)&tf570
), pd567), *(word*)&tf571
);
};
{
word limit572;
(* ((( (ptr) color←v30080)+4)+(
limit572 = (* (( (ptr) color←v30080)+3) ),
BCK(0, limit572)
)) ) = var←c73792;
};
};
SOURCE(33121, 48)
{
word var←c73824;
{
word pd573;
word x574;
word x575;
word x576;
float tf577;
float tf578;
pd573 = (* (( (ptr) (* (( (ptr) gf←c80864)+337)/* var←c70656 */ ))+6) );
var←c73824 = (
tf578 = (float)(int)(word) ( *( (fPt) ((* (ptr) pd573 ))))((
tf577 = ((
x574 = cielab←v15776.f1, *(float*)&x574
) * (
x575 = (* (ptr) &fc128 ), *(float*)&x575
)) + (
x576 = (* (ptr) &fc127 ), *(float*)&x576
), *(word*)&tf577
), pd573), *(word*)&tf578
);
};
{
word limit579;
(* ((( (ptr) color←v30080)+4)+(
limit579 = (* (( (ptr) color←v30080)+3) ),
BCK(1, limit579)
)) ) = var←c73824;
};
};
SOURCE(33171, 48)
{
word var←c73856;
{
word pd580;
word x581;
word x582;
word x583;
float tf584;
float tf585;
pd580 = (* (( (ptr) (* (( (ptr) gf←c80864)+337)/* var←c70656 */ ))+6) );
var←c73856 = (
tf585 = (float)(int)(word) ( *( (fPt) ((* (ptr) pd580 ))))((
tf584 = ((
x581 = cielab←v15776.f2, *(float*)&x581
) * (
x582 = (* (ptr) &fc128 ), *(float*)&x582
)) + (
x583 = (* (ptr) &fc127 ), *(float*)&x583
), *(word*)&tf584
), pd580), *(word*)&tf585
);
};
{
word limit586;
(* ((( (ptr) color←v30080)+4)+(
limit586 = (* (( (ptr) color←v30080)+3) ),
BCK(2, limit586)
)) ) = var←c73856;
};
};
SOURCE(33221, 14)
return(color←v30080);
}
static word F←P4440(t←v15880)
word t←v15880;
{
word var←c15924;
/* F: */
SOURCE(33241, 107)
SOURCE(33278, 70)
{
word x587;
word x589;
word x590;
word x591;
float tf592;
word x594;
word x595;
word x597;
word x599;
float tf600;
if (((
x587 = t←v15880, *(float*)&x587
) > (
x589 = (* (ptr) &fc588 ), *(float*)&x589
))) {
return(XR←RealPwr(t←v15880, (
tf592 = (
x590 = (* (ptr) &fc133 ), *(float*)&x590
) / (
x591 = (* (ptr) &fc251 ), *(float*)&x591
), *(word*)&tf592
)));
}
else {
return((
tf600 = ((
x594 = (* (ptr) &fc593 ), *(float*)&x594
) * (
x595 = t←v15880, *(float*)&x595
)) + ((
x597 = (* (ptr) &fc596 ), *(float*)&x597
) / (
x599 = (* (ptr) &fc598 ), *(float*)&x599
)), *(word*)&tf600
));
};
};
}
static word G←P4500(ft←v15984)
word ft←v15984;
{
word var←c16028;
/* G: */
SOURCE(33354, 109)
SOURCE(33392, 71)
{
word x601;
word x603;
word x604;
word x605;
word x606;
float tf607;
word x608;
word x609;
word x610;
word x611;
float tf612;
if (((
x601 = ft←v15984, *(float*)&x601
) > (
x603 = (* (ptr) &fc602 ), *(float*)&x603
))) {
return((
tf607 = ((
x604 = ft←v15984, *(float*)&x604
) * (
x605 = ft←v15984, *(float*)&x605
)) * (
x606 = ft←v15984, *(float*)&x606
), *(word*)&tf607
));
}
else {
return((
tf612 = ((
x608 = ft←v15984, *(float*)&x608
) - ((
x609 = (* (ptr) &fc596 ), *(float*)&x609
) / (
x610 = (* (ptr) &fc598 ), *(float*)&x610
))) / (
x611 = (* (ptr) &fc593 ), *(float*)&x611
), *(word*)&tf612
));
};
};
}
static void CIELABFromColor←P4560(formal←c0785, c←v16172)
word formal←c0785;
word c←v16172;
{
register ptr gf←c80896 = (ptr) &globalframe;
W3 r←v16216;
word colorSpace←v30124;
word p←v30152;
/* CIELABFromColor: */
SOURCE(33574, 669)
SOURCE(33648, 99)
{
word pd613;
pd613 = (* (( (ptr) (* (( (ptr) gf←c80896)+332)/* var←c66976 */ ))+42) );
colorSpace←v30124 = (word) ( *( (fPt) ((* (ptr) pd613 ))))((* (( (ptr) c←v16172)+2) ), (* (( (ptr) gf←c80896)+25)/* chooseCIELABorRGBorY←v7620 */ ), pd613)
;
};
SOURCE(33749, 72)
{
word pd614;
pd614 = (* (( (ptr) (* (( (ptr) gf←c80896)+332)/* var←c66976 */ ))+41) );
p←v30152 = (word) ( *( (fPt) ((* (ptr) pd614 ))))(c←v16172, colorSpace←v30124, pd614);
};
SOURCE(33823, 354)
{
word var←c73888;
var←c73888 = colorSpace←v30124;
switch (var←c73888) {
case 2:
SOURCE(33857, 22)
{
word limit615;
r←v16216.f0 = (* ((( (ptr) p←v30152)+2)+(
limit615 = (* (( (ptr) p←v30152)+1) ),
BCK(0, limit615)
)) );
};
{
word limit616;
r←v16216.f1 = (* ((( (ptr) p←v30152)+2)+(
limit616 = (* (( (ptr) p←v30152)+1) ),
BCK(1, limit616)
)) );
};
{
word limit617;
r←v16216.f2 = (* ((( (ptr) p←v30152)+2)+(
limit617 = (* (( (ptr) p←v30152)+1) ),
BCK(2, limit617)
)) );
};
break;
case 1:
SOURCE(33889, 204)
{
W3 xyz←v30196;
word fY←v30224;
SOURCE(33891, 69)
{
W3 var←c0782;
{
W3 var←c73920;
{
word limit618;
var←c73920.f0 = (* ((( (ptr) p←v30152)+2)+(
/*1*/ limit618 = (* (( (ptr) p←v30152)+1) ),
/*1*/ BCK(0, limit618)
/*1*/ )) );
};
{
word limit619;
var←c73920.f1 = (* ((( (ptr) p←v30152)+2)+(
/*1*/ limit619 = (* (( (ptr) p←v30152)+1) ),
/*1*/ BCK(1, limit619)
/*1*/ )) );
};
{
word limit620;
var←c73920.f2 = (* ((( (ptr) p←v30152)+2)+(
/*1*/ limit620 = (* (( (ptr) p←v30152)+1) ),
/*1*/ BCK(2, limit620)
/*1*/ )) );
};
(void) Apply3←P3780((word) &var←c0782, (* (( (ptr) gf←c80896)+23)/* matXYZFromRGB←v7424 */ ), var←c73920);
};
xyz←v30196 = var←c0782;
};
SOURCE(33962, 20)
fY←v30224 = (word) F←P4440(xyz←v30196.f1);
SOURCE(33984, 25)
{
word x621;
word x622;
word x623;
*(float*)&r←v16216.f0 = ((
x621 = (* (ptr) &fc598 ), *(float*)&x621
) * (
x622 = fY←v30224, *(float*)&x622
)) - (
x623 = (* (ptr) &fc596 ), *(float*)&x623
);
};
SOURCE(34011, 39)
{
word x624;
word x625;
word x627;
float tf628;
word x629;
word x630;
*(float*)&r←v16216.f1 = (
x624 = (* (ptr) &fc127 ), *(float*)&x624
) * ((
x629 = (word) F←P4440((
tf628 = (
/*1*/ x625 = xyz←v30196.f0, *(float*)&x625
/*1*/ ) / (
/*1*/ x627 = (* (ptr) &fc626 ), *(float*)&x627
/*1*/ ), *(word*)&tf628
)), *(float*)&x629
) - (
x630 = fY←v30224, *(float*)&x630
));
};
SOURCE(34052, 39)
{
word x632;
word x633;
word x634;
word x636;
float tf637;
word x638;
*(float*)&r←v16216.f2 = (
x632 = (* (ptr) &fc631 ), *(float*)&x632
) * ((
x633 = fY←v30224, *(float*)&x633
) - (
x638 = (word) F←P4440((
tf637 = (
/*1*/ x634 = xyz←v30196.f2, *(float*)&x634
/*1*/ ) / (
/*1*/ x636 = (* (ptr) &fc635 ), *(float*)&x636
/*1*/ ), *(word*)&tf637
)), *(float*)&x638
));
};
};
break;
case 0:
SOURCE(34102, 77)
{
word fY←v30304;
SOURCE(34104, 18)
{
word limit639;
fY←v30304 = (word) F←P4440((* (((( (ptr) p←v30152)+2)+(
limit639 = (* (( (ptr) p←v30152)+1) ),
BCK(0, limit639)
))) ));
};
SOURCE(34124, 27)
{
word x640;
word x641;
word x642;
*(float*)&r←v16216.f0 = ((
x640 = (* (ptr) &fc598 ), *(float*)&x640
) * (
x641 = fY←v30304, *(float*)&x641
)) - (
x642 = (* (ptr) &fc596 ), *(float*)&x642
);
};
SOURCE(34153, 11)
r←v16216.f1 = (* (ptr) &fc95 );
SOURCE(34166, 11)
r←v16216.f2 = (* (ptr) &fc95 );
};
break;
default:
SOURCE(34193, 5)
(void) XR←RaiseUnnamedError();
break;
};
};
SOURCE(34200, 43)
{
word pd643;
pd643 = (* (( (ptr) (* (( (ptr) gf←c80896)+332)/* var←c66976 */ ))+36) );
p←v30152 = (word) ( *( (fPt) ((* (ptr) pd643 ))))(p←v30152, pd643);
};
/* removed tail goto */
(* (W3Pt) formal←c0785 ) = r←v16216;
return;
}
static word CreateColorOperatorCIELAB←P4620(class←v50336, structure←v50364)
word class←v50336;
word structure←v50364;
{
register ptr gf←c80928 = (ptr) &globalframe;
word var←c50408;
word consistencyTest←v30348;
word sWhite←v30376;
word sBlack←v30404;
word sneutral←v30432;
word srange←v30460;
word pixelEncodingStructure←v30488;
word map←v30516;
word appearanceHints←v30544;
word colorOperator←v30572;
/* CreateColorOperatorCIELAB: */
SOURCE(34249, 811)
SOURCE(34304, 66)
{
word pd644;
pd644 = (* (( (ptr) (* (( (ptr) gf←c80928)+332)/* var←c66976 */ ))+6) );
consistencyTest←v30348 = (word) ( *( (fPt) ((* (ptr) pd644 ))))(structure←v50364, 6, pd644);
};
SOURCE(34372, 56)
{
word pd645;
pd645 = (* (( (ptr) (* (( (ptr) gf←c80928)+332)/* var←c66976 */ ))+9) );
sWhite←v30376 = (word) ( *( (fPt) ((* (ptr) pd645 ))))(structure←v50364, 0, pd645);
};
SOURCE(34430, 56)
{
word pd646;
pd646 = (* (( (ptr) (* (( (ptr) gf←c80928)+332)/* var←c66976 */ ))+9) );
sBlack←v30404 = (word) ( *( (fPt) ((* (ptr) pd646 ))))(structure←v50364, 1, pd646);
};
SOURCE(34488, 58)
{
word pd647;
pd647 = (* (( (ptr) (* (( (ptr) gf←c80928)+332)/* var←c66976 */ ))+9) );
sneutral←v30432 = (word) ( *( (fPt) ((* (ptr) pd647 ))))(structure←v50364, 2, pd647);
};
SOURCE(34548, 56)
{
word pd648;
pd648 = (* (( (ptr) (* (( (ptr) gf←c80928)+332)/* var←c66976 */ ))+9) );
srange←v30460 = (word) ( *( (fPt) ((* (ptr) pd648 ))))(structure←v50364, 3, pd648);
};
SOURCE(34606, 93)
{
word pd649;
pd649 = (* (( (ptr) (* (( (ptr) gf←c80928)+332)/* var←c66976 */ ))+12) );
pixelEncodingStructure←v30488 = (word) ( *( (fPt) ((* (ptr) pd649 ))))(structure←v50364, 4, 3, pd649);
};
SOURCE(34701, 90)
{
word pd650;
pd650 = (* (( (ptr) (* (( (ptr) gf←c80928)+332)/* var←c66976 */ ))+23) );
map←v30516 = (word) ( *( (fPt) ((* (ptr) pd650 ))))(pixelEncodingStructure←v30488, pd650);
};
SOURCE(34793, 75)
{
word pd651;
pd651 = (* (( (ptr) (* (( (ptr) gf←c80928)+332)/* var←c66976 */ ))+11) );
appearanceHints←v30544 = (word) ( *( (fPt) ((* (ptr) pd651 ))))(structure←v50364, 5, pd651);
};
SOURCE(34870, 165)
colorOperator←v30572 = (word) NewColorOperatorCIELAB←P4800(sWhite←v30376, sBlack←v30404, sneutral←v30432, srange←v30460, map←v30516, appearanceHints←v30544)
;
SOURCE(35037, 23)
return(colorOperator←v30572);
}
static word GetPixelEncodingCIELAB←P4680(colorOperator←v50468)
word colorOperator←v50468;
{
register ptr gf←c80960 = (ptr) &globalframe;
word var←c50512;
word data←v30616;
/* GetPixelEncodingCIELAB: */
SOURCE(35064, 114)
SOURCE(35113, 45)
data←v30616 = XR←Narrow((* (( (ptr) colorOperator←v50468)+3) ), (* (( (ptr) gf←c80960)+47) ));
SOURCE(35160, 18)
return((* (( (ptr) data←v30616)+4) ));
}
static void ApplyCIELAB←P4740(colorOperator←v50572, pixelIn←v50600, colorSpace←v50628, out←v50656)
word colorOperator←v50572;
word pixelIn←v50600;
word colorSpace←v50628;
word out←v50656;
{
register ptr gf←c80992 = (ptr) &globalframe;
word data←v30660;
word sWhite←v30688;
word sBlack←v30716;
word pm←v30744;
word Lstar01←v30800;
/* ApplyCIELAB: */
SOURCE(35182, 891)
SOURCE(35209, 45)
data←v30660 = XR←Narrow((* (( (ptr) colorOperator←v50572)+3) ), (* (( (ptr) gf←c80992)+47) ));
SOURCE(35256, 26)
sWhite←v30688 = (* (ptr) data←v30660 );
SOURCE(35284, 26)
sBlack←v30716 = (* (( (ptr) data←v30660)+1) );
SOURCE(35312, 28)
pm←v30744 = (* (( (ptr) data←v30660)+4) );
SOURCE(35409, 59)
{
word x←v62472;
{
word x652;
word x653;
word x654;
word x655;
*(float*)&x←v62472 = ((
x652 = (word) ( *( (fPt) ((* (ptr) pixelIn←v50600 ))))(0, pixelIn←v50600), *(float*)&x652
) - (
x653 = sBlack←v30716, *(float*)&x653
)) / ((
x654 = sWhite←v30688, *(float*)&x654
) - (
x655 = sBlack←v30716, *(float*)&x655
));
};
SOURCE(2971, 27)
{
word x656;
word x657;
word x658;
word x659;
if (((
x656 = x←v62472, *(float*)&x656
) <= (
x657 = (* (ptr) &fc95 ), *(float*)&x657
))) {
Lstar01←v30800 = (* (ptr) &fc95 );
}
else {
if (((
x658 = x←v62472, *(float*)&x658
) > (
x659 = (* (ptr) &fc133 ), *(float*)&x659
))) {
Lstar01←v30800 = (* (ptr) &fc133 );
}
else {
Lstar01←v30800 = x←v62472;
};
};
};
};
SOURCE(35470, 603)
if ((colorSpace←v50628 == 2)) {
SOURCE(35500, 166)
{
word sneutral←v30948;
word srange←v30976;
SOURCE(35502, 30)
sneutral←v30948 = (* (( (ptr) data←v30660)+2) );
SOURCE(35534, 26)
srange←v30976 = (* (( (ptr) data←v30660)+3) );
SOURCE(35562, 24)
{
word limit660;
word x661;
word x662;
*(float*)((( (ptr) out←v50656)+2)+(
limit660 = (* (( (ptr) out←v50656)+1) ),
BCK(0, limit660)
)) = (
x661 = Lstar01←v30800, *(float*)&x661
) * (
x662 = (* (ptr) &fc136 ), *(float*)&x662
);
};
SOURCE(35588, 37)
{
word var←c74016;
{
word x663;
word x664;
word x665;
*(float*)&var←c74016 = ((
x663 = (word) ( *( (fPt) ((* (ptr) pixelIn←v50600 ))))(1, pixelIn←v50600), *(float*)&x663
) - (
x664 = sneutral←v30948, *(float*)&x664
)) / (
x665 = srange←v30976, *(float*)&x665
);
};
{
word limit666;
(* ((( (ptr) out←v50656)+2)+(
limit666 = (* (( (ptr) out←v50656)+1) ),
BCK(1, limit666)
)) ) = var←c74016;
};
};
SOURCE(35627, 37)
{
word var←c74048;
{
word x667;
word x668;
word x669;
*(float*)&var←c74048 = ((
x667 = (word) ( *( (fPt) ((* (ptr) pixelIn←v50600 ))))(2, pixelIn←v50600), *(float*)&x667
) - (
x668 = sneutral←v30948, *(float*)&x668
)) / (
x669 = srange←v30976, *(float*)&x669
);
};
{
word limit670;
(* ((( (ptr) out←v50656)+2)+(
limit670 = (* (( (ptr) out←v50656)+1) ),
BCK(2, limit670)
)) ) = var←c74048;
};
};
};
}
else {
SOURCE(35673, 426)
{
word fY←v31020;
word Y←v31048;
SOURCE(35675, 34)
{
word x671;
word x672;
word x673;
*(float*)&fY←v31020 = ((
x671 = Lstar01←v30800, *(float*)&x671
) + (
x672 = (* (ptr) &fc246 ), *(float*)&x672
)) / (
x673 = (* (ptr) &fc248 ), *(float*)&x673
);
};
SOURCE(35711, 15)
Y←v31048 = (word) G←P4500(fY←v31020);
SOURCE(35728, 345)
if ((colorSpace←v50628 == 0)) {
SOURCE(35754, 11)
{
word limit674;
(* ((( (ptr) out←v50656)+2)+(
limit674 = (* (( (ptr) out←v50656)+1) ),
BCK(0, limit674)
)) ) = Y←v31048;
};
}
else {
SOURCE(35772, 324)
{
word sneutral←v31092;
word srange←v31120;
word astar←v31148;
word bstar←v31176;
word X←v31204;
word Z←v31232;
SOURCE(35774, 30)
sneutral←v31092 = (* (( (ptr) data←v30660)+2) );
SOURCE(35806, 26)
srange←v31120 = (* (( (ptr) data←v30660)+3) );
SOURCE(35834, 42)
{
word x675;
word x676;
word x677;
*(float*)&astar←v31148 = ((
x675 = (word) ( *( (fPt) ((* (ptr) pixelIn←v50600 ))))(1, pixelIn←v50600), *(float*)&x675
) - (
x676 = sneutral←v31092, *(float*)&x676
)) / (
x677 = srange←v31120, *(float*)&x677
);
};
SOURCE(35878, 42)
{
word x678;
word x679;
word x680;
*(float*)&bstar←v31176 = ((
x678 = (word) ( *( (fPt) ((* (ptr) pixelIn←v50600 ))))(2, pixelIn←v50600), *(float*)&x678
) - (
x679 = sneutral←v31092, *(float*)&x679
)) / (
x680 = srange←v31120, *(float*)&x680
);
};
SOURCE(35922, 38)
{
word x681;
word x682;
word x683;
float tf684;
word x685;
word x686;
*(float*)&X←v31204 = (
x685 = (word) G←P4500((
tf684 = ((
/*1*/ x681 = astar←v31148, *(float*)&x681
/*1*/ ) / (
/*1*/ x682 = (* (ptr) &fc127 ), *(float*)&x682
/*1*/ )) + (
/*1*/ x683 = fY←v31020, *(float*)&x683
/*1*/ ), *(word*)&tf684
)), *(float*)&x685
) * (
x686 = (* (ptr) &fc626 ), *(float*)&x686
);
};
SOURCE(35962, 38)
{
word x687;
word x688;
word x689;
float tf690;
word x691;
word x692;
*(float*)&Z←v31232 = (
x691 = (word) G←P4500((
tf690 = (
/*1*/ x687 = fY←v31020, *(float*)&x687
/*1*/ ) - ((
/*1*/ x688 = bstar←v31176, *(float*)&x688
/*1*/ ) / (
/*1*/ x689 = (* (ptr) &fc631 ), *(float*)&x689
/*1*/ )), *(word*)&tf690
)), *(float*)&x691
) * (
x692 = (* (ptr) &fc635 ), *(float*)&x692
);
};
SOURCE(36002, 71)
{
word var←c74080;
var←c74080 = colorSpace←v50628;
if ((var←c74080 == 1)) {
SOURCE(36035, 38)
(void) Apply3Out←P3840((* (( (ptr) gf←c80992)+22)/* matRGBFromXYZ←v7396 */ ), X←v31204, Y←v31048, Z←v31232, out←v50656);
}
else {
SOURCE(36089, 5)
(void) XR←RaiseUnnamedError();
};
};
};
};
};
};
}
static word NewColorOperatorCIELAB←P4800(sWhite←v16276, sBlack←v16304, sneutral←v16332, srange←v16360, map←v16388, appearanceHints←v16416)
word sWhite←v16276;
word sBlack←v16304;
word sneutral←v16332;
word srange←v16360;
word map←v16388;
word appearanceHints←v16416;
{
register ptr gf←c81024 = (ptr) &globalframe;
word var←c16460;
word data←v31276;
/* NewColorOperatorCIELAB: */
SOURCE(36106, 435)
SOURCE(36271, 118)
data←v31276 = XR←NewObject(20, (* (( (ptr) gf←c81024)+47) ));
(* (ptr) data←v31276 ) = sWhite←v16276;
(* (( (ptr) data←v31276)+1) ) = sBlack←v16304;
(* (( (ptr) data←v31276)+2) ) = sneutral←v16332;
(* (( (ptr) data←v31276)+3) ) = srange←v16360;
(* (( (ptr) data←v31276)+4) ) = map←v16388;
SOURCE(36391, 150)
{
word pd693;
pd693 = (* (( (ptr) (* (( (ptr) gf←c81024)+332)/* var←c66976 */ ))+49) );
return((word) ( *( (fPt) ((* (ptr) pd693 ))))(1, 3, (* (( (ptr) gf←c81024)+21)/* classCIELAB←v7368 */ ), data←v31276, appearanceHints←v16416, pd693)
);
};
}
static word ExtraColorFromHighlight←P4860(highlight←v16800, baseColor←v16828, highlightColor←v16856, appearanceHints←v16884)
W2 highlight←v16800;
word baseColor←v16828;
word highlightColor←v16856;
word appearanceHints←v16884;
{
register ptr gf←c81056 = (ptr) &globalframe;
word var←c16928;
word color←v31320;
/* ExtraColorFromHighlight: */
SOURCE(37664, 745)
SOURCE(37850, 53)
color←v31320 = XR←NewObject(24, (* (( (ptr) gf←c81056)+62) ));
(* (( (ptr) color←v31320)+3) ) = 2;
SOURCE(37905, 61)
if ((baseColor←v16828 == 0)) {
SOURCE(37929, 37)
baseColor←v16828 = (word) Find←P60((* ((( (ptr) gf←c81056)+86)) ));
};
SOURCE(37968, 129)
if ((highlightColor←v16856 == 0)) {
SOURCE(37997, 100)
{
word var←c74208;
word var←c74240;
var←c74208 = (word) Find←P60((* ((( (ptr) gf←c81056)+86)) ));
var←c74240 = (word) Find←P60((* ((( (ptr) gf←c81056)+80)) ));
{
W2 var←c74272;
var←c74272.f0 = (* (ptr) &fc95 );
var←c74272.f1 = (* (ptr) &fc133 );
highlightColor←v16856 = (word) ExtraColorFromHighlight←P4860(var←c74272, var←c74208, var←c74240, 0);
};
};
};
SOURCE(38099, 173)
{
float tf694;
(* (( (ptr) color←v31320)+2) ) = (word) ExtraNewColorOperatorHighlight←P5400((
tf694 = (float)(unsigned)1000, *(word*)&tf694
), (* (ptr) &fc95 ), 0, baseColor←v16828, highlightColor←v16856, appearanceHints←v16884);
};
SOURCE(38274, 58)
{
word var←c74304;
{
float tf695;
var←c74304 = (
tf695 = (float)(unsigned)(word) SampleFromReal←P300(highlight←v16800.f0, 1000), *(word*)&tf695
);
};
{
word limit696;
(* ((( (ptr) color←v31320)+4)+(
limit696 = (* (( (ptr) color←v31320)+3) ),
BCK(0, limit696)
)) ) = var←c74304;
};
};
SOURCE(38334, 58)
{
word var←c74336;
{
float tf697;
var←c74336 = (
tf697 = (float)(unsigned)(word) SampleFromReal←P300(highlight←v16800.f1, 1000), *(word*)&tf697
);
};
{
word limit698;
(* ((( (ptr) color←v31320)+4)+(
limit698 = (* (( (ptr) color←v31320)+3) ),
BCK(1, limit698)
)) ) = var←c74336;
};
};
SOURCE(38394, 15)
return(color←v31320);
}
static word ColorFromHighlight←P4920(highlight←v16988)
W2 highlight←v16988;
{
word var←c17032;
/* ColorFromHighlight: */
SOURCE(38413, 128)
SOURCE(38498, 43)
return((word) ExtraColorFromHighlight←P4860(highlight←v16988, 0, 0, 0));
}
static void HighlightFromColor←P4980(formal←c0854, c←v17092)
word formal←c0854;
word c←v17092;
{
register ptr gf←c81088 = (ptr) &globalframe;
W2 var←c17136;
word class←v31364;
/* HighlightFromColor: */
SOURCE(38547, 483)
SOURCE(38624, 49)
class←v31364 = (* (( (ptr) (* (( (ptr) c←v17092)+2) ))+2) );
SOURCE(38675, 231)
{
register word tail←v31408;
tail←v31408 = (* (( (ptr) class←v31364)+6) );
lab←L100071: ;
if ((tail←v31408 != 0)) {
}
else {
goto lab←L100068;
};
SOURCE(38758, 148)
if (((* (ptr) tail←v31408 ) == 4)) {
SOURCE(38790, 118)
{
word p←v31536;
SOURCE(38792, 91)
{
word pd699;
pd699 = (* (( (ptr) (* (( (ptr) gf←c81088)+332)/* var←c66976 */ ))+41) );
p←v31536 = (word) ( *( (fPt) ((* (ptr) pd699 ))))(c←v17092, 4, pd699);
};
SOURCE(38885, 21)
{
W2 var←c74432;
{
W2 var←c74400;
{
word limit700;
var←c74400.f0 = (* ((( (ptr) p←v31536)+2)+(
limit700 = (* (( (ptr) p←v31536)+1) ),
BCK(0, limit700)
)) );
};
{
word limit701;
var←c74400.f1 = (* ((( (ptr) p←v31536)+2)+(
limit701 = (* (( (ptr) p←v31536)+1) ),
BCK(1, limit701)
)) );
};
var←c74432 = var←c74400;
};
var←c17136 = var←c74432;
goto lab←L100067;
};
};
};
tail←v31408 = (* (( (ptr) tail←v31408)+1) );
goto lab←L100071;
lab←L100068: ;
};
SOURCE(38920, 110)
{
W3 var←c0853;
var←c0853.f0 = 102;
var←c0853.f1 = (* (( (ptr) gf←c81088)+91) );
var←c0853.f2 = 0;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c81088)+336)/* var←c70432 */ ))+4) ), (word) &var←c0853);
};
lab←L100067: ;
(* (W2Pt) formal←c0854 ) = var←c17136;
return;
}
static word NarrowToConstantColor←P5040(color←v17196)
word color←v17196;
{
register ptr gf←c81120 = (ptr) &globalframe;
word var←c17240;
/* NarrowToConstantColor: */
SOURCE(39036, 243)
SOURCE(39107, 172)
{
word var←c74496;
var←c74496 = color←v17196;
if ((var←c74496 == 0)) {
goto lab←L100072;
};
if (((* (ptr) var←c74496 ) == 0)) {
{
word color←v31580;
color←v31580 = var←c74496;
SOURCE(39154, 14)
return(color←v31580);
};
}
else {
lab←L100072: ;
SOURCE(39181, 98)
{
word var←c74528;
{
word var←c74560;
word var←c74592;
var←c74560 = XR←NewObject(12, (* (( (ptr) gf←c81120)+55) ));
var←c74592 = var←c74560;
(* (ptr) var←c74592 ) = (* (( (ptr) gf←c81120)+93) );
(* (( (ptr) var←c74592)+1) ) = color←v17196;
var←c74528 = var←c74560;
};
{
W3 var←c0863;
var←c0863.f0 = 62;
var←c0863.f1 = (* (( (ptr) gf←c81120)+92) );
var←c0863.f2 = var←c74528;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c81120)+336)/* var←c70432 */ ))+4) ), (word) &var←c0863);
};
};
};
};
}
static word CreateColorOperatorHighlight←P5100(class←v50748, structure←v50776)
word class←v50748;
word structure←v50776;
{
register ptr gf←c81152 = (ptr) &globalframe;
word var←c50820;
word consistencyTest←v31624;
word sWhite←v31652;
word sBlack←v31680;
word pixelEncodingStructure←v31708;
word baseColor←v31736;
word highlightColor←v31764;
word appearanceHints←v31792;
word map←v31820;
word colorOperator←v31848;
/* CreateColorOperatorHighlight: */
SOURCE(39285, 905)
SOURCE(39343, 66)
{
word pd702;
pd702 = (* (( (ptr) (* (( (ptr) gf←c81152)+332)/* var←c66976 */ ))+6) );
consistencyTest←v31624 = (word) ( *( (fPt) ((* (ptr) pd702 ))))(structure←v50776, 6, pd702);
};
SOURCE(39411, 56)
{
word pd703;
pd703 = (* (( (ptr) (* (( (ptr) gf←c81152)+332)/* var←c66976 */ ))+9) );
sWhite←v31652 = (word) ( *( (fPt) ((* (ptr) pd703 ))))(structure←v50776, 0, pd703);
};
SOURCE(39469, 56)
{
word pd704;
pd704 = (* (( (ptr) (* (( (ptr) gf←c81152)+332)/* var←c66976 */ ))+9) );
sBlack←v31680 = (word) ( *( (fPt) ((* (ptr) pd704 ))))(structure←v50776, 1, pd704);
};
SOURCE(39527, 93)
{
word pd705;
pd705 = (* (( (ptr) (* (( (ptr) gf←c81152)+332)/* var←c66976 */ ))+12) );
pixelEncodingStructure←v31708 = (word) ( *( (fPt) ((* (ptr) pd705 ))))(structure←v50776, 2, 3, pd705);
};
SOURCE(39622, 92)
{
word var←c74656;
{
word pd706;
pd706 = (* (( (ptr) (* (( (ptr) gf←c81152)+332)/* var←c66976 */ ))+13) );
var←c74656 = (word) ( *( (fPt) ((* (ptr) pd706 ))))(structure←v50776, 3, pd706);
};
baseColor←v31736 = (word) NarrowToConstantColor←P5040(var←c74656);
};
SOURCE(39716, 97)
{
word var←c74688;
{
word pd707;
pd707 = (* (( (ptr) (* (( (ptr) gf←c81152)+332)/* var←c66976 */ ))+13) );
var←c74688 = (word) ( *( (fPt) ((* (ptr) pd707 ))))(structure←v50776, 4, pd707);
};
highlightColor←v31764 = (word) NarrowToConstantColor←P5040(var←c74688);
};
SOURCE(39815, 75)
{
word pd708;
pd708 = (* (( (ptr) (* (( (ptr) gf←c81152)+332)/* var←c66976 */ ))+11) );
appearanceHints←v31792 = (word) ( *( (fPt) ((* (ptr) pd708 ))))(structure←v50776, 5, pd708);
};
SOURCE(39892, 90)
{
word pd709;
pd709 = (* (( (ptr) (* (( (ptr) gf←c81152)+332)/* var←c66976 */ ))+23) );
map←v31820 = (word) ( *( (fPt) ((* (ptr) pd709 ))))(pixelEncodingStructure←v31708, pd709);
};
SOURCE(39984, 181)
colorOperator←v31848 = (word) ExtraNewColorOperatorHighlight←P5400(sWhite←v31652, sBlack←v31680, 0, baseColor←v31736, highlightColor←v31764, appearanceHints←v31792)
;
SOURCE(40167, 23)
return(colorOperator←v31848);
}
static word GetPixelEncodingHighlight←P5160(colorOperator←v50984)
word colorOperator←v50984;
{
register ptr gf←c81184 = (ptr) &globalframe;
word var←c51028;
word data←v31892;
/* GetPixelEncodingHighlight: */
SOURCE(40194, 120)
SOURCE(40246, 48)
data←v31892 = XR←Narrow((* (( (ptr) colorOperator←v50984)+3) ), (* (( (ptr) gf←c81184)+45) ));
SOURCE(40296, 18)
return((* (( (ptr) data←v31892)+2) ));
}
static void ApplyHighlight←P5220(colorOperator←v51088, pixelIn←v51116, colorSpace←v51144, out←v51172)
word colorOperator←v51088;
word pixelIn←v51116;
word colorSpace←v51144;
word out←v51172;
{
register ptr gf←c81216 = (ptr) &globalframe;
word data←v31936;
word sWhite←v31964;
word sBlack←v31992;
word pm←v32020;
word b←v32076;
word h←v32104;
/* ApplyHighlight: */
SOURCE(40318, 664)
SOURCE(40348, 48)
data←v31936 = XR←Narrow((* (( (ptr) colorOperator←v51088)+3) ), (* (( (ptr) gf←c81216)+45) ));
SOURCE(40398, 26)
sWhite←v31964 = (* (ptr) data←v31936 );
SOURCE(40426, 26)
sBlack←v31992 = (* (( (ptr) data←v31936)+1) );
SOURCE(40454, 28)
pm←v32020 = (* (( (ptr) data←v31936)+2) );
SOURCE(40550, 45)
{
word x710;
word x711;
word x712;
word x713;
*(float*)&b←v32076 = ((
x710 = (word) ( *( (fPt) ((* (ptr) pixelIn←v51116 ))))(0, pixelIn←v51116), *(float*)&x710
) - (
x711 = sBlack←v31992, *(float*)&x711
)) / ((
x712 = sWhite←v31964, *(float*)&x712
) - (
x713 = sBlack←v31992, *(float*)&x713
));
};
SOURCE(40597, 45)
{
word x714;
word x715;
word x716;
word x717;
*(float*)&h←v32104 = ((
x714 = (word) ( *( (fPt) ((* (ptr) pixelIn←v51116 ))))(1, pixelIn←v51116), *(float*)&x714
) - (
x715 = sBlack←v31992, *(float*)&x715
)) / ((
x716 = sWhite←v31964, *(float*)&x716
) - (
x717 = sBlack←v31992, *(float*)&x717
));
};
SOURCE(40644, 338)
{
word var←c74720;
var←c74720 = colorSpace←v51144;
switch (var←c74720) {
case 4:
SOURCE(40742, 10)
{
word limit718;
(* ((( (ptr) out←v51172)+2)+(
limit718 = (* (( (ptr) out←v51172)+1) ),
BCK(0, limit718)
)) ) = b←v32076;
};
SOURCE(40754, 10)
{
word limit719;
(* ((( (ptr) out←v51172)+2)+(
limit719 = (* (( (ptr) out←v51172)+1) ),
BCK(1, limit719)
)) ) = h←v32104;
};
break;
case 1:
SOURCE(40779, 47)
{
word limit720;
word x721;
word x722;
word x723;
word x724;
*(float*)((( (ptr) out←v51172)+2)+(
limit720 = (* (( (ptr) out←v51172)+1) ),
BCK(0, limit720)
)) = ((
x721 = b←v32076, *(float*)&x721
) * (
x722 = (* (( (ptr) data←v31936)+4) ), *(float*)&x722
)) + ((
x723 = h←v32104, *(float*)&x723
) * (
x724 = (* (( (ptr) data←v31936)+9) ), *(float*)&x724
));
};
SOURCE(40828, 47)
{
word limit725;
word x726;
word x727;
word x728;
word x729;
*(float*)((( (ptr) out←v51172)+2)+(
limit725 = (* (( (ptr) out←v51172)+1) ),
BCK(1, limit725)
)) = ((
x726 = b←v32076, *(float*)&x726
) * (
x727 = (* (( (ptr) data←v31936)+5) ), *(float*)&x727
)) + ((
x728 = h←v32104, *(float*)&x728
) * (
x729 = (* (( (ptr) data←v31936)+10) ), *(float*)&x729
));
};
SOURCE(40877, 47)
{
word limit730;
word x731;
word x732;
word x733;
word x734;
*(float*)((( (ptr) out←v51172)+2)+(
limit730 = (* (( (ptr) out←v51172)+1) ),
BCK(2, limit730)
)) = ((
x731 = b←v32076, *(float*)&x731
) * (
x732 = (* (( (ptr) data←v31936)+6) ), *(float*)&x732
)) + ((
x733 = h←v32104, *(float*)&x733
) * (
x734 = (* (( (ptr) data←v31936)+11) ), *(float*)&x734
));
};
break;
case 0:
SOURCE(40937, 45)
{
word limit735;
word x736;
word x737;
word x738;
word x739;
*(float*)((( (ptr) out←v51172)+2)+(
limit735 = (* (( (ptr) out←v51172)+1) ),
BCK(0, limit735)
)) = ((
x736 = b←v32076, *(float*)&x736
) * (
x737 = (* (( (ptr) data←v31936)+7) ), *(float*)&x737
)) + ((
x738 = h←v32104, *(float*)&x738
) * (
x739 = (* (( (ptr) data←v31936)+12) ), *(float*)&x739
));
};
break;
default:
SOURCE(40998, 5)
(void) XR←RaiseUnnamedError();
break;
};
};
}
static word GetCreateDataHighlight←P5280(formal←c01302)
word formal←c01302;
{
W8 var←c81248;
/* declaration of colorOperator←v50880 skipped */
register ptr gf←c81280 = (ptr) &globalframe;
word var←c50924;
/* declaration of var←c74752 skipped */
/* declaration of data←v32252 skipped */
word structure←v32308;
var←c81248.f4/* colorOperator←v50880 */ = formal←c01302;
/* GetCreateDataHighlight: */
SOURCE(41009, 685)
{
word tmpAddr740;
tmpAddr740 = (word) (( (ptr) &var←c81248)+5)/* var←c74752 */ ;
(* (ptr) tmpAddr740 ) = ( ((word) (fPt) GenerateElements←P9456) );
(* (( (ptr) tmpAddr740) + 1) ) = 1;
};
SOURCE(41055, 48)
var←c81248.f7/* data←v32252 */ = XR←Narrow((* (( (ptr) var←c81248.f4/* colorOperator←v50880 */ )+3) ), (* (( (ptr) gf←c81280)+45)
));
SOURCE(41584, 89)
{
word pd741;
pd741 = (* (( (ptr) (* (( (ptr) gf←c81280)+332)/* var←c66976 */ ))+17) );
structure←v32308 = (word) ( *( (fPt) ((* (ptr) pd741 ))))((word) ((( (bPt) &var←c81248)+20)/* var←c74752 */ ), pd741);
};
SOURCE(41675, 19)
return(structure←v32308);
}
static void GenerateElements←P9456(elementAction←v60184, formal←c81344)
word elementAction←v60184;
word formal←c81344;
{
register ptr gf←c81312 = (ptr) &globalframe;
formal←c81344 = (formal←c81344 - 20);
/* GenerateElements: */
SOURCE(41105, 476)
SOURCE(41144, 34)
{
W2 var←c74784;
var←c74784.f0 = 2;
var←c74784.f1 = (* (ptr) (* (( (ptr) formal←c81344)+7) ) );
(void) ( *( (fPt) ((* (ptr) elementAction←v60184 ))))(var←c74784, elementAction←v60184);
};
SOURCE(41180, 34)
{
W2 var←c74816;
var←c74816.f0 = 2;
var←c74816.f1 = (* (( (ptr) (* (( (ptr) formal←c81344)+7) ))+1) );
(void) ( *( (fPt) ((* (ptr) elementAction←v60184 ))))(var←c74816, elementAction←v60184);
};
SOURCE(41216, 144)
if (((* (( (ptr) (* (( (ptr) formal←c81344)+7) ))+2) ) == 0)) {
SOURCE(41243, 24)
{
W2 var←c74848;
var←c74848.f0 = 3;
var←c74848.f1 = 0;
(void) ( *( (fPt) ((* (ptr) elementAction←v60184 ))))(var←c74848, elementAction←v60184);
};
}
else {
SOURCE(41276, 84)
{
word var←c74880;
{
word pd742;
pd742 = (* (( (ptr) (* (( (ptr) gf←c81312)+332)/* var←c66976 */ ))+24) );
var←c74880 = (word) ( *( (fPt) ((* (ptr) pd742 ))))((* ((( (ptr) (* (( (ptr) formal←c81344)+7) ))+2)) ), pd742);
};
{
W2 var←c74912;
var←c74912.f0 = 1;
var←c74912.f1 = var←c74880;
(void) ( *( (fPt) ((* (ptr) elementAction←v60184 ))))(var←c74912, elementAction←v60184);
};
};
};
SOURCE(41363, 38)
{
W2 var←c74944;
var←c74944.f0 = 4;
var←c74944.f1 = (* (( (ptr) (* (( (ptr) formal←c81344)+7) ))+3) );
(void) ( *( (fPt) ((* (ptr) elementAction←v60184 ))))(var←c74944, elementAction←v60184);
};
SOURCE(41403, 43)
{
W2 var←c74976;
var←c74976.f0 = 4;
var←c74976.f1 = (* (( (ptr) (* (( (ptr) formal←c81344)+7) ))+8) );
(void) ( *( (fPt) ((* (ptr) elementAction←v60184 ))))(var←c74976, elementAction←v60184);
};
SOURCE(41448, 133)
if (((* (( (ptr) (* (( (ptr) formal←c81344)+4) ))+4) ) == 0)) {
SOURCE(41494, 29)
{
W2 var←c75008;
var←c75008.f0 = 3;
var←c75008.f1 = 0;
(void) ( *( (fPt) ((* (ptr) elementAction←v60184 ))))(var←c75008, elementAction←v60184);
};
}
else {
SOURCE(41523, 58)
{
W2 var←c75040;
var←c75040.f0 = 1;
var←c75040.f1 = (* (( (ptr) (* (( (ptr) formal←c81344)+4) ))+4) );
(void) ( *( (fPt) ((* (ptr) elementAction←v60184 ))))(var←c75040, elementAction←v60184);
};
};
}
static word DataEqualHighlight←P5340(selfData←v51232, otherData←v51260)
word selfData←v51232;
word otherData←v51260;
{
register ptr gf←c81376 = (ptr) &globalframe;
word var←c51304;
word a←v32352;
word b←v32380;
/* DataEqualHighlight: */
SOURCE(41698, 473)
SOURCE(41736, 35)
a←v32352 = XR←Narrow(selfData←v51232, (* (( (ptr) gf←c81376)+45) ));
SOURCE(41773, 36)
b←v32380 = XR←Narrow(otherData←v51260, (* (( (ptr) gf←c81376)+45) ));
SOURCE(41811, 69)
{
word x743;
word x744;
word x745;
word x746;
if (((
x743 = (* (ptr) a←v32352 ), *(float*)&x743
) != (
x744 = (* (ptr) b←v32380 ), *(float*)&x744
)) || ((
x745 = (* (( (ptr) a←v32352)+1) ), *(float*)&x745
) != (
x746 = (* (( (ptr) b←v32380)+1) ), *(float*)&x746
))) {
SOURCE(41866, 14)
return(0);
};
};
SOURCE(41882, 78)
{
word pd747;
pd747 = (* (( (ptr) (* (( (ptr) gf←c81376)+332)/* var←c66976 */ ))+22) );
if ((0 == (word) ( *( (fPt) ((* (ptr) pd747 ))))((* (( (ptr) a←v32352)+2) ), (* (( (ptr) b←v32380)+2) ), pd747))) {
SOURCE(41946, 14)
return(0);
};
};
SOURCE(41962, 91)
{
word pd748;
pd748 = (* (( (ptr) (* (( (ptr) gf←c81376)+332)/* var←c66976 */ ))+29) );
if ((0 == (word) ( *( (fPt) ((* (ptr) pd748 ))))((* (( (ptr) a←v32352)+3) ), (* (( (ptr) b←v32380)+3) ), pd748))) {
SOURCE(42039, 14)
return(0);
};
};
SOURCE(42055, 101)
{
word pd749;
pd749 = (* (( (ptr) (* (( (ptr) gf←c81376)+332)/* var←c66976 */ ))+29) );
if ((0 == (word) ( *( (fPt) ((* (ptr) pd749 ))))((* (( (ptr) a←v32352)+8) ), (* (( (ptr) b←v32380)+8) ), pd749))) {
SOURCE(42142, 14)
return(0);
};
};
SOURCE(42158, 13)
return(1);
}
static word ExtraNewColorOperatorHighlight←P5400(sWhite←v17300, sBlack←v17328, map←v17356, baseColor←v17384, highlightColor←v17412, appearanceHints←v17440)
word sWhite←v17300;
word sBlack←v17328;
word map←v17356;
word baseColor←v17384;
word highlightColor←v17412;
word appearanceHints←v17440;
{
register ptr gf←c81408 = (ptr) &globalframe;
word var←c17484;
word base←v32424;
word highlight←v32452;
W3 baseRGB←v32480;
word highlightY←v32508;
word data←v32536;
word whiteBase←v32564;
word normalHighlight←v32592;
word class←v32620;
/* ExtraNewColorOperatorHighlight: */
SOURCE(42177, 1088)
SOURCE(42367, 58)
base←v32424 = (word) NarrowToOpConstantColor←P6420(baseColor←v17384);
SOURCE(42427, 68)
highlight←v32452 = (word) NarrowToOpConstantColor←P6420(highlightColor←v17412);
SOURCE(42497, 33)
(void) RGBFromColor←P6660((word) &baseRGB←v32480, base←v32424);
SOURCE(42532, 67)
{
word pd750;
pd750 = (* (( (ptr) (* (( (ptr) gf←c81408)+332)/* var←c66976 */ ))+31) );
highlightY←v32508 = (word) ( *( (fPt) ((* (ptr) pd750 ))))(highlight←v32452, pd750);
};
SOURCE(42601, 272)
{
word var←c75072;
W3 var←c75104;
word var←c75136;
{
word pd751;
pd751 = (* (( (ptr) (* (( (ptr) gf←c81408)+332)/* var←c66976 */ ))+31) );
var←c75072 = (word) ( *( (fPt) ((* (ptr) pd751 ))))(base←v32424, pd751);
};
(void) RGBFromColor←P6660((word) &var←c75104, highlight←v32452);
var←c75136 = XR←NewObject(52, (* (( (ptr) gf←c81408)+45) ));
(* (ptr) var←c75136 ) = sWhite←v17300;
(* (( (ptr) var←c75136)+1) ) = sBlack←v17328;
(* (( (ptr) var←c75136)+2) ) = map←v17356;
(* (( (ptr) var←c75136)+3) ) = baseColor←v17384;
(* (W3Pt) (( (ptr) var←c75136)+4) ) = baseRGB←v32480;
(* (( (ptr) var←c75136)+7) ) = var←c75072;
(* (( (ptr) var←c75136)+8) ) = highlightColor←v17412;
(* (W3Pt) (( (ptr) var←c75136)+9) ) = var←c75104;
(* (( (ptr) var←c75136)+12) ) = highlightY←v32508;
data←v32536 = var←c75136;
};
SOURCE(42875, 61)
{
word x752;
float tf753;
float tf754;
word x755;
float tf756;
float tf757;
float tf758;
word x759;
word x761;
tf756 = FMIN((
x752 = baseRGB←v32480.f0, *(float*)&x752
), (
x755 = baseRGB←v32480.f1, *(float*)&x755
), tf753, tf754);
whiteBase←v32564 = (unsigned) (FMIN(tf756, (
x759 = baseRGB←v32480.f2, *(float*)&x759
), tf757, tf758) >= (
x761 = (* (ptr) &fc760 ), *(float*)&x761
));
};
SOURCE(42938, 52)
{
word x762;
word x764;
word x765;
word x767;
normalHighlight←v32592 = (unsigned) ( ((
x762 = highlightY←v32508, *(float*)&x762
) >= (
x764 = (* (ptr) &fc763 ), *(float*)&x764
)) ? ((
x765 = highlightY←v32508, *(float*)&x765
) <= (
x767 = (* (ptr) &fc766 ), *(float*)&x767
)) : 0 ) ;
};
SOURCE(42992, 127)
class←v32620 = ( ((0 != whiteBase←v32564) && (0 != normalHighlight←v32592)) ? (* (( (ptr) gf←c81408)+26)/* classHighlightPassThru←v7872 */ ) : (* (
( (ptr) gf←c81408)+27)/* classHighlight←v7900 */ ) ) ;
SOURCE(43121, 144)
{
word pd768;
pd768 = (* (( (ptr) (* (( (ptr) gf←c81408)+332)/* var←c66976 */ ))+49) );
return((word) ( *( (fPt) ((* (ptr) pd768 ))))(1, 2, class←v32620, data←v32536, appearanceHints←v17440, pd768));
};
}
static word NewColorOperatorHighlight←P5460(sWhite←v17544, sBlack←v17572, map←v17600, baseColor←v17628, highlightColor←v17656, appearanceHints←v17684)
word sWhite←v17544;
word sBlack←v17572;
word map←v17600;
word baseColor←v17628;
word highlightColor←v17656;
word appearanceHints←v17684;
{
word var←c17728;
/* NewColorOperatorHighlight: */
SOURCE(43269, 364)
SOURCE(43463, 170)
return((word) ExtraNewColorOperatorHighlight←P5400(sWhite←v17544, sBlack←v17572, map←v17600, baseColor←v17628, highlightColor←v17656, appearanceHints←v17684)
);
}
static word SignalTypeFromSignalTypeName←P5520(name←v18076)
word name←v18076;
{
register ptr gf←c81440 = (ptr) &globalframe;
word var←c18120;
/* SignalTypeFromSignalTypeName: */
SOURCE(43981, 389)
SOURCE(44061, 309)
{
register word signal←v32664;
signal←v32664 = 0;
lab←L100076: ;
{
word rope←v32708;
SOURCE(44121, 49)
rope←v32708 = (word) SignalTypeNameFromSignalType←P5580(signal←v32664);
SOURCE(44172, 143)
if ((rope←v32708 == 0)) {
SOURCE(44191, 124)
{
word var←c75232;
{
word var←c75264;
word var←c75296;
var←c75264 = XR←NewObject(12, (* (( (ptr) gf←c81440)+55) ));
var←c75296 = var←c75264;
(* (ptr) var←c75296 ) = (* (( (ptr) gf←c81440)+96) );
(* (( (ptr) var←c75296)+1) ) = name←v18076;
var←c75232 = var←c75264;
};
{
W3 var←c0947;
var←c0947.f0 = 64;
var←c0947.f1 = (* (( (ptr) gf←c81440)+95) );
var←c0947.f2 = var←c75232;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c81440)+336)/* var←c70432 */ ))+4) ), (word) &var←c0947);
};
};
};
SOURCE(44317, 53)
{
word pd769;
pd769 = (* (( (ptr) (* (( (ptr) gf←c81440)+338)/* var←c75360 */ ))+8) );
if ((0 != (word) ( *( (fPt) ((* (ptr) pd769 ))))(name←v18076, rope←v32708, 0, pd769))) {
SOURCE(44355, 15)
return(signal←v32664);
};
};
};
signal←v32664 = (signal←v32664 + 1);
goto lab←L100076;
};
}
static word SignalTypeNameFromSignalType←P5580(signal←v18180)
word signal←v18180;
{
register ptr gf←c81472 = (ptr) &globalframe;
word var←c18224;
/* SignalTypeNameFromSignalType: */
SOURCE(44385, 183)
SOURCE(44467, 101)
if ((signal←v18180 < 4)) {
SOURCE(44515, 40)
{
word var←c01262;
W4 var←c75392;
var←c75392.f0 = (* (( (ptr) gf←c81472)+76) );
var←c75392.f1 = (* (( (ptr) gf←c81472)+74) );
var←c75392.f2 = (* (( (ptr) gf←c81472)+73) );
var←c75392.f3 = (* (( (ptr) gf←c81472)+72) );
var←c01262 = (* (( (ptr) (&var←c75392
))+BCK(signal←v18180, 4)) );
return(var←c01262);
};
}
else {
SOURCE(44555, 13)
return(0);
};
}
static word GetProcessArgIndices←P5640(structure←v18284)
word structure←v18284;
{
register ptr gf←c81504 = (ptr) &globalframe;
word var←c18328;
/* GetProcessArgIndices: */
SOURCE(45321, 412)
SOURCE(45420, 313)
{
W2 var←c75424;
{
word pd770;
pd770 = (* (( (ptr) (* (( (ptr) gf←c81504)+332)/* var←c66976 */ ))+7) );
(void) ( *( (fPt) ((* (ptr) pd770 ))))((word) &var←c75424, structure←v18284, 2, pd770);
};
if ((var←c75424.f0 == 0)) {
{
W2 e←v32752;
e←v32752 = var←c75424;
SOURCE(45496, 117)
{
W3 var←c0957;
var←c0957.f0 = 72;
var←c0957.f1 = (* (( (ptr) gf←c81504)+97) );
var←c0957.f2 = 0;
(void) (XR←RaiseSignal((* (( (ptr) (* (( (ptr) gf←c81504)+336)/* var←c70432 */ ))+5) ), 0, (word) &var←c0957));
};
SOURCE(45615, 75)
return(82485);
};
}
else {
SOURCE(45706, 27)
return(74565);
};
};
}
static word CreateColorOperatorProcess←P5700(class←v51460, structure←v51488)
word class←v51460;
word structure←v51488;
{
W7 var←c81536;
register ptr gf←c81568 = (ptr) &globalframe;
word var←c51532;
/* declaration of var←c75488 skipped */
word consistencyTest←v32796;
word ai←v32824;
word su←v32852;
word sz←v32880;
word signalTypeAtom←v32908;
/* declaration of signalNamesStructure←v32936 skipped */
word signals←v32964;
word pixelEncodingStructure←v33020;
word map←v33048;
word deviceProps←v33076;
word colorOperator←v33104;
/* CreateColorOperatorProcess: */
SOURCE(45814, 1236)
{
word tmpAddr771;
tmpAddr771 = (word) (( (ptr) &var←c81536)+4)/* var←c75488 */ ;
(* (ptr) tmpAddr771 ) = ( ((word) (fPt) SignalNames←P9660) );
(* (( (ptr) tmpAddr771) + 1) ) = 1;
};
SOURCE(45870, 66)
{
word pd772;
pd772 = (* (( (ptr) (* (( (ptr) gf←c81568)+332)/* var←c66976 */ ))+6) );
consistencyTest←v32796 = (word) ( *( (fPt) ((* (ptr) pd772 ))))(structure←v51488, 6, pd772);
};
SOURCE(45938, 72)
ai←v32824 = (word) GetProcessArgIndices←P5640(structure←v51488);
SOURCE(46012, 58)
{
word pd773;
pd773 = (* (( (ptr) (* (( (ptr) gf←c81568)+332)/* var←c66976 */ ))+9) );
su←v32852 = (word) ( *( (fPt) ((* (ptr) pd773 ))))(structure←v51488, (unsigned) (((unsigned)ai←v32824 << 8) >> 28), pd773)
;
};
SOURCE(46072, 58)
{
word pd774;
pd774 = (* (( (ptr) (* (( (ptr) gf←c81568)+332)/* var←c66976 */ ))+9) );
sz←v32880 = (word) ( *( (fPt) ((* (ptr) pd774 ))))(structure←v51488, (unsigned) (((unsigned)ai←v32824 << 12) >> 28), pd774)
;
};
SOURCE(46132, 78)
{
word pd775;
pd775 = (* (( (ptr) (* (( (ptr) gf←c81568)+332)/* var←c66976 */ ))+8) );
signalTypeAtom←v32908 = (word) ( *( (fPt) ((* (ptr) pd775 ))))(structure←v51488, (unsigned) (((unsigned)ai←v32824 << 20) >> 28), pd775)
;
};
SOURCE(46212, 95)
{
word pd776;
pd776 = (* (( (ptr) (* (( (ptr) gf←c81568)+332)/* var←c66976 */ ))+11) );
var←c81536.f6/* signalNamesStructure←v32936 */ = (word) ( *( (fPt) ((* (ptr) pd776 ))))(structure←v51488, (unsigned) (((unsigned)ai←v32824 << 24) >> 28), pd776)
;
};
SOURCE(46309, 61)
{
word pd777;
word idx778;
pd777 = (* (( (ptr) (* (( (ptr) gf←c81568)+332)/* var←c66976 */ ))+5) );
signals←v32964 = (
idx778 = (word) ( *( (fPt) ((* (ptr) pd777 ))))(var←c81536.f6/* signalNamesStructure←v32936 */ , pd777),
SGNCK(idx778)
);
};
SOURCE(46511, 109)
{
word pd779;
pd779 = (* (( (ptr) (* (( (ptr) gf←c81568)+332)/* var←c66976 */ ))+12) );
pixelEncodingStructure←v33020 = (word) ( *( (fPt) ((* (ptr) pd779 ))))(structure←v51488, (unsigned) (((unsigned)ai←v32824 << 16) >> 28), signals←v32964, pd779)
;
};
SOURCE(46622, 90)
{
word pd780;
pd780 = (* (( (ptr) (* (( (ptr) gf←c81568)+332)/* var←c66976 */ ))+23) );
map←v33048 = (word) ( *( (fPt) ((* (ptr) pd780 ))))(pixelEncodingStructure←v33020, pd780);
};
SOURCE(46714, 86)
{
word pd781;
pd781 = (* (( (ptr) (* (( (ptr) gf←c81568)+332)/* var←c66976 */ ))+11) );
deviceProps←v33076 = (word) ( *( (fPt) ((* (ptr) pd781 ))))(structure←v51488, (unsigned) (ai←v32824 & 017), pd781);
};
SOURCE(46802, 223)
{
word var←c75520;
{
word var←c75552;
{
word pd782;
pd782 = (* (( (ptr) (* (( (ptr) gf←c81568)+339)/* var←c75584 */ ))+9) );
var←c75552 = (word) ( *( (fPt) ((* (ptr) pd782 ))))(signalTypeAtom←v32908, pd782);
};
var←c75520 = (word) SignalTypeFromSignalTypeName←P5520(var←c75552);
};
colorOperator←v33104 = (word) NewColorOperatorProcess←P6240(su←v32852, sz←v32880, signals←v32964, map←v33048, var←c75520, (word) (
( (bPt) &var←c81536)+16)/* var←c75488 */
, deviceProps←v33076);
};
SOURCE(47027, 23)
return(colorOperator←v33104);
}
static word SignalNames←P9660(signal←v33216, formal←c81632)
word signal←v33216;
word formal←c81632;
{
register ptr gf←c81600 = (ptr) &globalframe;
word var←c33260;
formal←c81632 = (formal←c81632 - 16);
/* SignalNames: */
SOURCE(46372, 136)
SOURCE(46432, 76)
{
word var←c75648;
{
word pd783;
pd783 = (* (( (ptr) (* (( (ptr) gf←c81600)+332)/* var←c66976 */ ))+13) );
var←c75648 = (word) ( *( (fPt) ((* (ptr) pd783 ))))((* (( (ptr) formal←c81632)+6) ), signal←v33216, pd783);
};
if ((var←c75648 == 0)) {
goto lab←L100077;
};
if (((* (ptr) var←c75648 ) == 0)) {
goto lab←L100077;
};
(void) XR←RaiseError(XR←NarrowFault, 0);
lab←L100077: ;
return(var←c75648);
};
}
static word GetCreateDataProcess←P5760(formal←c01303)
word formal←c01303;
{
W10 var←c81664;
/* declaration of colorOperator←v51592 skipped */
register ptr gf←c81696 = (ptr) &globalframe;
word var←c51636;
/* declaration of var←c75680 skipped */
/* declaration of var←c75712 skipped */
/* declaration of data←v33288 skipped */
word structure←v33372;
(* (( (ptr) &var←c81664)+4)/* colorOperator←v51592 */ ) = formal←c01303;
/* GetCreateDataProcess: */
SOURCE(47054, 958)
{
word tmpAddr784;
tmpAddr784 = (word) (( (ptr) &var←c81664)+5)/* var←c75680 */ ;
(* (ptr) tmpAddr784 ) = ( ((word) (fPt) GenerateElements←P9780) );
(* (( (ptr) tmpAddr784) + 1) ) = 1;
};
{
word tmpAddr785;
tmpAddr785 = (word) (( (ptr) &var←c81664)+7)/* var←c75712 */ ;
(* (ptr) tmpAddr785 ) = ( ((word) (fPt) GenerateSignalNameElements←P9720) );
(* (( (ptr) tmpAddr785) + 1) ) = 1;
};
SOURCE(47098, 46)
(* (( (ptr) &var←c81664)+9)/* data←v33288 */ ) = XR←Narrow((* (( (ptr) (* (( (ptr) &var←c81664)+4)/* colorOperator←v51592 */ ))+3)
), (* (( (ptr) gf←c81696)+44) ));
SOURCE(47902, 89)
{
word pd786;
pd786 = (* (( (ptr) (* (( (ptr) gf←c81696)+332)/* var←c66976 */ ))+17) );
structure←v33372 = (word) ( *( (fPt) ((* (ptr) pd786 ))))((word) ((( (bPt) &var←c81664)+20)/* var←c75680 */ ), pd786);
};
SOURCE(47993, 19)
return(structure←v33372);
}
static void GenerateSignalNameElements←P9720(elementAction←v61072, formal←c81728)
word elementAction←v61072;
word formal←c81728;
{
formal←c81728 = (formal←c81728 - 28);
/* GenerateSignalNameElements: */
SOURCE(47146, 165)
SOURCE(47195, 116)
{
register word tail←v33416;
tail←v33416 = (* (( (ptr) (* (( (ptr) formal←c81728)+9) ))+3) );
lab←L100081: ;
if ((tail←v33416 != 0)) {
}
else {
goto lab←L100078;
};
SOURCE(47277, 34)
{
W2 var←c75744;
var←c75744.f0 = 4;
var←c75744.f1 = (* (ptr) tail←v33416 );
(void) ( *( (fPt) ((* (ptr) elementAction←v61072 ))))(var←c75744, elementAction←v61072);
};
tail←v33416 = (* (( (ptr) tail←v33416)+1) );
goto lab←L100081;
lab←L100078: ;
};
}
static void GenerateElements←P9780(elementAction←v61132, formal←c81792)
word elementAction←v61132;
word formal←c81792;
{
register ptr gf←c81760 = (ptr) &globalframe;
formal←c81792 = (formal←c81792 - 20);
/* GenerateElements: */
SOURCE(47325, 574)
SOURCE(47364, 30)
{
W2 var←c75776;
var←c75776.f0 = 2;
var←c75776.f1 = (* (ptr) (* (( (ptr) formal←c81792)+9) ) );
(void) ( *( (fPt) ((* (ptr) elementAction←v61132 ))))(var←c75776, elementAction←v61132);
};
SOURCE(47396, 30)
{
W2 var←c75808;
var←c75808.f0 = 2;
var←c75808.f1 = (* (( (ptr) (* (( (ptr) formal←c81792)+9) ))+1) );
(void) ( *( (fPt) ((* (ptr) elementAction←v61132 ))))(var←c75808, elementAction←v61132);
};
SOURCE(47428, 142)
if (((* (( (ptr) (* (( (ptr) formal←c81792)+9) ))+4) ) == 0)) {
SOURCE(47454, 24)
{
W2 var←c75840;
var←c75840.f0 = 3;
var←c75840.f1 = 0;
(void) ( *( (fPt) ((* (ptr) elementAction←v61132 ))))(var←c75840, elementAction←v61132);
};
}
else {
SOURCE(47487, 83)
{
word var←c75872;
{
word pd787;
pd787 = (* (( (ptr) (* (( (ptr) gf←c81760)+332)/* var←c66976 */ ))+24) );
var←c75872 = (word) ( *( (fPt) ((* (ptr) pd787 ))))((* ((( (ptr) (* (( (ptr) formal←c81792)+9) ))+4)) ), pd787);
};
{
W2 var←c75904;
var←c75904.f0 = 1;
var←c75904.f1 = var←c75872;
(void) ( *( (fPt) ((* (ptr) elementAction←v61132 ))))(var←c75904, elementAction←v61132);
};
};
};
SOURCE(47573, 84)
{
word var←c75936;
{
word var←c75968;
var←c75968 = (word) SignalTypeNameFromSignalType←P5580((* ((( (ptr) (* (( (ptr) formal←c81792)+9) ))+2)) ));
{
word pd788;
pd788 = (* (( (ptr) (* (( (ptr) gf←c81760)+339)/* var←c75584 */ ))+5) );
var←c75936 = (word) ( *( (fPt) ((* (ptr) pd788 ))))(var←c75968, 0, 2147483647, pd788);
};
};
{
W2 var←c76000;
var←c76000.f0 = 0;
var←c76000.f1 = var←c75936;
(void) ( *( (fPt) ((* (ptr) elementAction←v61132 ))))(var←c76000, elementAction←v61132);
};
};
SOURCE(47659, 105)
{
word var←c76032;
{
word pd789;
pd789 = (* (( (ptr) (* (( (ptr) gf←c81760)+332)/* var←c66976 */ ))+17) );
var←c76032 = (word) ( *( (fPt) ((* (ptr) pd789 ))))((word) ((( (bPt) formal←c81792)+28)), pd789);
};
{
W2 var←c76064;
var←c76064.f0 = 1;
var←c76064.f1 = var←c76032;
(void) ( *( (fPt) ((* (ptr) elementAction←v61132 ))))(var←c76064, elementAction←v61132);
};
};
SOURCE(47766, 133)
if (((* (( (ptr) (* (( (ptr) formal←c81792)+4) ))+4) ) == 0)) {
SOURCE(47812, 29)
{
W2 var←c76096;
var←c76096.f0 = 3;
var←c76096.f1 = 0;
(void) ( *( (fPt) ((* (ptr) elementAction←v61132 ))))(var←c76096, elementAction←v61132);
};
}
else {
SOURCE(47841, 58)
{
W2 var←c76128;
var←c76128.f0 = 1;
var←c76128.f1 = (* (( (ptr) (* (( (ptr) formal←c81792)+4) ))+4) );
(void) ( *( (fPt) ((* (ptr) elementAction←v61132 ))))(var←c76128, elementAction←v61132);
};
};
}
static word GetPixelEncodingProcess←P5820(colorOperator←v51696)
word colorOperator←v51696;
{
register ptr gf←c81824 = (ptr) &globalframe;
word var←c51740;
word data←v33544;
/* GetPixelEncodingProcess: */
SOURCE(48016, 115)
SOURCE(48066, 46)
data←v33544 = XR←Narrow((* (( (ptr) colorOperator←v51696)+3) ), (* (( (ptr) gf←c81824)+44) ));
SOURCE(48114, 17)
return((* (( (ptr) data←v33544)+4) ));
}
static void ApplyProcess←P5880(colorOperator←v51800, pixelIn←v51828, colorSpace←v51856, out←v51884)
word colorOperator←v51800;
word pixelIn←v51828;
word colorSpace←v51856;
word out←v51884;
{
register ptr gf←c81856 = (ptr) &globalframe;
word data←v33588;
/* ApplyProcess: */
SOURCE(48135, 244)
SOURCE(48163, 46)
data←v33588 = XR←Narrow((* (( (ptr) colorOperator←v51800)+3) ), (* (( (ptr) gf←c81856)+44) ));
SOURCE(48211, 168)
{
word pd790;
pd790 = (* (( (ptr) (* (( (ptr) gf←c81856)+340)/* var←c76160 */ ))+4) );
(void) ( *( (fPt) ((* (ptr) pd790 ))))((* (ptr) data←v33588 ), (* (( (ptr) data←v33588)+1) ), (* (( (ptr) data←v33588)+2)
), (* (( (ptr) data←v33588)+3) ), pixelIn←v51828, colorSpace←v51856
, out←v51884, pd790);
};
}
static void DoApplyProcess←P5940(su←v18608, sz←v18636, signalType←v18664, signalNames←v18692, pixelIn←v18720, colorSpace←v18748, out←v18776)
word su←v18608;
word sz←v18636;
word signalType←v18664;
word signalNames←v18692;
word pixelIn←v18720;
word colorSpace←v18748;
word out←v18776;
{
register ptr gf←c81888 = (ptr) &globalframe;
W3 rgb←v33632;
word i←v33660 = 0;
/* DoApplyProcess: */
SOURCE(48385, 1209)
SOURCE(48579, 20)
rgb←v33632.f0 = (* (ptr) &fc133 );
rgb←v33632.f1 = (* (ptr) &fc133 );
rgb←v33632.f2 = (* (ptr) &fc133 );
SOURCE(48632, 962)
if ( ( (colorSpace←v18748 == (* (( (ptr) gf←c81888)+29)/* cmykColorSpace←v8432 */ )) ? (signalType←v18664 == 1) : 0 ) ) {
SOURCE(48697, 118)
{
word scaleFactor←v33704;
SOURCE(48699, 39)
{
word x792;
word x793;
word x794;
*(float*)&scaleFactor←v33704 = (
x792 = (* (ptr) &fc791 ), *(float*)&x792
) / ((
x793 = sz←v18636, *(float*)&x793
) - (
x794 = su←v18608, *(float*)&x794
));
};
SOURCE(48740, 64)
{
register word i←v33748 = 0;
lab←L100085: ;
SOURCE(48764, 40)
{
word var←c76224;
{
word x795;
word x796;
word x797;
*(float*)&var←c76224 = ((
x795 = (word) ( *( (fPt) ((* (ptr) pixelIn←v18720 ))))(i←v33748, pixelIn←v18720), *(float*)&x795
) - (
x796 = su←v18608, *(float*)&x796
)) * (
x797 = scaleFactor←v33704, *(float*)&x797
);
};
{
word limit798;
(* ((( (ptr) out←v18776)+2)+(
limit798 = (* (( (ptr) out←v18776)+1) ),
BCK(i←v33748, limit798)
)) ) = var←c76224;
};
};
if ((i←v33748 >= 3)) {
goto lab←L100082;
};
i←v33748 = (i←v33748 + 1);
goto lab←L100085;
lab←L100082: ;
};
};
}
else {
SOURCE(48824, 615)
{
register word tail←v33792;
tail←v33792 = signalNames←v18692;
lab←L100089: ;
if ((tail←v33792 != 0)) {
}
else {
goto lab←L100086;
};
{
W3 ink←v33920;
word siv←v33948;
word sivalue←v33976;
word reflectance←v34004;
SOURCE(48901, 60)
{
word var←c76256;
var←c76256 = (word) NarrowToOpConstantColor←P6420((* (ptr) (tail←v33792) ));
(void) RGBFromColor←P6660((word) &ink←v33920, var←c76256);
};
SOURCE(48963, 22)
siv←v33948 = (word) ( *( (fPt) ((* (ptr) pixelIn←v18720 ))))(i←v33660, pixelIn←v18720);
SOURCE(48987, 41)
{
word x799;
word x800;
word x801;
word x802;
*(float*)&sivalue←v33976 = ((
x799 = siv←v33948, *(float*)&x799
) - (
x800 = sz←v18636, *(float*)&x800
)) / ((
x801 = su←v18608, *(float*)&x801
) - (
x802 = sz←v18636, *(float*)&x802
));
};
SOURCE(49030, 27)
reflectance←v34004 = sivalue←v33976;
SOURCE(49159, 185)
{
word var←c76288;
var←c76288 = signalType←v18664;
if ((var←c76288 == 1)) {
}
else {
SOURCE(49212, 132)
{
word var←c76320;
{
word var←c76352;
word var←c76384;
var←c76352 = XR←NewObject(12, (* (( (ptr) gf←c81888)+55) ));
var←c76384 = var←c76352;
(* (ptr) var←c76384 ) = (* (( (ptr) gf←c81888)+100) );
(* (( (ptr) var←c76384)+1) ) = (word) SignalTypeNameFromSignalType←P5580(signalType←v18664);
var←c76320 = var←c76352;
};
{
W3 var←c01032;
var←c01032.f0 = 103;
var←c01032.f1 = (* (( (ptr) gf←c81888)+99) );
var←c01032.f2 = var←c76320;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c81888)+336)/* var←c70432 */ ))+4) ), (word) &var←c01032);
};
};
};
};
SOURCE(49346, 26)
{
word x803;
word x804;
word x805;
word x806;
word x807;
word x808;
*(float*)&rgb←v33632.f0 = (
x803 = rgb←v33632.f0, *(float*)&x803
) * ((
x804 = (* (ptr) &fc133 ), *(float*)&x804
) - (((
x805 = (* (ptr) &fc133 ), *(float*)&x805
) - (
x806 = reflectance←v34004, *(float*)&x806
)) * ((
x807 = (* (ptr) &fc133 ), *(float*)&x807
) - (
x808 = ink←v33920.f0, *(float*)&x808
))));
};
SOURCE(49374, 26)
{
word x809;
word x810;
word x811;
word x812;
word x813;
word x814;
*(float*)&rgb←v33632.f1 = (
x809 = rgb←v33632.f1, *(float*)&x809
) * ((
x810 = (* (ptr) &fc133 ), *(float*)&x810
) - (((
x811 = (* (ptr) &fc133 ), *(float*)&x811
) - (
x812 = reflectance←v34004, *(float*)&x812
)) * ((
x813 = (* (ptr) &fc133 ), *(float*)&x813
) - (
x814 = ink←v33920.f1, *(float*)&x814
))));
};
SOURCE(49402, 26)
{
word x815;
word x816;
word x817;
word x818;
word x819;
word x820;
*(float*)&rgb←v33632.f2 = (
x815 = rgb←v33632.f2, *(float*)&x815
) * ((
x816 = (* (ptr) &fc133 ), *(float*)&x816
) - (((
x817 = (* (ptr) &fc133 ), *(float*)&x817
) - (
x818 = reflectance←v34004, *(float*)&x818
)) * ((
x819 = (* (ptr) &fc133 ), *(float*)&x819
) - (
x820 = ink←v33920.f2, *(float*)&x820
))));
};
SOURCE(49430, 9)
i←v33660 = (i←v33660 + 1);
};
tail←v33792 = (* (( (ptr) tail←v33792)+1) );
goto lab←L100089;
lab←L100086: ;
};
SOURCE(49450, 144)
{
word var←c76480;
var←c76480 = colorSpace←v18748;
if ((var←c76480 == 0)) {
SOURCE(49481, 52)
{
word x←v62380;
{
word x821;
word x822;
word x823;
word x824;
word x825;
word x826;
*(float*)&x←v62380 = (((
x821 = (* (ptr) &fc106 ), *(float*)&x821
) * (
x822 = rgb←v33632.f0, *(float*)&x822
)) + ((
x823 = (* (ptr) &fc107 ), *(float*)&x823
) * (
x824 = rgb←v33632.f1, *(float*)&x824
))) + ((
x825 = (* (ptr) &fc108 ), *(float*)&x825
) * (
x826 = rgb←v33632.f2, *(float*)&x826
));
};
SOURCE(2971, 27)
{
word x827;
word x828;
word limit829;
word x830;
word x831;
word limit832;
word limit833;
if (((
x827 = x←v62380, *(float*)&x827
) <= (
x828 = (* (ptr) &fc95 ), *(float*)&x828
))) {
(* ((( (ptr) out←v18776)+2)+(
limit829 = (* (( (ptr) out←v18776)+1) ),
BCK(0, limit829)
)) ) = (* (ptr) &fc95 );
}
else {
if (((
x830 = x←v62380, *(float*)&x830
) > (
x831 = (* (ptr) &fc133 ), *(float*)&x831
))) {
(* ((( (ptr) out←v18776)+2)+(
/*1*/ limit832 = (* (( (ptr) out←v18776)+1) ),
/*1*/ BCK(0, limit832)
/*1*/ )) ) = (* (ptr) &fc133 );
}
else {
(* ((( (ptr) out←v18776)+2)+(
/*1*/ limit833 = (* (( (ptr) out←v18776)+1) ),
/*1*/ BCK(0, limit833)
/*1*/ )) ) = x←v62380;
};
};
};
};
}
else {
if ((var←c76480 == 1)) {
SOURCE(49548, 14)
{
word limit834;
(* ((( (ptr) out←v18776)+2)+(
limit834 = (* (( (ptr) out←v18776)+1) ),
BCK(0, limit834)
)) ) = rgb←v33632.f0;
};
SOURCE(49564, 14)
{
word limit835;
(* ((( (ptr) out←v18776)+2)+(
limit835 = (* (( (ptr) out←v18776)+1) ),
BCK(1, limit835)
)) ) = rgb←v33632.f1;
};
SOURCE(49580, 14)
{
word limit836;
(* ((( (ptr) out←v18776)+2)+(
limit836 = (* (( (ptr) out←v18776)+1) ),
BCK(2, limit836)
)) ) = rgb←v33632.f2;
};
}
else {
SOURCE(49610, 5)
(void) XR←RaiseUnnamedError();
};
};
};
};
}
static word DataEqualProcess←P6000(selfData←v51944, otherData←v51972)
word selfData←v51944;
word otherData←v51972;
{
register ptr gf←c81920 = (ptr) &globalframe;
word var←c52016;
word a←v34208;
word b←v34236;
/* DataEqualProcess: */
SOURCE(49624, 361)
SOURCE(49660, 33)
a←v34208 = XR←Narrow(selfData←v51944, (* (( (ptr) gf←c81920)+44) ));
SOURCE(49695, 34)
b←v34236 = XR←Narrow(otherData←v51972, (* (( (ptr) gf←c81920)+44) ));
SOURCE(49731, 86)
{
word x837;
word x838;
word x839;
word x840;
if ((((
x837 = (* (ptr) a←v34208 ), *(float*)&x837
) != (
x838 = (* (ptr) b←v34236 ), *(float*)&x838
)) || ((
x839 = (* (( (ptr) a←v34208)+1) ), *(float*)&x839
) != (
x840 = (* (( (ptr) b←v34236)+1) ), *(float*)&x840
))) || ((* (( (ptr) a←v34208)+2) ) != (* (( (ptr) b←v34236)+2) ))) {
SOURCE(49803, 14)
return(0);
};
};
SOURCE(49819, 73)
if ((0 == (word) EqualSignalNames←P6060((* (( (ptr) a←v34208)+3) ), (* (( (ptr) b←v34236)+3) )))) {
SOURCE(49878, 14)
return(0);
};
SOURCE(49894, 76)
{
word pd841;
pd841 = (* (( (ptr) (* (( (ptr) gf←c81920)+332)/* var←c66976 */ ))+22) );
if ((0 == (word) ( *( (fPt) ((* (ptr) pd841 ))))((* (( (ptr) a←v34208)+4) ), (* (( (ptr) b←v34236)+4) ), pd841))) {
SOURCE(49956, 14)
return(0);
};
};
SOURCE(49972, 13)
return(1);
}
static word EqualSignalNames←P6060(a←v18920, b←v18948)
word a←v18920;
word b←v18948;
{
word var←c19076;
word atail←v34280;
word btail←v34308;
/* EqualSignalNames: */
SOURCE(49991, 367)
SOURCE(50063, 7)
atail←v34280 = a←v18920;
SOURCE(50097, 7)
btail←v34308 = b←v18948;
SOURCE(50131, 193)
lab←L100093: ;
if ( ( (atail←v34280 != 0) ? (btail←v34308 != 0) : 0 ) ) {
}
else {
goto lab←L100091;
};
SOURCE(50167, 48)
if (((* (ptr) atail←v34280 ) != (* (ptr) btail←v34308 ))) {
SOURCE(50201, 14)
return(0);
};
SOURCE(50286, 18)
atail←v34280 = (* (( (ptr) atail←v34280)+1) );
SOURCE(50306, 18)
btail←v34308 = (* (( (ptr) btail←v34308)+1) );
goto lab←L100093;
lab←L100091: ;
SOURCE(50335, 23)
return( (unsigned) (atail←v34280 == btail←v34308));
}
static word CMYKSignalNames←P6120(signal←v19136)
word signal←v19136;
{
register ptr gf←c81952 = (ptr) &globalframe;
word var←c19180;
word solid←v34520;
/* CMYKSignalNames: */
SOURCE(50362, 198)
SOURCE(50426, 104)
{
word var←c76576;
var←c76576 = signal←v19136;
switch (var←c76576) {
case 0:
solid←v34520 = 4;
break;
case 1:
solid←v34520 = 5;
break;
case 2:
solid←v34520 = 6;
break;
case 3:
solid←v34520 = 0;
break;
default:
solid←v34520 = 0;
break;
};
};
SOURCE(50532, 28)
return((* (( (ptr) (* (( (ptr) gf←c81952)+14)/* solidColors←v6248 */ ))+solid←v34520) ));
}
static word EnlistSignalNames←P6180(signals←v19240, signalNames←v19268)
word signals←v19240;
word signalNames←v19268;
{
register ptr gf←c81984 = (ptr) &globalframe;
word var←c19416;
word signalNameList←v34564 = 0;
/* EnlistSignalNames: */
SOURCE(50564, 306)
SOURCE(50741, 94)
{
register word i←v34692;
i←v34692 = signals←v19240;
if ((0 >= i←v34692)) {
goto lab←L100094;
};
i←v34692 = (i←v34692 - 1);
lab←L100097: ;
SOURCE(50782, 53)
{
word var←c76608;
word var←c76640;
var←c76608 = (word) ( *( (fPt) ((* (ptr) signalNames←v19268 ))))(i←v34692, signalNames←v19268);
var←c76640 = XR←NewObject(8, (* (( (ptr) gf←c81984)+43) ));
(* (ptr) var←c76640 ) = var←c76608;
(* (( (ptr) var←c76640)+1) ) = signalNameList←v34564;
signalNameList←v34564 = var←c76640;
};
if ((0 >= i←v34692)) {
goto lab←L100094;
};
i←v34692 = (i←v34692 - 1);
goto lab←L100097;
lab←L100094: ;
};
SOURCE(50846, 24)
return(signalNameList←v34564);
}
static word NewColorOperatorProcess←P6240(su←v19644, sz←v19672, signals←v19700, map←v19728, signalType←v19756, signalNames←v19784, deviceProps←v19812)
word su←v19644;
word sz←v19672;
word signals←v19700;
word map←v19728;
word signalType←v19756;
word signalNames←v19784;
word deviceProps←v19812;
{
register ptr gf←c82016 = (ptr) &globalframe;
word var←c19960;
word signalNameList←v34736;
word class←v34764;
word data←v34792;
/* NewColorOperatorProcess: */
SOURCE(50955, 694)
SOURCE(51186, 16)
signalNameList←v34736 = (word) EnlistSignalNames←P6180(signals←v19700, signalNames←v19784);
SOURCE(51267, 113)
class←v34764 = ( (0 != (word) EqualSignalNames←P6060(signalNameList←v34736, (* (( (ptr) gf←c82016)+31)/* cmykSignalNames←v8796 */ ))
) ? (* (( (ptr) gf←c82016)+30)/* classCMYK←v8460 */ ) : (* (( (ptr) gf←c82016)+28)/* classProcess←v8404 */ ) ) ;
SOURCE(51382, 120)
data←v34792 = XR←NewObject(20, (* (( (ptr) gf←c82016)+44) ));
(* (ptr) data←v34792 ) = su←v19644;
(* (( (ptr) data←v34792)+1) ) = sz←v19672;
(* (( (ptr) data←v34792)+2) ) = signalType←v19756;
(* (( (ptr) data←v34792)+3) ) = signalNameList←v34736;
(* (( (ptr) data←v34792)+4) ) = map←v19728;
SOURCE(51504, 145)
{
word pd842;
pd842 = (* (( (ptr) (* (( (ptr) gf←c82016)+332)/* var←c66976 */ ))+49) );
return((word) ( *( (fPt) ((* (ptr) pd842 ))))(1, signals←v19700, class←v34764, data←v34792, deviceProps←v19812, pd842));
};
}
static word NewColorOperatorCMYK←P6300(maxIn←v20020)
word maxIn←v20020;
{
register ptr gf←c82048 = (ptr) &globalframe;
word var←c20064;
/* NewColorOperatorCMYK: */
SOURCE(51655, 194)
SOURCE(51730, 119)
{
float tf843;
return((word) NewColorOperatorProcess←P6240((* (ptr) &fc95 ), (
tf843 = (float)(unsigned)maxIn←v20020, *(word*)&tf843
), 4, 0, 1, (word) (( (bPt) gf←c82048)+528)/* var←c63680 */
, 0));
};
}
static word ColorFromCMYK←P6360(cmyk←v20124)
W4 cmyk←v20124;
{
register ptr gf←c82080 = (ptr) &globalframe;
word var←c20168;
word color←v34920;
/* ColorFromCMYK: */
SOURCE(51938, 347)
SOURCE(52008, 53)
color←v34920 = XR←NewObject(32, (* (( (ptr) gf←c82080)+62) ));
(* (( (ptr) color←v34920)+3) ) = 4;
SOURCE(52063, 30)
(* (( (ptr) color←v34920)+2) ) = (* (( (ptr) gf←c82080)+32)/* cmyk1000←v8880 */ );
SOURCE(52095, 42)
{
word var←c76800;
{
word pd844;
word x845;
word x846;
float tf847;
float tf848;
pd844 = (* (( (ptr) (* (( (ptr) gf←c82080)+337)/* var←c70656 */ ))+6) );
var←c76800 = (
tf848 = (float)(int)(word) ( *( (fPt) ((* (ptr) pd844 ))))((
tf847 = (
x845 = cmyk←v20124.f0, *(float*)&x845
) * (
x846 = (* (ptr) &fc115 ), *(float*)&x846
), *(word*)&tf847
), pd844), *(word*)&tf848
);
};
{
word limit849;
(* ((( (ptr) color←v34920)+4)+(
limit849 = (* (( (ptr) color←v34920)+3) ),
BCK(0, limit849)
)) ) = var←c76800;
};
};
SOURCE(52139, 42)
{
word var←c76832;
{
word pd850;
word x851;
word x852;
float tf853;
float tf854;
pd850 = (* (( (ptr) (* (( (ptr) gf←c82080)+337)/* var←c70656 */ ))+6) );
var←c76832 = (
tf854 = (float)(int)(word) ( *( (fPt) ((* (ptr) pd850 ))))((
tf853 = (
x851 = cmyk←v20124.f1, *(float*)&x851
) * (
x852 = (* (ptr) &fc115 ), *(float*)&x852
), *(word*)&tf853
), pd850), *(word*)&tf854
);
};
{
word limit855;
(* ((( (ptr) color←v34920)+4)+(
limit855 = (* (( (ptr) color←v34920)+3) ),
BCK(1, limit855)
)) ) = var←c76832;
};
};
SOURCE(52183, 42)
{
word var←c76864;
{
word pd856;
word x857;
word x858;
float tf859;
float tf860;
pd856 = (* (( (ptr) (* (( (ptr) gf←c82080)+337)/* var←c70656 */ ))+6) );
var←c76864 = (
tf860 = (float)(int)(word) ( *( (fPt) ((* (ptr) pd856 ))))((
tf859 = (
x857 = cmyk←v20124.f2, *(float*)&x857
) * (
x858 = (* (ptr) &fc115 ), *(float*)&x858
), *(word*)&tf859
), pd856), *(word*)&tf860
);
};
{
word limit861;
(* ((( (ptr) color←v34920)+4)+(
limit861 = (* (( (ptr) color←v34920)+3) ),
BCK(2, limit861)
)) ) = var←c76864;
};
};
SOURCE(52227, 42)
{
word var←c76896;
{
word pd862;
word x863;
word x864;
float tf865;
float tf866;
pd862 = (* (( (ptr) (* (( (ptr) gf←c82080)+337)/* var←c70656 */ ))+6) );
var←c76896 = (
tf866 = (float)(int)(word) ( *( (fPt) ((* (ptr) pd862 ))))((
tf865 = (
x863 = cmyk←v20124.f3, *(float*)&x863
) * (
x864 = (* (ptr) &fc115 ), *(float*)&x864
), *(word*)&tf865
), pd862), *(word*)&tf866
);
};
{
word limit867;
(* ((( (ptr) color←v34920)+4)+(
limit867 = (* (( (ptr) color←v34920)+3) ),
BCK(3, limit867)
)) ) = var←c76896;
};
};
SOURCE(52271, 14)
return(color←v34920);
}
static word NarrowToOpConstantColor←P6420(color←v20228)
word color←v20228;
{
register ptr gf←c82112 = (ptr) &globalframe;
word var←c20272;
word c←v34964;
/* NarrowToOpConstantColor: */
SOURCE(52290, 344)
SOURCE(52380, 24)
c←v34964 = color←v20228;
SOURCE(52406, 228)
lab←L100100: ;
SOURCE(52409, 225)
{
word var←c76928;
var←c76928 = c←v34964;
if ((var←c76928 == 0)) {
goto lab←L100101;
};
{
word var←c77088;
var←c77088 = (* (( (ptr) var←c76928)+1) );
if ((var←c77088 == 1)) {
{
word special←v35008;
special←v35008 = var←c76928;
SOURCE(52453, 22)
c←v34964 = (* (( (ptr) special←v35008)+5) );
};
}
else {
if ((var←c77088 == 0)) {
{
word op←v35052;
op←v35052 = var←c76928;
SOURCE(52500, 11)
return(op←v35052);
};
}
else {
lab←L100101: ;
SOURCE(52524, 110)
{
word var←c76960;
{
word var←c76992;
word var←c77024;
var←c76992 = XR←NewObject(12, (* (( (ptr) gf←c82112)+55) ));
var←c77024 = var←c76992;
(* (ptr) var←c77024 ) = (* (( (ptr) gf←c82112)+71) );
(* (( (ptr) var←c77024)+1) ) = color←v20228;
var←c76960 = var←c76992;
};
{
W3 var←c01087;
var←c01087.f0 = 122;
var←c01087.f1 = (* (( (ptr) gf←c82112)+102) );
var←c01087.f2 = var←c76960;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c82112)+336)/* var←c70432 */ ))+4) ), (word) &var←c01087);
};
};
};
};
};
};
goto lab←L100100;
}
static word ColorFromPixel←P6480(colorOperator←v20332, pixel←v20360)
word colorOperator←v20332;
word pixel←v20360;
{
register ptr gf←c82144 = (ptr) &globalframe;
word var←c20508;
word size←v35096;
word color←v35124;
/* ColorFromPixel: */
SOURCE(52640, 350)
SOURCE(52774, 43)
size←v35096 = (* (( (ptr) colorOperator←v20332)+1) );
SOURCE(52819, 56)
{
word var←c77120;
word var←c77152;
word var←c77184;
var←c77120 = BCK(size←v35096, 67108863);
var←c77152 = ((word) var←c77120 << 2);
var←c77184 = XR←NewObject((16 + var←c77152), (* (( (ptr) gf←c82144)+62) ));
(* (( (ptr) var←c77184)+3) ) = var←c77120;
color←v35124 = var←c77184;
};
SOURCE(52877, 35)
(* (( (ptr) color←v35124)+2) ) = colorOperator←v20332;
SOURCE(52914, 60)
{
register word i←v35168 = 0;
if ((i←v35168 >= size←v35096)) {
goto lab←L100102;
};
lab←L100105: ;
SOURCE(52941, 33)
{
word var←c77216;
var←c77216 = (word) ( *( (fPt) ((* (ptr) pixel←v20360 ))))(i←v35168, pixel←v20360);
{
word limit868;
(* ((( (ptr) color←v35124)+4)+(
limit868 = (* (( (ptr) color←v35124)+3) ),
BCK(i←v35168, limit868)
)) ) = var←c77216;
};
};
i←v35168 = (i←v35168 + 1);
if ((i←v35168 < size←v35096)) {
goto lab←L100105;
};
lab←L100102: ;
};
SOURCE(52976, 14)
return(color←v35124);
}
static word MakeSampledBlack←P6540(pa←v20568, um←v20596, clear←v20624)
word pa←v20568;
word um←v20596;
word clear←v20624;
{
register ptr gf←c82176 = (ptr) &globalframe;
word var←c20668;
/* MakeSampledBlack: */
SOURCE(52995, 288)
SOURCE(53110, 29)
if (((* (( (ptr) pa←v20568)+1) ) != 1)) {
SOURCE(53139, 5)
(void) XR←RaiseUnnamedError();
};
SOURCE(53146, 49)
{
word pd869;
pd869 = (* (( (ptr) (* (( (ptr) gf←c82176)+341)/* var←c77248 */ ))+7) );
if (((word) ( *( (fPt) ((* (ptr) pd869 ))))(pa←v20568, 0, pd869) != 1)) {
SOURCE(53195, 5)
(void) XR←RaiseUnnamedError();
};
};
SOURCE(53202, 81)
{
word var←c77312;
var←c77312 = XR←NewObject(16, (* (( (ptr) gf←c82176)+62) ));
(* (ptr) var←c77312 ) = 2;
(* (( (ptr) var←c77312)+1) ) = pa←v20568;
(* (( (ptr) var←c77312)+2) ) = um←v20596;
(* (( (ptr) var←c77312)+3) ) = clear←v20624;
return(var←c77312);
};
}
static word MakeSampledColor←P6600(pa←v20728, um←v20756, colorOperator←v20784)
word pa←v20728;
word um←v20756;
word colorOperator←v20784;
{
register ptr gf←c82208 = (ptr) &globalframe;
word var←c20828;
/* MakeSampledColor: */
SOURCE(53289, 211)
SOURCE(53413, 87)
{
word var←c77376;
var←c77376 = XR←NewObject(16, (* (( (ptr) gf←c82208)+62) ));
(* (ptr) var←c77376 ) = 1;
(* (( (ptr) var←c77376)+1) ) = pa←v20728;
(* (( (ptr) var←c77376)+2) ) = um←v20756;
(* (( (ptr) var←c77376)+3) ) = colorOperator←v20784;
return(var←c77376);
};
}
static void RGBFromColor←P6660(formal←c01113, c←v20972)
word formal←c01113;
word c←v20972;
{
register ptr gf←c82240 = (ptr) &globalframe;
W3 rgb←v21016;
word p←v35212;
/* RGBFromColor: */
SOURCE(53577, 387)
SOURCE(53577, 387)
rgb←v21016.f0 = (* (ptr) &fc95 );
rgb←v21016.f1 = (* (ptr) &fc95 );
rgb←v21016.f2 = (* (ptr) &fc95 );
SOURCE(53659, 128)
{
word var←c77408;
{
word pd870;
pd870 = (* (( (ptr) (* (( (ptr) gf←c82240)+332)/* var←c66976 */ ))+42) );
var←c77408 = (word) ( *( (fPt) ((* (ptr) pd870 ))))((* (( (ptr) c←v20972)+2) ), (* (( (ptr) gf←c82240)+33)/* eitherRGBorY←v9076 */ ), pd870)
;
};
{
word pd871;
pd871 = (* (( (ptr) (* (( (ptr) gf←c82240)+332)/* var←c66976 */ ))+41) );
p←v35212 = (word) ( *( (fPt) ((* (ptr) pd871 ))))(c←v20972, var←c77408, pd871);
};
};
SOURCE(53789, 100)
{
word var←c77440;
var←c77440 = (* (( (ptr) p←v35212)+1) );
if ((var←c77440 == 1)) {
SOURCE(53812, 24)
{
word limit872;
rgb←v21016.f0 = (* ((( (ptr) p←v35212)+2)+(
limit872 = (* (( (ptr) p←v35212)+1) ),
BCK(0, limit872)
)) );
};
{
word limit873;
rgb←v21016.f1 = (* ((( (ptr) p←v35212)+2)+(
limit873 = (* (( (ptr) p←v35212)+1) ),
BCK(0, limit873)
)) );
};
{
word limit874;
rgb←v21016.f2 = (* ((( (ptr) p←v35212)+2)+(
limit874 = (* (( (ptr) p←v35212)+1) ),
BCK(0, limit874)
)) );
};
}
else {
if ((var←c77440 == 3)) {
SOURCE(53865, 24)
{
word limit875;
rgb←v21016.f0 = (* ((( (ptr) p←v35212)+2)+(
limit875 = (* (( (ptr) p←v35212)+1) ),
BCK(0, limit875)
)) );
};
{
word limit876;
rgb←v21016.f1 = (* ((( (ptr) p←v35212)+2)+(
limit876 = (* (( (ptr) p←v35212)+1) ),
BCK(1, limit876)
)) );
};
{
word limit877;
rgb←v21016.f2 = (* ((( (ptr) p←v35212)+2)+(
limit877 = (* (( (ptr) p←v35212)+1) ),
BCK(2, limit877)
)) );
};
}
else {
SOURCE(53914, 5)
(void) XR←RaiseUnnamedError();
};
};
};
SOURCE(53921, 43)
{
word pd878;
pd878 = (* (( (ptr) (* (( (ptr) gf←c82240)+332)/* var←c66976 */ ))+36) );
p←v35212 = (word) ( *( (fPt) ((* (ptr) pd878 ))))(p←v35212, pd878);
};
/* removed tail goto */
(* (W3Pt) formal←c01113 ) = rgb←v21016;
return;
}
static word IntensityFromStipple←P6720(word←v21076)
word word←v21076;
{
word var←c21120;
word bits←v35284;
word count←v35312 = 0;
/* IntensityFromStipple: */
SOURCE(53970, 276)
SOURCE(54053, 56)
bits←v35284 = word←v21076;
SOURCE(54157, 56)
{
register word i←v35412 = 0;
lab←L100110: ;
SOURCE(54184, 29)
{
word ix879;
count←v35312 = (count←v35312 + (unsigned) (
ix879 = (BCK(i←v35412, 16) + 16),
((word) bits←v35284 >> (31 - (word) ix879)) & 1
));
};
if ((i←v35412 >= 15)) {
goto lab←L100107;
};
i←v35412 = (i←v35412 + 1);
goto lab←L100110;
lab←L100107: ;
};
SOURCE(54215, 31)
{
float tf880;
return((
tf880 = (float)(int)(16 - count←v35312) / (float)(unsigned)16, *(word*)&tf880
));
};
}
static word ColorFromStipple←P6780(word←v21180, function←v21208)
word word←v21180;
word function←v21208;
{
register ptr gf←c82272 = (ptr) &globalframe;
word var←c21252;
word data←v35456;
/* ColorFromStipple: */
SOURCE(54252, 360)
SOURCE(54342, 112)
data←v35456 = XR←NewObject(8, (* (( (ptr) gf←c82272)+40) ));
(* (ptr) data←v35456 ) = word←v21180;
(* (( (ptr) data←v35456)+1) ) = function←v21208;
SOURCE(54456, 156)
{
word var←c77568;
word var←c77536;
word var←c77600;
{
word x881;
word x882;
*(float*)&var←c77568 = (
x881 = (* (ptr) &fc133 ), *(float*)&x881
) - (
x882 = (word) IntensityFromStipple←P6720(word←v21180), *(float*)&x882
);
};
var←c77536 = (word) ColorFromGray←P900(var←c77568);
var←c77600 = XR←NewObject(24, (* (( (ptr) gf←c82272)+62) ));
(* (( (ptr) var←c77600)+1) ) = 1;
(* (( (ptr) var←c77600)+2) ) = (* (( (ptr) gf←c82272)+106) );
(* (( (ptr) var←c77600)+4) ) = data←v35456;
(* (( (ptr) var←c77600)+5) ) = var←c77536;
return(var←c77600);
};
}
static word Define←P6840(name←v21312, type←v21340, substitute←v21368)
word name←v21312;
word type←v21340;
word substitute←v21368;
{
register ptr gf←c82304 = (ptr) &globalframe;
word var←c21412;
word special←v35500;
/* Define: */
SOURCE(54618, 307)
SOURCE(54711, 147)
special←v35500 = XR←NewObject(24, (* (( (ptr) gf←c82304)+62) ));
(* (( (ptr) special←v35500)+1) ) = 1;
(* (( (ptr) special←v35500)+2) ) = type←v21340;
(* (( (ptr) special←v35500)+3) ) = name←v21312;
(* (( (ptr) special←v35500)+5) ) = substitute←v21368;
SOURCE(54860, 46)
{
word pd883;
pd883 = (* (( (ptr) (* (( (ptr) gf←c82304)+332)/* var←c66976 */ ))+34) );
(void) ( *( (fPt) ((* (ptr) pd883 ))))(special←v35500, pd883);
};
SOURCE(54908, 17)
return(special←v35500);
}
/* file: ImagerColorImpl, module: ImagerColorImpl, compiled at: July 28, 1993 10:15:12 am PDT */
extern void XR←install←ImagerColorImpl() {
NoName←Q11340();
}
extern void XR←run←ImagerColorImpl() { XR←Start(&globalframe); }