/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */ /* time: October 21, 1993 10:05:21 am PDT */ /* C2C version: April 20, 1993 (sun4) */ /* ref-counting: off */ /* file: XlBWFriendsImpl, module: XlBWFriendsImpl */ /* switches: bcfhklnouw */ #include #include static char versionStamp[] = "@(#)mob_version [458981746,2875399059] XlBWFriendsImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef word (*fPt)(); typedef struct {word f0, f1;} W2; typedef struct {word f0, f1, f2, f3;} W4; typedef W4 *W4Pt; typedef W2 *W2Pt; typedef struct {word f0, f1, f2, f3, f4, f5;} W6; typedef struct {word f0, f1, f2, f3, f4;} W5; #define SOURCE(p, l) /* source p, l */ #define IOP2(op, x, y) ( (word) ((x) op (y)) ) static void NoName_Q3516(); static void XlBWFriendsImpl_P0(); static word NewSRef_P60(); static word ServiceInitialize_P120(); static word GetSeviceRef_P180(); static void IncludeRect_P600(); static void CancelRects_P660(); static word WaitLocal_P720(); static void ConsumeRect_P780(); static void StopWRef_P840(); static void EntryRemH_P1668(); static void InterceptedRefresh_P900(); static void StartWRef_P960(); static word EntryAddH_P1824(); static word ResetConsumers_P1020(); static void ServiceProcess_P1200(); static word NoName_Q3576(); static word Visit_P1260(); static void NoName_Q3636(); static struct {unsigned f; char r[4];} string1 = {65540, "\251\000\000"}; static struct {unsigned f; char r[4];} string2 = {131076, "\216\251\000"}; static struct {unsigned f; char r[4];} string3 = {65537, "\001\000\000"}; static struct {unsigned f; char r[48];} string4 = {2883632, "\260\006\005\146\151\162\163\164\216\257\300\205\277\037\240\300\057\303\211\051\100\214\005\004\162\145\163\164\214\216\257\300\205\277\037\240\300\057\303\211\051\100\214\261\000\000\000"}; static struct {unsigned f; char r[4];} string5 = {131074, "\004\003\000"}; static struct {unsigned f; char r[4];} string6 = {65540, "\242\000\000"}; static struct {unsigned f; char r[16];} string7 = {851984, "\257\300\205\277\037\240\300\057\303\211\051\100\244\000\000"}; static struct {unsigned f; char r[4];} string8 = {196611, "\004@`"}; static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\205\277\037\240\300\057\303\211\051\100\214\000\000"}; static struct {unsigned f; char r[20];} string10 = {1245203, "\006\007\000\001\004\001\010\001\034\001\105\164\001\105\210\001\105\224\001"}; static struct {unsigned f; char r[4];} string11 = {65540, "x\000\000"}; static struct {unsigned f; char r[16];} string12 = {851984, "flushProposed\000\000"}; static struct {unsigned f; char r[16];} string13 = {851984, "\257\300\033\133\201\162\300\253\143\033\223\100\200\000\000"}; static struct {unsigned f; char r[8];} string14 = {262148, "\004\200`\020\000\000\000"}; static struct {unsigned f; char r[16];} string15 = {851984, "\257\300\263\064\342\215\300\063\160\325\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string16 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"}; static struct {unsigned f; char r[16];} string17 = {851984, "\257\300\240\236\274\315\300\111\163\325\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string18 = {851984, "\257\300\256\042\060\232\300\060\151\325\207\100\150\000\000"}; static struct {unsigned f; char r[16];} string19 = {851984, "\257\300\351\276\264\273\300\115\104\320\264\100\164\000\000"}; static struct {unsigned f; char r[16];} string20 = {851984, "\257\300\256\061\211\265\300\052\170\134\271\100\150\000\000"}; static struct {unsigned f; char r[16];} string21 = {851984, "\257\300\244\037\307\153\300\075\246\262\264\100\150\000\000"}; static struct {unsigned f; char r[16];} string22 = {851984, "\257\300\205\277\037\240\300\057\303\211\051\100\150\000\000"}; static struct { word f0[15]; word f15; word f16; word f17; word f18; word f19; word f20; word f21; word f22; 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[9]; } globalframe = { {0}, (word) Visit_P1260, 0, (word) ServiceProcess_P1200, 0, (word) ResetConsumers_P1020, 0, (word) StartWRef_P960, 0, (word) InterceptedRefresh_P900, 0, (word) StopWRef_P840, 0, (word) ConsumeRect_P780, 0, (word) WaitLocal_P720, 0, (word) CancelRects_P660, 0, (word) IncludeRect_P600, 0, (word) GetSeviceRef_P180, 0, (word) ServiceInitialize_P120, 0, (word) NewSRef_P60, 0, (word) XlBWFriendsImpl_P0, {0} }; static void NoName_Q3516() { register ptr gf_c0134 = (ptr) &globalframe; word var_c19428; (* (( (ptr) gf_c0134)+5) ) = (word) XR_GetTypeIndexS((word) (&string1)); (* (( (ptr) gf_c0134)+6) ) = (word) XR_GetTypeIndex((word) &string2, 0, (word) &string3); (* (( (ptr) gf_c0134)+7) ) = (word) XR_GetTypeIndex((word) &string4, 0, (word) &string5); (* (( (ptr) gf_c0134)+8) ) = (word) XR_GetTypeIndexS((word) (&string6)); (* (( (ptr) gf_c0134)+9) ) = (word) XR_GetTypeIndex((word) &string7, 0, (word) &string8); (* (( (ptr) gf_c0134)+12) ) = (word) XR_GetTypeIndex((word) &string9, 0, (word) &string10); (* (ptr) (( (bPt) gf_c0134)+52) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0134)+6) ), (word) &string11); (* (ptr) (( (bPt) gf_c0134)+56) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0134)+6) ), (word) &string12); (void) XR_DeclareGlobalFrame((word) "XlBWFriendsImpl", &globalframe, (word) XR_GetTypeIndex((word) &string13, 0, (word) &string14) , (word) (( (bPt) gf_c0134)+164)/* var_c18020 */ ); var_c19428 = (word) XR_ImportInterface((word) "ForkOps", (word) XR_GetTypeIndexS((word) (&string15)), 4); (* (( (ptr) gf_c0134)+46)/* var_c19172 */ ) = var_c19428; (void) XR_ImportProcS(var_c19428, 1048836); var_c19428 = (word) XR_ImportInterface((word) "IO", (word) XR_GetTypeIndexS((word) (&string16)), 103); (* (( (ptr) gf_c0134)+48)/* var_c19300 */ ) = var_c19428; var_c19428 = (word) XR_ImportInterface((word) "Process", (word) XR_GetTypeIndexS((word) (&string17)), 22); (* (( (ptr) gf_c0134)+43)/* var_c18116 */ ) = var_c19428; (void) XR_ImportProcS(var_c19428, 4864); (void) XR_ImportProcS(var_c19428, 264449); (void) XR_ImportProcS(var_c19428, 67371521); (void) XR_ImportProcS(var_c19428, 525570); var_c19428 = (word) XR_ImportInterface((word) "PropList", (word) XR_GetTypeIndexS((word) (&string18)), 13); (* (( (ptr) gf_c0134)+44)/* var_c18180 */ ) = var_c19428; (void) XR_ImportProcS(var_c19428, 135268612); var_c19428 = (word) XR_ImportInterface((word) "Xl", (word) XR_GetTypeIndexS((word) (&string19)), 218); (* (( (ptr) gf_c0134)+47)/* var_c19268 */ ) = var_c19428; (void) XR_ImportProcS(var_c19428, 534274); var_c19428 = (word) XR_ImportInterface((word) "XlBitmap", (word) XR_GetTypeIndexS((word) (&string20)), 14); (* (( (ptr) gf_c0134)+45)/* var_c19012 */ ) = var_c19428; (void) XR_ImportProcS(var_c19428, 1051140); (void) XR_ImportProcS(var_c19428, 527106); var_c19428 = (word) XR_ImportInterface((word) "XlSpeedHacks", (word) XR_GetTypeIndexS((word) (&string21)), 4); (* (( (ptr) gf_c0134)+49)/* var_c19396 */ ) = var_c19428; (void) XR_ImportProcS(var_c19428, 787203); (void) XR_ImportProcS(var_c19428, 67633666); var_c19428 = (word) XR_ExportInterface((word) "XlBWFriends", (word) XR_GetTypeIndexS((word) (&string22)), 6); (* (( (ptr) gf_c0134)+50)/* var_c19460 */ ) = var_c19428; (void) XR_ExportProcS(var_c19428, (word) (( (bPt) gf_c0134)+156)/* var_c17988 */ , 67108864, (word) "NewSRef"); (void) XR_ExportProcS(var_c19428, (word) (( (bPt) gf_c0134)+84)/* var_c17700 */ , 262401, (word) "StartWRef"); (void) XR_ExportProcS(var_c19428, (word) (( (bPt) gf_c0134)+100)/* var_c17764 */ , 262657, (word) "StopWRef"); (void) XR_ExportProcS(var_c19428, (word) (( (bPt) gf_c0134)+132)/* var_c17892 */ , 1835780, (word) "IncludeRect"); (void) XR_ExportProcS(var_c19428, (word) (( (bPt) gf_c0134)+124)/* var_c17860 */ , 525314, (word) "CancelRects"); (void) XR_ExportProcS(var_c19428, (word) (( (bPt) gf_c0134)+116)/* var_c17828 */ , 67634434, (word) "WaitLocal"); } static void XlBWFriendsImpl_P0(formal_c029, formal_c028) word formal_c029; word formal_c028; { register ptr gf_c19492 = (ptr) &globalframe; /* XlBWFriendsImpl: */ SOURCE(99, 7883) SOURCE(543, 26) (* (( (ptr) gf_c19492)+4)/* packageKey_v3000 */ ) = XR_NewObject(4, (* (( (ptr) gf_c19492)+8) )); } static word NewSRef_P60() { register ptr gf_c19524 = (ptr) &globalframe; word s_v3684; /* NewSRef: */ SOURCE(572, 187) SOURCE(572, 187) s_v3684 = XR_NewObject(60, (* (( (ptr) gf_c19524)+9) )); SOURCE(691, 68) SOURCE(692, 67) { word var_c18084; { word pd23; pd23 = (* (( (ptr) (* (( (ptr) gf_c19524)+43)/* var_c18116 */ ))+6) ); var_c18084 = (word) ( *( (fPt) ((* (ptr) pd23 ))))(200, pd23); }; { word pd24; pd24 = (* (( (ptr) (* (( (ptr) gf_c19524)+43)/* var_c18116 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd24 ))))((word) (( (bPt) s_v3684)+36), var_c18084, pd24); }; }; SOURCE(572, 187) return(s_v3684); } static word ServiceInitialize_P120(data_v9104, key_v9132) word data_v9104; word key_v9132; { register ptr gf_c19556 = (ptr) &globalframe; word val_v9176; /* ServiceInitialize: */ SOURCE(766, 69) SOURCE(766, 69) val_v9176 = (* (( (ptr) gf_c19556)+13) ); SOURCE(817, 18) return((word) NewSRef_P60()); } static word GetSeviceRef_P180(c_v3744) word c_v3744; { register ptr gf_c19588 = (ptr) &globalframe; word var_c3788; word pl_v5640; word val_v5668; W2 var_c039; /* GetSeviceRef: */ SOURCE(841, 223) SOURCE(898, 43) pl_v5640 = (* (( (ptr) c_v3744)+30) ); SOURCE(943, 98) { word pd25; pd25 = (* (( (ptr) (* (( (ptr) gf_c19588)+44)/* var_c18180 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd25 ))))((word) &var_c039, pl_v5640, (* (( (ptr) gf_c19588)+4)/* packageKey_v3000 */ ), (word) ( ( (bPt) gf_c19588)+148)/* var_c17956 */ , c_v3744, pd25); }; val_v5668 = var_c039.f0; SOURCE(1044, 20) return(XR_Narrow(val_v5668, (* (( (ptr) gf_c19588)+9) ))); } static void IncludeRect_P600(s_v4540, w_v4568, r_v4596, delayOk_v4624) word s_v4540; word w_v4568; W4 r_v4596; word delayOk_v4624; { word cost_v5836; /* IncludeRect: */ SOURCE(1983, 1603) (void) (XR_MonitorEntry(s_v4540)); { word var_c18692; word w_v17044; SOURCE(2491, 33) { W4 var_c18244; W4 box2_v17220; box2_v17220 = (* (W4Pt) (( (ptr) w_v4568)+3) ); { W2 v1_v11936; W2 v2_v11968; v1_v11936 = (* (W2Pt) &box2_v17220 ); v2_v11968 = (* (W2Pt) &r_v4596 ); if (( (int)v2_v11968.f0 >= (int)v1_v11936.f0)) { var_c18244.f0 = v2_v11968.f0; } else { var_c18244.f0 = v1_v11936.f0; }; if (( (int)v2_v11968.f1 >= (int)v1_v11936.f1)) { var_c18244.f1 = v2_v11968.f1; } else { var_c18244.f1 = v1_v11936.f1; }; }; { W2 v1_v12228; W2 v2_v12260; v1_v12228 = (* (W2Pt) (( (ptr) &r_v4596)+2) ); v2_v12260 = (* (W2Pt) (( (ptr) &box2_v17220)+2) ); if (( (int)v1_v12228.f0 <= (int)v2_v12260.f0)) { var_c18244.f2 = v1_v12228.f0; } else { var_c18244.f2 = v2_v12260.f0; }; if (( (int)v1_v12228.f1 <= (int)v2_v12260.f1)) { var_c18244.f3 = v1_v12228.f1; } else { var_c18244.f3 = v2_v12260.f1; }; }; r_v4596 = var_c18244; }; SOURCE(2526, 32) if (( (int)r_v4596.f0 >= (int)r_v4596.f2) || ( (int)r_v4596.f1 >= (int)r_v4596.f3)) { SOURCE(2552, 6) (void) (XR_MonitorExit(s_v4540)); return; }; SOURCE(2561, 520) if (((((* (( (ptr) w_v4568)+9) ) + 1) & 077) == (* (( (ptr) w_v4568)+10) ))) { SOURCE(2585, 45) (* (( (ptr) w_v4568)+342) ) = ((* (( (ptr) w_v4568)+342) ) + 1); SOURCE(2632, 22) (void) (XR_Wait(s_v4540, (word) (( (bPt) w_v4568)+1372))); SOURCE(2978, 45) (* (( (ptr) w_v4568)+342) ) = ((* (( (ptr) w_v4568)+342) ) - 1); SOURCE(3025, 56) if (((((* (( (ptr) w_v4568)+9) ) + 1) & 077) == (* (( (ptr) w_v4568)+10) ))) { SOURCE(3049, 32) { W4 var_c18436; W4 box1_v16908; W4 box2_v16936; box1_v16908 = r_v4596; { W4 r_v16812; { word ox_v5752; SOURCE(1472, 141) r_v16812.f0 = 0; r_v16812.f1 = 0; r_v16812.f2 = 0; r_v16812.f3 = 0; ox_v5752 = (* (( (ptr) w_v4568)+10) ); SOURCE(1568, 15) r_v16812 = (* (( (W4Pt) (( (ptr) w_v4568)+75))+ox_v5752) ); SOURCE(1585, 28) (* (( (ptr) w_v4568)+10) ) = ((ox_v5752 + 1) & 077); SOURCE(1472, 141) box2_v16936 = r_v16812; }; }; SOURCE(1680, 89) { W2 v1_v17452; W2 v2_v17480; v1_v17452 = (* (W2Pt) &box1_v16908 ); v2_v17480 = (* (W2Pt) &box2_v16936 ); if (( (int)v1_v17452.f0 <= (int)v2_v17480.f0)) { var_c18436.f0 = v1_v17452.f0; } else { var_c18436.f0 = v2_v17480.f0; }; if (( (int)v1_v17452.f1 <= (int)v2_v17480.f1)) { var_c18436.f1 = v1_v17452.f1; } else { var_c18436.f1 = v2_v17480.f1; }; }; { W2 v1_v17300; W2 v2_v17328; v1_v17300 = (* (W2Pt) (( (ptr) &box1_v16908)+2) ); v2_v17328 = (* (W2Pt) (( (ptr) &box2_v16936)+2) ); if (( (int)v2_v17328.f0 >= (int)v1_v17300.f0)) { var_c18436.f2 = v2_v17328.f0; } else { var_c18436.f2 = v1_v17300.f0; }; if (( (int)v2_v17328.f1 >= (int)v1_v17300.f1)) { var_c18436.f3 = v2_v17328.f1; } else { var_c18436.f3 = v1_v17300.f1; }; }; r_v4596 = var_c18436; }; }; }; SOURCE(3089, 14) SOURCE(1904, 75) cost_v5836 = IOP2( * , (int)(r_v4596.f2 - r_v4596.f0), (int)(IOP2( / , (int)(r_v4596.f3 + 3), (int)4) - IOP2( / , (int)r_v4596.f1, (int)4) )); SOURCE(3105, 31) lab_L100010: ; { word x26; w_v17044 = w_v4568; { word count_v6116; count_v6116 = ((((* (( (ptr) w_v17044)+9) ) + 64) - (* (( (ptr) w_v17044)+10) )) & 077); SOURCE(2180, 266) { register word i_v6144 = 0; if (( (int)i_v6144 >= (int)count_v6116)) { goto lab_L100011; }; lab_L100014: ; { word this_v6172; W4 uRect_v6200; word uCost_v6228; this_v6172 = ((((* (( (ptr) w_v17044)+9) ) + 63) - i_v6144) & 077); { W4 box2_v16860; box2_v16860 = (* (( (W4Pt) (( (ptr) w_v17044)+75))+this_v6172) ); SOURCE(1680, 89) { W2 v1_v17528; W2 v2_v17556; v1_v17528 = (* (W2Pt) &r_v4596 ); v2_v17556 = (* (W2Pt) &box2_v16860 ); if (( (int)v1_v17528.f0 <= (int)v2_v17556.f0)) { uRect_v6200.f0 = v1_v17528.f0; } else { uRect_v6200.f0 = v2_v17556.f0; }; if (( (int)v1_v17528.f1 <= (int)v2_v17556.f1)) { uRect_v6200.f1 = v1_v17528.f1; } else { uRect_v6200.f1 = v2_v17556.f1; }; }; { W2 v1_v17376; W2 v2_v17404; v1_v17376 = (* (W2Pt) (( (ptr) &r_v4596)+2) ); v2_v17404 = (* (W2Pt) (( (ptr) &box2_v16860)+2) ); if (( (int)v2_v17404.f0 >= (int)v1_v17376.f0)) { uRect_v6200.f2 = v2_v17404.f0; } else { uRect_v6200.f2 = v1_v17376.f0; }; if (( (int)v2_v17404.f1 >= (int)v1_v17376.f1)) { uRect_v6200.f3 = v2_v17404.f1; } else { uRect_v6200.f3 = v1_v17376.f1; }; }; }; SOURCE(1904, 75) uCost_v6228 = IOP2( * , (int)(uRect_v6200.f2 - uRect_v6200.f0), (int)(IOP2( / , (int)(uRect_v6200.f3 + 3), (int)4) - IOP2( / , (int)uRect_v6200.f1, (int)4))); SOURCE(2331, 115) if (( (int)uCost_v6228 <= (int)((cost_v5836 + (* ((( (ptr) w_v17044)+11)+this_v6172) )) + (* (( (ptr) w_v17044)+8) )))) { SOURCE(2382, 9) r_v4596 = uRect_v6200; SOURCE(2394, 12) cost_v5836 = uCost_v6228; SOURCE(2408, 23) { word s_v16660; word w_v16688; s_v16660 = s_v4540; w_v16688 = w_v17044; { word lix_v5724; lix_v5724 = (((* (( (ptr) w_v16688)+9) ) + 63) & 077); SOURCE(1383, 68) if ((lix_v5724 != this_v6172)) { SOURCE(1399, 25) /*1*/ (* (( (W4Pt) (( (ptr) w_v16688)+75))+this_v6172) ) = (* (( (W4Pt) (( (ptr) w_v16688)+75))+lix_v5724) ); SOURCE(1426, 25) /*1*/ (* ((( (ptr) w_v16688)+11)+this_v6172) ) = (* ((( (ptr) w_v16688)+11)+lix_v5724) ); /*1*/ }; SOURCE(1456, 10) (* (( (ptr) w_v16688)+9) ) = lix_v5724; }; }; SOURCE(2433, 13) var_c18692 = 1; goto lab_L100019; }; }; i_v6144 = (i_v6144 + 1); if ((i_v6144 < count_v6116)) { goto lab_L100014; }; lab_L100011: ; }; SOURCE(2461, 14) var_c18692 = 0; }; lab_L100019: ; x26 = (word) var_c18692; if (x26) { } else { goto lab_L100008; }; }; goto lab_L100010; lab_L100008: ; SOURCE(3138, 88) { word i_v5984; SOURCE(3144, 15) i_v5984 = (* (( (ptr) w_v4568)+9) ); SOURCE(3161, 14) (* (( (W4Pt) (( (ptr) w_v4568)+75))+i_v5984) ) = r_v4596; SOURCE(3178, 17) (* ((( (ptr) w_v4568)+11)+i_v5984) ) = cost_v5836; SOURCE(3197, 27) (* (( (ptr) w_v4568)+9) ) = ((i_v5984 + 1) & 077); }; SOURCE(3231, 16) (* (( (ptr) s_v4540)+7) ) = 1; SOURCE(3249, 337) if ((0 != (* (( (ptr) s_v4540)+8) ))) { SOURCE(3453, 137) SOURCE(3481, 105) if ((0 == delayOk_v4624) || (((((* (( (ptr) w_v4568)+9) ) + 64) - (* (( (ptr) w_v4568)+10) )) & 077) > 4)) { SOURCE(3561, 25) (void) (XR_Notify((word) (( (bPt) s_v4540)+36))); }; }; }; SOURCE(1983, 1603) (void) (XR_MonitorExit(s_v4540)); return; } static void CancelRects_P660(s_v4684, w_v4712) word s_v4684; word w_v4712; { /* CancelRects: */ SOURCE(3599, 178) (void) (XR_MonitorEntry(s_v4684)); SOURCE(3653, 124) if (((* (( (ptr) w_v4712)+9) ) != (* (( (ptr) w_v4712)+10) ))) { SOURCE(3679, 11) (* (( (ptr) w_v4712)+10) ) = (* (( (ptr) w_v4712)+9) ); SOURCE(3692, 29) (* (( (ptr) w_v4712)+332) ) = ((* (( (ptr) w_v4712)+332) ) + 1); SOURCE(3723, 54) if (( (int)(* (( (ptr) w_v4712)+335) ) > (int)0)) { SOURCE(3752, 25) (void) (XR_Broadcast((word) (( (bPt) w_v4712)+1344))); }; }; SOURCE(3599, 178) (void) (XR_MonitorExit(s_v4684)); return; } static word WaitLocal_P720(s_v4772, w_v4800) word s_v4772; word w_v4800; { word timedOut_v4844; /* WaitLocal: */ SOURCE(3786, 292) (void) (XR_MonitorEntry(s_v4772)); SOURCE(3786, 292) timedOut_v4844 = 0; SOURCE(3871, 207) if (((* (( (ptr) w_v4800)+9) ) != (* (( (ptr) w_v4800)+10) ))) { SOURCE(3895, 185) { word cnt_v6256; SOURCE(3897, 24) cnt_v6256 = (* (( (ptr) w_v4800)+332) ); SOURCE(3923, 41) (* (( (ptr) w_v4800)+335) ) = ((* (( (ptr) w_v4800)+335) ) + 1); SOURCE(3966, 20) (void) (XR_Wait(s_v4772, (word) (( (bPt) w_v4800)+1344))); SOURCE(3988, 41) (* (( (ptr) w_v4800)+335) ) = ((* (( (ptr) w_v4800)+335) ) - 1); SOURCE(4031, 47) if (((* (( (ptr) w_v4800)+332) ) == cnt_v6256)) { timedOut_v4844 = (unsigned) ((* (( (ptr) w_v4800)+9) ) != (* (( (ptr) w_v4800)+10) )); } else { timedOut_v4844 = (unsigned) 0; }; }; }; SOURCE(3786, 292) (void) (XR_MonitorExit(s_v4772)); return(timedOut_v4844); } static void ConsumeRect_P780(formal_c088, s_v4904, w_v4932) word formal_c088; word s_v4904; word w_v4932; { W4 b_v4976; /* ConsumeRect: */ SOURCE(4087, 388) (void) (XR_MonitorEntry(s_v4904)); SOURCE(4087, 388) b_v4976.f0 = 0; b_v4976.f1 = 0; b_v4976.f2 = 0; b_v4976.f3 = 0; SOURCE(4199, 161) if (((* (( (ptr) w_v4932)+9) ) == (* (( (ptr) w_v4932)+10) ))) { SOURCE(4225, 87) if (( (int)(* (( (ptr) w_v4932)+335) ) > (int)0)) { SOURCE(4256, 29) (* (( (ptr) w_v4932)+332) ) = ((* (( (ptr) w_v4932)+332) ) + 1); SOURCE(4287, 25) (void) (XR_Broadcast((word) (( (bPt) w_v4932)+1344))); }; SOURCE(4317, 9) b_v4976.f0 = 2147483647; b_v4976.f1 = 2147483647; b_v4976.f2 = 2147483648; b_v4976.f3 = 2147483648; } else { SOURCE(4338, 22) { W4 var_c18948; W4 r_v16736; { word ox_v16768; SOURCE(1472, 141) r_v16736.f0 = 0; r_v16736.f1 = 0; r_v16736.f2 = 0; r_v16736.f3 = 0; ox_v16768 = (* (( (ptr) w_v4932)+10) ); SOURCE(1568, 15) r_v16736 = (* (( (W4Pt) (( (ptr) w_v4932)+75))+ox_v16768) ); SOURCE(1585, 28) (* (( (ptr) w_v4932)+10) ) = ((ox_v16768 + 1) & 077); SOURCE(1472, 141) var_c18948 = r_v16736; }; b_v4976 = var_c18948; }; }; SOURCE(4365, 110) if ( ( ( (int)(* (( (ptr) w_v4932)+342) ) > (int)0) ? (((((* (( (ptr) w_v4932)+9) ) + 64) - (* (( (ptr) w_v4932)+10) )) & 077) > 5) : 0 ) ) { SOURCE(4451, 24) (void) (XR_Notify((word) (( (bPt) w_v4932)+1372))); }; /* removed tail goto */ (void) (XR_MonitorExit(s_v4904)); (* (W4Pt) formal_c088 ) = b_v4976; return; } static void StopWRef_P840(w_v5036) word w_v5036; { W6 var_c19620; register ptr gf_c19652 = (ptr) &globalframe; /* declaration of var_c18980 skipped */ /* StopWRef: */ SOURCE(4481, 670) { word tmpAddr27; tmpAddr27 = (word) (( (ptr) &var_c19620)+4)/* var_c18980 */ ; (* (ptr) tmpAddr27 ) = ( ((word) (fPt) EntryRemH_P1668) ); (* (( (ptr) tmpAddr27) + 1) ) = 1; }; SOURCE(5048, 103) if ((w_v5036 != 0)) { SOURCE(5062, 91) { word s_v6476; SOURCE(5064, 13) s_v6476 = (* (( (ptr) w_v5036)+7) ); SOURCE(5079, 29) if ((s_v6476 != 0)) { SOURCE(5093, 15) (void) EntryRemH_P1668(s_v6476, w_v5036, (word) (( (bPt) &var_c19620)+16)/* var_c18980 */ ); }; SOURCE(5110, 41) { word pd28; pd28 = (* (( (ptr) (* (( (ptr) gf_c19652)+45)/* var_c19012 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd28 ))))((* (( (ptr) w_v5036)+1) ), w_v5036, pd28); }; }; }; } static void EntryRemH_P1668(s_v6420, w_v6448, formal_c19684) word s_v6420; word w_v6448; word formal_c19684; { formal_c19684 = (formal_c19684 - 16); /* EntryRemH: */ SOURCE(4517, 526) (void) (XR_MonitorEntry(s_v6420)); SOURCE(4562, 11) (* (( (ptr) w_v6448)+10) ) = (* (( (ptr) w_v6448)+9) ); SOURCE(4575, 186) if (((* (ptr) (* (( (ptr) s_v6420)+5) ) ) == w_v6448)) { SOURCE(4605, 38) (* (( (ptr) s_v6420)+5) ) = (* (( (ptr) (* (( (ptr) s_v6420)+5) ))+1) ); } else { SOURCE(4645, 116) { register word l_v6520; l_v6520 = (* (( (ptr) s_v6420)+5) ); lab_L100026: ; if ( ( (l_v6520 != 0) ? ((* (( (ptr) l_v6520)+1) ) != 0) : 0 ) ) { } else { goto lab_L100023; }; SOURCE(4718, 43) if (((* (ptr) (* (( (ptr) l_v6520)+1) ) ) == w_v6448)) { SOURCE(4741, 20) (* (( (ptr) l_v6520)+1) ) = (* (( (ptr) (* (( (ptr) l_v6520)+1) ))+1) ); }; l_v6520 = (* (( (ptr) l_v6520)+1) ); goto lab_L100026; lab_L100023: ; }; }; SOURCE(4775, 16) (* (( (ptr) s_v6420)+7) ) = 1; SOURCE(4793, 58) if ( ( ((* (( (ptr) s_v6420)+6) ) != 0) ? ((* (ptr) (* (( (ptr) s_v6420)+6) ) ) == w_v6448) : 0 ) ) { SOURCE(4831, 20) (* (( (ptr) s_v6420)+6) ) = (* (( (ptr) (* (( (ptr) s_v6420)+6) ))+1) ); }; SOURCE(4853, 50) if ((0 != (* (( (ptr) s_v6420)+8) ))) { SOURCE(4878, 25) (void) (XR_Notify((word) (( (bPt) s_v6420)+36))); }; SOURCE(4929, 54) if (( (int)(* (( (ptr) w_v6448)+335) ) > (int)0)) { SOURCE(4958, 25) (void) (XR_Broadcast((word) (( (bPt) w_v6448)+1344))); }; SOURCE(4985, 58) if (( (int)(* (( (ptr) w_v6448)+342) ) > (int)0)) { SOURCE(5016, 27) (void) (XR_Broadcast((word) (( (bPt) w_v6448)+1372))); }; SOURCE(4517, 526) (void) (XR_MonitorExit(s_v6420)); return; } static void InterceptedRefresh_P900(box_v9236, data_v9264, delayOk_v9292) W4 box_v9236; word data_v9264; word delayOk_v9292; { register ptr gf_c19716 = (ptr) &globalframe; word w_v6648; /* InterceptedRefresh: */ SOURCE(5159, 102) SOURCE(5204, 22) w_v6648 = XR_Narrow(data_v9264, (* (( (ptr) gf_c19716)+12) )); SOURCE(5228, 33) (void) IncludeRect_P600((* (( (ptr) w_v6648)+7) ), w_v6648, box_v9236, delayOk_v9292); } static void StartWRef_P960(w_v5096) word w_v5096; { W6 var_c19748; register ptr gf_c19780 = (ptr) &globalframe; /* declaration of var_c19044 skipped */ word s_v6720; /* StartWRef: */ SOURCE(5267, 747) { word tmpAddr29; tmpAddr29 = (word) (( (ptr) &var_c19748)+4)/* var_c19044 */ ; (* (ptr) tmpAddr29 ) = ( ((word) (fPt) EntryAddH_P1824) ); (* (( (ptr) tmpAddr29) + 1) ) = 1; }; SOURCE(5634, 13) s_v6720 = (* (( (ptr) w_v5096)+7) ); SOURCE(5649, 41) if ((s_v6720 == 0)) { SOURCE(5663, 27) { word var_c19076; var_c19076 = (word) GetSeviceRef_P180((* (ptr) (w_v5096) )); (* (( (ptr) w_v5096)+7) ) = var_c19076; s_v6720 = var_c19076; }; }; SOURCE(5700, 131) SOURCE(5702, 62) { word var_c19108; { word pd30; pd30 = (* (( (ptr) (* (( (ptr) gf_c19780)+43)/* var_c18116 */ ))+6) ); var_c19108 = (word) ( *( (fPt) ((* (ptr) pd30 ))))(200, pd30); }; { word pd31; pd31 = (* (( (ptr) (* (( (ptr) gf_c19780)+43)/* var_c18116 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd31 ))))((word) (( (bPt) w_v5096)+1344), var_c19108, pd31); }; }; SOURCE(5766, 63) { word var_c19140; { word pd32; pd32 = (* (( (ptr) (* (( (ptr) gf_c19780)+43)/* var_c18116 */ ))+6) ); var_c19140 = (word) ( *( (fPt) ((* (ptr) pd32 ))))(80, pd32); }; { word pd33; pd33 = (* (( (ptr) (* (( (ptr) gf_c19780)+43)/* var_c18116 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd33 ))))((word) (( (bPt) w_v5096)+1372), var_c19140, pd33); }; }; SOURCE(5834, 180) if ((s_v6720 != 0)) { SOURCE(5848, 168) { word mustStart_v6896; SOURCE(5850, 33) mustStart_v6896 = (word) EntryAddH_P1824(s_v6720, w_v5096, (word) (( (bPt) &var_c19748)+16)/* var_c19044 */ ); SOURCE(5885, 68) { word pd34; pd34 = (* (( (ptr) (* (( (ptr) gf_c19780)+45)/* var_c19012 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd34 ))))((* (( (ptr) w_v5096)+1) ), (word) (( (bPt) gf_c19780)+92)/* var_c17732 */ , 0, w_v5096, pd34) ; }; SOURCE(5955, 59) if ((0 != mustStart_v6896)) { SOURCE(5973, 41) { word pd35; pd35 = (* (( (ptr) (* (( (ptr) gf_c19780)+46)/* var_c19172 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd35 ))))(0, (word) (( (bPt) gf_c19780)+68)/* var_c17636 */ , s_v6720, 2, pd35); }; }; }; }; } static word EntryAddH_P1824(s_v6796, w_v6824, formal_c19844) word s_v6796; word w_v6824; word formal_c19844; { register ptr gf_c19812 = (ptr) &globalframe; word mustStart_v6868; formal_c19844 = (formal_c19844 - 16); /* EntryAddH: */ SOURCE(5304, 325) (void) (XR_MonitorEntry(s_v6796)); SOURCE(5304, 325) mustStart_v6868 = 0; SOURCE(5383, 90) { register word l_v6940; l_v6940 = (* (( (ptr) s_v6796)+5) ); lab_L100030: ; if ((l_v6940 != 0)) { } else { goto lab_L100027; }; SOURCE(5441, 32) if (((* (ptr) l_v6940 ) == w_v6824)) { SOURCE(5459, 14) (void) (XR_MonitorExit(s_v6796)); return(0); }; l_v6940 = (* (( (ptr) l_v6940)+1) ); goto lab_L100030; lab_L100027: ; }; SOURCE(5512, 36) { word var_c19204; var_c19204 = XR_NewObject(8, (* (( (ptr) gf_c19812)+7) )); (* (ptr) var_c19204 ) = w_v6824; (* (( (ptr) var_c19204)+1) ) = (* (( (ptr) s_v6796)+5) ); (* (( (ptr) s_v6796)+5) ) = var_c19204; }; SOURCE(5550, 60) if ((0 == (* (( (ptr) s_v6796)+4) ))) { SOURCE(5576, 34) mustStart_v6868 = 1; (* (( (ptr) s_v6796)+4) ) = 1; }; SOURCE(5613, 16) (* (( (ptr) s_v6796)+7) ) = 1; SOURCE(5304, 325) (void) (XR_MonitorExit(s_v6796)); return(mustStart_v6868); } static word ResetConsumers_P1020(s_v5156) word s_v5156; { word mustExit_v5200; word next_v7068; /* ResetConsumers: */ SOURCE(6023, 187) (void) (XR_MonitorEntry(s_v5156)); SOURCE(6089, 6) next_v7068 = (* (( (ptr) s_v5156)+5) ); (* (( (ptr) s_v5156)+6) ) = next_v7068; SOURCE(6133, 77) mustExit_v5200 = (unsigned) (next_v7068 == 0); if ((0 != mustExit_v5200)) { SOURCE(6164, 29) (* (( (ptr) s_v5156)+4) ) = 0; } else { SOURCE(6193, 17) (* (( (ptr) s_v5156)+7) ) = 0; }; SOURCE(6023, 187) (void) (XR_MonitorExit(s_v5156)); return(mustExit_v5200); } static void ServiceProcess_P1200(formal_c0157) word formal_c0157; { W5 var_c19876; /* declaration of x_v5424 skipped */ register ptr gf_c19908 = (ptr) &globalframe; var_c19876.f4/* x_v5424 */ = formal_c0157; /* ServiceProcess: */ SOURCE(6547, 708) SOURCE(6579, 676) SOURCE(6581, 598) { word var_c01; { word var_c0150; var_c0150 = (word) &var_c19876; var_c01 = (word) XR_Enable(( ((word) (fPt) NoName_Q3576) ), ( ((word) (fPt) NoName_Q3636) ), var_c0150); }; if ((var_c01 == 2)) { goto lab_L100031; } else { if ((var_c01 == 1)) { goto lab_L02; }; }; }; goto lab_L100045; lab_L100031: ; SOURCE(7207, 43) { word pd36; pd36 = (* (( (ptr) (* (( (ptr) gf_c19908)+46)/* var_c19172 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd36 ))))(100, (word) (( (bPt) gf_c19908)+68)/* var_c17636 */ , var_c19876.f4/* x_v5424 */ , 2, pd36) ; }; lab_L100045: ; lab_L02: ; return; } static word NoName_Q3576(formal_c0147) word formal_c0147; { register ptr gf_c0146 = (ptr) &globalframe; SOURCE(6643, 19) { word s_v7308; SOURCE(6643, 19) s_v7308 = XR_Narrow((* (( (ptr) formal_c0147)+4) ), (* (( (ptr) gf_c0146)+9) )); SOURCE(6664, 47) { word pd37; pd37 = (* (( (ptr) (* (( (ptr) gf_c0146)+43)/* var_c18116 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd37 ))))(3, pd37); }; SOURCE(6713, 466) lab_L100036: ; SOURCE(6713, 466) { word dontSleep_v7352 = 0; SOURCE(6741, 41) if ((0 != (word) ResetConsumers_P1020(s_v7308))) { SOURCE(6776, 6) return(1); }; SOURCE(6785, 86) lab_L100039: ; SOURCE(6785, 86) { word w_v7396; SOURCE(6788, 25) { word w_v17172; SOURCE(6216, 165) (void) (XR_MonitorEntry(s_v7308)); { word next_v7196; SOURCE(6216, 165) w_v17172 = 0; next_v7196 = (* (( (ptr) s_v7308)+6) ); SOURCE(6315, 66) if ((next_v7196 != 0)) { SOURCE(6334, 14) w_v17172 = (* (ptr) next_v7196 ); SOURCE(6362, 19) (* (( (ptr) s_v7308)+6) ) = (* (( (ptr) next_v7196)+1) ); }; SOURCE(6216, 165) w_v7396 = w_v17172; }; (void) (XR_MonitorExit(s_v7308)); }; SOURCE(6815, 14) if ((w_v7396 == 0)) { SOURCE(6829, 4) goto lab_L100038; }; SOURCE(6835, 36) if ((0 != (word) Visit_P1260(s_v7308, w_v7396))) { dontSleep_v7352 = (unsigned) 1; } else { dontSleep_v7352 = (unsigned) (0 != dontSleep_v7352); }; }; goto lab_L100039; lab_L100038: ; SOURCE(6882, 121) if ((0 == dontSleep_v7352)) { SOURCE(6904, 37) if ((0 == (* (( (ptr) s_v7308)+7) ))) { SOURCE(6923, 18) SOURCE(6923, 18) (void) (XR_MonitorEntry(s_v7308)); SOURCE(6437, 95) lab_L100043: ; if ((0 == (* (( (ptr) s_v7308)+7) ))) { } else { goto lab_L100041; }; SOURCE(6458, 23) (* (( (ptr) s_v7308)+8) ) = 1; SOURCE(6483, 23) (void) (XR_Wait(s_v7308, (word) (( (bPt) s_v7308)+36))); SOURCE(6508, 24) (* (( (ptr) s_v7308)+8) ) = 0; goto lab_L100043; lab_L100041: ; (void) (XR_MonitorExit(s_v7308)); }; SOURCE(6988, 15) { word pd38; pd38 = (* (( (ptr) (* (( (ptr) gf_c0146)+43)/* var_c18116 */ ))+23) ); (void) ( *( (fPt) ((* (ptr) pd38 ))))(pd38); }; }; }; goto lab_L100036; }; /* c2c skipped dead code */ } static word Visit_P1260(s_v5496, w_v5524) word s_v5496; word w_v5524; { register ptr gf_c19940 = (ptr) &globalframe; word var_c5568; word flushWhenDone_v7440; /* Visit: */ SOURCE(7260, 722) SOURCE(7324, 43) flushWhenDone_v7440 = (unsigned) ((* (( (ptr) w_v5524)+349) ) != 0); SOURCE(7369, 553) { register word noName_c19364 = 0; if ((noName_c19364 > 9)) { goto lab_L100046; }; lab_L100049: ; { W4 r_v7484; SOURCE(7395, 29) (void) ConsumeRect_P780((word) &r_v7484, s_v5496, w_v5524); SOURCE(7426, 120) if (( (int)r_v7484.f3 <= (int)r_v7484.f1)) { SOURCE(7463, 64) if ((0 != flushWhenDone_v7440)) { SOURCE(7489, 23) (* (( (ptr) w_v5524)+349) ) = 0; SOURCE(7514, 13) { word pd39; pd39 = (* (( (ptr) (* (( (ptr) gf_c19940)+47)/* var_c19268 */ ))+43) ); (void) ( *( (fPt) ((* (ptr) pd39 ))))((* (ptr) w_v5524 ), 0, pd39); }; }; SOURCE(7532, 14) return(0); }; SOURCE(7551, 101) { register word rl_v7528; rl_v7528 = (* (( (ptr) w_v5524)+2) ); lab_L100053: ; if ((rl_v7528 != 0)) { } else { goto lab_L100050; }; SOURCE(7613, 39) { word pd40; pd40 = (* (ptr) rl_v7528 ); (void) ( *( (fPt) ((* (ptr) pd40 ))))(r_v7484, (* (( (ptr) rl_v7528)+1) ), pd40); }; rl_v7528 = (* (( (ptr) rl_v7528)+2) ); goto lab_L100053; lab_L100050: ; }; SOURCE(7654, 37) (* (( (ptr) w_v5524)+333) ) = ((* (( (ptr) w_v5524)+333) ) + 1); SOURCE(7693, 204) if (( (int)(* (( (ptr) w_v5524)+333) ) > (int)(* (( (ptr) w_v5524)+334) ))) { SOURCE(7737, 162) { word newSNo_v7656; SOURCE(7739, 59) { word pd41; pd41 = (* (( (ptr) (* (( (ptr) gf_c19940)+49)/* var_c19396 */ ))+6) ); newSNo_v7656 = (word) ( *( (fPt) ((* (ptr) pd41 ))))((* (ptr) w_v5524 ), 1, pd41); }; SOURCE(7800, 20) (* (( (ptr) w_v5524)+333) ) = 0; SOURCE(7822, 59) if (((* (( (ptr) w_v5524)+331) ) != 0)) { SOURCE(7838, 43) { word pd42; pd42 = (* (( (ptr) (* (( (ptr) gf_c19940)+49)/* var_c19396 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd42 ))))((* (ptr) w_v5524 ), (* (( (ptr) w_v5524)+331) ), 0, pd42); }; }; SOURCE(7883, 14) (* (( (ptr) w_v5524)+331) ) = newSNo_v7656; }; }; SOURCE(7902, 20) flushWhenDone_v7440 = 1; }; if ((noName_c19364 >= 9)) { goto lab_L100046; }; noName_c19364 = (noName_c19364 + 1); goto lab_L100049; lab_L100046: ; }; SOURCE(7933, 34) (* (( (ptr) w_v5524)+349) ) = (* (( (ptr) gf_c19940)+14) ); SOURCE(7969, 13) return(1); } static void NoName_Q3636(formal_c0133, formal_c200000, formal_c200001, formal_c200002, formal_c200003) word formal_c0133; word formal_c200000; word formal_c200001; word formal_c200002; word formal_c200003; { register ptr gf_c0149 = (ptr) &globalframe; if (((formal_c200001 == (* (( (ptr) (* (( (ptr) gf_c0149)+47)/* var_c19268 */ ))+4) )) || (formal_c200001 == (* (( (ptr) (* ( ( (ptr) gf_c0149)+48)/* var_c19300 */ ))+5) ))) || (formal_c200001 == (* (( (ptr) (* (( (ptr) gf_c0149)+48)/* var_c19300 */ ))+4) ))) { SOURCE(6629, 9) (* (ptr) formal_c0133 ) = 2; (* (( (ptr) formal_c0133)+1) ) = 2; return; }; (* (ptr) formal_c0133 ) = 0; (* (( (ptr) formal_c0133)+1) ) = 0; return; } /* file: XlBWFriendsImpl, module: XlBWFriendsImpl, compiled at: October 21, 1993 10:05:21 am PDT */ extern void XR_install_XlBWFriendsImpl() { NoName_Q3516(); } extern void XR_run_XlBWFriendsImpl() { XR_Start(&globalframe); }