/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */
/* time: July 6, 1993 9:43:30 am PDT */
/* C2C version: April 20, 1993 (sun4) */
/* ref-counting: off */
/* file: ImagerHighlightContextImpl, module: ImagerHighlightContextImpl */
/* switches: bcfhklnouw */
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
#define XRM←BITRSHIFT(x, y) ((word)(x) >> (word)(y))
#define XRM←BITOR(x, y) (((word)(x)) | ((word)(y)))
#define XRM←BITLSHIFT(x, y) ((word)(x) << (word)(y))
#define XRM←BITAND(x, y) (((word)(x)) & ((word)(y)))
#define XRM←BITNOT(x) (~((word)(x)))
static char versionStamp[] = "@(#)mob←version [3053736526,1954619951] ImagerHighlightContextImpl";
typedef unsigned word, *ptr;
typedef unsigned char byte, *bPt;
typedef unsigned short half, *hPt;
typedef word (*fPt)();
typedef struct {word f0, f1;} W2;
typedef struct {word f0, f1, f2;} W3;
typedef struct {word f0, f1, f2, f3;} W4;
typedef W4 *W4Pt;
typedef W3 *W3Pt;
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, f3, f4, f5;} W6;
typedef struct {W8 f; W6 r;} W14;
typedef struct {W8 f; W8 r;} W16;
typedef struct {W16 f; W16 r;} W32;
typedef struct {W32 f; W32 r;} W64;
typedef struct {W64 f; W64 r;} W128;
typedef struct {W128 f; W128 r;} W256;
typedef struct {W256 f; W256 r;} W512;
typedef struct {W512 f; W512 r;} W1024;
typedef struct {W1024 f; W1024 r;} W2048;
typedef W2048 *W2048Pt;
typedef W32 *W32Pt;
typedef struct {W16 f; W3 r;} W19;
typedef struct {W64 f; W19 r;} W83;
typedef struct {W16 f; W4 r;} W20;
typedef W2 *W2Pt;
typedef struct {word f0, f1, f2, f3, f4;} W5;
typedef struct {W16 f; W5 r;} W21;
#define SOURCE(p, l) /* source p, l */
#define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) )
static float fc49 = 1.0;
static float fc50 = 0.0;
#define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i )
static float fc57 = 5.656;
static float fc58 = 45.0;
static float fc59 = 0.48;
static float fc60 = 0.05;
static float fc68 = 2.0;
static float fc87 = 255.0;
static float fc89 = 0.5;
#define MIN(cast, x, y) ( ( cast x) < ( cast y) ? (x) : (y) )
#define MAX(cast, x, y) ( ( cast x) > ( cast y) ? (x) : (y) )
#define NCK(p) ( (void) p)
static float fc218 = 0.253;
static float fc221 = 0.684;
static float fc224 = 0.063;
static float fc232 = 4.0;
#define FMAX(x, y, tx, ty) ( (tx=((float) x)) >= (ty=((float) y)) ? tx : ty )
static float fc253 = 3.0;
#define FMIN(x, y, tx, ty) ( (tx=((float) x)) <= (ty=((float) y)) ? tx : ty )
static void NoName←Q6240();
static void ImagerHighlightContextImpl←P0();
static word Create←P60();
static void SetSampleMap←P120();
static word GetSampleMap←P180();
static void SetColorLookupTable←P240();
static void SetDataHighlight←P300();
static void SetDataBrick←P360();
static word NewColorOperatorHighlight←P420();
static word mapper←P1728();
static word HiliteGetBufferColorOperator←P480();
static word PixelMapWords←P540();
static void HiliteSetHalftoneProperties←P600();
static void HiliteSetColor←P660();
static void Gen←P2076();
static word Compare←P2328();
static word GetColorTransform←P720();
static void HighlightTransform←P780();
static void CMYKTransform←P840();
static void IntensityTransform←P900();
static word Store←P1020();
static void PictorialTransform←P1080();
static void TableRGBTransform←P1140();
static word ComputeSource←P1200();
static void HiliteHalftone←P1260();
static word GetHBuffer←P2820();
static void Action←P2880();
static void HiliteMaskBoxes←P1320();
static void Src←P3192();
static void BoxAction←P3300();
static void BlackAction←P3456();
static void HiliteMaskBitmap←P1380();
static void FastTransfer←P3996();
static void HiliteMaskRawBitmaps←P1440();
static word MakeExpandArray2←P1500();
static void StoreWithColorMask2←P1560();
static word CreateClass←P1620();
static struct {unsigned f; char r[4];} string1 = {131076, "\216\251\000"};
static struct {unsigned f; char r[4];} string2 = {65537, "\001\000\000"};
static struct {unsigned f; char r[16];} string3 = {851984, "\254\205\210\241\000\100\377\210\241\000\200\377\377\000\000"};
static struct {unsigned f; char r[44];} string4 = {2818092, "\216\260\007\006\154\145\156\147\164\150\210\241\000\200\177\377\005\004\164\145\170\164\254\206\012\011\155\141\170\114\145\156\147\164\150\210\241\000\200\177\377\243\261"};
static struct {unsigned f; char r[16];} string5 = {851984, "\257\300\207\164\301\163\300\327\135\041\305\104\334\000\000"};
static struct {unsigned f; char r[4];} string6 = {131074, "\004\012\000"};
static struct {unsigned f; char r[16];} string7 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"};
static struct {unsigned f; char r[16];} string8 = {851984, "\257\300\266\004\122\116\300\164\201\042\057\100\230\000\000"};
static struct {unsigned f; char r[4];} string9 = {131074, "\004\037\000"};
static struct {unsigned f; char r[44];} string10 = {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];} string11 = {131074, "\003\001\000"};
static struct {unsigned f; char r[16];} string12 = {851984, "\257\300\241\011\366\176\300\127\130\105\301\100\274\000\000"};
static struct {unsigned f; char r[4];} string13 = {131074, "\003\016\000"};
static struct {unsigned f; char r[16];} string14 = {851984, "\257\300\266\004\122\116\300\164\201\042\057\100\214\000\000"};
static struct {unsigned f; char r[28];} string15 = {1769499, "\006\012\000\001\004\001\010\001\034\001\040\001\044\003\001\100\100\001\100\104\001\100\114\001\100\120\001"};
static struct {unsigned f; char r[64];} string16 = {3997760, "sampleMap must have 2 bits per sample for a Highlight context\000\000"};
static struct {unsigned f; char r[44];} string17 = {2818092, "Ignore setscreen on highlight color device."};
static struct {unsigned f; char r[48];} string18 = {2949168, "Unknown special color has no substitute value\000\000"};
static struct {unsigned f; char r[28];} string19 = {1572892, "ignorehighlightsetscreen\000\000\000"};
static struct {unsigned f; char r[12];} string20 = {524300, "HIGHLITE\000\000\000"};
static struct {unsigned f; char r[12];} string21 = {589836, "Highlight\000\000"};
static struct {unsigned f; char r[16];} string22 = {851984, "\257\300\266\004\122\116\300\164\201\042\057\100\164\000\000"};
static struct {unsigned f; char r[20];} string23 = {1179666, "\006\007\020\001\034\001\040\001\044\001\050\001\054\001\100\160\004\077\000"};
static struct {unsigned f; char r[16];} string24 = {851984, "\257\300\161\264\233\303\300\026\075\022\161\100\150\000\000"};
static struct {unsigned f; char r[16];} string25 = {851984, "\257\300\074\177\166\242\300\203\113\217\044\100\150\000\000"};
static struct {unsigned f; char r[16];} string26 = {851984, "\257\300\361\072\110\004\300\054\212\055\367\100\150\000\000"};
static struct {unsigned f; char r[16];} string27 = {851984, "\257\300ZT?\010\300\370;=;@h\000\000"};
static struct {unsigned f; char r[16];} string28 = {851984, "\257\300\207\164\301\163\300\327\135\041\305\100\150\000\000"};
static struct {unsigned f; char r[16];} string29 = {851984, "\257\300\241\011\366\176\300\127\130\105\301\100\150\000\000"};
static struct {unsigned f; char r[16];} string30 = {851984, "\257\300\122\363\317\016\300\023\203\024\034\100\150\000\000"};
static struct {unsigned f; char r[16];} string31 = {851984, "\257\300\045\370\116\014\300\270\323\074\131\100\150\000\000"};
static struct {unsigned f; char r[16];} string32 = {851984, "\257\300\254\224\163\216\300\143\061\230\115\100\150\000\000"};
static struct {unsigned f; char r[16];} string33 = {851984, "\257\300\260\302\146\322\300\075\027\134\123\100\150\000\000"};
static struct {unsigned f; char r[16];} string34 = {851984, "\257\300\230\052\311\306\300\242\375\035\324\100\150\000\000"};
static struct {unsigned f; char r[16];} string35 = {851984, "\257\300\067\246\211\216\300\354\224\134\067\100\150\000\000"};
static struct {unsigned f; char r[16];} string36 = {851984, "\257\300\213\226\301\143\300\072\355\320\373\100\150\000\000"};
static struct {unsigned f; char r[16];} string37 = {851984, "\257\300\121\117\377\026\300\315\013\026\004\100\150\000\000"};
static struct {unsigned f; char r[16];} string38 = {851984, "\257\300\176\213\032\371\300\351\075\041\137\100\150\000\000"};
static struct {unsigned f; char r[16];} string39 = {851984, "\257\300\246\205\220\035\300\344\000\142\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string40 = {851984, "\257\300\243\162\130\311\300\344\000\142\023\100\150\000\000"};
static struct {unsigned f; char r[12];} string41 = {720908, "\257\300/\002\345\247\245\243T@h"};
static struct {unsigned f; char r[16];} string42 = {851984, "\257\300\143\050\357\204\300\236\327\233\116\100\150\000\000"};
static struct {unsigned f; char r[16];} string43 = {851984, "\257\300\237\156\146\367\300\026\157\147\122\100\150\000\000"};
static struct {
word f0[34]; word f34; word f35; word f36;
word f37; word f38; word f39; word f40;
word f41; word f42; word f43; word f44;
word f45; word f46; word f47; word f48;
word f49; word f50; word f51; word f52;
word f53; word f54; word f55; word f56;
word f57; word f58; word f59; word f60;
word f61; word f62; word f63; word f64;
word f65; word f66; word f67; word f68;
word f69; word f70; word f71; word f72;
word f73; word f74; word f75; word f76;
word f77; word f78; word f79; word f80;
word f81; word f82; word f83; word f84;
word f85; word f86; word f87[37];
} globalframe = {
{0}, (word) CreateClass←P1620, 0, (word) StoreWithColorMask2←P1560,
0, (word) MakeExpandArray2←P1500, 0, (word) HiliteMaskRawBitmaps←P1440,
0, (word) HiliteMaskBitmap←P1380, 0, (word) HiliteMaskBoxes←P1320,
0, (word) HiliteHalftone←P1260, 0, (word) ComputeSource←P1200,
0, (word) TableRGBTransform←P1140, 0, (word) PictorialTransform←P1080,
0, (word) Store←P1020, 0, (word) IntensityTransform←P900,
0, (word) CMYKTransform←P840, 0, (word) HighlightTransform←P780,
0, (word) GetColorTransform←P720, 0, (word) HiliteSetColor←P660,
0, (word) HiliteSetHalftoneProperties←P600, 0, (word) PixelMapWords←P540,
0, (word) HiliteGetBufferColorOperator←P480, 0, (word) NewColorOperatorHighlight←P420,
0, (word) SetDataBrick←P360, 0, (word) SetDataHighlight←P300,
0, (word) SetColorLookupTable←P240, 0, (word) GetSampleMap←P180,
0, (word) SetSampleMap←P120, 0, (word) Create←P60,
0, (word) ImagerHighlightContextImpl←P0, {0}
};
static void NoName←Q6240()
{
register ptr gf←c0515 = (ptr) &globalframe;
word var←c57656;
(* (( (ptr) gf←c0515)+12) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2);
(* (( (ptr) gf←c0515)+13) ) = (word) XR←GetTypeIndexS((word) (&string3));
(* (( (ptr) gf←c0515)+16) ) = (word) XR←GetTypeIndex((word) &string4, 0, (word) &string2);
(* (( (ptr) gf←c0515)+18) ) = (word) XR←GetTypeIndex((word) &string5, 0, (word) &string6);
(* (( (ptr) gf←c0515)+20) ) = (word) XR←GetTypeIndex((word) &string7, 0, (word) &string2);
(* (( (ptr) gf←c0515)+21) ) = (word) XR←GetTypeIndex((word) &string8, 0, (word) &string9);
(* (( (ptr) gf←c0515)+22) ) = (word) XR←GetTypeIndex((word) &string10, 0, (word) &string11);
(* (( (ptr) gf←c0515)+23) ) = (word) XR←GetTypeIndex((word) &string12, 0, (word) &string13);
(* (( (ptr) gf←c0515)+26) ) = (word) XR←GetTypeIndex((word) &string14, 0, (word) &string15);
(* (ptr) (( (bPt) gf←c0515)+112) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0515)+20) ), (word) &string16);
(* (ptr) (( (bPt) gf←c0515)+116) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0515)+20) ), (word) &string17);
(* (ptr) (( (bPt) gf←c0515)+120) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0515)+20) ), (word) &string18);
(* (ptr) (( (bPt) gf←c0515)+124) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0515)+12) ), (word) &string19);
(* (ptr) (( (bPt) gf←c0515)+128) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0515)+16) ), (word) &string20);
(* (ptr) (( (bPt) gf←c0515)+132) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0515)+12) ), (word) &string21);
(void) XR←DeclareGlobalFrame((word) "ImagerHighlightContextImpl", &globalframe, (word) XR←GetTypeIndex((word) &string22, 0, (word) &string23)
, (word) (( (bPt) gf←c0515)+344)/* var←c52344 */ );
var←c57656 = (word) XR←ImportInterface((word) "FunctionCache", (word) XR←GetTypeIndexS((word) (&string24)), 14);
(* (( (ptr) gf←c0515)+119)/* var←c54136 */ ) = var←c57656;
(void) XR←ImportProcS(var←c57656, 1311237);
(void) XR←ImportProcS(var←c57656, 135005443);
(void) XR←ImportProcS(var←c57656, 67112192);
var←c57656 = (word) XR←ImportInterface((word) "Imager", (word) XR←GetTypeIndexS((word) (&string25)), 84);
(* (( (ptr) gf←c0515)+114)/* var←c53368 */ ) = var←c57656;
var←c57656 = (word) XR←ImportInterface((word) "ImagerBrick", (word) XR←GetTypeIndexS((word) (&string26)), 4);
(* (( (ptr) gf←c0515)+112)/* var←c53112 */ ) = var←c57656;
(void) XR←ImportProcS(var←c57656, 203424264);
var←c57656 = (word) XR←ImportInterface((word) "ImagerColor", (word) XR←GetTypeIndexS((word) (&string27)), 32);
(* (( (ptr) gf←c0515)+106)/* var←c52632 */ ) = var←c57656;
(void) XR←ImportProcS(var←c57656, 67635970);
(void) XR←ImportProcS(var←c57656, 67372033);
(void) XR←ImportProcS(var←c57656, 201593601);
(void) XR←ImportProcS(var←c57656, 67378945);
var←c57656 = (word) XR←ImportInterface((word) "ImagerColorPrivate", (word) XR←GetTypeIndexS((word) (&string28)), 48);
(* (( (ptr) gf←c0515)+107)/* var←c52664 */ ) = var←c57656;
(void) XR←ImportProcS(var←c57656, 67905795);
(void) XR←ImportProcS(var←c57656, 67641090);
(void) XR←ImportProcS(var←c57656, 67642882);
(void) XR←ImportProcS(var←c57656, 67643138);
(void) XR←ImportProcS(var←c57656, 67641602);
var←c57656 = (word) XR←ImportInterface((word) "ImagerDevice", (word) XR←GetTypeIndexS((word) (&string29)), 2);
(* (( (ptr) gf←c0515)+110)/* var←c53016 */ ) = var←c57656;
(void) XR←ImportProcS(var←c57656, 69730569);
var←c57656 = (word) XR←ImportInterface((word) "ImagerDeviceProcs", (word) XR←GetTypeIndexS((word) (&string30)), 5);
(* (( (ptr) gf←c0515)+122)/* var←c56536 */ ) = var←c57656;
(void) XR←ImportProcS(var←c57656, 2359557);
var←c57656 = (word) XR←ImportInterface((word) "ImagerError", (word) XR←GetTypeIndexS((word) (&string31)), 3);
(* (( (ptr) gf←c0515)+113)/* var←c53144 */ ) = var←c57656;
var←c57656 = (word) XR←ImportInterface((word) "ImagerMaskCache", (word) XR←GetTypeIndexS((word) (&string32)), 21);
(* (( (ptr) gf←c0515)+109)/* var←c52984 */ ) = var←c57656;
(void) XR←ImportProcS(var←c57656, 67375105);
var←c57656 = (word) XR←ImportInterface((word) "ImagerPixel", (word) XR←GetTypeIndexS((word) (&string33)), 9);
(* (( (ptr) gf←c0515)+117)/* var←c53944 */ ) = var←c57656;
(void) XR←ImportProcS(var←c57656, 2361350);
(void) XR←ImportProcS(var←c57656, 68420869);
(void) XR←ImportProcS(var←c57656, 262657);
(void) XR←ImportProcS(var←c57656, 67633410);
var←c57656 = (word) XR←ImportInterface((word) "ImagerPixelArray", (word) XR←GetTypeIndexS((word) (&string34)), 13);
(* (( (ptr) gf←c0515)+120)/* var←c54360 */ ) = var←c57656;
(void) XR←ImportProcS(var←c57656, 67633922);
(void) XR←ImportProcS(var←c57656, 2623240);
var←c57656 = (word) XR←ImportInterface((word) "ImagerRaster", (word) XR←GetTypeIndexS((word) (&string35)), 13);
(* (( (ptr) gf←c0515)+111)/* var←c53048 */ ) = var←c57656;
(void) XR←ImportProcS(var←c57656, 67371009);
(void) XR←ImportProcS(var←c57656, 67371521);
(void) XR←ImportProcS(var←c57656, 1312514);
(void) XR←ImportProcS(var←c57656, 68419845);
var←c57656 = (word) XR←ImportInterface((word) "ImagerSample", (word) XR←GetTypeIndexS((word) (&string36)), 60);
(* (( (ptr) gf←c0515)+115)/* var←c53624 */ ) = var←c57656;
(void) XR←ImportProcS(var←c57656, 2370311);
(void) XR←ImportProcS(var←c57656, 1324037);
(void) XR←ImportProcS(var←c57656, 1062404);
(void) XR←ImportProcS(var←c57656, 2370822);
(void) XR←ImportProcS(var←c57656, 1321220);
(void) XR←ImportProcS(var←c57656, 67896579);
(void) XR←ImportProcS(var←c57656, 788739);
(void) XR←ImportProcS(var←c57656, 268801);
(void) XR←ImportProcS(var←c57656, 262913);
(void) XR←ImportProcS(var←c57656, 70259976);
(void) XR←ImportProcS(var←c57656, 67371521);
(void) XR←ImportProcS(var←c57656, 68686339);
(void) XR←ImportProcS(var←c57656, 68685571);
(void) XR←ImportProcS(var←c57656, 1050372);
(void) XR←ImportProcS(var←c57656, 267009);
(void) XR←ImportProcS(var←c57656, 68161027);
var←c57656 = (word) XR←ImportInterface((word) "ImagerTransformation", (word) XR←GetTypeIndexS((word) (&string37)), 55);
(* (( (ptr) gf←c0515)+108)/* var←c52888 */ ) = var←c57656;
(void) XR←ImportProcS(var←c57656, 270806278);
(void) XR←ImportProcS(var←c57656, 68160004);
(void) XR←ImportProcS(var←c57656, 67371777);
var←c57656 = (word) XR←ImportInterface((word) "MaskWithColor", (word) XR←GetTypeIndexS((word) (&string38)), 7);
(* (( (ptr) gf←c0515)+116)/* var←c53880 */ ) = var←c57656;
(void) XR←ImportProcS(var←c57656, 2621706);
(void) XR←ImportProcS(var←c57656, 67633154);
var←c57656 = (word) XR←ImportInterface((word) "Real", (word) XR←GetTypeIndexS((word) (&string39)), 11);
(* (( (ptr) gf←c0515)+118)/* var←c54008 */ ) = var←c57656;
(void) XR←ImportProcS(var←c57656, 67371521);
var←c57656 = (word) XR←ImportInterface((word) "SF", (word) XR←GetTypeIndexS((word) (&string40)), 19);
(* (( (ptr) gf←c0515)+121)/* var←c54968 */ ) = var←c57656;
(void) XR←ImportProcS(var←c57656, 270012418);
(void) XR←ImportProcS(var←c57656, 135270145);
(void) XR←ImportProcS(var←c57656, 69210370);
(void) XR←ImportProcS(var←c57656, 68160769);
var←c57656 = (word) XR←ImportInterface((word) "ImagerSwitches", (word) XR←GetTypeIndexS((word) (&string41)), 8);
(* (( (ptr) gf←c0515)+105)/* var←c52568 */ ) = var←c57656;
(void) XR←ImportProcS(var←c57656, 68157444);
var←c57656 = (word) XR←ExportInterface((word) "ImagerHighlightContext", (word) XR←GetTypeIndexS((word) (&string42)), 4);
(* (( (ptr) gf←c0515)+123)/* var←c57688 */ ) = var←c57656;
(void) XR←ExportVar(var←c57656, 0, (word) (( (bPt) gf←c0515)+16)/* classCode←v3784 */ );
(void) XR←ExportProcS(var←c57656, (word) (( (bPt) gf←c0515)+336)/* var←c52312 */ , 69206278, (word) "Create");
(void) XR←ExportProcS(var←c57656, (word) (( (bPt) gf←c0515)+328)/* var←c52280 */ , 524802, (word) "SetSampleMap");
(void) XR←ExportProcS(var←c57656, (word) (( (bPt) gf←c0515)+320)/* var←c52248 */ , 67371777, (word) "GetSampleMap");
var←c57656 = (word) XR←ExportInterface((word) "ImagerHighlightContextBackdoor", (word) XR←GetTypeIndexS((word) (&string43))
, 1);
(* (( (ptr) gf←c0515)+123)/* var←c57688 */ ) = var←c57656;
(void) XR←ExportProcS(var←c57656, (word) (( (bPt) gf←c0515)+312)/* var←c52216 */ , 524290, (word) "SetColorLookupTable");
}
static void ImagerHighlightContextImpl←P0(formal←c068, formal←c061)
word formal←c068;
word formal←c061;
{
register ptr gf←c57720 = (ptr) &globalframe;
/* ImagerHighlightContextImpl: */
SOURCE(377, 30248)
(* (( (hPt) gf←c57720)+185) ) = 257;
(* (( (ptr) gf←c57720)+93) ) = 33686018;
(* (( (ptr) gf←c57720)+94) ) = 50529027;
(* (( (ptr) gf←c57720)+95) ) = 50529027;
(* (( (ptr) gf←c57720)+96) ) = 67372036;
(* (( (ptr) gf←c57720)+97) ) = 67372036;
(* (( (ptr) gf←c57720)+98) ) = 67372036;
(* (( (ptr) gf←c57720)+99) ) = 67372036;
(* (( (bPt) gf←c57720)+400) ) = 5;
(* (( (ptr) gf←c57720)+101) ) = 2147483648;
(* (( (ptr) gf←c57720)+102) ) = 2147483648;
(* (( (ptr) gf←c57720)+103) ) = 2147483647;
(* (( (ptr) gf←c57720)+104) ) = 2147483647;
SOURCE(911, 35)
(* (( (ptr) gf←c57720)+4)/* classCode←v3784 */ ) = (* (( (ptr) gf←c57720)+33) );
SOURCE(6181, 145)
{
word pd44;
word idx45;
pd44 = (* (( (ptr) (* (( (ptr) gf←c57720)+105)/* var←c52568 */ ))+4) );
(* (( (ptr) gf←c57720)+5)/* ignoreHighlightSetScreen←v4680 */ ) = (
idx45 = (word) ((word) ( *( (fPt) ((* (ptr) pd44 ))))(7, (* (( (ptr) gf←c57720)+31) ), (* (( (ptr) gf←c57720)+29) ), 0, pd44)
- 7),
BCK(idx45, 1)
);
};
SOURCE(11179, 124)
{
word var←c52600;
{
word pd46;
pd46 = (* (( (ptr) (* (( (ptr) gf←c57720)+106)/* var←c52632 */ ))+35) );
var←c52600 = (word) ( *( (fPt) ((* (ptr) pd46 ))))(255, pd46);
};
{
word pd47;
pd47 = (* (( (ptr) (* (( (ptr) gf←c57720)+107)/* var←c52664 */ ))+37) );
(* (( (ptr) gf←c57720)+6)/* colorSpaceCMYK←v4764 */ ) = (word) ( *( (fPt) ((* (ptr) pd47 ))))(var←c52600, 5, pd47);
};
};
SOURCE(11305, 20)
{
word var←c52696;
word var←c52728;
var←c52696 = XR←NewObject(8, (* (( (ptr) gf←c57720)+22) ));
var←c52728 = var←c52696;
(* (ptr) var←c52728 ) = 4;
(* (( (ptr) var←c52728)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c57720)+22) ));
var←c52728 = (* (( (ptr) var←c52728)+1) );
(* (ptr) var←c52728 ) = 3;
(* (( (ptr) var←c52728)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c57720)+22) ));
var←c52728 = (* (( (ptr) var←c52728)+1) );
(* (ptr) var←c52728 ) = 1;
(* (( (ptr) var←c52728)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c57720)+22) ));
var←c52728 = (* (( (ptr) var←c52728)+1) );
(* (( (ptr) gf←c57720)+7)/* allowedColorSpaces←v4792 */ ) = var←c52696;
};
SOURCE(11399, 21)
{
word var←c52760;
word var←c52792;
var←c52760 = XR←NewObject(8, (* (( (ptr) gf←c57720)+22) ));
var←c52792 = var←c52760;
(* (ptr) var←c52792 ) = 4;
(* (( (ptr) var←c52792)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c57720)+22) ));
var←c52792 = (* (( (ptr) var←c52792)+1) );
(* (ptr) var←c52792 ) = (* (( (ptr) gf←c57720)+6)/* colorSpaceCMYK←v4764 */ );
(* (( (ptr) var←c52792)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c57720)+22) ));
var←c52792 = (* (( (ptr) var←c52792)+1) );
(* (ptr) var←c52792 ) = 1;
(* (( (ptr) var←c52792)+1) ) = XR←NewObject(8, (* (( (ptr) gf←c57720)+22) ));
var←c52792 = (* (( (ptr) var←c52792)+1) );
(* (( (ptr) gf←c57720)+8)/* allowedColorSpaces2←v4820 */ ) = var←c52760;
};
SOURCE(25785, 51)
(* (( (ptr) gf←c57720)+9)/* expandArray2←v5268 */ ) = (word) MakeExpandArray2←P1500();
SOURCE(30139, 324)
{
word var←c52824;
var←c52824 = XR←NewObject(60, (* (( (ptr) gf←c57720)+23) ));
(* (ptr) var←c52824 ) = (word) (( (bPt) gf←c57720)+256)/* var←c51992 */ ;
(* (( (ptr) var←c52824)+2) ) = (word) (( (bPt) gf←c57720)+264)/* var←c52024 */ ;
(* (( (ptr) var←c52824)+3) ) = (word) (( (bPt) gf←c57720)+176)/* var←c51672 */ ;
(* (( (ptr) var←c52824)+4) ) = XR←CheckProc(0);
(* (( (ptr) var←c52824)+5) ) = (word) (( (bPt) gf←c57720)+168)/* var←c51640 */ ;
(* (( (ptr) var←c52824)+6) ) = XR←CheckProc(0);
(* (( (ptr) var←c52824)+7) ) = (word) (( (bPt) gf←c57720)+160)/* var←c51608 */ ;
(* (( (ptr) var←c52824)+8) ) = XR←CheckProc(0);
(* (( (ptr) var←c52824)+9) ) = XR←CheckProc(0);
(* (( (ptr) var←c52824)+10) ) = XR←CheckProc(0);
(* (( (ptr) var←c52824)+11) ) = XR←CheckProc(0);
(* (( (ptr) var←c52824)+12) ) = (word) (( (bPt) gf←c57720)+280)/* var←c52088 */ ;
(* (( (ptr) var←c52824)+13) ) = XR←CheckProc(0);
(* (( (ptr) gf←c57720)+10)/* deviceClass←v5380 */ ) = var←c52824;
};
SOURCE(30466, 49)
(* (( (ptr) gf←c57720)+11)/* contextClass←v5408 */ ) = (word) CreateClass←P1620();
}
static word Create←P60(deviceSpaceSize←v6500, scanMode←v6528, surfaceUnitsPerInch←v6556, pixelUnits←v6584, fontCacheName←v6612, highlight←v6640)
W2 deviceSpaceSize←v6500;
word scanMode←v6528;
W2 surfaceUnitsPerInch←v6556;
word pixelUnits←v6584;
word fontCacheName←v6612;
word highlight←v6640;
{
register ptr gf←c57752 = (ptr) &globalframe;
word var←c6684;
word data←v10392;
word deviceParm←v10420;
word context←v10448;
/* Create: */
SOURCE(3127, 970)
SOURCE(3347, 73)
{
word var←c52856;
word var←c52920;
{
word pd48;
pd48 = (* (( (ptr) (* (( (ptr) gf←c57752)+108)/* var←c52888 */ ))+7) );
var←c52856 = (word) ( *( (fPt) ((* (ptr) pd48 ))))((* (ptr) (&fc49) ), pd48);
};
var←c52920 = XR←NewObject(84, (* (( (ptr) gf←c57752)+26) ));
(* (( (ptr) var←c52920)+3) ) = (* (ptr) &fc50 );
(* (( (ptr) var←c52920)+4) ) = (* (ptr) &fc50 );
(* (( (ptr) var←c52920)+5) ) = (* (ptr) &fc50 );
(* (( (ptr) var←c52920)+6) ) = (* (ptr) &fc50 );
(* (( (ptr) var←c52920)+19) ) = var←c52856;
data←v10392 = var←c52920;
};
SOURCE(3422, 320)
{
word var←c52952;
{
word pd51;
if ((fontCacheName←v6612 == 0)) {
var←c52952 = 0;
}
else {
pd51 = (* (( (ptr) (* (( (ptr) gf←c57752)+109)/* var←c52984 */ ))+20) );
var←c52952 = (word) ( *( (fPt) ((* (ptr) pd51 ))))(fontCacheName←v6612, pd51);
};
};
{
word pd52;
word idx53;
word idx54;
pd52 = (* (( (ptr) (* (( (ptr) gf←c57752)+110)/* var←c53016 */ ))+5) );
deviceParm←v10420 = (word) ( *( (fPt) ((* (ptr) pd52 ))))((* (( (ptr) gf←c57752)+10)/* deviceClass←v5380 */ ), (
idx53 = (word) deviceSpaceSize←v6500.f0,
SGNCK(idx53)
), (
idx54 = (word) deviceSpaceSize←v6500.f1,
SGNCK(idx54)
), scanMode←v6528, surfaceUnitsPerInch←v6556, 1
, var←c52952, 0, 0, pd52);
};
};
SOURCE(3744, 145)
{
word pd55;
pd55 = (* (( (ptr) (* (( (ptr) gf←c57752)+111)/* var←c53048 */ ))+5) );
context←v10448 = (word) ( *( (fPt) ((* (ptr) pd55 ))))((* (( (ptr) gf←c57752)+11)/* contextClass←v5408 */ ), (* (( (ptr) gf←c57752)+10)
/* deviceClass←v5380 */ ), deviceParm←v10420, data←v10392, pixelUnits←v6584, pd55);
};
SOURCE(3891, 33)
(void) SetDataHighlight←P300(data←v10392, highlight←v6640);
SOURCE(3926, 97)
{
W3 var←c53080;
{
word pd56;
pd56 = (* (( (ptr) (* (( (ptr) gf←c57752)+112)/* var←c53112 */ ))+6) );
(void) ( *( (fPt) ((* (ptr) pd56 ))))((word) &var←c53080, (* (ptr) &fc57 ), (* (ptr) &fc58 ), (* (ptr) &fc59 ), (* (ptr) &fc60 ), 16
, 255, 0, 0, pd56);
};
(void) SetDataBrick←P360(data←v10392, var←c53080);
};
SOURCE(4025, 54)
{
word pd61;
pd61 = (* (( (ptr) (* (( (ptr) gf←c57752)+111)/* var←c53048 */ ))+11) );
(void) ( *( (fPt) ((* (ptr) pd61 ))))(context←v10448, (* (W4Pt) (( (ptr) gf←c57752)+88)/* var←c52408 */ ), pd61);
};
SOURCE(4081, 16)
return(context←v10448);
}
static void SetSampleMap←P120(context←v6744, sampleMap←v6772)
word context←v6744;
word sampleMap←v6772;
{
register ptr gf←c57784 = (ptr) &globalframe;
word data←v10492;
/* SetSampleMap: */
SOURCE(4103, 369)
SOURCE(4181, 57)
{
word pd62;
pd62 = (* (( (ptr) (* (( (ptr) gf←c57784)+111)/* var←c53048 */ ))+6) );
data←v10492 = XR←Narrow((* (( (ptr) ( *( (fPt) ((* (ptr) pd62 ))))(context←v6744, pd62))+7) ), (* (( (ptr) gf←c57784)+26)
));
};
SOURCE(4240, 132)
if (((* (( (ptr) sampleMap←v6772)+5) ) != 2)) {
SOURCE(4279, 93)
{
W3 var←c088;
var←c088.f0 = 1;
var←c088.f1 = (* (( (ptr) gf←c57784)+28) );
var←c088.f2 = 0;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c57784)+113)/* var←c53144 */ ))+4) ), (word) &var←c088);
};
};
SOURCE(4374, 26)
(* (ptr) data←v10492 ) = sampleMap←v6772;
SOURCE(4402, 70)
{
word pd63;
pd63 = (* (( (ptr) (* (( (ptr) gf←c57784)+111)/* var←c53048 */ ))+11) );
(void) ( *( (fPt) ((* (ptr) pd63 ))))(context←v6744, (* (W4Pt) sampleMap←v6772 ), pd63);
};
}
static word GetSampleMap←P180(context←v6832)
word context←v6832;
{
register ptr gf←c57816 = (ptr) &globalframe;
word var←c6876;
word data←v10536;
/* GetSampleMap: */
SOURCE(4478, 158)
SOURCE(4554, 57)
{
word pd64;
pd64 = (* (( (ptr) (* (( (ptr) gf←c57816)+111)/* var←c53048 */ ))+6) );
data←v10536 = XR←Narrow((* (( (ptr) ( *( (fPt) ((* (ptr) pd64 ))))(context←v6832, pd64))+7) ), (* (( (ptr) gf←c57816)+26)
));
};
SOURCE(4613, 23)
return((* (ptr) data←v10536 ));
}
static void SetColorLookupTable←P240(context←v6936, colorLookupTable←v6964)
word context←v6936;
word colorLookupTable←v6964;
{
register ptr gf←c57848 = (ptr) &globalframe;
/* SetColorLookupTable: */
SOURCE(4642, 242)
SOURCE(4746, 138)
{
word var←c53208;
{
word pd65;
pd65 = (* (( (ptr) (* (( (ptr) gf←c57848)+111)/* var←c53048 */ ))+6) );
var←c53208 = (* (( (ptr) ( *( (fPt) ((* (ptr) pd65 ))))(context←v6936, pd65))+7) );
};
if ((var←c53208 == 0)) {
goto lab←L100000;
};
if (((* (( (ptr) gf←c57848)+26) ) == XR←GetReferentType(var←c53208))) {
{
word data←v10580;
data←v10580 = var←c53208;
SOURCE(4816, 40)
(* (( (ptr) data←v10580)+2) ) = colorLookupTable←v6964;
SOURCE(4858, 26)
(* (( (ptr) data←v10580)+8) ) = 0;
};
}
else {
lab←L100000: ;
};
};
}
static void SetDataHighlight←P300(data←v7024, highlight←v7052)
word data←v7024;
word highlight←v7052;
{
register ptr gf←c57880 = (ptr) &globalframe;
/* SetDataHighlight: */
SOURCE(4900, 315)
SOURCE(4973, 26)
(* (( (ptr) data←v7024)+1) ) = highlight←v7052;
SOURCE(5001, 104)
{
W3 var←c53272;
{
word var←c53240;
{
word pd66;
pd66 = (* (( (ptr) (* (( (ptr) gf←c57880)+106)/* var←c52632 */ ))+8) );
var←c53240 = (word) ( *( (fPt) ((* (ptr) pd66 ))))(highlight←v7052, pd66);
};
{
word pd67;
pd67 = (* (( (ptr) (* (( (ptr) gf←c57880)+106)/* var←c52632 */ ))+23) );
(void) ( *( (fPt) ((* (ptr) pd67 ))))((word) &var←c53272, var←c53240, pd67);
};
};
(* (( (ptr) data←v7024)+5) ) = var←c53272.f2;
(* (( (ptr) data←v7024)+4) ) = var←c53272.f1;
(* (( (ptr) data←v7024)+3) ) = var←c53272.f0;
};
SOURCE(5107, 45)
{
word x69;
word x70;
float tf71;
(* (( (ptr) data←v7024)+6) ) = XR←RealPwr((
tf71 = (
x69 = XR←RealPwr((* (( (ptr) data←v7024)+4) ), (* (ptr) &fc68 )), *(float*)&x69
) + (
x70 = XR←RealPwr((* (( (ptr) data←v7024)+5) ), (* (ptr) &fc68 )), *(float*)&x70
), *(word*)&tf71
), (* (ptr) &fc68 ));
};
SOURCE(5154, 61)
(* (( (ptr) data←v7024)+7) ) = (word) NewColorOperatorHighlight←P420(highlight←v7052);
}
static void SetDataBrick←P360(data←v7112, brick←v7140)
word data←v7112;
W3 brick←v7140;
{
/* SetDataBrick: */
SOURCE(5221, 163)
SOURCE(5283, 30)
if ((brick←v7140.f0 != 255)) {
SOURCE(5313, 5)
(void) XR←RaiseUnnamedError();
};
SOURCE(5349, 18)
(* (W3Pt) (( (ptr) data←v7112)+9) ) = brick←v7140;
SOURCE(5369, 15)
(* (( (ptr) data←v7112)+16) ) = 0;
}
static word NewColorOperatorHighlight←P420(formal←c0581)
word formal←c0581;
{
W7 var←c57912;
/* declaration of highlight←v7200 skipped */
register ptr gf←c57944 = (ptr) &globalframe;
word co←v7244;
/* declaration of var←c53304 skipped */
var←c57912.f4/* highlight←v7200 */ = formal←c0581;
/* NewColorOperatorHighlight: */
SOURCE(5390, 320)
{
word tmpAddr72;
tmpAddr72 = (word) (( (ptr) &var←c57912)+5)/* var←c53304 */ ;
(* (ptr) tmpAddr72 ) = ( ((word) (fPt) mapper←P1728) );
(* (( (ptr) tmpAddr72) + 1) ) = 1;
};
SOURCE(5390, 320)
co←v7244 = 0;
SOURCE(5663, 47)
{
word pd73;
pd73 = (* (( (ptr) (* (( (ptr) gf←c57944)+106)/* var←c52632 */ ))+15) );
co←v7244 = (word) ( *( (fPt) ((* (ptr) pd73 ))))(3, (word) (( (bPt) &var←c57912)+20)/* var←c53304 */ , pd73);
};
SOURCE(5390, 320)
return(co←v7244);
}
static word mapper←P1728(s←v10700, formal←c58008)
word s←v10700;
word formal←c58008;
{
register ptr gf←c57976 = (ptr) &globalframe;
word var←c10744;
formal←c58008 = (formal←c58008 - 20);
/* mapper: */
SOURCE(5500, 160)
SOURCE(5578, 82)
{
word var←c53336;
var←c53336 = s←v10700;
if ((var←c53336 == 0)) {
return((* (ptr) (* (( (ptr) (* (( (ptr) gf←c57976)+114)/* var←c53368 */ ))+55) ) ));
}
else {
if ((var←c53336 == 1)) {
return((* (( (ptr) formal←c58008)+4) ));
}
else {
return((* (ptr) (* (( (ptr) (* (( (ptr) gf←c57976)+114)/* var←c53368 */ ))+54) ) ));
};
};
};
}
static word HiliteGetBufferColorOperator←P480(device←v7304)
word device←v7304;
{
register ptr gf←c58040 = (ptr) &globalframe;
word var←c7348;
/* HiliteGetBufferColorOperator: */
SOURCE(5716, 183)
SOURCE(5796, 103)
{
word var←c53400;
var←c53400 = (* (( (ptr) device←v7304)+7) );
if ((var←c53400 == 0)) {
goto lab←L100001;
};
if (((* (( (ptr) gf←c58040)+26) ) == XR←GetReferentType(var←c53400))) {
{
word data←v10772;
data←v10772 = var←c53400;
SOURCE(5841, 32)
return((* (( (ptr) data←v10772)+7) ));
};
}
else {
lab←L100001: ;
SOURCE(5887, 12)
return(0);
};
};
}
static word PixelMapWords←P540(pm←v7420)
word pm←v7420;
{
register ptr gf←c58072 = (ptr) &globalframe;
word words←v7464;
/* PixelMapWords: */
SOURCE(5933, 233)
SOURCE(5933, 233)
words←v7464 = 0;
SOURCE(5997, 169)
{
register word i←v10816 = 0;
register word noName←c53432;
noName←c53432 = (* (( (ptr) pm←v7420)+5) );
if ((i←v10816 >= noName←c53432)) {
goto lab←L100002;
};
lab←L100005: ;
SOURCE(6038, 128)
{
W2 var←c53464;
word var←c53560;
word var←c0555;
{
W2 var←c53496;
word map←v50888;
{
word limit74;
map←v50888 = (* ((( (ptr) pm←v7420)+6)+(
limit74 = (* (( (ptr) pm←v7420)+5) ),
BCK(0, limit74)
)) );
};
{
W4 b←v35348;
b←v35348 = (* (W4Pt) map←v50888 );
var←c53496.f0 = (b←v35348.f2 - b←v35348.f0);
var←c53496.f1 = (b←v35348.f3 - b←v35348.f1);
};
var←c53464 = var←c53496;
};
{
word var←c53592;
word map←v51464;
{
word limit75;
map←v51464 = (* ((( (ptr) pm←v7420)+6)+(
limit75 = (* (( (ptr) pm←v7420)+5) ),
BCK(0, limit75)
)) );
};
var←c53592 = (* (( (ptr) map←v51464)+5) );
var←c53560 = var←c53592;
};
{
word pd76;
pd76 = (* (( (ptr) (* (( (ptr) gf←c58072)+115)/* var←c53624 */ ))+18) );
var←c0555 = (word) ( *( (fPt) ((* (ptr) pd76 ))))(var←c53464, var←c53560, 0, pd76);
};
words←v7464 = (words←v7464 + var←c0555);
};
i←v10816 = (i←v10816 + 1);
if ((i←v10816 < noName←c53432)) {
goto lab←L100005;
};
lab←L100002: ;
};
SOURCE(5933, 233)
return(words←v7464);
}
static void HiliteSetHalftoneProperties←P600(device←v7544, halftoneProperties←v7572)
word device←v7544;
word halftoneProperties←v7572;
{
register ptr gf←c58104 = (ptr) &globalframe;
word data←v10860;
W3 brick←v10888;
word var←c53656;
word switch←v50840;
/* HiliteSetHalftoneProperties: */
SOURCE(6329, 529)
SOURCE(6449, 32)
data←v10860 = XR←Narrow((* (( (ptr) device←v7544)+7) ), (* (( (ptr) gf←c58104)+26) ));
SOURCE(6483, 37)
brick←v10888 = (* (W3Pt) (( (ptr) data←v10860)+9) );
SOURCE(6522, 65)
switch←v50840 = ((* (( (ptr) gf←c58104)+5)/* ignoreHighlightSetScreen←v4680 */ ) + 7);
var←c53656 = (unsigned) ((* (( (ptr) (* (( (ptr) (* (( (ptr) gf←c58104)+105)/* var←c52568 */ ))+10) ))+switch←v50840) ) != 0);
if ((0 != var←c53656)) {
SOURCE(6581, 6)
return;
};
SOURCE(6589, 71)
if ((halftoneProperties←v7572 != 0)) {
SOURCE(6622, 38)
brick←v10888 = (* (W3Pt) (( (ptr) halftoneProperties←v7572)+2) );
};
SOURCE(6662, 152)
{
register word tail←v10932;
tail←v10932 = halftoneProperties←v7572;
lab←L100012: ;
if ((tail←v10932 != 0)) {
}
else {
goto lab←L100009;
};
SOURCE(6755, 59)
if (((* (( (ptr) tail←v10932)+1) ) == 0)) {
SOURCE(6790, 24)
brick←v10888 = (* (W3Pt) (( (ptr) tail←v10932)+2) );
SOURCE(6816, 5)
goto lab←L100010;
};
tail←v10932 = (* (( (ptr) tail←v10932)+6) );
goto lab←L100012;
lab←L100009: ;
lab←L100010: ;
};
SOURCE(6833, 25)
(void) SetDataBrick←P360(data←v10860, brick←v10888);
}
static void HiliteSetColor←P660(device←v7632, color←v7660, viewToDevice←v7688)
word device←v7632;
word color←v7660;
word viewToDevice←v7688;
{
W14 var←c58136;
register ptr gf←c58168 = (ptr) &globalframe;
/* declaration of var←c53688 skipped */
/* declaration of var←c53720 skipped */
/* declaration of data←v10976 skipped */
word sampled←v11004 = 0;
word allowed←v11032 = 3221225472;
/* HiliteSetColor: */
SOURCE(6865, 4308)
{
word tmpAddr77;
tmpAddr77 = (word) (( (ptr) &var←c58136)+4)/* var←c53688 */ ;
(* (ptr) tmpAddr77 ) = ( ((word) (fPt) Compare←P2328) );
(* (( (ptr) tmpAddr77) + 1) ) = 1;
};
{
word tmpAddr78;
tmpAddr78 = (word) (( (ptr) &var←c58136)+6)/* var←c53720 */ ;
(* (ptr) tmpAddr78 ) = ( ((word) (fPt) Gen←P2076) );
(* (( (ptr) tmpAddr78) + 1) ) = 1;
};
SOURCE(6965, 33)
(* (( (ptr) &var←c58136)+8)/* data←v10976 */ ) = XR←Narrow((* (( (ptr) device←v7632)+7) ), (* (( (ptr) gf←c58168)+26) ))
;
SOURCE(7202, 15)
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+13) ) = 0;
SOURCE(7219, 98)
if ( ( ((* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+20) ) != 0) ? (0 == (* (( (ptr) (* (( (ptr) &var←c58136)+8)
/* data←v10976 */ ))+18) )) : 0 ) ) {
SOURCE(7271, 46)
{
word var←c53752;
var←c53752 = (* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+20) );
{
word pd79;
word limit80;
pd79 = (* (( (ptr) (* (( (ptr) gf←c58168)+115)/* var←c53624 */ ))+23) );
(void) ( *( (fPt) ((* (ptr) pd79 ))))((* (((( (ptr) var←c53752)+6)+(
limit80 = (* (( (ptr) var←c53752)+5) ),
BCK(0, limit80)
))) ), pd79);
};
};
};
SOURCE(7319, 17)
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+20) ) = 0;
SOURCE(7338, 3603)
{
word var←c53784;
var←c53784 = color←v7660;
if ((var←c53784 == 0)) {
goto lab←L100013;
};
{
word var←c54456;
if ( ( ((* (ptr) var←c53784 ) == 0) ? ((* (( (ptr) var←c53784)+1) ) == 0) : 0 ) ) {
{
word color←v11076;
color←v11076 = var←c53784;
SOURCE(7399, 1436)
{
word transform←v11120;
word point←v11148;
word black←v11176;
word hilite←v11204;
word blackBit←v11260;
word blackSolid←v11288;
word hiliteBit←v11316;
word hiliteSolid←v11344;
SOURCE(7401, 91)
transform←v11120 = (word) GetColorTransform←P720((* (( (ptr) &var←c58136)+8)/* data←v10976 */ ), (* (( (ptr) color←v11076)+2)
));
SOURCE(7494, 95)
{
word pd82;
pd82 = (* (( (ptr) (* (( (ptr) gf←c58168)+107)/* var←c52664 */ ))+43) );
point←v11148 = (word) ( *( (fPt) ((* (ptr) pd82 ))))(color←v11076, transform←v11120, pd82);
};
SOURCE(7591, 22)
{
word limit83;
black←v11176 = (* ((( (ptr) point←v11148)+2)+(
limit83 = (* (( (ptr) point←v11148)+1) ),
BCK(0, limit83)
)) );
};
SOURCE(7615, 54)
{
word tc84;
word limit85;
if (((* (( (ptr) point←v11148)+1) ) < 2)) {
tc84 = (word) (* (ptr) &fc50 );
}
else {
tc84 = (word) (* ((( (ptr) point←v11148)+2)+(
/*1*/ limit85 = (* (( (ptr) point←v11148)+1) ),
/*1*/ BCK(1, limit85)
/*1*/ )) );
};
hilite←v11204 = tc84;
};
SOURCE(7694, 44)
{
word x86;
word x88;
word x90;
blackBit←v11260 = (unsigned) ((
x86 = black←v11176, *(float*)&x86
) > (
x88 = (* (ptr) &fc87 ), *(float*)&x88
) - (
x90 = (* (ptr) &fc89 ), *(float*)&x90
));
};
SOURCE(7740, 50)
{
word x91;
word x92;
blackSolid←v11288 = (unsigned) ( (0 != blackBit←v11260) ? 1 : ((
x91 = black←v11176, *(float*)&x91
) < (
x92 = (* (ptr) &fc89 ), *(float*)&x92
)) ) ;
};
SOURCE(7792, 46)
{
word x93;
word x94;
word x95;
hiliteBit←v11316 = (unsigned) ((
x93 = hilite←v11204, *(float*)&x93
) > (
x94 = (* (ptr) &fc87 ), *(float*)&x94
) - (
x95 = (* (ptr) &fc89 ), *(float*)&x95
));
};
SOURCE(7840, 53)
{
word x96;
word x97;
hiliteSolid←v11344 = (unsigned) ( (0 != hiliteBit←v11316) ? 1 : ((
x96 = hilite←v11204, *(float*)&x96
) < (
x97 = (* (ptr) &fc89 ), *(float*)&x97
)) ) ;
};
SOURCE(7895, 935)
if (((0 != blackSolid←v11288) && (0 != hiliteSolid←v11344))) {
SOURCE(7938, 193)
SOURCE(7940, 20)
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+13) ) = 1;
SOURCE(7962, 50)
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+14) ) = (((word) blackBit←v11260 << 1) + hiliteBit←v11316);
SOURCE(8014, 115)
{
word var←c53816;
{
word var←c0556;
word var←c53848;
word map←v51416;
map←v51416 = (* (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ) );
var←c53848 = (* (( (ptr) map←v51416)+5) );
var←c0556 = (var←c0556 & 4294967040) | ((word) (word) (* ((( (bPt) gf←c58168)+368)/* var←c52472 */ +var←c53848) ));
{
/*1*/ word idx98;
/*1*/ var←c53816 = (unsigned) (
/*1*/ idx98 = (word) (unsigned) (var←c0556 & 0377),
/*1*/ BCK(idx98, 6)
/*1*/ );
/*1*/ };
};
{
word pd99;
pd99 = (* (( (ptr) (* (( (ptr) gf←c58168)+116)/* var←c53880 */ ))+4) );
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+15) ) = (word) ( *( (fPt) ((* (ptr) pd99 ))))((* (( (ptr) (* (
/*1*/ ( (ptr) &var←c58136)+8)/* data←v10976 */ ))+14) ), var←c53816, pd99);
};
};
}
else {
SOURCE(8138, 694)
{
/* declaration of box←v11388 skipped */
/* declaration of b←v11416 skipped */
SOURCE(8140, 55)
{
word map←v51176;
map←v51176 = (* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+10) );
(* (W4Pt) (( (ptr) &var←c58136)+9)/* box←v11388 */ ) = (* (W4Pt) map←v51176 );
};
SOURCE(8197, 109)
{
word pd100;
word idx101;
pd100 = (* (( (ptr) (* (( (ptr) gf←c58168)+117)/* var←c53944 */ ))+5) );
(* (( (ptr) &var←c58136)+13)/* b←v11416 */ ) = (word) ( *( (fPt) ((* (ptr) pd100 ))))(2, (
/*1*/ idx101 = (word) ((* (( (ptr) &var←c58136)+12) ) - (* (( (ptr) &var←c58136)+10) )),
/*1*/ SGNCK(idx101)
/*1*/ ), pd100);
};
SOURCE(8466, 49)
{
word var←c53976;
{
/*1*/ word pd102;
/*1*/ word idx103;
/*1*/ pd102 = (* (( (ptr) (* (( (ptr) gf←c58168)+118)/* var←c54008 */ ))+6) );
/*1*/ var←c53976 = (
/*1*/ idx103 = (word) ( *( (fPt) ((* (ptr) pd102 ))))(black←v11176, pd102),
/*1*/ SGNCK(idx103)
/*1*/ );
/*1*/ };
{
/*1*/ word pd104;
/*1*/ word limit105;
/*1*/ pd104 = (* (( (ptr) (* (( (ptr) gf←c58168)+115)/* var←c53624 */ ))+11) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd104 ))))((* ((( (ptr) (* (( (ptr) &var←c58136)+13)/* b←v11416 */ ))+2)+(
/*1*/ limit105 = (* (( (ptr) (* (( (ptr) &var←c58136)+13)/* b←v11416 */ ))+1) ),
/*1*/ BCK(0, limit105)
/*1*/ )) ), var←c53976, 0, 2147483647, pd104);
/*1*/ };
};
SOURCE(8517, 50)
{
word var←c54040;
{
/*1*/ word pd106;
/*1*/ word idx107;
/*1*/ pd106 = (* (( (ptr) (* (( (ptr) gf←c58168)+118)/* var←c54008 */ ))+6) );
/*1*/ var←c54040 = (
/*1*/ idx107 = (word) ( *( (fPt) ((* (ptr) pd106 ))))(hilite←v11204, pd106),
/*1*/ SGNCK(idx107)
/*1*/ );
/*1*/ };
{
/*1*/ word pd108;
/*1*/ word limit109;
/*1*/ pd108 = (* (( (ptr) (* (( (ptr) gf←c58168)+115)/* var←c53624 */ ))+11) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd108 ))))((* ((( (ptr) (* (( (ptr) &var←c58136)+13)/* b←v11416 */ ))+2)+(
/*1*/ limit109 = (* (( (ptr) (* (( (ptr) &var←c58136)+13)/* b←v11416 */ ))+1) ),
/*1*/ BCK(1, limit109)
/*1*/ )) ), var←c54040, 0, 2147483647, pd108);
/*1*/ };
};
SOURCE(8569, 16)
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+13) ) = 2;
SOURCE(8587, 129)
if (((* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+16) ) == 0)) {
SOURCE(8613, 103)
{
/*1*/ W4 var←c54072;
/*1*/ {
/*1*/ W4 var←c54104;
/*1*/ word map←v51128;
/*1*/ map←v51128 = (* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+10) );
/*1*/ var←c54104 = (* (W4Pt) map←v51128 );
/*1*/ var←c54072 = var←c54104;
/*1*/ };
/*1*/ {
/*1*/ word pd110;
/*1*/ pd110 = (* (( (ptr) (* (( (ptr) gf←c58168)+115)/* var←c53624 */ ))+19) );
/*1*/ (* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+16) ) = (word) ( *( (fPt) ((* (ptr) pd110 ))))(var←c54072, 2, 0, pd110)
/*1*/ ;
/*1*/ };
/*1*/ };
};
SOURCE(8721, 72)
(void) HiliteHalftone←P1260((* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+16) ), (word) (( (bPt) &var←c58136)+24)
/* var←c53720 */ , (* (W4Pt) (( (ptr) &var←c58136)+9)/* box←v11388 */ ), (* (W3Pt) (( (ptr) (* (( (ptr) &var←c58136)+8)
/*1*/ /* data←v10976 */ ))+9) ));
SOURCE(8795, 35)
{
word pd111;
pd111 = (* (( (ptr) (* (( (ptr) gf←c58168)+117)/* var←c53944 */ ))+6) );
(void) ( *( (fPt) ((* (ptr) pd111 ))))((* ((( (ptr) &var←c58136)+13)/* b←v11416 */ ) ), pd111);
};
};
};
};
};
goto endif081;
};
if (((
var←c54456 = (* (ptr) var←c53784 )
) == 1)) {
{
/* declaration of color←v11680 skipped */
(* (( (ptr) &var←c58136)+9)/* color←v11680 */ ) = var←c53784;
SOURCE(8861, 1382)
{
word cache←v11724;
/* declaration of pa←v11752 skipped */
word um←v11780;
word colorOperator←v11808;
SOURCE(8863, 56)
{
word pd112;
pd112 = (* (( (ptr) (* (( (ptr) gf←c58168)+119)/* var←c54136 */ ))+17) );
cache←v11724 = (word) ( *( (fPt) ((* (ptr) pd112 ))))(pd112);
};
SOURCE(8921, 25)
(* (( (ptr) &var←c58136)+10)/* pa←v11752 */ ) = (* (( (ptr) (* (( (ptr) &var←c58136)+9)/* color←v11680 */ ))+1) );
SOURCE(8948, 29)
um←v11780 = (* (( (ptr) (* (( (ptr) &var←c58136)+9)/* color←v11680 */ ))+2) );
SOURCE(8979, 50)
colorOperator←v11808 = (* (( (ptr) (* (( (ptr) &var←c58136)+9)/* color←v11680 */ ))+3) );
SOURCE(9031, 72)
{
word pd113;
pd113 = (* (( (ptr) (* (( (ptr) gf←c58168)+108)/* var←c52888 */ ))+14) );
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+19) ) = (word) ( *( (fPt) ((* (ptr) pd113 ))))((* (( (ptr) (* (
/*1*/ ( (ptr) &var←c58136)+10)/* pa←v11752 */ ))+4) ), (* (( (ptr) (* (( (ptr) &var←c58136)+9)/* color←v11680 */ ))+2) ), viewToDevice←v7688, 0, pd113)
;
};
SOURCE(9105, 227)
if ( ( ( (colorOperator←v11808 == (* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+7) )) ? ((* (( (ptr) (* (
( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+19) ))+9) ) == 3) : 0 ) ? (0 != (* (( (ptr) (* (( (ptr) (* (( (ptr) &var←c58136)+8)
/* data←v10976 */ ))+19) ))+8) )) : 0 ) ) {
SOURCE(9216, 22)
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+13) ) = 3;
SOURCE(9240, 20)
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+17) ) = (* (( (ptr) &var←c58136)+10)/* pa←v11752 */ );
SOURCE(9262, 32)
allowed←v11032 &= 3221225471;
SOURCE(9296, 28)
(* (ptr) (* (( (ptr) device←v7632)+6) ) ) = allowed←v11032;
SOURCE(9326, 6)
return;
};
SOURCE(9337, 20)
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+13) ) = 4;
SOURCE(9359, 14)
sampled←v11004 = 1;
SOURCE(9375, 863)
if ((0 != (* (ptr) (* (( (ptr) &var←c58136)+10)/* pa←v11752 */ ) ))) {
SOURCE(9396, 745)
{
word scd←v11880;
SOURCE(9667, 78)
{
W2 var←c0168;
word var←c0557;
{
/*1*/ word pd114;
/*1*/ pd114 = (* (( (ptr) (* (( (ptr) gf←c58168)+119)/* var←c54136 */ ))+9) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd114 ))))((word) &var←c0168, cache←v11724, (word) (( (bPt) &var←c58136)+16)/* var←c53688 */ , (* (
/*1*/ ( (ptr) gf←c58168)+32) ), pd114);
/*1*/ };
var←c0557 = var←c0168.f0;
scd←v11880 = XR←Narrow(var←c0557, (* (( (ptr) gf←c58168)+21) ));
};
SOURCE(9747, 337)
if ((scd←v11880 == 0)) {
SOURCE(9765, 321)
{
/*1*/ word pixelMap←v11924;
/*1*/ word words←v11952;
SOURCE(9767, 68)
/*1*/ pixelMap←v11924 = (word) ComputeSource←P1200((* (( (ptr) &var←c58136)+8)/* data←v10976 */ ), (* (( (ptr) &var←c58136)+9)
/*1*/ /* color←v11680 */ ), (* (( (ptr) (* (( (ptr) &var←c58136)+9)/* color←v11680 */ ))+3) ));
SOURCE(9837, 36)
/*1*/ words←v11952 = (word) PixelMapWords←P540(pixelMap←v11924);
SOURCE(9875, 123)
/*1*/ {
/*1*/ word var←c54168;
/*1*/ var←c54168 = XR←NewObject(20, (* (( (ptr) gf←c58168)+21) ));
/*1*/ (* (ptr) var←c54168 ) = (* (( (ptr) &var←c58136)+10)/* pa←v11752 */ );
/*1*/ (* (( (ptr) var←c54168)+1) ) = (* (( (ptr) (* (( (ptr) &var←c58136)+9)/* color←v11680 */ ))+3) );
/*1*/ (* (( (ptr) var←c54168)+2) ) = (* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+1) );
/*1*/ (* (( (ptr) var←c54168)+4) ) = pixelMap←v11924;
/*1*/ scd←v11880 = var←c54168;
/*1*/ };
SOURCE(10000, 84)
/*1*/ {
/*1*/ word pd115;
/*1*/ pd115 = (* (( (ptr) (* (( (ptr) gf←c58168)+119)/* var←c54136 */ ))+6) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd115 ))))(cache←v11724, scd←v11880, scd←v11880, words←v11952, (* (( (ptr) gf←c58168)+32) ), pd115)
/*1*/ ;
/*1*/ };
/*1*/ };
};
SOURCE(10089, 24)
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+20) ) = (* (( (ptr) scd←v11880)+4) );
SOURCE(10115, 24)
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+18) ) = 1;
};
}
else {
SOURCE(10150, 61)
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+20) ) = (word) ComputeSource←P1200((* (( (ptr) &var←c58136)+8)
/* data←v10976 */ ), (* (( (ptr) &var←c58136)+9)/* color←v11680 */ ), (* (( (ptr) (* (( (ptr) &var←c58136)+9)/* color←v11680 */ ))+3)
));
SOURCE(10213, 25)
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+18) ) = 0;
};
};
};
goto endif081;
};
if ((var←c54456 == 2)) {
{
word color←v12040;
color←v12040 = var←c53784;
SOURCE(10269, 394)
{
word pa←v12084;
SOURCE(10271, 25)
pa←v12084 = (* (( (ptr) color←v12040)+1) );
SOURCE(10298, 67)
if ((0 != (* (( (ptr) color←v12040)+3) ))) {
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+13) ) = 6;
}
else {
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+13) ) = 5;
};
SOURCE(10367, 14)
sampled←v11004 = 1;
SOURCE(10383, 72)
{
word pd116;
pd116 = (* (( (ptr) (* (( (ptr) gf←c58168)+108)/* var←c52888 */ ))+14) );
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+19) ) = (word) ( *( (fPt) ((* (ptr) pd116 ))))((* (( (ptr) pa←v12084)+4)
), (* (( (ptr) color←v12040)+2) ), viewToDevice←v7688, 0, pd116);
};
SOURCE(10457, 121)
{
word var←c54200;
{
W4 var←c54232;
var←c54232.f0 = 0;
var←c54232.f1 = 0;
var←c54232.f2 = (* (( (ptr) pa←v12084)+2) );
var←c54232.f3 = (* (( (ptr) pa←v12084)+3) );
{
word pd117;
pd117 = (* (( (ptr) (* (( (ptr) gf←c58168)+115)/* var←c53624 */ ))+22) );
var←c54200 = (word) ( *( (fPt) ((* (ptr) pd117 ))))(var←c54232, 1, 0, pd117);
};
};
{
word pd118;
pd118 = (* (( (ptr) (* (( (ptr) gf←c58168)+117)/* var←c53944 */ ))+9) );
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+20) ) = (word) ( *( (fPt) ((* (ptr) pd118 ))))(var←c54200, 0, 0, 0, 0, pd118)
;
};
};
SOURCE(10580, 54)
{
word var←c54264;
word var←c0558;
W2 var←c54296;
W2 var←c54328;
var←c54264 = (* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+20) );
{
word limit119;
var←c0558 = (* ((( (ptr) var←c54264)+6)+(
/*1*/ limit119 = (* (( (ptr) var←c54264)+5) ),
/*1*/ BCK(0, limit119)
/*1*/ )) );
};
var←c54296.f0 = 0;
var←c54296.f1 = 0;
var←c54328.f0 = 2147483647;
var←c54328.f1 = 2147483647;
{
word pd120;
pd120 = (* (( (ptr) (* (( (ptr) gf←c58168)+120)/* var←c54360 */ ))+11) );
(void) ( *( (fPt) ((* (ptr) pd120 ))))(pa←v12084, 0, 0, 0, var←c0558, var←c54296
, var←c54328, 0, pd120);
};
};
SOURCE(10636, 25)
(* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+18) ) = 0;
};
};
goto endif081;
};
if ( ( ((* (ptr) var←c53784 ) == 0) ? ((* (( (ptr) var←c53784)+1) ) == 1) : 0 ) ) {
{
word color←v12128;
color←v12128 = var←c53784;
SOURCE(10703, 238)
SOURCE(10739, 146)
if (((* (( (ptr) color←v12128)+5) ) == 0)) {
SOURCE(10770, 115)
{
W3 var←c0181;
var←c0181.f0 = 63;
var←c0181.f1 = (* (( (ptr) gf←c58168)+30) );
var←c0181.f2 = 0;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c58168)+113)/* var←c53144 */ ))+4) ), (word) &var←c0181);
};
};
SOURCE(10887, 54)
(void) HiliteSetColor←P660(device←v7632, (* (( (ptr) color←v12128)+5) ), viewToDevice←v7688);
};
goto endif081;
};
lab←L100013: ;
SOURCE(10960, 5)
(void) XR←RaiseUnnamedError();
goto endif081;
endif081: ;
};
};
SOURCE(10992, 73)
if (((* (( (ptr) (* (( (ptr) &var←c58136)+8)/* data←v10976 */ ))+13) ) == 1)) {
SOURCE(11023, 42)
allowed←v11032 |= 402653184;
};
SOURCE(11070, 73)
if ((0 != sampled←v11004)) {
SOURCE(11086, 57)
allowed←v11032 &= 1073741823;
};
SOURCE(11145, 28)
(* (ptr) (* (( (ptr) device←v7632)+6) ) ) = allowed←v11032;
}
static void Gen←P2076(action←v11520, formal←c58200)
word action←v11520;
word formal←c58200;
{
formal←c58200 = (formal←c58200 - 24);
/* Gen: */
SOURCE(8308, 11)
SOURCE(8383, 69)
{
register word s←v11636;
register word noName←c54488;
s←v11636 = (* (( (ptr) formal←c58200)+9) );
noName←c54488 = (* (( (ptr) formal←c58200)+11) );
if (( (int)s←v11636 >= (int)noName←c54488)) {
goto lab←L100017;
};
lab←L100020: ;
SOURCE(8427, 25)
{
W2 var←c54520;
var←c54520.f0 = s←v11636;
var←c54520.f1 = (* (( (ptr) formal←c58200)+10) );
(void) ( *( (fPt) ((* (ptr) action←v11520 ))))((* (( (ptr) formal←c58200)+13) ), var←c54520, action←v11520);
};
s←v11636 = (s←v11636 + 1);
if (( (int)s←v11636 < (int)noName←c54488)) {
goto lab←L100020;
};
lab←L100017: ;
};
}
static word Compare←P2328(argument←v39232, formal←c58264)
word argument←v39232;
word formal←c58264;
{
register ptr gf←c58232 = (ptr) &globalframe;
word good←v39276;
formal←c58264 = (formal←c58264 - 16);
/* Compare: */
SOURCE(9398, 37)
SOURCE(9437, 227)
{
word var←c54552;
var←c54552 = argument←v39232;
if ((var←c54552 == 0)) {
goto lab←L100021;
};
if (((* (( (ptr) gf←c58232)+21) ) == XR←GetReferentType(var←c54552))) {
{
word scd←v11996;
scd←v11996 = var←c54552;
SOURCE(9488, 148)
{
word tc121;
if ( ( ( ((* (ptr) scd←v11996 ) == (* (( (ptr) formal←c58264)+10) )) ? ((* (( (ptr) scd←v11996)+1) ) == (* (( (ptr) (* (
( (ptr) formal←c58264)+9) ))+3) )) : 0 ) ? ((* (( (ptr) scd←v11996)+2) ) == (* (( (ptr) (* (( (ptr) formal←c58264)+8) ))+1)
)) : 0 ) ) {
tc121 = (word) (unsigned) ((* (( (ptr) scd←v11996)+3) ) == (* (( (ptr) (* (( (ptr) formal←c58264)+8) ))+2) ));
}
else {
tc121 = (word) (unsigned) 0;
};
return(tc121);
};
};
}
else {
lab←L100021: ;
SOURCE(9649, 15)
return(0);
};
};
}
static word GetColorTransform←P720(data←v7916, colorOperator←v7944)
word data←v7916;
word colorOperator←v7944;
{
register ptr gf←c58296 = (ptr) &globalframe;
word var←c7988;
word allow←v12172;
word colorSpace←v12200;
/* GetColorTransform: */
SOURCE(11505, 1066)
SOURCE(11620, 7)
allow←v12172 = ( ((* (( (ptr) data←v7916)+2) ) != 0) ? (* (( (ptr) gf←c58296)+8)/* allowedColorSpaces2←v4820 */ ) : (* (
( (ptr) gf←c58296)+7)/* allowedColorSpaces←v4792 */ ) ) ;
SOURCE(11748, 101)
{
word pd122;
pd122 = (* (( (ptr) (* (( (ptr) gf←c58296)+107)/* var←c52664 */ ))+42) );
colorSpace←v12200 = (word) ( *( (fPt) ((* (ptr) pd122 ))))(colorOperator←v7944, allow←v12172, pd122);
};
SOURCE(11851, 686)
if (((* (( (ptr) data←v7916)+8) ) == 0) || (colorSpace←v12200 != (* (ptr) (* (( (ptr) data←v7916)+8) ) ))) {
SOURCE(11928, 611)
{
word domain←v12328;
word dim←v12356;
word rangeMax←v12384;
word ct←v12412;
SOURCE(11930, 50)
domain←v12328 = colorSpace←v12200;
SOURCE(11982, 39)
dim←v12356 = ( (domain←v12328 == 0) ? 1 : 2 ) ;
SOURCE(12023, 102)
{
word pd123;
float tf124;
pd123 = (* (( (ptr) (* (( (ptr) gf←c58296)+107)/* var←c52664 */ ))+35) );
rangeMax←v12384 = (word) ( *( (fPt) ((* (ptr) pd123 ))))(dim←v12356, (
tf124 = (float)(unsigned)(* (( (ptr) data←v7916)+9) ), *(word*)&tf124
), pd123);
};
SOURCE(12127, 384)
{
word var←c54584;
word var←c54648;
{
word var←c54616;
var←c54616 = domain←v12328;
if ((var←c54616 == 4)) {
var←c54584 = XR←CheckProc((word) (( (bPt) gf←c58296)+240)/* var←c51928 */ );
goto endif0125;
};
if ((var←c54616 == 1)) {
if (((* (( (ptr) data←v7916)+2) ) != 0)) {
var←c54584 = XR←CheckProc((word) (( (bPt) gf←c58296)+200)/* var←c51768 */ );
}
else {
var←c54584 = XR←CheckProc((word) (( (bPt) gf←c58296)+208)/* var←c51800 */ );
};
goto endif0125;
};
if ((var←c54616 == 3)) {
var←c54584 = XR←CheckProc((word) (( (bPt) gf←c58296)+208)/* var←c51800 */ );
goto endif0125;
};
if ((var←c54616 == 0)) {
var←c54584 = XR←CheckProc((word) (( (bPt) gf←c58296)+224)/* var←c51864 */ );
goto endif0125;
};
if ((var←c54616 == (* (( (ptr) gf←c58296)+6)/* colorSpaceCMYK←v4764 */ ))) {
var←c54584 = XR←CheckProc((word) (( (bPt) gf←c58296)+232)/* var←c51896 */ );
goto endif0125;
};
var←c54584 = XR←CheckProc(
XR←RaiseUnnamedError(), 0
);
goto endif0125;
endif0125: ;
};
var←c54648 = XR←NewObject(16, (* (( (ptr) gf←c58296)+18) ));
(* (ptr) var←c54648 ) = domain←v12328;
(* (( (ptr) var←c54648)+1) ) = rangeMax←v12384;
(* (( (ptr) var←c54648)+2) ) = var←c54584;
(* (( (ptr) var←c54648)+3) ) = data←v7916;
ct←v12412 = var←c54648;
};
SOURCE(12513, 24)
(* (( (ptr) data←v7916)+8) ) = ct←v12412;
};
};
SOURCE(12542, 29)
return((* (( (ptr) data←v7916)+8) ));
}
static void HighlightTransform←P780(self←v8048, in←v8076, out←v8104)
word self←v8048;
word in←v8076;
word out←v8104;
{
word b←v12456;
word h←v12484;
word outOfGamut←v12512 = 0;
/* HighlightTransform: */
SOURCE(12575, 500)
SOURCE(12717, 38)
{
word limit126;
word x127;
word limit128;
word x129;
word x130;
word x131;
*(float*)&b←v12456 = ((( - (
x127 = (* ((( (ptr) in←v8076)+2)+(
limit126 = (* (( (ptr) in←v8076)+1) ),
BCK(0, limit126)
)) ), *(float*)&x127
)) - (
x129 = (* ((( (ptr) in←v8076)+2)+(
limit128 = (* (( (ptr) in←v8076)+1) ),
BCK(1, limit128)
)) ), *(float*)&x129
)) + (
x130 = (* (ptr) &fc49 ), *(float*)&x130
)) * (
x131 = (* (ptr) &fc87 ), *(float*)&x131
);
};
SOURCE(12757, 27)
{
word limit132;
word x133;
word x134;
*(float*)&h←v12484 = (
x133 = (* ((( (ptr) in←v8076)+2)+(
limit132 = (* (( (ptr) in←v8076)+1) ),
BCK(1, limit132)
)) ), *(float*)&x133
) * (
x134 = (* (ptr) &fc87 ), *(float*)&x134
);
};
SOURCE(12812, 43)
{
word x135;
word x136;
if (((
x135 = b←v12456, *(float*)&x135
) < (
x136 = (* (ptr) &fc50 ), *(float*)&x136
))) {
SOURCE(12829, 17)
outOfGamut←v12512 = 1;
SOURCE(12848, 7)
b←v12456 = (* (ptr) &fc50 );
};
};
SOURCE(12858, 55)
{
word x137;
word x138;
if (((
x137 = b←v12456, *(float*)&x137
) > (
x138 = (* (ptr) &fc87 ), *(float*)&x138
))) {
SOURCE(12881, 17)
outOfGamut←v12512 = 1;
SOURCE(12900, 13)
b←v12456 = (* (ptr) &fc87 );
};
};
SOURCE(12916, 43)
{
word x139;
word x140;
if (((
x139 = h←v12484, *(float*)&x139
) < (
x140 = (* (ptr) &fc50 ), *(float*)&x140
))) {
SOURCE(12933, 17)
outOfGamut←v12512 = 1;
SOURCE(12952, 7)
h←v12484 = (* (ptr) &fc50 );
};
};
SOURCE(12962, 59)
{
word x141;
word x142;
word x143;
if (((
x141 = h←v12484, *(float*)&x141
) > (
x142 = (* (ptr) &fc87 ), *(float*)&x142
) - (
x143 = b←v12456, *(float*)&x143
))) {
SOURCE(12987, 17)
outOfGamut←v12512 = 1;
SOURCE(13006, 15)
{
word x144;
word x145;
*(float*)&h←v12484 = (
x144 = (* (ptr) &fc87 ), *(float*)&x144
) - (
x145 = b←v12456, *(float*)&x145
);
};
};
};
SOURCE(13024, 10)
{
word limit146;
(* ((( (ptr) out←v8104)+2)+(
limit146 = (* (( (ptr) out←v8104)+1) ),
BCK(0, limit146)
)) ) = b←v12456;
};
SOURCE(13036, 10)
{
word limit147;
(* ((( (ptr) out←v8104)+2)+(
limit147 = (* (( (ptr) out←v8104)+1) ),
BCK(1, limit147)
)) ) = h←v12484;
};
SOURCE(13048, 27)
(* (ptr) out←v8104 ) = outOfGamut←v12512;
}
static void CMYKTransform←P840(self←v8164, in←v8192, out←v8220)
word self←v8164;
word in←v8192;
word out←v8220;
{
register ptr gf←c58328 = (ptr) &globalframe;
word data←v12556;
word p←v12584;
word C←v12612;
word M←v12640;
word Y←v12668;
word K←v12696;
word R←v12724;
word G←v12752;
word B←v12780;
word outOfGamut←v12808 = 0;
word r←v12864;
word g←v12892;
word b←v12920;
word black←v12948;
word highlight←v12976;
/* CMYKTransform: */
SOURCE(13081, 1138)
SOURCE(13226, 30)
data←v12556 = XR←Narrow((* (( (ptr) self←v8164)+3) ), (* (( (ptr) gf←c58328)+26) ));
SOURCE(13258, 98)
p←v12584 = (* (( (ptr) (* (( (ptr) data←v12556)+2) ))+1) );
SOURCE(13358, 21)
{
word limit148;
word x149;
word x150;
*(float*)&C←v12612 = (
x149 = (* ((( (ptr) in←v8192)+2)+(
limit148 = (* (( (ptr) in←v8192)+1) ),
BCK(0, limit148)
)) ), *(float*)&x149
) / (
x150 = (* (ptr) &fc87 ), *(float*)&x150
);
};
SOURCE(13381, 21)
{
word limit151;
word x152;
word x153;
*(float*)&M←v12640 = (
x152 = (* ((( (ptr) in←v8192)+2)+(
limit151 = (* (( (ptr) in←v8192)+1) ),
BCK(1, limit151)
)) ), *(float*)&x152
) / (
x153 = (* (ptr) &fc87 ), *(float*)&x153
);
};
SOURCE(13404, 21)
{
word limit154;
word x155;
word x156;
*(float*)&Y←v12668 = (
x155 = (* ((( (ptr) in←v8192)+2)+(
limit154 = (* (( (ptr) in←v8192)+1) ),
BCK(2, limit154)
)) ), *(float*)&x155
) / (
x156 = (* (ptr) &fc87 ), *(float*)&x156
);
};
SOURCE(13427, 21)
{
word limit157;
word x158;
word x159;
*(float*)&K←v12696 = (
x158 = (* ((( (ptr) in←v8192)+2)+(
limit157 = (* (( (ptr) in←v8192)+1) ),
BCK(3, limit157)
)) ), *(float*)&x158
) / (
x159 = (* (ptr) &fc87 ), *(float*)&x159
);
};
SOURCE(13450, 21)
{
word x160;
word x161;
word x162;
*(float*)&R←v12724 = (
x160 = (* (ptr) &fc49 ), *(float*)&x160
) - ((
x161 = C←v12612, *(float*)&x161
) + (
x162 = K←v12696, *(float*)&x162
));
};
SOURCE(13473, 21)
{
word x163;
word x164;
word x165;
*(float*)&G←v12752 = (
x163 = (* (ptr) &fc49 ), *(float*)&x163
) - ((
x164 = M←v12640, *(float*)&x164
) + (
x165 = K←v12696, *(float*)&x165
));
};
SOURCE(13496, 21)
{
word x166;
word x167;
word x168;
*(float*)&B←v12780 = (
x166 = (* (ptr) &fc49 ), *(float*)&x166
) - ((
x167 = Y←v12668, *(float*)&x167
) + (
x168 = K←v12696, *(float*)&x168
));
};
SOURCE(13638, 57)
{
word x169;
float tf170;
word x171;
word idx172;
word x173;
r←v12864 = (x173 = (
idx172 = (word) (x171 = (word) XR←REAL32←Round((
tf170 = (
x169 = R←v12724, *(float*)&x169
) * (float)(unsigned)63, *(word*)&tf170
)),
MAX((int)(word), x171, 0)),
SGNCK(idx172)
),
MIN( (unsigned) , x173, 63));
};
SOURCE(13697, 57)
{
word x174;
float tf175;
word x176;
word idx177;
word x178;
g←v12892 = (x178 = (
idx177 = (word) (x176 = (word) XR←REAL32←Round((
tf175 = (
x174 = G←v12752, *(float*)&x174
) * (float)(unsigned)63, *(word*)&tf175
)),
MAX((int)(word), x176, 0)),
SGNCK(idx177)
),
MIN( (unsigned) , x178, 63));
};
SOURCE(13756, 57)
{
word x179;
float tf180;
word x181;
word idx182;
word x183;
b←v12920 = (x183 = (
idx182 = (word) (x181 = (word) XR←REAL32←Round((
tf180 = (
x179 = B←v12780, *(float*)&x179
) * (float)(unsigned)63, *(word*)&tf180
)),
MAX((int)(word), x181, 0)),
SGNCK(idx182)
),
MIN( (unsigned) , x183, 63));
};
SOURCE(13839, 49)
{
word var←c54680;
var←c54680 = (unsigned) (word) (* (( (hPt) (( (W32Pt) (( (W2048Pt) (
NCK((* (bPt) p←v12584 )),
p←v12584
))+r←v12864))+g←v12892))+b←v12920) );
black←v12948 = (unsigned) (var←c54680 & 0377);
highlight←v12976 = ((unsigned)var←c54680 >> 8);
};
SOURCE(13890, 331)
{
word b←v13092;
word h←v13120;
word outOfGamut←v13148 = 0;
SOURCE(13892, 15)
{
float tf184;
b←v13092 = (
tf184 = (float)(unsigned)black←v12948, *(word*)&tf184
);
};
SOURCE(13909, 19)
{
float tf185;
h←v13120 = (
tf185 = (float)(unsigned)highlight←v12976, *(word*)&tf185
);
};
SOURCE(13956, 43)
{
word x186;
word x187;
if (((
x186 = b←v13092, *(float*)&x186
) < (
x187 = (* (ptr) &fc50 ), *(float*)&x187
))) {
SOURCE(13973, 17)
outOfGamut←v13148 = 1;
SOURCE(13992, 7)
b←v13092 = (* (ptr) &fc50 );
};
};
SOURCE(14002, 55)
{
word x188;
word x189;
if (((
x188 = b←v13092, *(float*)&x188
) > (
x189 = (* (ptr) &fc87 ), *(float*)&x189
))) {
SOURCE(14025, 17)
outOfGamut←v13148 = 1;
SOURCE(14044, 13)
b←v13092 = (* (ptr) &fc87 );
};
};
SOURCE(14060, 43)
{
word x190;
word x191;
if (((
x190 = h←v13120, *(float*)&x190
) < (
x191 = (* (ptr) &fc50 ), *(float*)&x191
))) {
SOURCE(14077, 17)
outOfGamut←v13148 = 1;
SOURCE(14096, 7)
h←v13120 = (* (ptr) &fc50 );
};
};
SOURCE(14106, 59)
{
word x192;
word x193;
word x194;
if (((
x192 = h←v13120, *(float*)&x192
) > (
x193 = (* (ptr) &fc87 ), *(float*)&x193
) - (
x194 = b←v13092, *(float*)&x194
))) {
SOURCE(14131, 17)
outOfGamut←v13148 = 1;
SOURCE(14150, 15)
{
word x195;
word x196;
*(float*)&h←v13120 = (
x195 = (* (ptr) &fc87 ), *(float*)&x195
) - (
x196 = b←v13092, *(float*)&x196
);
};
};
};
SOURCE(14168, 10)
{
word limit197;
(* ((( (ptr) out←v8220)+2)+(
limit197 = (* (( (ptr) out←v8220)+1) ),
BCK(0, limit197)
)) ) = b←v13092;
};
SOURCE(14180, 10)
{
word limit198;
(* ((( (ptr) out←v8220)+2)+(
limit198 = (* (( (ptr) out←v8220)+1) ),
BCK(1, limit198)
)) ) = h←v13120;
};
SOURCE(14192, 27)
(* (ptr) out←v8220 ) = outOfGamut←v13148;
};
}
static void IntensityTransform←P900(self←v8280, in←v8308, out←v8336)
word self←v8280;
word in←v8308;
word out←v8336;
{
word scaled←v13192;
word clipped←v13220;
/* IntensityTransform: */
SOURCE(14250, 327)
SOURCE(14392, 36)
{
word x199;
word limit200;
word x201;
word x202;
*(float*)&scaled←v13192 = ((
x199 = (* (ptr) &fc49 ), *(float*)&x199
) - (
x201 = (* ((( (ptr) in←v8308)+2)+(
limit200 = (* (( (ptr) in←v8308)+1) ),
BCK(0, limit200)
)) ), *(float*)&x201
)) * (
x202 = (* (ptr) &fc87 ), *(float*)&x202
);
};
SOURCE(14430, 94)
{
word x203;
word x204;
word x205;
word x206;
clipped←v13220 = ( ((
x203 = scaled←v13192, *(float*)&x203
) < (
x204 = (* (ptr) &fc50 ), *(float*)&x204
)) ? (* (ptr) &fc50 ) : ( ((
x205 = scaled←v13192, *(float*)&x205
) > (
x206 = (* (ptr) &fc87 ), *(float*)&x206
)) ? (* (ptr) &fc87 ) : scaled←v13192 ) ) ;
};
SOURCE(14526, 16)
{
word limit207;
(* ((( (ptr) out←v8336)+2)+(
limit207 = (* (( (ptr) out←v8336)+1) ),
BCK(0, limit207)
)) ) = clipped←v13220;
};
SOURCE(14544, 33)
{
word x208;
word x209;
(* (ptr) out←v8336 ) = (unsigned) ((
x208 = clipped←v13220, *(float*)&x208
) != (
x209 = scaled←v13192, *(float*)&x209
));
};
}
static word Store←P1020(out←v8612, i←v8640, x←v8668, limit←v8696)
word out←v8612;
word i←v8640;
word x←v8668;
word limit←v8696;
{
word var←c8740;
word scaled←v13264;
word clipped←v13292;
/* Store: */
SOURCE(14730, 317)
SOURCE(14834, 45)
{
word x210;
word x211;
float tf212;
scaled←v13264 = (word) XR←REAL32←Round((
tf212 = (
x210 = x←v8668, *(float*)&x210
) * (
x211 = (* (ptr) &fc87 ), *(float*)&x211
), *(word*)&tf212
));
};
SOURCE(14881, 81)
clipped←v13292 = ( ( (int)scaled←v13264 < (int)0) ? 0 : ( ( (int)scaled←v13264 > (int)limit←v8696) ? limit←v8696 : scaled←v13264 ) ) ;
SOURCE(14964, 16)
{
word limit213;
float tf214;
(* ((( (ptr) out←v8612)+2)+(
limit213 = (* (( (ptr) out←v8612)+1) ),
BCK(i←v8640, limit213)
)) ) = (
tf214 = (float)(int)clipped←v13292, *(word*)&tf214
);
};
SOURCE(14982, 46)
if (( (int)clipped←v13292 != (int)scaled←v13264)) {
SOURCE(15007, 21)
(* (ptr) out←v8612 ) = 1;
};
SOURCE(15030, 17)
return(clipped←v13292);
}
static void PictorialTransform←P1080(self←v8800, in←v8828, out←v8856)
word self←v8800;
word in←v8828;
word out←v8856;
{
register ptr gf←c58360 = (ptr) &globalframe;
word data←v13336;
word y←v13364;
word e←v13392;
word s←v13420;
/* PictorialTransform: */
SOURCE(15051, 591)
SOURCE(15193, 30)
data←v13336 = XR←Narrow((* (( (ptr) self←v8800)+3) ), (* (( (ptr) gf←c58360)+26) ));
SOURCE(15240, 123)
if (((* (ptr) self←v8800 ) == 1)) {
SOURCE(15269, 53)
{
W3 var←c54744;
{
word y←v49800;
word e←v49828;
word s←v49856;
word r←v49888;
word g←v49916;
word b←v49944;
{
word limit215;
r←v49888 = (* ((( (ptr) in←v8828)+2)+(
limit215 = (* (( (ptr) in←v8828)+1) ),
BCK(0, limit215)
)) );
};
{
word limit216;
g←v49916 = (* ((( (ptr) in←v8828)+2)+(
limit216 = (* (( (ptr) in←v8828)+1) ),
BCK(1, limit216)
)) );
};
{
word limit217;
b←v49944 = (* ((( (ptr) in←v8828)+2)+(
limit217 = (* (( (ptr) in←v8828)+1) ),
BCK(2, limit217)
)) );
};
SOURCE(14651, 31)
{
word x219;
word x220;
word x222;
word x223;
word x225;
word x226;
*(float*)&y←v49800 = (((
x219 = (* (ptr) &fc218 ), *(float*)&x219
) * (
x220 = r←v49888, *(float*)&x220
)) + ((
x222 = (* (ptr) &fc221 ), *(float*)&x222
) * (
x223 = g←v49916, *(float*)&x223
))) + ((
x225 = (* (ptr) &fc224 ), *(float*)&x225
) * (
x226 = b←v49944, *(float*)&x226
));
};
SOURCE(14684, 15)
{
word x227;
word x228;
word x229;
*(float*)&e←v49828 = ((
x227 = r←v49888, *(float*)&x227
) - (
x228 = g←v49916, *(float*)&x228
)) / (
x229 = (* (ptr) &fc68 ), *(float*)&x229
);
};
SOURCE(14701, 23)
{
word x230;
word x231;
word x233;
word x234;
word x235;
*(float*)&s←v49856 = (((
x230 = r←v49888, *(float*)&x230
) + (
x231 = g←v49916, *(float*)&x231
)) / (
x233 = (* (ptr) &fc232 ), *(float*)&x233
)) - ((
x234 = b←v49944, *(float*)&x234
) / (
x235 = (* (ptr) &fc68 ), *(float*)&x235
));
};
SOURCE(14583, 141)
(* (ptr) (word) &var←c54744 ) = y←v49800;
(* (( (ptr) (word) &var←c54744) + 1) ) = e←v49828;
(* (( (ptr) (word) &var←c54744) + 2) ) = s←v49856;
};
s←v13420 = var←c54744.f2;
e←v13392 = var←c54744.f1;
y←v13364 = var←c54744.f0;
};
}
else {
SOURCE(15331, 9)
{
word limit236;
y←v13364 = (* ((( (ptr) in←v8828)+2)+(
limit236 = (* (( (ptr) in←v8828)+1) ),
BCK(0, limit236)
)) );
};
SOURCE(15342, 9)
{
word limit237;
e←v13392 = (* ((( (ptr) in←v8828)+2)+(
limit237 = (* (( (ptr) in←v8828)+1) ),
BCK(1, limit237)
)) );
};
SOURCE(15353, 10)
{
word limit238;
s←v13420 = (* ((( (ptr) in←v8828)+2)+(
limit238 = (* (( (ptr) in←v8828)+1) ),
BCK(2, limit238)
)) );
};
};
SOURCE(15366, 278)
{
word denom←v13464;
word h←v13492;
word w←v13520;
SOURCE(15368, 46)
{
word x239;
word x240;
word x241;
*(float*)&denom←v13464 = ((
x239 = XR←RealPwr(e←v13392, (* (ptr) &fc68 )), *(float*)&x239
) + (
x240 = XR←RealPwr(s←v13420, (* (ptr) &fc68 )), *(float*)&x240
)) * (
x241 = (* (( (ptr) data←v13336)+6) ), *(float*)&x241
);
};
SOURCE(15416, 91)
{
word tc242;
word x243;
word x244;
word x245;
float tf246;
float tf247;
word x248;
word x249;
word x250;
word x251;
float tf252;
word x254;
word x255;
float tf256;
if (((
x243 = denom←v13464, *(float*)&x243
) == (
x244 = (* (ptr) &fc50 ), *(float*)&x244
))) {
tc242 = (word) (* (ptr) &fc50 );
}
else {
tc242 = (word) (
tf256 = FMAX((
x245 = (* (ptr) &fc50 ), *(float*)&x245
), ((
x254 = XR←RealPwr((
tf252 = ((
/*1*/ x248 = (* (( (ptr) data←v13336)+4) ), *(float*)&x248
/*1*/ ) * (
/*1*/ x249 = e←v13392, *(float*)&x249
/*1*/ )) + ((
/*1*/ x250 = (* (( (ptr) data←v13336)+5) ), *(float*)&x250
/*1*/ ) * (
/*1*/ x251 = s←v13420, *(float*)&x251
/*1*/ )), *(word*)&tf252
), (* (ptr) &fc253 )), *(float*)&x254
) / (
x255 = denom←v13464, *(float*)&x255
)), tf246, tf247), *(word*)&tf256
);
};
h←v13492 = tc242;
};
SOURCE(15509, 39)
{
word x257;
word x258;
float tf259;
float tf260;
word x261;
word x262;
word x263;
float tf264;
w←v13520 = (
tf264 = FMIN(((
x257 = (* (ptr) &fc49 ), *(float*)&x257
) - (
x258 = h←v13492, *(float*)&x258
)), ((
x261 = y←v13364, *(float*)&x261
) - ((
x262 = h←v13492, *(float*)&x262
) * (
x263 = (* (( (ptr) data←v13336)+3) ), *(float*)&x263
))), tf259, tf260), *(word*)&tf264
);
};
SOURCE(15550, 22)
(* (ptr) out←v8856 ) = 0;
SOURCE(15574, 68)
{
word var←c54808;
{
word var←c54776;
{
word x265;
word x266;
word x267;
float tf268;
var←c54776 = (255 - (word) Store←P1020(out←v8856, 0, (
tf268 = ((
x265 = (* (ptr) &fc49 ), *(float*)&x265
) - (
x266 = h←v13492, *(float*)&x266
)) - (
x267 = w←v13520, *(float*)&x267
), *(word*)&tf268
), 255));
};
var←c54808 = (word) Store←P1020(out←v8856, 1, h←v13492, var←c54776);
};
};
};
}
static void TableRGBTransform←P1140(self←v8916, in←v8944, out←v8972)
word self←v8916;
word in←v8944;
word out←v8972;
{
register ptr gf←c58392 = (ptr) &globalframe;
word data←v13564;
word p←v13592;
word r←v13648;
word g←v13676;
word b←v13704;
word black←v13732;
word highlight←v13760;
/* TableRGBTransform: */
SOURCE(15651, 967)
SOURCE(15800, 30)
data←v13564 = XR←Narrow((* (( (ptr) self←v8916)+3) ), (* (( (ptr) gf←c58392)+26) ));
SOURCE(15832, 98)
p←v13592 = (* (( (ptr) (* (( (ptr) data←v13564)+2) ))+1) );
SOURCE(16025, 61)
{
word limit269;
word x270;
float tf271;
word x272;
word idx273;
word x274;
r←v13648 = (x274 = (
idx273 = (word) (x272 = (word) XR←REAL32←Round((
tf271 = (
x270 = (* ((( (ptr) in←v8944)+2)+(
/*1*/ limit269 = (* (( (ptr) in←v8944)+1) ),
/*1*/ BCK(0, limit269)
/*1*/ )) ), *(float*)&x270
) * (float)(unsigned)63, *(word*)&tf271
)),
MAX((int)(word), x272, 0)),
SGNCK(idx273)
),
MIN( (unsigned) , x274, 63));
};
SOURCE(16088, 61)
{
word limit275;
word x276;
float tf277;
word x278;
word idx279;
word x280;
g←v13676 = (x280 = (
idx279 = (word) (x278 = (word) XR←REAL32←Round((
tf277 = (
x276 = (* ((( (ptr) in←v8944)+2)+(
/*1*/ limit275 = (* (( (ptr) in←v8944)+1) ),
/*1*/ BCK(1, limit275)
/*1*/ )) ), *(float*)&x276
) * (float)(unsigned)63, *(word*)&tf277
)),
MAX((int)(word), x278, 0)),
SGNCK(idx279)
),
MIN( (unsigned) , x280, 63));
};
SOURCE(16151, 61)
{
word limit281;
word x282;
float tf283;
word x284;
word idx285;
word x286;
b←v13704 = (x286 = (
idx285 = (word) (x284 = (word) XR←REAL32←Round((
tf283 = (
x282 = (* ((( (ptr) in←v8944)+2)+(
/*1*/ limit281 = (* (( (ptr) in←v8944)+1) ),
/*1*/ BCK(2, limit281)
/*1*/ )) ), *(float*)&x282
) * (float)(unsigned)63, *(word*)&tf283
)),
MAX((int)(word), x284, 0)),
SGNCK(idx285)
),
MIN( (unsigned) , x286, 63));
};
SOURCE(16238, 49)
{
word var←c54840;
var←c54840 = (unsigned) (word) (* (( (hPt) (( (W32Pt) (( (W2048Pt) (
NCK((* (bPt) p←v13592 )),
p←v13592
))+r←v13648))+g←v13676))+b←v13704) );
black←v13732 = (unsigned) (var←c54840 & 0377);
highlight←v13760 = ((unsigned)var←c54840 >> 8);
};
SOURCE(16289, 331)
{
word b←v13876;
word h←v13904;
word outOfGamut←v13932 = 0;
SOURCE(16291, 15)
{
float tf287;
b←v13876 = (
tf287 = (float)(unsigned)black←v13732, *(word*)&tf287
);
};
SOURCE(16308, 19)
{
float tf288;
h←v13904 = (
tf288 = (float)(unsigned)highlight←v13760, *(word*)&tf288
);
};
SOURCE(16355, 43)
{
word x289;
word x290;
if (((
x289 = b←v13876, *(float*)&x289
) < (
x290 = (* (ptr) &fc50 ), *(float*)&x290
))) {
SOURCE(16372, 17)
outOfGamut←v13932 = 1;
SOURCE(16391, 7)
b←v13876 = (* (ptr) &fc50 );
};
};
SOURCE(16401, 55)
{
word x291;
word x292;
if (((
x291 = b←v13876, *(float*)&x291
) > (
x292 = (* (ptr) &fc87 ), *(float*)&x292
))) {
SOURCE(16424, 17)
outOfGamut←v13932 = 1;
SOURCE(16443, 13)
b←v13876 = (* (ptr) &fc87 );
};
};
SOURCE(16459, 43)
{
word x293;
word x294;
if (((
x293 = h←v13904, *(float*)&x293
) < (
x294 = (* (ptr) &fc50 ), *(float*)&x294
))) {
SOURCE(16476, 17)
outOfGamut←v13932 = 1;
SOURCE(16495, 7)
h←v13904 = (* (ptr) &fc50 );
};
};
SOURCE(16505, 59)
{
word x295;
word x296;
word x297;
if (((
x295 = h←v13904, *(float*)&x295
) > (
x296 = (* (ptr) &fc87 ), *(float*)&x296
) - (
x297 = b←v13876, *(float*)&x297
))) {
SOURCE(16530, 17)
outOfGamut←v13932 = 1;
SOURCE(16549, 15)
{
word x298;
word x299;
*(float*)&h←v13904 = (
x298 = (* (ptr) &fc87 ), *(float*)&x298
) - (
x299 = b←v13876, *(float*)&x299
);
};
};
};
SOURCE(16567, 10)
{
word limit300;
(* ((( (ptr) out←v8972)+2)+(
limit300 = (* (( (ptr) out←v8972)+1) ),
BCK(0, limit300)
)) ) = b←v13876;
};
SOURCE(16579, 10)
{
word limit301;
(* ((( (ptr) out←v8972)+2)+(
limit301 = (* (( (ptr) out←v8972)+1) ),
BCK(1, limit301)
)) ) = h←v13904;
};
SOURCE(16591, 27)
(* (ptr) out←v8972 ) = outOfGamut←v13932;
};
}
static word ComputeSource←P1200(data←v9032, sampledColor←v9060, colorOperator←v9088)
word data←v9032;
word sampledColor←v9060;
word colorOperator←v9088;
{
register ptr gf←c58424 = (ptr) &globalframe;
word var←c9132;
word pa←v13976;
word transform←v14004;
word pixelMap←v14032;
/* ComputeSource: */
SOURCE(16627, 387)
SOURCE(16765, 32)
pa←v13976 = (* (( (ptr) sampledColor←v9060)+1) );
SOURCE(16799, 85)
transform←v14004 = (word) GetColorTransform←P720(data←v9032, colorOperator←v9088);
SOURCE(16886, 109)
{
word pd302;
pd302 = (* (( (ptr) (* (( (ptr) gf←c58424)+107)/* var←c52664 */ ))+45) );
pixelMap←v14032 = (word) ( *( (fPt) ((* (ptr) pd302 ))))(colorOperator←v9088, transform←v14004, pa←v13976, pd302);
};
SOURCE(16997, 17)
return(pixelMap←v14032);
}
static void HiliteHalftone←P1260(formal←c0582, src←v9220, formal←c0583, formal←c0584)
word formal←c0582;
word src←v9220;
W4 formal←c0583;
W3 formal←c0584;
{
W83 var←c58456;
/* declaration of dst←v9192 skipped */
/* declaration of bounds←v9248 skipped */
/* declaration of brick←v9276 skipped */
register ptr gf←c58488 = (ptr) &globalframe;
/* declaration of var←c54872 skipped */
/* declaration of var←c54904 skipped */
/* declaration of thresholdBuffer←v14076 skipped */
/* declaration of zeroBuffer←v14104 skipped */
/* declaration of bitBuffer←v14244 skipped */
/* declaration of bitBufferMap←v14272 skipped */
(* (( (ptr) &var←c58456)+4)/* dst←v9192 */ ) = formal←c0582;
(* (W4Pt) (( (ptr) &var←c58456)+5)/* bounds←v9248 */ ) = formal←c0583;
(* (W3Pt) (( (ptr) &var←c58456)+9)/* brick←v9276 */ ) = formal←c0584;
/* HiliteHalftone: */
SOURCE(17020, 3136)
{
word tmpAddr303;
tmpAddr303 = (word) (( (ptr) &var←c58456)+12)/* var←c54872 */ ;
(* (ptr) tmpAddr303 ) = ( ((word) (fPt) Action←P2880) );
(* (( (ptr) tmpAddr303) + 1) ) = 1;
};
{
word tmpAddr304;
tmpAddr304 = (word) (( (ptr) &var←c58456)+14)/* var←c54904 */ ;
(* (ptr) tmpAddr304 ) = ( ((word) (fPt) GetHBuffer←P2820) );
(* (( (ptr) tmpAddr304) + 1) ) = 1;
};
SOURCE(17172, 83)
{
word var←c54936;
{
word pd305;
word idx306;
pd305 = (* (( (ptr) (* (( (ptr) gf←c58488)+121)/* var←c54968 */ ))+17) );
var←c54936 = (
idx306 = (word) ( *( (fPt) ((* (ptr) pd305 ))))((* (W4Pt) ((( (ptr) &var←c58456)+5)/* bounds←v9248 */ ) ), pd305),
SGNCK(idx306)
);
};
{
word pd307;
pd307 = (* (( (ptr) (* (( (ptr) gf←c58488)+115)/* var←c53624 */ ))+6) );
(* (( (ptr) &var←c58456)+16)/* thresholdBuffer←v14076 */ ) = (word) ( *( (fPt) ((* (ptr) pd307 ))))(var←c54936, pd307);
};
};
SOURCE(17257, 30)
(* (( (ptr) &var←c58456)+17)/* zeroBuffer←v14104 */ ) = 0;
SOURCE(17762, 220)
{
W2 var←c55000;
W2 var←c55032;
W2 var←c55064;
W2 var←c55096;
var←c55000.f0 = 1;
var←c55000.f1 = 1024;
var←c55032.f0 = (word) (( (bPt) &var←c58456)+72)/* bitBuffer←v14244 */ ;
var←c55032.f1 = 0;
var←c55064.f0 = 0;
var←c55064.f1 = 0;
var←c55096.f0 = 0;
var←c55096.f1 = 0;
{
word pd308;
pd308 = (* (( (ptr) (* (( (ptr) gf←c58488)+115)/* var←c53624 */ ))+25) );
(* (( (ptr) &var←c58456)+82)/* bitBufferMap←v14272 */ ) = (word) ( *( (fPt) ((* (ptr) pd308 ))))(var←c55000, 2, 2048, var←c55032, 0, 64
, var←c55064, var←c55096, pd308);
};
};
SOURCE(19973, 11)
(void) ( *( (fPt) ((* (ptr) src←v9220 ))))((word) ((( (bPt) &var←c58456)+48)/* var←c54872 */ ), src←v9220);
SOURCE(19986, 51)
{
word pd309;
pd309 = (* (( (ptr) (* (( (ptr) gf←c58488)+115)/* var←c53624 */ ))+7) );
(void) ( *( (fPt) ((* (ptr) pd309 ))))((* ((( (ptr) &var←c58456)+16)/* thresholdBuffer←v14076 */ ) ), pd309);
};
SOURCE(20039, 71)
if (((* (( (ptr) &var←c58456)+17)/* zeroBuffer←v14104 */ ) != 0)) {
SOURCE(20064, 46)
{
word pd310;
pd310 = (* (( (ptr) (* (( (ptr) gf←c58488)+115)/* var←c53624 */ ))+7) );
(void) ( *( (fPt) ((* (ptr) pd310 ))))((* ((( (ptr) &var←c58456)+17)/* zeroBuffer←v14104 */ ) ), pd310);
};
};
SOURCE(20112, 44)
{
word pd311;
pd311 = (* (( (ptr) (* (( (ptr) gf←c58488)+115)/* var←c53624 */ ))+30) );
(void) ( *( (fPt) ((* (ptr) pd311 ))))((* ((( (ptr) &var←c58456)+82)/* bitBufferMap←v14272 */ ) ), pd311);
};
}
static word GetHBuffer←P2820(pixels←v14376, formal←c58552)
word pixels←v14376;
word formal←c58552;
{
register ptr gf←c58520 = (ptr) &globalframe;
word var←c14420;
formal←c58552 = (formal←c58552 - 56);
/* GetHBuffer: */
SOURCE(17289, 311)
SOURCE(17380, 220)
if (((* (( (ptr) pixels←v14376)+1) ) < 2)) {
SOURCE(17417, 130)
if (((* (( (ptr) formal←c58552)+17) ) == 0)) {
SOURCE(17444, 64)
{
word var←c55128;
{
word pd312;
word idx313;
pd312 = (* (( (ptr) (* (( (ptr) gf←c58520)+121)/* var←c54968 */ ))+17) );
var←c55128 = (
idx313 = (word) ( *( (fPt) ((* (ptr) pd312 ))))((* (W4Pt) ((( (ptr) formal←c58552)+5)) ), pd312),
SGNCK(idx313)
);
};
{
word pd314;
pd314 = (* (( (ptr) (* (( (ptr) gf←c58520)+115)/* var←c53624 */ ))+6) );
(* (( (ptr) formal←c58552)+17) ) = (word) ( *( (fPt) ((* (ptr) pd314 ))))(var←c55128, pd314);
};
};
SOURCE(17510, 37)
{
word pd315;
pd315 = (* (( (ptr) (* (( (ptr) gf←c58520)+115)/* var←c53624 */ ))+13) );
(void) ( *( (fPt) ((* (ptr) pd315 ))))((* (( (ptr) formal←c58552)+17) ), 0, 2147483647, pd315);
};
};
SOURCE(17552, 18)
return((* (( (ptr) formal←c58552)+17) ));
}
else {
SOURCE(17581, 19)
{
word limit316;
return((* ((( (ptr) pixels←v14376)+2)+(
limit316 = (* (( (ptr) pixels←v14376)+1) ),
BCK(1, limit316)
)) ));
};
};
}
static void Action←P2880(pixels←v14536, min←v14564, formal←c58616)
word pixels←v14536;
W2 min←v14564;
word formal←c58616;
{
register ptr gf←c58584 = (ptr) &globalframe;
word blackBuffer←v14592;
word hiliteBuffer←v14620;
word count←v14648;
W2 index←v14676;
word residual←v14704;
word t←v14760;
word b←v14788;
word h←v14816;
word unit←v14844 = 256;
formal←c58616 = (formal←c58616 - 48);
/* Action: */
SOURCE(17984, 1975)
SOURCE(18061, 37)
{
word limit317;
blackBuffer←v14592 = (* ((( (ptr) pixels←v14536)+2)+(
limit317 = (* (( (ptr) pixels←v14536)+1) ),
BCK(0, limit317)
)) );
};
SOURCE(18100, 47)
hiliteBuffer←v14620 = (word) GetHBuffer←P2820(pixels←v14536, (word) (( (bPt) formal←c58616)+56));
SOURCE(18149, 26)
count←v14648 = (* (ptr) pixels←v14536 );
SOURCE(18177, 19)
index←v14676 = min←v14564;
SOURCE(18198, 46)
residual←v14704 = count←v14648;
(* (ptr) (* (( (ptr) formal←c58616)+16) ) ) = count←v14648;
SOURCE(18285, 113)
{
word pd318;
pd318 = (* (( (ptr) (* (( (ptr) gf←c58584)+115)/* var←c53624 */ ))+9) );
t←v14760 = (word) ( *( (fPt) ((* (ptr) pd318 ))))((* (( (ptr) formal←c58616)+16) ), 0, count←v14648, pd318);
};
SOURCE(18400, 109)
{
word pd319;
pd319 = (* (( (ptr) (* (( (ptr) gf←c58584)+115)/* var←c53624 */ ))+9) );
b←v14788 = (word) ( *( (fPt) ((* (ptr) pd319 ))))(blackBuffer←v14592, 0, count←v14648, pd319);
};
SOURCE(18511, 110)
{
word pd320;
pd320 = (* (( (ptr) (* (( (ptr) gf←c58584)+115)/* var←c53624 */ ))+9) );
h←v14816 = (word) ( *( (fPt) ((* (ptr) pd320 ))))(hiliteBuffer←v14620, 0, count←v14648, pd320);
};
SOURCE(18971, 111)
{
word pd321;
pd321 = (* (( (ptr) (* (( (ptr) gf←c58584)+115)/* var←c53624 */ ))+45) );
(void) ( *( (fPt) ((* (ptr) pd321 ))))((* (( (ptr) formal←c58616)+10) ), (* (( (ptr) formal←c58616)+11) ), min←v14564, (* (
( (ptr) formal←c58616)+16) ), pd321);
};
SOURCE(19084, 875)
lab←L100025: ;
if ((residual←v14704 != 0)) {
}
else {
goto lab←L100023;
};
{
word chunkSize←v15112;
word bitBufferIndex←v15140 = 0;
word chunkResidual←v15168;
SOURCE(19106, 47)
chunkSize←v15112 = (MIN( (unsigned) , 1024, residual←v14704));
SOURCE(19180, 35)
chunkResidual←v15168 = chunkSize←v15112;
SOURCE(19217, 275)
lab←L100028: ;
if ((chunkResidual←v15168 >= 8)) {
}
else {
goto lab←L100026;
};
SOURCE(19245, 103)
{
word var←c55192;
{
word var←c55224;
word thresh←v15368;
word black←v15396;
word hilite←v15424;
word var←c0559;
word var←c55288;
word thresh←v50724;
word black←v50752;
word hilite←v50780;
word var←c0560;
word var←c55352;
word thresh←v50624;
word black←v50652;
word hilite←v50680;
word var←c0561;
word var←c55416;
word thresh←v50524;
word black←v50552;
word hilite←v50580;
word var←c0562;
word var←c55480;
word thresh←v50424;
word black←v50452;
word hilite←v50480;
word var←c0563;
word var←c55544;
word thresh←v50324;
word black←v50352;
word hilite←v50380;
word var←c0564;
word var←c55608;
word thresh←v50224;
word black←v50252;
word hilite←v50280;
word var←c0565;
word var←c55672;
word thresh←v50124;
word black←v50152;
word hilite←v50180;
thresh←v15368 = (* (ptr) t←v14760 );
black←v15396 = (word) XRM←BITRSHIFT((thresh←v15368 - (* (ptr) b←v14788 )), 31);
hilite←v15424 = (word) XRM←BITRSHIFT(((unit←v14844 - thresh←v15368) - (* (ptr) h←v14816 )), 31);
SOURCE(18899, 69)
var←c55224 = (black←v15396 + (word) XRM←BITOR(black←v15396, hilite←v15424));
var←c0559 = ((word) var←c55224 << 2);
thresh←v50724 = (* (( (ptr) t←v14760)+1) );
black←v50752 = (word) XRM←BITRSHIFT((thresh←v50724 - (* (( (ptr) b←v14788)+1) )), 31);
hilite←v50780 = (word) XRM←BITRSHIFT(((unit←v14844 - thresh←v50724) - (* (( (ptr) h←v14816)+1) )), 31);
SOURCE(18899, 69)
var←c55288 = (black←v50752 + (word) XRM←BITOR(black←v50752, hilite←v50780));
var←c0560 = ((word) (var←c0559 + var←c55288) << 2);
thresh←v50624 = (* (( (ptr) t←v14760)+2) );
black←v50652 = (word) XRM←BITRSHIFT((thresh←v50624 - (* (( (ptr) b←v14788)+2) )), 31);
hilite←v50680 = (word) XRM←BITRSHIFT(((unit←v14844 - thresh←v50624) - (* (( (ptr) h←v14816)+2) )), 31);
SOURCE(18899, 69)
var←c55352 = (black←v50652 + (word) XRM←BITOR(black←v50652, hilite←v50680));
var←c0561 = ((word) (var←c0560 + var←c55352) << 2);
thresh←v50524 = (* (( (ptr) t←v14760)+3) );
black←v50552 = (word) XRM←BITRSHIFT((thresh←v50524 - (* (( (ptr) b←v14788)+3) )), 31);
hilite←v50580 = (word) XRM←BITRSHIFT(((unit←v14844 - thresh←v50524) - (* (( (ptr) h←v14816)+3) )), 31);
SOURCE(18899, 69)
var←c55416 = (black←v50552 + (word) XRM←BITOR(black←v50552, hilite←v50580));
var←c0562 = ((word) (var←c0561 + var←c55416) << 2);
thresh←v50424 = (* (( (ptr) t←v14760)+4) );
black←v50452 = (word) XRM←BITRSHIFT((thresh←v50424 - (* (( (ptr) b←v14788)+4) )), 31);
hilite←v50480 = (word) XRM←BITRSHIFT(((unit←v14844 - thresh←v50424) - (* (( (ptr) h←v14816)+4) )), 31);
SOURCE(18899, 69)
var←c55480 = (black←v50452 + (word) XRM←BITOR(black←v50452, hilite←v50480));
var←c0563 = ((word) (var←c0562 + var←c55480) << 2);
thresh←v50324 = (* (( (ptr) t←v14760)+5) );
black←v50352 = (word) XRM←BITRSHIFT((thresh←v50324 - (* (( (ptr) b←v14788)+5) )), 31);
hilite←v50380 = (word) XRM←BITRSHIFT(((unit←v14844 - thresh←v50324) - (* (( (ptr) h←v14816)+5) )), 31);
SOURCE(18899, 69)
var←c55544 = (black←v50352 + (word) XRM←BITOR(black←v50352, hilite←v50380));
var←c0564 = ((word) (var←c0563 + var←c55544) << 2);
thresh←v50224 = (* (( (ptr) t←v14760)+6) );
black←v50252 = (word) XRM←BITRSHIFT((thresh←v50224 - (* (( (ptr) b←v14788)+6) )), 31);
hilite←v50280 = (word) XRM←BITRSHIFT(((unit←v14844 - thresh←v50224) - (* (( (ptr) h←v14816)+6) )), 31);
SOURCE(18899, 69)
var←c55608 = (black←v50252 + (word) XRM←BITOR(black←v50252, hilite←v50280));
var←c0565 = ((word) (var←c0564 + var←c55608) << 2);
thresh←v50124 = (* (( (ptr) t←v14760)+7) );
black←v50152 = (word) XRM←BITRSHIFT((thresh←v50124 - (* (( (ptr) b←v14788)+7) )), 31);
hilite←v50180 = (word) XRM←BITRSHIFT(((unit←v14844 - thresh←v50124) - (* (( (ptr) h←v14816)+7) )), 31);
SOURCE(18899, 69)
var←c55672 = (black←v50152 + (word) XRM←BITOR(black←v50152, hilite←v50180));
var←c55192 = BCK((var←c0565 + var←c55672), 65536);
};
(* ((( (hPt) formal←c58616)+36)+BCK(bitBufferIndex←v15140, 128)) ) = var←c55192;
};
SOURCE(19350, 35)
bitBufferIndex←v15140 = (bitBufferIndex←v15140 + 1);
SOURCE(19387, 33)
chunkResidual←v15168 = (chunkResidual←v15168 - 8);
SOURCE(19422, 22)
t←v14760 = (t←v14760 + 32);
SOURCE(19446, 22)
b←v14788 = (b←v14788 + 32);
SOURCE(19470, 22)
h←v14816 = (h←v14816 + 32);
goto lab←L100028;
lab←L100026: ;
SOURCE(19503, 289)
if ((chunkResidual←v15168 != 0)) {
SOURCE(19529, 265)
{
word w←v15212 = 0;
word checkedResidual←v15240;
SOURCE(19548, 39)
checkedResidual←v15240 = BCK(chunkResidual←v15168, 8);
SOURCE(19589, 29)
if ((chunkSize←v15112 != residual←v14704)) {
SOURCE(19618, 5)
(void) XR←RaiseUnnamedError();
};
SOURCE(19654, 56)
{
register word i←v15304 = 0;
if (( (int)i←v15304 >= (int)checkedResidual←v15240)) {
goto lab←L100037;
};
lab←L100040: ;
SOURCE(19695, 15)
{
word var←c55736;
word j←v49992;
j←v49992 = i←v15304;
{
word thresh←v50024;
word black←v50052;
word hilite←v50080;
thresh←v50024 = (* (( (ptr) t←v14760)+j←v49992) );
black←v50052 = (word) XRM←BITRSHIFT((thresh←v50024 - (* (( (ptr) b←v14788)+j←v49992) )), 31);
hilite←v50080 = (word) XRM←BITRSHIFT(((unit←v14844 - thresh←v50024) - (* (( (ptr) h←v14816)+j←v49992) )), 31);
SOURCE(18899, 69)
var←c55736 = (black←v50052 + (word) XRM←BITOR(black←v50052, hilite←v50080));
};
w←v15212 = (((word) w←v15212 << 2) + var←c55736);
};
i←v15304 = (i←v15304 + 1);
if ((i←v15304 < checkedResidual←v15240)) {
goto lab←L100040;
};
lab←L100037: ;
};
SOURCE(19721, 71)
{
word var←c55800;
{
word idx322;
var←c55800 = (
idx322 = (word) XRM←BITLSHIFT(w←v15212, (16 - ((word) checkedResidual←v15240 << 1))),
BCK(idx322, 65536)
);
};
(* ((( (hPt) formal←c58616)+36)+BCK(bitBufferIndex←v15140, 128)) ) = var←c55800;
};
};
};
SOURCE(19797, 98)
{
W2 var←c55832;
W2 var←c55864;
var←c55832.f0 = 0;
var←c55832.f1 = 0;
var←c55864.f0 = 1;
var←c55864.f1 = chunkSize←v15112;
{
word pd323;
pd323 = (* (( (ptr) (* (( (ptr) gf←c58584)+115)/* var←c53624 */ ))+49) );
(void) ( *( (fPt) ((* (ptr) pd323 ))))((* (( (ptr) formal←c58616)+4) ), (* (( (ptr) formal←c58616)+82) ), index←v14676, var←c55832, var←c55864, 0, pd323)
;
};
};
SOURCE(19897, 29)
index←v14676.f1 = (index←v14676.f1 + chunkSize←v15112);
SOURCE(19928, 31)
residual←v14704 = (residual←v14704 - chunkSize←v15112);
};
goto lab←L100025;
lab←L100023: ;
}
static void HiliteMaskBoxes←P1320(device←v9484, formal←c0585, formal←c0586)
word device←v9484;
W4 formal←c0585;
word formal←c0586;
{
W20 var←c58648;
/* declaration of bounds←v9512 skipped */
/* declaration of boxes←v9540 skipped */
register ptr gf←c58680 = (ptr) &globalframe;
/* declaration of var←c55896 skipped */
/* declaration of var←c55928 skipped */
/* declaration of var←c55960 skipped */
/* declaration of data←v15452 skipped */
(* (W4Pt) (( (ptr) &var←c58648)+4)/* bounds←v9512 */ ) = formal←c0585;
(* (( (ptr) &var←c58648)+8)/* boxes←v9540 */ ) = formal←c0586;
/* HiliteMaskBoxes: */
SOURCE(20162, 2720)
{
word tmpAddr324;
tmpAddr324 = (word) (( (ptr) &var←c58648)+9)/* var←c55896 */ ;
(* (ptr) tmpAddr324 ) = ( ((word) (fPt) BlackAction←P3456) );
(* (( (ptr) tmpAddr324) + 1) ) = 1;
};
{
word tmpAddr325;
tmpAddr325 = (word) (( (ptr) &var←c58648)+11)/* var←c55928 */ ;
(* (ptr) tmpAddr325 ) = ( ((word) (fPt) BoxAction←P3300) );
(* (( (ptr) tmpAddr325) + 1) ) = 1;
};
{
word tmpAddr326;
tmpAddr326 = (word) (( (ptr) &var←c58648)+13)/* var←c55960 */ ;
(* (ptr) tmpAddr326 ) = ( ((word) (fPt) Src←P3192) );
(* (( (ptr) tmpAddr326) + 1) ) = 1;
};
SOURCE(20242, 32)
(* (( (ptr) &var←c58648)+15)/* data←v15452 */ ) = XR←Narrow((* (( (ptr) device←v9484)+7) ), (* (( (ptr) gf←c58680)+26) ))
;
SOURCE(20276, 2606)
{
word var←c55992;
var←c55992 = (* (( (ptr) (* (( (ptr) &var←c58648)+15)/* data←v15452 */ ))+13) );
switch (var←c55992) {
case 0:
SOURCE(20305, 5)
(void) XR←RaiseUnnamedError();
break;
case 1:
SOURCE(20351, 79)
{
word pd327;
pd327 = (* (( (ptr) (* (( (ptr) gf←c58680)+115)/* var←c53624 */ ))+58) );
(void) ( *( (fPt) ((* (ptr) pd327 ))))((* (ptr) (* (( (ptr) &var←c58648)+15)/* data←v15452 */ ) ), (* (( (ptr) &var←c58648)+8)
/* boxes←v9540 */ ), (* (( (ptr) (* (( (ptr) &var←c58648)+15)/* data←v15452 */ ))+14) ), 0, pd327);
};
break;
case 2:
SOURCE(20445, 99)
{
word pd328;
pd328 = (* (( (ptr) (* (( (ptr) gf←c58680)+115)/* var←c53624 */ ))+56) );
(void) ( *( (fPt) ((* (ptr) pd328 ))))((* (ptr) (* (( (ptr) &var←c58648)+15)/* data←v15452 */ ) ), (* (( (ptr) &var←c58648)+8)
/* boxes←v9540 */ ), (* (( (ptr) (* (( (ptr) &var←c58648)+15)/* data←v15452 */ ))+16) ), (* (( (ptr) (* (( (ptr) &var←c58648)+15)
/* data←v15452 */ ))+11) ), 0, pd328);
};
break;
case 4:
SOURCE(20560, 300)
SOURCE(20778, 80)
(void) HiliteHalftone←P1260((* (ptr) (* (( (ptr) &var←c58648)+15)/* data←v15452 */ ) ), (word) (( (bPt) &var←c58648)+52)
/* var←c55960 */ , (* (W4Pt) (( (ptr) &var←c58648)+4)/* bounds←v9512 */ ), (* (W3Pt) (( (ptr) (* (( (ptr) &var←c58648)+15)
/* data←v15452 */ ))+9) ));
break;
case 3:
SOURCE(20877, 788)
{
/* declaration of paBox←v15688 skipped */
SOURCE(20879, 151)
{
word pd329;
pd329 = (* (( (ptr) (* (( (ptr) gf←c58680)+108)/* var←c52888 */ ))+49) );
(void) ( *( (fPt) ((* (ptr) pd329 ))))((word) (( (bPt) &var←c58648)+64)/* paBox←v15688 */ , (* (( (ptr) (* (( (ptr) &var←c58648)+15)
/* data←v15452 */ ))+19) ), 0, 0, (* (( (ptr) (* (( (ptr) (* (( (ptr) &var←c58648)+15)/* data←v15452 */ ))+17) ))+2) ), (* (
( (ptr) (* (( (ptr) (* (( (ptr) &var←c58648)+15)/* data←v15452 */ ))+17) ))+3) )
, (* (W4Pt) (( (ptr) gf←c58680)+101)/* var←c52536 */ ), pd329);
};
SOURCE(21230, 430)
{
word pd330;
pd330 = (* (( (ptr) (* (( (ptr) gf←c58680)+121)/* var←c54968 */ ))+21) );
if ((0 != (word) ( *( (fPt) ((* (ptr) pd330 ))))((* (W4Pt) (( (ptr) &var←c58648)+4)/* bounds←v9512 */ ), (* (W4Pt) (( (ptr) &var←c58648)+16)
/* paBox←v15688 */ ), pd330))) {
SOURCE(21263, 22)
{
word pd331;
pd331 = (* (( (ptr) &var←c58648)+8)/* boxes←v9540 */ );
(void) ( *( (fPt) ((* (ptr) pd331 ))))((word) ((( (bPt) &var←c58648)+44)/* var←c55928 */ ), pd331);
};
}
else {
SOURCE(21285, 377)
{
word bpp←v15820;
word tile←v15848;
SOURCE(21287, 73)
{
word pd332;
word idx333;
pd332 = (* (( (ptr) (* (( (ptr) gf←c58680)+120)/* var←c54360 */ ))+7) );
bpp←v15820 = (unsigned) (word) (* ((( (bPt) gf←c58680)+368)/* var←c52472 */ +(
/*1*/ idx333 = (word) ((word) ( *( (fPt) ((* (ptr) pd332 ))))((* (( (ptr) (* (( (ptr) &var←c58648)+15)/* data←v15452 */ ))+17)
/*1*/ ), 0, pd332) + 1),
/*1*/ BCK(idx333, 33)
/*1*/ )) );
};
SOURCE(21362, 79)
{
word pd334;
pd334 = (* (( (ptr) (* (( (ptr) gf←c58680)+115)/* var←c53624 */ ))+22) );
tile←v15848 = (word) ( *( (fPt) ((* (ptr) pd334 ))))((* (W4Pt) (( (ptr) &var←c58648)+16)/* paBox←v15688 */ ), BCK(bpp←v15820, 33)
/*1*/ , 0, pd334);
};
SOURCE(21443, 98)
{
W2 var←c56024;
{
/*1*/ word pd335;
/*1*/ pd335 = (* (( (ptr) (* (( (ptr) gf←c58680)+121)/* var←c54968 */ ))+19) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd335 ))))((word) &var←c56024, (* (W4Pt) (( (ptr) &var←c58648)+16)/* paBox←v15688 */ ), pd335)
/*1*/ ;
/*1*/ };
{
/*1*/ word pd336;
/*1*/ pd336 = (* (( (ptr) (* (( (ptr) gf←c58680)+120)/* var←c54360 */ ))+11) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd336 ))))((* (( (ptr) (* (( (ptr) &var←c58648)+15)/* data←v15452 */ ))+17) ), 0, 0, 0, tile←v15848, (* (W2Pt) (
/*1*/ ( (ptr) &var←c58648)+16) )
/*1*/ , var←c56024, 0, pd336);
/*1*/ };
};
SOURCE(21543, 79)
{
word pd337;
pd337 = (* (( (ptr) (* (( (ptr) gf←c58680)+115)/* var←c53624 */ ))+56) );
(void) ( *( (fPt) ((* (ptr) pd337 ))))((* (ptr) (* (( (ptr) &var←c58648)+15)/* data←v15452 */ ) ), (* (( (ptr) &var←c58648)+8)
/*1*/ /* boxes←v9540 */ ), tile←v15848, 0, 0, pd337);
};
SOURCE(21624, 36)
{
word pd338;
pd338 = (* (( (ptr) (* (( (ptr) gf←c58680)+115)/* var←c53624 */ ))+23) );
(void) ( *( (fPt) ((* (ptr) pd338 ))))(tile←v15848, pd338);
};
};
};
};
};
break;
case 5: case 6:
SOURCE(21703, 1181)
SOURCE(22752, 130)
{
word pd339;
pd339 = (* (( (ptr) (* (( (ptr) gf←c58680)+117)/* var←c53944 */ ))+12) );
(void) ( *( (fPt) ((* (ptr) pd339 ))))((* (( (ptr) (* (( (ptr) &var←c58648)+15)/* data←v15452 */ ))+20) ), (* (( (ptr) (* (
( (ptr) &var←c58648)+15)/* data←v15452 */ ))+19) ), 0, (* (( (ptr) &var←c58648)+8)/* boxes←v9540 */ ), (* (W4Pt) (( (ptr) &var←c58648)+4)
/* bounds←v9512 */ ), (word) (( (bPt) &var←c58648)+36)/* var←c55896 */ , pd339);
};
break;
default:
SOURCE(22898, 5)
(void) XR←RaiseUnnamedError();
break;
};
};
}
static void Src←P3192(action←v15572, formal←c58744)
word action←v15572;
word formal←c58744;
{
register ptr gf←c58712 = (ptr) &globalframe;
formal←c58744 = (formal←c58744 - 52);
/* Src: */
SOURCE(20562, 11)
SOURCE(20637, 136)
{
word pd340;
pd340 = (* (( (ptr) (* (( (ptr) gf←c58712)+117)/* var←c53944 */ ))+12) );
(void) ( *( (fPt) ((* (ptr) pd340 ))))((* (( (ptr) (* (( (ptr) formal←c58744)+15) ))+20) ), (* (( (ptr) (* (( (ptr) formal←c58744)+15)
))+19) ), (* (( (ptr) (* (( (ptr) formal←c58744)+15) ))+12) ), (* (( (ptr) formal←c58744)+8) ), (* (W4Pt) (( (ptr) formal←c58744)+4)
), action←v15572, pd340);
};
}
static void BoxAction←P3300(box←v15792, formal←c58808)
W4 box←v15792;
word formal←c58808;
{
register ptr gf←c58776 = (ptr) &globalframe;
formal←c58808 = (formal←c58808 - 44);
/* BoxAction: */
SOURCE(21032, 17)
SOURCE(21063, 162)
{
W2 var←c56056;
{
word pd341;
pd341 = (* (( (ptr) (* (( (ptr) gf←c58776)+121)/* var←c54968 */ ))+19) );
(void) ( *( (fPt) ((* (ptr) pd341 ))))((word) &var←c56056, box←v15792, pd341);
};
{
word pd342;
pd342 = (* (( (ptr) (* (( (ptr) gf←c58776)+120)/* var←c54360 */ ))+11) );
(void) ( *( (fPt) ((* (ptr) pd342 ))))((* (( (ptr) (* (( (ptr) formal←c58808)+15) ))+17) ), 0, (box←v15792.f0 - (* (( (ptr) formal←c58808)+16)
)), (box←v15792.f1 - (* (( (ptr) formal←c58808)+17) )), (* (ptr) (* (( (ptr) formal←c58808)+15) ) ), (* (W2Pt) &box←v15792 )
, var←c56056, 0, pd342);
};
};
}
static void BlackAction←P3456(pixels←v15968, min←v15996, formal←c58872)
word pixels←v15968;
W2 min←v15996;
word formal←c58872;
{
register ptr gf←c58840 = (ptr) &globalframe;
word count←v16024;
word buffer←v16052;
word bufferPointer←v16080;
formal←c58872 = (formal←c58872 - 36);
/* BlackAction: */
SOURCE(21705, 19)
SOURCE(21782, 26)
count←v16024 = (* (ptr) pixels←v15968 );
SOURCE(21810, 32)
{
word limit343;
buffer←v16052 = (* ((( (ptr) pixels←v15968)+2)+(
limit343 = (* (( (ptr) pixels←v15968)+1) ),
BCK(0, limit343)
)) );
};
SOURCE(21844, 121)
{
word pd344;
word limit345;
pd344 = (* (( (ptr) (* (( (ptr) gf←c58840)+115)/* var←c53624 */ ))+9) );
bufferPointer←v16080 = (word) ( *( (fPt) ((* (ptr) pd344 ))))((* ((( (ptr) pixels←v15968)+2)+(
limit345 = (* (( (ptr) pixels←v15968)+1) ),
BCK(0, limit345)
)) ), 0, count←v16024, pd344);
};
SOURCE(21967, 759)
{
word var←c56088;
var←c56088 = (* (( (ptr) (* (( (ptr) formal←c58872)+15) ))+13) );
if ((var←c56088 == 5)) {
SOURCE(22005, 241)
SOURCE(22041, 92)
{
register word i←v16208 = 0;
if ((i←v16208 >= count←v16024)) {
goto lab←L100042;
};
lab←L100045: ;
SOURCE(22069, 64)
if (((* (( (ptr) bufferPointer←v16080)+i←v16208) ) == 0)) {
(* (( (ptr) bufferPointer←v16080)+i←v16208) ) = 0;
}
else {
(* (( (ptr) bufferPointer←v16080)+i←v16208) ) = 2;
};
i←v16208 = (i←v16208 + 1);
if ((i←v16208 < count←v16024)) {
goto lab←L100045;
};
lab←L100042: ;
};
SOURCE(22144, 100)
{
W2 var←c56120;
var←c56120.f0 = 0;
var←c56120.f1 = 1;
{
word pd346;
pd346 = (* (( (ptr) (* (( (ptr) gf←c58840)+115)/* var←c53624 */ ))+47) );
(void) ( *( (fPt) ((* (ptr) pd346 ))))((* (ptr) (* (( (ptr) formal←c58872)+15) ) ), min←v15996, var←c56120, buffer←v16052, 0, count←v16024
, 0, pd346);
};
};
}
else {
if ((var←c56088 == 6)) {
SOURCE(22270, 458)
SOURCE(22289, 77)
{
register word i←v16296 = 0;
if ((i←v16296 >= count←v16024)) {
goto lab←L100046;
};
lab←L100049: ;
SOURCE(22317, 49)
(* (( (ptr) bufferPointer←v16080)+i←v16296) ) = (0 - (* (( (ptr) bufferPointer←v16080)+i←v16296) ));
i←v16296 = (i←v16296 + 1);
if ((i←v16296 < count←v16024)) {
goto lab←L100049;
};
lab←L100046: ;
};
SOURCE(22377, 129)
{
W2 var←c56152;
var←c56152.f0 = 0;
var←c56152.f1 = 1;
{
word pd347;
pd347 = (* (( (ptr) (* (( (ptr) gf←c58840)+115)/* var←c53624 */ ))+47) );
(void) ( *( (fPt) ((* (ptr) pd347 ))))((* (ptr) (* (( (ptr) formal←c58872)+15) ) ), min←v15996, var←c56152, buffer←v16052, 0, count←v16024
, 3, pd347);
};
};
SOURCE(22508, 85)
{
register word i←v16340 = 0;
if ((i←v16340 >= count←v16024)) {
goto lab←L100050;
};
lab←L100053: ;
SOURCE(22536, 57)
{
word var←c56184;
var←c56184 = (word) XRM←BITAND((* (( (ptr) bufferPointer←v16080)+i←v16340) ), 2);
(* (( (ptr) bufferPointer←v16080)+i←v16340) ) = var←c56184;
};
i←v16340 = (i←v16340 + 1);
if ((i←v16340 < count←v16024)) {
goto lab←L100053;
};
lab←L100050: ;
};
SOURCE(22604, 122)
{
W2 var←c56216;
var←c56216.f0 = 0;
var←c56216.f1 = 1;
{
word pd348;
pd348 = (* (( (ptr) (* (( (ptr) gf←c58840)+115)/* var←c53624 */ ))+47) );
(void) ( *( (fPt) ((* (ptr) pd348 ))))((* (ptr) (* (( (ptr) formal←c58872)+15) ) ), min←v15996, var←c56216, buffer←v16052, 0, count←v16024
, 4, pd348);
};
};
}
else {
SOURCE(22742, 5)
(void) XR←RaiseUnnamedError();
};
};
};
}
static void HiliteMaskBitmap←P1380(device←v9600, bitmap←v9628, delta←v9656, bounds←v9684, boxes←v9712)
word device←v9600;
word bitmap←v9628;
W2 delta←v9656;
W4 bounds←v9684;
word boxes←v9712;
{
W21 var←c58904;
register ptr gf←c58936 = (ptr) &globalframe;
/* declaration of var←c56248 skipped */
/* declaration of data←v16384 skipped */
/* HiliteMaskBitmap: */
SOURCE(22909, 1652)
{
word tmpAddr349;
tmpAddr349 = (word) (( (ptr) &var←c58904)+4)/* var←c56248 */ ;
(* (ptr) tmpAddr349 ) = ( ((word) (fPt) FastTransfer←P3996) );
(* (( (ptr) tmpAddr349) + 1) ) = 1;
};
SOURCE(23032, 32)
(* (( (ptr) &var←c58904)+6)/* data←v16384 */ ) = XR←Narrow((* (( (ptr) device←v9600)+7) ), (* (( (ptr) gf←c58936)+26) ))
;
SOURCE(23066, 1396)
{
word var←c56280;
var←c56280 = bitmap←v9628;
if ((var←c56280 == 0)) {
goto lab←L100054;
};
if (((* (( (ptr) var←c56280)+6) ) == 0)) {
{
/* declaration of srcRast←v16428 skipped */
(* (( (ptr) &var←c58904)+7)/* srcRast←v16428 */ ) = var←c56280;
SOURCE(23118, 1364)
{
/* declaration of srcBitsPerLine←v16472 skipped */
word var←c56312;
word map←v51368;
SOURCE(23120, 44)
{
word idx350;
(* (( (ptr) &var←c58904)+8)/* srcBitsPerLine←v16472 */ ) = (
idx350 = (* (( (ptr) (* (( (ptr) &var←c58904)+7)/* srcRast←v16428 */ ))+7) ),
SGNCK(idx350)
);
};
SOURCE(23166, 1296)
{
word tc351;
map←v51368 = (* (( (ptr) &var←c58904)+7)/* srcRast←v16428 */ );
var←c56312 = (* (( (ptr) map←v51368)+5) );
if ((var←c56312 == 1)) {
tc351 = (word) (((* (( (ptr) &var←c58904)+8)/* srcBitsPerLine←v16472 */ ) & 037) == 0);
}
else {
tc351 = (word) 0;
};
if (tc351) {
SOURCE(23243, 1219)
{
word var←c56344;
var←c56344 = (* (ptr) (* (( (ptr) &var←c58904)+6)/* data←v16384 */ ) );
if ((var←c56344 == 0)) {
goto lab←L100056;
};
if (((* (( (ptr) var←c56344)+6) ) == 0)) {
{
/*1*/ /* declaration of dstRast←v16516 skipped */
/*1*/ (* (( (ptr) &var←c58904)+9)/* dstRast←v16516 */ ) = var←c56344;
SOURCE(23303, 1164)
/*1*/ {
/*1*/ /* declaration of dstBitsPerLine←v16560 skipped */
/*1*/ word dstBitsPerSample←v16588;
SOURCE(23305, 44)
/*1*/ {
/*1*/ word idx352;
/*1*/ (* (( (ptr) &var←c58904)+10)/* dstBitsPerLine←v16560 */ ) = (
/*1*/ idx352 = (* (( (ptr) (* (( (ptr) &var←c58904)+9)/* dstRast←v16516 */ ))+7) ),
/*1*/ SGNCK(idx352)
/*1*/ );
/*1*/ };
SOURCE(23351, 51)
/*1*/ {
/*1*/ word var←c56376;
/*1*/ word map←v51320;
/*1*/ map←v51320 = (* (( (ptr) &var←c58904)+9)/* dstRast←v16516 */ );
/*1*/ var←c56376 = (* (( (ptr) map←v51320)+5) );
/*1*/ dstBitsPerSample←v16588 = BCK((var←c56376 - 2), 1);
/*1*/ };
SOURCE(23431, 1031)
/*1*/ if ((((* (( (ptr) &var←c58904)+10)/* dstBitsPerLine←v16560 */ ) & 037) == 0)) {
SOURCE(23473, 991)
/*1*/ {
/*1*/ /* declaration of dstBox←v16680 skipped */
/*1*/ /* declaration of srcBox←v16708 skipped */
/*1*/ /* declaration of dstWpl←v16736 skipped */
/*1*/ /* declaration of maskWpl←v16764 skipped */
/*1*/ word var←c56504;
/*1*/ word map←v51272;
SOURCE(23475, 28)
/*1*/ {
/*1*/ word map←v51080;
/*1*/ map←v51080 = (* (( (ptr) &var←c58904)+9)/* dstRast←v16516 */ );
/*1*/ (* (W4Pt) (( (ptr) &var←c58904)+11)/* dstBox←v16680 */ ) = (* (W4Pt) map←v51080 );
/*1*/ };
SOURCE(23505, 48)
/*1*/ {
/*1*/ W4 var←c56440;
/*1*/ {
/*1*/ W4 var←c56472;
/*1*/ word map←v51032;
/*1*/ map←v51032 = (* (( (ptr) &var←c58904)+7)/* srcRast←v16428 */ );
/*1*/ var←c56472 = (* (W4Pt) map←v51032 );
/*1*/ var←c56440 = var←c56472;
/*1*/ };
/*1*/ {
/*1*/ W4 var←c0413;
/*1*/ {
/*1*/ word pd353;
/*1*/ pd353 = (* (( (ptr) (* (( (ptr) gf←c58936)+121)/* var←c54968 */ ))+20) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd353 ))))((word) &var←c0413, var←c56440, delta←v9656, pd353);
/*1*/ };
/*1*/ (* (W4Pt) (( (ptr) &var←c58904)+15)/* srcBox←v16708 */ ) = var←c0413;
/*1*/ };
/*1*/ };
SOURCE(23555, 46)
/*1*/ (* (( (ptr) &var←c58904)+19)/* dstWpl←v16736 */ ) = ((* (( (ptr) &var←c58904)+10)/* dstBitsPerLine←v16560 */ ) >> 5);
SOURCE(23603, 47)
/*1*/ (* (( (ptr) &var←c58904)+20)/* maskWpl←v16764 */ ) = ((* (( (ptr) &var←c58904)+8)/* srcBitsPerLine←v16472 */ ) >> 5);
SOURCE(24362, 37)
/*1*/ map←v51272 = (* (( (ptr) &var←c58904)+9)/* dstRast←v16516 */ );
/*1*/ var←c56504 = (* (( (ptr) map←v51272)+5) );
/*1*/ if ((var←c56504 != 2)) {
SOURCE(24399, 5)
/*1*/ (void) XR←RaiseUnnamedError();
/*1*/ };
SOURCE(24435, 19)
/*1*/ (void) ( *( (fPt) ((* (ptr) boxes←v9712 ))))((word) ((( (bPt) &var←c58904)+16)/* var←c56248 */ ), boxes←v9712);
SOURCE(24456, 6)
/*1*/ return;
/*1*/ };
/*1*/ };
/*1*/ };
/*1*/ };
}
else {
lab←L100056: ;
};
};
};
};
};
};
}
else {
lab←L100054: ;
};
};
SOURCE(24494, 67)
{
word pd354;
pd354 = (* (( (ptr) (* (( (ptr) gf←c58936)+122)/* var←c56536 */ ))+5) );
(void) ( *( (fPt) ((* (ptr) pd354 ))))(device←v9600, bitmap←v9628, delta←v9656, bounds←v9684, boxes←v9712, pd354);
};
}
static void FastTransfer←P3996(box←v48076, formal←c58968)
W4 box←v48076;
word formal←c58968;
{
word sSize←v16836;
word fSize←v16864;
formal←c58968 = (formal←c58968 - 16);
/* FastTransfer: */
SOURCE(23652, 37)
SOURCE(23691, 36)
sSize←v16836 = (box←v48076.f2 - box←v48076.f0);
SOURCE(23729, 36)
fSize←v16864 = (box←v48076.f3 - box←v48076.f1);
SOURCE(23767, 589)
if ( ( ( (int)sSize←v16836 > (int)0) ? ( (int)fSize←v16864 > (int)0) : 0 ) ) {
SOURCE(23799, 557)
{
word dstBitIndex←v16908;
word srcBitIndex←v16936;
SOURCE(23801, 153)
dstBitIndex←v16908 = (((* (( (ptr) (* (( (ptr) formal←c58968)+9) ))+9) ) + ((box←v48076.f0 - (* (( (ptr) formal←c58968)+11)
)) * (* (( (ptr) formal←c58968)+10) ))) + (word) XRM←BITLSHIFT((box←v48076.f1 - (* (( (ptr) formal←c58968)+12) )), 1));
SOURCE(23956, 119)
srcBitIndex←v16936 = (((* (( (ptr) (* (( (ptr) formal←c58968)+7) ))+9) ) + ((box←v48076.f0 - (* (( (ptr) formal←c58968)+15)
)) * (* (( (ptr) formal←c58968)+8) ))) + (box←v48076.f1 - (* (( (ptr) formal←c58968)+16) )));
SOURCE(24077, 279)
{
word var←c56568;
var←c56568 = (word) XRM←BITRSHIFT(dstBitIndex←v16908, 1);
(void) StoreWithColorMask2←P1560((* (( (ptr) (* (( (ptr) formal←c58968)+7) ))+8) ), srcBitIndex←v16936, (* (( (ptr) formal←c58968)+20)
), (* (( (ptr) (* (( (ptr) formal←c58968)+9) ))+8) ), var←c56568, (* (( (ptr) formal←c58968)+19) )
, SGNCK(sSize←v16836), SGNCK(fSize←v16864), (* (( (ptr) (* (( (ptr) formal←c58968)+6) ))+15) ));
};
};
};
}
static void HiliteMaskRawBitmaps←P1440(device←v9772, list←v9800)
word device←v9772;
word list←v9800;
{
register ptr gf←c59000 = (ptr) &globalframe;
word data←v16980;
word rast←v17008;
word dstPtr←v17036;
word dstOff←v17064;
word dstBitsPerLine←v17092;
word dstWpl←v17120;
word dstBitsPerSample←v17148;
word colorWord←v17204;
/* HiliteMaskRawBitmaps: */
SOURCE(24567, 1153)
SOURCE(24676, 32)
data←v16980 = XR←Narrow((* (( (ptr) device←v9772)+7) ), (* (( (ptr) gf←c59000)+26) ));
SOURCE(24710, 46)
rast←v17008 = (* (ptr) data←v16980 );
if ((rast←v17008 == 0)) {
goto lab←L100061;
};
if (((* (( (ptr) rast←v17008)+6) ) == 0)) {
goto lab←L100061;
};
(void) XR←RaiseError(XR←NarrowFault, 0);
lab←L100061: ;
SOURCE(24758, 58)
dstPtr←v17036 = (* (( (ptr) rast←v17008)+8) );
SOURCE(24818, 30)
dstOff←v17064 = (* (( (ptr) rast←v17008)+9) );
SOURCE(24850, 41)
{
word idx355;
dstBitsPerLine←v17092 = (
idx355 = (* (( (ptr) rast←v17008)+7) ),
SGNCK(idx355)
);
};
SOURCE(24893, 46)
dstWpl←v17120 = ((word) dstBitsPerLine←v17092 >> 5);
SOURCE(24941, 48)
{
word var←c56632;
word map←v51224;
map←v51224 = rast←v17008;
var←c56632 = (* (( (ptr) map←v51224)+5) );
dstBitsPerSample←v17148 = BCK((var←c56632 - 2), 1);
};
SOURCE(25018, 32)
colorWord←v17204 = (* (( (ptr) data←v16980)+15) );
SOURCE(25052, 668)
lab←L100065: ;
if ((list←v9800 != 0)) {
}
else {
goto lab←L100063;
};
{
word r←v17280;
word sSize←v17308;
word fSize←v17336;
SOURCE(25072, 56)
r←v17280 = list←v9800;
SOURCE(25130, 58)
sSize←v17308 = ((* (( (ptr) list←v9800)+2) ) - (* (ptr) list←v9800 ));
SOURCE(25190, 58)
fSize←v17336 = ((* (( (ptr) list←v9800)+3) ) - (* (( (ptr) list←v9800)+1) ));
SOURCE(25250, 451)
if ( ( ( (int)sSize←v17308 > (int)0) ? ( (int)fSize←v17336 > (int)0) : 0 ) ) {
SOURCE(25282, 419)
{
word dstBitIndex←v17392;
SOURCE(25284, 153)
{
W4 var←c56664;
word map←v50984;
word var←c0566;
word var←c0567;
word var←c0568;
word var←c0569;
word var←c56696;
map←v50984 = rast←v17008;
var←c56664 = (* (W4Pt) map←v50984 );
var←c0566 = var←c56664.f0;
var←c0567 = ((* (ptr) r←v17280 ) - var←c0566);
var←c0568 = (var←c0567 * dstBitsPerLine←v17092);
var←c0569 = (dstOff←v17064 + var←c0568);
{
W4 var←c56728;
word map←v50936;
word var←c0570;
map←v50936 = rast←v17008;
var←c56728 = (* (W4Pt) map←v50936 );
var←c0570 = var←c56728.f1;
var←c56696 = ((* (( (ptr) r←v17280)+1) ) - var←c0570);
};
dstBitIndex←v17392 = (var←c0569 + (word) XRM←BITLSHIFT(var←c56696, 1));
};
SOURCE(25439, 262)
{
word var←c56760;
var←c56760 = (word) XRM←BITRSHIFT(dstBitIndex←v17392, 1);
(void) StoreWithColorMask2←P1560((* (( (ptr) r←v17280)+5) ), 0, ((* (( (ptr) r←v17280)+4) ) >> 5), dstPtr←v17036, var←c56760, dstWpl←v17120
, SGNCK(sSize←v17308), SGNCK(fSize←v17336), colorWord←v17204);
};
};
};
SOURCE(25704, 16)
list←v9800 = (* (( (ptr) list←v9800)+7) );
};
goto lab←L100065;
lab←L100063: ;
}
static word MakeExpandArray2←P1500()
{
register ptr gf←c59032 = (ptr) &globalframe;
word var←c9972;
word new←v17436;
/* MakeExpandArray2: */
SOURCE(25839, 302)
SOURCE(25893, 50)
new←v17436 = XR←NewObject(512, (* (( (ptr) gf←c59032)+13) ));
SOURCE(25945, 173)
{
register word b←v17492 = 0;
lab←L100071: ;
{
word elem←v17536 = 3;
word word←v17564 = 0;
word x←v17592;
SOURCE(26000, 11)
x←v17592 = b←v17492;
SOURCE(26013, 81)
lab←L100074: ;
if ((x←v17592 != 0)) {
}
else {
goto lab←L100072;
};
SOURCE(26028, 38)
if (((x←v17592 & 1) == 1)) {
SOURCE(26048, 18)
word←v17564 = (word←v17564 + elem←v17536);
};
SOURCE(26068, 15)
elem←v17536 = ((word) elem←v17536 << 2);
SOURCE(26085, 9)
x←v17592 = ((word) x←v17592 >> 1);
goto lab←L100074;
lab←L100072: ;
SOURCE(26105, 13)
(* (( (hPt) new←v17436)+b←v17492) ) = BCK(word←v17564, 65536);
};
if ((b←v17492 >= 255)) {
goto lab←L100068;
};
b←v17492 = (b←v17492 + 1);
goto lab←L100071;
lab←L100068: ;
};
SOURCE(26129, 12)
return(new←v17436);
}
static void StoreWithColorMask2←P1560(maskBase←v10044, maskOffset←v10072, maskWpl←v10100, dstBase←v10128, dstOffset←v10156, dstWpl←v10184, height←v10212, width←v10240, colorWord←v10268)
word maskBase←v10044;
word maskOffset←v10072;
word maskWpl←v10100;
word dstBase←v10128;
word dstOffset←v10156;
word dstWpl←v10184;
word height←v10212;
word width←v10240;
word colorWord←v10268;
{
register ptr gf←c59064 = (ptr) &globalframe;
/* StoreWithColorMask2: */
SOURCE(26147, 3827)
SOURCE(26678, 3310)
{
word expand←v17636;
word dstMod←v17664;
word maskMod←v17692;
word tailMask←v17720;
SOURCE(26680, 39)
expand←v17636 = (* (( (ptr) gf←c59064)+9)/* expandArray2←v5268 */ );
SOURCE(26721, 53)
dstOffset←v10156 = ((word) dstOffset←v10156 << 1);
dstMod←v17664 = (dstOffset←v10156 & 037);
SOURCE(26776, 39)
maskMod←v17692 = (maskOffset←v10072 & 037);
SOURCE(26817, 74)
{
word var←c56824;
var←c56824 = (word) XRM←BITRSHIFT( (word) -1, (width←v10240 & 037));
tailMask←v17720 = (word) XRM←BITNOT(var←c56824);
};
SOURCE(26893, 48)
dstBase←v10128 = (dstBase←v10128 + ((word) ((word) dstOffset←v10156 >> 5) << 2));
SOURCE(26944, 51)
maskBase←v10044 = (maskBase←v10044 + ((word) ((word) maskOffset←v10072 >> 5) << 2));
SOURCE(26997, 41)
if ((tailMask←v17720 == 0)) {
SOURCE(27018, 20)
tailMask←v17720 = (word) -1;
};
SOURCE(27040, 2934)
if ( ( (width←v10240 <= 32) ? (maskMod←v17692 == 0) : 0 ) ) {
SOURCE(27079, 1172)
lab←L100077: ;
SOURCE(27079, 1172)
{
word maskW←v17776;
SOURCE(27082, 50)
maskW←v17776 = (word) XRM←BITAND(tailMask←v17720, (* (ptr) maskBase←v10044 ));
SOURCE(27134, 987)
if ((maskW←v17776 != 0)) {
SOURCE(27152, 971)
{
word b0←v17820;
word b1←v17848;
word b2←v17876;
word b3←v17904;
word dstMask0←v17932;
word dstMask1←v17960;
word dstMask2←v17988 = 0;
SOURCE(27154, 46)
b0←v17820 = ((word) XRM←BITRSHIFT(maskW←v17776, 24) & 0377);
SOURCE(27202, 46)
b1←v17848 = ((word) XRM←BITRSHIFT(maskW←v17776, 16) & 0377);
SOURCE(27250, 45)
b2←v17876 = ((word) XRM←BITRSHIFT(maskW←v17776, 8) & 0377);
SOURCE(27297, 24)
b3←v17904 = (maskW←v17776 & 0377);
SOURCE(27323, 62)
dstMask0←v17932 = ((word) XRM←BITLSHIFT( (unsigned) (word) (* (( (hPt) expand←v17636)+b0←v17820) ), 16) + (unsigned) (word) (* (
( (hPt) expand←v17636)+b1←v17848) ));
SOURCE(27387, 62)
dstMask1←v17960 = ((word) XRM←BITLSHIFT( (unsigned) (word) (* (( (hPt) expand←v17636)+b2←v17876) ), 16) + (unsigned) (word) (* (
( (hPt) expand←v17636)+b3←v17904) ));
SOURCE(27471, 236)
if ((dstMod←v17664 != 0)) {
SOURCE(27490, 219)
{
word dmc←v18032;
SOURCE(27492, 43)
dmc←v18032 = ((32 - dstMod←v17664) & 037);
SOURCE(27537, 42)
dstMask2←v17988 = (word) XRM←BITLSHIFT(dstMask1←v17960, dmc←v18032);
SOURCE(27581, 79)
dstMask1←v17960 = ((word) XRM←BITLSHIFT(dstMask0←v17932, dmc←v18032) + (word) XRM←BITRSHIFT(dstMask1←v17960, dstMod←v17664)
);
SOURCE(27662, 45)
dstMask0←v17932 = (word) XRM←BITRSHIFT(dstMask0←v17932, dstMod←v17664);
};
};
SOURCE(27712, 135)
if ((dstMask0←v17932 != 0)) {
SOURCE(27733, 114)
{
word var←c56856;
{
word var←c56888;
word var←c56952;
{
/*1*/ word var←c56920;
/*1*/ var←c56920 = (word) XRM←BITNOT(dstMask0←v17932);
/*1*/ var←c56888 = (word) XRM←BITAND(var←c56920, (* (ptr) dstBase←v10128 ));
/*1*/ };
var←c56952 = (word) XRM←BITAND(dstMask0←v17932, colorWord←v10268);
var←c56856 = (word) XRM←BITOR(var←c56888, var←c56952);
};
(* (ptr) dstBase←v10128 ) = var←c56856;
};
};
SOURCE(27849, 135)
if ((dstMask1←v17960 != 0)) {
SOURCE(27870, 114)
{
word var←c56984;
{
word var←c57016;
word var←c57080;
{
/*1*/ word var←c57048;
/*1*/ var←c57048 = (word) XRM←BITNOT(dstMask1←v17960);
/*1*/ var←c57016 = (word) XRM←BITAND(var←c57048, (* (( (ptr) dstBase←v10128)+1) ));
/*1*/ };
var←c57080 = (word) XRM←BITAND(dstMask1←v17960, colorWord←v10268);
var←c56984 = (word) XRM←BITOR(var←c57016, var←c57080);
};
(* (( (ptr) dstBase←v10128)+1) ) = var←c56984;
};
};
SOURCE(27986, 135)
if ((dstMask2←v17988 != 0)) {
SOURCE(28007, 114)
{
word var←c57112;
{
word var←c57144;
word var←c57208;
{
/*1*/ word var←c57176;
/*1*/ var←c57176 = (word) XRM←BITNOT(dstMask2←v17988);
/*1*/ var←c57144 = (word) XRM←BITAND(var←c57176, (* (( (ptr) dstBase←v10128)+2) ));
/*1*/ };
var←c57208 = (word) XRM←BITAND(dstMask2←v17988, colorWord←v10268);
var←c57112 = (word) XRM←BITOR(var←c57144, var←c57208);
};
(* (( (ptr) dstBase←v10128)+2) ) = var←c57112;
};
};
};
};
SOURCE(28126, 19)
if ((height←v10212 == 1)) {
SOURCE(28145, 4)
goto lab←L100076;
};
SOURCE(28151, 40)
maskBase←v10044 = (maskBase←v10044 + ((word) maskWpl←v10100 << 2));
SOURCE(28193, 37)
dstBase←v10128 = (dstBase←v10128 + ((word) dstWpl←v10184 << 2));
SOURCE(28232, 19)
height←v10212 = (height←v10212 - 1);
};
goto lab←L100077;
lab←L100076: ;
}
else {
SOURCE(28269, 1716)
{
word maskMask←v18076;
word maskModC←v18104;
SOURCE(28271, 74)
{
word var←c57240;
var←c57240 = (word) XRM←BITRSHIFT( (word) -1, (width←v10240 & 037));
maskMask←v18076 = (word) XRM←BITNOT(var←c57240);
};
SOURCE(28347, 47)
maskModC←v18104 = ((32 - maskMod←v17692) & 037);
SOURCE(28396, 1578)
lab←L100080: ;
SOURCE(28396, 1578)
{
word dstPtr←v18148;
word maskPtr←v18176;
word rem←v18204;
SOURCE(28399, 29)
dstPtr←v18148 = dstBase←v10128;
SOURCE(28430, 31)
maskPtr←v18176 = maskBase←v10044;
SOURCE(28463, 21)
rem←v18204 = width←v10240;
SOURCE(28486, 1352)
lab←L100083: ;
SOURCE(28486, 1352)
{
word maskW←v18248;
SOURCE(28489, 24)
maskW←v18248 = (* (ptr) maskPtr←v18176 );
SOURCE(28544, 141)
if ((maskMod←v17692 != 0)) {
SOURCE(28566, 40)
maskW←v18248 = (word) XRM←BITLSHIFT(maskW←v18248, maskMod←v17692);
SOURCE(28608, 77)
if ((rem←v18204 > maskModC←v18104)) {
SOURCE(28631, 54)
maskW←v18248 = (maskW←v18248 + (word) XRM←BITRSHIFT((* (( (ptr) maskPtr←v18176)+1) ), maskModC←v18104));
};
};
SOURCE(28690, 56)
if ((rem←v18204 < 32)) {
SOURCE(28708, 38)
maskW←v18248 = (word) XRM←BITAND(maskW←v18248, tailMask←v17720);
};
SOURCE(28748, 981)
if ((maskW←v18248 != 0)) {
SOURCE(28766, 965)
{
word b0←v18292;
word b1←v18320;
word b2←v18348;
word b3←v18376;
word dstMask0←v18404;
word dstMask1←v18432;
word dstMask2←v18460 = 0;
SOURCE(28768, 46)
b0←v18292 = ((word) XRM←BITRSHIFT(maskW←v18248, 24) & 0377);
SOURCE(28816, 46)
b1←v18320 = ((word) XRM←BITRSHIFT(maskW←v18248, 16) & 0377);
SOURCE(28864, 45)
b2←v18348 = ((word) XRM←BITRSHIFT(maskW←v18248, 8) & 0377);
SOURCE(28911, 24)
b3←v18376 = (maskW←v18248 & 0377);
SOURCE(28937, 62)
dstMask0←v18404 = ((word) XRM←BITLSHIFT( (unsigned) (word) (* (( (hPt) expand←v17636)+b0←v18292) ), 16) + (unsigned) (word) (* (
( (hPt) expand←v17636)+b1←v18320) ));
SOURCE(29001, 62)
dstMask1←v18432 = ((word) XRM←BITLSHIFT( (unsigned) (word) (* (( (hPt) expand←v17636)+b2←v18348) ), 16) + (unsigned) (word) (* (
( (hPt) expand←v17636)+b3←v18376) ));
SOURCE(29085, 236)
if ((dstMod←v17664 != 0)) {
SOURCE(29104, 219)
{
/*1*/ word dmc←v18504;
SOURCE(29106, 43)
/*1*/ dmc←v18504 = ((32 - dstMod←v17664) & 037);
SOURCE(29151, 42)
/*1*/ dstMask2←v18460 = (word) XRM←BITLSHIFT(dstMask1←v18432, dmc←v18504);
SOURCE(29195, 79)
/*1*/ dstMask1←v18432 = ((word) XRM←BITLSHIFT(dstMask0←v18404, dmc←v18504) + (word) XRM←BITRSHIFT(dstMask1←v18432, dstMod←v17664)
/*1*/ );
SOURCE(29276, 45)
/*1*/ dstMask0←v18404 = (word) XRM←BITRSHIFT(dstMask0←v18404, dstMod←v17664);
/*1*/ };
};
SOURCE(29326, 133)
if ((dstMask0←v18404 != 0)) {
SOURCE(29347, 112)
{
/*1*/ word var←c57272;
/*1*/ {
/*1*/ word var←c57304;
/*1*/ word var←c57368;
/*1*/ {
/*1*/ word var←c57336;
/*1*/ var←c57336 = (word) XRM←BITNOT(dstMask0←v18404);
/*1*/ var←c57304 = (word) XRM←BITAND(var←c57336, (* (ptr) dstPtr←v18148 ));
/*1*/ };
/*1*/ var←c57368 = (word) XRM←BITAND(dstMask0←v18404, colorWord←v10268);
/*1*/ var←c57272 = (word) XRM←BITOR(var←c57304, var←c57368);
/*1*/ };
/*1*/ (* (ptr) dstPtr←v18148 ) = var←c57272;
/*1*/ };
};
SOURCE(29461, 133)
if ((dstMask1←v18432 != 0)) {
SOURCE(29482, 112)
{
/*1*/ word var←c57400;
/*1*/ {
/*1*/ word var←c57432;
/*1*/ word var←c57496;
/*1*/ {
/*1*/ word var←c57464;
/*1*/ var←c57464 = (word) XRM←BITNOT(dstMask1←v18432);
/*1*/ var←c57432 = (word) XRM←BITAND(var←c57464, (* (( (ptr) dstPtr←v18148)+1) ));
/*1*/ };
/*1*/ var←c57496 = (word) XRM←BITAND(dstMask1←v18432, colorWord←v10268);
/*1*/ var←c57400 = (word) XRM←BITOR(var←c57432, var←c57496);
/*1*/ };
/*1*/ (* (( (ptr) dstPtr←v18148)+1) ) = var←c57400;
/*1*/ };
};
SOURCE(29596, 133)
if ((dstMask2←v18460 != 0)) {
SOURCE(29617, 112)
{
/*1*/ word var←c57528;
/*1*/ {
/*1*/ word var←c57560;
/*1*/ word var←c57624;
/*1*/ {
/*1*/ word var←c57592;
/*1*/ var←c57592 = (word) XRM←BITNOT(dstMask2←v18460);
/*1*/ var←c57560 = (word) XRM←BITAND(var←c57592, (* (( (ptr) dstPtr←v18148)+2) ));
/*1*/ };
/*1*/ var←c57624 = (word) XRM←BITAND(dstMask2←v18460, colorWord←v10268);
/*1*/ var←c57528 = (word) XRM←BITOR(var←c57560, var←c57624);
/*1*/ };
/*1*/ (* (( (ptr) dstPtr←v18148)+2) ) = var←c57528;
/*1*/ };
};
};
};
SOURCE(29734, 19)
if ((rem←v18204 <= 32)) {
SOURCE(29753, 4)
goto lab←L100082;
};
SOURCE(29759, 15)
rem←v18204 = (rem←v18204 - 32);
SOURCE(29776, 30)
dstPtr←v18148 = (dstPtr←v18148 + 8);
SOURCE(29808, 30)
maskPtr←v18176 = (maskPtr←v18176 + 4);
};
goto lab←L100083;
lab←L100082: ;
SOURCE(29849, 19)
if ((height←v10212 == 1)) {
SOURCE(29868, 4)
goto lab←L100079;
};
SOURCE(29874, 40)
maskBase←v10044 = (maskBase←v10044 + ((word) maskWpl←v10100 << 2));
SOURCE(29916, 37)
dstBase←v10128 = (dstBase←v10128 + ((word) dstWpl←v10184 << 2));
SOURCE(29955, 19)
height←v10212 = (height←v10212 - 1);
};
goto lab←L100080;
lab←L100079: ;
};
};
};
}
static word CreateClass←P1620()
{
register ptr gf←c59096 = (ptr) &globalframe;
word class←v10364;
/* CreateClass: */
SOURCE(30517, 108)
SOURCE(30517, 108)
class←v10364 = 0;
SOURCE(30576, 49)
{
word pd356;
pd356 = (* (( (ptr) (* (( (ptr) gf←c59096)+111)/* var←c53048 */ ))+4) );
class←v10364 = (word) ( *( (fPt) ((* (ptr) pd356 ))))((* ((( (ptr) gf←c59096)+4)/* classCode←v3784 */ ) ), pd356);
};
SOURCE(30517, 108)
return(class←v10364);
}
/* file: ImagerHighlightContextImpl, module: ImagerHighlightContextImpl, compiled at: July 6, 1993 9:43:28 am PDT */
extern void XR←install←ImagerHighlightContextImpl() {
NoName←Q6240();
}
extern void XR←run←ImagerHighlightContextImpl() { XR←Start(&globalframe); }