/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */ /* time: August 19, 1993 12:22:31 pm PDT */ /* C2C version: April 20, 1993 (sun4) */ /* ref-counting: off */ /* file: XlBitmapImagerImpl, module: XlBitmapImagerImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> static char versionStamp[] = "@(#)mob←version [1289894311,107842231] XlBitmapImagerImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef word (*fPt)(); typedef struct {word f0, f1, f2;} W3; typedef W3 *W3Pt; typedef struct {word f0, f1;} W2; typedef W2 *W2Pt; typedef struct {word f0, f1, f2, f3;} W4; typedef W4 *W4Pt; #define SOURCE(p, l) /* source p, l */ static float fc27 = 72.0; static void NoName←Q2688(); static void XlBitmapImagerImpl←P0(); static void RegisterContextCreator←P60(); static word InternalCreateContext←P120(); static void DebugSwitchBufferTRUE←P180(); static void DebugSwitchBufferFALSE←P240(); static word AssertDevice←P300(); static word CreateContext←P360(); static void IPostIntercept←P480(); static void IPreIntercept←P540(); static void ModifySetColor←P600(); static void ModifySetPriority←P660(); static void ModifySetHalftoneProperties←P720(); static void ModifyMaskBoxes←P780(); static void ModifyMaskRegion←P840(); static void ModifyMaskBitmap←P900(); static void ModifyMaskRawBitmaps←P960(); static void ModifyDrawBitmap←P1020(); static void ModifyMaskChar←P1080(); static void ModifyMoveBox←P1140(); static void ModifySwitchBuffer1←P1200(); static void ModifySwitchBuffer2←P1260(); static word ModifyGetBufferColorOperator←P1320(); static void ModifyAccessBuffer←P1380(); static word DitherContextCreator←P1440(); static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\241\011\366\176\300\127\130\105\301\100\274\000\000"}; static struct {unsigned f; char r[4];} string2 = {131074, "\003\016\000"}; static struct {unsigned f; char r[44];} string3 = {2752556, "\260\006\005\146\151\162\163\164\257\300\114\342\071\247\300\006\155\212\267\100\200\005\004\162\145\163\164\214\257\300\114\342\071\247\300\006\155\212\267\100\200\261\000"}; static struct {unsigned f; char r[4];} string4 = {131074, "\003\002\000"}; static struct {unsigned f; char r[16];} string5 = {851984, "\257\300\114\342\071\247\300\006\155\212\267\101\020\000\000"}; static struct {unsigned f; char r[4];} string6 = {131074, "\004\005\000"}; static struct {unsigned f; char r[4];} string7 = {131076, "\216\251\000"}; static struct {unsigned f; char r[4];} string8 = {65537, "\001\000\000"}; static struct {unsigned f; char r[44];} string9 = {2752556, "\260\006\005\146\151\162\163\164\257\300\265\371\352\317\300\364\125\216\164\100\164\005\004\162\145\163\164\214\257\300\265\371\352\317\300\364\125\216\164\100\164\261\000"}; static struct {unsigned f; char r[4];} string10 = {131074, "\003\001\000"}; static struct {unsigned f; char r[8];} string11 = {393224, "Bitmap\000"}; static struct {unsigned f; char r[16];} string12 = {851984, "\257\300\114\342\071\247\300\006\155\212\267\100\164\000\000"}; static struct {unsigned f; char r[12];} string13 = {720907, "\006\004 \001(\001,\001@X\001"}; static struct {unsigned f; char r[16];} string14 = {851984, "\257\300\353\300\316\013\300\313\011\345\022\100\150\000\000"}; static struct {unsigned f; char r[16];} string15 = {851984, "\257\300\241\011\366\176\300\127\130\105\301\100\150\000\000"}; static struct {unsigned f; char r[16];} string16 = {851984, "\257\300\251\115\200\307\300\172\122\133\217\100\150\000\000"}; static struct {unsigned f; char r[16];} string17 = {851984, "\257\300\067\246\211\216\300\354\224\134\067\100\150\000\000"}; static struct {unsigned f; char r[16];} string18 = {851984, "\257\300\256\061\211\265\300\052\170\134\271\100\150\000\000"}; static struct {unsigned f; char r[24];} string19 = {1441816, "\211\012\011\102\151\164\155\141\160\122\145\160\300\256\061\211\265\300\052\170\134\271\000"}; static struct {unsigned f; char r[16];} string20 = {851984, "\257\300\340\211\223\046\300\245\333\237\361\100\214\000\000"}; static struct {unsigned f; char r[4];} string21 = {196611, "\004a\201"}; static struct {unsigned f; char r[16];} string22 = {851984, "\257\300\037\364\120\230\300\276\204\331\043\100\150\000\000"}; static struct { word f0[9]; word f9; word f10[13]; word f23; word f24; word f25; 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; word f52; word f53; word f54; word f55; word f56; word f57; word f58; word f59; word f60; word f61; word f62; word f63; word f64; word f65; word f66; word f67; word f68; word f69; word f70[7]; } globalframe = { {0}, (word) 1, {0}, (word) DitherContextCreator←P1440, 0, (word) ModifyAccessBuffer←P1380, 0, (word) ModifyGetBufferColorOperator←P1320, 0, (word) ModifySwitchBuffer2←P1260, 0, (word) ModifySwitchBuffer1←P1200, 0, (word) ModifyMoveBox←P1140, 0, (word) ModifyMaskChar←P1080, 0, (word) ModifyDrawBitmap←P1020, 0, (word) ModifyMaskRawBitmaps←P960, 0, (word) ModifyMaskBitmap←P900, 0, (word) ModifyMaskRegion←P840, 0, (word) ModifyMaskBoxes←P780, 0, (word) ModifySetHalftoneProperties←P720, 0, (word) ModifySetPriority←P660, 0, (word) ModifySetColor←P600, 0, (word) IPreIntercept←P540, 0, (word) IPostIntercept←P480, 0, (word) CreateContext←P360, 0, (word) AssertDevice←P300, 0, (word) DebugSwitchBufferFALSE←P240, 0, (word) DebugSwitchBufferTRUE←P180, 0, (word) InternalCreateContext←P120, 0, (word) RegisterContextCreator←P60, 0, (word) XlBitmapImagerImpl←P0, {0} }; static void NoName←Q2688() { register ptr gf←c0161 = (ptr) &globalframe; word var←c24252; (* (( (ptr) gf←c0161)+13) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2); (* (( (ptr) gf←c0161)+16) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4); (* (( (ptr) gf←c0161)+17) ) = (word) XR←GetTypeIndex((word) &string5, 0, (word) &string6); (* (( (ptr) gf←c0161)+19) ) = (word) XR←GetTypeIndex((word) &string7, 0, (word) &string8); (* (( (ptr) gf←c0161)+20) ) = (word) XR←GetTypeIndex((word) &string9, 0, (word) &string10); (* (ptr) (( (bPt) gf←c0161)+88) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0161)+19) ), (word) &string11); (void) XR←DeclareGlobalFrame((word) "XlBitmapImagerImpl", &globalframe, (word) XR←GetTypeIndex((word) &string12, 0, (word) &string13) , (word) (( (bPt) gf←c0161)+276)/* var←c23292 */ ); var←c24252 = (word) XR←ImportInterface((word) "ImagerBitmapContext", (word) XR←GetTypeIndexS((word) (&string14)), 8); (* (( (ptr) gf←c0161)+73)/* var←c23676 */ ) = var←c24252; (void) XR←ImportProcS(var←c24252, 524802); (void) XR←ImportProcS(var←c24252, 69206278); var←c24252 = (word) XR←ImportInterface((word) "ImagerDevice", (word) XR←GetTypeIndexS((word) (&string15)), 2); (* (( (ptr) gf←c0161)+72)/* var←c23548 */ ) = var←c24252; (void) XR←ImportProcS(var←c24252, 68157444); var←c24252 = (word) XR←ImportInterface((word) "ImagerDitherContext", (word) XR←GetTypeIndexS((word) (&string16)), 9); (* (( (ptr) gf←c0161)+74)/* var←c24188 */ ) = var←c24252; (void) XR←ImportProcS(var←c24252, 524802); (void) XR←ImportProcS(var←c24252, 525570); (void) XR←ImportProcS(var←c24252, 68944133); var←c24252 = (word) XR←ImportInterface((word) "ImagerRaster", (word) XR←GetTypeIndexS((word) (&string17)), 13); (* (( (ptr) gf←c0161)+71)/* var←c23484 */ ) = var←c24252; (void) XR←ImportProcS(var←c24252, 67635970); (void) XR←ImportProcS(var←c24252, 67373569); var←c24252 = (word) XR←ExportInterface((word) "XlBitmap", (word) XR←GetTypeIndexS((word) (&string18)), 14); (* (( (ptr) gf←c0161)+75)/* var←c24284 */ ) = var←c24252; (void) XR←ExportType((word) "BitmapRep", (word) XR←GetTypeIndexS((word) (&string19)), (word) XR←GetTypeIndex((word) &string20, 0, (word) &string21) ); (void) XR←ExportProcS(var←c24252, (word) (( (bPt) gf←c0161)+228)/* var←c23100 */ , 67635202, (word) "CreateContext"); var←c24252 = (word) XR←ExportInterface((word) "XlBitmapFriends", (word) XR←GetTypeIndexS((word) (&string22)), 1); (* (( (ptr) gf←c0161)+76)/* var←c24316 */ ) = var←c24252; (void) XR←ExportProcS(var←c24252, (word) (( (bPt) gf←c0161)+268)/* var←c23260 */ , 524290, (word) "RegisterContextCreator") ; } static void XlBitmapImagerImpl←P0(formal←c042, formal←c039) word formal←c042; word formal←c039; { register ptr gf←c24348 = (ptr) &globalframe; /* XlBitmapImagerImpl: */ SOURCE(244, 8692) /* moved to installation proc */ SOURCE(7327, 513) { word var←c23324; var←c23324 = XR←NewObject(60, (* (( (ptr) gf←c24348)+13) )); (* (ptr) var←c23324 ) = (word) (( (bPt) gf←c24348)+204)/* var←c23004 */ ; (* (( (ptr) var←c23324)+1) ) = (word) (( (bPt) gf←c24348)+196)/* var←c22972 */ ; (* (( (ptr) var←c23324)+2) ) = (word) (( (bPt) gf←c24348)+188)/* var←c22940 */ ; (* (( (ptr) var←c23324)+3) ) = (word) (( (bPt) gf←c24348)+180)/* var←c22908 */ ; (* (( (ptr) var←c23324)+4) ) = (word) (( (bPt) gf←c24348)+172)/* var←c22876 */ ; (* (( (ptr) var←c23324)+5) ) = (word) (( (bPt) gf←c24348)+164)/* var←c22844 */ ; (* (( (ptr) var←c23324)+6) ) = XR←CheckProc(0); (* (( (ptr) var←c23324)+7) ) = (word) (( (bPt) gf←c24348)+156)/* var←c22812 */ ; (* (( (ptr) var←c23324)+8) ) = (word) (( (bPt) gf←c24348)+148)/* var←c22780 */ ; (* (( (ptr) var←c23324)+9) ) = (word) (( (bPt) gf←c24348)+140)/* var←c22748 */ ; (* (( (ptr) var←c23324)+10) ) = (word) (( (bPt) gf←c24348)+132)/* var←c22716 */ ; (* (( (ptr) var←c23324)+11) ) = (word) (( (bPt) gf←c24348)+124)/* var←c22684 */ ; (* (( (ptr) var←c23324)+12) ) = (word) (( (bPt) gf←c24348)+108)/* var←c22620 */ ; (* (( (ptr) var←c23324)+13) ) = (word) (( (bPt) gf←c24348)+100)/* var←c22588 */ ; (* (( (ptr) gf←c24348)+10)/* modifiedDeviceClass1←v4064 */ ) = var←c23324; }; SOURCE(7843, 513) { word var←c23356; var←c23356 = XR←NewObject(60, (* (( (ptr) gf←c24348)+13) )); (* (ptr) var←c23356 ) = (word) (( (bPt) gf←c24348)+204)/* var←c23004 */ ; (* (( (ptr) var←c23356)+1) ) = (word) (( (bPt) gf←c24348)+196)/* var←c22972 */ ; (* (( (ptr) var←c23356)+2) ) = (word) (( (bPt) gf←c24348)+188)/* var←c22940 */ ; (* (( (ptr) var←c23356)+3) ) = (word) (( (bPt) gf←c24348)+180)/* var←c22908 */ ; (* (( (ptr) var←c23356)+4) ) = (word) (( (bPt) gf←c24348)+172)/* var←c22876 */ ; (* (( (ptr) var←c23356)+5) ) = (word) (( (bPt) gf←c24348)+164)/* var←c22844 */ ; (* (( (ptr) var←c23356)+6) ) = XR←CheckProc(0); (* (( (ptr) var←c23356)+7) ) = (word) (( (bPt) gf←c24348)+156)/* var←c22812 */ ; (* (( (ptr) var←c23356)+8) ) = (word) (( (bPt) gf←c24348)+148)/* var←c22780 */ ; (* (( (ptr) var←c23356)+9) ) = (word) (( (bPt) gf←c24348)+140)/* var←c22748 */ ; (* (( (ptr) var←c23356)+10) ) = (word) (( (bPt) gf←c24348)+132)/* var←c22716 */ ; (* (( (ptr) var←c23356)+11) ) = (word) (( (bPt) gf←c24348)+116)/* var←c22652 */ ; (* (( (ptr) var←c23356)+12) ) = (word) (( (bPt) gf←c24348)+108)/* var←c22620 */ ; (* (( (ptr) var←c23356)+13) ) = (word) (( (bPt) gf←c24348)+100)/* var←c22588 */ ; (* (( (ptr) gf←c24348)+11)/* modifiedDeviceClass2←v4092 */ ) = var←c23356; }; SOURCE(8791, 47) (void) RegisterContextCreator←P60(8, (word) (( (bPt) gf←c24348)+92)/* var←c22556 */ ); SOURCE(8840, 47) (void) RegisterContextCreator←P60(4, (word) (( (bPt) gf←c24348)+92)/* var←c22556 */ ); SOURCE(8889, 47) (void) RegisterContextCreator←P60(2, (word) (( (bPt) gf←c24348)+92)/* var←c22556 */ ); } static void RegisterContextCreator←P60(bpp←v4356, creator←v4384) word bpp←v4356; word creator←v4384; { register ptr gf←c24380 = (ptr) &globalframe; /* RegisterContextCreator: */ SOURCE(957, 143) (void) (XR←MonitorEntry((word) (( (bPt) gf←c24380)+16)/* LOCK←v3000 */ )); SOURCE(1039, 61) if ((creator←v4384 != 0)) { SOURCE(1059, 41) { word var←c23388; var←c23388 = XR←NewObject(12, (* (( (ptr) gf←c24380)+16) )); (* (ptr) var←c23388 ) = bpp←v4356; (* (( (ptr) var←c23388)+1) ) = XR←CheckProc(creator←v4384); (* (( (ptr) var←c23388)+2) ) = (* (( (ptr) gf←c24380)+8)/* creators←v3308 */ ); (* (( (ptr) gf←c24380)+8)/* creators←v3308 */ ) = var←c23388; }; }; SOURCE(957, 143) (void) (XR←MonitorExit((word) (( (bPt) gf←c24380)+16)/* LOCK←v3000 */ )); return; } static word InternalCreateContext←P120(sm←v4444, surfaceUnitsPerPixel←v4472, extras←v4500) word sm←v4444; word surfaceUnitsPerPixel←v4472; word extras←v4500; { register ptr gf←c24412 = (ptr) &globalframe; word var←c4560; word bpp←v7188; /* InternalCreateContext: */ SOURCE(1106, 368) SOURCE(1246, 67) { word map←v22508; map←v22508 = sm←v4444; bpp←v7188 = (* (( (ptr) map←v22508)+5) ); }; SOURCE(1315, 159) { register word l←v7232; l←v7232 = (* (( (ptr) gf←c24412)+8)/* creators←v3308 */ ); lab←L100004: ; if ((l←v7232 != 0)) { } else { goto lab←L100001; }; SOURCE(1384, 90) if (( (int)(* (ptr) l←v7232 ) == (int)bpp←v7188)) { SOURCE(1408, 66) { word pd23; pd23 = (* (( (ptr) l←v7232)+1) ); return((word) ( *( (fPt) ((* (ptr) pd23 ))))(sm←v4444, surfaceUnitsPerPixel←v4472, extras←v4500, pd23)); }; }; l←v7232 = (* (( (ptr) l←v7232)+2) ); goto lab←L100004; lab←L100001: ; }; SOURCE(1477, 5) (void) XR←RaiseUnnamedError(); } static void DebugSwitchBufferTRUE←P180() { register ptr gf←c24444 = (ptr) &globalframe; /* DebugSwitchBufferTRUE: */ SOURCE(1518, 56) SOURCE(1552, 22) (* (( (ptr) gf←c24444)+9)/* hasSwitchBuffer←v3392 */ ) = 1; } static void DebugSwitchBufferFALSE←P240() { register ptr gf←c24476 = (ptr) &globalframe; /* DebugSwitchBufferFALSE: */ SOURCE(1577, 58) SOURCE(1612, 23) (* (( (ptr) gf←c24476)+9)/* hasSwitchBuffer←v3392 */ ) = 0; } static word AssertDevice←P300(b←v4652, context←v4680) word b←v4652; word context←v4680; { register ptr gf←c24508 = (ptr) &globalframe; word var←c4724; word iState←v7360; word iData←v7388; W3 worksState←v7416; /* AssertDevice: */ SOURCE(1639, 636) SOURCE(1724, 92) { word pd24; pd24 = (* (( (ptr) (* (( (ptr) gf←c24508)+71)/* var←c23484 */ ))+14) ); iState←v7360 = (word) ( *( (fPt) ((* (ptr) pd24 ))))(context←v4680, pd24); }; SOURCE(1818, 95) iData←v7388 = XR←NewObject(12, (* (( (ptr) gf←c24508)+17) )); (* (ptr) iData←v7388 ) = (* (ptr) iState←v7360 ); (* (( (ptr) iData←v7388)+2) ) = b←v4652; SOURCE(1915, 62) worksState←v7416 = (* (W3Pt) (( (ptr) (* (ptr) iState←v7360 ))+1) ); SOURCE(1979, 187) { word pd25; pd25 = (* (( (ptr) (* (( (ptr) gf←c24508)+72)/* var←c23548 */ ))+4) ); (* (ptr) iState←v7360 ) = (word) ( *( (fPt) ((* (ptr) pd25 ))))( ( (0 != (* (( (ptr) gf←c24508)+9)/* hasSwitchBuffer←v3392 */ )) ? (* ( ( (ptr) gf←c24508)+10)/* modifiedDeviceClass1←v4064 */ ) : (* (( (ptr) gf←c24508)+11)/* modifiedDeviceClass2←v4092 */ ) ) , (* ( ( (ptr) (* (ptr) iState←v7360 ))+5) ), (* (( (ptr) (* (ptr) iState←v7360 ))+6) ), iData←v7388, pd25); }; SOURCE(2168, 37) (* (W3Pt) (( (ptr) (* (ptr) iState←v7360 ))+1) ) = worksState←v7416; SOURCE(2207, 68) { word pd26; pd26 = (* (( (ptr) (* (( (ptr) gf←c24508)+71)/* var←c23484 */ ))+15) ); return((word) ( *( (fPt) ((* (ptr) pd26 ))))(iState←v7360, context←v4680, pd26)); }; } static word CreateContext←P360(bitmap←v4784, surfaceUnitsPerPixel←v4812) word bitmap←v4784; word surfaceUnitsPerPixel←v4812; { register ptr gf←c24540 = (ptr) &globalframe; word context←v4856; word bpp←v7460; /* CreateContext: */ SOURCE(2281, 637) SOURCE(2281, 637) context←v4856 = 0; SOURCE(2394, 74) { word map←v22460; map←v22460 = (* (ptr) bitmap←v4784 ); bpp←v7460 = (* (( (ptr) map←v22460)+5) ); }; SOURCE(2470, 404) if ((bpp←v7460 == 1)) { SOURCE(2489, 218) { W2 var←c23644; var←c23644.f0 = (* (ptr) &fc27 ); var←c23644.f1 = (* (ptr) &fc27 ); { word pd28; pd28 = (* (( (ptr) (* (( (ptr) gf←c24540)+73)/* var←c23676 */ ))+5) ); context←v4856 = (word) ( *( (fPt) ((* (ptr) pd28 ))))((* (W2Pt) (( (ptr) bitmap←v4784)+1) ), 13, var←c23644, surfaceUnitsPerPixel←v4812, 1, (* ( ( (ptr) gf←c24540)+22) ), pd28); }; }; SOURCE(2709, 66) { word pd29; pd29 = (* (( (ptr) (* (( (ptr) gf←c24540)+73)/* var←c23676 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd29 ))))(context←v4856, (* (ptr) bitmap←v4784 ), pd29); }; } else { SOURCE(2786, 88) context←v4856 = (word) InternalCreateContext←P120((* (ptr) bitmap←v4784 ), surfaceUnitsPerPixel←v4812, (* (( (ptr) bitmap←v4784)+13) )); }; SOURCE(2879, 39) context←v4856 = (word) AssertDevice←P300(bitmap←v4784, context←v4856); SOURCE(2281, 637) return(context←v4856); } static void IPostIntercept←P480(iData←v5004, box←v5032) word iData←v5004; W4 box←v5032; { /* IPostIntercept: */ SOURCE(3177, 112) SOURCE(3238, 51) if ((0 == (* (( (ptr) iData←v5004)+1) ))) { SOURCE(3262, 27) { word b←v22024; W4 box←v22052; word var←c23708; W4 outer←v22364; b←v22024 = (* (( (ptr) iData←v5004)+2) ); box←v22052 = box←v5032; SOURCE(2979, 183) outer←v22364 = (* (W4Pt) (( (ptr) b←v22024)+9) ); if ( ( ( ( (int)box←v22052.f0 >= (int)outer←v22364.f0) ? ( (int)box←v22052.f1 >= (int)outer←v22364.f1) : 0 ) ? ( (int)box←v22052.f2 <= (int)outer←v22364.f2) : 0 ) ) { var←c23708 = (unsigned) ( (int)box←v22052.f3 <= (int)outer←v22364.f3); } else { var←c23708 = (unsigned) 0; }; if ((0 == var←c23708)) { SOURCE(3035, 127) { register word postList←v7504; postList←v7504 = (* (( (ptr) b←v22024)+7) ); lab←L100010: ; if ((postList←v7504 != 0)) { } else { goto lab←L100007; }; SOURCE(3110, 52) { word pd30; pd30 = (* (ptr) postList←v7504 ); (void) ( *( (fPt) ((* (ptr) pd30 ))))(box←v22052, (* (( (ptr) postList←v7504)+1) ), 0, pd30); }; postList←v7504 = (* (( (ptr) postList←v7504)+2) ); goto lab←L100010; lab←L100007: ; }; }; }; }; } static void IPreIntercept←P540(iData←v5092, box←v5120) word iData←v5092; W4 box←v5120; { /* IPreIntercept: */ SOURCE(3295, 211) SOURCE(3355, 151) if ((0 == (* (( (ptr) iData←v5092)+1) ))) { SOURCE(3380, 126) { register word preList←v7532; preList←v7532 = (* (( (ptr) (* (( (ptr) iData←v5092)+2) ))+8) ); lab←L100014: ; if ((preList←v7532 != 0)) { } else { goto lab←L100011; }; SOURCE(3457, 49) { word pd31; pd31 = (* (ptr) preList←v7532 ); (void) ( *( (fPt) ((* (ptr) pd31 ))))(box←v5120, (* (( (ptr) preList←v7532)+1) ), 1, pd31); }; preList←v7532 = (* (( (ptr) preList←v7532)+2) ); goto lab←L100014; lab←L100011: ; }; }; } static void ModifySetColor←P600(device←v5292, color←v5320, viewToDevice←v5348) word device←v5292; word color←v5320; word viewToDevice←v5348; { register ptr gf←c24572 = (ptr) &globalframe; word iData←v7576; /* ModifySetColor: */ SOURCE(3645, 192) SOURCE(3731, 42) iData←v7576 = XR←Narrow((* (( (ptr) device←v5292)+7) ), (* (( (ptr) gf←c24572)+17) )); SOURCE(3775, 62) { word pd32; pd32 = (* (ptr) (* (( (ptr) (* (ptr) iData←v7576 ))+4) ) ); (void) ( *( (fPt) ((* (ptr) pd32 ))))((* (ptr) iData←v7576 ), color←v5320, viewToDevice←v5348, pd32); }; } static void ModifySetPriority←P660(device←v5408, priorityImportant←v5436) word device←v5408; word priorityImportant←v5436; { register ptr gf←c24604 = (ptr) &globalframe; word iData←v7620; /* ModifySetPriority: */ SOURCE(3843, 177) SOURCE(3913, 42) iData←v7620 = XR←Narrow((* (( (ptr) device←v5408)+7) ), (* (( (ptr) gf←c24604)+17) )); SOURCE(3957, 63) { word pd33; pd33 = (* (( (ptr) (* (( (ptr) (* (ptr) iData←v7620 ))+4) ))+1) ); (void) ( *( (fPt) ((* (ptr) pd33 ))))((* (ptr) iData←v7620 ), priorityImportant←v5436, pd33); }; } static void ModifySetHalftoneProperties←P720(device←v5496, halftoneProperties←v5524) word device←v5496; word halftoneProperties←v5524; { register ptr gf←c24636 = (ptr) &globalframe; word iData←v7664; /* ModifySetHalftoneProperties: */ SOURCE(4026, 288) SOURCE(4133, 42) iData←v7664 = XR←Narrow((* (( (ptr) device←v5496)+7) ), (* (( (ptr) gf←c24636)+17) )); SOURCE(4177, 61) if (((* (( (ptr) (* (( (ptr) (* (ptr) iData←v7664 ))+4) ))+2) ) == 0)) { SOURCE(4232, 6) return; }; SOURCE(4240, 74) { word pd34; pd34 = (* (( (ptr) (* (( (ptr) (* (ptr) iData←v7664 ))+4) ))+2) ); (void) ( *( (fPt) ((* (ptr) pd34 ))))((* (ptr) iData←v7664 ), halftoneProperties←v5524, pd34); }; } static void ModifyMaskBoxes←P780(device←v5584, bounds←v5612, boxes←v5640) word device←v5584; W4 bounds←v5612; word boxes←v5640; { register ptr gf←c24668 = (ptr) &globalframe; word iData←v7708; /* ModifyMaskBoxes: */ SOURCE(4320, 215) SOURCE(4403, 42) iData←v7708 = XR←Narrow((* (( (ptr) device←v5584)+7) ), (* (( (ptr) gf←c24668)+17) )); SOURCE(4447, 57) { word pd35; pd35 = (* (( (ptr) (* (( (ptr) (* (ptr) iData←v7708 ))+4) ))+3) ); (void) ( *( (fPt) ((* (ptr) pd35 ))))((* (ptr) iData←v7708 ), bounds←v5612, boxes←v5640, pd35); }; SOURCE(4506, 29) (void) IPostIntercept←P480(iData←v7708, bounds←v5612); } static void ModifyMaskRegion←P840(device←v5700, bounds←v5728, edgeGenerator←v5756) word device←v5700; W4 bounds←v5728; word edgeGenerator←v5756; { register ptr gf←c24700 = (ptr) &globalframe; word iData←v7752; /* ModifyMaskRegion: */ SOURCE(4541, 248) SOURCE(4648, 42) iData←v7752 = XR←Narrow((* (( (ptr) device←v5700)+7) ), (* (( (ptr) gf←c24700)+17) )); SOURCE(4692, 66) { word pd36; pd36 = (* (( (ptr) (* (( (ptr) (* (ptr) iData←v7752 ))+4) ))+4) ); (void) ( *( (fPt) ((* (ptr) pd36 ))))((* (ptr) iData←v7752 ), bounds←v5728, edgeGenerator←v5756, pd36); }; SOURCE(4760, 29) (void) IPostIntercept←P480(iData←v7752, bounds←v5728); } static void ModifyMaskBitmap←P900(device←v5876, bitmap←v5904, delta←v5932, bounds←v5960, boxes←v5988) word device←v5876; word bitmap←v5904; W2 delta←v5932; W4 bounds←v5960; word boxes←v5988; { register ptr gf←c24732 = (ptr) &globalframe; word iData←v7796; /* ModifyMaskBitmap: */ SOURCE(4795, 266) SOURCE(4913, 42) iData←v7796 = XR←Narrow((* (( (ptr) device←v5876)+7) ), (* (( (ptr) gf←c24732)+17) )); SOURCE(4957, 73) { word pd37; pd37 = (* (( (ptr) (* (( (ptr) (* (ptr) iData←v7796 ))+4) ))+5) ); (void) ( *( (fPt) ((* (ptr) pd37 ))))((* (ptr) iData←v7796 ), bitmap←v5904, delta←v5932, bounds←v5960, boxes←v5988, pd37) ; }; SOURCE(5032, 29) (void) IPostIntercept←P480(iData←v7796, bounds←v5960); } static void ModifyMaskRawBitmaps←P960(device←v6048, list←v6076) word device←v6048; word list←v6076; { register ptr gf←c24764 = (ptr) &globalframe; word iData←v7840; /* ModifyMaskRawBitmaps: */ SOURCE(5067, 475) SOURCE(5157, 42) iData←v7840 = XR←Narrow((* (( (ptr) device←v6048)+7) ), (* (( (ptr) gf←c24764)+17) )); SOURCE(5201, 53) { word pd38; pd38 = (* (( (ptr) (* (( (ptr) (* (ptr) iData←v7840 ))+4) ))+7) ); (void) ( *( (fPt) ((* (ptr) pd38 ))))((* (ptr) iData←v7840 ), list←v6076, pd38); }; SOURCE(5256, 286) if ( ( (0 == (* (( (ptr) iData←v7840)+1) )) ? (list←v6076 != 0) : 0 ) ) { SOURCE(5293, 251) { W4 bounds←v7884; SOURCE(5295, 31) bounds←v7884 = (* (W4Pt) list←v6076 ); SOURCE(5328, 16) list←v6076 = (* (( (ptr) list←v6076)+7) ); SOURCE(5347, 152) lab←L100017: ; if ((list←v6076 != 0)) { } else { goto lab←L100015; }; SOURCE(5365, 57) { W2 var←c23740; W2 v1←v22288; W2 v2←v22316; v1←v22288 = (* (W2Pt) &bounds←v7884 ); v2←v22316 = (* (W2Pt) list←v6076 ); if (( (int)v1←v22288.f0 <= (int)v2←v22316.f0)) { var←c23740.f0 = v1←v22288.f0; } else { var←c23740.f0 = v2←v22316.f0; }; if (( (int)v1←v22288.f1 <= (int)v2←v22316.f1)) { var←c23740.f1 = v1←v22288.f1; } else { var←c23740.f1 = v2←v22316.f1; }; (* (W2Pt) &bounds←v7884 ) = var←c23740; }; SOURCE(5424, 57) { W2 var←c23804; W2 v1←v22212; W2 v2←v22240; v1←v22212 = (* (W2Pt) (( (ptr) &bounds←v7884)+2) ); v2←v22240 = (* (W2Pt) (( (ptr) list←v6076)+2) ); if (( (int)v2←v22240.f0 >= (int)v1←v22212.f0)) { var←c23804.f0 = v2←v22240.f0; } else { var←c23804.f0 = v1←v22212.f0; }; if (( (int)v2←v22240.f1 >= (int)v1←v22212.f1)) { var←c23804.f1 = v2←v22240.f1; } else { var←c23804.f1 = v1←v22212.f1; }; (* (W2Pt) (( (ptr) &bounds←v7884)+2) ) = var←c23804; }; SOURCE(5483, 16) list←v6076 = (* (( (ptr) list←v6076)+7) ); goto lab←L100017; lab←L100015: ; SOURCE(5512, 30) { word b←v21904; W4 box←v21932; word var←c23868; W4 outer←v22412; b←v21904 = (* (( (ptr) iData←v7840)+2) ); box←v21932 = bounds←v7884; SOURCE(2979, 183) outer←v22412 = (* (W4Pt) (( (ptr) b←v21904)+9) ); if ( ( ( ( (int)box←v21932.f0 >= (int)outer←v22412.f0) ? ( (int)box←v21932.f1 >= (int)outer←v22412.f1) : 0 ) ? ( (int)box←v21932.f2 <= (int)outer←v22412.f2) : 0 ) ) { var←c23868 = (unsigned) ( (int)box←v21932.f3 <= (int)outer←v22412.f3); } else { var←c23868 = (unsigned) 0; }; if ((0 == var←c23868)) { SOURCE(3035, 127) { register word postList←v21980; postList←v21980 = (* (( (ptr) b←v21904)+7) ); lab←L100024: ; if ((postList←v21980 != 0)) { } else { goto lab←L100021; }; SOURCE(3110, 52) { word pd39; pd39 = (* (ptr) postList←v21980 ); (void) ( *( (fPt) ((* (ptr) pd39 ))))(box←v21932, (* (( (ptr) postList←v21980)+1) ), 0, pd39); }; postList←v21980 = (* (( (ptr) postList←v21980)+2) ); goto lab←L100024; lab←L100021: ; }; }; }; }; }; } static void ModifyDrawBitmap←P1020(device←v6220, bitmap←v6248, delta←v6276, bounds←v6304, boxes←v6332) word device←v6220; word bitmap←v6248; W2 delta←v6276; W4 bounds←v6304; word boxes←v6332; { register ptr gf←c24796 = (ptr) &globalframe; word iData←v7928; /* ModifyDrawBitmap: */ SOURCE(5551, 266) SOURCE(5669, 42) iData←v7928 = XR←Narrow((* (( (ptr) device←v6220)+7) ), (* (( (ptr) gf←c24796)+17) )); SOURCE(5713, 73) { word pd40; pd40 = (* (( (ptr) (* (( (ptr) (* (ptr) iData←v7928 ))+4) ))+8) ); (void) ( *( (fPt) ((* (ptr) pd40 ))))((* (ptr) iData←v7928 ), bitmap←v6248, delta←v6276, bounds←v6304, boxes←v6332, pd40) ; }; SOURCE(5788, 29) (void) IPostIntercept←P480(iData←v7928, bounds←v6304); } static void ModifyMaskChar←P1080(device←v6392, delta←v6420, mask←v6448) word device←v6392; W2 delta←v6420; word mask←v6448; { register ptr gf←c24828 = (ptr) &globalframe; word iData←v7972; /* ModifyMaskChar: */ SOURCE(5823, 230) SOURCE(5896, 42) iData←v7972 = XR←Narrow((* (( (ptr) device←v6392)+7) ), (* (( (ptr) gf←c24828)+17) )); SOURCE(5940, 54) { word pd41; pd41 = (* (( (ptr) (* (( (ptr) (* (ptr) iData←v7972 ))+4) ))+9) ); (void) ( *( (fPt) ((* (ptr) pd41 ))))((* (ptr) iData←v7972 ), delta←v6420, mask←v6448, pd41); }; SOURCE(5996, 57) { W4 var←c23900; { W4 var←c23932; W4 box←v22164; box←v22164 = (* (W4Pt) (( (ptr) mask←v6448)+4) ); var←c23932.f0 = (box←v22164.f0 + delta←v6420.f0); var←c23932.f1 = (box←v22164.f1 + delta←v6420.f1); var←c23932.f2 = (box←v22164.f2 + delta←v6420.f0); var←c23932.f3 = (box←v22164.f3 + delta←v6420.f1); var←c23900 = var←c23932; }; (void) IPostIntercept←P480(iData←v7972, var←c23900); }; } static void ModifyMoveBox←P1140(device←v6508, dstMin←v6536, srcMin←v6564, size←v6592) word device←v6508; W2 dstMin←v6536; W2 srcMin←v6564; W2 size←v6592; { register ptr gf←c24860 = (ptr) &globalframe; word iData←v8016; /* ModifyMoveBox: */ SOURCE(6059, 248) SOURCE(6130, 42) iData←v8016 = XR←Narrow((* (( (ptr) device←v6508)+7) ), (* (( (ptr) gf←c24860)+17) )); SOURCE(6174, 62) { word pd42; pd42 = (* (( (ptr) (* (( (ptr) (* (ptr) iData←v8016 ))+4) ))+10) ); (void) ( *( (fPt) ((* (ptr) pd42 ))))((* (ptr) iData←v8016 ), dstMin←v6536, srcMin←v6564, size←v6592, pd42); }; SOURCE(6238, 69) { W4 var←c23996; (* (W2Pt) &var←c23996 ) = dstMin←v6536; var←c23996.f2 = (dstMin←v6536.f0 + size←v6592.f0); var←c23996.f3 = (dstMin←v6536.f1 + size←v6592.f1); (void) IPostIntercept←P480(iData←v8016, var←c23996); }; } static void ModifySwitchBuffer1←P1200(device←v6652, bounds←v6680, copy←v6708, alt←v6736) word device←v6652; W4 bounds←v6680; word copy←v6708; word alt←v6736; { register ptr gf←c24892 = (ptr) &globalframe; word iData←v8060; /* ModifySwitchBuffer1: */ SOURCE(6313, 269) SOURCE(6399, 42) iData←v8060 = XR←Narrow((* (( (ptr) device←v6652)+7) ), (* (( (ptr) gf←c24892)+17) )); SOURCE(6443, 64) { word pd43; pd43 = (* (( (ptr) (* (( (ptr) (* (ptr) iData←v8060 ))+4) ))+11) ); (void) ( *( (fPt) ((* (ptr) pd43 ))))((* (ptr) iData←v8060 ), bounds←v6680, copy←v6708, alt←v6736, pd43); }; SOURCE(6509, 20) (* (( (ptr) iData←v8060)+1) ) = alt←v6736; SOURCE(6531, 51) if ( ( (0 == alt←v6736) ? (0 != copy←v6708) : 0 ) ) { SOURCE(6553, 29) (void) IPostIntercept←P480(iData←v8060, bounds←v6680); }; } static void ModifySwitchBuffer2←P1260(device←v6796, bounds←v6824, copy←v6852, alt←v6880) word device←v6796; W4 bounds←v6824; word copy←v6852; word alt←v6880; { register ptr gf←c24924 = (ptr) &globalframe; word iData←v8104; /* ModifySwitchBuffer2: */ SOURCE(6590, 203) SOURCE(6676, 42) iData←v8104 = XR←Narrow((* (( (ptr) device←v6796)+7) ), (* (( (ptr) gf←c24924)+17) )); SOURCE(6720, 20) (* (( (ptr) iData←v8104)+1) ) = alt←v6880; SOURCE(6742, 51) if ( ( (0 == alt←v6880) ? (0 != copy←v6852) : 0 ) ) { SOURCE(6764, 29) (void) IPostIntercept←P480(iData←v8104, bounds←v6824); }; } static word ModifyGetBufferColorOperator←P1320(device←v6940) word device←v6940; { register ptr gf←c24956 = (ptr) &globalframe; word var←c6984; word iData←v8148; /* ModifyGetBufferColorOperator: */ SOURCE(6801, 265) SOURCE(6893, 42) iData←v8148 = XR←Narrow((* (( (ptr) device←v6940)+7) ), (* (( (ptr) gf←c24956)+17) )); SOURCE(6937, 68) if (((* (( (ptr) (* (( (ptr) (* (ptr) iData←v8148 ))+4) ))+12) ) == 0)) { SOURCE(6993, 12) return(0); }; SOURCE(7007, 59) { word pd44; pd44 = (* (( (ptr) (* (( (ptr) (* (ptr) iData←v8148 ))+4) ))+12) ); return((word) ( *( (fPt) ((* (ptr) pd44 ))))(device←v6940, pd44)); }; } static void ModifyAccessBuffer←P1380(device←v7044, box←v7072, action←v7100) word device←v7044; W4 box←v7072; word action←v7100; { register ptr gf←c24988 = (ptr) &globalframe; word iData←v8192; /* ModifyAccessBuffer: */ SOURCE(7070, 251) SOURCE(7164, 42) iData←v8192 = XR←Narrow((* (( (ptr) device←v7044)+7) ), (* (( (ptr) gf←c24988)+17) )); SOURCE(7208, 25) (void) IPreIntercept←P540(iData←v8192, box←v7072); SOURCE(7235, 58) { word pd45; pd45 = (* (( (ptr) (* (( (ptr) (* (ptr) iData←v8192 ))+4) ))+13) ); (void) ( *( (fPt) ((* (ptr) pd45 ))))((* (ptr) iData←v8192 ), box←v7072, action←v7100, pd45); }; SOURCE(7295, 26) (void) IPostIntercept←P480(iData←v8192, box←v7072); } static word DitherContextCreator←P1440(sm←v15988, surfaceUnitsPerPixel←v16016, extras←v16044) word sm←v15988; word surfaceUnitsPerPixel←v16016; word extras←v16044; { register ptr gf←c25020 = (ptr) &globalframe; word context←v16088; /* DitherContextCreator: */ SOURCE(8359, 426) SOURCE(8359, 426) context←v16088 = 0; SOURCE(8400, 189) { W2 var←c24060; { W2 var←c24092; word map←v22116; map←v22116 = sm←v15988; { W4 b←v21284; b←v21284 = (* (W4Pt) map←v22116 ); var←c24092.f0 = (b←v21284.f2 - b←v21284.f0); var←c24092.f1 = (b←v21284.f3 - b←v21284.f1); }; var←c24060 = var←c24092; }; { W2 var←c24156; var←c24156.f0 = (* (ptr) &fc27 ); var←c24156.f1 = (* (ptr) &fc27 ); { word pd46; pd46 = (* (( (ptr) (* (( (ptr) gf←c25020)+74)/* var←c24188 */ ))+5) ); context←v16088 = (word) ( *( (fPt) ((* (ptr) pd46 ))))(var←c24060, 13, var←c24156, 1, (* (( (ptr) gf←c25020)+22) ), pd46) ; }; }; }; SOURCE(8591, 112) { word var←c24220; var←c24220 = extras←v16044; if ((var←c24220 == 0)) { goto lab←L100027; }; if (((* (( (ptr) gf←c25020)+20) ) == XR←GetReferentType(var←c24220))) { { word entries←v8236; entries←v8236 = var←c24220; SOURCE(8653, 50) { word pd47; pd47 = (* (( (ptr) (* (( (ptr) gf←c25020)+74)/* var←c24188 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd47 ))))(context←v16088, entries←v8236, pd47); }; }; } else { lab←L100027: ; }; }; SOURCE(8720, 65) { word pd48; pd48 = (* (( (ptr) (* (( (ptr) gf←c25020)+74)/* var←c24188 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd48 ))))(context←v16088, sm←v15988, pd48); }; SOURCE(8359, 426) return(context←v16088); } /* file: XlBitmapImagerImpl, module: XlBitmapImagerImpl, compiled at: August 19, 1993 12:22:31 pm PDT */ extern void XR←install←XlBitmapImagerImpl() { NoName←Q2688(); } extern void XR←run←XlBitmapImagerImpl() { XR←Start(&globalframe); }