/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */
/* time: October 28, 1993 1:02:47 pm PDT */
/* C2C version: April 20, 1993 (sun4) */
/* ref-counting: off */
/* file: ImagerBitmapContextImpl, module: ImagerBitmapContextImpl */
/* switches: bcfhklnouw */
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
static char versionStamp[] = "@(#)mob←version [54288896,1474950239] ImagerBitmapContextImpl";
typedef unsigned word, *ptr;
typedef unsigned char byte, *bPt;
typedef unsigned short half, *hPt;
typedef struct {word f0, f1, f2, f3;} W4;
typedef W4 *W4Pt;
typedef struct {word f0, f1, f2;} W3;
typedef W3 *W3Pt;
typedef word (*fPt)();
typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8;
typedef struct {W8 f; W8 r;} W16;
typedef struct {W16 f; word r;} W17;
typedef W16 *W16Pt;
typedef struct {word f0, f1;} W2;
typedef W2 *W2Pt;
typedef struct {word f0, f1, f2, f3, f4;} W5;
typedef struct {W8 f; W5 r;} W13;
typedef struct {W8 f; W2 r;} W10;
typedef struct {W8 f; word r;} W9;
typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7;
typedef struct {W8 f; W3 r;} W11;
#define SOURCE(p, l) /* source p, l */
static float fc59 = 1.0;
static float fc60 = 0.0;
static float fc61 = 2.0;
static float fc62 = 3.0;
static float fc63 = 2000.0;
#define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i )
#define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) )
static float fc112 = 0.5;
#define FMAX(x, y, tx, ty) ( (tx=((float) x)) >= (ty=((float) y)) ? tx : ty )
#define FABS(f, t) ( ((t=(f)) >= (float) 0.0) ? (t) : (- (t)) )
static float fc157 = 16383.0;
static float fc162 = 1048576.0;
static float fc169 = 4.0;
#define MIN(cast, x, y) ( ( cast x) < ( cast y) ? (x) : (y) )
#define MAX(cast, x, y) ( ( cast x) > ( cast y) ? (x) : (y) )
static float fc275 = 262144.0;
static void NoName←Q5040();
static void ImagerBitmapContextImpl←P0();
static word Create←P60();
static void SetBitmap←P120();
static word GetBitmap←P180();
static void MakeSimpleBrick←P240();
static void SetBrick←P300();
static void BitmapSetHalftoneProperties←P360();
static void GetBrick←P420();
static void SetSeparation←P480();
static word GetSeparation←P540();
static void GetExtendedBox←P600();
static word GetColorTransform←P660();
static void Transform←P720();
static void MakeTile←P780();
static void BitmapSetColor←P840();
static word TryTransformingBitmapIntoTile←P900();
static void action←P3360();
static word ComputeSource←P960();
static void BitmapSetSampledColor←P1020();
static word compare←P3420();
static void BitmapMaskBoxes←P1080();
static void Action←P3624();
static void Action←P3732();
static void BitmapMaskRegion←P1140();
static void BitmapMaskBitmap←P1200();
static void BitmapMaskRawBitmaps←P1260();
static void BitmapDrawBitmap←P1320();
static void BitmapMoveBox←P1380();
static void BitmapSwitchBuffer←P1440();
static word FindBitsAtTransformation←P1500();
static word NoName←Q5100();
static void InsertBitsAtTransformation←P1560();
static word NoName←Q5160();
static void EnforceLimits←P1620();
static word TrimBitsAfterIndex←P3936();
static word TrimBits←P3996();
static void RemoveBitsAtTransformation←P1680();
static word DeleteBitsFromList←P1740();
static void FindBitsAndNeighbors←P1800();
static void BitmapDrawObjectMultiColor←P1860();
static void ClipAndDraw←P4296();
static void save←P4500();
static word RenderOntoWhite←P1920();
static void proc←P4560();
static word BitmapGetBufferColorOperator←P1980();
static void BitmapAccessBuffer←P2040();
static void NoName←Q5220();
static void NoName←Q5280();
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, "\257\300\260\302\146\322\300\075\027\134\123\100\354\000\000"};
static struct {unsigned f; char r[12];} string4 = {589833, "\011\000\004\100\240\040\001\030\001\000\000"};
static struct {unsigned f; char r[16];} string5 = {851984, "\257\300\361\072\110\004\300\054\212\055\367\100\274\000\000"};
static struct {unsigned f; char r[4];} string6 = {131074, "\003\001\000"};
static struct {unsigned f; char r[44];} string7 = {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[44];} string8 = {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];} string9 = {851984, "\257\300\003\074\142\000\300\127\351\364\137\102\140\000\000"};
static struct {unsigned f; char r[16];} string10 = {851984, "\257\300\241\011\366\176\300\127\130\105\301\100\274\000\000"};
static struct {unsigned f; char r[4];} string11 = {131074, "\003\016\000"};
static struct {unsigned f; char r[16];} string12 = {851984, "\257\300\003\074\142\000\300\127\351\364\137\100\214\000\000"};
static struct {unsigned f; char r[40];} string13 = {2490406, "\006\016\000\001\004\001\010\001\034\003\001\050\001\054\013\070\001\100\100\001\100\104\001\100\110\001\100\114\001\100\120\001\100\124\001\100\130\001\000"};
static struct {unsigned f; char r[16];} string14 = {851984, "\257\300\207\164\301\163\300\327\135\041\305\104\334\000\000"};
static struct {unsigned f; char r[4];} string15 = {131074, "\004\012\000"};
static struct {unsigned f; char r[16];} string16 = {851984, "\257\300\362\033\246\002\300\160\342\266\057\100\214\000\000"};
static struct {unsigned f; char r[4];} string17 = {196611, "\004q\377"};
static struct {unsigned f; char r[16];} string18 = {851984, "\257\300\003\074\142\000\300\127\351\364\137\102\204\000\000"};
static struct {unsigned f; char r[12];} string19 = {589833, "\007@` \002\004\003\0043\000\000"};
static struct {unsigned f; char r[16];} string20 = {851984, "\257\300\207\164\301\163\300\327\135\041\305\106\214\000\000"};
static struct {unsigned f; char r[48];} string21 = {2883632, "\260\006\005\146\151\162\163\164\216\257\300\003\074\142\000\300\127\351\364\137\102\204\005\004\162\145\163\164\214\216\257\300\003\074\142\000\300\127\351\364\137\102\204\261\000\000\000"};
static struct {unsigned f; char r[4];} string22 = {131074, "\004\003\000"};
static struct {unsigned f; char r[20];} string23 = {1179668, "\260\006\005\146\151\162\163\164\217\005\004\162\145\163\164\214\217\261\000"};
static struct {unsigned f; char r[16];} string24 = {851984, "\257\300\213\226\301\143\300\072\355\320\373\103\274\000\000"};
static struct {unsigned f; char r[16];} string25 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"};
static struct {unsigned f; char r[16];} string26 = {851984, "\257\300\003\074\142\000\300\127\351\364\137\102\154\000\000"};
static struct {unsigned f; char r[16];} string27 = {851984, "\257\300\003\074\142\000\300\127\351\364\137\101\240\000\000"};
static struct {unsigned f; char r[4];} string28 = {131074, "\004'\000"};
static struct {unsigned f; char r[48];} string29 = {2949168, "Unknown special color has no substitute value\000\000"};
static struct {unsigned f; char r[12];} string30 = {655372, "BitmapTile\000"};
static struct {unsigned f; char r[8];} string31 = {458760, "Stipple"};
static struct {unsigned f; char r[8];} string32 = {393224, "Bitmap\000"};
static struct {unsigned f; char r[16];} string33 = {851984, "\257\300\003\074\142\000\300\127\351\364\137\100\164\000\000"};
static struct {unsigned f; char r[32];} string34 = {1835036, "\006\011\040\001\050\003\001\064\013\100\100\013\100\114\001\100\130\001\100\144\001\100\150\001\100\320\004\037\000\000\000"};
static struct {unsigned f; char r[16];} string35 = {851984, "\257\300\242\221\264\046\300\105\142\142\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string36 = {851984, "\257\300\161\264\233\303\300\026\075\022\161\100\150\000\000"};
static struct {unsigned f; char r[16];} string37 = {851984, "\257\300\241\011\366\176\300\127\130\105\301\100\150\000\000"};
static struct {unsigned f; char r[16];} string38 = {851984, "\257\300\074\177\166\242\300\203\113\217\044\100\150\000\000"};
static struct {unsigned f; char r[16];} string39 = {851984, "\257\300\170\064\225\306\300\207\372\245\271\100\150\000\000"};
static struct {unsigned f; char r[16];} string40 = {1231905127, "erBitmapContext"};
static struct {unsigned f; char r[16];} string41 = {851984, "\257\300\353\300\316\013\300\313\011\345\022\100\150\000\000"};
static struct {unsigned f; char r[16];} string42 = {851984, "\257\300\000\172\225\152\300\104\041\252\375\100\150\000\000"};
static struct {unsigned f; char r[16];} string43 = {851984, "\257\300ZT?\010\300\370;=;@h\000\000"};
static struct {unsigned f; char r[16];} string44 = {851984, "\257\300\207\164\301\163\300\327\135\041\305\100\150\000\000"};
static struct {unsigned f; char r[16];} string45 = {851984, "\257\300\362\033\246\002\300\160\342\266\057\100\150\000\000"};
static struct {unsigned f; char r[16];} string46 = {851984, "\257\300\254\224\163\216\300\143\061\230\115\100\150\000\000"};
static struct {unsigned f; char r[16];} string47 = {851984, "\257\300\320\075\073\162\300\001\171\341\017\100\150\000\000"};
static struct {unsigned f; char r[16];} string48 = {851984, "\257\300\260\302\146\322\300\075\027\134\123\100\150\000\000"};
static struct {unsigned f; char r[16];} string49 = {851984, "\257\300\230\052\311\306\300\242\375\035\324\100\150\000\000"};
static struct {unsigned f; char r[16];} string50 = {851984, "\257\300\205\026\031\133\300\153\303\216\034\100\150\000\000"};
static struct {unsigned f; char r[16];} string51 = {851984, "\257\300\067\246\211\216\300\354\224\134\067\100\150\000\000"};
static struct {unsigned f; char r[16];} string52 = {851984, "\257\300\213\226\301\143\300\072\355\320\373\100\150\000\000"};
static struct {unsigned f; char r[16];} string53 = {851984, "\257\300\121\117\377\026\300\315\013\026\004\100\150\000\000"};
static struct {unsigned f; char r[16];} string54 = {851984, "\257\300\246\205\220\035\300\344\000\142\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string55 = {851984, "\257\300\243\162\130\311\300\344\000\142\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string56 = {851984, "\257\300\247\031\224\326\300\123\162\224\023\100\150\000\000"};
static struct {
word f0[57]; 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;
word f88; word f89; word f90; word f91;
word f92; word f93; word f94; word f95;
word f96; word f97; word f98; word f99;
word f100; word f101; word f102; word f103;
word f104; word f105; word f106; word f107;
word f108; word f109; word f110; word f111;
word f112; word f113; word f114; word f115;
word f116; word f117; word f118; word f119;
word f120; word f121; word f122; word f123;
word f124; word f125; word f126; word f127;
word f128; word f129; word f130; word f131;
word f132; word f133; word f134; word f135[34];
} globalframe = {
{0}, (word) BitmapAccessBuffer←P2040, 0, (word) BitmapGetBufferColorOperator←P1980,
0, (word) RenderOntoWhite←P1920, 0, (word) BitmapDrawObjectMultiColor←P1860,
0, (word) FindBitsAndNeighbors←P1800, 0, (word) DeleteBitsFromList←P1740,
0, (word) RemoveBitsAtTransformation←P1680, 0, (word) EnforceLimits←P1620,
0, (word) InsertBitsAtTransformation←P1560, 0, (word) FindBitsAtTransformation←P1500,
0, (word) BitmapSwitchBuffer←P1440, 0, (word) BitmapMoveBox←P1380,
0, (word) BitmapDrawBitmap←P1320, 0, (word) BitmapMaskRawBitmaps←P1260,
0, (word) BitmapMaskBitmap←P1200, 0, (word) BitmapMaskRegion←P1140,
0, (word) BitmapMaskBoxes←P1080, 0, (word) BitmapSetSampledColor←P1020,
0, (word) ComputeSource←P960, 0, (word) TryTransformingBitmapIntoTile←P900,
0, (word) BitmapSetColor←P840, 0, (word) MakeTile←P780,
0, (word) Transform←P720, 0, (word) GetColorTransform←P660,
0, (word) GetExtendedBox←P600, 0, (word) GetSeparation←P540,
0, (word) SetSeparation←P480, 0, (word) GetBrick←P420,
0, (word) BitmapSetHalftoneProperties←P360, 0, (word) SetBrick←P300,
0, (word) MakeSimpleBrick←P240, 0, (word) GetBitmap←P180,
0, (word) SetBitmap←P120, 0, (word) Create←P60,
0, (word) ImagerBitmapContextImpl←P0, 0, (word) 478,
(word) 33343, (word) 39493, (word) 31686, (word) 2090,
(word) 58566, (word) 15129, (word) 55285, {0}
};
static void NoName←Q5040()
{
register ptr gf←c0481 = (ptr) &globalframe;
word var←c60580;
(* (( (ptr) gf←c0481)+27) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2);
(* (( (ptr) gf←c0481)+28) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4);
(* (( (ptr) gf←c0481)+30) ) = (word) XR←GetTypeIndex((word) &string5, 0, (word) &string6);
(* (( (ptr) gf←c0481)+31) ) = (word) XR←GetTypeIndex((word) &string7, 0, (word) &string6);
(* (( (ptr) gf←c0481)+33) ) = (word) XR←GetTypeIndex((word) &string8, 0, (word) &string2);
(* (( (ptr) gf←c0481)+35) ) = (word) XR←GetTypeIndex((word) &string9, 0, (word) &string2);
(* (( (ptr) gf←c0481)+36) ) = (word) XR←GetTypeIndex((word) &string10, 0, (word) &string11);
(* (( (ptr) gf←c0481)+39) ) = (word) XR←GetTypeIndex((word) &string12, 0, (word) &string13);
(* (( (ptr) gf←c0481)+40) ) = (word) XR←GetTypeIndex((word) &string14, 0, (word) &string15);
(* (( (ptr) gf←c0481)+41) ) = (word) XR←GetTypeIndex((word) &string16, 0, (word) &string17);
(* (( (ptr) gf←c0481)+42) ) = (word) XR←GetTypeIndex((word) &string18, 0, (word) &string19);
(* (( (ptr) gf←c0481)+43) ) = (word) XR←GetTypeIndexS((word) (&string20));
(* (( (ptr) gf←c0481)+44) ) = (word) XR←GetTypeIndex((word) &string21, 0, (word) &string22);
(* (( (ptr) gf←c0481)+45) ) = (word) XR←GetTypeIndex((word) &string23, 0, (word) &string22);
(* (( (ptr) gf←c0481)+46) ) = (word) XR←GetTypeIndexS((word) (&string24));
(* (( (ptr) gf←c0481)+48) ) = (word) XR←GetTypeIndex((word) &string25, 0, (word) &string2);
(* (( (ptr) gf←c0481)+49) ) = (word) XR←GetTypeIndex((word) &string26, 0, (word) &string2);
(* (( (ptr) gf←c0481)+50) ) = (word) XR←GetTypeIndex((word) &string27, 0, (word) &string28);
(* (ptr) (( (bPt) gf←c0481)+208) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0481)+48) ), (word) &string29);
(* (ptr) (( (bPt) gf←c0481)+212) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0481)+27) ), (word) &string30);
(* (ptr) (( (bPt) gf←c0481)+216) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0481)+27) ), (word) &string31);
(* (ptr) (( (bPt) gf←c0481)+220) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0481)+33) ), (word) &string32);
(* (ptr) (( (bPt) gf←c0481)+224) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0481)+27) ), (word) &string32);
(void) XR←DeclareGlobalFrame((word) "ImagerBitmapContextImpl", &globalframe, (word) XR←GetTypeIndex((word) &string33, 0, (word) &string34)
, (word) (( (bPt) gf←c0481)+500)/* var←c55620 */ );
var←c60580 = (word) XR←ImportInterface((word) "RefTab", (word) XR←GetTypeIndexS((word) (&string35)), 16);
(* (( (ptr) gf←c0481)+147)/* var←c56068 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 67371521);
(void) XR←ImportProcS(var←c60580, 67634946);
(void) XR←ImportProcS(var←c60580, 67635458);
(void) XR←ImportProcS(var←c60580, 67896579);
(void) XR←ImportProcS(var←c60580, 134742786);
(void) XR←ImportProcS(var←c60580, 67895555);
var←c60580 = (word) XR←ImportInterface((word) "FunctionCache", (word) XR←GetTypeIndexS((word) (&string36)), 14);
(* (( (ptr) gf←c0481)+161)/* var←c58436 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 1311237);
(void) XR←ImportProcS(var←c60580, 135005443);
(void) XR←ImportProcS(var←c60580, 67112192);
var←c60580 = (word) XR←ImportInterface((word) "ImagerDevice", (word) XR←GetTypeIndexS((word) (&string37)), 2);
(* (( (ptr) gf←c0481)+151)/* var←c56420 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 69730569);
var←c60580 = (word) XR←ImportInterface((word) "Imager", (word) XR←GetTypeIndexS((word) (&string38)), 84);
(* (( (ptr) gf←c0481)+155)/* var←c56868 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 526594);
(void) XR←ImportProcS(var←c60580, 790786);
(void) XR←ImportProcS(var←c60580, 1853957);
(void) XR←ImportProcS(var←c60580, 1593091);
(void) XR←ImportProcS(var←c60580, 542978);
(void) XR←ImportProcS(var←c60580, 526850);
(void) XR←ImportProcS(var←c60580, 790018);
(void) XR←ImportProcS(var←c60580, 526338);
(void) XR←ImportProcS(var←c60580, 536578);
var←c60580 = (word) XR←ImportInterface((word) "ImagerBackdoor", (word) XR←GetTypeIndexS((word) (&string39)), 42);
(* (( (ptr) gf←c0481)+154)/* var←c56836 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 524802);
(void) XR←ImportProcS(var←c60580, 67899395);
(void) XR←ImportProcS(var←c60580, 268700417);
(void) XR←ImportProcS(var←c60580, 67373057);
var←c60580 = (word) XR←ImportInterface((word) &string40, (word) XR←GetTypeIndexS((word) (&string41)), 8);
(* (( (ptr) gf←c0481)+166)/* var←c60388 */ ) = var←c60580;
var←c60580 = (word) XR←ImportInterface((word) "ImagerBox", (word) XR←GetTypeIndexS((word) (&string42)), 7);
(* (( (ptr) gf←c0481)+162)/* var←c59716 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 270533634);
(void) XR←ImportProcS(var←c60580, 269484033);
var←c60580 = (word) XR←ImportInterface((word) "ImagerColor", (word) XR←GetTypeIndexS((word) (&string43)), 32);
(* (( (ptr) gf←c0481)+167)/* var←c60516 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 68159492);
var←c60580 = (word) XR←ImportInterface((word) "ImagerColorPrivate", (word) XR←GetTypeIndexS((word) (&string44)), 48);
(* (( (ptr) gf←c0481)+156)/* var←c56996 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 67905795);
(void) XR←ImportProcS(var←c60580, 67379201);
(void) XR←ImportProcS(var←c60580, 67643138);
(void) XR←ImportProcS(var←c60580, 67641090);
(void) XR←ImportProcS(var←c60580, 67642882);
var←c60580 = (word) XR←ImportInterface((word) "ImagerDeviceColor", (word) XR←GetTypeIndexS((word) (&string45)), 14);
(* (( (ptr) gf←c0481)+152)/* var←c56484 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 1051396);
(void) XR←ImportProcS(var←c60580, 67371265);
var←c60580 = (word) XR←ImportInterface((word) "ImagerMaskCache", (word) XR←GetTypeIndexS((word) (&string46)), 21);
(* (( (ptr) gf←c0481)+149)/* var←c56260 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 67375105);
(void) XR←ImportProcS(var←c60580, 4460802);
var←c60580 = (word) XR←ImportInterface((word) "ImagerMaskCapture", (word) XR←GetTypeIndexS((word) (&string47)), 5);
(* (( (ptr) gf←c0481)+163)/* var←c59780 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 68158212);
var←c60580 = (word) XR←ImportInterface((word) "ImagerPixel", (word) XR←GetTypeIndexS((word) (&string48)), 9);
(* (( (ptr) gf←c0481)+160)/* var←c57796 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 2361350);
(void) XR←ImportProcS(var←c60580, 68420869);
var←c60580 = (word) XR←ImportInterface((word) "ImagerPixelArray", (word) XR←GetTypeIndexS((word) (&string49)), 13);
(* (( (ptr) gf←c0481)+159)/* var←c57668 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 2623240);
var←c60580 = (word) XR←ImportInterface((word) "ImagerPrivate", (word) XR←GetTypeIndexS((word) (&string50)), 25);
(* (( (ptr) gf←c0481)+165)/* var←c60132 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 1313028);
var←c60580 = (word) XR←ImportInterface((word) "ImagerRaster", (word) XR←GetTypeIndexS((word) (&string51)), 13);
(* (( (ptr) gf←c0481)+148)/* var←c56196 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 67371009);
(void) XR←ImportProcS(var←c60580, 1312514);
(void) XR←ImportProcS(var←c60580, 67371521);
(void) XR←ImportProcS(var←c60580, 68419845);
var←c60580 = (word) XR←ImportInterface((word) "ImagerSample", (word) XR←GetTypeIndexS((word) (&string52)), 60);
(* (( (ptr) gf←c0481)+153)/* var←c56516 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 68425474);
(void) XR←ImportProcS(var←c60580, 1322500);
(void) XR←ImportProcS(var←c60580, 2109189);
(void) XR←ImportProcS(var←c60580, 798979);
(void) XR←ImportProcS(var←c60580, 1586437);
(void) XR←ImportProcS(var←c60580, 1062660);
(void) XR←ImportProcS(var←c60580, 1583621);
(void) XR←ImportProcS(var←c60580, 1324037);
(void) XR←ImportProcS(var←c60580, 1062404);
(void) XR←ImportProcS(var←c60580, 68161027);
(void) XR←ImportProcS(var←c60580, 268801);
(void) XR←ImportProcS(var←c60580, 273409);
(void) XR←ImportProcS(var←c60580, 67901442);
(void) XR←ImportProcS(var←c60580, 68432389);
(void) XR←ImportProcS(var←c60580, 267009);
(void) XR←ImportProcS(var←c60580, 262913);
(void) XR←ImportProcS(var←c60580, 2370311);
(void) XR←ImportProcS(var←c60580, 1321220);
(void) XR←ImportProcS(var←c60580, 68686339);
(void) XR←ImportProcS(var←c60580, 67371521);
(void) XR←ImportProcS(var←c60580, 1320708);
(void) XR←ImportProcS(var←c60580, 68685571);
var←c60580 = (word) XR←ImportInterface((word) "ImagerTransformation", (word) XR←GetTypeIndexS((word) (&string53)), 55);
(* (( (ptr) gf←c0481)+150)/* var←c56324 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 135013378);
(void) XR←ImportProcS(var←c60580, 67371521);
(void) XR←ImportProcS(var←c60580, 67908355);
(void) XR←ImportProcS(var←c60580, 134493185);
(void) XR←ImportProcS(var←c60580, 262401);
(void) XR←ImportProcS(var←c60580, 67383041);
(void) XR←ImportProcS(var←c60580, 269756930);
(void) XR←ImportProcS(var←c60580, 1319173);
(void) XR←ImportProcS(var←c60580, 67371777);
var←c60580 = (word) XR←ImportInterface((word) "Real", (word) XR←GetTypeIndexS((word) (&string54)), 11);
(* (( (ptr) gf←c0481)+158)/* var←c57508 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 67372033);
(void) XR←ImportProcS(var←c60580, 67371521);
var←c60580 = (word) XR←ImportInterface((word) "SF", (word) XR←GetTypeIndexS((word) (&string55)), 19);
(* (( (ptr) gf←c0481)+157)/* var←c57124 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 270012418);
(void) XR←ImportProcS(var←c60580, 68160769);
var←c60580 = (word) XR←ImportInterface((word) "Vector2", (word) XR←GetTypeIndexS((word) (&string56)), 22);
(* (( (ptr) gf←c0481)+164)/* var←c60100 */ ) = var←c60580;
(void) XR←ImportProcS(var←c60580, 135266818);
(void) XR←ImportProcS(var←c60580, 135266306);
var←c60580 = (word) XR←ExportInterface((word) &string40, (word) XR←GetTypeIndexS((word) (&string41)), 8);
(* (( (ptr) gf←c0481)+168)/* var←c60612 */ ) = var←c60580;
(void) XR←ExportVar(var←c60580, 0, (word) (( (bPt) gf←c0481)+32)/* classCode←v3980 */ );
(void) XR←ExportProcS(var←c60580, (word) (( (bPt) gf←c0481)+492)/* var←c55588 */ , 69206278, (word) "Create");
(void) XR←ExportProcS(var←c60580, (word) (( (bPt) gf←c0481)+484)/* var←c55556 */ , 524802, (word) "SetBitmap");
(void) XR←ExportProcS(var←c60580, (word) (( (bPt) gf←c0481)+476)/* var←c55524 */ , 67371777, (word) "GetBitmap");
(void) XR←ExportProcS(var←c60580, (word) (( (bPt) gf←c0481)+460)/* var←c55460 */ , 1049602, (word) "SetBrick");
(void) XR←ExportProcS(var←c60580, (word) (( (bPt) gf←c0481)+444)/* var←c55396 */ , 201590017, (word) "GetBrick");
(void) XR←ExportProcS(var←c60580, (word) (( (bPt) gf←c0481)+436)/* var←c55364 */ , 525826, (word) "SetSeparation");
(void) XR←ExportProcS(var←c60580, (word) (( (bPt) gf←c0481)+428)/* var←c55332 */ , 67372801, (word) "GetSeparation");
}
static void ImagerBitmapContextImpl←P0(formal←c093, formal←c082)
word formal←c093;
word formal←c082;
{
register ptr gf←c60644 = (ptr) &globalframe;
/* ImagerBitmapContextImpl: */
SOURCE(1767, 32891)
/* moved to installation proc */
/* moved to installation proc */
/* moved to installation proc */
/* moved to installation proc */
/* moved to installation proc */
/* moved to installation proc */
/* moved to installation proc */
/* moved to installation proc */
(* (( (ptr) gf←c60644)+145) ) = 4;
(* (( (ptr) gf←c60644)+146) ) = 4;
SOURCE(2681, 32)
(* (( (ptr) gf←c60644)+8)/* classCode←v3980 */ ) = (* (( (ptr) gf←c60644)+56) );
SOURCE(2715, 28)
(* (( (ptr) gf←c60644)+9)/* fontCacheMaxSize←v4008 */ ) = 4000;
SOURCE(5545, 124)
(void) MakeSimpleBrick←P240((word) (( (bPt) gf←c60644)+40)/* coarseBrick←v4232 */ , (* (W4Pt) (( (ptr) gf←c60644)+127)/* var←c55684 */ ))
;
SOURCE(5672, 122)
(void) MakeSimpleBrick←P240((word) (( (bPt) gf←c60644)+52)/* fineBrick←v4260 */ , (* (W4Pt) (( (ptr) gf←c60644)+131)/* var←c55748 */ ))
;
SOURCE(5797, 43)
(* (W3Pt) (( (ptr) gf←c60644)+16)/* defaultBrick←v4288 */ ) = (* (W3Pt) (( (ptr) gf←c60644)+13)/* fineBrick←v4260 */ );
SOURCE(7870, 20)
(* (( (ptr) gf←c60644)+19)/* allowedColorSpaces←v4484 */ ) = XR←NewObject(8, (* (( (ptr) gf←c60644)+31) ));
{
word var←c56004;
var←c56004 = (* (( (ptr) gf←c60644)+19)/* allowedColorSpaces←v4484 */ );
};
SOURCE(14177, 21)
(* (( (ptr) gf←c60644)+20)/* newStuff←v4708 */ ) = 1;
SOURCE(21311, 110)
{
word var←c56036;
word var←c56100;
{
word pd57;
pd57 = (* (( (ptr) (* (( (ptr) gf←c60644)+147)/* var←c56068 */ ))+5) );
var←c56036 = (word) ( *( (fPt) ((* (ptr) pd57 ))))(101, 0, 0, pd57);
};
var←c56100 = XR←NewObject(16, (* (( (ptr) gf←c60644)+35) ));
(* (ptr) var←c56100 ) = var←c56036;
(* (( (ptr) gf←c60644)+22)/* objectTable←v5100 */ ) = var←c56100;
};
SOURCE(22124, 21)
(* (( (ptr) gf←c60644)+23)/* maxObjects←v5268 */ ) = 500;
SOURCE(22147, 34)
(* (( (ptr) gf←c60644)+24)/* maxWordsOfStorage←v5296 */ ) = 250000;
SOURCE(33863, 490)
{
word var←c56132;
var←c56132 = XR←NewObject(60, (* (( (ptr) gf←c60644)+36) ));
(* (ptr) var←c56132 ) = (word) (( (bPt) gf←c60644)+388)/* var←c55172 */ ;
(* (( (ptr) var←c56132)+2) ) = (word) (( (bPt) gf←c60644)+452)/* var←c55428 */ ;
(* (( (ptr) var←c56132)+3) ) = (word) (( (bPt) gf←c60644)+356)/* var←c55044 */ ;
(* (( (ptr) var←c56132)+4) ) = (word) (( (bPt) gf←c60644)+348)/* var←c55012 */ ;
(* (( (ptr) var←c56132)+5) ) = (word) (( (bPt) gf←c60644)+340)/* var←c54980 */ ;
(* (( (ptr) var←c56132)+6) ) = XR←CheckProc(0);
(* (( (ptr) var←c56132)+7) ) = (word) (( (bPt) gf←c60644)+332)/* var←c54948 */ ;
(* (( (ptr) var←c56132)+8) ) = (word) (( (bPt) gf←c60644)+324)/* var←c54916 */ ;
(* (( (ptr) var←c56132)+10) ) = (word) (( (bPt) gf←c60644)+316)/* var←c54884 */ ;
(* (( (ptr) var←c56132)+11) ) = (word) (( (bPt) gf←c60644)+308)/* var←c54852 */ ;
(* (( (ptr) var←c56132)+12) ) = (word) (( (bPt) gf←c60644)+236)/* var←c54564 */ ;
(* (( (ptr) var←c56132)+13) ) = (word) (( (bPt) gf←c60644)+228)/* var←c54532 */ ;
(* (( (ptr) gf←c60644)+25)/* deviceClass←v5632 */ ) = var←c56132;
};
SOURCE(34356, 49)
{
word var←c56164;
word class←v54300;
SOURCE(34407, 162)
class←v54300 = 0;
SOURCE(34473, 49)
{
word pd58;
pd58 = (* (( (ptr) (* (( (ptr) gf←c60644)+148)/* var←c56196 */ ))+4) );
class←v54300 = (word) ( *( (fPt) ((* (ptr) pd58 ))))((* ((( (ptr) gf←c60644)+8)/* classCode←v3980 */ ) ), pd58);
};
SOURCE(34524, 45)
(* (( (ptr) class←v54300)+54) ) = (word) (( (bPt) gf←c60644)+252)/* var←c54628 */ ;
SOURCE(34407, 162)
var←c56164 = class←v54300;
(* (( (ptr) gf←c60644)+26)/* contextClass←v5660 */ ) = var←c56164;
};
SOURCE(34575, 83)
{
W17 var←c092;
W16 var←c56228;
(* (ptr) (word) &var←c092 ) = (* (( (ptr) gf←c60644)+56) );
(* (ptr) &var←c56228 ) = 4000;
(* (( (ptr) &var←c56228)+1) ) = XR←CheckProc(0);
(* (( (ptr) &var←c56228)+2) ) = (* (ptr) &fc59 );
(* (( (ptr) &var←c56228)+3) ) = (* (ptr) &fc60 );
(* (( (ptr) &var←c56228)+4) ) = (* (ptr) &fc61 );
(* (( (ptr) &var←c56228)+5) ) = (* (ptr) &fc62 );
(* (( (ptr) &var←c56228)+6) ) = (* (ptr) &fc60 );
(* (( (ptr) &var←c56228)+7) ) = (* (ptr) &fc63 );
(* (( (ptr) &var←c56228)+8) ) = (* (ptr) &fc59 );
(* (( (ptr) &var←c56228)+9) ) = (* (ptr) &fc60 );
(* (( (ptr) &var←c56228)+10) ) = (* (ptr) &fc60 );
(* (( (ptr) &var←c56228)+11) ) = (* (ptr) &fc60 );
(* (( (ptr) &var←c56228)+12) ) = (* (ptr) &fc60 );
(* (( (ptr) &var←c56228)+13) ) = 0;
(* (( (ptr) &var←c56228)+14) ) = 0;
(* (( (ptr) &var←c56228)+15) ) = 0;
(* (W16Pt) (( (ptr) (word) &var←c092) + 1) ) = (var←c56228
);
{
word pd64;
pd64 = (* (( (ptr) (* (( (ptr) gf←c60644)+149)/* var←c56260 */ ))+21) );
(void) ( *( (fPt) ((* (ptr) pd64 ))))((word) (&var←c092), pd64);
};
};
}
static word Create←P60(deviceSpaceSize←v6476, scanMode←v6504, surfaceUnitsPerInch←v6532, surfaceUnitsPerPixel←v6560, pixelUnits←v6588, fontCacheName←v6616)
W2 deviceSpaceSize←v6476;
word scanMode←v6504;
W2 surfaceUnitsPerInch←v6532;
word surfaceUnitsPerPixel←v6560;
word pixelUnits←v6588;
word fontCacheName←v6616;
{
register ptr gf←c60676 = (ptr) &globalframe;
word var←c6660;
word data←v12444;
word deviceParm←v12472;
word context←v12500;
/* Create: */
SOURCE(3816, 931)
SOURCE(4000, 71)
{
word var←c56292;
word var←c56356;
{
word pd65;
pd65 = (* (( (ptr) (* (( (ptr) gf←c60676)+150)/* var←c56324 */ ))+7) );
var←c56292 = (word) ( *( (fPt) ((* (ptr) pd65 ))))((* (ptr) (&fc59) ), pd65);
};
var←c56356 = XR←NewObject(92, (* (( (ptr) gf←c60676)+39) ));
(* (( (ptr) var←c56356)+4) ) = 1;
(* (( (ptr) var←c56356)+17) ) = var←c56292;
data←v12444 = var←c56356;
};
SOURCE(4073, 337)
{
word var←c56388;
{
word pd66;
if ((fontCacheName←v6616 == 0)) {
var←c56388 = 0;
}
else {
pd66 = (* (( (ptr) (* (( (ptr) gf←c60676)+149)/* var←c56260 */ ))+20) );
var←c56388 = (word) ( *( (fPt) ((* (ptr) pd66 ))))(fontCacheName←v6616, pd66);
};
};
{
word pd67;
word idx68;
word idx69;
pd67 = (* (( (ptr) (* (( (ptr) gf←c60676)+151)/* var←c56420 */ ))+5) );
deviceParm←v12472 = (word) ( *( (fPt) ((* (ptr) pd67 ))))((* (( (ptr) gf←c60676)+25)/* deviceClass←v5632 */ ), (
idx68 = (word) deviceSpaceSize←v6476.f0,
SGNCK(idx68)
), (
idx69 = (word) deviceSpaceSize←v6476.f1,
SGNCK(idx69)
), scanMode←v6504, surfaceUnitsPerInch←v6532, surfaceUnitsPerPixel←v6560
, var←c56388, 0, 0, pd67);
};
};
SOURCE(4412, 145)
{
word pd70;
pd70 = (* (( (ptr) (* (( (ptr) gf←c60676)+148)/* var←c56196 */ ))+5) );
context←v12500 = (word) ( *( (fPt) ((* (ptr) pd70 ))))((* (( (ptr) gf←c60676)+26)/* contextClass←v5660 */ ), (* (( (ptr) gf←c60676)+25)
/* deviceClass←v5632 */ ), deviceParm←v12472, data←v12444, pixelUnits←v6588, pd70);
};
SOURCE(4559, 25)
(* (W3Pt) (( (ptr) data←v12444)+11) ) = (* (W3Pt) (( (ptr) gf←c60676)+16)/* defaultBrick←v4288 */ );
SOURCE(4586, 87)
{
word var←c56452;
{
word pd71;
pd71 = (* (( (ptr) (* (( (ptr) gf←c60676)+148)/* var←c56196 */ ))+6) );
var←c56452 = (word) ( *( (fPt) ((* (ptr) pd71 ))))(context←v12500, pd71);
};
{
word pd72;
pd72 = (* (( (ptr) (* (( (ptr) gf←c60676)+152)/* var←c56484 */ ))+5) );
(* (( (ptr) data←v12444)+14) ) = (word) ( *( (fPt) ((* (ptr) pd72 ))))(var←c56452, pd72);
};
};
SOURCE(4675, 54)
{
word pd73;
pd73 = (* (( (ptr) (* (( (ptr) gf←c60676)+148)/* var←c56196 */ ))+11) );
(void) ( *( (fPt) ((* (ptr) pd73 ))))(context←v12500, (* (W4Pt) (( (ptr) gf←c60676)+135)/* var←c55812 */ ), pd73);
};
SOURCE(4731, 16)
return(context←v12500);
}
static void SetBitmap←P120(context←v6720, bitmap←v6748)
word context←v6720;
word bitmap←v6748;
{
register ptr gf←c60708 = (ptr) &globalframe;
word device←v12544;
word data←v12572;
/* SetBitmap: */
SOURCE(4753, 267)
SOURCE(4818, 48)
{
word pd74;
pd74 = (* (( (ptr) (* (( (ptr) gf←c60708)+148)/* var←c56196 */ ))+6) );
device←v12544 = (word) ( *( (fPt) ((* (ptr) pd74 ))))(context←v6720, pd74);
};
SOURCE(4868, 32)
data←v12572 = XR←Narrow((* (( (ptr) device←v12544)+7) ), (* (( (ptr) gf←c60708)+39) ));
SOURCE(4902, 20)
(* (( (ptr) data←v12572)+1) ) = bitmap←v6748;
SOURCE(4924, 96)
{
word pd75;
word tcp76;
pd75 = (* (( (ptr) (* (( (ptr) gf←c60708)+148)/* var←c56196 */ ))+11) );
if ((bitmap←v6748 == 0)) {
tcp76 = (word) (( (ptr) gf←c60708)+139);
/* var←c55876 */ }
else {
tcp76 = (word) bitmap←v6748;
};
(void) ( *( (fPt) ((* (ptr) pd75 ))))(context←v6720, (* (W4Pt) tcp76 ), pd75);
};
}
static word GetBitmap←P180(context←v6808)
word context←v6808;
{
register ptr gf←c60740 = (ptr) &globalframe;
word var←c6852;
word device←v12616;
word data←v12644;
/* GetBitmap: */
SOURCE(5026, 170)
SOURCE(5092, 48)
{
word pd77;
pd77 = (* (( (ptr) (* (( (ptr) gf←c60740)+148)/* var←c56196 */ ))+6) );
device←v12616 = (word) ( *( (fPt) ((* (ptr) pd77 ))))(context←v6808, pd77);
};
SOURCE(5142, 32)
data←v12644 = XR←Narrow((* (( (ptr) device←v12616)+7) ), (* (( (ptr) gf←c60740)+39) ));
SOURCE(5176, 20)
return((* (( (ptr) data←v12644)+1) ));
}
static void MakeSimpleBrick←P240(formal←c0122, t←v6912)
word formal←c0122;
W4 t←v6912;
{
register ptr gf←c60772 = (ptr) &globalframe;
W3 var←c7048;
word b←v12688;
/* MakeSimpleBrick: */
SOURCE(5202, 339)
SOURCE(5308, 78)
{
word pd78;
pd78 = (* (( (ptr) (* (( (ptr) gf←c60772)+153)/* var←c56516 */ ))+19) );
b←v12688 = (word) ( *( (fPt) ((* (ptr) pd78 ))))((* (W4Pt) (( (ptr) gf←c60772)+143)/* var←c55940 */ ), 8, 0, pd78);
};
SOURCE(5388, 84)
{
register word s←v12732 = 0;
lab←L100005: ;
SOURCE(5412, 60)
{
register word f←v12776 = 0;
lab←L100009: ;
SOURCE(5436, 36)
{
W2 var←c56548;
var←c56548.f0 = s←v12732;
var←c56548.f1 = f←v12776;
{
word pd79;
word ix80;
pd79 = (* (( (ptr) (* (( (ptr) gf←c60772)+153)/* var←c56516 */ ))+43) );
(void) ( *( (fPt) ((* (ptr) pd79 ))))(b←v12688, var←c56548, (unsigned) (
ix80 = (BCK(f←v12776, 4) + 4),
((* (( (ptr) &t←v6912)+BCK(s←v12732, 4)) ) >> (28 - ((word) ix80 << 2))) & 017
), 0, pd79);
};
};
if ((f←v12776 >= 3)) {
goto lab←L100006;
};
f←v12776 = (f←v12776 + 1);
goto lab←L100009;
lab←L100006: ;
};
if ((s←v12732 >= 3)) {
goto lab←L100002;
};
s←v12732 = (s←v12732 + 1);
goto lab←L100005;
lab←L100002: ;
};
SOURCE(5492, 49)
var←c7048.f0 = 15;
var←c7048.f1 = b←v12688;
var←c7048.f2 = 0;
/* removed tail goto */
(* (W3Pt) formal←c0122 ) = var←c7048;
return;
}
static void SetBrick←P300(context←v7108, brick←v7136)
word context←v7108;
W3 brick←v7136;
{
register ptr gf←c60804 = (ptr) &globalframe;
word device←v12820;
/* SetBrick: */
SOURCE(5843, 329)
SOURCE(5914, 48)
{
word pd81;
pd81 = (* (( (ptr) (* (( (ptr) gf←c60804)+148)/* var←c56196 */ ))+6) );
device←v12820 = (word) ( *( (fPt) ((* (ptr) pd81 ))))(context←v7108, pd81);
};
SOURCE(5964, 208)
{
word var←c56612;
var←c56612 = (* (( (ptr) device←v12820)+7) );
if ((var←c56612 == 0)) {
goto lab←L100010;
};
if (((* (( (ptr) gf←c60804)+39) ) == XR←GetReferentType(var←c56612))) {
{
word data←v12864;
data←v12864 = var←c56612;
SOURCE(6009, 74)
if (((* (( (ptr) data←v12864)+11) ) != brick←v7136.f0)) {
SOURCE(6058, 25)
(* (( (ptr) data←v12864)+16) ) = 0;
};
SOURCE(6088, 18)
(* (W3Pt) (( (ptr) data←v12864)+11) ) = brick←v7136;
SOURCE(6108, 64)
if (((* (ptr) data←v12864 ) != 0)) {
SOURCE(6133, 39)
(void) BitmapSetColor←P840(device←v12820, (* (ptr) data←v12864 ), 0);
};
};
}
else {
lab←L100010: ;
};
};
}
static void BitmapSetHalftoneProperties←P360(device←v7196, halftoneProperties←v7224)
word device←v7196;
word halftoneProperties←v7224;
{
register ptr gf←c60836 = (ptr) &globalframe;
word black←v12908;
/* BitmapSetHalftoneProperties: */
SOURCE(6198, 518)
SOURCE(6305, 58)
black←v12908 = halftoneProperties←v7224;
SOURCE(6365, 75)
lab←L100013: ;
if ( ( (black←v12908 != 0) ? ((* (( (ptr) black←v12908)+1) ) != 0) : 0 ) ) {
}
else {
goto lab←L100011;
};
SOURCE(6414, 26)
black←v12908 = (* (( (ptr) black←v12908)+6) );
goto lab←L100013;
lab←L100011: ;
SOURCE(6442, 274)
if ((black←v12908 != 0)) {
SOURCE(6462, 254)
{
word var←c56644;
var←c56644 = (* (( (ptr) device←v7196)+7) );
if ((var←c56644 == 0)) {
goto lab←L100014;
};
if (((* (( (ptr) gf←c60836)+39) ) == XR←GetReferentType(var←c56644))) {
{
word data←v12952;
data←v12952 = var←c56644;
SOURCE(6505, 213)
{
W3 brick←v12996;
SOURCE(6507, 44)
brick←v12996 = (* (W3Pt) (( (ptr) black←v12908)+2) );
SOURCE(6553, 74)
if (((* (( (ptr) data←v12952)+11) ) != brick←v12996.f0)) {
SOURCE(6602, 25)
(* (( (ptr) data←v12952)+16) ) = 0;
};
SOURCE(6632, 18)
(* (W3Pt) (( (ptr) data←v12952)+11) ) = brick←v12996;
SOURCE(6652, 64)
if (((* (ptr) data←v12952 ) != 0)) {
SOURCE(6677, 39)
(void) BitmapSetColor←P840(device←v7196, (* (ptr) data←v12952 ), 0);
};
};
};
}
else {
lab←L100014: ;
};
};
};
}
static void GetBrick←P420(formal←c0140, context←v7284)
word formal←c0140;
word context←v7284;
{
register ptr gf←c60868 = (ptr) &globalframe;
W3 var←c7328;
word device←v13040;
/* GetBrick: */
SOURCE(6742, 229)
SOURCE(6815, 48)
{
word pd82;
pd82 = (* (( (ptr) (* (( (ptr) gf←c60868)+148)/* var←c56196 */ ))+6) );
device←v13040 = (word) ( *( (fPt) ((* (ptr) pd82 ))))(context←v7284, pd82);
};
SOURCE(6865, 65)
{
word var←c56676;
var←c56676 = (* (( (ptr) device←v13040)+7) );
if ((var←c56676 == 0)) {
goto lab←L100016;
};
if (((* (( (ptr) gf←c60868)+39) ) == XR←GetReferentType(var←c56676))) {
{
word data←v13084;
data←v13084 = var←c56676;
SOURCE(6910, 20)
var←c7328 = (* (W3Pt) (( (ptr) data←v13084)+11) );
goto lab←L100015;
};
}
else {
lab←L100016: ;
};
};
SOURCE(6950, 21)
var←c7328.f0 = 0;
var←c7328.f1 = 0;
var←c7328.f2 = 0;
/* removed tail goto */
lab←L100015: ;
(* (W3Pt) formal←c0140 ) = var←c7328;
return;
}
static void SetSeparation←P480(context←v7388, separation←v7416)
word context←v7388;
word separation←v7416;
{
register ptr gf←c60900 = (ptr) &globalframe;
word device←v13128;
/* SetSeparation: */
SOURCE(6975, 251)
SOURCE(7043, 48)
{
word pd83;
pd83 = (* (( (ptr) (* (( (ptr) gf←c60900)+148)/* var←c56196 */ ))+6) );
device←v13128 = (word) ( *( (fPt) ((* (ptr) pd83 ))))(context←v7388, pd83);
};
SOURCE(7093, 133)
{
word var←c56772;
var←c56772 = (* (( (ptr) device←v13128)+7) );
if ((var←c56772 == 0)) {
goto lab←L100017;
};
if (((* (( (ptr) gf←c60900)+39) ) == XR←GetReferentType(var←c56772))) {
{
word data←v13172;
data←v13172 = var←c56772;
SOURCE(7138, 28)
(* (( (ptr) data←v13172)+10) ) = separation←v7416;
SOURCE(7168, 58)
{
word var←c56804;
{
word pd84;
pd84 = (* (( (ptr) (* (( (ptr) gf←c60900)+154)/* var←c56836 */ ))+12) );
var←c56804 = (word) ( *( (fPt) ((* (ptr) pd84 ))))(context←v7388, pd84);
};
{
word pd85;
pd85 = (* (( (ptr) (* (( (ptr) gf←c60900)+155)/* var←c56868 */ ))+52) );
(void) ( *( (fPt) ((* (ptr) pd85 ))))(context←v7388, var←c56804, pd85);
};
};
};
}
else {
lab←L100017: ;
};
};
}
static word GetSeparation←P540(context←v7476)
word context←v7476;
{
register ptr gf←c60932 = (ptr) &globalframe;
word var←c7520;
word device←v13216;
/* GetSeparation: */
SOURCE(7280, 218)
SOURCE(7345, 48)
{
word pd86;
pd86 = (* (( (ptr) (* (( (ptr) gf←c60932)+148)/* var←c56196 */ ))+6) );
device←v13216 = (word) ( *( (fPt) ((* (ptr) pd86 ))))(context←v7476, pd86);
};
SOURCE(7395, 70)
{
word var←c56900;
var←c56900 = (* (( (ptr) device←v13216)+7) );
if ((var←c56900 == 0)) {
goto lab←L100018;
};
if (((* (( (ptr) gf←c60932)+39) ) == XR←GetReferentType(var←c56900))) {
{
word data←v13260;
data←v13260 = var←c56900;
SOURCE(7440, 25)
return((* (( (ptr) data←v13260)+10) ));
};
}
else {
lab←L100018: ;
};
};
SOURCE(7485, 13)
return(0);
}
static void GetExtendedBox←P600(formal←c0158, brick←v7580)
word formal←c0158;
W3 brick←v7580;
{
W4 var←c7624;
W4 box←v13332;
W2 size←v13360;
word fSizeBox←v13388;
/* GetExtendedBox: */
SOURCE(7502, 364)
SOURCE(7594, 50)
box←v13332 = (* (W4Pt) brick←v7580.f1 );
SOURCE(7646, 52)
{
W4 b←v29804;
b←v29804 = (* (W4Pt) brick←v7580.f1 );
size←v13360.f0 = (b←v29804.f2 - b←v29804.f0);
size←v13360.f1 = (b←v29804.f3 - b←v29804.f1);
};
SOURCE(7700, 22)
{
word idx87;
fSizeBox←v13388 = (
idx87 = (word) size←v13360.f1,
SGNCK(idx87)
);
};
SOURCE(7724, 124)
{
word idx88;
if ( ( ( ( (brick←v7580.f2 == 0) ? ( ( (int)size←v13360.f1 >= (int)1) ? ( (int)size←v13360.f1 < (int)32) : 0 ) : 0 ) ? ( ( (int)size←v13360.f0 >= (int)1) ? ( (int)size←v13360.f0 < (int)16) : 0 ) : 0 ) ? ((32 % (
idx88 = (word) size←v13360.f1,
SGNCK(idx88)
)) == 0) : 0 ) ) {
SOURCE(7823, 25)
box←v13332.f3 = (box←v13332.f1 + 32);
};
};
SOURCE(7853, 13)
var←c7624 = box←v13332;
/* removed tail goto */
(* (W4Pt) formal←c0158 ) = var←c7624;
return;
}
static word GetColorTransform←P660(data←v7768, colorOperator←v7796)
word data←v7768;
word colorOperator←v7796;
{
register ptr gf←c60964 = (ptr) &globalframe;
word var←c7840;
word colorSpace←v13432;
/* GetColorTransform: */
SOURCE(7940, 709)
SOURCE(8055, 114)
{
word pd89;
pd89 = (* (( (ptr) (* (( (ptr) gf←c60964)+156)/* var←c56996 */ ))+42) );
colorSpace←v13432 = (word) ( *( (fPt) ((* (ptr) pd89 ))))(colorOperator←v7796, (* (( (ptr) gf←c60964)+19)/* allowedColorSpaces←v4484 */ ), pd89)
;
};
SOURCE(8171, 444)
if ((((* (( (ptr) data←v7768)+16) ) == 0) || (colorSpace←v13432 != (* (ptr) (* (( (ptr) data←v7768)+16) ) ))) || ((* (( (ptr) data←v7768)+15)
) != (* (( (ptr) (* (( (ptr) data←v7768)+14) ))+11) ))) {
SOURCE(8290, 327)
{
word rangeMax←v13476;
word ct←v13504;
SOURCE(8292, 102)
{
word pd90;
float tf91;
pd90 = (* (( (ptr) (* (( (ptr) gf←c60964)+156)/* var←c56996 */ ))+35) );
rangeMax←v13476 = (word) ( *( (fPt) ((* (ptr) pd90 ))))(1, (
tf91 = (float)(unsigned)((* (( (ptr) data←v7768)+11) ) + 1), *(word*)&tf91
), pd90);
};
SOURCE(8396, 153)
ct←v13504 = XR←NewObject(16, (* (( (ptr) gf←c60964)+40) ));
(* (( (ptr) ct←v13504)+1) ) = rangeMax←v13476;
(* (( (ptr) ct←v13504)+2) ) = (word) (( (bPt) gf←c60964)+404)/* var←c55236 */ ;
(* (( (ptr) ct←v13504)+3) ) = (* (( (ptr) data←v7768)+14) );
SOURCE(8551, 24)
(* (( (ptr) data←v7768)+16) ) = ct←v13504;
SOURCE(8577, 38)
(* (( (ptr) data←v7768)+15) ) = (* (( (ptr) (* (( (ptr) data←v7768)+14) ))+11) );
};
};
SOURCE(8620, 29)
return((* (( (ptr) data←v7768)+16) ));
}
static void Transform←P720(self←v7900, in←v7928, out←v7956)
word self←v7900;
word in←v7928;
word out←v7956;
{
register ptr gf←c60996 = (ptr) &globalframe;
word control←v13548;
/* Transform: */
SOURCE(8653, 263)
SOURCE(8786, 65)
control←v13548 = XR←Narrow((* (( (ptr) self←v7900)+3) ), (* (( (ptr) gf←c60996)+41) ));
SOURCE(8853, 63)
{
word var←c57060;
word var←c0538;
var←c57060 = (* (( (ptr) self←v7900)+1) );
{
word limit92;
var←c0538 = (* ((( (ptr) var←c57060)+2)+(
limit92 = (* (( (ptr) var←c57060)+1) ),
BCK(0, limit92)
)) );
};
{
word pd93;
word limit94;
pd93 = (* (( (ptr) (* (( (ptr) gf←c60996)+152)/* var←c56484 */ ))+15) );
(void) ( *( (fPt) ((* (ptr) pd93 ))))(control←v13548, (* ((( (ptr) in←v7928)+2)+(
limit94 = (* (( (ptr) in←v7928)+1) ),
BCK(0, limit94)
)) ), var←c0538, out←v7956, pd93);
};
};
}
static void MakeTile←P780(formal←c0185, sample←v8016, brick←v8044)
word formal←c0185;
word sample←v8016;
W3 brick←v8044;
{
register ptr gf←c61028 = (ptr) &globalframe;
W3 var←c8088;
W4 box←v13592;
word b←v13620;
word sampleMap←v13648;
/* MakeTile: */
SOURCE(8922, 698)
SOURCE(9014, 35)
(void) GetExtendedBox←P600((word) &box←v13592, brick←v8044);
SOURCE(9051, 79)
{
word var←c57092;
{
word pd95;
word idx96;
pd95 = (* (( (ptr) (* (( (ptr) gf←c61028)+157)/* var←c57124 */ ))+17) );
var←c57092 = (
idx96 = (word) ( *( (fPt) ((* (ptr) pd95 ))))(box←v13592, pd95),
SGNCK(idx96)
);
};
{
word pd97;
pd97 = (* (( (ptr) (* (( (ptr) gf←c61028)+153)/* var←c56516 */ ))+6) );
b←v13620 = (word) ( *( (fPt) ((* (ptr) pd97 ))))(var←c57092, pd97);
};
};
SOURCE(9132, 57)
{
word pd98;
pd98 = (* (( (ptr) (* (( (ptr) gf←c61028)+153)/* var←c56516 */ ))+22) );
sampleMap←v13648 = (word) ( *( (fPt) ((* (ptr) pd98 ))))(box←v13592, 1, 0, pd98);
};
SOURCE(9191, 314)
{
register word s←v13692;
register word noName←c57156;
s←v13692 = box←v13592.f0;
noName←c57156 = box←v13592.f2;
if (( (int)s←v13692 >= (int)noName←c57156)) {
goto lab←L100022;
};
lab←L100025: ;
SOURCE(9235, 108)
{
W2 var←c57188;
var←c57188.f0 = s←v13692;
var←c57188.f1 = box←v13592.f1;
{
word pd99;
pd99 = (* (( (ptr) (* (( (ptr) gf←c61028)+153)/* var←c56516 */ ))+45) );
(void) ( *( (fPt) ((* (ptr) pd99 ))))(brick←v8044.f1, brick←v8044.f2, var←c57188, b←v13620, pd99);
};
};
SOURCE(9345, 72)
{
register word j←v13736 = 0;
register word noName←c57220;
noName←c57220 = (* (ptr) b←v13620 );
if (( (int)j←v13736 >= (int)noName←c57220)) {
goto lab←L100026;
};
lab←L100029: ;
SOURCE(9380, 37)
{
word limit100;
word limit101;
word limit102;
if ((sample←v8016 > (* ((( (ptr) b←v13620)+2)+(
limit100 = (* (( (ptr) b←v13620)+1) ),
BCK(j←v13736, limit100)
)) ))) {
(* ((( (ptr) b←v13620)+2)+(
limit101 = (* (( (ptr) b←v13620)+1) ),
BCK(j←v13736, limit101)
)) ) = 1;
}
else {
(* ((( (ptr) b←v13620)+2)+(
limit102 = (* (( (ptr) b←v13620)+1) ),
BCK(j←v13736, limit102)
)) ) = 0;
};
};
j←v13736 = (j←v13736 + 1);
if (( (int)j←v13736 < (int)noName←c57220)) {
goto lab←L100029;
};
lab←L100026: ;
};
SOURCE(9428, 77)
{
W2 var←c57252;
W2 var←c57284;
var←c57252.f0 = s←v13692;
var←c57252.f1 = box←v13592.f1;
var←c57284.f0 = 0;
var←c57284.f1 = 1;
{
word pd103;
pd103 = (* (( (ptr) (* (( (ptr) gf←c61028)+153)/* var←c56516 */ ))+47) );
(void) ( *( (fPt) ((* (ptr) pd103 ))))(sampleMap←v13648, var←c57252, var←c57284, b←v13620, 0, 2147483647
, 0, pd103);
};
};
s←v13692 = (s←v13692 + 1);
if (( (int)s←v13692 < (int)noName←c57156)) {
goto lab←L100025;
};
lab←L100022: ;
};
SOURCE(9516, 37)
{
word pd104;
pd104 = (* (( (ptr) (* (( (ptr) gf←c61028)+153)/* var←c56516 */ ))+7) );
(void) ( *( (fPt) ((* (ptr) pd104 ))))(b←v13620, pd104);
};
SOURCE(9555, 65)
var←c8088.f0 = 1;
var←c8088.f1 = sampleMap←v13648;
var←c8088.f2 = brick←v8044.f2;
/* removed tail goto */
(* (W3Pt) formal←c0185 ) = var←c8088;
return;
}
static void BitmapSetColor←P840(device←v8356, color←v8384, viewToDevice←v8412)
word device←v8356;
word color←v8384;
word viewToDevice←v8412;
{
register ptr gf←c61060 = (ptr) &globalframe;
word data←v13780;
word realRaster←v13808;
word allowBitmaps←v13836;
word hardSampledCase←v13864;
/* BitmapSetColor: */
SOURCE(9946, 4225)
SOURCE(10032, 32)
data←v13780 = XR←Narrow((* (( (ptr) device←v8356)+7) ), (* (( (ptr) gf←c61060)+39) ));
SOURCE(10066, 48)
{
word var←c57348;
var←c57348 = (* (( (ptr) data←v13780)+1) );
if ((var←c57348 == 0)) {
goto lab←L100030;
};
if (((* (( (ptr) var←c57348)+6) ) == 0)) {
{
word r←v13908;
r←v13908 = var←c57348;
realRaster←v13808 = 1;
};
}
else {
lab←L100030: ;
realRaster←v13808 = 0;
};
};
SOURCE(10198, 16)
(* (ptr) data←v13780 ) = 0;
SOURCE(10216, 17)
(* (( (ptr) data←v13780)+18) ) = 0;
SOURCE(10235, 25)
(* (( (ptr) data←v13780)+8) ) = 0;
SOURCE(10262, 153)
if (((* (( (ptr) data←v13780)+19) ) != 0)) {
SOURCE(10311, 64)
{
word pd105;
pd105 = (* (( (ptr) (* (( (ptr) gf←c61060)+153)/* var←c56516 */ ))+23) );
(void) ( *( (fPt) ((* (ptr) pd105 ))))((* ((( (ptr) data←v13780)+19)) ), pd105);
};
SOURCE(10377, 38)
(* (( (ptr) data←v13780)+19) ) = 0;
};
SOURCE(10423, 2998)
{
word var←c57380;
var←c57380 = color←v8384;
if ((var←c57380 == 0)) {
goto lab←L100031;
};
{
word var←c57956;
if ( ( ((* (ptr) var←c57380 ) == 0) ? ((* (( (ptr) var←c57380)+1) ) == 0) : 0 ) ) {
{
word c←v13952;
c←v13952 = var←c57380;
SOURCE(10480, 693)
{
word transform←v13996;
word point←v14024;
word max←v14052;
word f←v14080;
SOURCE(10482, 87)
transform←v13996 = (word) GetColorTransform←P660(data←v13780, (* (( (ptr) c←v13952)+2) ));
SOURCE(10571, 91)
{
word pd107;
pd107 = (* (( (ptr) (* (( (ptr) gf←c61060)+156)/* var←c56996 */ ))+43) );
point←v14024 = (word) ( *( (fPt) ((* (ptr) pd107 ))))(c←v13952, transform←v13996, pd107);
};
SOURCE(10664, 33)
{
word var←c57412;
var←c57412 = (* (( (ptr) transform←v13996)+1) );
{
word limit108;
max←v14052 = (* ((( (ptr) var←c57412)+2)+(
/*1*/ limit108 = (* (( (ptr) var←c57412)+1) ),
/*1*/ BCK(0, limit108)
/*1*/ )) );
};
};
SOURCE(10699, 18)
{
word limit109;
f←v14080 = (* ((( (ptr) point←v14024)+2)+(
limit109 = (* (( (ptr) point←v14024)+1) ),
BCK(0, limit109)
)) );
};
SOURCE(10719, 51)
{
word pd110;
pd110 = (* (( (ptr) (* (( (ptr) gf←c61060)+156)/* var←c56996 */ ))+36) );
point←v14024 = (word) ( *( (fPt) ((* (ptr) pd110 ))))(point←v14024, pd110);
};
SOURCE(10772, 20)
(* (( (ptr) data←v13780)+3) ) = 0;
SOURCE(10794, 28)
(* (( (ptr) data←v13780) + 5) ) &= 4294967288;
SOURCE(10824, 14)
(* (ptr) data←v13780 ) = c←v13952;
SOURCE(10904, 264)
{
word var←c57444;
var←c57444 = f←v14080;
{
word x111;
word x113;
word x114;
word x115;
word x116;
if (((
x111 = var←c57444, *(float*)&x111
) < (
x113 = (* (ptr) &fc112 ), *(float*)&x113
))) {
SOURCE(10929, 20)
(* (( (ptr) data←v13780)+3) ) = 0;
SOURCE(10951, 18)
(* (( (ptr) data←v13780)+4) ) = 1;
}
else {
if (((
/*1*/ x114 = var←c57444, *(float*)&x114
/*1*/ ) > (
/*1*/ x115 = max←v14052, *(float*)&x115
/*1*/ ) - (
/*1*/ x116 = (* (ptr) &fc112 ), *(float*)&x116
/*1*/ ))) {
SOURCE(10987, 20)
/*1*/ (* (( (ptr) data←v13780)+3) ) = 0;
SOURCE(11009, 18)
/*1*/ (* (( (ptr) data←v13780)+4) ) = 0;
/*1*/ }
else {
SOURCE(11043, 51)
/*1*/ {
/*1*/ word var←c57476;
/*1*/ {
/*1*/ word pd117;
/*1*/ word x118;
/*1*/ word x119;
/*1*/ float tf120;
/*1*/ word idx121;
/*1*/ pd117 = (* (( (ptr) (* (( (ptr) gf←c61060)+158)/* var←c57508 */ ))+6) );
/*1*/ var←c57476 = (
/*1*/ idx121 = (word) ( *( (fPt) ((* (ptr) pd117 ))))((
/*1*/ tf120 = (
/*1*/ x118 = max←v14052, *(float*)&x118
/*1*/ ) - (
/*1*/ x119 = f←v14080, *(float*)&x119
/*1*/ ), *(word*)&tf120
/*1*/ ), pd117),
/*1*/ SGNCK(idx121)
/*1*/ );
/*1*/ };
/*1*/ (void) MakeTile←P780((word) (( (bPt) data←v13780)+28), var←c57476, (* (W3Pt) (( (ptr) data←v13780)+11) ));
/*1*/ };
SOURCE(11096, 54)
/*1*/ (* (( (ptr) data←v13780)+19) ) = (* (( (ptr) data←v13780)+8) );
SOURCE(11152, 16)
/*1*/ (* (( (ptr) data←v13780)+3) ) = 1;
/*1*/ };
};
};
};
};
};
goto endif0106;
};
if (((
var←c57956 = (* (ptr) var←c57380 )
) == 1)) {
{
word sampledColor←v14124;
sampledColor←v14124 = var←c57380;
SOURCE(11220, 25)
(* (ptr) data←v13780 ) = sampledColor←v14124;
SOURCE(11311, 89)
(void) BitmapSetSampledColor←P1020(data←v13780, sampledColor←v14124, viewToDevice←v8412);
};
goto endif0106;
};
if ((var←c57956 == 2)) {
{
word s←v14168;
s←v14168 = var←c57380;
SOURCE(11436, 991)
{
word pa←v14212;
SOURCE(11438, 21)
pa←v14212 = (* (( (ptr) s←v14168)+1) );
SOURCE(11461, 72)
{
word pd122;
pd122 = (* (( (ptr) (* (( (ptr) gf←c61060)+150)/* var←c56324 */ ))+37) );
(void) ( *( (fPt) ((* (ptr) pd122 ))))((* (( (ptr) data←v13780)+17) ), (* (( (ptr) pa←v14212)+4) ), (* (( (ptr) s←v14168)+2)
), viewToDevice←v8412, 0, pd122);
};
SOURCE(11535, 60)
{
word tadr123;
if ((0 != (* (( (ptr) s←v14168)+3) ))) {
tadr123 = (word) (( (ptr) data←v13780) + 5);
(* (ptr) tadr123 ) = ((* (ptr) tadr123 ) & 4294967288) | 4;
}
else {
(* (( (ptr) data←v13780) + 5) ) &= 4294967288;
};
};
if ( ( ((* (( (ptr) (* (( (ptr) data←v13780)+17) ))+9) ) == 3) ? (0 != (* (( (ptr) (* (( (ptr) data←v13780)+17) ))+8) )) : 0 ) ) {
SOURCE(11675, 410)
{
W2 min←v14256;
W2 max←v14284;
word sampleMap←v14312;
SOURCE(11677, 60)
min←v14256.f0 = (* (( (ptr) (* (( (ptr) data←v13780)+17) ))+6) );
min←v14256.f1 = (* (( (ptr) (* (( (ptr) data←v13780)+17) ))+7) );
SOURCE(11739, 56)
max←v14284.f0 = (min←v14256.f0 + (* (( (ptr) pa←v14212)+2) ));
max←v14284.f1 = (min←v14256.f1 + (* (( (ptr) pa←v14212)+3) ));
SOURCE(11797, 79)
{
W4 var←c57604;
(* (W2Pt) &var←c57604 ) = min←v14256;
(* (W2Pt) (( (ptr) &var←c57604)+2) ) = max←v14284;
{
/*1*/ word pd124;
/*1*/ pd124 = (* (( (ptr) (* (( (ptr) gf←c61060)+153)/* var←c56516 */ ))+22) );
/*1*/ sampleMap←v14312 = (word) ( *( (fPt) ((* (ptr) pd124 ))))(var←c57604, 1, 0, pd124);
/*1*/ };
};
SOURCE(11878, 62)
{
W2 var←c57636;
var←c57636.f0 = 2147483647;
var←c57636.f1 = 2147483647;
{
/*1*/ word pd125;
/*1*/ pd125 = (* (( (ptr) (* (( (ptr) gf←c61060)+159)/* var←c57668 */ ))+11) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd125 ))))(pa←v14212, 0, 0, 0, sampleMap←v14312, min←v14256
/*1*/ , var←c57636, 0, pd125);
/*1*/ };
};
SOURCE(11942, 16)
(* (( (ptr) data←v13780)+3) ) = 1;
SOURCE(11960, 23)
(* (( (ptr) data←v13780)+7) ) = 1;
SOURCE(11985, 31)
(* (( (ptr) data←v13780)+8) ) = sampleMap←v14312;
SOURCE(12018, 44)
(* (( (ptr) data←v13780)+19) ) = sampleMap←v14312;
SOURCE(12064, 19)
(* (( (ptr) data←v13780)+9) ) = 0;
};
}
else {
if ( ( (0 != (* (( (ptr) gf←c61060)+20)/* newStuff←v4708 */ )) ? (0 != (word) TryTransformingBitmapIntoTile←P900(data←v13780, pa←v14212)
) : 0 ) ) {
}
else {
SOURCE(12160, 264)
{
word sampleMap←v14356;
SOURCE(12162, 86)
{
/*1*/ W4 var←c57700;
/*1*/ var←c57700.f0 = 0;
/*1*/ var←c57700.f1 = 0;
/*1*/ var←c57700.f2 = (* (( (ptr) pa←v14212)+2) );
/*1*/ var←c57700.f3 = (* (( (ptr) pa←v14212)+3) );
/*1*/ {
/*1*/ word pd126;
/*1*/ pd126 = (* (( (ptr) (* (( (ptr) gf←c61060)+153)/* var←c56516 */ ))+22) );
/*1*/ sampleMap←v14356 = (word) ( *( (fPt) ((* (ptr) pd126 ))))(var←c57700, 1, 0, pd126);
/*1*/ };
/*1*/ };
SOURCE(12250, 49)
{
/*1*/ W2 var←c57732;
/*1*/ W2 var←c57764;
/*1*/ var←c57732.f0 = 0;
/*1*/ var←c57732.f1 = 0;
/*1*/ var←c57764.f0 = 2147483647;
/*1*/ var←c57764.f1 = 2147483647;
/*1*/ {
/*1*/ word pd127;
/*1*/ pd127 = (* (( (ptr) (* (( (ptr) gf←c61060)+159)/* var←c57668 */ ))+11) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd127 ))))(pa←v14212, 0, 0, 0, sampleMap←v14356, var←c57732
/*1*/ , var←c57764, 0, pd127);
/*1*/ };
/*1*/ };
SOURCE(12301, 24)
(* (( (ptr) data←v13780)+3) ) = 3;
SOURCE(12327, 49)
{
/*1*/ word pd128;
/*1*/ pd128 = (* (( (ptr) (* (( (ptr) gf←c61060)+160)/* var←c57796 */ ))+9) );
/*1*/ (* (( (ptr) data←v13780)+18) ) = (word) ( *( (fPt) ((* (ptr) pd128 ))))(sampleMap←v14356, 0, 0, 0, 0, pd128);
/*1*/ };
SOURCE(12378, 44)
(* (( (ptr) data←v13780)+19) ) = sampleMap←v14356;
};
};
};
};
};
goto endif0106;
};
if ( ( ((* (ptr) var←c57380 ) == 0) ? ((* (( (ptr) var←c57380)+1) ) == 1) : 0 ) ) {
{
word s←v14400;
s←v14400 = var←c57380;
SOURCE(12463, 958)
{
word var←c57828;
var←c57828 = (* (( (ptr) s←v14400)+2) );
if ((var←c57828 == (* (( (ptr) gf←c61060)+54) ))) {
SOURCE(12494, 433)
{
word stippleData←v14444;
SOURCE(12496, 60)
stippleData←v14444 = XR←Narrow((* (( (ptr) s←v14400)+4) ), (* (( (ptr) gf←c61060)+43) ));
SOURCE(12558, 36)
{
word tadr129;
tadr129 = (word) (( (ptr) data←v13780) + 5);
(* (ptr) tadr129 ) = ((* (ptr) tadr129 ) & 4294967288) | ((word) ((* (( (bPt) stippleData←v14444)+7) ) & 7));
};
SOURCE(12596, 326)
{
word var←c57860;
var←c57860 = (* (ptr) stippleData←v14444 );
if ((var←c57860 == 0)) {
SOURCE(12637, 20)
/*1*/ (* (( (ptr) data←v13780)+3) ) = 0;
SOURCE(12659, 18)
/*1*/ (* (( (ptr) data←v13780)+4) ) = 0;
/*1*/ }
else {
/*1*/ if ((var←c57860 == 65535)) {
SOURCE(12692, 20)
/*1*/ (* (( (ptr) data←v13780)+3) ) = 0;
SOURCE(12714, 18)
/*1*/ (* (( (ptr) data←v13780)+4) ) = 1;
/*1*/ }
/*1*/ else {
SOURCE(12748, 16)
/*1*/ (* (( (ptr) data←v13780)+3) ) = 1;
SOURCE(12766, 135)
/*1*/ {
/*1*/ word var←c57892;
/*1*/ {
/*1*/ word pd130;
/*1*/ pd130 = (* (( (ptr) (* (( (ptr) gf←c61060)+153)/* var←c56516 */ ))+54) );
/*1*/ var←c57892 = (word) ( *( (fPt) ((* (ptr) pd130 ))))((* (ptr) stippleData←v14444 ), 1, 0, (word) -1, (* (( (ptr) data←v13780)+20)
/*1*/ ), pd130);
/*1*/ };
/*1*/ (* (( (ptr) data←v13780)+20) ) = var←c57892;
/*1*/ (* (( (ptr) data←v13780)+8) ) = var←c57892;
/*1*/ };
SOURCE(12903, 19)
/*1*/ (* (( (ptr) data←v13780)+9) ) = 0;
/*1*/ };
/*1*/ };
};
};
}
else {
if ((var←c57828 == (* (( (ptr) gf←c61060)+53) ))) {
SOURCE(12945, 255)
{
word list←v14488;
word brick←v14516;
word rf←v14544;
SOURCE(12947, 6)
list←v14488 = XR←Narrow((* (( (ptr) s←v14400)+4) ), (* (( (ptr) gf←c61060)+45) ));
SOURCE(12983, 49)
brick←v14516 = XR←Narrow((* (ptr) list←v14488 ), (* (( (ptr) gf←c61060)+30) ));
SOURCE(13034, 55)
rf←v14544 = XR←Narrow((* (ptr) (* (( (ptr) list←v14488)+1) ) ), (* (( (ptr) gf←c61060)+46) ));
SOURCE(13091, 19)
{
/*1*/ word tadr131;
/*1*/ tadr131 = (word) (( (ptr) data←v13780) + 5);
/*1*/ (* (ptr) tadr131 ) = ((* (ptr) tadr131 ) & 4294967288) | ((word) ((* (( (bPt) rf←v14544)+3) ) & 7));
/*1*/ };
SOURCE(13112, 16)
(* (( (ptr) data←v13780)+3) ) = 1;
SOURCE(13130, 37)
(* (( (ptr) data←v13780)+8) ) = (* (( (ptr) brick←v14516)+1) );
SOURCE(13169, 29)
(* (( (ptr) data←v13780)+9) ) = (* (( (ptr) brick←v14516)+2) );
};
}
else {
SOURCE(13216, 205)
if (((* (( (ptr) s←v14400)+5) ) != 0)) {
SOURCE(13245, 56)
(void) BitmapSetColor←P840(device←v8356, (* (( (ptr) s←v14400)+5) ), viewToDevice←v8412);
}
else {
SOURCE(13310, 111)
{
/*1*/ W3 var←c0227;
/*1*/ var←c0227.f0 = 63;
/*1*/ var←c0227.f1 = (* (( (ptr) gf←c61060)+52) );
/*1*/ var←c0227.f2 = 0;
/*1*/ (void) XR←RaiseError((* (ptr) (* (( (ptr) (* (( (ptr) gf←c61060)+155)/* var←c56868 */ ))+6) ) ), (word) &var←c0227);
/*1*/ };
};
};
};
};
};
goto endif0106;
};
lab←L100031: ;
SOURCE(13441, 5)
(void) XR←RaiseUnnamedError();
goto endif0106;
endif0106: ;
};
};
SOURCE(13448, 38)
(* (( (ptr) data←v13780) + 6) ) &= 4294967288;
SOURCE(13488, 292)
if (((* (( (ptr) data←v13780)+3) ) == 0)) {
SOURCE(13517, 263)
{
word var←c57988;
var←c57988 = (unsigned) ((* (( (bPt) data←v13780)+23) ) & 7);
if ((var←c57988 == 0)) {
SOURCE(13561, 117)
{
word var←c58020;
var←c58020 = (* (( (ptr) data←v13780)+4) );
if ((var←c58020 == 0)) {
SOURCE(13592, 43)
{
word tadr132;
tadr132 = (word) (( (ptr) data←v13780) + 6);
(* (ptr) tadr132 ) = ((* (ptr) tadr132 ) & 4294967288) | 3;
};
}
else {
if ((var←c58020 == 1)) {
SOURCE(13642, 36)
{
word tadr133;
tadr133 = (word) (( (ptr) data←v13780) + 6);
(* (ptr) tadr133 ) = ((* (ptr) tadr133 ) & 4294967288) | 4;
};
}
else {
};
};
};
}
else {
if ((var←c57988 == 6)) {
SOURCE(13717, 63)
if (((* (( (ptr) data←v13780)+4) ) == 1)) {
SOURCE(13743, 37)
{
word tadr134;
tadr134 = (word) (( (ptr) data←v13780) + 6);
(* (ptr) tadr134 ) = ((* (ptr) tadr134 ) & 4294967288) | 6;
};
};
}
else {
};
};
};
};
SOURCE(13802, 55)
allowBitmaps←v13836 = (unsigned) ( (unsigned) ((* (( (bPt) data←v13780)+27) ) & 7) != 0);
SOURCE(13859, 65)
if (((* (( (ptr) data←v13780)+3) ) == 3)) {
hardSampledCase←v13864 = (unsigned) 1;
}
else {
hardSampledCase←v13864 = (unsigned) ((* (( (ptr) data←v13780)+3) ) == 2);
};
SOURCE(13926, 245)
{
word tc135;
if (( (unsigned) (((unsigned)(* (( (bPt) data←v13780)+23) ) << 29) >> 30) != 3)) {
tc135 = (word) (0 == hardSampledCase←v13864);
}
else {
tc135 = (word) 0;
};
(* (ptr) (* (( (ptr) device←v8356)+6) ) ) = (((word) (((word) (unsigned) (0 == hardSampledCase←v13864) << 1) + (unsigned) tc135) << 30) +
((word) (((word) (((word) (unsigned) ( ((* (( (ptr) data←v13780)+3) ) == 0) ? (0 != realRaster←v13808) : 0 ) << 1) + (unsigned) (allowBitmaps←v13836 & 1)) << 1) +
(unsigned) ((0 != allowBitmaps←v13836) && (0 != realRaster←v13808))) << 27));
};
}
static word TryTransformingBitmapIntoTile←P900(formal←c0559, formal←c0560)
word formal←c0559;
word formal←c0560;
{
W13 var←c61092;
/* declaration of data←v8472 skipped */
/* declaration of pa←v8500 skipped */
register ptr gf←c61124 = (ptr) &globalframe;
word var←c8544;
/* declaration of var←c58084 skipped */
/* declaration of m←v14712 skipped */
(* (( (ptr) &var←c61092)+4)/* data←v8472 */ ) = formal←c0559;
(* (( (ptr) &var←c61092)+5)/* pa←v8500 */ ) = formal←c0560;
/* TryTransformingBitmapIntoTile: */
SOURCE(14215, 1669)
{
word tmpAddr136;
tmpAddr136 = (word) (( (ptr) &var←c61092)+6)/* var←c58084 */ ;
(* (ptr) tmpAddr136 ) = ( ((word) (fPt) action←P3360) );
(* (( (ptr) tmpAddr136) + 1) ) = 1;
};
SOURCE(14299, 35)
(* (( (ptr) &var←c61092)+8)/* m←v14712 */ ) = (* (( (ptr) (* (( (ptr) &var←c61092)+4)/* data←v8472 */ ))+17) );
SOURCE(14336, 1523)
if (((* (( (ptr) (* (( (ptr) &var←c61092)+8)/* m←v14712 */ ))+9) ) != 0)) {
SOURCE(14353, 1514)
{
W4 sRect←v14756;
/* declaration of dRect←v14784 skipped */
SOURCE(14355, 45)
sRect←v14756.f0 = (* (ptr) &fc60 );
sRect←v14756.f1 = (* (ptr) &fc60 );
{
float tf137;
sRect←v14756.f2 = (
tf137 = (float)(int)(* (( (ptr) (* (( (ptr) &var←c61092)+5)/* pa←v8500 */ ))+2) ), *(word*)&tf137
);
};
{
float tf138;
sRect←v14756.f3 = (
tf138 = (float)(int)(* (( (ptr) (* (( (ptr) &var←c61092)+5)/* pa←v8500 */ ))+3) ), *(word*)&tf138
);
};
SOURCE(14402, 68)
{
word pd139;
pd139 = (* (( (ptr) (* (( (ptr) gf←c61124)+150)/* var←c56324 */ ))+46) );
(void) ( *( (fPt) ((* (ptr) pd139 ))))((word) (( (bPt) &var←c61092)+36)/* dRect←v14784 */ , (* (( (ptr) &var←c61092)+8)/* m←v14712 */ ), sRect←v14756, pd139)
;
};
SOURCE(14472, 1387)
{
word tc140;
float tf141;
word x142;
float tf143;
float tf144;
float tf145;
word x146;
float tf147;
float tf148;
float tf149;
float tf150;
word x151;
float tf152;
float tf153;
float tf154;
float tf155;
word x156;
word x158;
float tf159;
word x160;
word x161;
word x163;
tf147 = FMAX(FABS((
x142 = (* (( (ptr) &var←c61092)+9) ), *(float*)&x142
), tf141), FABS((
x146 = (* (( (ptr) &var←c61092)+10) ), *(float*)&x146
), tf145), tf143, tf144);
tf152 = FMAX(tf147, FABS((
x151 = (* (( (ptr) &var←c61092)+11) ), *(float*)&x151
), tf150), tf148, tf149);
if ((FMAX(tf152, FABS((
x156 = (* (( (ptr) &var←c61092)+12) ), *(float*)&x156
), tf155), tf153, tf154) <= (
x158 = (* (ptr) &fc157 ), *(float*)&x158
))) {
tc140 = (word) (FABS(((
x160 = (* (( (ptr) &var←c61092)+11) ), *(float*)&x160
) * (
x161 = (* (( (ptr) &var←c61092)+12) ), *(float*)&x161
)), tf159) <= (
x163 = (* (ptr) &fc162 ), *(float*)&x163
));
}
else {
tc140 = (word) 0;
};
if (tc140) {
SOURCE(14587, 1277)
{
word sSize←v14828;
word fSize←v14856;
SOURCE(14589, 32)
{
word pd164;
word idx165;
pd164 = (* (( (ptr) (* (( (ptr) gf←c61124)+158)/* var←c57508 */ ))+6) );
sSize←v14828 = (
idx165 = (word) ( *( (fPt) ((* (ptr) pd164 ))))((* ((( (ptr) &var←c61092)+11)) ), pd164),
SGNCK(idx165)
);
};
SOURCE(14623, 32)
{
word pd166;
word idx167;
pd166 = (* (( (ptr) (* (( (ptr) gf←c61124)+158)/* var←c57508 */ ))+6) );
fSize←v14856 = (
idx167 = (word) ( *( (fPt) ((* (ptr) pd166 ))))((* ((( (ptr) &var←c61092)+12)) ), pd166),
SGNCK(idx167)
);
};
SOURCE(14657, 1202)
{
word x168;
word x170;
word x171;
word x172;
word x173;
word x174;
if ( ( (((
x168 = (* (( (ptr) &var←c61092)+11) ), *(float*)&x168
) - (float)(unsigned)sSize←v14828) + (
x170 = (* (ptr) &fc169 ), *(float*)&x170
) == (
x171 = (* (ptr) &fc169 ), *(float*)&x171
)) ? (((
x172 = (* (( (ptr) &var←c61092)+12) ), *(float*)&x172
) - (float)(unsigned)fSize←v14856) + (
x173 = (* (ptr) &fc169 ), *(float*)&x173
) == (
x174 = (* (ptr) &fc169 ), *(float*)&x174
)) : 0 ) ) {
SOURCE(14717, 1144)
{
word sampleMap←v14928;
word tileMap←v14956;
SOURCE(15063, 80)
{
/*1*/ W4 var←c58148;
/*1*/ var←c58148.f0 = 0;
/*1*/ var←c58148.f1 = 0;
/*1*/ var←c58148.f2 = sSize←v14828;
/*1*/ var←c58148.f3 = fSize←v14856;
/*1*/ {
/*1*/ word pd175;
/*1*/ pd175 = (* (( (ptr) (* (( (ptr) gf←c61124)+153)/* var←c56516 */ ))+22) );
/*1*/ sampleMap←v14928 = (word) ( *( (fPt) ((* (ptr) pd175 ))))(var←c58148, 1, 0, pd175);
/*1*/ };
/*1*/ };
SOURCE(15145, 108)
{
/*1*/ word var←c58180;
/*1*/ word var←c58212;
/*1*/ {
/*1*/ word pd176;
/*1*/ word x177;
/*1*/ word x178;
/*1*/ float tf179;
/*1*/ pd176 = (* (( (ptr) (* (( (ptr) gf←c61124)+158)/* var←c57508 */ ))+8) );
/*1*/ var←c58180 = (word) ( *( (fPt) ((* (ptr) pd176 ))))((
/*1*/ tf179 = (
/*1*/ x177 = (* (( (ptr) &var←c61092)+9) ), *(float*)&x177
/*1*/ ) + (
/*1*/ x178 = (* (ptr) &fc112 ), *(float*)&x178
/*1*/ ), *(word*)&tf179
/*1*/ ), pd176);
/*1*/ };
/*1*/ {
/*1*/ word pd180;
/*1*/ word x181;
/*1*/ word x182;
/*1*/ float tf183;
/*1*/ pd180 = (* (( (ptr) (* (( (ptr) gf←c61124)+158)/* var←c57508 */ ))+8) );
/*1*/ var←c58212 = (word) ( *( (fPt) ((* (ptr) pd180 ))))((
/*1*/ tf183 = (
/*1*/ x181 = (* (( (ptr) &var←c61092)+10) ), *(float*)&x181
/*1*/ ) + (
/*1*/ x182 = (* (ptr) &fc112 ), *(float*)&x182
/*1*/ ), *(word*)&tf183
/*1*/ ), pd180);
/*1*/ };
/*1*/ {
/*1*/ W2 var←c58244;
/*1*/ var←c58244.f0 = var←c58180;
/*1*/ var←c58244.f1 = var←c58212;
/*1*/ {
/*1*/ word pd184;
/*1*/ pd184 = (* (( (ptr) (* (( (ptr) gf←c61124)+153)/* var←c56516 */ ))+28) );
/*1*/ tileMap←v14956 = (word) ( *( (fPt) ((* (ptr) pd184 ))))(sampleMap←v14928, var←c58244, pd184);
/*1*/ };
/*1*/ };
/*1*/ };
SOURCE(15255, 29)
{
/*1*/ word pd185;
/*1*/ pd185 = (* (( (ptr) (* (( (ptr) gf←c61124)+153)/* var←c56516 */ ))+48) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd185 ))))(sampleMap←v14928, pd185);
/*1*/ };
SOURCE(15286, 207)
if (((* (( (ptr) (* (( (ptr) &var←c61092)+4)/* data←v8472 */ ))+22) ) == 0)) {
SOURCE(15326, 167)
/*1*/ {
/*1*/ W2 var←c58276;
/*1*/ W2 var←c58308;
/*1*/ var←c58276.f0 = 2147483647;
/*1*/ var←c58276.f1 = 2147483647;
/*1*/ var←c58308.f0 = (* (ptr) &fc59 );
/*1*/ var←c58308.f1 = (* (ptr) &fc59 );
/*1*/ (* (( (ptr) (* (( (ptr) &var←c61092)+4)/* data←v8472 */ ))+22) ) = (word) Create←P60(var←c58276, 6, var←c58308, 1, 1, (* (
/*1*/ ( (ptr) gf←c61124)+56) ));
/*1*/ };
/*1*/ };
SOURCE(15495, 47)
(void) SetBitmap←P120((* (( (ptr) (* (( (ptr) &var←c61092)+4)/* data←v8472 */ ))+22) ), sampleMap←v14928);
SOURCE(15544, 48)
{
/*1*/ word pd186;
/*1*/ pd186 = (* (( (ptr) (* (( (ptr) gf←c61124)+155)/* var←c56868 */ ))+12) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd186 ))))((* (( (ptr) (* (( (ptr) &var←c61092)+4)/* data←v8472 */ ))+22) ), (word) (( (bPt) &var←c61092)+24)
/*1*/ /* var←c58084 */ , pd186);
/*1*/ };
SOURCE(15594, 41)
(void) SetBitmap←P120((* (( (ptr) (* (( (ptr) &var←c61092)+4)/* data←v8472 */ ))+22) ), 0);
SOURCE(15645, 59)
SOURCE(15646, 41)
{
/*1*/ word pd187;
/*1*/ pd187 = (* (( (ptr) (* (( (ptr) gf←c61124)+153)/* var←c56516 */ ))+30) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd187 ))))(sampleMap←v14928, pd187);
/*1*/ };
SOURCE(15689, 15)
sampleMap←v14928 = 0;
SOURCE(15707, 16)
(* (( (ptr) (* (( (ptr) &var←c61092)+4)/* data←v8472 */ ))+3) ) = 1;
SOURCE(15725, 23)
(* (( (ptr) (* (( (ptr) &var←c61092)+4)/* data←v8472 */ ))+7) ) = 1;
SOURCE(15750, 29)
(* (( (ptr) (* (( (ptr) &var←c61092)+4)/* data←v8472 */ ))+8) ) = tileMap←v14956;
SOURCE(15781, 42)
(* (( (ptr) (* (( (ptr) &var←c61092)+4)/* data←v8472 */ ))+19) ) = tileMap←v14956;
SOURCE(15825, 19)
(* (( (ptr) (* (( (ptr) &var←c61092)+4)/* data←v8472 */ ))+9) ) = 0;
SOURCE(15846, 13)
return(1);
};
};
};
};
};
};
};
};
SOURCE(15870, 14)
return(0);
}
static void action←P3360(formal←c61188)
word formal←c61188;
{
register ptr gf←c61156 = (ptr) &globalframe;
word pamInverse←v15016;
formal←c61188 = (formal←c61188 - 24);
/* action: */
SOURCE(14719, 15)
SOURCE(14736, 62)
{
word pd188;
pd188 = (* (( (ptr) (* (( (ptr) gf←c61156)+150)/* var←c56324 */ ))+51) );
pamInverse←v15016 = (word) ( *( (fPt) ((* (ptr) pd188 ))))((* ((( (ptr) (* (( (ptr) formal←c61188)+5) ))+4)) ), pd188);
};
SOURCE(14800, 66)
{
W2 var←c58340;
{
word x189;
*(float*)&var←c58340.f0 = - (
x189 = (* (( (ptr) formal←c61188)+9) ), *(float*)&x189
);
};
{
word x190;
*(float*)&var←c58340.f1 = - (
x190 = (* (( (ptr) formal←c61188)+10) ), *(float*)&x190
);
};
{
word pd191;
pd191 = (* (( (ptr) (* (( (ptr) gf←c61156)+155)/* var←c56868 */ ))+18) );
(void) ( *( (fPt) ((* (ptr) pd191 ))))((* (( (ptr) (* (( (ptr) formal←c61188)+4) ))+22) ), var←c58340, pd191);
};
};
SOURCE(14868, 44)
{
word pd192;
pd192 = (* (( (ptr) (* (( (ptr) gf←c61156)+155)/* var←c56868 */ ))+14) );
(void) ( *( (fPt) ((* (ptr) pd192 ))))((* (( (ptr) (* (( (ptr) formal←c61188)+4) ))+22) ), (* (( (ptr) formal←c61188)+8)
), pd192);
};
SOURCE(14914, 53)
{
word pd193;
pd193 = (* (( (ptr) (* (( (ptr) gf←c61156)+155)/* var←c56868 */ ))+14) );
(void) ( *( (fPt) ((* (ptr) pd193 ))))((* (( (ptr) (* (( (ptr) formal←c61188)+4) ))+22) ), pamInverse←v15016, pd193);
};
SOURCE(14969, 47)
{
word pd194;
pd194 = (* (( (ptr) (* (( (ptr) gf←c61156)+155)/* var←c56868 */ ))+77) );
(void) ( *( (fPt) ((* (ptr) pd194 ))))((* (( (ptr) (* (( (ptr) formal←c61188)+4) ))+22) ), (* (( (ptr) formal←c61188)+5)
), pd194);
};
SOURCE(15018, 40)
{
word pd195;
pd195 = (* (( (ptr) (* (( (ptr) gf←c61156)+150)/* var←c56324 */ ))+5) );
(void) ( *( (fPt) ((* (ptr) pd195 ))))(pamInverse←v15016, pd195);
};
}
static word ComputeSource←P960(sampledColor←v8604, filterDiameter←v8632, data←v8660)
word sampledColor←v8604;
word filterDiameter←v8632;
word data←v8660;
{
register ptr gf←c61220 = (ptr) &globalframe;
word var←c8704;
word colorOperator←v15060;
word pixelMap←v15088;
/* ComputeSource: */
SOURCE(15890, 397)
SOURCE(16019, 57)
colorOperator←v15060 = (* (( (ptr) sampledColor←v8604)+3) );
SOURCE(16078, 189)
{
word var←c58372;
var←c58372 = (word) GetColorTransform←P660(data←v8660, (* (( (ptr) sampledColor←v8604)+3) ));
{
word pd196;
pd196 = (* (( (ptr) (* (( (ptr) gf←c61220)+156)/* var←c56996 */ ))+45) );
pixelMap←v15088 = (word) ( *( (fPt) ((* (ptr) pd196 ))))((* (( (ptr) sampledColor←v8604)+3) ), var←c58372, (* (( (ptr) sampledColor←v8604)+1)
), pd196);
};
};
SOURCE(16269, 18)
return(pixelMap←v15088);
}
static void BitmapSetSampledColor←P1020(formal←c0561, formal←c0562, viewToDevice←v8820)
word formal←c0561;
word formal←c0562;
word viewToDevice←v8820;
{
W10 var←c61252;
/* declaration of data←v8764 skipped */
/* declaration of sampledColor←v8792 skipped */
register ptr gf←c61284 = (ptr) &globalframe;
/* declaration of var←c58404 skipped */
/* declaration of pa←v15132 skipped */
word largerPaSize←v15160;
word cache←v15188;
/* declaration of filterDiameter←v15216 skipped */
word scd←v15244 = 0;
(* (( (ptr) &var←c61252)+4)/* data←v8764 */ ) = formal←c0561;
(* (( (ptr) &var←c61252)+5)/* sampledColor←v8792 */ ) = formal←c0562;
/* BitmapSetSampledColor: */
SOURCE(16291, 1673)
{
word tmpAddr197;
tmpAddr197 = (word) (( (ptr) &var←c61252)+6)/* var←c58404 */ ;
(* (ptr) tmpAddr197 ) = ( ((word) (fPt) compare←P3420) );
(* (( (ptr) tmpAddr197) + 1) ) = 1;
};
SOURCE(16406, 32)
(* (( (ptr) &var←c61252)+8)/* pa←v15132 */ ) = (* (( (ptr) (* (( (ptr) &var←c61252)+5)/* sampledColor←v8792 */ ))+1) );
SOURCE(16440, 47)
{
word x198;
word x199;
word idx200;
largerPaSize←v15160 = (
idx200 = (word) ((x198 = (* (( (ptr) (* (( (ptr) &var←c61252)+8)/* pa←v15132 */ ))+2) ),
x199 = (* (( (ptr) (* (( (ptr) &var←c61252)+8)/* pa←v15132 */ ))+3) ),
MIN((int)(word), x198, x199)) + 1),
SGNCK(idx200)
);
};
SOURCE(16489, 56)
{
word pd201;
pd201 = (* (( (ptr) (* (( (ptr) gf←c61284)+161)/* var←c58436 */ ))+17) );
cache←v15188 = (word) ( *( (fPt) ((* (ptr) pd201 ))))(pd201);
};
SOURCE(16547, 23)
(* (( (ptr) &var←c61252)+9)/* filterDiameter←v15216 */ ) = 1;
SOURCE(16940, 83)
{
word pd202;
pd202 = (* (( (ptr) (* (( (ptr) gf←c61284)+150)/* var←c56324 */ ))+37) );
(void) ( *( (fPt) ((* (ptr) pd202 ))))((* (( (ptr) (* (( (ptr) &var←c61252)+4)/* data←v8764 */ ))+17) ), (* (( (ptr) (* (
( (ptr) &var←c61252)+8)/* pa←v15132 */ ))+4) ), (* (( (ptr) (* (( (ptr) &var←c61252)+5)/* sampledColor←v8792 */ ))+2) ), viewToDevice←v8820, 0, pd202)
;
};
SOURCE(17025, 148)
if ((0 != (* (( (ptr) gf←c61284)+21)/* interpolate←v4820 */ ))) {
SOURCE(17045, 128)
{
word var←c58468;
{
W2 var←c0267;
word var←c0539;
{
word pd203;
pd203 = (* (( (ptr) (* (( (ptr) gf←c61284)+150)/* var←c56324 */ ))+56) );
(void) ( *( (fPt) ((* (ptr) pd203 ))))((word) &var←c0267, (* (( (ptr) (* (( (ptr) &var←c61252)+4)/* data←v8764 */ ))+17)
), pd203);
};
var←c0539 = var←c0267.f1;
{
word x204;
word x205;
float tf206;
float tf207;
word x208;
*(float*)&var←c58468 = (
x204 = (* (ptr) &fc59 ), *(float*)&x204
) / FMAX((
x205 = var←c0539, *(float*)&x205
), ((
x208 = (* (ptr) &fc59 ), *(float*)&x208
) / (float)(unsigned)largerPaSize←v15160), tf206, tf207);
};
};
{
word pd209;
word x210;
word idx211;
word x212;
pd209 = (* (( (ptr) (* (( (ptr) gf←c61284)+158)/* var←c57508 */ ))+6) );
(* (( (ptr) &var←c61252)+9)/* filterDiameter←v15216 */ ) = (x212 = (
idx211 = (word) (x210 = (word) ( *( (fPt) ((* (ptr) pd209 ))))(var←c58468, pd209),
MAX((int)(word), x210, 1)),
SGNCK(idx211)
),
MIN( (unsigned) , x212, 255));
};
};
};
SOURCE(17175, 19)
(* (( (ptr) (* (( (ptr) &var←c61252)+4)/* data←v8764 */ ))+3) ) = 2;
SOURCE(17196, 28)
(* (( (ptr) (* (( (ptr) &var←c61252)+4)/* data←v8764 */ )) + 5) ) &= 4294967288;
SOURCE(17226, 738)
if ( ( (0 != (* (ptr) (* (( (ptr) &var←c61252)+8)/* pa←v15132 */ ) )) ? ((* (( (ptr) (* (( (ptr) (* (( (ptr) &var←c61252)+4)
/* data←v8764 */ ))+14) ))+3) ) == 0) : 0 ) ) {
SOURCE(17291, 60)
{
W2 var←c0268;
word var←c0540;
{
word pd213;
pd213 = (* (( (ptr) (* (( (ptr) gf←c61284)+161)/* var←c58436 */ ))+9) );
(void) ( *( (fPt) ((* (ptr) pd213 ))))((word) &var←c0268, cache←v15188, (word) (( (bPt) &var←c61252)+24)/* var←c58404 */ , (* (
( (ptr) gf←c61284)+55) ), pd213);
};
var←c0540 = var←c0268.f0;
scd←v15244 = XR←Narrow(var←c0540, (* (( (ptr) gf←c61284)+50) ));
};
SOURCE(17353, 508)
if ((scd←v15244 == 0)) {
SOURCE(17371, 492)
{
word pixelMap←v15316;
SOURCE(17373, 82)
pixelMap←v15316 = (word) ComputeSource←P960((* (( (ptr) &var←c61252)+5)/* sampledColor←v8792 */ ), (* (( (ptr) &var←c61252)+9)
/* filterDiameter←v15216 */ ), (* (( (ptr) &var←c61252)+4)/* data←v8764 */ ));
SOURCE(17457, 199)
{
word var←c58500;
var←c58500 = XR←NewObject(24, (* (( (ptr) gf←c61284)+50) ));
(* (ptr) var←c58500 ) = (* (( (ptr) &var←c61252)+8)/* pa←v15132 */ );
(* (( (ptr) var←c58500)+1) ) = (* (( (ptr) (* (( (ptr) &var←c61252)+5)/* sampledColor←v8792 */ ))+3) );
(* (( (ptr) var←c58500)+2) ) = (* (( (ptr) (* (( (ptr) &var←c61252)+4)/* data←v8764 */ ))+10) );
(* (( (ptr) var←c58500)+3) ) = ((* (( (ptr) (* (( (ptr) &var←c61252)+4)/* data←v8764 */ ))+11) ) + 1);
(* (( (ptr) var←c58500)+4) ) = (* (( (ptr) &var←c61252)+9)/* filterDiameter←v15216 */ );
(* (( (ptr) var←c58500)+5) ) = pixelMap←v15316;
scd←v15244 = var←c58500;
};
SOURCE(17658, 203)
{
word var←c58532;
{
W2 var←c58564;
word var←c58660;
{
W2 var←c58596;
word map←v54392;
{
word limit214;
map←v54392 = (* ((( (ptr) pixelMap←v15316)+6)+(
/*1*/ limit214 = (* (( (ptr) pixelMap←v15316)+5) ),
/*1*/ BCK(0, limit214)
/*1*/ )) );
};
{
W4 b←v54424;
b←v54424 = (* (W4Pt) map←v54392 );
var←c58596.f0 = (b←v54424.f2 - b←v54424.f0);
var←c58596.f1 = (b←v54424.f3 - b←v54424.f1);
};
var←c58564 = var←c58596;
};
{
word var←c58692;
word map←v54484;
{
word limit215;
map←v54484 = (* ((( (ptr) pixelMap←v15316)+6)+(
/*1*/ limit215 = (* (( (ptr) pixelMap←v15316)+5) ),
/*1*/ BCK(0, limit215)
/*1*/ )) );
};
var←c58692 = (* (( (ptr) map←v54484)+5) );
var←c58660 = var←c58692;
};
{
word pd216;
pd216 = (* (( (ptr) (* (( (ptr) gf←c61284)+153)/* var←c56516 */ ))+18) );
var←c58532 = (word) ( *( (fPt) ((* (ptr) pd216 ))))(var←c58564, var←c58660, 0, pd216);
};
};
{
word pd217;
pd217 = (* (( (ptr) (* (( (ptr) gf←c61284)+161)/* var←c58436 */ ))+6) );
(void) ( *( (fPt) ((* (ptr) pd217 ))))(cache←v15188, scd←v15244, scd←v15244, var←c58532, (* (( (ptr) gf←c61284)+55) ), pd217)
;
};
};
};
};
SOURCE(17866, 24)
(* (( (ptr) (* (( (ptr) &var←c61252)+4)/* data←v8764 */ ))+18) ) = (* (( (ptr) scd←v15244)+5) );
}
else {
SOURCE(17901, 63)
(* (( (ptr) (* (( (ptr) &var←c61252)+4)/* data←v8764 */ ))+18) ) = (word) ComputeSource←P960((* (( (ptr) &var←c61252)+5)
/* sampledColor←v8792 */ ), (* (( (ptr) &var←c61252)+9)/* filterDiameter←v15216 */ ), (* (( (ptr) &var←c61252)+4)/* data←v8764 */ ))
;
};
}
static word compare←P3420(argument←v52036, formal←c61348)
word argument←v52036;
word formal←c61348;
{
register ptr gf←c61316 = (ptr) &globalframe;
word good←v52080;
formal←c61348 = (formal←c61348 - 24);
/* compare: */
SOURCE(16628, 309)
SOURCE(16667, 270)
{
word var←c58724;
var←c58724 = argument←v52036;
if ((var←c58724 == 0)) {
goto lab←L100034;
};
if (((* (( (ptr) gf←c61316)+50) ) == XR←GetReferentType(var←c58724))) {
{
word scd←v15360;
scd←v15360 = var←c58724;
SOURCE(16718, 191)
{
word tc218;
if ( ( ( ( ((* (ptr) scd←v15360 ) == (* (( (ptr) formal←c61348)+8) )) ? ((* (( (ptr) scd←v15360)+1) ) == (* (( (ptr) (* (
( (ptr) formal←c61348)+5) ))+3) )) : 0 ) ? ((* (( (ptr) scd←v15360)+2) ) == (* (( (ptr) (* (( (ptr) formal←c61348)+4) ))+10)
)) : 0 ) ? ((* (( (ptr) scd←v15360)+3) ) == ((* (( (ptr) (* (( (ptr) formal←c61348)+4) ))+11) ) + 1)) : 0 ) ) {
tc218 = (word) (unsigned) ((* (( (ptr) scd←v15360)+4) ) == (* (( (ptr) formal←c61348)+9) ));
}
else {
tc218 = (word) (unsigned) 0;
};
return(tc218);
};
};
}
else {
lab←L100034: ;
SOURCE(16922, 15)
return(0);
};
};
}
static void BitmapMaskBoxes←P1080(device←v8880, bounds←v8908, boxes←v8936)
word device←v8880;
W4 bounds←v8908;
word boxes←v8936;
{
W10 var←c61380;
register ptr gf←c61412 = (ptr) &globalframe;
/* declaration of var←c58756 skipped */
/* declaration of var←c58788 skipped */
/* declaration of data←v15404 skipped */
/* BitmapMaskBoxes: */
SOURCE(18000, 1390)
{
word tmpAddr219;
tmpAddr219 = (word) (( (ptr) &var←c61380)+4)/* var←c58756 */ ;
(* (ptr) tmpAddr219 ) = ( ((word) (fPt) Action←P3732) );
(* (( (ptr) tmpAddr219) + 1) ) = 1;
};
{
word tmpAddr220;
tmpAddr220 = (word) (( (ptr) &var←c61380)+6)/* var←c58788 */ ;
(* (ptr) tmpAddr220 ) = ( ((word) (fPt) Action←P3624) );
(* (( (ptr) tmpAddr220) + 1) ) = 1;
};
SOURCE(18083, 32)
(* (( (ptr) &var←c61380)+8)/* data←v15404 */ ) = XR←Narrow((* (( (ptr) device←v8880)+7) ), (* (( (ptr) gf←c61412)+39) ))
;
SOURCE(18117, 1273)
{
word var←c58820;
var←c58820 = (* (( (ptr) (* (( (ptr) &var←c61380)+8)/* data←v15404 */ ))+3) );
switch (var←c58820) {
case 0:
SOURCE(18153, 101)
{
word pd221;
pd221 = (* (( (ptr) (* (( (ptr) gf←c61412)+153)/* var←c56516 */ ))+58) );
(void) ( *( (fPt) ((* (ptr) pd221 ))))((* (( (ptr) (* (( (ptr) &var←c61380)+8)/* data←v15404 */ ))+1) ), boxes←v8936, (* (
( (ptr) (* (( (ptr) &var←c61380)+8)/* data←v15404 */ ))+4) ), (unsigned) ((* (( (bPt) (* (( (ptr) &var←c61380)+8)/* data←v15404 */ ))+23)
) & 7), pd221);
};
break;
case 1:
SOURCE(18269, 130)
{
word pd222;
pd222 = (* (( (ptr) (* (( (ptr) gf←c61412)+153)/* var←c56516 */ ))+56) );
(void) ( *( (fPt) ((* (ptr) pd222 ))))((* (( (ptr) (* (( (ptr) &var←c61380)+8)/* data←v15404 */ ))+1) ), boxes←v8936, (* (
( (ptr) (* (( (ptr) &var←c61380)+8)/* data←v15404 */ ))+8) ), (* (( (ptr) (* (( (ptr) &var←c61380)+8)/* data←v15404 */ ))+9)
), (unsigned) ((* (( (bPt) (* (( (ptr) &var←c61380)+8)/* data←v15404 */ ))+23) ) & 7), pd222);
};
break;
case 2:
SOURCE(18423, 619)
{
/* declaration of buffer←v15448 skipped */
SOURCE(18425, 87)
{
word var←c58852;
{
word pd223;
word idx224;
pd223 = (* (( (ptr) (* (( (ptr) gf←c61412)+157)/* var←c57124 */ ))+17) );
var←c58852 = (
idx224 = (word) ( *( (fPt) ((* (ptr) pd223 ))))(bounds←v8908, pd223),
SGNCK(idx224)
);
};
{
word pd225;
pd225 = (* (( (ptr) (* (( (ptr) gf←c61412)+153)/* var←c56516 */ ))+6) );
(* (( (ptr) &var←c61380)+9)/* buffer←v15448 */ ) = (word) ( *( (fPt) ((* (ptr) pd225 ))))(var←c58852, pd225);
};
};
SOURCE(18865, 131)
{
word pd226;
pd226 = (* (( (ptr) (* (( (ptr) gf←c61412)+160)/* var←c57796 */ ))+12) );
(void) ( *( (fPt) ((* (ptr) pd226 ))))((* (( (ptr) (* (( (ptr) &var←c61380)+8)/* data←v15404 */ ))+18) ), (* (( (ptr) (* (
( (ptr) &var←c61380)+8)/* data←v15404 */ ))+17) ), (* (( (ptr) gf←c61412)+21)/* interpolate←v4820 */ ), boxes←v8936, bounds←v8908, (word) (
( (bPt) &var←c61380)+24)/* var←c58788 */ , pd226);
};
SOURCE(18998, 42)
{
word pd227;
pd227 = (* (( (ptr) (* (( (ptr) gf←c61412)+153)/* var←c56516 */ ))+7) );
(void) ( *( (fPt) ((* (ptr) pd227 ))))((* ((( (ptr) &var←c61380)+9)/* buffer←v15448 */ ) ), pd227);
};
};
break;
case 3:
SOURCE(19061, 331)
SOURCE(19265, 125)
{
word pd228;
pd228 = (* (( (ptr) (* (( (ptr) gf←c61412)+160)/* var←c57796 */ ))+12) );
(void) ( *( (fPt) ((* (ptr) pd228 ))))((* (( (ptr) (* (( (ptr) &var←c61380)+8)/* data←v15404 */ ))+18) ), (* (( (ptr) (* (
( (ptr) &var←c61380)+8)/* data←v15404 */ ))+17) ), 0, boxes←v8936, bounds←v8908, (word) (( (bPt) &var←c61380)+16)/* var←c58756 */ , pd228)
;
};
break;
default:
SOURCE(19406, 5)
(void) XR←RaiseUnnamedError();
break;
};
};
}
static void Action←P3624(pixels←v15552, min←v15580, formal←c61476)
word pixels←v15552;
W2 min←v15580;
word formal←c61476;
{
register ptr gf←c61444 = (ptr) &globalframe;
formal←c61476 = (formal←c61476 - 24);
/* Action: */
SOURCE(18514, 19)
SOURCE(18591, 29)
(* (ptr) (* (( (ptr) formal←c61476)+9) ) ) = (* (ptr) pixels←v15552 );
SOURCE(18622, 112)
{
word pd229;
pd229 = (* (( (ptr) (* (( (ptr) gf←c61444)+153)/* var←c56516 */ ))+45) );
(void) ( *( (fPt) ((* (ptr) pd229 ))))((* (( (ptr) (* (( (ptr) formal←c61476)+8) ))+12) ), (* (( (ptr) (* (( (ptr) formal←c61476)+8)
))+13) ), min←v15580, (* (( (ptr) formal←c61476)+9) ), pd229);
};
SOURCE(18736, 124)
{
word pd230;
word limit231;
pd230 = (* (( (ptr) (* (( (ptr) gf←c61444)+153)/* var←c56516 */ ))+46) );
(void) ( *( (fPt) ((* (ptr) pd230 ))))((* (( (ptr) (* (( (ptr) formal←c61476)+8) ))+1) ), min←v15580, (* ((( (ptr) pixels←v15552)+2)
+(
limit231 = (* (( (ptr) pixels←v15552)+1) ),
BCK(0, limit231)
)) ), (* (( (ptr) formal←c61476)+9) ), (unsigned) ((* (( (bPt) (* (( (ptr) formal←c61476)+8) ))+23) ) & 7), pd230);
};
}
static void Action←P3732(pixels←v15684, min←v15712, formal←c61540)
word pixels←v15684;
W2 min←v15712;
word formal←c61540;
{
register ptr gf←c61508 = (ptr) &globalframe;
formal←c61540 = (formal←c61540 - 16);
/* Action: */
SOURCE(19063, 14)
SOURCE(19127, 133)
{
W2 var←c58884;
var←c58884.f0 = 0;
var←c58884.f1 = 1;
{
word pd232;
word limit233;
pd232 = (* (( (ptr) (* (( (ptr) gf←c61508)+153)/* var←c56516 */ ))+47) );
(void) ( *( (fPt) ((* (ptr) pd232 ))))((* (( (ptr) (* (( (ptr) formal←c61540)+8) ))+1) ), min←v15712, var←c58884, (* ((( (ptr) pixels←v15684)+2)
+(
limit233 = (* (( (ptr) pixels←v15684)+1) ),
BCK(0, limit233)
)) ), 0, (* (ptr) pixels←v15684 )
, (unsigned) ((* (( (bPt) (* (( (ptr) formal←c61540)+8) ))+23) ) & 7), pd232);
};
};
}
static void BitmapMaskRegion←P1140(device←v8996, bounds←v9024, edgeGenerator←v9052)
word device←v8996;
W4 bounds←v9024;
word edgeGenerator←v9052;
{
register ptr gf←c61572 = (ptr) &globalframe;
word data←v15740;
/* BitmapMaskRegion: */
SOURCE(19417, 303)
SOURCE(19524, 32)
data←v15740 = XR←Narrow((* (( (ptr) device←v8996)+7) ), (* (( (ptr) gf←c61572)+39) ));
SOURCE(19558, 29)
if (((* (( (ptr) data←v15740)+3) ) != 0)) {
SOURCE(19587, 5)
(void) XR←RaiseUnnamedError();
};
SOURCE(19594, 126)
{
word var←c58916;
{
word var←c58948;
var←c58948 = (* (( (ptr) data←v15740)+1) );
if ((var←c58948 == 0)) {
goto lab←L100035;
};
if (((* (( (ptr) var←c58948)+6) ) == 0)) {
goto lab←L100035;
};
(void) XR←RaiseError(XR←NarrowFault, 0);
lab←L100035: ;
var←c58916 = var←c58948;
};
{
word pd234;
pd234 = (* (( (ptr) (* (( (ptr) gf←c61572)+153)/* var←c56516 */ ))+59) );
(void) ( *( (fPt) ((* (ptr) pd234 ))))(var←c58916, edgeGenerator←v9052, (* (( (ptr) data←v15740)+4) ), (unsigned) ((* (
( (bPt) data←v15740)+23) ) & 7), pd234);
};
};
}
static void BitmapMaskBitmap←P1200(device←v9172, bitmap←v9200, delta←v9228, bounds←v9256, boxes←v9284)
word device←v9172;
word bitmap←v9200;
W2 delta←v9228;
W4 bounds←v9256;
word boxes←v9284;
{
register ptr gf←c61604 = (ptr) &globalframe;
word data←v15784;
/* BitmapMaskBitmap: */
SOURCE(19726, 272)
SOURCE(19844, 32)
data←v15784 = XR←Narrow((* (( (ptr) device←v9172)+7) ), (* (( (ptr) gf←c61604)+39) ));
SOURCE(19878, 120)
{
word pd235;
pd235 = (* (( (ptr) (* (( (ptr) gf←c61604)+153)/* var←c56516 */ ))+57) );
(void) ( *( (fPt) ((* (ptr) pd235 ))))((* (( (ptr) data←v15784)+1) ), bitmap←v9200, delta←v9228, boxes←v9284, (unsigned) ((* (
( (bPt) data←v15784)+27) ) & 7), pd235);
};
}
static void BitmapMaskRawBitmaps←P1260(device←v9344, list←v9372)
word device←v9344;
word list←v9372;
{
register ptr gf←c61636 = (ptr) &globalframe;
word data←v15828;
/* BitmapMaskRawBitmaps: */
SOURCE(20004, 224)
SOURCE(20094, 32)
data←v15828 = XR←Narrow((* (( (ptr) device←v9344)+7) ), (* (( (ptr) gf←c61636)+39) ));
SOURCE(20128, 100)
{
word var←c58980;
{
word var←c59012;
var←c59012 = (* (( (ptr) data←v15828)+1) );
if ((var←c59012 == 0)) {
goto lab←L100036;
};
if (((* (( (ptr) var←c59012)+6) ) == 0)) {
goto lab←L100036;
};
(void) XR←RaiseError(XR←NarrowFault, 0);
lab←L100036: ;
var←c58980 = var←c59012;
};
{
word pd236;
pd236 = (* (( (ptr) (* (( (ptr) gf←c61636)+153)/* var←c56516 */ ))+53) );
(void) ( *( (fPt) ((* (ptr) pd236 ))))(var←c58980, list←v9372, (unsigned) ((* (( (bPt) data←v15828)+27) ) & 7), pd236);
};
};
}
static void BitmapDrawBitmap←P1320(device←v9516, bitmap←v9544, delta←v9572, bounds←v9600, boxes←v9628)
word device←v9516;
word bitmap←v9544;
W2 delta←v9572;
W4 bounds←v9600;
word boxes←v9628;
{
register ptr gf←c61668 = (ptr) &globalframe;
word data←v15872;
/* BitmapDrawBitmap: */
SOURCE(20234, 237)
SOURCE(20352, 32)
data←v15872 = XR←Narrow((* (( (ptr) device←v9516)+7) ), (* (( (ptr) gf←c61668)+39) ));
SOURCE(20386, 85)
{
word pd237;
pd237 = (* (( (ptr) (* (( (ptr) gf←c61668)+153)/* var←c56516 */ ))+57) );
(void) ( *( (fPt) ((* (ptr) pd237 ))))((* (( (ptr) data←v15872)+1) ), bitmap←v9544, delta←v9572, boxes←v9628, 0, pd237);
};
}
static void BitmapMoveBox←P1380(device←v9688, dstMin←v9716, srcMin←v9744, size←v9772)
word device←v9688;
W2 dstMin←v9716;
W2 srcMin←v9744;
W2 size←v9772;
{
register ptr gf←c61700 = (ptr) &globalframe;
word data←v15916;
/* BitmapMoveBox: */
SOURCE(20477, 184)
SOURCE(20548, 32)
data←v15916 = XR←Narrow((* (( (ptr) device←v9688)+7) ), (* (( (ptr) gf←c61700)+39) ));
SOURCE(20582, 79)
{
word pd238;
pd238 = (* (( (ptr) (* (( (ptr) gf←c61700)+153)/* var←c56516 */ ))+51) );
(void) ( *( (fPt) ((* (ptr) pd238 ))))((* (( (ptr) data←v15916)+1) ), dstMin←v9716, srcMin←v9744, size←v9772, 0, pd238);
};
}
static void BitmapSwitchBuffer←P1440(device←v9832, bounds←v9860, copy←v9888, alt←v9916)
word device←v9832;
W4 bounds←v9860;
word copy←v9888;
word alt←v9916;
{
register ptr gf←c61732 = (ptr) &globalframe;
word data←v15960;
word oldBuffer←v15988;
word newBuffer←v16016;
/* BitmapSwitchBuffer: */
SOURCE(20667, 486)
SOURCE(20752, 32)
data←v15960 = XR←Narrow((* (( (ptr) device←v9832)+7) ), (* (( (ptr) gf←c61732)+39) ));
SOURCE(20786, 34)
oldBuffer←v15988 = (* (( (ptr) data←v15960)+1) );
SOURCE(20822, 117)
{
word tc239;
word pd240;
if ((0 != alt←v9916)) {
pd240 = (* (( (ptr) (* (( (ptr) gf←c61732)+153)/* var←c56516 */ ))+22) );
tc239 = (word) ( *( (fPt) ((* (ptr) pd240 ))))(bounds←v9860, 1, 0, pd240);
}
else {
tc239 = (word) (* (( (ptr) data←v15960)+2) );
};
newBuffer←v16016 = tc239;
};
SOURCE(20941, 66)
if ((0 != copy←v9888)) {
SOURCE(20954, 53)
{
W2 var←c59044;
var←c59044.f0 = 0;
var←c59044.f1 = 0;
{
word pd241;
pd241 = (* (( (ptr) (* (( (ptr) gf←c61732)+153)/* var←c56516 */ ))+50) );
(void) ( *( (fPt) ((* (ptr) pd241 ))))(newBuffer←v16016, oldBuffer←v15988, var←c59044, 0, pd241);
};
};
};
SOURCE(21009, 23)
(* (( (ptr) data←v15960)+1) ) = newBuffer←v16016;
SOURCE(21034, 119)
if ((0 != alt←v9916)) {
SOURCE(21048, 29)
(* (( (ptr) data←v15960)+2) ) = oldBuffer←v15988;
}
else {
SOURCE(21086, 22)
(* (( (ptr) data←v15960)+2) ) = 0;
SOURCE(21111, 42)
{
word pd242;
pd242 = (* (( (ptr) (* (( (ptr) gf←c61732)+153)/* var←c56516 */ ))+23) );
(void) ( *( (fPt) ((* (ptr) pd242 ))))(oldBuffer←v15988, pd242);
};
};
}
static word FindBitsAtTransformation←P1500(formal←c0563, formal←c0564, formal←c0565)
word formal←c0563;
word formal←c0564;
word formal←c0565;
{
W9 var←c61764;
/* declaration of objectTable←v10664 skipped */
/* declaration of object←v10692 skipped */
/* declaration of clientToDevice←v10720 skipped */
register ptr gf←c61796 = (ptr) &globalframe;
/* declaration of var←c01 skipped */
/* declaration of objectCacheData←v10764 skipped */
(* (( (ptr) &var←c61764)+4)/* objectTable←v10664 */ ) = formal←c0563;
(* (( (ptr) &var←c61764)+5)/* object←v10692 */ ) = formal←c0564;
(* (( (ptr) &var←c61764)+6)/* clientToDevice←v10720 */ ) = formal←c0565;
/* FindBitsAtTransformation: */
SOURCE(22184, 601)
(void) (XR←MonitorEntry((word) (( (bPt) gf←c61796)+16)/* LOCK←v3588 */ ));
SOURCE(22184, 601)
(* (( (ptr) &var←c61764)+8)/* objectCacheData←v10764 */ ) = 0;
SOURCE(22396, 389)
{
word var←c02;
{
word var←c0541;
var←c0541 = (word) &var←c61764;
var←c02 = (word) XR←Enable(( ((word) (fPt) NoName←Q5100) ), ( ((word) (fPt) NoName←Q5280) ), var←c0541);
};
if ((var←c02 == 1)) {
goto lab←L02;
};
};
SOURCE(22184, 601)
(void) (XR←MonitorExit((word) (( (bPt) gf←c61796)+16)/* LOCK←v3588 */ ));
return((* (( (ptr) &var←c61764)+8)/* objectCacheData←v10764 */ ));
lab←L02: ;
return((* (( (ptr) &var←c61764)+7)/* var←c01 */ ));
}
static word NoName←Q5100(formal←c0516)
word formal←c0516;
{
register ptr gf←c0515 = (ptr) &globalframe;
SOURCE(22419, 15)
{
word val←v16060 = 0;
word allBits←v16088 = 0;
word found←v16116 = 0;
SOURCE(22475, 54)
{
W2 var←c59076;
{
word pd243;
pd243 = (* (( (ptr) (* (( (ptr) gf←c0515)+147)/* var←c56068 */ ))+7) );
(void) ( *( (fPt) ((* (ptr) pd243 ))))((word) &var←c59076, (* (ptr) (* (( (ptr) formal←c0516)+4) ) ), (* (( (ptr) formal←c0516)+5)
), pd243);
};
val←v16060 = var←c59076.f1;
found←v16116 = var←c59076.f0;
};
SOURCE(22531, 29)
if ((0 == found←v16116)) {
SOURCE(22549, 11)
(void) (XR←MonitorExit((word) (( (bPt) gf←c0515)+16)/* LOCK←v3588 */ ));
(* (( (ptr) formal←c0516)+7) ) = 0;
return(1);
};
SOURCE(22562, 21)
allBits←v16088 = XR←Narrow(val←v16060, (* (( (ptr) gf←c0515)+49) ));
SOURCE(22585, 168)
{
register word list←v16160;
list←v16160 = (* (ptr) allBits←v16088 );
lab←L100042: ;
if ((list←v16160 != 0)) {
}
else {
goto lab←L100039;
};
SOURCE(22665, 88)
{
word pd244;
pd244 = (* (( (ptr) (* (( (ptr) gf←c0515)+150)/* var←c56324 */ ))+55) );
if ((0 != (word) ( *( (fPt) ((* (ptr) pd244 ))))((* (( (ptr) (* (ptr) list←v16160 ))+1) ), (* (( (ptr) formal←c0516)+6)
), (* (ptr) &fc63 ), pd244))) {
SOURCE(22735, 18)
{
word var←c59108;
var←c59108 = (* (ptr) list←v16160 );
(void) (XR←MonitorExit((word) (( (bPt) gf←c0515)+16)/* LOCK←v3588 */ ));
(* (( (ptr) formal←c0516)+7) ) = var←c59108;
return(1);
};
};
};
list←v16160 = (* (( (ptr) list←v16160)+1) );
goto lab←L100042;
lab←L100039: ;
};
SOURCE(22764, 21)
(* (( (ptr) formal←c0516)+8) ) = 0;
};
return(0);
}
static void InsertBitsAtTransformation←P1560(formal←c0566, formal←c0567, formal←c0568)
word formal←c0566;
word formal←c0567;
word formal←c0568;
{
W7 var←c61828;
/* declaration of objectTable←v10824 skipped */
/* declaration of object←v10852 skipped */
/* declaration of objectCacheData←v10880 skipped */
register ptr gf←c61860 = (ptr) &globalframe;
var←c61828.f4/* objectTable←v10824 */ = formal←c0566;
var←c61828.f5/* object←v10852 */ = formal←c0567;
var←c61828.f6/* objectCacheData←v10880 */ = formal←c0568;
/* InsertBitsAtTransformation: */
SOURCE(22791, 761)
(void) (XR←MonitorEntry((word) (( (bPt) gf←c61860)+16)/* LOCK←v3588 */ ));
SOURCE(22964, 588)
{
word var←c0542;
var←c0542 = (word) &var←c61828;
(void) (word) XR←Enable(( ((word) (fPt) NoName←Q5160) ), ( ((word) (fPt) NoName←Q5220) ), var←c0542);
};
SOURCE(22791, 761)
(void) (XR←MonitorExit((word) (( (bPt) gf←c61860)+16)/* LOCK←v3588 */ ));
return;
}
static word NoName←Q5160(formal←c0519)
word formal←c0519;
{
register ptr gf←c0518 = (ptr) &globalframe;
SOURCE(22987, 15)
{
word val←v16288 = 0;
word allBits←v16316 = 0;
word found←v16344 = 0;
SOURCE(23043, 54)
{
W2 var←c59140;
{
word pd245;
pd245 = (* (( (ptr) (* (( (ptr) gf←c0518)+147)/* var←c56068 */ ))+7) );
(void) ( *( (fPt) ((* (ptr) pd245 ))))((word) &var←c59140, (* (ptr) (* (( (ptr) formal←c0519)+4) ) ), (* (( (ptr) formal←c0519)+5)
), pd245);
};
val←v16288 = var←c59140.f1;
found←v16344 = var←c59140.f0;
};
SOURCE(23099, 161)
if ((0 == found←v16344)) {
SOURCE(23119, 57)
{
word var←c59172;
word var←c59268;
{
word var←c59204;
word var←c59236;
var←c59204 = XR←NewObject(8, (* (( (ptr) gf←c0518)+44) ));
var←c59236 = var←c59204;
(* (ptr) var←c59236 ) = (* (( (ptr) formal←c0519)+6) );
var←c59172 = var←c59204;
};
var←c59268 = XR←NewObject(4, (* (( (ptr) gf←c0518)+49) ));
(* (ptr) var←c59268 ) = var←c59172;
allBits←v16316 = var←c59268;
};
}
else {
SOURCE(23187, 21)
allBits←v16316 = XR←Narrow(val←v16288, (* (( (ptr) gf←c0518)+49) ));
SOURCE(23210, 50)
{
word var←c59300;
var←c59300 = XR←NewObject(8, (* (( (ptr) gf←c0518)+44) ));
(* (ptr) var←c59300 ) = (* (( (ptr) formal←c0519)+6) );
(* (( (ptr) var←c59300)+1) ) = (* (ptr) allBits←v16316 );
(* (ptr) allBits←v16316 ) = var←c59300;
};
};
SOURCE(23265, 53)
{
word var←c59332;
word pd246;
pd246 = (* (( (ptr) (* (( (ptr) gf←c0518)+147)/* var←c56068 */ ))+9) );
var←c59332 = (word) ( *( (fPt) ((* (ptr) pd246 ))))((* (ptr) (* (( (ptr) formal←c0519)+4) ) ), (* (( (ptr) formal←c0519)+5)
), allBits←v16316, pd246);
};
SOURCE(23320, 45)
(* (( (ptr) (* (( (ptr) formal←c0519)+4) ))+1) ) = ((* (( (ptr) (* (( (ptr) formal←c0519)+4) ))+1) ) + 1);
SOURCE(23367, 70)
(* (( (ptr) (* (( (ptr) formal←c0519)+4) ))+2) ) = ((* (( (ptr) (* (( (ptr) formal←c0519)+4) ))+2) ) + (* (( (ptr) (* (( (ptr) formal←c0519)+6)
))+2) ));
SOURCE(23439, 113)
if (((* (( (ptr) (* (( (ptr) formal←c0519)+4) ))+1) ) > (* (( (ptr) gf←c0518)+23)/* maxObjects←v5268 */ )) || ((* (( (ptr) (* (
( (ptr) formal←c0519)+4) ))+2) ) > (* (( (ptr) gf←c0518)+24)/* maxWordsOfStorage←v5296 */ ))) {
SOURCE(23526, 26)
(void) EnforceLimits←P1620((* ((( (ptr) formal←c0519)+4)) ));
};
};
return(0);
}
static void EnforceLimits←P1620(formal←c0569)
word formal←c0569;
{
W11 var←c61892;
/* declaration of objectTable←v10940 skipped */
register ptr gf←c61924 = (ptr) &globalframe;
/* declaration of var←c59364 skipped */
/* declaration of var←c59396 skipped */
/* declaration of index←v16444 skipped */
word done←v16472 = 0;
/* declaration of cleanupNILs←v16500 skipped */
(* (( (ptr) &var←c61892)+4)/* objectTable←v10940 */ ) = formal←c0569;
/* EnforceLimits: */
SOURCE(23558, 1644)
{
word tmpAddr247;
tmpAddr247 = (word) (( (ptr) &var←c61892)+5)/* var←c59364 */ ;
(* (ptr) tmpAddr247 ) = ( ((word) (fPt) TrimBits←P3996) );
(* (( (ptr) tmpAddr247) + 1) ) = 1;
};
{
word tmpAddr248;
tmpAddr248 = (word) (( (ptr) &var←c61892)+7)/* var←c59396 */ ;
(* (ptr) tmpAddr248 ) = ( ((word) (fPt) TrimBitsAfterIndex←P3936) );
(* (( (ptr) tmpAddr248) + 1) ) = 1;
};
SOURCE(24733, 14)
(* (( (ptr) &var←c61892)+9)/* index←v16444 */ ) = 0;
SOURCE(24769, 13)
(* (( (ptr) &var←c61892)+10)/* cleanupNILs←v16500 */ ) = 0;
SOURCE(24808, 58)
{
word pd249;
pd249 = (* (( (ptr) (* (( (ptr) gf←c61924)+147)/* var←c56068 */ ))+13) );
done←v16472 = (word) ( *( (fPt) ((* (ptr) pd249 ))))((* (ptr) (* (( (ptr) &var←c61892)+4)/* objectTable←v10940 */ ) ), (word) (
( (bPt) &var←c61892)+28)/* var←c59396 */ , pd249);
};
SOURCE(24868, 63)
if ((0 == done←v16472)) {
SOURCE(24885, 46)
{
word var←c59428;
word pd250;
pd250 = (* (( (ptr) (* (( (ptr) gf←c61924)+147)/* var←c56068 */ ))+13) );
var←c59428 = (word) ( *( (fPt) ((* (ptr) pd250 ))))((* (ptr) (* (( (ptr) &var←c61892)+4)/* objectTable←v10940 */ ) ), (word) (
( (bPt) &var←c61892)+20)/* var←c59364 */ , pd250);
};
};
SOURCE(24933, 156)
{
register word list←v16628;
list←v16628 = (* (( (ptr) &var←c61892)+10)/* cleanupNILs←v16500 */ );
lab←L100048: ;
if ((list←v16628 != 0)) {
}
else {
goto lab←L100045;
};
{
word deleted←v16756;
SOURCE(25007, 60)
{
word pd251;
pd251 = (* (( (ptr) (* (( (ptr) gf←c61924)+147)/* var←c56068 */ ))+11) );
deleted←v16756 = (word) ( *( (fPt) ((* (ptr) pd251 ))))((* (ptr) (* (( (ptr) &var←c61892)+4)/* objectTable←v10940 */ ) ), (* (ptr) list←v16628 ), pd251)
;
};
SOURCE(25069, 20)
if ((0 == deleted←v16756)) {
SOURCE(25089, 5)
(void) XR←RaiseUnnamedError();
};
};
list←v16628 = (* (( (ptr) list←v16628)+1) );
goto lab←L100048;
lab←L100045: ;
};
SOURCE(25105, 97)
{
word pd252;
pd252 = (* (( (ptr) (* (( (ptr) gf←c61924)+147)/* var←c56068 */ ))+6) );
if (( (int)(* (( (ptr) (* (( (ptr) &var←c61892)+4)/* objectTable←v10940 */ ))+3) ) > (int)(word) ( *( (fPt) ((* (ptr) pd252 ))
))((* (ptr) ((* (( (ptr) &var←c61892)+4)/* objectTable←v10940 */ )) ), pd252))) {
SOURCE(25174, 28)
(* (( (ptr) (* (( (ptr) &var←c61892)+4)/* objectTable←v10940 */ ))+3) ) = 0;
};
};
}
static word TrimBitsAfterIndex←P3936(key←v52944, val←v52972, formal←c61988)
word key←v52944;
word val←v52972;
word formal←c61988;
{
register ptr gf←c61956 = (ptr) &globalframe;
word quit←v53016;
word allBits←v16800;
word limitsDone←v16828 = 0;
formal←c61988 = (formal←c61988 - 28);
/* TrimBitsAfterIndex: */
SOURCE(23618, 617)
SOURCE(23618, 617)
quit←v53016 = 0;
SOURCE(23664, 30)
allBits←v16800 = XR←Narrow(val←v52972, (* (( (ptr) gf←c61956)+49) ));
SOURCE(23722, 75)
if (((* (( (ptr) formal←c61988)+9) ) < (* (( (ptr) (* (( (ptr) formal←c61988)+4) ))+3) ))) {
SOURCE(23765, 17)
(* (( (ptr) formal←c61988)+9) ) = ((* (( (ptr) formal←c61988)+9) ) + 1);
SOURCE(23784, 13)
return(0);
};
SOURCE(23802, 55)
(* (( (ptr) (* (( (ptr) formal←c61988)+4) ))+3) ) = ((* (( (ptr) (* (( (ptr) formal←c61988)+4) ))+3) ) + 1);
SOURCE(23859, 376)
lab←L100051: ;
if (((* (ptr) allBits←v16800 ) != 0)) {
}
else {
goto lab←L100049;
};
SOURCE(23887, 45)
{
word idx253;
(* (( (ptr) (* (( (ptr) formal←c61988)+4) ))+1) ) = (
idx253 = (word) ((* (( (ptr) (* (( (ptr) formal←c61988)+4) ))+1) ) - 1),
SGNCK(idx253)
);
};
SOURCE(23934, 73)
(* (( (ptr) (* (( (ptr) formal←c61988)+4) ))+2) ) = ((* (( (ptr) (* (( (ptr) formal←c61988)+4) ))+2) ) - (* (( (ptr) (* (ptr) (* (ptr) allBits←v16800 ) ))+2)
));
SOURCE(24009, 32)
(* (ptr) allBits←v16800 ) = (* (( (ptr) (* (ptr) allBits←v16800 ))+1) );
SOURCE(24043, 94)
if (((* (( (ptr) (* (( (ptr) formal←c61988)+4) ))+1) ) <= (* (( (ptr) gf←c61956)+23)/* maxObjects←v5268 */ ))) {
limitsDone←v16828 = (unsigned) ((* (( (ptr) (* (( (ptr) formal←c61988)+4) ))+2) ) <= (* (( (ptr) gf←c61956)+24)/* maxWordsOfStorage←v5296 */ ));
}
else {
limitsDone←v16828 = (unsigned) 0;
};
SOURCE(24139, 63)
if (((* (ptr) allBits←v16800 ) == 0)) {
SOURCE(24166, 36)
{
word var←c59460;
var←c59460 = XR←NewObject(8, (* (( (ptr) gf←c61956)+45) ));
(* (ptr) var←c59460 ) = key←v52944;
(* (( (ptr) var←c59460)+1) ) = (* (( (ptr) formal←c61988)+10) );
(* (( (ptr) formal←c61988)+10) ) = var←c59460;
};
};
SOURCE(24204, 31)
if ((0 != limitsDone←v16828)) {
SOURCE(24223, 12)
return(1);
};
goto lab←L100051;
lab←L100049: ;
SOURCE(23618, 617)
return(quit←v53016);
}
static word TrimBits←P3996(key←v53076, val←v53104, formal←c62052)
word key←v53076;
word val←v53104;
word formal←c62052;
{
register ptr gf←c62020 = (ptr) &globalframe;
word quit←v53148;
word allBits←v16872;
word limitsDone←v16900 = 0;
formal←c62052 = (formal←c62052 - 20);
/* TrimBits: */
SOURCE(24249, 470)
SOURCE(24249, 470)
quit←v53148 = 0;
SOURCE(24285, 30)
allBits←v16872 = XR←Narrow(val←v53104, (* (( (ptr) gf←c62020)+49) ));
SOURCE(24343, 376)
lab←L100054: ;
if (((* (ptr) allBits←v16872 ) != 0)) {
}
else {
goto lab←L100052;
};
SOURCE(24371, 45)
{
word idx254;
(* (( (ptr) (* (( (ptr) formal←c62052)+4) ))+1) ) = (
idx254 = (word) ((* (( (ptr) (* (( (ptr) formal←c62052)+4) ))+1) ) - 1),
SGNCK(idx254)
);
};
SOURCE(24418, 73)
(* (( (ptr) (* (( (ptr) formal←c62052)+4) ))+2) ) = ((* (( (ptr) (* (( (ptr) formal←c62052)+4) ))+2) ) - (* (( (ptr) (* (ptr) (* (ptr) allBits←v16872 ) ))+2)
));
SOURCE(24493, 32)
(* (ptr) allBits←v16872 ) = (* (( (ptr) (* (ptr) allBits←v16872 ))+1) );
SOURCE(24527, 94)
if (((* (( (ptr) (* (( (ptr) formal←c62052)+4) ))+1) ) <= (* (( (ptr) gf←c62020)+23)/* maxObjects←v5268 */ ))) {
limitsDone←v16900 = (unsigned) ((* (( (ptr) (* (( (ptr) formal←c62052)+4) ))+2) ) <= (* (( (ptr) gf←c62020)+24)/* maxWordsOfStorage←v5296 */ ));
}
else {
limitsDone←v16900 = (unsigned) 0;
};
SOURCE(24623, 63)
if (((* (ptr) allBits←v16872 ) == 0)) {
SOURCE(24650, 36)
{
word var←c59492;
var←c59492 = XR←NewObject(8, (* (( (ptr) gf←c62020)+45) ));
(* (ptr) var←c59492 ) = key←v53076;
(* (( (ptr) var←c59492)+1) ) = (* (( (ptr) formal←c62052)+10) );
(* (( (ptr) formal←c62052)+10) ) = var←c59492;
};
};
SOURCE(24688, 31)
if ((0 != limitsDone←v16900)) {
SOURCE(24707, 12)
return(1);
};
goto lab←L100054;
lab←L100052: ;
SOURCE(24249, 470)
return(quit←v53148);
}
static void RemoveBitsAtTransformation←P1680(objectTable←v11000, objectCacheData←v11028)
word objectTable←v11000;
word objectCacheData←v11028;
{
register ptr gf←c62084 = (ptr) &globalframe;
word val←v16944 = 0;
word allBits←v16972 = 0;
word found←v17000 = 0;
/* RemoveBitsAtTransformation: */
SOURCE(25208, 455)
SOURCE(25439, 64)
{
W2 var←c59524;
{
word pd255;
pd255 = (* (( (ptr) (* (( (ptr) gf←c62084)+147)/* var←c56068 */ ))+7) );
(void) ( *( (fPt) ((* (ptr) pd255 ))))((word) &var←c59524, objectTable←v11000, (* (ptr) objectCacheData←v11028 ), pd255)
;
};
val←v16944 = var←c59524.f1;
found←v17000 = var←c59524.f0;
};
SOURCE(25505, 158)
if ((0 != found←v17000)) {
SOURCE(25521, 21)
allBits←v16972 = XR←Narrow(val←v16944, (* (( (ptr) gf←c62084)+44) ));
SOURCE(25544, 54)
allBits←v16972 = (word) DeleteBitsFromList←P1740(objectCacheData←v11028, allBits←v16972);
SOURCE(25600, 63)
{
word var←c59556;
word pd256;
pd256 = (* (( (ptr) (* (( (ptr) gf←c62084)+147)/* var←c56068 */ ))+9) );
var←c59556 = (word) ( *( (fPt) ((* (ptr) pd256 ))))(objectTable←v11000, (* (ptr) objectCacheData←v11028 ), allBits←v16972, pd256)
;
};
};
}
static word DeleteBitsFromList←P1740(entity←v11088, entityList←v11116)
word entity←v11088;
word entityList←v11116;
{
word smallerList←v11244;
word beforeEnt←v17128 = 0;
word ent←v17156 = 0;
word afterEnt←v17184 = 0;
word notFound←v17212 = 0;
/* DeleteBitsFromList: */
SOURCE(25672, 446)
SOURCE(25672, 446)
smallerList←v11244 = 0;
SOURCE(25895, 79)
{
W4 var←c59588;
(void) FindBitsAndNeighbors←P1800((word) &var←c59588, entity←v11088, entityList←v11116);
notFound←v17212 = var←c59588.f3;
afterEnt←v17184 = var←c59588.f2;
ent←v17156 = var←c59588.f1;
beforeEnt←v17128 = var←c59588.f0;
};
SOURCE(25976, 35)
if ((0 != notFound←v17212)) {
SOURCE(25993, 18)
return(entityList←v11116);
};
SOURCE(26013, 105)
if ((beforeEnt←v17128 == 0)) {
SOURCE(26037, 28)
smallerList←v11244 = afterEnt←v17184;
}
else {
SOURCE(26067, 25)
(* (( (ptr) beforeEnt←v17128)+1) ) = afterEnt←v17184;
SOURCE(26094, 24)
smallerList←v11244 = entityList←v11116;
};
SOURCE(25672, 446)
return(smallerList←v11244);
}
static void FindBitsAndNeighbors←P1800(formal←c0404, entity←v11388, entityList←v11416)
word formal←c0404;
word entity←v11388;
word entityList←v11416;
{
word beforeEnt←v11544;
word ent←v11572;
word afterEnt←v11600;
word notFound←v11628;
word lastE←v17340 = 0;
word eList←v17368;
/* FindBitsAndNeighbors: */
SOURCE(26156, 507)
SOURCE(26156, 507)
beforeEnt←v11544 = 0;
SOURCE(26156, 507)
ent←v11572 = 0;
SOURCE(26156, 507)
afterEnt←v11600 = 0;
SOURCE(26156, 507)
notFound←v11628 = 0;
SOURCE(26381, 7)
eList←v17368 = entityList←v11416;
SOURCE(26427, 47)
if ((eList←v17368 == 0)) {
SOURCE(26447, 27)
beforeEnt←v11544 = 0;
ent←v11572 = 0;
afterEnt←v11600 = 0;
notFound←v11628 = 1;
goto lab←L100055;
};
SOURCE(26476, 149)
lab←L100058: ;
if ((eList←v17368 != 0)) {
}
else {
goto lab←L100056;
};
SOURCE(26497, 92)
if (((* (ptr) eList←v17368 ) == entity←v11388)) {
SOURCE(26528, 17)
beforeEnt←v11544 = lastE←v17340;
SOURCE(26547, 11)
ent←v11572 = eList←v17368;
SOURCE(26560, 21)
afterEnt←v11600 = (* (( (ptr) eList←v17368)+1) );
SOURCE(26583, 6)
goto lab←L100055;
};
SOURCE(26592, 13)
lastE←v17340 = eList←v17368;
SOURCE(26607, 18)
eList←v17368 = (* (( (ptr) eList←v17368)+1) );
goto lab←L100058;
lab←L100056: ;
SOURCE(26636, 27)
beforeEnt←v11544 = 0;
ent←v11572 = 0;
afterEnt←v11600 = 0;
notFound←v11628 = 1;
/* removed tail goto */
lab←L100055: ;
(* (ptr) formal←c0404 ) = beforeEnt←v11544;
(* (( (ptr) formal←c0404)+1) ) = ent←v11572;
(* (( (ptr) formal←c0404)+2) ) = afterEnt←v11600;
(* (( (ptr) formal←c0404)+3) ) = notFound←v11628;
return;
}
static void BitmapDrawObjectMultiColor←P1860(formal←c0570, formal←c0571, position←v11828, interactive←v11856)
word formal←c0570;
word formal←c0571;
W2 position←v11828;
word interactive←v11856;
{
W13 var←c62116;
/* declaration of context←v11772 skipped */
/* declaration of object←v11800 skipped */
register ptr gf←c62148 = (ptr) &globalframe;
/* declaration of var←c59620 skipped */
/* declaration of var←c59652 skipped */
word device←v17580;
word data←v17608;
W4 contextBox←v17636;
W4 intersection←v17664;
W4 objectRect←v17692;
(* (( (ptr) &var←c62116)+4)/* context←v11772 */ ) = formal←c0570;
(* (( (ptr) &var←c62116)+5)/* object←v11800 */ ) = formal←c0571;
/* BitmapDrawObjectMultiColor: */
SOURCE(26668, 3099)
{
word tmpAddr257;
tmpAddr257 = (word) (( (ptr) &var←c62116)+6)/* var←c59620 */ ;
(* (ptr) tmpAddr257 ) = ( ((word) (fPt) save←P4500) );
(* (( (ptr) tmpAddr257) + 1) ) = 1;
};
{
word tmpAddr258;
tmpAddr258 = (word) (( (ptr) &var←c62116)+8)/* var←c59652 */ ;
(* (ptr) tmpAddr258 ) = ( ((word) (fPt) ClipAndDraw←P4296) );
(* (( (ptr) tmpAddr258) + 1) ) = 1;
};
SOURCE(26774, 48)
{
word pd259;
pd259 = (* (( (ptr) (* (( (ptr) gf←c62148)+148)/* var←c56196 */ ))+6) );
device←v17580 = (word) ( *( (fPt) ((* (ptr) pd259 ))))((* ((( (ptr) &var←c62116)+4)/* context←v11772 */ ) ), pd259);
};
SOURCE(26824, 32)
data←v17608 = XR←Narrow((* (( (ptr) device←v17580)+7) ), (* (( (ptr) gf←c62148)+39) ));
SOURCE(26923, 74)
{
W4 var←c59684;
{
word pd260;
pd260 = (* (( (ptr) (* (( (ptr) gf←c62148)+154)/* var←c56836 */ ))+15) );
(void) ( *( (fPt) ((* (ptr) pd260 ))))((word) &var←c59684, (* (( (ptr) &var←c62116)+4)/* context←v11772 */ ), pd260);
};
{
W4 var←c0418;
{
word pd261;
pd261 = (* (( (ptr) (* (( (ptr) gf←c62148)+162)/* var←c59716 */ ))+4) );
(void) ( *( (fPt) ((* (ptr) pd261 ))))((word) &var←c0418, var←c59684, pd261);
};
contextBox←v17636 = var←c0418;
};
};
SOURCE(26999, 107)
{
word x262;
word x263;
*(float*)&objectRect←v17692.f0 = (
x262 = position←v11828.f0, *(float*)&x262
) + (
x263 = (* (( (ptr) (* (( (ptr) &var←c62116)+5)/* object←v11800 */ ))+1) ), *(float*)&x263
);
};
{
word x264;
word x265;
*(float*)&objectRect←v17692.f1 = (
x264 = position←v11828.f1, *(float*)&x264
) + (
x265 = (* (( (ptr) (* (( (ptr) &var←c62116)+5)/* object←v11800 */ ))+2) ), *(float*)&x265
);
};
objectRect←v17692.f2 = (* (( (ptr) (* (( (ptr) &var←c62116)+5)/* object←v11800 */ ))+3) );
objectRect←v17692.f3 = (* (( (ptr) (* (( (ptr) &var←c62116)+5)/* object←v11800 */ ))+4) );
SOURCE(27133, 89)
{
W4 var←c59748;
{
word pd266;
pd266 = (* (( (ptr) (* (( (ptr) gf←c62148)+162)/* var←c59716 */ ))+4) );
(void) ( *( (fPt) ((* (ptr) pd266 ))))((word) &var←c59748, objectRect←v17692, pd266);
};
{
W4 var←c0421;
{
word pd267;
pd267 = (* (( (ptr) (* (( (ptr) gf←c62148)+162)/* var←c59716 */ ))+8) );
(void) ( *( (fPt) ((* (ptr) pd267 ))))((word) &var←c0421, contextBox←v17636, var←c59748, pd267);
};
intersection←v17664 = var←c0421;
};
};
SOURCE(27224, 50)
{
word x268;
word x269;
if (((
x268 = intersection←v17664.f2, *(float*)&x268
) == (
x269 = intersection←v17664.f0, *(float*)&x269
))) {
SOURCE(27268, 6)
return;
};
};
SOURCE(27292, 2372)
if ( ( (0 != interactive←v11856) ? ((* (( (ptr) (* (( (ptr) data←v17608)+14) ))+3) ) == 0) : 0 ) ) {
SOURCE(27356, 2310)
{
word clientToDevice←v17736;
W4 bounds←v17764;
SOURCE(27358, 109)
{
word pd270;
pd270 = (* (( (ptr) (* (( (ptr) gf←c62148)+154)/* var←c56836 */ ))+20) );
clientToDevice←v17736 = (word) ( *( (fPt) ((* (ptr) pd270 ))))((* (( (ptr) &var←c62116)+4)/* context←v11772 */ ), 0, 3, pd270)
;
};
SOURCE(27469, 87)
{
word pd271;
pd271 = (* (( (ptr) (* (( (ptr) gf←c62148)+150)/* var←c56324 */ ))+46) );
(void) ( *( (fPt) ((* (ptr) pd271 ))))((word) &bounds←v17764, clientToDevice←v17736, objectRect←v17692, pd271);
};
SOURCE(27559, 2015)
{
float tf272;
word x273;
word x274;
word x276;
if ((FABS(((
x273 = bounds←v17764.f2, *(float*)&x273
) * (
x274 = bounds←v17764.f3, *(float*)&x274
)), tf272) <= (
x276 = (* (ptr) &fc275 ), *(float*)&x276
))) {
SOURCE(27616, 1980)
{
word objectCacheData←v17808;
SOURCE(27618, 97)
objectCacheData←v17808 = (word) FindBitsAtTransformation←P1500((* (( (ptr) gf←c62148)+22)/* objectTable←v5100 */ ), (* (
( (ptr) &var←c62116)+5)/* object←v11800 */ ), clientToDevice←v17736);
SOURCE(27717, 902)
if ((objectCacheData←v17808 == 0)) {
SOURCE(27747, 874)
{
word bitmap←v17880 = 0;
word size←v17908 = 0;
SOURCE(27940, 76)
{
word pd277;
pd277 = (* (( (ptr) (* (( (ptr) gf←c62148)+163)/* var←c59780 */ ))+7) );
bitmap←v17880 = (word) ( *( (fPt) ((* (ptr) pd277 ))))((word) (( (bPt) &var←c62116)+32)/* var←c59652 */ , clientToDevice←v17736, 0, 0, pd277)
;
};
SOURCE(28034, 378)
{
word o←v18012;
W4 movedBox←v18040;
SOURCE(28080, 65)
o←v18012 = XR←NewObject(24, (* (( (ptr) gf←c62148)+42) ));
(* (( (ptr) o←v18012)+2) ) = 10000;
(* (( (ptr) o←v18012)+3) ) = 1;
SOURCE(28147, 85)
{
/*1*/ W4 var←c0431;
/*1*/ {
/*1*/ W2 var←c59844;
/*1*/ var←c59844.f0 = 10000;
/*1*/ var←c59844.f1 = 10000;
/*1*/ {
/*1*/ word pd278;
/*1*/ pd278 = (* (( (ptr) (* (( (ptr) gf←c62148)+157)/* var←c57124 */ ))+20) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd278 ))))((word) &var←c0431, (* (W4Pt) bitmap←v17880 ), var←c59844, pd278);
/*1*/ };
/*1*/ };
/*1*/ movedBox←v18040 = var←c0431;
/*1*/ };
SOURCE(28234, 19)
objectCacheData←v17808 = o←v18012;
SOURCE(28255, 15)
(* (( (ptr) o←v18012)+4) ) = bitmap←v17880;
SOURCE(28272, 70)
(* (( (ptr) o←v18012)+5) ) = (word) RenderOntoWhite←P1920((word) (( (bPt) &var←c62116)+32)/* var←c59652 */ , clientToDevice←v17736, movedBox←v18040)
;
SOURCE(28344, 66)
{
/*1*/ W2 var←c59876;
/*1*/ {
/*1*/ W2 var←c59908;
/*1*/ W4 b←v54348;
/*1*/ b←v54348 = (* (W4Pt) bitmap←v17880 );
/*1*/ var←c59908.f0 = (b←v54348.f2 - b←v54348.f0);
/*1*/ var←c59908.f1 = (b←v54348.f3 - b←v54348.f1);
/*1*/ var←c59876 = var←c59908;
/*1*/ };
/*1*/ {
/*1*/ word pd279;
/*1*/ pd279 = (* (( (ptr) (* (( (ptr) gf←c62148)+153)/* var←c56516 */ ))+18) );
/*1*/ size←v17908 = ((word) ( *( (fPt) ((* (ptr) pd279 ))))(var←c59876, 1, 0, pd279) + 10);
/*1*/ };
/*1*/ };
};
SOURCE(28417, 31)
(* (ptr) objectCacheData←v17808 ) = (* (( (ptr) &var←c62116)+5)/* object←v11800 */ );
SOURCE(28450, 74)
{
word pd280;
pd280 = (* (( (ptr) (* (( (ptr) gf←c62148)+150)/* var←c56324 */ ))+6) );
(* (( (ptr) objectCacheData←v17808)+1) ) = (word) ( *( (fPt) ((* (ptr) pd280 ))))(clientToDevice←v17736, pd280);
};
SOURCE(28526, 27)
(* (( (ptr) objectCacheData←v17808)+2) ) = SGNCK(size←v17908);
SOURCE(28555, 64)
(void) InsertBitsAtTransformation←P1560((* (( (ptr) gf←c62148)+22)/* objectTable←v5100 */ ), (* (( (ptr) &var←c62116)+5)
/* object←v11800 */ ), objectCacheData←v17808);
};
};
SOURCE(28624, 950)
{
word var←c59972;
var←c59972 = objectCacheData←v17808;
if ((var←c59972 == 0)) {
goto lab←L100060;
};
if (((* (( (ptr) var←c59972)+3) ) == 1)) {
{
/* declaration of ocd←v18096 skipped */
(* (( (ptr) &var←c62116)+10)/* ocd←v18096 */ ) = var←c59972;
SOURCE(28695, 881)
{
/*1*/ W2 t1←v18152;
/*1*/ W2 t2←v18180;
/*1*/ W2 t3←v18208;
/*1*/ /* declaration of t←v18236 skipped */
SOURCE(28714, 69)
/*1*/ {
/*1*/ word pd281;
/*1*/ pd281 = (* (( (ptr) (* (( (ptr) gf←c62148)+150)/* var←c56324 */ ))+40) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd281 ))))((word) &t1←v18152, clientToDevice←v17736, position←v11828, pd281);
/*1*/ };
SOURCE(28785, 46)
/*1*/ t2←v18180.f0 = (* (( (ptr) clientToDevice←v17736)+2) );
/*1*/ t2←v18180.f1 = (* (( (ptr) clientToDevice←v17736)+5) );
SOURCE(28833, 54)
/*1*/ t3←v18208.f0 = (* (( (ptr) (* (( (ptr) (* (( (ptr) &var←c62116)+10)/* ocd←v18096 */ ))+1) ))+2) );
/*1*/ t3←v18208.f1 = (* (( (ptr) (* (( (ptr) (* (( (ptr) &var←c62116)+10)/* ocd←v18096 */ ))+1) ))+5) );
SOURCE(28889, 45)
/*1*/ {
/*1*/ W2 var←c60068;
/*1*/ {
/*1*/ word pd282;
/*1*/ pd282 = (* (( (ptr) (* (( (ptr) gf←c62148)+164)/* var←c60100 */ ))+6) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd282 ))))((word) &var←c60068, t2←v18180, t3←v18208, pd282);
/*1*/ };
/*1*/ {
/*1*/ W2 var←c0444;
/*1*/ {
/*1*/ word pd283;
/*1*/ pd283 = (* (( (ptr) (* (( (ptr) gf←c62148)+164)/* var←c60100 */ ))+4) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd283 ))))((word) &var←c0444, t1←v18152, var←c60068, pd283);
/*1*/ };
/*1*/ (* (W2Pt) (( (ptr) &var←c62116)+11)/* t←v18236 */ ) = var←c0444;
/*1*/ };
/*1*/ };
SOURCE(29492, 28)
/*1*/ {
/*1*/ word pd284;
/*1*/ pd284 = (* (( (ptr) (* (( (ptr) gf←c62148)+155)/* var←c56868 */ ))+12) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd284 ))))((* (( (ptr) &var←c62116)+4)/* context←v11772 */ ), (word) (( (bPt) &var←c62116)+24)
/*1*/ /* var←c59620 */ , pd284);
/*1*/ };
SOURCE(29522, 44)
/*1*/ {
/*1*/ word pd285;
/*1*/ pd285 = (* (( (ptr) (* (( (ptr) gf←c62148)+150)/* var←c56324 */ ))+5) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd285 ))))(clientToDevice←v17736, pd285);
/*1*/ };
SOURCE(29568, 6)
/*1*/ return;
/*1*/ };
};
}
else {
lab←L100060: ;
};
};
};
};
};
SOURCE(29620, 44)
{
word pd286;
pd286 = (* (( (ptr) (* (( (ptr) gf←c62148)+150)/* var←c56324 */ ))+5) );
(void) ( *( (fPt) ((* (ptr) pd286 ))))(clientToDevice←v17736, pd286);
};
};
};
SOURCE(29696, 71)
{
word pd287;
pd287 = (* (( (ptr) (* (( (ptr) gf←c62148)+165)/* var←c60132 */ ))+13) );
(void) ( *( (fPt) ((* (ptr) pd287 ))))((* (( (ptr) &var←c62116)+4)/* context←v11772 */ ), (* (( (ptr) &var←c62116)+5)/* object←v11800 */ ), position←v11828, interactive←v11856, pd287)
;
};
}
static void ClipAndDraw←P4296(c←v17984, formal←c62212)
word c←v17984;
word formal←c62212;
{
register ptr gf←c62180 = (ptr) &globalframe;
formal←c62212 = (formal←c62212 - 32);
/* ClipAndDraw: */
SOURCE(27800, 19)
SOURCE(27835, 36)
{
word pd288;
pd288 = (* (( (ptr) (* (( (ptr) gf←c62180)+155)/* var←c56868 */ ))+83) );
(void) ( *( (fPt) ((* (ptr) pd288 ))))(c←v17984, (* (W4Pt) (( (ptr) (* (( (ptr) formal←c62212)+5) ))+1) ), 0, pd288);
};
SOURCE(27873, 22)
{
word pd289;
pd289 = (* (ptr) (* (( (ptr) formal←c62212)+5) ) );
(void) ( *( (fPt) ((* (ptr) pd289 ))))((* (( (ptr) formal←c62212)+5) ), c←v17984, pd289);
};
}
static void save←P4500(formal←c62276)
word formal←c62276;
{
register ptr gf←c62244 = (ptr) &globalframe;
word m←v18324;
formal←c62276 = (formal←c62276 - 24);
/* save: */
SOURCE(28936, 13)
SOURCE(28951, 94)
{
word pd290;
pd290 = (* (( (ptr) (* (( (ptr) gf←c62244)+154)/* var←c56836 */ ))+20) );
m←v18324 = (word) ( *( (fPt) ((* (ptr) pd290 ))))((* (( (ptr) formal←c62276)+4) ), 3, 1, pd290);
};
SOURCE(29047, 31)
{
word pd291;
pd291 = (* (( (ptr) (* (( (ptr) gf←c62244)+154)/* var←c56836 */ ))+6) );
(void) ( *( (fPt) ((* (ptr) pd291 ))))((* (( (ptr) formal←c62276)+4) ), m←v18324, pd291);
};
SOURCE(29115, 31)
{
word pd292;
pd292 = (* (( (ptr) (* (( (ptr) gf←c62244)+150)/* var←c56324 */ ))+5) );
(void) ( *( (fPt) ((* (ptr) pd292 ))))(m←v18324, pd292);
};
SOURCE(29148, 7)
m←v18324 = 0;
SOURCE(29157, 38)
{
word pd293;
pd293 = (* (( (ptr) (* (( (ptr) gf←c62244)+155)/* var←c56868 */ ))+52) );
(void) ( *( (fPt) ((* (ptr) pd293 ))))((* (( (ptr) formal←c62276)+4) ), (* (ptr) (* (( (ptr) (* (( (ptr) gf←c62244)+155)
/* var←c56868 */ ))+55) ) ), pd293);
};
SOURCE(29197, 101)
{
W2 var←c60164;
var←c60164.f0 = 0;
var←c60164.f1 = 0;
{
word pd294;
pd294 = (* (( (ptr) (* (( (ptr) gf←c62244)+155)/* var←c56868 */ ))+78) );
(void) ( *( (fPt) ((* (ptr) pd294 ))))((* (( (ptr) formal←c62276)+4) ), (* (( (ptr) (* (( (ptr) formal←c62276)+10) ))+4)
), var←c60164, 6, (* (W2Pt) (( (ptr) formal←c62276)+11) ), pd294);
};
};
SOURCE(29300, 38)
{
word pd295;
pd295 = (* (( (ptr) (* (( (ptr) gf←c62244)+155)/* var←c56868 */ ))+52) );
(void) ( *( (fPt) ((* (ptr) pd295 ))))((* (( (ptr) formal←c62276)+4) ), (* (ptr) (* (( (ptr) (* (( (ptr) gf←c62244)+155)
/* var←c56868 */ ))+54) ) ), pd295);
};
SOURCE(29340, 147)
{
W2 var←c60196;
{
W2 var←c0450;
{
W2 var←c60228;
{
float tf296;
var←c60228.f0 = (
tf296 = (float)(unsigned)10000, *(word*)&tf296
);
};
{
float tf297;
var←c60228.f1 = (
tf297 = (float)(unsigned)10000, *(word*)&tf297
);
};
{
word pd298;
pd298 = (* (( (ptr) (* (( (ptr) gf←c62244)+164)/* var←c60100 */ ))+6) );
(void) ( *( (fPt) ((* (ptr) pd298 ))))((word) &var←c0450, (* (W2Pt) (( (ptr) formal←c62276)+11) ), var←c60228, pd298);
};
};
var←c60196 = var←c0450;
};
{
W2 var←c60260;
var←c60260.f0 = 0;
var←c60260.f1 = 0;
{
word pd299;
pd299 = (* (( (ptr) (* (( (ptr) gf←c62244)+155)/* var←c56868 */ ))+78) );
(void) ( *( (fPt) ((* (ptr) pd299 ))))((* (( (ptr) formal←c62276)+4) ), (* (( (ptr) (* (( (ptr) formal←c62276)+10) ))+5)
), var←c60260, 6, var←c60196, pd299);
};
};
};
}
static word RenderOntoWhite←P1920(formal←c0572, formal←c0573, box←v11972)
word formal←c0572;
word formal←c0573;
W4 box←v11972;
{
W9 var←c62308;
/* declaration of operator←v11916 skipped */
/* declaration of clientToDevice←v11944 skipped */
register ptr gf←c62340 = (ptr) &globalframe;
word shadingBits←v12076;
/* declaration of var←c60292 skipped */
/* declaration of context←v18368 skipped */
(* (( (ptr) &var←c62308)+4)/* operator←v11916 */ ) = formal←c0572;
(* (( (ptr) &var←c62308)+5)/* clientToDevice←v11944 */ ) = formal←c0573;
/* RenderOntoWhite: */
SOURCE(29798, 643)
{
word tmpAddr300;
tmpAddr300 = (word) (( (ptr) &var←c62308)+6)/* var←c60292 */ ;
(* (ptr) tmpAddr300 ) = ( ((word) (fPt) proc←P4560) );
(* (( (ptr) tmpAddr300) + 1) ) = 1;
};
SOURCE(29798, 643)
shadingBits←v12076 = 0;
SOURCE(29929, 23)
(* (( (ptr) &var←c62308)+8)/* context←v18368 */ ) = 0;
SOURCE(30086, 44)
{
word pd301;
pd301 = (* (( (ptr) (* (( (ptr) gf←c62340)+153)/* var←c56516 */ ))+19) );
shadingBits←v12076 = (word) ( *( (fPt) ((* (ptr) pd301 ))))(box←v11972, 1, 0, pd301);
};
SOURCE(30132, 31)
{
word pd302;
pd302 = (* (( (ptr) (* (( (ptr) gf←c62340)+153)/* var←c56516 */ ))+48) );
(void) ( *( (fPt) ((* (ptr) pd302 ))))(shadingBits←v12076, pd302);
};
SOURCE(30165, 179)
{
W2 var←c60324;
W2 var←c60356;
var←c60324.f0 = 2147483647;
var←c60324.f1 = 2147483647;
var←c60356.f0 = (* (ptr) &fc59 );
var←c60356.f1 = (* (ptr) &fc59 );
(* (( (ptr) &var←c62308)+8)/* context←v18368 */ ) = (word) Create←P60(var←c60324, 6, var←c60356, 1, 1, (* (ptr) (* (( (ptr) (* (
( (ptr) gf←c62340)+166)/* var←c60388 */ ))+4) ) ));
};
SOURCE(30346, 29)
{
W2 var←c60420;
var←c60420.f0 = (* (ptr) &fc60 );
var←c60420.f1 = (* (ptr) &fc60 );
{
word pd303;
pd303 = (* (( (ptr) (* (( (ptr) gf←c62340)+155)/* var←c56868 */ ))+21) );
(void) ( *( (fPt) ((* (ptr) pd303 ))))((* (( (ptr) &var←c62308)+8)/* context←v18368 */ ), var←c60420, pd303);
};
};
SOURCE(30377, 31)
(void) SetBitmap←P120((* (( (ptr) &var←c62308)+8)/* context←v18368 */ ), shadingBits←v12076);
SOURCE(30410, 31)
{
word pd304;
pd304 = (* (( (ptr) (* (( (ptr) gf←c62340)+155)/* var←c56868 */ ))+13) );
(void) ( *( (fPt) ((* (ptr) pd304 ))))((* (( (ptr) &var←c62308)+8)/* context←v18368 */ ), (word) (( (bPt) &var←c62308)+24)
/* var←c60292 */ , pd304);
};
SOURCE(29798, 643)
return(shadingBits←v12076);
}
static void proc←P4560(formal←c62404)
word formal←c62404;
{
register ptr gf←c62372 = (ptr) &globalframe;
formal←c62404 = (formal←c62404 - 24);
/* proc: */
SOURCE(29954, 127)
SOURCE(29969, 52)
{
W2 var←c60452;
{
float tf305;
var←c60452.f0 = (
tf305 = (float)(unsigned)10000, *(word*)&tf305
);
};
{
float tf306;
var←c60452.f1 = (
tf306 = (float)(unsigned)10000, *(word*)&tf306
);
};
{
word pd307;
pd307 = (* (( (ptr) (* (( (ptr) gf←c62372)+155)/* var←c56868 */ ))+18) );
(void) ( *( (fPt) ((* (ptr) pd307 ))))((* (( (ptr) formal←c62404)+8) ), var←c60452, pd307);
};
};
SOURCE(30023, 39)
{
word pd308;
pd308 = (* (( (ptr) (* (( (ptr) gf←c62372)+155)/* var←c56868 */ ))+14) );
(void) ( *( (fPt) ((* (ptr) pd308 ))))((* (( (ptr) formal←c62404)+8) ), (* (( (ptr) formal←c62404)+5) ), pd308);
};
SOURCE(30064, 17)
{
word pd309;
pd309 = (* (( (ptr) formal←c62404)+4) );
(void) ( *( (fPt) ((* (ptr) pd309 ))))((* ((( (ptr) formal←c62404)+8)) ), pd309);
};
}
static word BitmapGetBufferColorOperator←P1980(device←v12136)
word device←v12136;
{
register ptr gf←c62436 = (ptr) &globalframe;
word var←c12180;
/* BitmapGetBufferColorOperator: */
SOURCE(33192, 150)
SOURCE(33272, 70)
{
word pd310;
pd310 = (* (( (ptr) (* (( (ptr) gf←c62436)+167)/* var←c60516 */ ))+12) );
return((word) ( *( (fPt) ((* (ptr) pd310 ))))((* (ptr) &fc60 ), (* (ptr) &fc59 ), 0, 0, pd310));
};
}
static void BitmapAccessBuffer←P2040(device←v12240, box←v12268, action←v12296)
word device←v12240;
W4 box←v12268;
word action←v12296;
{
register ptr gf←c62468 = (ptr) &globalframe;
word data←v18456;
word bitmap←v18484;
word pixelMap←v18512;
/* BitmapAccessBuffer: */
SOURCE(33346, 512)
SOURCE(33440, 32)
data←v18456 = XR←Narrow((* (( (ptr) device←v12240)+7) ), (* (( (ptr) gf←c62468)+39) ));
SOURCE(33474, 55)
{
word pd311;
pd311 = (* (( (ptr) (* (( (ptr) gf←c62468)+153)/* var←c56516 */ ))+27) );
bitmap←v18484 = (word) ( *( (fPt) ((* (ptr) pd311 ))))((* (( (ptr) data←v18456)+1) ), box←v12268, pd311);
};
SOURCE(33531, 113)
if (((* (( (ptr) data←v18456)+21) ) == 0)) {
{
word var←c60548;
var←c60548 = XR←NewObject(28, (* (( (ptr) gf←c62468)+28) ));
(* (( (ptr) var←c60548)+5) ) = 1;
pixelMap←v18512 = var←c60548;
};
}
else {
pixelMap←v18512 = (* (( (ptr) data←v18456)+21) );
};
SOURCE(33646, 26)
(* (( (ptr) data←v18456)+21) ) = 0;
SOURCE(33674, 42)
(* (W4Pt) (( (ptr) pixelMap←v18512)+1) ) = (* (W4Pt) bitmap←v18484 );
SOURCE(33718, 20)
{
word limit312;
(* ((( (ptr) pixelMap←v18512)+6)+(
limit312 = (* (( (ptr) pixelMap←v18512)+5) ),
BCK(0, limit312)
)) ) = bitmap←v18484;
};
SOURCE(33740, 16)
(void) ( *( (fPt) ((* (ptr) action←v12296 ))))(pixelMap←v18512, action←v12296);
SOURCE(33758, 17)
{
word limit313;
(* ((( (ptr) pixelMap←v18512)+6)+(
limit313 = (* (( (ptr) pixelMap←v18512)+5) ),
BCK(0, limit313)
)) ) = 0;
};
SOURCE(33785, 39)
SOURCE(33786, 38)
{
word pd314;
pd314 = (* (( (ptr) (* (( (ptr) gf←c62468)+153)/* var←c56516 */ ))+30) );
(void) ( *( (fPt) ((* (ptr) pd314 ))))(bitmap←v18484, pd314);
};
SOURCE(33827, 31)
(* (( (ptr) data←v18456)+21) ) = pixelMap←v18512;
}
static void NoName←Q5220(formal←c0475, formal←c200004, formal←c200005, formal←c200006, formal←c200007)
word formal←c0475;
word formal←c200004;
word formal←c200005;
word formal←c200006;
word formal←c200007;
{
register ptr gf←c0536 = (ptr) &globalframe;
if ((formal←c200005 == XR←Unwind)) {
(void) (XR←MonitorExit((word) (( (bPt) gf←c0536)+16)/* LOCK←v3588 */ ));
};
(* (ptr) formal←c0475 ) = 0;
(* (( (ptr) formal←c0475)+1) ) = 0;
return;
}
static void NoName←Q5280(formal←c0480, formal←c200000, formal←c200001, formal←c200002, formal←c200003)
word formal←c0480;
word formal←c200000;
word formal←c200001;
word formal←c200002;
word formal←c200003;
{
register ptr gf←c0537 = (ptr) &globalframe;
if ((formal←c200001 == XR←Unwind)) {
(void) (XR←MonitorExit((word) (( (bPt) gf←c0537)+16)/* LOCK←v3588 */ ));
};
(* (ptr) formal←c0480 ) = 0;
(* (( (ptr) formal←c0480)+1) ) = 0;
return;
}
/* file: ImagerBitmapContextImpl, module: ImagerBitmapContextImpl, compiled at: October 28, 1993 1:02:46 pm PDT */
extern void XR←install←ImagerBitmapContextImpl() {
NoName←Q5040();
}
extern void XR←run←ImagerBitmapContextImpl() { XR←Start(&globalframe); }