/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */ /* time: September 14, 1993 4:27:50 pm PDT */ /* C2C version: April 20, 1993 (sun4) */ /* ref-counting: off */ /* file: XlDispatchImpl, module: XlDispatchImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> #define XRM←BITAND(x, y) (((word)(x)) & ((word)(y))) #define XRM←BITOR(x, y) (((word)(x)) | ((word)(y))) static char versionStamp[] = "@(#)mob←version [2982540542,2787658233] XlDispatchImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef struct {word f0, f1;} W2; typedef word (*fPt)(); typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7; typedef W7 *W7Pt; typedef W2 *W2Pt; typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8; typedef struct {W8 f; W2 r;} W10; typedef struct {word f0, f1, f2;} W3; typedef struct {W8 f; W3 r;} W11; typedef struct {word f0, f1, f2, f3, f4, f5;} W6; #define SOURCE(p, l) /* source p, l */ #define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) ) #define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i ) static void NoName←Q4512(); static void XlDispatchImpl←P0(); static void NotYetDefined←P60(); static void ProcRemoved←P120(); static word GetCache←P180(); static word GetDispatchHandle←P240(); static void FindAndDispatch←P360(); static void Dispatch←P420(); static void DispatchExplicite←P480(); static void DispatchOneList←P540(); static void RemoveWindowData←P600(); static word GetWindowData←P660(); static word GetOrCreateWindowData←P720(); static word UsedLength←P780(); static void SetDispatchList←P840(); static word GetDispatchList←P900(); static void EnsureEntry←P960(); static void AddMatchToList←P1020(); static void RemoveMatchFromList←P1080(); static word GetInternalEvents←P1140(); static void PrivateChangeEvents←P1200(); static void InternalAddMatch←P1260(); static void AddMatches←P1320(); static void AddMatch←P1380(); static void action←P3168(); static void RemoveMatch←P1440(); static void action←P3228(); static void AddMatchForUnregistered←P1500(); static void action←P3384(); static word EnforcedSetOfEvent←P1560(); static void AddPriviledgedMatch←P1620(); static void action←P3492(); static void RemovePriviledgedMatch←P1680(); static void action←P3552(); static void CheckForEmpty←P3612(); static void InitWindow←P1740(); static void RemoveWindow←P1800(); static void InitConnection←P1860(); static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\261\305\364\376\300\246\050\111\371\100\200\000\000"}; static struct {unsigned f; char r[4];} string2 = {131074, "\004\017\000"}; static struct {unsigned f; char r[16];} string3 = {851984, "\257\300\261\305\364\376\300\246\050\111\371\100\260\000\000"}; static struct {unsigned f; char r[4];} string4 = {65537, "\001\000\000"}; static struct {unsigned f; char r[16];} string5 = {851984, "\257\300\324\170\077\160\300\025\257\222\122\100\164\000\000"}; static struct {unsigned f; char r[4];} string6 = {131074, "\004\003\000"}; static struct {unsigned f; char r[16];} string7 = {917520, "\216\257\300\261\305\364\376\300\246\050\111\371\100\214\000"}; static struct {unsigned f; char r[16];} string8 = {851984, "\257\300\261\305\364\376\300\246\050\111\371\100\214\000\000"}; static struct {unsigned f; char r[12];} string9 = {589833, "\011\000\034 \000\010\0044\000\000"}; static struct {unsigned f; char r[16];} string10 = {851984, "\257\300\261\305\364\376\300\246\050\111\371\100\164\000\000"}; static struct {unsigned f; char r[4];} string11 = {131074, "\003\010\000"}; static struct {unsigned f; char r[16];} string12 = {851984, "\257\300\223\215\300\016\300\070\141\304\023\100\150\000\000"}; static unsigned string13 = 1483472896; static struct {unsigned f; char r[16];} string14 = {851984, "\257\300\351\276\264\273\300\115\104\320\264\100\164\000\000"}; static struct {unsigned f; char r[16];} string15 = {851984, "\257\300\337\070\153\303\300\227\216\321\214\100\150\000\000"}; static struct {unsigned f; char r[16];} string16 = {851984, "\257\300\304\042\023\266\300\315\144\243\337\100\150\000\000"}; static struct {unsigned f; char r[16];} string17 = {851984, "\257\300\044\126\136\322\300\125\273\233\107\100\150\000\000"}; static struct {unsigned f; char r[32];} string18 = {1900576, "\211\021\020\104\151\163\160\141\164\143\150\123\164\165\146\146\122\145\160\300\351\276\264\273\300\115\104\320\264\000\000"}; static struct {unsigned f; char r[16];} string19 = {851984, "\257\300\122\362\040\033\300\221\350\241\274\100\150\000\000"}; static struct {unsigned f; char r[32];} string20 = {1966112, "\211\022\021\104\151\163\160\141\164\143\150\110\141\156\144\154\145\122\145\143\300\122\362\040\033\300\221\350\241\274\000"}; static struct {unsigned f; char r[28];} string21 = {1703964, "\211\016\015\127\151\156\144\157\167\104\141\164\141\122\145\143\300\122\362\040\033\300\221\350\241\274\000"}; static struct {unsigned f; char r[16];} string22 = {851984, "\257\300\324\170\077\160\300\025\257\222\122\100\150\000\000"}; static struct { word f0[18]; 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; word f43; word f44; word f45; word f46; word f47; word f48; word f49; word f50; word f51; word f52; word f53; word f54; word f55; word f56; word f57; word f58; word f59; word f60; word f61; word f62; word f63; word f64; word f65; word f66; word f67; word f68; word f69; word f70; word f71; word f72; word f73; word f74; word f75; word f76; word f77; word f78; word f79[8]; } globalframe = { {0}, (word) InitConnection←P1860, 0, (word) RemoveWindow←P1800, 0, (word) InitWindow←P1740, 0, (word) RemovePriviledgedMatch←P1680, 0, (word) AddPriviledgedMatch←P1620, 0, (word) EnforcedSetOfEvent←P1560, 0, (word) AddMatchForUnregistered←P1500, 0, (word) RemoveMatch←P1440, 0, (word) AddMatch←P1380, 0, (word) AddMatches←P1320, 0, (word) InternalAddMatch←P1260, 0, (word) PrivateChangeEvents←P1200, 0, (word) GetInternalEvents←P1140, 0, (word) RemoveMatchFromList←P1080, 0, (word) AddMatchToList←P1020, 0, (word) EnsureEntry←P960, 0, (word) GetDispatchList←P900, 0, (word) SetDispatchList←P840, 0, (word) UsedLength←P780, 0, (word) GetOrCreateWindowData←P720, 0, (word) GetWindowData←P660, 0, (word) RemoveWindowData←P600, 0, (word) DispatchOneList←P540, 0, (word) DispatchExplicite←P480, 0, (word) Dispatch←P420, 0, (word) FindAndDispatch←P360, 0, (word) GetDispatchHandle←P240, 0, (word) GetCache←P180, 0, (word) ProcRemoved←P120, 0, (word) NotYetDefined←P60, 0, (word) XlDispatchImpl←P0, {0} }; static void NoName←Q4512() { register ptr gf←c0248 = (ptr) &globalframe; word var←c22200; (* (( (ptr) gf←c0248)+9) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2); (* (( (ptr) gf←c0248)+10) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4); (* (( (ptr) gf←c0248)+11) ) = (word) XR←GetTypeIndex((word) &string5, 0, (word) &string6); (* (( (ptr) gf←c0248)+15) ) = (word) XR←GetTypeIndex((word) &string7, 0, (word) &string4); (* (( (ptr) gf←c0248)+16) ) = (word) XR←GetTypeIndex((word) &string8, 0, (word) &string9); (void) XR←DeclareGlobalFrame((word) "XlDispatchImpl", &globalframe, (word) XR←GetTypeIndex((word) &string10, 0, (word) &string11) , (word) (( (bPt) gf←c0248)+312)/* var←c20248 */ ); var←c22200 = (word) XR←ImportInterface((word) "CardTab", (word) XR←GetTypeIndexS((word) (&string12)), 12); (* (( (ptr) gf←c0248)+80)/* var←c20312 */ ) = var←c22200; (void) XR←ImportProcS(var←c22200, 67371265); (void) XR←ImportProcS(var←c22200, 67896835); (void) XR←ImportProcS(var←c22200, 67634946); (void) XR←ImportProcS(var←c22200, 134742786); var←c22200 = (word) XR←ImportInterface((word) &string13, (word) XR←GetTypeIndexS((word) (&string14)), 218); (* (( (ptr) gf←c0248)+81)/* var←c20536 */ ) = var←c22200; (void) XR←ImportProcS(var←c22200, 67910403); (void) XR←ImportProcS(var←c22200, 1063940); var←c22200 = (word) XR←ImportInterface((word) "XlDetails", (word) XR←GetTypeIndexS((word) (&string15)), 4); (* (( (ptr) gf←c0248)+84)/* var←c21688 */ ) = var←c22200; var←c22200 = (word) XR←ImportInterface((word) "XlPrivate", (word) XR←GetTypeIndexS((word) (&string16)), 77); (* (( (ptr) gf←c0248)+82)/* var←c21304 */ ) = var←c22200; (void) XR←ImportProcS(var←c22200, 786947); (void) XR←ImportProcS(var←c22200, 526594); (void) XR←ImportProcS(var←c22200, 539650); (void) XR←ImportProcS(var←c22200, 528642); (void) XR←ImportProcS(var←c22200, 530178); (void) XR←ImportProcS(var←c22200, 1051908); var←c22200 = (word) XR←ImportInterface((word) "XlPrivateResources", (word) XR←GetTypeIndexS((word) (&string17)), 9); (* (( (ptr) gf←c0248)+83)/* var←c21336 */ ) = var←c22200; (void) XR←ImportProcS(var←c22200, 525314); (void) XR←ImportProcS(var←c22200, 67634434); var←c22200 = (word) XR←ExportInterface((word) &string13, (word) XR←GetTypeIndexS((word) (&string14)), 218); (* (( (ptr) gf←c0248)+85)/* var←c22232 */ ) = var←c22200; (void) XR←ExportType((word) "DispatchStuffRep", (word) XR←GetTypeIndexS((word) (&string18)), (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2) ); var←c22200 = (word) XR←ExportInterface((word) "XlDispatch", (word) XR←GetTypeIndexS((word) (&string19)), 18); (* (( (ptr) gf←c0248)+85)/* var←c22232 */ ) = var←c22200; (void) XR←ExportType((word) "DispatchHandleRec", (word) XR←GetTypeIndexS((word) (&string20)), (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2) ); (void) XR←ExportProcS(var←c22200, (word) (( (bPt) gf←c0248)+280)/* var←c20120 */ , 67371265, (word) "GetDispatchHandle"); (void) XR←ExportProcS(var←c22200, (word) (( (bPt) gf←c0248)+264)/* var←c20056 */ , 524802, (word) "Dispatch"); (void) XR←ExportProcS(var←c22200, (word) (( (bPt) gf←c0248)+272)/* var←c20088 */ , 262913, (word) "FindAndDispatch"); (void) XR←ExportType((word) "WindowDataRec", (word) XR←GetTypeIndexS((word) (&string21)), (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4) ); (void) XR←ExportProcS(var←c22200, (word) (( (bPt) gf←c0248)+232)/* var←c19928 */ , 67634434, (word) "GetWindowData"); (void) XR←ExportProcS(var←c22200, (word) (( (bPt) gf←c0248)+256)/* var←c20024 */ , 525826, (word) "DispatchExplicite"); (void) XR←ExportProcS(var←c22200, (word) (( (bPt) gf←c0248)+136)/* var←c19544 */ , 1312517, (word) "AddMatch"); (void) XR←ExportProcS(var←c22200, (word) (( (bPt) gf←c0248)+128)/* var←c19512 */ , 1050628, (word) "RemoveMatch"); (void) XR←ExportProcS(var←c22200, (word) (( (bPt) gf←c0248)+144)/* var←c19576 */ , 1313029, (word) "AddMatches"); (void) XR←ExportProcS(var←c22200, (word) (( (bPt) gf←c0248)+120)/* var←c19480 */ , 526850, (word) "AddMatchForUnregistered") ; (void) XR←ExportProcS(var←c22200, (word) (( (bPt) gf←c0248)+104)/* var←c19416 */ , 527106, (word) "AddPriviledgedMatch"); (void) XR←ExportProcS(var←c22200, (word) (( (bPt) gf←c0248)+96)/* var←c19384 */ , 527362, (word) "RemovePriviledgedMatch") ; (void) XR←ExportProcS(var←c22200, (word) (( (bPt) gf←c0248)+72)/* var←c19288 */ , 265473, (word) "InitConnection"); (void) XR←ExportProcS(var←c22200, (word) (( (bPt) gf←c0248)+88)/* var←c19352 */ , 527874, (word) "InitWindow"); (void) XR←ExportProcS(var←c22200, (word) (( (bPt) gf←c0248)+80)/* var←c19320 */ , 528130, (word) "RemoveWindow"); (void) XR←ExportProcS(var←c22200, (word) (( (bPt) gf←c0248)+152)/* var←c19608 */ , 1052676, (word) "InternalAddMatch"); (void) XR←ExportProcS(var←c22200, (word) (( (bPt) gf←c0248)+112)/* var←c19448 */ , 67899651, (word) "EnforcedSetOfEvent") ; var←c22200 = (word) XR←ExportInterface((word) "XlRecycleMotionEvents", (word) XR←GetTypeIndexS((word) (&string22)), 2); (* (( (ptr) gf←c0248)+86)/* var←c22264 */ ) = var←c22200; (void) XR←ExportProcS(var←c22200, (word) (( (bPt) gf←c0248)+288)/* var←c20152 */ , 67633154, (word) "GetCache"); } static void XlDispatchImpl←P0(formal←c044, formal←c043) word formal←c044; word formal←c043; { register ptr gf←c22296 = (ptr) &globalframe; /* XlDispatchImpl: */ SOURCE(124, 11060) SOURCE(1422, 83) (* (( (ptr) gf←c22296)+8)/* dummy←v3112 */ ) = XR←NewObject(8, (* (( (ptr) gf←c22296)+11) )); } static void NotYetDefined←P60(event←v12304, clientData←v12332, tq←v12360) word event←v12304; word clientData←v12332; word tq←v12360; { /* NotYetDefined: */ } static void ProcRemoved←P120(event←v12420, clientData←v12448, tq←v12476) word event←v12420; word clientData←v12448; word tq←v12476; { /* ProcRemoved: */ } static word GetCache←P180(c←v4720, w←v4748) word c←v4720; word w←v4748; { register ptr gf←c22328 = (ptr) &globalframe; word cache←v4792; word h←v8000; /* GetCache: */ SOURCE(1508, 527) SOURCE(1508, 527) cache←v4792 = (* (( (ptr) gf←c22328)+8)/* dummy←v3112 */ ); SOURCE(1654, 40) h←v8000 = (word) GetDispatchHandle←P240(c←v4720); SOURCE(1696, 49) if ((w←v4748 == (word) -1)) { SOURCE(1729, 16) return((* (( (ptr) h←v8000)+3) )); }; SOURCE(1773, 262) { word var←c20344; W2 var←c056; { word pd23; pd23 = (* (( (ptr) (* (( (ptr) gf←c22328)+80)/* var←c20312 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd23 ))))((word) &var←c056, (* (ptr) h←v8000 ), w←v4748, pd23); }; var←c20344 = var←c056.f1; if ((var←c20344 == 0)) { goto lab←L100000; }; if (((* (( (ptr) gf←c22328)+10) ) == XR←GetReferentType(var←c20344))) { { word wd←v8044; wd←v8044 = var←c20344; SOURCE(1844, 194) { word dl←v8088; SOURCE(1846, 24) dl←v8088 = (* (ptr) wd←v8044 ); SOURCE(1872, 163) if ((dl←v8088 != 0)) { SOURCE(1887, 148) { word count←v8132 = 0; SOURCE(1905, 96) { register word i←v8176 = 0; register word noName←c20376; noName←c20376 = (* (ptr) dl←v8088 ); if ((i←v8176 >= noName←c20376)) { goto lab←L100001; }; lab←L100004: ; SOURCE(1941, 60) { word limit24; if ((* (bPt) (( (W7Pt) (( (bPt) dl←v8088)+8))+( /*1*/ limit24 = (* (( (ptr) dl←v8088)+1) ), /*1*/ BCK(i←v8176, limit24) /*1*/ )) ) & 02) { SOURCE(1978, 23) /*1*/ count←v8132 = (count←v8132 + 1); /*1*/ }; }; i←v8176 = (i←v8176 + 1); if ((i←v8176 < noName←c20376)) { goto lab←L100004; }; lab←L100001: ; }; SOURCE(2003, 32) if (( (int)count←v8132 == (int)1)) { SOURCE(2019, 16) cache←v4792 = (* (( (ptr) h←v8000)+3) ); }; }; }; }; }; } else { lab←L100000: ; }; }; SOURCE(1508, 527) return(cache←v4792); } static word GetDispatchHandle←P240(c←v4864) word c←v4864; { word var←c4908; /* GetDispatchHandle: */ SOURCE(2060, 101) SOURCE(2136, 25) return((* (( (ptr) c←v4864)+27) )); } static void FindAndDispatch←P360(event←v5056) word event←v5056; { register ptr gf←c22360 = (ptr) &globalframe; /* FindAndDispatch: */ SOURCE(2497, 101) SOURCE(2545, 53) { word handle←v18900; word event←v18928; handle←v18900 = (* (( (ptr) (* (( (ptr) event←v5056)+2) ))+27) ); event←v18928 = event←v5056; SOURCE(2236, 178) { word var←c20408; W2 var←c068; { word pd25; pd25 = (* (( (ptr) (* (( (ptr) gf←c22360)+80)/* var←c20312 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd25 ))))((word) &var←c068, (* (ptr) handle←v18900 ), (* (( (ptr) event←v18928)+1) ), pd25) ; }; var←c20408 = var←c068.f1; if ((var←c20408 == 0)) { goto lab←L100005; }; if (((* (( (ptr) gf←c22360)+10) ) == XR←GetReferentType(var←c20408))) { { word wd←v8220; wd←v8220 = var←c20408; SOURCE(2333, 29) (void) DispatchOneList←P540(event←v18928, (* (ptr) wd←v8220 )); }; } else { lab←L100005: ; SOURCE(2375, 39) (void) DispatchOneList←P540(event←v18928, (* (ptr) (* (( (ptr) handle←v18900)+2) ) )); }; }; SOURCE(2416, 75) if (((* (( (ptr) handle←v18900)+1) ) != 0)) { SOURCE(2448, 43) (void) DispatchOneList←P540(event←v18928, (* (( (ptr) handle←v18900)+1) )); }; }; } static void Dispatch←P420(handle←v5116, event←v5144) word handle←v5116; word event←v5144; { register ptr gf←c22392 = (ptr) &globalframe; /* Dispatch: */ SOURCE(2604, 94) SOURCE(2669, 29) { word handle←v18780; word event←v18808; handle←v18780 = handle←v5116; event←v18808 = event←v5144; SOURCE(2236, 178) { word var←c20440; W2 var←c075; { word pd26; pd26 = (* (( (ptr) (* (( (ptr) gf←c22392)+80)/* var←c20312 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd26 ))))((word) &var←c075, (* (ptr) handle←v18780 ), (* (( (ptr) event←v18808)+1) ), pd26) ; }; var←c20440 = var←c075.f1; if ((var←c20440 == 0)) { goto lab←L100006; }; if (((* (( (ptr) gf←c22392)+10) ) == XR←GetReferentType(var←c20440))) { { word wd←v18856; wd←v18856 = var←c20440; SOURCE(2333, 29) (void) DispatchOneList←P540(event←v18808, (* (ptr) wd←v18856 )); }; } else { lab←L100006: ; SOURCE(2375, 39) (void) DispatchOneList←P540(event←v18808, (* (ptr) (* (( (ptr) handle←v18780)+2) ) )); }; }; SOURCE(2416, 75) if (((* (( (ptr) handle←v18780)+1) ) != 0)) { SOURCE(2448, 43) (void) DispatchOneList←P540(event←v18808, (* (( (ptr) handle←v18780)+1) )); }; }; } static void DispatchExplicite←P480(wd←v5204, event←v5232) word wd←v5204; word event←v5232; { /* DispatchExplicite: */ SOURCE(2703, 96) SOURCE(2770, 29) (void) DispatchOneList←P540(event←v5232, (* (ptr) wd←v5204 )); } static void DispatchOneList←P540(e←v5292, dl←v5320) word e←v5292; word dl←v5320; { register ptr gf←c22424 = (ptr) &globalframe; /* DispatchOneList: */ SOURCE(2804, 635) SOURCE(2859, 21) if ((dl←v5320 == 0)) { SOURCE(2874, 6) return; }; SOURCE(2882, 557) if (((word) XRM←BITAND((* (ptr) e←v5292 ), 127) >= 64)) { SOURCE(2961, 266) { word var←c20472; var←c20472 = e←v5292; if ((var←c20472 == 0)) { goto lab←L100007; }; if (((* (( (ptr) var←c20472)+4) ) == 35)) { { word xEvent←v8248; xEvent←v8248 = var←c20472; SOURCE(3008, 219) { register word i←v8292 = 0; register word noName←c20504; noName←c20504 = (* (ptr) dl←v5320 ); if ((i←v8292 >= noName←c20504)) { goto lab←L100008; }; lab←L100011: ; SOURCE(3044, 183) { register word xl←v8336; { word limit27; xl←v8336 = (* (( (W7Pt) (( (ptr) dl←v5320)+2))+( /*1*/ limit27 = (* (( (ptr) dl←v5320)+1) ), /*1*/ BCK(i←v8292, limit27) /*1*/ )) ).f5; }; lab←L100015: ; if ((xl←v8336 != 0)) { } else { goto lab←L100012; }; SOURCE(3120, 107) if (((* (ptr) xl←v8336 ) == (* (( (ptr) xEvent←v8248)+6) ))) { SOURCE(3150, 101) { word p←v8476; SOURCE(3152, 29) { /*1*/ word limit28; /*1*/ p←v8476 = (* (( (W7Pt) (( (ptr) dl←v5320)+2))+( /*1*/ limit28 = (* (( (ptr) dl←v5320)+1) ), /*1*/ BCK(i←v8292, limit28) /*1*/ )) ).f3; /*1*/ }; SOURCE(3192, 35) { /*1*/ word pd29; /*1*/ word limit30; /*1*/ word limit31; /*1*/ pd29 = (* (( (ptr) (* (( (ptr) gf←c22424)+81)/* var←c20536 */ ))+64) ); /*1*/ (void) ( *( (fPt) ((* (ptr) pd29 ))))((* (( (W7Pt) (( (ptr) dl←v5320)+2))+( /*1*/ limit30 = (* (( (ptr) dl←v5320)+1) ), /*1*/ BCK(i←v8292, limit30) /*1*/ )) ).f2, p←v8476, (* (( (W7Pt) (( (ptr) dl←v5320)+2))+( /*1*/ limit31 = (* (( (ptr) dl←v5320)+1) ), /*1*/ BCK(i←v8292, limit31) /*1*/ )) ).f4, e←v5292, pd29); /*1*/ }; SOURCE(3229, 22) goto lab←L100013; }; }; xl←v8336 = (* (( (ptr) xl←v8336)+1) ); goto lab←L100015; lab←L100012: ; lab←L100013: ; }; i←v8292 = (i←v8292 + 1); if ((i←v8292 < noName←c20504)) { goto lab←L100011; }; lab←L100008: ; }; }; } else { lab←L100007: ; }; }; } else { SOURCE(3295, 144) { register word i←v8520 = 0; register word noName←c20568; noName←c20568 = (* (ptr) dl←v5320 ); if ((i←v8520 >= noName←c20568)) { goto lab←L100016; }; lab←L100019: ; SOURCE(3331, 108) { word limit32; word ix33; if (( ix33 = (* (( (ptr) e←v5292)+4) ), ((* (bPt) (( (bPt) (( (W7Pt) (( (bPt) dl←v5320)+8))+( limit32 = (* (( (ptr) dl←v5320)+1) ), BCK(i←v8520, limit32) ))) + ((word) ix33 >> 3)) ) >> (7 - ((word) (ix33 & 7)))) & 1 )) { SOURCE(3362, 79) { word p←v8564; SOURCE(3364, 29) { word limit34; p←v8564 = (* (( (W7Pt) (( (ptr) dl←v5320)+2))+( limit34 = (* (( (ptr) dl←v5320)+1) ), BCK(i←v8520, limit34) )) ).f3; }; SOURCE(3404, 35) { word pd35; word limit36; word limit37; pd35 = (* (( (ptr) (* (( (ptr) gf←c22424)+81)/* var←c20536 */ ))+64) ); (void) ( *( (fPt) ((* (ptr) pd35 ))))((* (( (W7Pt) (( (ptr) dl←v5320)+2))+( /*1*/ limit36 = (* (( (ptr) dl←v5320)+1) ), /*1*/ BCK(i←v8520, limit36) /*1*/ )) ).f2, p←v8564, (* (( (W7Pt) (( (ptr) dl←v5320)+2))+( /*1*/ limit37 = (* (( (ptr) dl←v5320)+1) ), /*1*/ BCK(i←v8520, limit37) /*1*/ )) ).f4, e←v5292, pd35); }; }; }; }; i←v8520 = (i←v8520 + 1); if ((i←v8520 < noName←c20568)) { goto lab←L100019; }; lab←L100016: ; }; }; } static void RemoveWindowData←P600(c←v5380, w←v5408) word c←v5380; word w←v5408; { register ptr gf←c22456 = (ptr) &globalframe; word h←v8608; /* RemoveWindowData: */ SOURCE(3460, 139) SOURCE(3525, 35) h←v8608 = (* (( (ptr) c←v5380)+27) ); SOURCE(3562, 37) { word var←c20600; word pd38; pd38 = (* (( (ptr) (* (( (ptr) gf←c22456)+80)/* var←c20312 */ ))+11) ); var←c20600 = (word) ( *( (fPt) ((* (ptr) pd38 ))))((* (ptr) h←v8608 ), w←v5408, pd38); }; } static word GetWindowData←P660(c←v5468, w←v5496) word c←v5468; word w←v5496; { register ptr gf←c22488 = (ptr) &globalframe; word var←c5540; word h←v8652; /* GetWindowData: */ SOURCE(3604, 168) SOURCE(3683, 35) h←v8652 = (* (( (ptr) c←v5468)+27) ); SOURCE(3720, 52) { word var←c0282; { W2 var←c098; word var←c0281; { word pd39; pd39 = (* (( (ptr) (* (( (ptr) gf←c22488)+80)/* var←c20312 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd39 ))))((word) &var←c098, (* (ptr) h←v8652 ), w←v5496, pd39); }; var←c0281 = var←c098.f1; var←c0282 = XR←Narrow(var←c0281, (* (( (ptr) gf←c22488)+10) )); }; return(var←c0282); }; } static word GetOrCreateWindowData←P720(c←v5600, w←v5628) word c←v5600; word w←v5628; { register ptr gf←c22520 = (ptr) &globalframe; word wd←v5672; word h←v8696; /* GetOrCreateWindowData: */ SOURCE(3777, 315) SOURCE(3777, 315) wd←v5672 = 0; SOURCE(3872, 35) h←v8696 = (* (( (ptr) c←v5600)+27) ); SOURCE(3909, 48) { W2 var←c0103; word var←c0283; { word pd40; pd40 = (* (( (ptr) (* (( (ptr) gf←c22520)+80)/* var←c20312 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd40 ))))((word) &var←c0103, (* (ptr) h←v8696 ), w←v5628, pd40); }; var←c0283 = var←c0103.f1; wd←v5672 = XR←Narrow(var←c0283, (* (( (ptr) gf←c22520)+10) )); }; SOURCE(3959, 133) if ((wd←v5672 == 0)) { SOURCE(3976, 23) wd←v5672 = XR←NewObject(12, (* (( (ptr) gf←c22520)+10) )); SOURCE(4002, 56) { word pd41; pd41 = (* (( (ptr) (* (( (ptr) gf←c22520)+80)/* var←c20312 */ ))+10) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd41 ))))((* (ptr) h←v8696 ), w←v5628, wd←v5672, pd41))) { SOURCE(4047, 11) return(wd←v5672); }; }; SOURCE(4060, 32) wd←v5672 = (word) GetOrCreateWindowData←P720(c←v5600, w←v5628); }; SOURCE(3777, 315) return(wd←v5672); } static word UsedLength←P780(dl←v5732) word dl←v5732; { register ptr gf←c22552 = (ptr) &globalframe; word n←v5776; /* UsedLength: */ SOURCE(4101, 152) SOURCE(4101, 152) n←v5776 = 0; SOURCE(4163, 90) if ((dl←v5732 != 0)) { SOURCE(4179, 74) { register word i←v8740 = 0; register word noName←c20696; noName←c20696 = (* (ptr) dl←v5732 ); if ((i←v8740 >= noName←c20696)) { goto lab←L100020; }; lab←L100023: ; SOURCE(4215, 38) { word limit42; if (((* (( (W7Pt) (( (ptr) dl←v5732)+2))+( limit42 = (* (( (ptr) dl←v5732)+1) ), BCK(i←v8740, limit42) )) ).f3 != (word) (( (bPt) gf←c22552)+296)/* var←c20184 */ )) { SOURCE(4246, 7) n←v5776 = (n←v5776 + 1); }; }; i←v8740 = (i←v8740 + 1); if ((i←v8740 < noName←c20696)) { goto lab←L100023; }; lab←L100020: ; }; }; SOURCE(4101, 152) return(n←v5776); } static void SetDispatchList←P840(container←v5836, dl←v5864) word container←v5836; word dl←v5864; { register ptr gf←c22584 = (ptr) &globalframe; /* SetDispatchList: */ SOURCE(4268, 210) SOURCE(4338, 140) { word var←c20728; word var←c20760; var←c20728 = container←v5836; if ((var←c20728 == 0)) { goto lab←L100024; }; var←c20760 = XR←GetReferentType(var←c20728); if (((* (( (ptr) gf←c22584)+10) ) == var←c20760)) { { word wd←v8784; wd←v8784 = var←c20728; SOURCE(4383, 10) (* (ptr) wd←v8784 ) = dl←v5864; }; goto endif043; }; if (((* (( (ptr) gf←c22584)+15) ) == var←c20760)) { { word rdl←v8828; rdl←v8828 = var←c20728; SOURCE(4420, 9) (* (ptr) rdl←v8828 ) = dl←v5864; }; goto endif043; }; if (((* (( (ptr) gf←c22584)+9) ) == var←c20760)) { { word h←v8884; h←v8884 = var←c20728; SOURCE(4459, 19) (* (( (ptr) h←v8884)+1) ) = dl←v5864; }; goto endif043; }; lab←L100024: ; SOURCE(4491, 5) (void) XR←RaiseUnnamedError(); goto endif043; endif043: ; }; } static word GetDispatchList←P900(container←v5936) word container←v5936; { register ptr gf←c22616 = (ptr) &globalframe; word dl←v5992; /* GetDispatchList: */ SOURCE(4502, 219) SOURCE(4502, 219) dl←v5992 = 0; SOURCE(4581, 140) { word var←c20792; word var←c20824; var←c20792 = container←v5936; if ((var←c20792 == 0)) { goto lab←L100025; }; var←c20824 = XR←GetReferentType(var←c20792); if (((* (( (ptr) gf←c22616)+10) ) == var←c20824)) { { word wd←v8940; wd←v8940 = var←c20792; SOURCE(4626, 10) dl←v5992 = (* (ptr) wd←v8940 ); }; goto endif044; }; if (((* (( (ptr) gf←c22616)+15) ) == var←c20824)) { { word rdl←v8984; rdl←v8984 = var←c20792; SOURCE(4663, 9) dl←v5992 = (* (ptr) rdl←v8984 ); }; goto endif044; }; if (((* (( (ptr) gf←c22616)+9) ) == var←c20824)) { { word h←v9040; h←v9040 = var←c20792; SOURCE(4702, 19) dl←v5992 = (* (( (ptr) h←v9040)+1) ); }; goto endif044; }; lab←L100025: ; SOURCE(4734, 5) (void) XR←RaiseUnnamedError(); goto endif044; endif044: ; }; SOURCE(4502, 219) return(dl←v5992); } static void EnsureEntry←P960(formal←c0135, container←v6052) word formal←c0135; word container←v6052; { register ptr gf←c22648 = (ptr) &globalframe; word i←v6108; word dl←v6136; /* EnsureEntry: */ SOURCE(4745, 779) SOURCE(4745, 779) dl←v6136 = 0; SOURCE(4828, 31) dl←v6136 = (word) GetDispatchList←P900(container←v6052); SOURCE(4861, 515) if ((dl←v6136 == 0)) { SOURCE(4878, 28) { word var←c20856; var←c20856 = XR←NewObject(120, (* (( (ptr) gf←c22648)+16) )); (* (( (ptr) var←c20856)+1) ) = 4; dl←v6136 = var←c20856; }; SOURCE(4908, 30) (void) SetDispatchList←P840(container←v6052, dl←v6136); } else { SOURCE(4945, 431) if (((* (ptr) dl←v6136 ) >= (* (( (ptr) dl←v6136)+1) ))) { SOURCE(4983, 398) { word use←v9096; SOURCE(4986, 25) { word idx45; use←v9096 = ( idx45 = (word) UsedLength←P780(dl←v6136), SGNCK(idx45) ); }; SOURCE(5013, 363) if ((use←v9096 >= 2147483643)) { SOURCE(5041, 31) { word idx46; (* (ptr) dl←v6136 ) = ( idx46 = (word) ((* (ptr) dl←v6136 ) - 1), SGNCK(idx46) ); }; } else { SOURCE(5081, 297) { word new←v9140; word dl2←v9168; SOURCE(5083, 16) new←v9140 = (use←v9096 + 4); SOURCE(5101, 45) { word var←c20888; word var←c20920; word var←c20952; var←c20888 = BCK(new←v9140, 9586980); var←c20920 = ((word) var←c20888 * 28); var←c20952 = XR←NewObject((8 + var←c20920), (* (( (ptr) gf←c22648)+16) )); (* (( (ptr) var←c20952)+1) ) = var←c20888; dl2←v9168 = var←c20952; }; SOURCE(5148, 18) (* (ptr) dl2←v9168 ) = 0; SOURCE(5168, 151) if ((dl←v6136 != 0)) { SOURCE(5185, 134) { register word i←v9212 = 0; register word noName←c20984; noName←c20984 = (* (ptr) dl←v6136 ); if ((i←v9212 >= noName←c20984)) { goto lab←L100027; }; lab←L100030: ; SOURCE(5222, 97) { word limit47; if (((* (( (W7Pt) (( (ptr) dl←v6136)+2))+( /*1*/ limit47 = (* (( (ptr) dl←v6136)+1) ), /*1*/ BCK(i←v9212, limit47) /*1*/ )) ).f3 != (word) (( (bPt) gf←c22648)+296)/* var←c20184 */ )) { SOURCE(5255, 27) /*1*/ { /*1*/ word idx48; /*1*/ word limit49; /*1*/ word limit50; /*1*/ (* (( (W7Pt) (( (ptr) dl2←v9168)+2))+( /*1*/ idx48 = (* (ptr) dl2←v9168 ), /*1*/ limit49 = (* (( (ptr) dl2←v9168)+1) ), /*1*/ BCK(idx48, limit49) /*1*/ )) ) = (* (( (W7Pt) (( (ptr) dl←v6136)+2))+( /*1*/ limit50 = (* (( (ptr) dl←v6136)+1) ), /*1*/ BCK(i←v9212, limit50) /*1*/ )) ); /*1*/ }; SOURCE(5284, 35) /*1*/ (* (ptr) dl2←v9168 ) = ((* (ptr) dl2←v9168 ) + 1); /*1*/ }; }; i←v9212 = (i←v9212 + 1); if ((i←v9212 < noName←c20984)) { goto lab←L100030; }; lab←L100027: ; }; }; SOURCE(5336, 8) dl←v6136 = dl2←v9168; SOURCE(5346, 30) (void) SetDispatchList←P840(container←v6052, dl←v6136); }; }; }; }; }; SOURCE(5384, 17) i←v6108 = (* (ptr) dl←v6136 ); SOURCE(5404, 27) { word var←c21016; { word limit51; var←c21016 = (word) (( (W7Pt) (( (bPt) dl←v6136)+8))+( limit51 = (* (( (ptr) dl←v6136)+1) ), BCK(i←v6108, limit51) )); }; (* (ptr) var←c21016 ) = 0; (* (( (ptr) var←c21016)+1) ) = 0; }; SOURCE(5433, 30) { word limit52; (* (( (W7Pt) (( (ptr) dl←v6136)+2))+( limit52 = (* (( (ptr) dl←v6136)+1) ), BCK(i←v6108, limit52) )) ).f5 = 0; }; SOURCE(5465, 26) { word limit53; (* (( (W7Pt) (( (ptr) dl←v6136)+2))+( limit53 = (* (( (ptr) dl←v6136)+1) ), BCK(i←v6108, limit53) )) ).f3 = (word) (( (bPt) gf←c22648)+304)/* var←c20216 */ ; }; SOURCE(5493, 31) (* (ptr) dl←v6136 ) = ((* (ptr) dl←v6136 ) + 1); /* removed tail goto */ (* (ptr) formal←c0135 ) = i←v6108; (* (( (ptr) formal←c0135)+1) ) = dl←v6136; return; } static void AddMatchToList←P1020(container←v6196, match←v6224, events←v6252) word container←v6196; word match←v6224; word events←v6252; { register ptr gf←c22680 = (ptr) &globalframe; /* AddMatchToList: */ SOURCE(5531, 617) (void) (XR←MonitorEntry((word) (( (bPt) gf←c22680)+16)/* LOCK←v2804 */ )); SOURCE(5633, 515) if ((match←v6224 != 0)) { SOURCE(5651, 505) { W2 activate←v9256; word tq←v9284; word handles←v9312; word proc←v9340; W2 var←c21080; SOURCE(5653, 20) activate←v9256.f0 = 0; activate←v9256.f1 = 0; SOURCE(5675, 17) tq←v9284 = (* (( (ptr) match←v6224)+2) ); SOURCE(5694, 36) handles←v9312 = (* (( (ptr) match←v6224)+1) ); SOURCE(5732, 32) proc←v9340 = (* (ptr) match←v6224 ); SOURCE(5766, 30) if ((tq←v9284 == 0)) { SOURCE(5781, 15) { word pd54; pd54 = (* (( (ptr) (* (( (ptr) gf←c22680)+81)/* var←c20536 */ ))+63) ); tq←v9284 = (word) ( *( (fPt) ((* (ptr) pd54 ))))(0, 0, 0, pd54); }; }; SOURCE(5798, 106) { word tc56; if ((handles←v9312 == 0)) { goto then055;}; if ((proc←v9340 == 0)) { goto then055;}; var←c21080.f0 = 0; var←c21080.f1 = 0; if (XR←EqualWords(handles←v9312, &var←c21080, 2)) { tc56 = (word) ((* (( (ptr) handles←v9312)+2) ) == 0); } else { tc56 = (word) 0; }; if (tc56) { then055: ; SOURCE(5898, 6) (void) (XR←MonitorExit((word) (( (bPt) gf←c22680)+16)/* LOCK←v2804 */ )); return; }; }; SOURCE(5907, 244) { word n←v9384; word dl←v9412 = 0; SOURCE(5939, 32) { W2 var←c21112; (void) EnsureEntry←P960((word) &var←c21112, container←v6196); dl←v9412 = var←c21112.f1; n←v9384 = var←c21112.f0; }; SOURCE(5973, 23) { word limit57; (* (( (W7Pt) (( (ptr) dl←v9412)+2))+( limit57 = (* (( (ptr) dl←v9412)+1) ), BCK(n←v9384, limit57) )) ).f4 = (* (( (ptr) match←v6224)+3) ); }; SOURCE(5999, 13) { word limit58; (* (( (W7Pt) (( (ptr) dl←v9412)+2))+( limit58 = (* (( (ptr) dl←v9412)+1) ), BCK(n←v9384, limit58) )) ).f2 = tq←v9284; }; SOURCE(6015, 21) { word limit59; (* (( (W7Pt) (( (ptr) dl←v9412)+2))+( limit59 = (* (( (ptr) dl←v9412)+1) ), BCK(n←v9384, limit59) )) ).f6 = events←v6252; }; SOURCE(6039, 17) { word limit60; (* (( (W7Pt) (( (ptr) dl←v9412)+2))+( limit60 = (* (( (ptr) dl←v9412)+1) ), BCK(n←v9384, limit60) )) ).f3 = XR←CheckProc(proc←v9340); }; SOURCE(6059, 53) { word limit61; (* (( (W7Pt) (( (ptr) dl←v9412)+2))+( limit61 = (* (( (ptr) dl←v9412)+1) ), BCK(n←v9384, limit61) )) ).f5 = (* (( (ptr) handles←v9312)+2) ); }; SOURCE(6115, 33) { word limit62; (* (W2Pt) (( (W7Pt) (( (ptr) dl←v9412)+2))+( limit62 = (* (( (ptr) dl←v9412)+1) ), BCK(n←v9384, limit62) )) ) = (* (W2Pt) handles←v9312 ); }; }; }; }; SOURCE(5531, 617) (void) (XR←MonitorExit((word) (( (bPt) gf←c22680)+16)/* LOCK←v2804 */ )); return; } static void RemoveMatchFromList←P1080(container←v6324, proc←v6352, tq←v6380, data←v6408) word container←v6324; word proc←v6352; word tq←v6380; word data←v6408; { register ptr gf←c22712 = (ptr) &globalframe; word dl←v9456; /* RemoveMatchFromList: */ SOURCE(6163, 343) (void) (XR←MonitorEntry((word) (( (bPt) gf←c22712)+16)/* LOCK←v2804 */ )); SOURCE(6259, 45) dl←v9456 = (word) GetDispatchList←P900(container←v6324); SOURCE(6306, 200) if ((dl←v9456 != 0)) { SOURCE(6321, 185) { register word i←v9500 = 0; register word noName←c21144; noName←c21144 = (* (ptr) dl←v9456 ); if ((i←v9500 >= noName←c21144)) { goto lab←L100031; }; lab←L100034: ; SOURCE(6357, 149) { word tc63; word tc64; word limit65; word limit66; word limit67; if (((* (( (W7Pt) (( (ptr) dl←v9456)+2))+( limit65 = (* (( (ptr) dl←v9456)+1) ), BCK(i←v9500, limit65) )) ).f3 == proc←v6352)) { tc64 = (word) ((* (( (W7Pt) (( (ptr) dl←v9456)+2))+( limit66 = (* (( (ptr) dl←v9456)+1) ), BCK(i←v9500, limit66) )) ).f2 == tq←v6380); } else { tc64 = (word) 0; }; if (tc64) { tc63 = (word) ((* (( (W7Pt) (( (ptr) dl←v9456)+2))+( limit67 = (* (( (ptr) dl←v9456)+1) ), BCK(i←v9500, limit67) )) ).f4 == data←v6408); } else { tc63 = (word) 0; }; if (tc63) { SOURCE(6421, 27) { word var←c21176; { word limit68; var←c21176 = (word) (( (W7Pt) (( (bPt) dl←v9456)+8))+( limit68 = (* (( (ptr) dl←v9456)+1) ), BCK(i←v9500, limit68) )); }; (* (ptr) var←c21176 ) = 0; (* (( (ptr) var←c21176)+1) ) = 0; }; SOURCE(6450, 30) { word limit69; (* (( (W7Pt) (( (ptr) dl←v9456)+2))+( limit69 = (* (( (ptr) dl←v9456)+1) ), BCK(i←v9500, limit69) )) ).f5 = 0; }; SOURCE(6482, 24) { word limit70; (* (( (W7Pt) (( (ptr) dl←v9456)+2))+( limit70 = (* (( (ptr) dl←v9456)+1) ), BCK(i←v9500, limit70) )) ).f3 = (word) (( (bPt) gf←c22712)+296)/* var←c20184 */ ; }; }; }; i←v9500 = (i←v9500 + 1); if ((i←v9500 < noName←c21144)) { goto lab←L100034; }; lab←L100031: ; }; }; SOURCE(6163, 343) (void) (XR←MonitorExit((word) (( (bPt) gf←c22712)+16)/* LOCK←v2804 */ )); return; } static word GetInternalEvents←P1140(dl←v6492) word dl←v6492; { register ptr gf←c22744 = (ptr) &globalframe; word events←v6536; /* GetInternalEvents: */ SOURCE(6523, 227) SOURCE(6523, 227) events←v6536 = 0; SOURCE(6619, 131) if ((dl←v6492 != 0)) { SOURCE(6634, 116) { register word i←v9544 = 0; register word noName←c21208; noName←c21208 = (* (ptr) dl←v6492 ); if ((i←v9544 >= noName←c21208)) { goto lab←L100035; }; lab←L100038: ; SOURCE(6671, 79) { word limit71; if (((* (( (W7Pt) (( (ptr) dl←v6492)+2))+( limit71 = (* (( (ptr) dl←v6492)+1) ), BCK(i←v9544, limit71) )) ).f3 != (word) (( (bPt) gf←c22744)+296)/* var←c20184 */ )) { SOURCE(6703, 47) { word var←c21240; word s2←v19240; { word limit72; s2←v19240 = (* (( (W7Pt) (( (ptr) dl←v6492)+2))+( limit72 = (* (( (ptr) dl←v6492)+1) ), BCK(i←v9544, limit72) )) ).f6; }; var←c21240 = (word) XRM←BITOR(events←v6536, s2←v19240); events←v6536 = var←c21240; }; }; }; i←v9544 = (i←v9544 + 1); if ((i←v9544 < noName←c21208)) { goto lab←L100038; }; lab←L100035: ; }; }; SOURCE(6523, 227) return(events←v6536); } static void PrivateChangeEvents←P1200(c←v6596, w←v6624, e←v6652, details←v6680) word c←v6596; word w←v6624; word e←v6652; word details←v6680; { register ptr gf←c22776 = (ptr) &globalframe; /* PrivateChangeEvents: */ SOURCE(6764, 398) SOURCE(6871, 24) if ((w←v6624 == 0)) { SOURCE(6895, 5) (void) XR←RaiseUnnamedError(); }; SOURCE(6904, 19) { word pd73; pd73 = (* (( (ptr) (* (( (ptr) gf←c22776)+82)/* var←c21304 */ ))+17) ); (void) ( *( (fPt) ((* (ptr) pd73 ))))(c←v6596, 2, 0, 4, pd73); }; SOURCE(6950, 18) { word pd74; pd74 = (* (( (ptr) (* (( (ptr) gf←c22776)+82)/* var←c21304 */ ))+27) ); (void) ( *( (fPt) ((* (ptr) pd74 ))))(c←v6596, w←v6624, pd74); }; SOURCE(6971, 16) { word pd75; pd75 = (* (( (ptr) (* (( (ptr) gf←c22776)+82)/* var←c21304 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd75 ))))(c←v6596, 2048, pd75); }; SOURCE(7013, 22) { word pd76; pd76 = (* (( (ptr) (* (( (ptr) gf←c22776)+82)/* var←c21304 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd76 ))))(c←v6596, e←v6652, pd76); }; SOURCE(7037, 29) { word pd77; pd77 = (* (( (ptr) (* (( (ptr) gf←c22776)+82)/* var←c21304 */ ))+64) ); (void) ( *( (fPt) ((* (ptr) pd77 ))))(c←v6596, details←v6680, pd77); }; SOURCE(7068, 94) if ((details←v6680 == 0)) { SOURCE(7090, 72) { word c←v18992; word delay←v19020; c←v18992 = c←v6596; { word pd78; pd78 = (* (( (ptr) (* (( (ptr) gf←c22776)+83)/* var←c21336 */ ))+9) ); delay←v19020 = (word) ( *( (fPt) ((* (ptr) pd78 ))))(c←v6596, w←v6624, pd78); }; { word pd79; if (((* (( (ptr) c←v18992)+5) ) != 0) || (0 != (* (( (ptr) c←v18992)+35) ))) { pd79 = (* (( (ptr) (* (( (ptr) gf←c22776)+82)/* var←c21304 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd79 ))))(c←v18992, delay←v19020, pd79); }; }; }; }; } static void InternalAddMatch←P1260(c←v6740, w←v6768, match←v6796, generate←v6824) word c←v6740; word w←v6768; word match←v6796; word generate←v6824; { word wd←v9588; /* InternalAddMatch: */ SOURCE(7171, 323) SOURCE(7279, 44) wd←v9588 = (word) GetOrCreateWindowData←P720(c←v6740, w←v6768); SOURCE(7325, 31) generate←v6824 |= 131072; SOURCE(7358, 61) { word var←c21368; { word var←c21400; word s2←v19192; s2←v19192 = (* (( (ptr) wd←v9588)+2) ); var←c21400 = (word) XRM←BITOR(generate←v6824, s2←v19192); var←c21368 = var←c21400; }; (* (( (ptr) wd←v9588)+2) ) = var←c21368; }; SOURCE(7459, 35) (void) AddMatchToList←P1020(wd←v9588, match←v6796, generate←v6824); } static void AddMatches←P1320(c←v6884, w←v6912, matchList←v6940, generate←v6968, details←v6996) word c←v6884; word w←v6912; word matchList←v6940; word generate←v6968; word details←v6996; { /* AddMatches: */ SOURCE(7499, 217) SOURCE(7622, 94) { register word l←v9632; l←v9632 = matchList←v6940; lab←L100044: ; if ((l←v9632 != 0)) { } else { goto lab←L100041; }; SOURCE(7674, 42) (void) AddMatch←P1380(c←v6884, w←v6912, (* (ptr) l←v9632 ), generate←v6968, details←v6996); l←v9632 = (* (( (ptr) l←v9632)+1) ); goto lab←L100044; lab←L100041: ; }; } static void AddMatch←P1380(c←v7056, formal←c0297, formal←c0298, formal←c0299, formal←c0300) word c←v7056; word formal←c0297; word formal←c0298; word formal←c0299; word formal←c0300; { W10 var←c22808; /* declaration of w←v7084 skipped */ /* declaration of match←v7112 skipped */ /* declaration of generate←v7140 skipped */ /* declaration of details←v7168 skipped */ register ptr gf←c22840 = (ptr) &globalframe; /* declaration of var←c21464 skipped */ (* (( (ptr) &var←c22808)+4)/* w←v7084 */ ) = formal←c0297; (* (( (ptr) &var←c22808)+5)/* match←v7112 */ ) = formal←c0298; (* (( (ptr) &var←c22808)+6)/* generate←v7140 */ ) = formal←c0299; (* (( (ptr) &var←c22808)+7)/* details←v7168 */ ) = formal←c0300; /* AddMatch: */ SOURCE(7730, 601) { word tmpAddr80; tmpAddr80 = (word) (( (ptr) &var←c22808)+8)/* var←c21464 */ ; (* (ptr) tmpAddr80 ) = ( ((word) (fPt) action←P3168) ); (* (( (ptr) tmpAddr80) + 1) ) = 1; }; SOURCE(8267, 31) (* (( (ptr) (&var←c22808)) + 6) ) |= 131072; SOURCE(8300, 31) { word pd81; pd81 = (* (( (ptr) (* (( (ptr) gf←c22840)+82)/* var←c21304 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd81 ))))(c←v7056, (word) (( (bPt) &var←c22808)+32)/* var←c21464 */ , (* (( (ptr) &var←c22808)+7) /* details←v7168 */ ), pd81); }; } static void action←P3168(c←v9752, formal←c22872) word c←v9752; word formal←c22872; { word wd←v9780; word newEvents←v9808; formal←c22872 = (formal←c22872 - 32); /* action: */ SOURCE(7837, 422) SOURCE(7870, 44) wd←v9780 = (word) GetOrCreateWindowData←P720(c←v9752, (* (( (ptr) formal←c22872)+4) )); SOURCE(7916, 79) { word s1←v19116; word s2←v19144; s1←v19116 = (* (( (ptr) wd←v9780)+1) ); s2←v19144 = (* (( (ptr) wd←v9780)+2) ); newEvents←v9808 = (word) XRM←BITOR(s1←v19116, s2←v19144); }; SOURCE(7997, 49) newEvents←v9808 = (word) XRM←BITOR(newEvents←v9808, (* (( (ptr) formal←c22872)+6) )); SOURCE(8048, 32) newEvents←v9808 |= 131072; SOURCE(8082, 35) (void) AddMatchToList←P1020(wd←v9780, (* (( (ptr) formal←c22872)+5) ), (* (( (ptr) formal←c22872)+6) )); SOURCE(8119, 140) if ((newEvents←v9808 != (* (( (ptr) wd←v9780)+2) ))) { SOURCE(8155, 27) (* (( (ptr) wd←v9780)+2) ) = newEvents←v9808; SOURCE(8184, 75) if (((* (( (ptr) formal←c22872)+4) ) != 0)) { SOURCE(8208, 51) (void) PrivateChangeEvents←P1200(c←v9752, (* (( (ptr) formal←c22872)+4) ), (* (( (ptr) wd←v9780)+2) ), (* (( (ptr) formal←c22872)+7) )); }; }; } static void RemoveMatch←P1440(c←v7228, formal←c0301, formal←c0302, formal←c0303) word c←v7228; word formal←c0301; word formal←c0302; word formal←c0303; { W11 var←c22904; /* declaration of w←v7256 skipped */ /* declaration of match←v7284 skipped */ /* declaration of details←v7312 skipped */ register ptr gf←c22936 = (ptr) &globalframe; /* declaration of var←c21560 skipped */ /* declaration of proc←v9880 skipped */ /* declaration of wd←v9908 skipped */ (* (( (ptr) &var←c22904)+4)/* w←v7256 */ ) = formal←c0301; (* (( (ptr) &var←c22904)+5)/* match←v7284 */ ) = formal←c0302; (* (( (ptr) &var←c22904)+6)/* details←v7312 */ ) = formal←c0303; /* RemoveMatch: */ SOURCE(8336, 789) { word tmpAddr82; tmpAddr82 = (word) (( (ptr) &var←c22904)+7)/* var←c21560 */ ; (* (ptr) tmpAddr82 ) = ( ((word) (fPt) action←P3228) ); (* (( (ptr) tmpAddr82) + 1) ) = 1; }; SOURCE(8993, 32) (* (( (ptr) &var←c22904)+9)/* proc←v9880 */ ) = (* (ptr) (* (( (ptr) &var←c22904)+5)/* match←v7284 */ ) ); SOURCE(9027, 36) (* (( (ptr) &var←c22904)+10)/* wd←v9908 */ ) = (word) GetWindowData←P660(c←v7228, (* (( (ptr) &var←c22904)+4)/* w←v7256 */ )) ; SOURCE(9065, 60) if ( ( ((* (( (ptr) &var←c22904)+10)/* wd←v9908 */ ) != 0) ? ((* (( (ptr) &var←c22904)+5)/* match←v7284 */ ) != 0) : 0 ) ) { SOURCE(9094, 31) { word pd83; pd83 = (* (( (ptr) (* (( (ptr) gf←c22936)+82)/* var←c21304 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd83 ))))(c←v7228, (word) (( (bPt) &var←c22904)+28)/* var←c21560 */ , (* (( (ptr) &var←c22904)+6) /* details←v7312 */ ), pd83); }; }; } static void action←P3228(c←v9984, formal←c23000) word c←v9984; word formal←c23000; { register ptr gf←c22968 = (ptr) &globalframe; formal←c23000 = (formal←c23000 - 28); /* action: */ SOURCE(8424, 556) SOURCE(8510, 51) (void) RemoveMatchFromList←P1080((* (( (ptr) formal←c23000)+10) ), (* (( (ptr) formal←c23000)+9) ), (* (( (ptr) (* (( (ptr) formal←c23000)+5) ))+2) ), (* (( (ptr) (* (( (ptr) formal←c23000)+5) ))+3) )); SOURCE(8563, 136) { word pd84; pd84 = (* (( (ptr) (* (( (ptr) gf←c22968)+83)/* var←c21336 */ ))+9) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd84 ))))(c←v9984, (* (( (ptr) formal←c23000)+4) ), pd84))) { SOURCE(8605, 96) { word n←v10012; SOURCE(8637, 26) { word idx85; n←v10012 = ( idx85 = (word) UsedLength←P780((* (ptr) ((* (( (ptr) formal←c23000)+10) )) )), SGNCK(idx85) ); }; SOURCE(8665, 34) if ((n←v10012 == 0)) { SOURCE(8677, 22) (void) RemoveWindowData←P600(c←v9984, (* (( (ptr) formal←c23000)+4) )); }; }; }; }; SOURCE(8704, 281) { word internal←v10056; word new←v10084; SOURCE(8710, 47) internal←v10056 = (word) GetInternalEvents←P1140((* (ptr) ((* (( (ptr) formal←c23000)+10) )) )); SOURCE(8802, 60) { word s2←v19068; s2←v19068 = (* (( (ptr) (* (( (ptr) formal←c23000)+10) ))+1) ); new←v10084 = (word) XRM←BITOR(internal←v10056, s2←v19068); }; SOURCE(8864, 116) if ((new←v10084 != (* (( (ptr) (* (( (ptr) formal←c23000)+10) ))+2) ))) { SOURCE(8894, 21) (* (( (ptr) (* (( (ptr) formal←c23000)+10) ))+2) ) = new←v10084; SOURCE(8917, 63) if (((* (( (ptr) formal←c23000)+4) ) != 0)) { SOURCE(8941, 39) (void) PrivateChangeEvents←P1200(c←v9984, (* (( (ptr) formal←c23000)+4) ), new←v10084, (* (( (ptr) formal←c23000)+6) )); }; }; }; } static void AddMatchForUnregistered←P1500(c←v7372, formal←c0304) word c←v7372; word formal←c0304; { W7 var←c23032; /* declaration of match←v7400 skipped */ register ptr gf←c23064 = (ptr) &globalframe; /* declaration of var←c21656 skipped */ var←c23032.f4/* match←v7400 */ = formal←c0304; /* AddMatchForUnregistered: */ SOURCE(9130, 224) { word tmpAddr86; tmpAddr86 = (word) (( (ptr) &var←c23032)+5)/* var←c21656 */ ; (* (ptr) tmpAddr86 ) = ( ((word) (fPt) action←P3384) ); (* (( (ptr) tmpAddr86) + 1) ) = 1; }; SOURCE(9308, 46) { word pd87; pd87 = (* (( (ptr) (* (( (ptr) gf←c23064)+82)/* var←c21304 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd87 ))))(c←v7372, (word) (( (bPt) &var←c23032)+20)/* var←c21656 */ , (* (ptr) (* (( (ptr) (* ( ( (ptr) gf←c23064)+84)/* var←c21688 */ ))+5) ) ), pd87); }; } static void action←P3384(c←v10204, formal←c23096) word c←v10204; word formal←c23096; { word h←v10232; formal←c23096 = (formal←c23096 - 20); /* action: */ SOURCE(9201, 102) SOURCE(9234, 35) h←v10232 = (* (( (ptr) c←v10204)+27) ); SOURCE(9271, 32) (void) AddMatchToList←P1020((* (( (ptr) h←v10232)+2) ), (* (( (ptr) formal←c23096)+4) ), 0); } static word EnforcedSetOfEvent←P1560(c←v7460, w←v7488, external←v7516) word c←v7460; word w←v7488; word external←v7516; { word var←c7560; /* EnforcedSetOfEvent: */ SOURCE(9359, 437) SOURCE(9359, 437) var←c7560 = 0; SOURCE(9496, 300) if ((external←v7516 != 0)) { SOURCE(9531, 267) { word wd←v10276; word internal←v10304; SOURCE(9533, 44) wd←v10276 = (word) GetOrCreateWindowData←P720(c←v7460, w←v7488); SOURCE(9579, 47) internal←v10304 = (word) GetInternalEvents←P1140((* (ptr) (wd←v10276) )); SOURCE(9628, 28) (* (( (ptr) wd←v10276)+1) ) = external←v7516; SOURCE(9658, 47) external←v7516 = (word) XRM←BITOR(internal←v10304, external←v7516); SOURCE(9707, 31) external←v7516 |= 131072; SOURCE(9779, 17) return(external←v7516); }; }; SOURCE(9359, 437) return(var←c7560); } static void AddPriviledgedMatch←P1620(c←v7620, formal←c0305) word c←v7620; word formal←c0305; { W7 var←c23128; /* declaration of match←v7648 skipped */ register ptr gf←c23160 = (ptr) &globalframe; /* declaration of var←c21720 skipped */ var←c23128.f4/* match←v7648 */ = formal←c0305; /* AddPriviledgedMatch: */ SOURCE(9805, 213) { word tmpAddr88; tmpAddr88 = (word) (( (ptr) &var←c23128)+5)/* var←c21720 */ ; (* (ptr) tmpAddr88 ) = ( ((word) (fPt) action←P3492) ); (* (( (ptr) tmpAddr88) + 1) ) = 1; }; SOURCE(9972, 46) { word pd89; pd89 = (* (( (ptr) (* (( (ptr) gf←c23160)+82)/* var←c21304 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd89 ))))(c←v7620, (word) (( (bPt) &var←c23128)+20)/* var←c21720 */ , (* (ptr) (* (( (ptr) (* ( ( (ptr) gf←c23160)+84)/* var←c21688 */ ))+5) ) ), pd89); }; } static void action←P3492(c←v10424, formal←c23192) word c←v10424; word formal←c23192; { word h←v10452; formal←c23192 = (formal←c23192 - 20); /* action: */ SOURCE(9873, 94) SOURCE(9906, 35) h←v10452 = (* (( (ptr) c←v10424)+27) ); SOURCE(9943, 24) (void) AddMatchToList←P1020(h←v10452, (* (( (ptr) formal←c23192)+4) ), 0); } static void RemovePriviledgedMatch←P1680(c←v7708, formal←c0306) word c←v7708; word formal←c0306; { W8 var←c23224; /* declaration of match←v7736 skipped */ register ptr gf←c23256 = (ptr) &globalframe; /* declaration of var←c21752 skipped */ /* declaration of proc←v10524 skipped */ var←c23224.f4/* match←v7736 */ = formal←c0306; /* RemovePriviledgedMatch: */ SOURCE(10023, 405) { word tmpAddr90; tmpAddr90 = (word) (( (ptr) &var←c23224)+5)/* var←c21752 */ ; (* (ptr) tmpAddr90 ) = ( ((word) (fPt) action←P3552) ); (* (( (ptr) tmpAddr90) + 1) ) = 1; }; SOURCE(10348, 32) var←c23224.f7/* proc←v10524 */ = (* (ptr) var←c23224.f4/* match←v7736 */ ); SOURCE(10382, 46) { word pd91; pd91 = (* (( (ptr) (* (( (ptr) gf←c23256)+82)/* var←c21304 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd91 ))))(c←v7708, (word) (( (bPt) &var←c23224)+20)/* var←c21752 */ , (* (ptr) (* (( (ptr) (* ( ( (ptr) gf←c23256)+84)/* var←c21688 */ ))+5) ) ), pd91); }; } static void action←P3552(c←v10600, formal←c23320) word c←v10600; word formal←c23320; { W6 var←c23288; /* declaration of var←c21784 skipped */ word h←v10656; formal←c23320 = (formal←c23320 - 20); var←c23288.f0 = formal←c23320; /* action: */ SOURCE(10093, 249) { word tmpAddr92; tmpAddr92 = (word) (( (ptr) &var←c23288)+4)/* var←c21784 */ ; (* (ptr) tmpAddr92 ) = ( ((word) (fPt) CheckForEmpty←P3612) ); (* (( (ptr) tmpAddr92) + 1) ) = 1; }; SOURCE(10237, 35) h←v10656 = (* (( (ptr) c←v10600)+27) ); SOURCE(10274, 50) (void) RemoveMatchFromList←P1080(h←v10656, (* (( (ptr) formal←c23320)+7) ), (* (( (ptr) (* (( (ptr) formal←c23320)+4) ))+2) ), (* (( (ptr) (* (( (ptr) formal←c23320)+4) ))+3) )); SOURCE(10326, 16) (void) CheckForEmpty←P3612(h←v10656, (word) (( (bPt) &var←c23288)+16)/* var←c21784 */ ); } static void CheckForEmpty←P3612(h←v10732, formal←c23384) word h←v10732; word formal←c23384; { register ptr gf←c23352 = (ptr) &globalframe; formal←c23384 = (formal←c23384 - 16); /* CheckForEmpty: */ SOURCE(10126, 108) (void) (XR←MonitorEntry((word) (( (bPt) gf←c23352)+16)/* LOCK←v2804 */ )); SOURCE(10176, 58) if (((word) UsedLength←P780((* ((( (ptr) h←v10732)+1)) )) == 0)) { SOURCE(10213, 21) (* (( (ptr) h←v10732)+1) ) = 0; }; SOURCE(10126, 108) (void) (XR←MonitorExit((word) (( (bPt) gf←c23352)+16)/* LOCK←v2804 */ )); return; } static void InitWindow←P1740(c←v7796, w←v7824) word c←v7796; word w←v7824; { register ptr gf←c23416 = (ptr) &globalframe; word h←v10760; /* InitWindow: */ SOURCE(10434, 129) SOURCE(10489, 35) h←v10760 = (* (( (ptr) c←v7796)+27) ); SOURCE(10526, 37) { word var←c21816; word pd93; pd93 = (* (( (ptr) (* (( (ptr) gf←c23416)+80)/* var←c20312 */ ))+11) ); var←c21816 = (word) ( *( (fPt) ((* (ptr) pd93 ))))((* (ptr) h←v10760 ), w←v7824, pd93); }; } static void RemoveWindow←P1800(c←v7884, w←v7912) word c←v7884; word w←v7912; { register ptr gf←c23448 = (ptr) &globalframe; word h←v10804; /* RemoveWindow: */ SOURCE(10568, 271) SOURCE(10625, 35) h←v10804 = (* (( (ptr) c←v7884)+27) ); SOURCE(10662, 177) if ((w←v7912 != 0)) { SOURCE(10683, 158) { word deleted←v10848; SOURCE(10685, 48) { word pd94; pd94 = (* (( (ptr) (* (( (ptr) gf←c23448)+80)/* var←c20312 */ ))+11) ); deleted←v10848 = (word) ( *( (fPt) ((* (ptr) pd94 ))))((* (ptr) h←v10804 ), w←v7912, pd94); }; SOURCE(10736, 103) { word tc95; word pd96; if ((0 != deleted←v10848)) { pd96 = (* (( (ptr) (* (( (ptr) gf←c23448)+83)/* var←c21336 */ ))+9) ); tc95 = (word) (0 != (word) ( *( (fPt) ((* (ptr) pd96 ))))(c←v7884, w←v7912, pd96)); } else { tc95 = (word) 0; }; if (tc95) { SOURCE(10792, 47) { word pd97; pd97 = (* (( (ptr) (* (( (ptr) gf←c23448)+83)/* var←c21336 */ ))+8) ); (void) ( *( (fPt) ((* (ptr) pd97 ))))(c←v7884, w←v7912, pd97); }; }; }; }; }; } static void InitConnection←P1860(c←v7972) word c←v7972; { register ptr gf←c23480 = (ptr) &globalframe; /* InitConnection: */ SOURCE(10847, 337) SOURCE(10895, 147) { word var←c21848; { word var←c21880; word var←c21912; word var←c21976; word var←c22040; { word pd98; pd98 = (* (( (ptr) (* (( (ptr) gf←c23480)+80)/* var←c20312 */ ))+5) ); var←c21880 = (word) ( *( (fPt) ((* (ptr) pd98 ))))(17, pd98); }; var←c21912 = XR←NewObject(4, (* (( (ptr) gf←c23480)+15) )); var←c21976 = XR←NewObject(8, (* (( (ptr) gf←c23480)+11) )); var←c22040 = XR←NewObject(16, (* (( (ptr) gf←c23480)+9) )); (* (ptr) var←c22040 ) = var←c21880; (* (( (ptr) var←c22040)+2) ) = var←c21912; (* (( (ptr) var←c22040)+3) ) = var←c21976; var←c21848 = var←c22040; }; (* (( (ptr) c←v7972)+27) ) = var←c21848; }; SOURCE(11044, 44) { word var←c22072; var←c22072 = (word) GetOrCreateWindowData←P720(c←v7972, 0); }; SOURCE(11090, 94) { register word i←v10892 = 0; register word noName←c22104; noName←c22104 = (* (ptr) (* (( (ptr) (* (( (ptr) c←v7972)+16) ))+17) ) ); if ((i←v10892 >= noName←c22104)) { goto lab←L100047; }; lab←L100050: ; SOURCE(11130, 54) { word var←c22168; { word var←c22136; word var←c0284; { word limit99; var←c22136 = (* (( (ptr) (* (( (ptr) c←v7972)+16) ))+17) ); var←c0284 = (* (ptr) (* ((( (ptr) var←c22136)+1)+( limit99 = (* (ptr) var←c22136 ), BCK(i←v10892, limit99) )) ) ); }; var←c22168 = (word) GetOrCreateWindowData←P720(c←v7972, var←c0284); }; }; i←v10892 = (i←v10892 + 1); if ((i←v10892 < noName←c22104)) { goto lab←L100050; }; lab←L100047: ; }; } /* file: XlDispatchImpl, module: XlDispatchImpl, compiled at: September 14, 1993 4:27:49 pm PDT */ extern void XR←install←XlDispatchImpl() { NoName←Q4512(); } extern void XR←run←XlDispatchImpl() { XR←Start(&globalframe); }