/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */ /* time: July 28, 1993 10:21:48 am PDT */ /* C2C version: April 20, 1993 (sun4) */ /* ref-counting: off */ /* file: ImagerPixelImpl, module: ImagerPixelImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> static char versionStamp[] = "@(#)mob←version [3188986349,3604261867] ImagerPixelImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef word (*fPt)(); typedef struct {word f0, f1, f2, f3, f4, f5;} W6; typedef struct {word f0, f1, f2, f3;} W4; typedef W4 *W4Pt; typedef struct {word f0, f1, f2, f3, f4;} W5; typedef struct {word f0, f1;} W2; typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8; typedef struct {W8 f; word r;} W9; typedef struct {W8 f; W8 r;} W16; typedef struct {W16 f; W6 r;} W22; typedef W2 *W2Pt; #define SOURCE(p, l) /* source p, l */ static float fc11 = 2147483647.0; #define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) ) static float fc33 = 0.0; static float fc38 = 65536.0; #define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i ) static float fc68 = 1.0; static float fc71 = 0.5; #define MIN(cast, x, y) ( ( cast x) < ( cast y) ? (x) : (y) ) static void NoName←Q3756(); static void ImagerPixelImpl←P0(); static word NewPixels←P120(); static word ObtainScratchPixels←P180(); static void ReleaseScratchPixels←P240(); static void DoWithScratchPixels←P300(); static word NoName←Q3816(); static word NewPixelMap←P360(); static word MakePixelMap←P420(); static void GetPixels←P480(); static void PutPixels←P540(); static word ScaledFromRealMod←P600(); static void Resample1←P660(); static void boxes←P1668(); static void action←P1728(); static void Resample←P720(); static void boxActionPointSamples←P1884(); static void boxActionInterpolatedSamples←P1944(); static word HalfInteger←P780(); static void NoName←Q3876(); static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\260\302\146\322\300\075\027\134\123\100\214\000\000"}; static struct {unsigned f; char r[12];} string2 = {524296, "\011\000\004\040\040\000\010\001\000\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\276\024\021\355\300\326\324\253\353\100\164\000\000"}; static struct {unsigned f; char r[8];} string6 = {393222, "\006\001 \004O\377\000"}; static struct {unsigned f; char r[16];} string7 = {851984, "\257\300\213\226\301\143\300\072\355\320\373\100\150\000\000"}; static struct {unsigned f; char r[16];} string8 = {851984, "\257\300\121\117\377\026\300\315\013\026\004\100\150\000\000"}; static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\243\162\130\311\300\344\000\142\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string10 = {851984, "\257\300\260\302\146\322\300\075\027\134\123\100\150\000\000"}; static struct { word f0[26]; word f26; word f27; word f28; word f29; word f30; word f31; word f32; word f33; word f34; word f35; word f36; word f37; word f38; word f39; word f40; word f41; word f42; word f43; word f44; word f45; word f46; word f47; word f48; word f49; word f50; word f51[9]; } globalframe = { {0}, (word) HalfInteger←P780, 0, (word) Resample←P720, 0, (word) Resample1←P660, 0, (word) ScaledFromRealMod←P600, 0, (word) PutPixels←P540, 0, (word) GetPixels←P480, 0, (word) MakePixelMap←P420, 0, (word) NewPixelMap←P360, 0, (word) DoWithScratchPixels←P300, 0, (word) ReleaseScratchPixels←P240, 0, (word) ObtainScratchPixels←P180, 0, (word) NewPixels←P120, 0, (word) ImagerPixelImpl←P0, {0} }; static void NoName←Q3756() { register ptr gf←c0296 = (ptr) &globalframe; word var←c22152; (* (( (ptr) gf←c0296)+23) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2); (* (( (ptr) gf←c0296)+24) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4); (void) XR←DeclareGlobalFrame((word) "ImagerPixelImpl", &globalframe, (word) XR←GetTypeIndex((word) &string5, 0, (word) &string6) , (word) (( (bPt) gf←c0296)+200)/* var←c19464 */ ); var←c22152 = (word) XR←ImportInterface((word) "ImagerSample", (word) XR←GetTypeIndexS((word) (&string7)), 60); (* (( (ptr) gf←c0296)+56)/* var←c19720 */ ) = var←c22152; (void) XR←ImportProcS(var←c22152, 67905026); (void) XR←ImportProcS(var←c22152, 1312773); (void) XR←ImportProcS(var←c22152, 2370311); (void) XR←ImportProcS(var←c22152, 2107398); (void) XR←ImportProcS(var←c22152, 68685571); (void) XR←ImportProcS(var←c22152, 67633410); var←c22152 = (word) XR←ImportInterface((word) "ImagerTransformation", (word) XR←GetTypeIndexS((word) (&string8)), 55); (* (( (ptr) gf←c0296)+57)/* var←c20648 */ ) = var←c22152; (void) XR←ImportProcS(var←c22152, 135013634); (void) XR←ImportProcS(var←c22152, 135013890); (void) XR←ImportProcS(var←c22152, 67383297); var←c22152 = (word) XR←ImportInterface((word) "SF", (word) XR←GetTypeIndexS((word) (&string9)), 19); (* (( (ptr) gf←c0296)+58)/* var←c20712 */ ) = var←c22152; (void) XR←ImportProcS(var←c22152, 68160769); var←c22152 = (word) XR←ExportInterface((word) "ImagerPixel", (word) XR←GetTypeIndexS((word) (&string10)), 9); (* (( (ptr) gf←c0296)+59)/* var←c22184 */ ) = var←c22152; (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+192)/* var←c19432 */ , 67895299, (word) "NewPixels"); (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+184)/* var←c19400 */ , 67633410, (word) "ObtainScratchPixels") ; (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+176)/* var←c19368 */ , 262657, (word) "ReleaseScratchPixels") ; (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+168)/* var←c19336 */ , 787203, (word) "DoWithScratchPixels"); (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+160)/* var←c19304 */ , 68682755, (word) "NewPixelMap"); (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+152)/* var←c19272 */ , 68420869, (word) "MakePixelMap"); (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+144)/* var←c19240 */ , 2098694, (word) "GetPixels"); (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+136)/* var←c19208 */ , 2361095, (word) "PutPixels"); (void) XR←ExportProcS(var←c22152, (word) (( (bPt) gf←c0296)+112)/* var←c19112 */ , 2361350, (word) "Resample"); } static void ImagerPixelImpl←P0(formal←c025, formal←c024) word formal←c025; word formal←c024; { register ptr gf←c22216 = (ptr) &globalframe; /* ImagerPixelImpl: */ SOURCE(524, 17181) SOURCE(4788, 35) (* (( (ptr) gf←c22216)+20)/* realLastInt←v3168 */ ) = (* (ptr) &fc11 ); } static word NewPixels←P120(samplesPerPixel←v3796, length←v3824, scratch←v3852) word samplesPerPixel←v3796; word length←v3824; word scratch←v3852; { register ptr gf←c22248 = (ptr) &globalframe; word var←c3896; word new←v6144; /* NewPixels: */ SOURCE(1186, 369) SOURCE(1299, 26) new←v6144 = scratch←v3852; SOURCE(1327, 97) if ((new←v6144 == 0) || ((* (( (ptr) new←v6144)+1) ) != samplesPerPixel←v3796)) { SOURCE(1382, 42) { word var←c19560; word var←c19592; word var←c19624; var←c19560 = BCK(samplesPerPixel←v3796, 67108863); var←c19592 = ((word) var←c19560 << 2); var←c19624 = XR←NewObject((8 + var←c19592), (* (( (ptr) gf←c22248)+23) )); (* (( (ptr) var←c19624)+1) ) = var←c19560; new←v6144 = var←c19624; }; }; SOURCE(1426, 86) { register word i←v6188 = 0; register word noName←c19656; noName←c19656 = samplesPerPixel←v3796; if ((i←v6188 >= noName←c19656)) { goto lab←L100000; }; lab←L100003: ; SOURCE(1464, 48) { word var←c19688; { word pd12; pd12 = (* (( (ptr) (* (( (ptr) gf←c22248)+56)/* var←c19720 */ ))+5) ); var←c19688 = (word) ( *( (fPt) ((* (ptr) pd12 ))))(length←v3824, 0, pd12); }; { word limit13; (* ((( (ptr) new←v6144)+2)+( limit13 = (* (( (ptr) new←v6144)+1) ), BCK(i←v6188, limit13) )) ) = var←c19688; }; }; i←v6188 = (i←v6188 + 1); if ((i←v6188 < noName←c19656)) { goto lab←L100003; }; lab←L100000: ; }; SOURCE(1523, 19) (* (ptr) new←v6144 ) = length←v3824; SOURCE(1544, 11) return(new←v6144); } static word ObtainScratchPixels←P180(samplesPerPixel←v3992, length←v4020) word samplesPerPixel←v3992; word length←v4020; { register ptr gf←c22280 = (ptr) &globalframe; word var←c4064; /* ObtainScratchPixels: */ SOURCE(1674, 490) (void) (XR←MonitorEntry((word) (( (bPt) gf←c22280)+16)/* LOCK←v2692 */ )); SOURCE(1775, 307) { register word i←v6232 = 0; lab←L100007: ; { word buf←v6276; SOURCE(1818, 41) buf←v6276 = (* ((( (ptr) gf←c22280)+8)/* scratchPixelBuffers←v2944 */ +BCK(i←v6232, 12)) ); SOURCE(1861, 221) if ( ( ( (buf←v6276 != 0) ? ((* (( (ptr) buf←v6276)+1) ) == samplesPerPixel←v3992) : 0 ) ? ((* (ptr) buf←v6276 ) >= length←v4020) : 0 ) ) { SOURCE(1948, 28) (* ((( (ptr) gf←c22280)+8)/* scratchPixelBuffers←v2944 */ +BCK(i←v6232, 12)) ) = 0; SOURCE(1978, 19) (* (ptr) buf←v6276 ) = length←v4020; SOURCE(1999, 60) { register word j←v6320 = 0; register word noName←c19752; noName←c19752 = samplesPerPixel←v3992; if ((j←v6320 >= noName←c19752)) { goto lab←L100008; }; lab←L100011: ; SOURCE(2037, 22) { word limit14; (* (ptr) (* ((( (ptr) buf←v6276)+2)+( limit14 = (* (( (ptr) buf←v6276)+1) ), BCK(j←v6320, limit14) )) ) ) = length←v4020; }; j←v6320 = (j←v6320 + 1); if ((j←v6320 < noName←c19752)) { goto lab←L100011; }; lab←L100008: ; }; SOURCE(2070, 12) (void) (XR←MonitorExit((word) (( (bPt) gf←c22280)+16)/* LOCK←v2692 */ )); return(buf←v6276); }; }; if ((i←v6232 >= 11)) { goto lab←L100004; }; i←v6232 = (i←v6232 + 1); goto lab←L100007; lab←L100004: ; }; SOURCE(2096, 68) { word var←c19784; var←c19784 = (word) NewPixels←P120(samplesPerPixel←v3992, length←v4020, 0); (void) (XR←MonitorExit((word) (( (bPt) gf←c22280)+16)/* LOCK←v2692 */ )); return(var←c19784); }; } static void ReleaseScratchPixels←P240(pixels←v4124) word pixels←v4124; { register ptr gf←c22312 = (ptr) &globalframe; word var←c19848; word slot←v6364 = 0; /* ReleaseScratchPixels: */ SOURCE(2168, 514) (void) (XR←MonitorEntry((word) (( (bPt) gf←c22312)+16)/* LOCK←v2692 */ )); SOURCE(2249, 41) if (((* (( (ptr) pixels←v4124)+1) ) == 0)) { SOURCE(2284, 6) (void) (XR←MonitorExit((word) (( (bPt) gf←c22312)+16)/* LOCK←v2692 */ )); return; }; SOURCE(2301, 109) { register word j←v6408 = 1; register word noName←c19816; noName←c19816 = (* (( (ptr) pixels←v4124)+1) ); if ((j←v6408 >= noName←c19816)) { goto lab←L100012; }; lab←L100015: ; SOURCE(2346, 64) { word limit15; word limit16; if (((* (( (ptr) (* ((( (ptr) pixels←v4124)+2)+( limit15 = (* (( (ptr) pixels←v4124)+1) ), BCK(j←v6408, limit15) )) ))+1) ) != (* (( (ptr) (* ((( (ptr) pixels←v4124)+2)+( limit16 = (* (( (ptr) pixels←v4124)+1) ), BCK(0, limit16) )) ))+1) ))) { SOURCE(2396, 14) (void) (XR←MonitorExit((word) (( (bPt) gf←c22312)+16)/* LOCK←v2692 */ )); return; }; }; j←v6408 = (j←v6408 + 1); if ((j←v6408 < noName←c19816)) { goto lab←L100015; }; lab←L100012: ; }; SOURCE(2412, 188) { register word i←v6452 = 0; lab←L100019: ; { word t←v6496; SOURCE(2455, 39) t←v6496 = (* ((( (ptr) gf←c22312)+8)/* scratchPixelBuffers←v2944 */ +BCK(i←v6452, 12)) ); SOURCE(2496, 104) if ((t←v6496 == 0)) { SOURCE(2512, 14) slot←v6364 = i←v6452; } else { SOURCE(2526, 74) if ((pixels←v4124 == t←v6496)) { SOURCE(2545, 55) var←c19848 = (* (( (ptr) (* (( (ptr) gf←c22312)+56)/* var←c19720 */ ))+4) ); (void) (XR←MonitorExit((word) (( (bPt) gf←c22312)+16)/* LOCK←v2692 */ )); goto lab←L100020; }; }; }; if ((i←v6452 >= 11)) { goto lab←L100016; }; i←v6452 = (i←v6452 + 1); goto lab←L100019; lab←L100016: ; }; SOURCE(2611, 35) { word limit17; (* (ptr) pixels←v4124 ) = (* (( (ptr) (* ((( (ptr) pixels←v4124)+2)+( limit17 = (* (( (ptr) pixels←v4124)+1) ), BCK(0, limit17) )) ))+1) ); }; SOURCE(2648, 34) (* ((( (ptr) gf←c22312)+8)/* scratchPixelBuffers←v2944 */ +BCK(slot←v6364, 12)) ) = pixels←v4124; SOURCE(2168, 514) (void) (XR←MonitorExit((word) (( (bPt) gf←c22312)+16)/* LOCK←v2692 */ )); return; /* c2c skipped dead code */ lab←L100020: ; SOURCE(2545, 55) (void) XR←RaiseError(var←c19848, 0); } static void DoWithScratchPixels←P300(samplesPerPixel←v4184, length←v4212, formal←c0322) word samplesPerPixel←v4184; word length←v4212; word formal←c0322; { W6 var←c22344; /* declaration of action←v4240 skipped */ /* declaration of scratch←v6540 skipped */ var←c22344.f4/* action←v4240 */ = formal←c0322; /* DoWithScratchPixels: */ SOURCE(2688, 284) SOURCE(2790, 92) var←c22344.f5/* scratch←v6540 */ = (word) ObtainScratchPixels←P180(samplesPerPixel←v4184, length←v4212); SOURCE(2884, 57) { word var←c0314; var←c0314 = (word) &var←c22344; (void) (word) XR←Enable(( ((word) (fPt) NoName←Q3816) ), ( ((word) (fPt) NoName←Q3876) ), var←c0314); }; SOURCE(2943, 29) (void) ReleaseScratchPixels←P240(var←c22344.f5/* scratch←v6540 */ ); } static word NoName←Q3816(formal←c0301) word formal←c0301; { SOURCE(2884, 57) { word pd18; pd18 = (* (( (ptr) formal←c0301)+4) ); (void) ( *( (fPt) ((* (ptr) pd18 ))))((* ((( (ptr) formal←c0301)+5)) ), pd18); }; return(0); } static word NewPixelMap←P360(samplesPerPixel←v4360, box←v4388, maxSample←v4416) word samplesPerPixel←v4360; W4 box←v4388; word maxSample←v4416; { register ptr gf←c22376 = (ptr) &globalframe; word var←c4460; word new←v6584; /* NewPixelMap: */ SOURCE(2978, 473) SOURCE(3084, 49) { word var←c19880; word var←c19912; word var←c19944; var←c19880 = BCK(samplesPerPixel←v4360, 67108863); var←c19912 = ((word) var←c19880 << 2); var←c19944 = XR←NewObject((24 + var←c19912), (* (( (ptr) gf←c22376)+24) )); (* (( (ptr) var←c19944)+5) ) = var←c19880; new←v6584 = var←c19944; }; SOURCE(3135, 279) { register word i←v6628 = 0; register word noName←c19976; noName←c19976 = samplesPerPixel←v4360; if ((i←v6628 >= noName←c19976)) { goto lab←L100024; }; lab←L100027: ; { word bitsPerSample←v6672; SOURCE(3173, 165) { word var←c20008; var←c20008 = (word) ( *( (fPt) ((* (ptr) maxSample←v4416 ))))(i←v6628, maxSample←v4416); { word idx19; bitsPerSample←v6672 = ( idx19 = (word) ( (var←c20008 < 2) ? 1 : ( (var←c20008 < 4) ? 2 : ( (var←c20008 < 16) ? 4 : ( (var←c20008 < 256) ? 8 : ( (var←c20008 <= 65535) ? 16 : 32 ) ) ) ) ) , BCK(idx19, 33) ); }; }; SOURCE(3340, 74) { word var←c20040; { word pd20; pd20 = (* (( (ptr) (* (( (ptr) gf←c22376)+56)/* var←c19720 */ ))+19) ); var←c20040 = (word) ( *( (fPt) ((* (ptr) pd20 ))))(box←v4388, bitsPerSample←v6672, 0, pd20); }; { word limit21; (* ((( (ptr) new←v6584)+6)+( limit21 = (* (( (ptr) new←v6584)+5) ), BCK(i←v6628, limit21) )) ) = var←c20040; }; }; }; i←v6628 = (i←v6628 + 1); if ((i←v6628 < noName←c19976)) { goto lab←L100027; }; lab←L100024: ; }; SOURCE(3425, 13) (* (W4Pt) (( (ptr) new←v6584)+1) ) = box←v4388; SOURCE(3440, 11) return(new←v6584); } static word MakePixelMap←P420(s0←v4520, s1←v4548, s2←v4576, s3←v4604, s4←v4632) word s0←v4520; word s1←v4548; word s2←v4576; word s3←v4604; word s4←v4632; { register ptr gf←c22408 = (ptr) &globalframe; word var←c4676; W5 s←v6716; word n←v6772; word new←v6800; /* MakePixelMap: */ SOURCE(3457, 612) SOURCE(3557, 64) s←v6716.f0 = s0←v4520; s←v6716.f1 = s1←v4548; s←v6716.f2 = s2←v4576; s←v6716.f3 = s3←v4604; s←v6716.f4 = s4←v4632; SOURCE(3716, 16) { word i←v18744; SOURCE(3623, 90) i←v18744 = 0; SOURCE(3666, 47) lab←L100030: ; if ( ( (i←v18744 < 5) ? ((* (( (ptr) &s←v6716)+BCK(i←v18744, 5)) ) != 0) : 0 ) ) { } else { goto lab←L100028; }; SOURCE(3696, 17) i←v18744 = (i←v18744 + 1); goto lab←L100030; lab←L100028: ; SOURCE(3623, 90) n←v6772 = i←v18744; }; SOURCE(3734, 35) { word var←c20136; word var←c20168; word var←c20200; var←c20136 = BCK(n←v6772, 67108863); var←c20168 = ((word) var←c20136 << 2); var←c20200 = XR←NewObject((24 + var←c20168), (* (( (ptr) gf←c22408)+24) )); (* (( (ptr) var←c20200)+5) ) = var←c20136; new←v6800 = var←c20200; }; SOURCE(3771, 99) if ((n←v6772 == 0)) { (* (W4Pt) (( (ptr) new←v6800)+1) ) = (* (W4Pt) (( (ptr) gf←c22408)+52)/* var←c19528 */ ); } else { { W4 var←c20232; word map←v19032; map←v19032 = s←v6716.f0; var←c20232 = (* (W4Pt) map←v19032 ); (* (W4Pt) (( (ptr) new←v6800)+1) ) = var←c20232; }; }; SOURCE(3872, 101) { register word i←v6940 = 0; if ((i←v6940 >= n←v6772)) { goto lab←L100033; }; lab←L100036: ; { word assert←v6984; SOURCE(3896, 62) { word var←c0315; W4 var←c20264; word map←v18984; map←v18984 = (* (( (ptr) &s←v6716)+BCK(i←v6940, 5)) ); var←c20264 = (* (W4Pt) map←v18984 ); var←c0315 = (var←c0315 & 4294967294) | ((word) (1 & (XR←EqualWords(&var←c20264, (( (ptr) new←v6800)+1), 4)))); { word idx22; assert←v6984 = ( idx22 = (word) ( (unsigned) (var←c0315 & 1) - 1), BCK(idx22, 1) ); }; }; SOURCE(3960, 13) { word limit23; (* ((( (ptr) new←v6800)+6)+( limit23 = (* (( (ptr) new←v6800)+5) ), BCK(i←v6940, limit23) )) ) = (* (( (ptr) &s←v6716)+BCK(i←v6940, 5)) ); }; }; i←v6940 = (i←v6940 + 1); if ((i←v6940 < n←v6772)) { goto lab←L100036; }; lab←L100033: ; }; SOURCE(3984, 4) { register word i←v7048; word assert←v7092; i←v7048 = n←v6772; if ((i←v7048 > 4)) { goto lab←L100038; }; lab←L100041: ; SOURCE(4008, 37) { word idx24; assert←v7092 = ( idx24 = (word) ( (unsigned) ((* (( (ptr) &s←v6716)+BCK(i←v7048, 5)) ) == 0) - 1), BCK(idx24, 1) ); }; if ((i←v7048 >= 4)) { goto lab←L100038; }; i←v7048 = (i←v7048 + 1); goto lab←L100041; lab←L100038: ; }; SOURCE(4056, 13) return(new←v6800); } static void GetPixels←P480(self←v4736, initIndex←v4764, delta←v4792, pixels←v4820, start←v4848, count←v4876) word self←v4736; W2 initIndex←v4764; W2 delta←v4792; word pixels←v4820; word start←v4848; word count←v4876; { register ptr gf←c22440 = (ptr) &globalframe; /* GetPixels: */ SOURCE(4073, 307) SOURCE(4262, 118) { register word i←v7156 = 0; register word noName←c20296; noName←c20296 = (* (( (ptr) self←v4736)+5) ); if ((i←v7156 >= noName←c20296)) { goto lab←L100042; }; lab←L100045: ; SOURCE(4305, 75) { word pd25; word limit26; word limit27; pd25 = (* (( (ptr) (* (( (ptr) gf←c22440)+56)/* var←c19720 */ ))+44) ); (void) ( *( (fPt) ((* (ptr) pd25 ))))((* ((( (ptr) self←v4736)+6)+( limit26 = (* (( (ptr) self←v4736)+5) ), BCK(i←v7156, limit26) )) ), initIndex←v4764, delta←v4792, (* ((( (ptr) pixels←v4820)+2)+( limit27 = (* (( (ptr) pixels←v4820)+1) ), BCK(i←v7156, limit27) )) ), start←v4848, count←v4876, pd25); }; i←v7156 = (i←v7156 + 1); if ((i←v7156 < noName←c20296)) { goto lab←L100045; }; lab←L100042: ; }; } static void PutPixels←P540(self←v4936, initIndex←v4964, delta←v4992, pixels←v5020, start←v5048, count←v5076, function←v5104) word self←v4936; W2 initIndex←v4964; W2 delta←v4992; word pixels←v5020; word start←v5048; word count←v5076; word function←v5104; { register ptr gf←c22472 = (ptr) &globalframe; /* PutPixels: */ SOURCE(4395, 378) SOURCE(4645, 128) { register word i←v7200 = 0; register word noName←c20328; noName←c20328 = (* (( (ptr) self←v4936)+5) ); if ((i←v7200 >= noName←c20328)) { goto lab←L100046; }; lab←L100049: ; SOURCE(4688, 85) { word pd28; word limit29; word limit30; pd28 = (* (( (ptr) (* (( (ptr) gf←c22472)+56)/* var←c19720 */ ))+47) ); (void) ( *( (fPt) ((* (ptr) pd28 ))))((* ((( (ptr) self←v4936)+6)+( limit29 = (* (( (ptr) self←v4936)+5) ), BCK(i←v7200, limit29) )) ), initIndex←v4964, delta←v4992, (* ((( (ptr) pixels←v5020)+2)+( limit30 = (* (( (ptr) pixels←v5020)+1) ), BCK(i←v7200, limit30) )) ), start←v5048, count←v5076 , function←v5104, pd28); }; i←v7200 = (i←v7200 + 1); if ((i←v7200 < noName←c20328)) { goto lab←L100049; }; lab←L100046: ; }; } static word ScaledFromRealMod←P600(d←v5164, m←v5192) word d←v5164; word m←v5192; { word var←c5256; word s←v7244 = 0; /* ScaledFromRealMod: */ SOURCE(4826, 495) SOURCE(4933, 365) if ((m←v5192 != 0)) { SOURCE(4947, 358) { word modulus←v7288; SOURCE(4949, 17) { float tf31; modulus←v7288 = ( tf31 = (float)(unsigned)m←v5192, *(word*)&tf31 ); }; SOURCE(4968, 237) { word var←c20392; var←c20392 = d←v5164; { word x32; word x34; word x35; word x36; word x41; word x42; word x43; word x44; if ( ( (( x32 = var←c20392, *(float*)&x32 ) >= ( x34 = (* (ptr) &fc33 ), *(float*)&x34 )) ? (( x35 = var←c20392, *(float*)&x35 ) < ( x36 = modulus←v7288, *(float*)&x36 )) : 0 ) ) { SOURCE(5001, 38) { word x37; word x39; float tf40; s←v7244 = (word) XR←REAL32←Fix(( tf40 = ( /*1*/ x37 = d←v5164, *(float*)&x37 /*1*/ ) * ( /*1*/ x39 = (* (ptr) &fc38 ), *(float*)&x39 /*1*/ ), *(word*)&tf40 )); }; } else { if ( ( (( x41 = var←c20392, *(float*)&x41 ) > - ( x42 = modulus←v7288, *(float*)&x42 )) ? (( x43 = var←c20392, *(float*)&x43 ) < ( x44 = (* (ptr) &fc33 ), *(float*)&x44 )) : 0 ) ) { SOURCE(5061, 51) { word x45; word x46; float tf47; s←v7244 = (((word) m←v5192 << 16) - (word) XR←REAL32←Fix(( /*1*/ tf47 = ( - ( /*1*/ x45 = d←v5164, *(float*)&x45 /*1*/ )) * ( /*1*/ x46 = (* (ptr) &fc38 ), *(float*)&x46 /*1*/ ), *(word*)&tf47 /*1*/ ))); }; } else { SOURCE(5125, 80) { word var←c20424; { word x48; word x49; word x50; word x51; float tf52; word x53; *(float*)&var←c20424 = (( /*1*/ x48 = d←v5164, *(float*)&x48 /*1*/ ) - (( /*1*/ x49 = modulus←v7288, *(float*)&x49 /*1*/ ) * (float)(int)(word) XR←REAL32←Floor(( /*1*/ tf52 = ( /*1*/ x50 = d←v5164, *(float*)&x50 /*1*/ ) / ( /*1*/ x51 = modulus←v7288, *(float*)&x51 /*1*/ ), *(word*)&tf52 /*1*/ )))) * ( /*1*/ x53 = (* (ptr) &fc38 ), *(float*)&x53 /*1*/ ); }; s←v7244 = (word) XR←REAL32←Round(var←c20424); }; }; }; }; }; SOURCE(5207, 33) if (( (int)s←v7244 < (int)0)) { SOURCE(5225, 15) { word idx54; s←v7244 = (s←v7244 & 65535) | (((word) ( idx54 = (word) ( (unsigned) ((unsigned)s←v7244 >> 16) + m←v5192), BCK(idx54, 65536) )) << 16); }; }; SOURCE(5243, 34) if (( (unsigned) ((unsigned)s←v7244 >> 16) >= m←v5192)) { SOURCE(5262, 15) { word idx55; s←v7244 = (s←v7244 & 65535) | (((word) ( idx55 = (word) ( (unsigned) ((unsigned)s←v7244 >> 16) - m←v5192), BCK(idx55, 65536) )) << 16); }; }; SOURCE(5280, 18) if (( (unsigned) ((unsigned)s←v7244 >> 16) >= m←v5192)) { SOURCE(5298, 5) (void) XR←RaiseUnnamedError(); }; }; }; SOURCE(5308, 13) return(s←v7244); } static void Resample1←P660(formal←c0323, source←v5716, m←v5744, interpolate←v5772) word formal←c0323; word source←v5716; word m←v5744; word interpolate←v5772; { W9 var←c22504; /* declaration of dest←v5688 skipped */ /* declaration of var←c20456 skipped */ /* declaration of var←c20488 skipped */ (* (( (ptr) &var←c22504)+4)/* dest←v5688 */ ) = formal←c0323; /* Resample1: */ SOURCE(5835, 391) { word tmpAddr56; tmpAddr56 = (word) (( (ptr) &var←c22504)+5)/* var←c20456 */ ; (* (ptr) tmpAddr56 ) = ( ((word) (fPt) action←P1728) ); (* (( (ptr) tmpAddr56) + 1) ) = 1; }; { word tmpAddr57; tmpAddr57 = (word) (( (ptr) &var←c22504)+7)/* var←c20488 */ ; (* (ptr) tmpAddr57 ) = ( ((word) (fPt) boxes←P1668) ); (* (( (ptr) tmpAddr57) + 1) ) = 1; }; SOURCE(6124, 102) (void) Resample←P720(source←v5716, m←v5744, interpolate←v5772, (word) (( (bPt) &var←c22504)+28)/* var←c20488 */ , (* (W4Pt) ( ( (ptr) (* (( (ptr) &var←c22504)+4)/* dest←v5688 */ ))+1) ), (word) (( (bPt) &var←c22504)+20)/* var←c20456 */ ); } static void boxes←P1668(boxAction←v17380, formal←c22536) word boxAction←v17380; word formal←c22536; { formal←c22536 = (formal←c22536 - 28); /* boxes: */ SOURCE(5918, 45) SOURCE(5944, 19) (void) ( *( (fPt) ((* (ptr) boxAction←v17380 ))))((* (W4Pt) ((( (ptr) (* (( (ptr) formal←c22536)+4) ))+1)) ), boxAction←v17380) ; } static void action←P1728(pixels←v17440, min←v17468, formal←c22600) word pixels←v17440; W2 min←v17468; word formal←c22600; { register ptr gf←c22568 = (ptr) &globalframe; formal←c22600 = (formal←c22600 - 20); /* action: */ SOURCE(5966, 144) SOURCE(5993, 117) { register word j←v7404 = 0; register word noName←c20520; noName←c20520 = (* (( (ptr) pixels←v17440)+1) ); if ((j←v7404 >= noName←c20520)) { goto lab←L100050; }; lab←L100053: ; SOURCE(6038, 72) { W2 var←c20552; var←c20552.f0 = 0; var←c20552.f1 = 1; { word pd58; word limit59; word limit60; pd58 = (* (( (ptr) (* (( (ptr) gf←c22568)+56)/* var←c19720 */ ))+47) ); (void) ( *( (fPt) ((* (ptr) pd58 ))))((* ((( (ptr) (* (( (ptr) formal←c22600)+4) ))+6)+( limit59 = (* (( (ptr) (* (( (ptr) formal←c22600)+4) ))+5) ), BCK(j←v7404, limit59) )) ), min←v17468, var←c20552, (* ((( (ptr) pixels←v17440)+2)+( limit60 = (* (( (ptr) pixels←v17440)+1) ), BCK(j←v7404, limit60) )) ), 0, 2147483647 , 0, pd58); }; }; j←v7404 = (j←v7404 + 1); if ((j←v7404 < noName←c20520)) { goto lab←L100053; }; lab←L100050: ; }; } static void Resample←P720(formal←c0324, m←v5860, interpolate←v5888, boxes←v5916, bounds←v5944, formal←c0325) word formal←c0324; word m←v5860; word interpolate←v5888; word boxes←v5916; W4 bounds←v5944; word formal←c0325; { W22 var←c22632; /* declaration of self←v5832 skipped */ /* declaration of action←v5972 skipped */ register ptr gf←c22664 = (ptr) &globalframe; /* declaration of var←c20584 skipped */ /* declaration of var←c20616 skipped */ (* (( (ptr) &var←c22632)+4)/* self←v5832 */ ) = formal←c0324; (* (( (ptr) &var←c22632)+5)/* action←v5972 */ ) = formal←c0325; /* Resample: */ SOURCE(6232, 11206) { word tmpAddr61; tmpAddr61 = (word) (( (ptr) &var←c22632)+6)/* var←c20584 */ ; (* (ptr) tmpAddr61 ) = ( ((word) (fPt) boxActionInterpolatedSamples←P1944) ); (* (( (ptr) tmpAddr61) + 1) ) = 1; }; { word tmpAddr62; tmpAddr62 = (word) (( (ptr) &var←c22632)+8)/* var←c20616 */ ; (* (ptr) tmpAddr62 ) = ( ((word) (fPt) boxActionPointSamples←P1884) ); (* (( (ptr) tmpAddr62) + 1) ) = 1; }; SOURCE(6377, 11061) { word pd63; pd63 = (* (( (ptr) (* (( (ptr) gf←c22664)+57)/* var←c20648 */ ))+52) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd63 ))))(m←v5860, pd63))) { SOURCE(6422, 11018) { /* declaration of samplesPerPixel←v7448 skipped */ /* declaration of sSize←v7476 skipped */ /* declaration of fSize←v7504 skipped */ /* declaration of ssDelta←v7532 skipped */ /* declaration of fsDelta←v7560 skipped */ /* declaration of sfDelta←v7588 skipped */ /* declaration of ffDelta←v7616 skipped */ /* declaration of d0←v7644 skipped */ /* declaration of s0←v7672 skipped */ /* declaration of f0←v7700 skipped */ /* declaration of pixels←v7728 skipped */ word rs←v7756; word rf←v7784; SOURCE(6424, 43) (* (( (ptr) &var←c22632)+10)/* samplesPerPixel←v7448 */ ) = (* (( (ptr) (* (( (ptr) &var←c22632)+4)/* self←v5832 */ ))+5) ); SOURCE(6469, 44) { word idx64; (* (( (ptr) &var←c22632)+11)/* sSize←v7476 */ ) = ( idx64 = (word) ((* (( (ptr) (* (( (ptr) &var←c22632)+4)/* self←v5832 */ ))+3) ) - (* (( (ptr) (* (( (ptr) &var←c22632)+4) /* self←v5832 */ ))+1) )), BCK(idx64, 32768) ); }; SOURCE(6560, 44) { word idx65; (* (( (ptr) &var←c22632)+12)/* fSize←v7504 */ ) = ( idx65 = (word) ((* (( (ptr) (* (( (ptr) &var←c22632)+4)/* self←v5832 */ ))+4) ) - (* (( (ptr) (* (( (ptr) &var←c22632)+4) /* self←v5832 */ ))+2) )), BCK(idx65, 32768) ); }; SOURCE(6943, 23) (* (W2Pt) (( (ptr) &var←c22632)+17)/* d0←v7644 */ ) = (* (W2Pt) &bounds←v5944 ); SOURCE(7130, 76) { word var←c20680; { word pd66; word idx67; pd66 = (* (( (ptr) (* (( (ptr) gf←c22664)+58)/* var←c20712 */ ))+17) ); var←c20680 = ( idx67 = (word) ( *( (fPt) ((* (ptr) pd66 ))))(bounds←v5944, pd66), SGNCK(idx67) ); }; (* (( (ptr) &var←c22632)+21)/* pixels←v7728 */ ) = (word) ObtainScratchPixels←P180((* (( (ptr) &var←c22632)+10)/* samplesPerPixel←v7448 */ ), var←c20680) ; }; SOURCE(7208, 18) rs←v7756 = (* (ptr) &fc33 ); rf←v7784 = (* (ptr) &fc33 ); SOURCE(16627, 64) { W2 var←c20776; { W2 var←c0150; { W2 var←c20744; var←c20744.f0 = (* (ptr) &fc33 ); var←c20744.f1 = (* (ptr) &fc68 ); { word pd69; pd69 = (* (( (ptr) (* (( (ptr) gf←c22664)+57)/* var←c20648 */ ))+42) ); (void) ( *( (fPt) ((* (ptr) pd69 ))))((word) &var←c0150, m←v5860, var←c20744, pd69); }; }; var←c20776 = var←c0150; }; rf←v7784 = var←c20776.f1; rs←v7756 = var←c20776.f0; }; SOURCE(16693, 41) (* (( (ptr) &var←c22632)+15)/* sfDelta←v7588 */ ) = (word) ScaledFromRealMod←P600(rs←v7756, (* (( (ptr) &var←c22632)+11) /* sSize←v7476 */ )); SOURCE(16736, 41) (* (( (ptr) &var←c22632)+16)/* ffDelta←v7616 */ ) = (word) ScaledFromRealMod←P600(rf←v7784, (* (( (ptr) &var←c22632)+12) /* fSize←v7504 */ )); SOURCE(16779, 64) { W2 var←c20840; { W2 var←c0153; { W2 var←c20808; var←c20808.f0 = (* (ptr) &fc68 ); var←c20808.f1 = (* (ptr) &fc33 ); { word pd70; pd70 = (* (( (ptr) (* (( (ptr) gf←c22664)+57)/* var←c20648 */ ))+42) ); (void) ( *( (fPt) ((* (ptr) pd70 ))))((word) &var←c0153, m←v5860, var←c20808, pd70); }; }; var←c20840 = var←c0153; }; rf←v7784 = var←c20840.f1; rs←v7756 = var←c20840.f0; }; SOURCE(16845, 41) (* (( (ptr) &var←c22632)+13)/* ssDelta←v7532 */ ) = (word) ScaledFromRealMod←P600(rs←v7756, (* (( (ptr) &var←c22632)+11) /* sSize←v7476 */ )); SOURCE(16888, 41) (* (( (ptr) &var←c22632)+14)/* fsDelta←v7560 */ ) = (word) ScaledFromRealMod←P600(rf←v7784, (* (( (ptr) &var←c22632)+12) /* fSize←v7504 */ )); SOURCE(16931, 75) { W2 var←c20904; { W2 var←c0156; { W2 var←c20872; { word x72; *(float*)&var←c20872.f0 = (float)(int)(* (( (ptr) &var←c22632)+17) ) + ( x72 = (* (ptr) &fc71 ), *(float*)&x72 ); }; { word x73; *(float*)&var←c20872.f1 = (float)(int)(* (( (ptr) &var←c22632)+18) ) + ( x73 = (* (ptr) &fc71 ), *(float*)&x73 ); }; { word pd74; pd74 = (* (( (ptr) (* (( (ptr) gf←c22664)+57)/* var←c20648 */ ))+41) ); (void) ( *( (fPt) ((* (ptr) pd74 ))))((word) &var←c0156, m←v5860, var←c20872, pd74); }; }; var←c20904 = var←c0156; }; rf←v7784 = var←c20904.f1; rs←v7756 = var←c20904.f0; }; SOURCE(17008, 157) { word tc75; word tc76; word tc77; word tc78; if ( ( ( (0 != interpolate←v5888) ? (0 != (word) HalfInteger←P780(rs←v7756)) : 0 ) ? (0 != (word) HalfInteger←P780(rf←v7784) ) : 0 ) ) { tc78 = (word) ( (unsigned) (* (( (hPt) &var←c22632)+31) ) == 0); } else { tc78 = (word) 0; }; if (tc78) { tc77 = (word) ( (unsigned) (* (( (hPt) &var←c22632)+33) ) == 0); } else { tc77 = (word) 0; }; if (tc77) { tc76 = (word) ( (unsigned) (* (( (hPt) &var←c22632)+27) ) == 0); } else { tc76 = (word) 0; }; if (tc76) { tc75 = (word) ( (unsigned) (* (( (hPt) &var←c22632)+29) ) == 0); } else { tc75 = (word) 0; }; if (tc75) { SOURCE(17146, 19) interpolate←v5888 = 0; }; }; SOURCE(17170, 47) if ((0 != interpolate←v5888)) { SOURCE(17192, 11) { word x79; word x80; *(float*)&rs←v7756 = ( x79 = rs←v7756, *(float*)&x79 ) - ( x80 = (* (ptr) &fc71 ), *(float*)&x80 ); }; SOURCE(17205, 12) { word x81; word x82; *(float*)&rf←v7784 = ( x81 = rf←v7784, *(float*)&x81 ) - ( x82 = (* (ptr) &fc71 ), *(float*)&x82 ); }; }; SOURCE(17220, 51) { word x83; float tf84; (* (( (ptr) &var←c22632)+19)/* s0←v7672 */ ) = (word) ScaledFromRealMod←P600(( tf84 = ( x83 = rs←v7756, *(float*)&x83 ) - (float)(int)(* (( (ptr) (* (( (ptr) &var←c22632)+4)/* self←v5832 */ ))+1) ), *(word*)&tf84 ), (* (( (ptr) &var←c22632)+11)/* sSize←v7476 */ )); }; SOURCE(17273, 51) { word x85; float tf86; (* (( (ptr) &var←c22632)+20)/* f0←v7700 */ ) = (word) ScaledFromRealMod←P600(( tf86 = ( x85 = rf←v7784, *(float*)&x85 ) - (float)(int)(* (( (ptr) (* (( (ptr) &var←c22632)+4)/* self←v5832 */ ))+2) ), *(word*)&tf86 ), (* (( (ptr) &var←c22632)+12)/* fSize←v7504 */ )); }; SOURCE(17326, 82) if ((0 != interpolate←v5888)) { (void) ( *( (fPt) ((* (ptr) boxes←v5916 ))))((word) ((( (bPt) &var←c22632)+24)/* var←c20584 */ ), boxes←v5916); } else { (void) ( *( (fPt) ((* (ptr) boxes←v5916 ))))((word) ((( (bPt) &var←c22632)+32)/* var←c20616 */ ), boxes←v5916); }; SOURCE(17410, 28) (void) ReleaseScratchPixels←P240((* ((( (ptr) &var←c22632)+21)/* pixels←v7728 */ ) )); }; }; }; } static void boxActionPointSamples←P1884(box←v17528, formal←c22728) W4 box←v17528; word formal←c22728; { register ptr gf←c22696 = (ptr) &globalframe; word count←v7884; word smax←v7912; word fmax←v7940; word ssup←v7968; word fsup←v7996; word ssdn←v8024; word fsdn←v8052; word sfup←v8080; word ffup←v8108; word sfdn←v8136; word ffdn←v8164; word d1s←v8192; word d1f←v8220; word s1←v8248; word f1←v8276; formal←c22728 = (formal←c22728 - 32); /* boxActionPointSamples: */ SOURCE(7228, 38) SOURCE(7268, 26) { word pd87; word idx88; pd87 = (* (( (ptr) (* (( (ptr) gf←c22696)+58)/* var←c20712 */ ))+17) ); count←v7884 = ( idx88 = (word) ( *( (fPt) ((* (ptr) pd87 ))))(box←v17528, pd87), SGNCK(idx88) ); }; SOURCE(7296, 50) smax←v7912 = ((* (( (ptr) formal←c22728)+11) ) << 16); SOURCE(7348, 50) fmax←v7940 = ((* (( (ptr) formal←c22728)+12) ) << 16); SOURCE(7400, 33) ssup←v7968 = (* (( (ptr) formal←c22728)+13) ); SOURCE(7435, 33) fsup←v7996 = (* (( (ptr) formal←c22728)+14) ); SOURCE(7470, 47) ssdn←v8024 = (smax←v7912 - ssup←v7968); SOURCE(7519, 47) fsdn←v8052 = (fmax←v7940 - fsup←v7996); SOURCE(7568, 33) sfup←v8080 = (* (( (ptr) formal←c22728)+15) ); SOURCE(7603, 33) ffup←v8108 = (* (( (ptr) formal←c22728)+16) ); SOURCE(7638, 47) sfdn←v8136 = (smax←v7912 - sfup←v8080); SOURCE(7687, 47) ffdn←v8164 = (fmax←v7940 - ffup←v8108); SOURCE(7801, 26) s1←v8248 = (* (( (ptr) formal←c22728)+19) ); SOURCE(7869, 26) f1←v8276 = (* (( (ptr) formal←c22728)+20) ); SOURCE(7937, 15) { W2 var←c21128; var←c21128 = (* (W2Pt) (( (ptr) formal←c22728)+17) ); d1f←v8220 = var←c21128.f1; d1s←v8192 = var←c21128.f0; }; SOURCE(7954, 178) lab←L100056: ; if (( (int)d1s←v8192 < (int)box←v17528.f0)) { } else { goto lab←L100054; }; SOURCE(7977, 11) d1s←v8192 = (d1s←v8192 + 1); SOURCE(7990, 70) if ((s1←v8248 < ssdn←v8024)) { SOURCE(8012, 27) s1←v8248 = (s1←v8248 + ssup←v7968); } else { SOURCE(8039, 21) s1←v8248 = (s1←v8248 - ssdn←v8024); }; SOURCE(8062, 70) if ((f1←v8276 < fsdn←v8052)) { SOURCE(8084, 27) f1←v8276 = (f1←v8276 + fsup←v7996); } else { SOURCE(8111, 21) f1←v8276 = (f1←v8276 - fsdn←v8052); }; goto lab←L100056; lab←L100054: ; SOURCE(8143, 180) lab←L100059: ; if (( (int)d1s←v8192 > (int)box←v17528.f0)) { } else { goto lab←L100057; }; SOURCE(8166, 11) d1s←v8192 = (d1s←v8192 - 1); SOURCE(8179, 71) if ((s1←v8248 >= ssup←v7968)) { SOURCE(8202, 27) s1←v8248 = (s1←v8248 - ssup←v7968); } else { SOURCE(8229, 21) s1←v8248 = (s1←v8248 + ssdn←v8024); }; SOURCE(8252, 71) if ((f1←v8276 >= fsup←v7996)) { SOURCE(8275, 27) f1←v8276 = (f1←v8276 - fsup←v7996); } else { SOURCE(8302, 21) f1←v8276 = (f1←v8276 + fsdn←v8052); }; goto lab←L100059; lab←L100057: ; SOURCE(8334, 15) (* (( (ptr) formal←c22728)+17) ) = d1s←v8192; (* (( (ptr) formal←c22728)+18) ) = d1f←v8220; SOURCE(8351, 13) (* (( (ptr) formal←c22728)+19) ) = s1←v8248; SOURCE(8366, 13) (* (( (ptr) formal←c22728)+20) ) = f1←v8276; SOURCE(8381, 178) lab←L100062: ; if (( (int)d1f←v8220 < (int)box←v17528.f1)) { } else { goto lab←L100060; }; SOURCE(8404, 11) d1f←v8220 = (d1f←v8220 + 1); SOURCE(8417, 70) if ((s1←v8248 < sfdn←v8136)) { SOURCE(8439, 27) s1←v8248 = (s1←v8248 + sfup←v8080); } else { SOURCE(8466, 21) s1←v8248 = (s1←v8248 - sfdn←v8136); }; SOURCE(8489, 70) if ((f1←v8276 < ffdn←v8164)) { SOURCE(8511, 27) f1←v8276 = (f1←v8276 + ffup←v8108); } else { SOURCE(8538, 21) f1←v8276 = (f1←v8276 - ffdn←v8164); }; goto lab←L100062; lab←L100060: ; SOURCE(8570, 180) lab←L100065: ; if (( (int)d1f←v8220 > (int)box←v17528.f1)) { } else { goto lab←L100063; }; SOURCE(8593, 11) d1f←v8220 = (d1f←v8220 - 1); SOURCE(8606, 71) if ((s1←v8248 >= sfup←v8080)) { SOURCE(8629, 27) s1←v8248 = (s1←v8248 - sfup←v8080); } else { SOURCE(8656, 21) s1←v8248 = (s1←v8248 + sfdn←v8136); }; SOURCE(8679, 71) if ((f1←v8276 >= ffup←v8108)) { SOURCE(8702, 27) f1←v8276 = (f1←v8276 - ffup←v8108); } else { SOURCE(8729, 21) f1←v8276 = (f1←v8276 + ffdn←v8164); }; goto lab←L100065; lab←L100063: ; SOURCE(8761, 21) (* (ptr) (* (( (ptr) formal←c22728)+21) ) ) = count←v7884; SOURCE(8784, 3435) lab←L100068: ; SOURCE(8817, 3164) { register word i←v8320 = 0; if ((i←v8320 >= (* (( (ptr) formal←c22728)+10) ))) { goto lab←L100069; }; lab←L100072: ; { word map←v8364; word rasterMap←v8392; word easyLineCalc←v8420; word samples←v8448; word s←v8476; word f←v8504; SOURCE(8855, 37) { word limit89; map←v8364 = (* ((( (ptr) (* (( (ptr) formal←c22728)+4) ))+6)+( limit89 = (* (( (ptr) (* (( (ptr) formal←c22728)+4) ))+5) ), BCK(i←v8320, limit89) )) ); }; SOURCE(8894, 63) { word var←c21160; var←c21160 = map←v8364; if ((var←c21160 == 0)) { goto lab←L100073; }; if (((* (( (ptr) var←c21160)+6) ) == 0)) { rasterMap←v8392 = var←c21160; } else { lab←L100073: ; rasterMap←v8392 = 0; }; }; SOURCE(9010, 107) easyLineCalc←v8420 = (unsigned) ( ( (rasterMap←v8392 != 0) ? ((* (( (ptr) rasterMap←v8392)+9) ) == 0) : 0 ) ? (((* (( (ptr) rasterMap←v8392)+7) ) & 037) == 0) : 0 ) ; SOURCE(9119, 46) { word limit90; samples←v8448 = (* ((( (ptr) (* (( (ptr) formal←c22728)+21) ))+2)+( limit90 = (* (( (ptr) (* (( (ptr) formal←c22728)+21) ))+1) ), BCK(i←v8320, limit90) )) ); }; SOURCE(9167, 25) s←v8476 = s1←v8248; SOURCE(9194, 25) f←v8504 = f1←v8276; if ( ( ( (int)(* (( (ptr) formal←c22728)+15) ) == (int)0) ? ((* (( (ptr) formal←c22728)+16) ) == 65536) : 0 ) ) { SOURCE(9291, 537) { word count1←v8592; word count2←v8620; word count3←v8648; SOURCE(9293, 37) { word x91; count1←v8592 = (x91 = ((* (( (ptr) formal←c22728)+12) ) - (unsigned) ((unsigned)f←v8504 >> 16)), MIN((int)(word), count←v7884, x91)); }; SOURCE(9332, 38) { word x92; count2←v8620 = (x92 = (unsigned) ((unsigned)f←v8504 >> 16), MIN((int)(word), (count←v7884 - count1←v8592), x92)); }; SOURCE(9372, 33) count3←v8648 = ((count←v7884 - count1←v8592) - count2←v8620); SOURCE(9407, 136) { W2 var←c21224; W2 var←c21256; var←c21224.f0 = ( (unsigned) ((unsigned)s←v8476 >> 16) + (* (( (ptr) (* (( (ptr) formal←c22728)+4) ))+1) )); var←c21224.f1 = ( (unsigned) ((unsigned)f←v8504 >> 16) + (* (( (ptr) (* (( (ptr) formal←c22728)+4) ))+2) )); var←c21256.f0 = 0; var←c21256.f1 = 1; { word pd93; pd93 = (* (( (ptr) (* (( (ptr) gf←c22696)+56)/* var←c19720 */ ))+44) ); (void) ( *( (fPt) ((* (ptr) pd93 ))))(map←v8364, var←c21224, var←c21256, samples←v8448, 0, count1←v8592, pd93); }; }; SOURCE(9545, 155) if ((count2←v8620 != 0)) { SOURCE(9564, 136) { W2 var←c21288; W2 var←c21320; var←c21288.f0 = ( (unsigned) ((unsigned)s←v8476 >> 16) + (* (( (ptr) (* (( (ptr) formal←c22728)+4) ))+1) )); var←c21288.f1 = (* (( (ptr) (* (( (ptr) formal←c22728)+4) ))+2) ); var←c21320.f0 = 0; var←c21320.f1 = 1; { word pd94; pd94 = (* (( (ptr) (* (( (ptr) gf←c22696)+56)/* var←c19720 */ ))+44) ); (void) ( *( (fPt) ((* (ptr) pd94 ))))(map←v8364, var←c21288, var←c21320, samples←v8448, count1←v8592, count2←v8620, pd94) ; }; }; }; SOURCE(9702, 124) if ((count3←v8648 != 0)) { SOURCE(9721, 105) { word pd95; pd95 = (* (( (ptr) (* (( (ptr) gf←c22696)+56)/* var←c19720 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd95 ))))(samples←v8448, samples←v8448, SGNCK((count1←v8592 + count2←v8620)), 0, count3←v8648, pd95) ; }; }; }; } else { if ( ( (0 != easyLineCalc←v8420) ? ((* (( (ptr) rasterMap←v8392)+5) ) == 1) : 0 ) ) { SOURCE(9877, 497) { word base←v8692; word upl←v8720; word result←v8748; word lastSHi←v8776; word line←v8804; SOURCE(9879, 46) base←v8692 = (* (( (ptr) rasterMap←v8392)+8) ); SOURCE(9927, 44) upl←v8720 = ((* (( (ptr) rasterMap←v8392)+7) ) >> 3); SOURCE(9973, 65) { word check←v6104; check←v6104 = ((* (( (ptr) samples←v8448)+1) ) - count←v7884); SOURCE(1099, 81) result←v8748 = (samples←v8448 + 8); }; SOURCE(10040, 24) lastSHi←v8776 = (unsigned) ((unsigned)s←v8476 >> 16); SOURCE(10066, 33) line←v8804 = (base←v8692 + (lastSHi←v8776 * upl←v8720)); SOURCE(10101, 262) { register word k←v8848 = 0; if ((k←v8848 >= count←v7884)) { goto lab←L100075; }; lab←L100078: ; SOURCE(10129, 63) if ((lastSHi←v8776 != (unsigned) ((unsigned)s←v8476 >> 16))) { SOURCE(10153, 14) lastSHi←v8776 = (unsigned) ((unsigned)s←v8476 >> 16); SOURCE(10169, 23) line←v8804 = (base←v8692 + (lastSHi←v8776 * upl←v8720)); }; SOURCE(10203, 25) SOURCE(10205, 23) { word ix96; (* (( (ptr) result←v8748)+k←v8848) ) = (unsigned) ( ix96 = ((unsigned)f←v8504 >> 16), ((* (ptr) (( (ptr) line←v8804) + ((word) ix96 >> 5)) ) >> (31 - ((word) (ix96 & 037)))) & 1 ); }; SOURCE(10231, 65) if ((s←v8476 < sfdn←v8136)) { SOURCE(10252, 25) s←v8476 = (s←v8476 + sfup←v8080); } else { SOURCE(10277, 19) s←v8476 = (s←v8476 - sfdn←v8136); }; SOURCE(10298, 65) if ((f←v8504 < ffdn←v8164)) { SOURCE(10319, 25) f←v8504 = (f←v8504 + ffup←v8108); } else { SOURCE(10344, 19) f←v8504 = (f←v8504 - ffdn←v8164); }; k←v8848 = (k←v8848 + 1); if ((k←v8848 < count←v7884)) { goto lab←L100078; }; lab←L100075: ; }; }; } else { if ( ( (0 != easyLineCalc←v8420) ? ((* (( (ptr) rasterMap←v8392)+5) ) == 8) : 0 ) ) { SOURCE(10423, 713) { word base←v8892; word upl←v8920; word result←v8948; SOURCE(10425, 46) base←v8892 = (* (( (ptr) rasterMap←v8392)+8) ); SOURCE(10473, 44) upl←v8920 = ((* (( (ptr) rasterMap←v8392)+7) ) >> 3); SOURCE(10519, 65) { word check←v18684; check←v18684 = ((* (( (ptr) samples←v8448)+1) ) - count←v7884); SOURCE(1099, 81) result←v8948 = (samples←v8448 + 8); }; SOURCE(10586, 536) if ((sfup←v8080 == 0)) { SOURCE(10604, 180) { word line←v8992; SOURCE(10606, 36) line←v8992 = (base←v8892 + ( (unsigned) ((unsigned)s←v8476 >> 16) * upl←v8920)); SOURCE(10644, 129) { /*1*/ register word k←v9036 = 0; /*1*/ if ((k←v9036 >= count←v7884)) { /*1*/ goto lab←L100080; /*1*/ }; /*1*/ lab←L100083: ; SOURCE(10680, 25) SOURCE(10682, 23) /*1*/ (* (( (ptr) result←v8948)+k←v9036) ) = (unsigned) (word) (* (( (bPt) line←v8992)+((unsigned)f←v8504 >> 16)) ); SOURCE(10708, 65) /*1*/ if ((f←v8504 < ffdn←v8164)) { SOURCE(10729, 25) /*1*/ f←v8504 = (f←v8504 + ffup←v8108); /*1*/ } /*1*/ else { SOURCE(10754, 19) /*1*/ f←v8504 = (f←v8504 - ffdn←v8164); /*1*/ }; /*1*/ k←v9036 = (k←v9036 + 1); /*1*/ if ((k←v9036 < count←v7884)) { /*1*/ goto lab←L100083; /*1*/ }; /*1*/ lab←L100080: ; /*1*/ }; }; } else { SOURCE(10791, 342) { word lastSHi←v9080; word line←v9108; SOURCE(10793, 24) lastSHi←v9080 = (unsigned) ((unsigned)s←v8476 >> 16); SOURCE(10819, 39) line←v9108 = (base←v8892 + (lastSHi←v9080 * upl←v8920)); SOURCE(10860, 262) { /*1*/ register word k←v9152 = 0; /*1*/ if ((k←v9152 >= count←v7884)) { /*1*/ goto lab←L100084; /*1*/ }; /*1*/ lab←L100087: ; SOURCE(10888, 63) /*1*/ if ((lastSHi←v9080 != (unsigned) ((unsigned)s←v8476 >> 16))) { SOURCE(10912, 14) /*1*/ lastSHi←v9080 = (unsigned) ((unsigned)s←v8476 >> 16); SOURCE(10928, 23) /*1*/ line←v9108 = (base←v8892 + (lastSHi←v9080 * upl←v8920)); /*1*/ }; SOURCE(10962, 25) SOURCE(10964, 23) /*1*/ (* (( (ptr) result←v8948)+k←v9152) ) = (unsigned) (word) (* (( (bPt) line←v9108)+((unsigned)f←v8504 >> 16)) ); SOURCE(10990, 65) /*1*/ if ((s←v8476 < sfdn←v8136)) { SOURCE(11011, 25) /*1*/ s←v8476 = (s←v8476 + sfup←v8080); /*1*/ } /*1*/ else { SOURCE(11036, 19) /*1*/ s←v8476 = (s←v8476 - sfdn←v8136); /*1*/ }; SOURCE(11057, 65) /*1*/ if ((f←v8504 < ffdn←v8164)) { SOURCE(11078, 25) /*1*/ f←v8504 = (f←v8504 + ffup←v8108); /*1*/ } /*1*/ else { SOURCE(11103, 19) /*1*/ f←v8504 = (f←v8504 - ffdn←v8164); /*1*/ }; /*1*/ k←v9152 = (k←v9152 + 1); /*1*/ if ((k←v9152 < count←v7884)) { /*1*/ goto lab←L100087; /*1*/ }; /*1*/ lab←L100084: ; /*1*/ }; }; }; }; } else { if ( ( (0 != easyLineCalc←v8420) ? ((* (( (ptr) rasterMap←v8392)+5) ) == 16) : 0 ) ) { SOURCE(11186, 505) { word base←v9196; word upl←v9224; word result←v9252; word lastSHi←v9280; word line←v9308; SOURCE(11188, 47) base←v9196 = (* (( (ptr) rasterMap←v8392)+8) ); SOURCE(11237, 44) upl←v9224 = ((* (( (ptr) rasterMap←v8392)+7) ) >> 3); SOURCE(11283, 65) { word check←v18640; check←v18640 = ((* (( (ptr) samples←v8448)+1) ) - count←v7884); SOURCE(1099, 81) result←v9252 = (samples←v8448 + 8); }; SOURCE(11350, 24) lastSHi←v9280 = (unsigned) ((unsigned)s←v8476 >> 16); SOURCE(11376, 40) line←v9308 = (base←v9196 + (lastSHi←v9280 * upl←v9224)); SOURCE(11418, 262) { register word k←v9352 = 0; if ((k←v9352 >= count←v7884)) { /*1*/ goto lab←L100089; /*1*/ }; lab←L100092: ; SOURCE(11446, 63) if ((lastSHi←v9280 != (unsigned) ((unsigned)s←v8476 >> 16))) { SOURCE(11470, 14) /*1*/ lastSHi←v9280 = (unsigned) ((unsigned)s←v8476 >> 16); SOURCE(11486, 23) /*1*/ line←v9308 = (base←v9196 + (lastSHi←v9280 * upl←v9224)); /*1*/ }; SOURCE(11520, 25) SOURCE(11522, 23) (* (( (ptr) result←v9252)+k←v9352) ) = (unsigned) (word) (* (( (hPt) line←v9308)+((unsigned)f←v8504 >> 16)) ); SOURCE(11548, 65) if ((s←v8476 < sfdn←v8136)) { SOURCE(11569, 25) /*1*/ s←v8476 = (s←v8476 + sfup←v8080); /*1*/ } else { SOURCE(11594, 19) /*1*/ s←v8476 = (s←v8476 - sfdn←v8136); /*1*/ }; SOURCE(11615, 65) if ((f←v8504 < ffdn←v8164)) { SOURCE(11636, 25) /*1*/ f←v8504 = (f←v8504 + ffup←v8108); /*1*/ } else { SOURCE(11661, 19) /*1*/ f←v8504 = (f←v8504 - ffdn←v8164); /*1*/ }; k←v9352 = (k←v9352 + 1); if ((k←v9352 < count←v7884)) { /*1*/ goto lab←L100092; /*1*/ }; lab←L100089: ; }; }; } else { SOURCE(11735, 246) { register word k←v9396 = 0; if ((k←v9396 >= count←v7884)) { goto lab←L100093; }; lab←L100096: ; SOURCE(11763, 84) { word var←c21448; { /*1*/ W2 var←c21480; /*1*/ var←c21480.f0 = ( (unsigned) ((unsigned)s←v8476 >> 16) + (* (( (ptr) (* (( (ptr) formal←c22728)+4) ))+1) )); /*1*/ var←c21480.f1 = ( (unsigned) ((unsigned)f←v8504 >> 16) + (* (( (ptr) (* (( (ptr) formal←c22728)+4) ))+2) )); /*1*/ { /*1*/ word pd97; /*1*/ pd97 = (* (( (ptr) (* (( (ptr) gf←c22696)+56)/* var←c19720 */ ))+42) ); /*1*/ var←c21448 = (word) ( *( (fPt) ((* (ptr) pd97 ))))(map←v8364, var←c21480, pd97); /*1*/ }; /*1*/ }; { /*1*/ word limit98; /*1*/ (* ((( (ptr) samples←v8448)+2)+( /*1*/ limit98 = (* (( (ptr) samples←v8448)+1) ), /*1*/ BCK(k←v9396, limit98) /*1*/ )) ) = var←c21448; /*1*/ }; }; SOURCE(11849, 65) if ((s←v8476 < sfdn←v8136)) { SOURCE(11870, 25) s←v8476 = (s←v8476 + sfup←v8080); } else { SOURCE(11895, 19) s←v8476 = (s←v8476 - sfdn←v8136); }; SOURCE(11916, 65) if ((f←v8504 < ffdn←v8164)) { SOURCE(11937, 25) f←v8504 = (f←v8504 + ffup←v8108); } else { SOURCE(11962, 19) f←v8504 = (f←v8504 - ffdn←v8164); }; k←v9396 = (k←v9396 + 1); if ((k←v9396 < count←v7884)) { goto lab←L100096; }; lab←L100093: ; }; }; }; }; }; }; i←v8320 = (i←v8320 + 1); if ((i←v8320 < (* (( (ptr) formal←c22728)+10) ))) { goto lab←L100072; }; lab←L100069: ; }; SOURCE(12004, 26) { W2 var←c21512; var←c21512.f0 = d1s←v8192; var←c21512.f1 = d1f←v8220; { word pd99; pd99 = (* (( (ptr) formal←c22728)+5) ); (void) ( *( (fPt) ((* (ptr) pd99 ))))((* (( (ptr) formal←c22728)+21) ), var←c21512, pd99); }; }; SOURCE(12032, 11) d1s←v8192 = (d1s←v8192 + 1); SOURCE(12045, 26) if (( (int)d1s←v8192 >= (int)box←v17528.f2)) { SOURCE(12071, 4) goto lab←L100067; }; SOURCE(12077, 70) if ((s1←v8248 < ssdn←v8024)) { SOURCE(12099, 27) s1←v8248 = (s1←v8248 + ssup←v7968); } else { SOURCE(12126, 21) s1←v8248 = (s1←v8248 - ssdn←v8024); }; SOURCE(12149, 70) if ((f1←v8276 < fsdn←v8052)) { SOURCE(12171, 27) f1←v8276 = (f1←v8276 + fsup←v7996); } else { SOURCE(12198, 21) f1←v8276 = (f1←v8276 - fsdn←v8052); }; goto lab←L100068; lab←L100067: ; } static void boxActionInterpolatedSamples←P1944(box←v17588, formal←c22792) W4 box←v17588; word formal←c22792; { register ptr gf←c22760 = (ptr) &globalframe; word count←v9440; word smax←v9468; word fmax←v9496; word ssup←v9524; word fsup←v9552; word ssdn←v9580; word fsdn←v9608; word sfup←v9636; word ffup←v9664; word sfdn←v9692; word ffdn←v9720; word isdn←v9804; word ifdn←v9832; word d1s←v9860; word d1f←v9888; word s1←v9916; word f1←v9944; formal←c22792 = (formal←c22792 - 24); /* boxActionInterpolatedSamples: */ SOURCE(12233, 45) SOURCE(12280, 26) { word pd100; word idx101; pd100 = (* (( (ptr) (* (( (ptr) gf←c22760)+58)/* var←c20712 */ ))+17) ); count←v9440 = ( idx101 = (word) ( *( (fPt) ((* (ptr) pd100 ))))(box←v17588, pd100), SGNCK(idx101) ); }; SOURCE(12308, 50) smax←v9468 = ((* (( (ptr) formal←c22792)+11) ) << 16); SOURCE(12360, 50) fmax←v9496 = ((* (( (ptr) formal←c22792)+12) ) << 16); SOURCE(12412, 33) ssup←v9524 = (* (( (ptr) formal←c22792)+13) ); SOURCE(12447, 33) fsup←v9552 = (* (( (ptr) formal←c22792)+14) ); SOURCE(12482, 47) ssdn←v9580 = (smax←v9468 - ssup←v9524); SOURCE(12531, 47) fsdn←v9608 = (fmax←v9496 - fsup←v9552); SOURCE(12580, 33) sfup←v9636 = (* (( (ptr) formal←c22792)+15) ); SOURCE(12615, 33) ffup←v9664 = (* (( (ptr) formal←c22792)+16) ); SOURCE(12650, 47) sfdn←v9692 = (smax←v9468 - sfup←v9636); SOURCE(12699, 47) ffdn←v9720 = (fmax←v9496 - ffup←v9664); SOURCE(12788, 29) { word idx102; isdn←v9804 = ( idx102 = (word) ( (unsigned) ((unsigned)smax←v9468 >> 16) - 1), SGNCK(idx102) ); }; SOURCE(12819, 29) { word idx103; ifdn←v9832 = ( idx103 = (word) ( (unsigned) ((unsigned)fmax←v9496 >> 16) - 1), SGNCK(idx103) ); }; SOURCE(12915, 26) s1←v9916 = (* (( (ptr) formal←c22792)+19) ); SOURCE(12983, 26) f1←v9944 = (* (( (ptr) formal←c22792)+20) ); SOURCE(13051, 15) { W2 var←c21736; var←c21736 = (* (W2Pt) (( (ptr) formal←c22792)+17) ); d1f←v9888 = var←c21736.f1; d1s←v9860 = var←c21736.f0; }; SOURCE(13068, 178) lab←L100099: ; if (( (int)d1s←v9860 < (int)box←v17588.f0)) { } else { goto lab←L100097; }; SOURCE(13091, 11) d1s←v9860 = (d1s←v9860 + 1); SOURCE(13104, 70) if ((s1←v9916 < ssdn←v9580)) { SOURCE(13126, 27) s1←v9916 = (s1←v9916 + ssup←v9524); } else { SOURCE(13153, 21) s1←v9916 = (s1←v9916 - ssdn←v9580); }; SOURCE(13176, 70) if ((f1←v9944 < fsdn←v9608)) { SOURCE(13198, 27) f1←v9944 = (f1←v9944 + fsup←v9552); } else { SOURCE(13225, 21) f1←v9944 = (f1←v9944 - fsdn←v9608); }; goto lab←L100099; lab←L100097: ; SOURCE(13257, 180) lab←L100102: ; if (( (int)d1s←v9860 > (int)box←v17588.f0)) { } else { goto lab←L100100; }; SOURCE(13280, 11) d1s←v9860 = (d1s←v9860 - 1); SOURCE(13293, 71) if ((s1←v9916 >= ssup←v9524)) { SOURCE(13316, 27) s1←v9916 = (s1←v9916 - ssup←v9524); } else { SOURCE(13343, 21) s1←v9916 = (s1←v9916 + ssdn←v9580); }; SOURCE(13366, 71) if ((f1←v9944 >= fsup←v9552)) { SOURCE(13389, 27) f1←v9944 = (f1←v9944 - fsup←v9552); } else { SOURCE(13416, 21) f1←v9944 = (f1←v9944 + fsdn←v9608); }; goto lab←L100102; lab←L100100: ; SOURCE(13448, 15) (* (( (ptr) formal←c22792)+17) ) = d1s←v9860; (* (( (ptr) formal←c22792)+18) ) = d1f←v9888; SOURCE(13465, 13) (* (( (ptr) formal←c22792)+19) ) = s1←v9916; SOURCE(13480, 13) (* (( (ptr) formal←c22792)+20) ) = f1←v9944; SOURCE(13495, 178) lab←L100105: ; if (( (int)d1f←v9888 < (int)box←v17588.f1)) { } else { goto lab←L100103; }; SOURCE(13518, 11) d1f←v9888 = (d1f←v9888 + 1); SOURCE(13531, 70) if ((s1←v9916 < sfdn←v9692)) { SOURCE(13553, 27) s1←v9916 = (s1←v9916 + sfup←v9636); } else { SOURCE(13580, 21) s1←v9916 = (s1←v9916 - sfdn←v9692); }; SOURCE(13603, 70) if ((f1←v9944 < ffdn←v9720)) { SOURCE(13625, 27) f1←v9944 = (f1←v9944 + ffup←v9664); } else { SOURCE(13652, 21) f1←v9944 = (f1←v9944 - ffdn←v9720); }; goto lab←L100105; lab←L100103: ; SOURCE(13684, 180) lab←L100108: ; if (( (int)d1f←v9888 > (int)box←v17588.f1)) { } else { goto lab←L100106; }; SOURCE(13707, 11) d1f←v9888 = (d1f←v9888 - 1); SOURCE(13720, 71) if ((s1←v9916 >= sfup←v9636)) { SOURCE(13743, 27) s1←v9916 = (s1←v9916 - sfup←v9636); } else { SOURCE(13770, 21) s1←v9916 = (s1←v9916 + sfdn←v9692); }; SOURCE(13793, 71) if ((f1←v9944 >= ffup←v9664)) { SOURCE(13816, 27) f1←v9944 = (f1←v9944 - ffup←v9664); } else { SOURCE(13843, 21) f1←v9944 = (f1←v9944 + ffdn←v9720); }; goto lab←L100108; lab←L100106: ; SOURCE(13875, 21) (* (ptr) (* (( (ptr) formal←c22792)+21) ) ) = count←v9440; SOURCE(13898, 2715) lab←L100111: ; SOURCE(13931, 2444) { register word i←v9988 = 0; if ((i←v9988 >= (* (( (ptr) formal←c22792)+10) ))) { goto lab←L100112; }; lab←L100115: ; { word map←v10032; word rasterMap←v10060; word samples←v10088; word s←v10116; word f←v10144; SOURCE(13969, 37) { word limit104; map←v10032 = (* ((( (ptr) (* (( (ptr) formal←c22792)+4) ))+6)+( limit104 = (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+5) ), BCK(i←v9988, limit104) )) ); }; SOURCE(14008, 63) { word var←c21768; var←c21768 = map←v10032; if ((var←c21768 == 0)) { goto lab←L100116; }; if (((* (( (ptr) var←c21768)+6) ) == 0)) { rasterMap←v10060 = var←c21768; } else { lab←L100116: ; rasterMap←v10060 = 0; }; }; SOURCE(14124, 46) { word limit105; samples←v10088 = (* ((( (ptr) (* (( (ptr) formal←c22792)+21) ))+2)+( limit105 = (* (( (ptr) (* (( (ptr) formal←c22792)+21) ))+1) ), BCK(i←v9988, limit105) )) ); }; SOURCE(14172, 25) s←v10116 = s1←v9916; SOURCE(14199, 25) f←v10144 = f1←v9944; SOURCE(14226, 2149) if ( ( ( ( (rasterMap←v10060 != 0) ? ((* (( (ptr) rasterMap←v10060)+9) ) == 0) : 0 ) ? (((* (( (ptr) rasterMap←v10060)+7) ) & 037) == 0) : 0 ) ? ((* (( (ptr) rasterMap←v10060)+5) ) == 8) : 0 ) ) { SOURCE(14349, 1034) { word base←v10232; word unitsPerLine←v10260; word result←v10288; SOURCE(14351, 46) base←v10232 = (* (( (ptr) rasterMap←v10060)+8) ); SOURCE(14399, 53) unitsPerLine←v10260 = ((* (( (ptr) rasterMap←v10060)+7) ) >> 3); SOURCE(14454, 78) { word check←v18596; check←v18596 = ((* (( (ptr) samples←v10088)+1) ) - count←v9440); SOURCE(1099, 81) result←v10288 = (samples←v10088 + 8); }; SOURCE(14534, 838) { register word k←v10344 = 0; if ((k←v10344 >= count←v9440)) { goto lab←L100118; }; lab←L100121: ; { word is0←v10388; word is1←v10416; word if0←v10444; word if1←v10472; word w11←v10500; word w10←v10528; word w01←v10556; word w00←v10584; word line0←v10612; word line1←v10640; SOURCE(14562, 20) is0←v10388 = (unsigned) ((unsigned)s←v10116 >> 16); SOURCE(14584, 55) is1←v10416 = ( (is0←v10388 < isdn←v9804) ? (is0←v10388 + 1) : (is0←v10388 - isdn←v9804) ) ; SOURCE(14641, 20) if0←v10444 = (unsigned) ((unsigned)f←v10144 >> 16); SOURCE(14663, 55) if1←v10472 = ( (if0←v10444 < ifdn←v9832) ? (if0←v10444 + 1) : (if0←v10444 - ifdn←v9832) ) ; SOURCE(14720, 63) { word n←v18936; n←v18936 = (( (unsigned) ( (((unsigned)s←v10116 << 16) >> 16) ) * (unsigned) ( (((unsigned)f←v10144 << 16) >> 16) )) + 65535); w11←v10500 = ((word) n←v18936 >> 16); }; SOURCE(14785, 24) w10←v10528 = ( (unsigned) ( (((unsigned)s←v10116 << 16) >> 16) ) - w11←v10500); SOURCE(14811, 24) w01←v10556 = ( (unsigned) ( (((unsigned)f←v10144 << 16) >> 16) ) - w11←v10500); SOURCE(14837, 40) w00←v10584 = (((65535 - w01←v10556) - w10←v10528) - w11←v10500); SOURCE(14879, 45) line0←v10612 = (base←v10232 + (is0←v10388 * unitsPerLine←v10260)); SOURCE(14926, 45) line1←v10640 = (base←v10232 + (is1←v10416 * unitsPerLine←v10260)); SOURCE(14981, 256) { word v00←v10684; word v01←v10712; word v10←v10740; word v11←v10768; word value←v10796; SOURCE(14983, 26) v00←v10684 = (unsigned) (word) (* (( (bPt) line0←v10612)+if0←v10444) ); SOURCE(15011, 26) v01←v10712 = (unsigned) (word) (* (( (bPt) line0←v10612)+if1←v10472) ); SOURCE(15039, 26) v10←v10740 = (unsigned) (word) (* (( (bPt) line1←v10640)+if0←v10444) ); SOURCE(15067, 26) v11←v10768 = (unsigned) (word) (* (( (bPt) line1←v10640)+if1←v10472) ); SOURCE(15095, 121) { word n←v18888; n←v18888 = (((((w00←v10584 * v00←v10684) + (w01←v10556 * v01←v10712)) + (w10←v10528 * v10←v10740)) + (w11←v10500 * v11←v10768)) + 65535); value←v10796 = ((word) n←v18888 >> 16); }; SOURCE(15218, 17) (* (( (ptr) result←v10288)+k←v10344) ) = value←v10796; }; SOURCE(15240, 65) if ((s←v10116 < sfdn←v9692)) { SOURCE(15261, 25) s←v10116 = (s←v10116 + sfup←v9636); } else { SOURCE(15286, 19) s←v10116 = (s←v10116 - sfdn←v9692); }; SOURCE(15307, 65) if ((f←v10144 < ffdn←v9720)) { SOURCE(15328, 25) f←v10144 = (f←v10144 + ffup←v9664); } else { SOURCE(15353, 19) f←v10144 = (f←v10144 - ffdn←v9720); }; }; k←v10344 = (k←v10344 + 1); if ((k←v10344 < count←v9440)) { goto lab←L100121; }; lab←L100118: ; }; }; } else { SOURCE(15420, 955) { register word k←v10840 = 0; if ((k←v10840 >= count←v9440)) { goto lab←L100124; }; lab←L100127: ; { word is0←v10884; word is1←v10912; word if0←v10940; word if1←v10968; word w11←v10996; word w10←v11024; word w01←v11052; word w00←v11080; word v00←v11108; word v01←v11136; word v10←v11164; word v11←v11192; word value←v11220; SOURCE(15448, 20) is0←v10884 = (unsigned) ((unsigned)s←v10116 >> 16); SOURCE(15470, 55) is1←v10912 = ( (is0←v10884 < isdn←v9804) ? (is0←v10884 + 1) : (is0←v10884 - isdn←v9804) ) ; SOURCE(15527, 20) if0←v10940 = (unsigned) ((unsigned)f←v10144 >> 16); SOURCE(15549, 55) if1←v10968 = ( (if0←v10940 < ifdn←v9832) ? (if0←v10940 + 1) : (if0←v10940 - ifdn←v9832) ) ; SOURCE(15606, 63) { word n←v18840; n←v18840 = (( (unsigned) ( (((unsigned)s←v10116 << 16) >> 16) ) * (unsigned) ( (((unsigned)f←v10144 << 16) >> 16) )) + 65535); w11←v10996 = ((word) n←v18840 >> 16); }; SOURCE(15671, 24) w10←v11024 = ( (unsigned) ( (((unsigned)s←v10116 << 16) >> 16) ) - w11←v10996); SOURCE(15697, 24) w01←v11052 = ( (unsigned) ( (((unsigned)f←v10144 << 16) >> 16) ) - w11←v10996); SOURCE(15723, 40) w00←v11080 = (((65535 - w01←v11052) - w10←v11024) - w11←v10996); SOURCE(15802, 75) { W2 var←c21928; var←c21928.f0 = (is0←v10884 + (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+1) )); var←c21928.f1 = (if0←v10940 + (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+2) )); { word pd106; pd106 = (* (( (ptr) (* (( (ptr) gf←c22760)+56)/* var←c19720 */ ))+42) ); v00←v11108 = (word) ( *( (fPt) ((* (ptr) pd106 ))))(map←v10032, var←c21928, pd106); }; }; SOURCE(15879, 75) { W2 var←c21960; var←c21960.f0 = (is0←v10884 + (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+1) )); var←c21960.f1 = (if1←v10968 + (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+2) )); { word pd107; pd107 = (* (( (ptr) (* (( (ptr) gf←c22760)+56)/* var←c19720 */ ))+42) ); v01←v11136 = (word) ( *( (fPt) ((* (ptr) pd107 ))))(map←v10032, var←c21960, pd107); }; }; SOURCE(15956, 75) { W2 var←c21992; var←c21992.f0 = (is1←v10912 + (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+1) )); var←c21992.f1 = (if0←v10940 + (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+2) )); { word pd108; pd108 = (* (( (ptr) (* (( (ptr) gf←c22760)+56)/* var←c19720 */ ))+42) ); v10←v11164 = (word) ( *( (fPt) ((* (ptr) pd108 ))))(map←v10032, var←c21992, pd108); }; }; SOURCE(16033, 75) { W2 var←c22024; var←c22024.f0 = (is1←v10912 + (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+1) )); var←c22024.f1 = (if1←v10968 + (* (( (ptr) (* (( (ptr) formal←c22792)+4) ))+2) )); { word pd109; pd109 = (* (( (ptr) (* (( (ptr) gf←c22760)+56)/* var←c19720 */ ))+42) ); v11←v11192 = (word) ( *( (fPt) ((* (ptr) pd109 ))))(map←v10032, var←c22024, pd109); }; }; SOURCE(16110, 111) { word n←v18792; n←v18792 = (((((w00←v11080 * v00←v11108) + (w01←v11052 * v01←v11136)) + (w10←v11024 * v10←v11164)) + (w11←v10996 * v11←v11192)) + 65535); value←v11220 = ((word) n←v18792 >> 16); }; SOURCE(16223, 18) { word limit110; (* ((( (ptr) samples←v10088)+2)+( limit110 = (* (( (ptr) samples←v10088)+1) ), BCK(k←v10840, limit110) )) ) = value←v11220; }; SOURCE(16243, 65) if ((s←v10116 < sfdn←v9692)) { SOURCE(16264, 25) s←v10116 = (s←v10116 + sfup←v9636); } else { SOURCE(16289, 19) s←v10116 = (s←v10116 - sfdn←v9692); }; SOURCE(16310, 65) if ((f←v10144 < ffdn←v9720)) { SOURCE(16331, 25) f←v10144 = (f←v10144 + ffup←v9664); } else { SOURCE(16356, 19) f←v10144 = (f←v10144 - ffdn←v9720); }; }; k←v10840 = (k←v10840 + 1); if ((k←v10840 < count←v9440)) { goto lab←L100127; }; lab←L100124: ; }; }; }; i←v9988 = (i←v9988 + 1); if ((i←v9988 < (* (( (ptr) formal←c22792)+10) ))) { goto lab←L100115; }; lab←L100112: ; }; SOURCE(16398, 26) { W2 var←c22088; var←c22088.f0 = d1s←v9860; var←c22088.f1 = d1f←v9888; { word pd111; pd111 = (* (( (ptr) formal←c22792)+5) ); (void) ( *( (fPt) ((* (ptr) pd111 ))))((* (( (ptr) formal←c22792)+21) ), var←c22088, pd111); }; }; SOURCE(16426, 11) d1s←v9860 = (d1s←v9860 + 1); SOURCE(16439, 26) if (( (int)d1s←v9860 >= (int)box←v17588.f2)) { SOURCE(16465, 4) goto lab←L100110; }; SOURCE(16471, 70) if ((s1←v9916 < ssdn←v9580)) { SOURCE(16493, 27) s1←v9916 = (s1←v9916 + ssup←v9524); } else { SOURCE(16520, 21) s1←v9916 = (s1←v9916 - ssdn←v9580); }; SOURCE(16543, 70) if ((f1←v9944 < fsdn←v9608)) { SOURCE(16565, 27) f1←v9944 = (f1←v9944 + fsup←v9552); } else { SOURCE(16592, 21) f1←v9944 = (f1←v9944 - fsdn←v9608); }; goto lab←L100111; lab←L100110: ; } static word HalfInteger←P780(r←v6032) word r←v6032; { word var←c6076; word n←v11376; word halfInteger←v11404; /* HalfInteger: */ SOURCE(17447, 258) SOURCE(17592, 52) n←v11376 = (word) ScaledFromRealMod←P600(r←v6032, 1); SOURCE(17646, 36) halfInteger←v11404 = (unsigned) ((( (((unsigned)n←v11376 << 16) >> 16) ) - 32760) <= 16); SOURCE(17684, 21) return(halfInteger←v11404); } static void NoName←Q3876(formal←c0295, formal←c200000, formal←c200001, formal←c200002, formal←c200003) word formal←c0295; word formal←c200000; word formal←c200001; word formal←c200002; word formal←c200003; { if ((formal←c200001 == XR←Unwind)) { SOURCE(2911, 30) (void) ReleaseScratchPixels←P240((* ((( (ptr) formal←c200000)+5)) )); }; (* (ptr) formal←c0295 ) = 0; (* (( (ptr) formal←c0295)+1) ) = 0; return; } /* file: ImagerPixelImpl, module: ImagerPixelImpl, compiled at: July 28, 1993 10:21:47 am PDT */ extern void XR←install←ImagerPixelImpl() { NoName←Q3756(); } extern void XR←run←ImagerPixelImpl() { XR←Start(&globalframe); }