/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */ /* time: January 19, 1993 12:22:13 pm PST */ /* C2C version: October 7, 1992 (native) */ /* ref-counting: off */ /* file: CommanderImpl, module: CommanderImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> static char versionStamp[] = "@(#)mob←version [3436238190,163555702] CommanderImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef word (*fPt)(); typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8; typedef struct {word f0, f1;} W2; typedef struct {word f0, f1, f2, f3;} W4; typedef struct {word f0, f1, f2, f3, f4, f5;} W6; typedef struct {word f0, f1, f2, f3, f4;} W5; typedef struct {W8 f; word r;} W9; typedef struct {W8 f; W2 r;} W10; #define SOURCE(p, l) /* source p, l */ static void NoName←Q2184(); static void CommanderImpl←P0(); static void Register←P60(); static void ChangeRegistry←P120(); static word Update←P900(); static word Lookup←P180(); static word NoName←Q2244(); static word LookupInRegistry←P240(); static void Enumerate←P300(); static word NoName←Q2304(); static void EnumerateInRegistry←P360(); static word EachPairProc←P1344(); static void EnumeratePattern←P420(); static word NoName←Q2364(); static void EnumPatternInRegistry←P480(); static word EachPairProc←P1548(); static word GetProp←P540(); static word GetWDir←P600(); static word GetDefaultWDir←P660(); static word PrependWorkingDir←P720(); static word GetProperty←P780(); static word NoName←Q2424(); static word PutProperty←P840(); static word NoName←Q2484(); static void NoName←Q2544(); static void NoName←Q2604(); static void NoName←Q2664(); static void NoName←Q2724(); static void NoName←Q2784(); static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\314\320\325\156\300\011\277\251\166\100\200\000\000"}; static struct {unsigned f; char r[4];} string2 = {131074, "\004\017\000"}; static struct {unsigned f; char r[4];} string3 = {131076, "\216\251\000"}; static struct {unsigned f; char r[4];} string4 = {65537, "\001\000\000"}; static struct {unsigned f; char r[40];} string5 = {2555944, "\262\260\004\003\153\145\171\216\257\300\363\223\326\161\300\017\164\046\072\104\350\261\260\000\216\257\300\373\225\000\071\300\362\156\307\320\100\244\261"}; static struct {unsigned f; char r[44];} string6 = {2752556, "\260\007\006\154\145\156\147\164\150\210\241\000\200\177\377\005\004\164\145\170\164\254\206\012\011\155\141\170\114\145\156\147\164\150\210\241\000\200\177\377\243\261\000"}; static struct {unsigned f; char r[116];} string7 = {7471220, "\262\260\012\011\155\141\164\143\150\120\162\157\143\262\260\004\003\153\145\171\216\257\300\363\223\326\161\300\017\164\046\072\104\350\011\010\160\162\157\143\104\141\164\141\216\257\300\373\225\000\071\300\362\156\307\320\100\244\261\260\005\004\163\164\157\160\232\261\261\260\004\003\153\145\171\216\257\300\363\223\326\161\300\017\164\046\072\104\350\011\010\160\162\157\143\104\141\164\141\216\257\300\373\225\000\071\300\362\156\307\320\100\244\261\000"}; static struct {unsigned f; char r[16];} string8 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"}; static struct {unsigned f; char r[140];} string9 = {8978572, "\262\260\010\007\160\141\164\164\145\162\156\216\257\300\363\223\326\161\300\017\164\046\072\104\350\012\011\155\141\164\143\150\120\162\157\143\262\260\004\003\153\145\171\216\257\300\363\223\326\161\300\017\164\046\072\104\350\011\010\160\162\157\143\104\141\164\141\216\257\300\373\225\000\071\300\362\156\307\320\100\244\261\260\005\004\163\164\157\160\232\261\261\260\004\003\153\145\171\216\257\300\363\223\326\161\300\017\164\046\072\104\350\011\010\160\162\157\143\104\141\164\141\216\257\300\373\225\000\071\300\362\156\307\320\100\244\261\000\000"}; static struct {unsigned f; char r[16];} string10 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\104\304\000\000"}; static struct {unsigned f; char r[24];} string11 = {1376277, "\007\000\001\002\007\020\001\002\000\007\036\002\004\003\002\004\014\016\015\003\001\000\000"}; static struct {unsigned f; char r[16];} string12 = {851984, "\257\300\373\225\000\071\300\362\156\307\320\100\244\000\000"}; static struct {unsigned f; char r[4];} string13 = {131074, "\004\006\000"}; static struct {unsigned f; char r[40];} string14 = {2490408, "\262\260\004\003\143\155\144\216\257\300\373\225\000\071\300\362\156\307\320\100\230\004\003\153\145\171\217\261\260\006\005\166\141\154\165\145\217\261\000"}; static struct {unsigned f; char r[20];} string15 = {1048596, "WorkingDirectory\000\000\000"}; static struct {unsigned f; char r[16];} string16 = {917520, "StdEnumPattern\000"}; static struct {unsigned f; char r[4];} string17 = {196612, "PWD"}; static struct {unsigned f; char r[4];} string18 = {65540, "/\000\000"}; static struct {unsigned f; char r[16];} string19 = {786448, "StdEnumerate\000\000\000"}; static struct {unsigned f; char r[12];} string20 = {589836, "StdLookup\000\000"}; static struct {unsigned f; char r[16];} string21 = {851984, "\257\300\314\320\325\156\300\011\277\251\166\100\164\000\000"}; static struct {unsigned f; char r[12];} string22 = {655370, "\006\003 \001$\001@\134\004?\000"}; static struct {unsigned f; char r[16];} string23 = {851984, "\257\300\144\364\322\150\300\206\136\277\046\100\150\000\000"}; static struct {unsigned f; char r[16];} string24 = {851984, "\257\300\314\116\377\204\300\167\024\373\125\100\150\000\000"}; static struct {unsigned f; char r[16];} string25 = {851984, "\257\300\240\236\274\171\300\344\000\142\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string26 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"}; static struct {unsigned f; char r[16];} string27 = {851984, "\257\300\072\337\114\355\300\232\070\352\142\100\150\000\000"}; static struct {unsigned f; char r[16];} string28 = {851984, "\257\300\322\342\022\352\300\100\014\165\000\100\150\000\000"}; static struct {unsigned f; char r[16];} string29 = {851984, "\257\300\373\225\000\071\300\362\156\307\320\100\150\000\000"}; static struct {unsigned f; char r[16];} string30 = {851984, "\257\300\206\126\034\347\300\061\333\303\163\100\150\000\000"}; static struct { word f0[29]; 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[8]; } globalframe = { {0}, (word) PutProperty←P840, 0, (word) GetProperty←P780, 0, (word) PrependWorkingDir←P720, 0, (word) GetDefaultWDir←P660, 0, (word) GetWDir←P600, 0, (word) GetProp←P540, 0, (word) EnumPatternInRegistry←P480, 0, (word) EnumeratePattern←P420, 0, (word) EnumerateInRegistry←P360, 0, (word) Enumerate←P300, 0, (word) LookupInRegistry←P240, 0, (word) Lookup←P180, 0, (word) ChangeRegistry←P120, 0, (word) Register←P60, 0, (word) CommanderImpl←P0, {0} }; static void NoName←Q2184() { register ptr gf←c0185 = (ptr) &globalframe; word var←c17736; (* (( (ptr) gf←c0185)+10) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2); (* (( (ptr) gf←c0185)+11) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4); (* (( (ptr) gf←c0185)+14) ) = (word) XR←GetTypeIndexS((word) (&string5)); (* (( (ptr) gf←c0185)+15) ) = (word) XR←GetTypeIndexS((word) (&string6)); (* (( (ptr) gf←c0185)+16) ) = (word) XR←GetTypeIndexS((word) (&string7)); (* (( (ptr) gf←c0185)+17) ) = (word) XR←GetTypeIndex((word) &string8, 0, (word) &string4); (* (( (ptr) gf←c0185)+18) ) = (word) XR←GetTypeIndexS((word) (&string9)); (* (( (ptr) gf←c0185)+19) ) = (word) XR←GetTypeIndex((word) &string10, 0, (word) &string11); (* (( (ptr) gf←c0185)+21) ) = (word) XR←GetTypeIndex((word) &string12, 0, (word) &string13); (* (( (ptr) gf←c0185)+22) ) = (word) XR←GetTypeIndexS((word) (&string14)); (* (ptr) (( (bPt) gf←c0185)+92) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0185)+11) ), (word) &string15); (* (ptr) (( (bPt) gf←c0185)+96) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0185)+11) ), (word) &string16); (* (ptr) (( (bPt) gf←c0185)+100) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0185)+17) ), (word) &string17); (* (ptr) (( (bPt) gf←c0185)+104) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0185)+17) ), (word) &string18); (* (ptr) (( (bPt) gf←c0185)+108) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0185)+11) ), (word) &string19); (* (ptr) (( (bPt) gf←c0185)+112) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0185)+11) ), (word) &string20); (void) XR←DeclareGlobalFrame((word) "CommanderImpl", &globalframe, (word) XR←GetTypeIndex((word) &string21, 0, (word) &string22) , (word) (( (bPt) gf←c0185)+228)/* var←c16136 */ ); var←c17736 = (word) XR←ImportInterface((word) "List", (word) XR←GetTypeIndexS((word) (&string23)), 28); (* (( (ptr) gf←c0185)+63)/* var←c17192 */ ) = var←c17736; (void) XR←ImportProcS(var←c17736, 67899907); (void) XR←ImportProcS(var←c17736, 67637250); var←c17736 = (word) XR←ImportInterface((word) "ProcessProps", (word) XR←GetTypeIndexS((word) (&string24)), 6); (* (( (ptr) gf←c0185)+62)/* var←c17160 */ ) = var←c17736; (void) XR←ImportProcS(var←c17736, 67109376); var←c17736 = (word) XR←ImportInterface((word) "Prop", (word) XR←GetTypeIndexS((word) (&string25)), 4); (* (( (ptr) gf←c0185)+60)/* var←c16296 */ ) = var←c17736; (void) XR←ImportProcS(var←c17736, 67895299); var←c17736 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string26)), 43); (* (( (ptr) gf←c0185)+61)/* var←c17064 */ ) = var←c17736; (void) XR←ImportProcS(var←c17736, 67896323); (void) XR←ImportProcS(var←c17736, 67903235); (void) XR←ImportProcS(var←c17736, 67633666); (void) XR←ImportProcS(var←c17736, 67373313); (void) XR←ImportProcS(var←c17736, 67900163); var←c17736 = (word) XR←ImportInterface((word) "SymTab", (word) XR←GetTypeIndexS((word) (&string27)), 13); (* (( (ptr) gf←c0185)+59)/* var←c16168 */ ) = var←c17736; (void) XR←ImportProcS(var←c17736, 67635714); (void) XR←ImportProcS(var←c17736, 134742786); (void) XR←ImportProcS(var←c17736, 67896835); (void) XR←ImportProcS(var←c17736, 67635202); (void) XR←ImportProcS(var←c17736, 67633410); var←c17736 = (word) XR←ImportInterface((word) "UnixEnviron", (word) XR←GetTypeIndexS((word) (&string28)), 1); (* (( (ptr) gf←c0185)+64)/* var←c17320 */ ) = var←c17736; (void) XR←ImportProcS(var←c17736, 67371009); var←c17736 = (word) XR←ExportInterface((word) "Commander", (word) XR←GetTypeIndexS((word) (&string29)), 3); (* (( (ptr) gf←c0185)+65)/* var←c17768 */ ) = var←c17736; (void) XR←ExportProcS(var←c17736, (word) (( (bPt) gf←c0185)+220)/* var←c16104 */ , 1310725); (void) XR←ExportProcS(var←c17736, (word) (( (bPt) gf←c0185)+188)/* var←c15976 */ , 134480129); (void) XR←ExportProcS(var←c17736, (word) (( (bPt) gf←c0185)+204)/* var←c16040 */ , 67371521); var←c17736 = (word) XR←ExportInterface((word) "CommanderRegistry", (word) XR←GetTypeIndexS((word) (&string30)), 3); (* (( (ptr) gf←c0185)+65)/* var←c17768 */ ) = var←c17736; (void) XR←ExportProcS(var←c17736, (word) (( (bPt) gf←c0185)+212)/* var←c16072 */ , 262145); (void) XR←ExportProcS(var←c17736, (word) (( (bPt) gf←c0185)+172)/* var←c15912 */ , 134742274); (void) XR←ExportProcS(var←c17736, (word) (( (bPt) gf←c0185)+156)/* var←c15848 */ , 67633666); } static void CommanderImpl←P0(formal←c046, formal←c035) word formal←c046; word formal←c035; { register ptr gf←c17800 = (ptr) &globalframe; /* CommanderImpl: */ SOURCE(427, 5890) SOURCE(961, 66) { word pd31; pd31 = (* (( (ptr) (* (( (ptr) gf←c17800)+59)/* var←c16168 */ ))+5) ); (* (( (ptr) gf←c17800)+8)/* commandRegistry←v3000 */ ) = (word) ( *( (fPt) ((* (ptr) pd31 ))))(101, 0, pd31); }; SOURCE(1029, 322) { word var←c16200; word var←c16328; word var←c16424; word var←c16520; { word var←c16232; { word var←c16264; var←c16264 = XR←NewObject(4, (* (( (ptr) gf←c17800)+14) )); (* (ptr) var←c16264 ) = (word) (( (bPt) gf←c17800)+196)/* var←c16008 */ ; var←c16232 = var←c16264; }; { word pd32; pd32 = (* (( (ptr) (* (( (ptr) gf←c17800)+60)/* var←c16296 */ ))+4) ); var←c16200 = (word) ( *( (fPt) ((* (ptr) pd32 ))))(0, (* (( (ptr) gf←c17800)+28) ), var←c16232, pd32); }; }; { word var←c16360; { word var←c16392; var←c16392 = XR←NewObject(4, (* (( (ptr) gf←c17800)+16) )); (* (ptr) var←c16392 ) = (word) (( (bPt) gf←c17800)+180)/* var←c15944 */ ; var←c16360 = var←c16392; }; { word pd33; pd33 = (* (( (ptr) (* (( (ptr) gf←c17800)+60)/* var←c16296 */ ))+4) ); var←c16328 = (word) ( *( (fPt) ((* (ptr) pd33 ))))(0, (* (( (ptr) gf←c17800)+27) ), var←c16360, pd33); }; }; { word var←c16456; { word var←c16488; var←c16488 = XR←NewObject(4, (* (( (ptr) gf←c17800)+18) )); (* (ptr) var←c16488 ) = (word) (( (bPt) gf←c17800)+164)/* var←c15880 */ ; var←c16456 = var←c16488; }; { word pd34; pd34 = (* (( (ptr) (* (( (ptr) gf←c17800)+60)/* var←c16296 */ ))+4) ); var←c16424 = (word) ( *( (fPt) ((* (ptr) pd34 ))))(0, (* (( (ptr) gf←c17800)+24) ), var←c16456, pd34); }; }; var←c16520 = XR←NewObject(16, (* (( (ptr) gf←c17800)+10) )); (* (ptr) var←c16520 ) = var←c16200; (* (( (ptr) var←c16520)+1) ) = var←c16328; (* (( (ptr) var←c16520)+2) ) = var←c16424; (* (( (ptr) gf←c17800)+9)/* hooks←v3028 */ ) = var←c16520; }; } static void Register←P60(key←v3668, proc←v3696, doc←v3724, clientData←v3752, interpreted←v3780) word key←v3668; word proc←v3696; word doc←v3724; word clientData←v3752; word interpreted←v3780; { register ptr gf←c17832 = (ptr) &globalframe; /* Register: */ SOURCE(1353, 378) (void) (XR←MonitorEntry((word) (( (bPt) gf←c17832)+16)/* LOCK←v2776 */ )); SOURCE(1490, 241) if ((proc←v3696 == 0)) { SOURCE(1511, 49) { word var←c16552; word pd35; pd35 = (* (( (ptr) (* (( (ptr) gf←c17832)+59)/* var←c16168 */ ))+12) ); var←c16552 = (word) ( *( (fPt) ((* (ptr) pd35 ))))((* (( (ptr) gf←c17832)+8)/* commandRegistry←v3000 */ ), key←v3668, pd35) ; }; } else { SOURCE(1569, 162) { word var←c16648; { word var←c16584; { word var←c16616; var←c16616 = XR←NewObject(16, (* (( (ptr) gf←c17832)+21) )); (* (ptr) var←c16616 ) = XR←CheckProc(proc←v3696); (* (( (ptr) var←c16616)+1) ) = doc←v3724; (* (( (ptr) var←c16616)+2) ) = clientData←v3752; (* (( (ptr) var←c16616)+3) ) = interpreted←v3780; var←c16584 = var←c16616; }; { word pd36; pd36 = (* (( (ptr) (* (( (ptr) gf←c17832)+59)/* var←c16168 */ ))+10) ); var←c16648 = (word) ( *( (fPt) ((* (ptr) pd36 ))))((* (( (ptr) gf←c17832)+8)/* commandRegistry←v3000 */ ), key←v3668, var←c16584, pd36) ; }; }; }; }; SOURCE(1353, 378) (void) (XR←MonitorExit((word) (( (bPt) gf←c17832)+16)/* LOCK←v2776 */ )); return; } static void ChangeRegistry←P120(change←v3856) word change←v3856; { W8 var←c17864; register ptr gf←c17896 = (ptr) &globalframe; /* declaration of var←c16680 skipped */ /* declaration of old←v4720 skipped */ /* declaration of new←v4748 skipped */ /* ChangeRegistry: */ SOURCE(1740, 522) { word tmpAddr37; tmpAddr37 = (word) (( (ptr) &var←c17864)+4)/* var←c16680 */ ; (* (ptr) tmpAddr37 ) = ( ((word) (fPt) Update←P900) ); (* (( (ptr) tmpAddr37) + 1) ) = 1; }; SOURCE(1880, 25) var←c17864.f6/* old←v4720 */ = (* (( (ptr) gf←c17896)+9)/* hooks←v3028 */ ); SOURCE(1907, 33) var←c17864.f7/* new←v4748 */ = XR←NewObject(16, (* (( (ptr) gf←c17896)+10) )); SOURCE(2071, 191) lab←L100002: ; SOURCE(2074, 169) { W4 var←c16744; (void) ( *( (fPt) ((* (ptr) change←v3856 ))))((word) &var←c16744, (* (ptr) var←c17864.f6/* old←v4720 */ ), (* (( (ptr) var←c17864.f6/* old←v4720 */ )+1) ), (* (( (ptr) var←c17864.f6/* old←v4720 */ )+2) ), (* (( (ptr) var←c17864.f6/* old←v4720 */ )+3) ), change←v3856); (* (( (ptr) var←c17864.f7/* new←v4748 */ )+3) ) = var←c16744.f3; (* (( (ptr) var←c17864.f7/* new←v4748 */ )+2) ) = var←c16744.f2; (* (( (ptr) var←c17864.f7/* new←v4748 */ )+1) ) = var←c16744.f1; (* (ptr) var←c17864.f7/* new←v4748 */ ) = var←c16744.f0; }; SOURCE(2245, 17) if ((0 != (word) Update←P900((word) ((( (bPt) &var←c17864)+16)/* var←c16680 */ )))) { SOURCE(2262, 4) goto lab←L100001; }; goto lab←L100002; lab←L100001: ; } static word Update←P900(formal←c17960) word formal←c17960; { register ptr gf←c17928 = (ptr) &globalframe; word var←c4876; formal←c17960 = (formal←c17960 - 16); /* Update: */ SOURCE(1942, 124) (void) (XR←MonitorEntry((word) (( (bPt) gf←c17928)+16)/* LOCK←v2776 */ )); SOURCE(1980, 86) if (((* (( (ptr) formal←c17960)+6) ) == (* (( (ptr) gf←c17928)+9)/* hooks←v3028 */ ))) { SOURCE(2002, 11) (* (( (ptr) gf←c17928)+9)/* hooks←v3028 */ ) = (* (( (ptr) formal←c17960)+7) ); SOURCE(2015, 14) (void) (XR←MonitorExit((word) (( (bPt) gf←c17928)+16)/* LOCK←v2776 */ )); return(1); } else { SOURCE(2038, 11) (* (( (ptr) formal←c17960)+6) ) = (* (( (ptr) gf←c17928)+9)/* hooks←v3028 */ ); SOURCE(2051, 15) (void) (XR←MonitorExit((word) (( (bPt) gf←c17928)+16)/* LOCK←v2776 */ )); return(0); }; } static word Lookup←P180(formal←c0242) word formal←c0242; { W6 var←c17992; /* declaration of key←v11944 skipped */ register ptr gf←c18024 = (ptr) &globalframe; /* declaration of var←c01 skipped */ word var←c11988; var←c17992.f4/* key←v11944 */ = formal←c0242; /* Lookup: */ SOURCE(2281, 407) (void) (XR←MonitorEntry((word) (( (bPt) gf←c18024)+16)/* LOCK←v2776 */ )); SOURCE(2317, 371) { word var←c02; { word var←c0221; var←c0221 = (word) &var←c17992; var←c02 = (word) XR←Enable(( ((word) (fPt) NoName←Q2244) ), ( ((word) (fPt) NoName←Q2784) ), var←c0221); }; /* removed trivial cond node */ }; return(var←c17992.f5/* var←c01 */ ); } static word NoName←Q2244(formal←c0193) word formal←c0193; { register ptr gf←c0192 = (ptr) &globalframe; SOURCE(2340, 43) { word procData←v4904 = 0; SOURCE(2385, 264) { register word lPs←v4948; lPs←v4948 = (* (ptr) (* (( (ptr) gf←c0192)+9)/* hooks←v3028 */ ) ); lab←L100008: ; if ((lPs←v4948 != 0)) { } else { goto lab←L100005; }; SOURCE(2450, 199) { word var←c16776; var←c16776 = (* (( (ptr) lPs←v4948)+1) ); if ((var←c16776 == 0)) { goto lab←L100009; }; if (((* (( (ptr) gf←c0192)+14) ) == XR←GetReferentType(var←c16776))) { { word val←v4992; val←v4992 = var←c16776; SOURCE(2504, 147) { word proc←v5048; word pData←v5076; SOURCE(2506, 23) proc←v5048 = (* (ptr) val←v4992 ); SOURCE(2531, 46) pData←v5076 = (word) ( *( (fPt) ((* (ptr) proc←v5048 ))))((* ((( (ptr) formal←c0193)+4)) ), proc←v5048); SOURCE(2579, 70) if ((pData←v5076 != 0)) { SOURCE(2597, 52) if ((procData←v4904 == 0)) { SOURCE(2618, 20) procData←v4904 = pData←v5076; } else { SOURCE(2638, 11) (void) (XR←MonitorExit((word) (( (bPt) gf←c0192)+16)/* LOCK←v2776 */ )); (* (( (ptr) formal←c0193)+5) ) = 0; return(1); }; }; }; }; } else { lab←L100009: ; }; }; lPs←v4948 = (* (( (ptr) lPs←v4948)+2) ); goto lab←L100008; lab←L100005: ; }; SOURCE(2672, 16) (void) (XR←MonitorExit((word) (( (bPt) gf←c0192)+16)/* LOCK←v2776 */ )); (* (( (ptr) formal←c0193)+5) ) = procData←v4904; return(1); }; /* c2c skipped dead code */ } static word LookupInRegistry←P240(key←v11512) word key←v11512; { register ptr gf←c18056 = (ptr) &globalframe; word var←c11556; /* LookupInRegistry: */ SOURCE(2694, 186) SOURCE(2727, 122) { word var←c16808; W2 var←c074; { word pd38; pd38 = (* (( (ptr) (* (( (ptr) gf←c18056)+59)/* var←c16168 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd38 ))))((word) &var←c074, (* (( (ptr) gf←c18056)+8)/* commandRegistry←v3000 */ ), key←v11512, pd38) ; }; var←c16808 = var←c074.f1; if ((var←c16808 == 0)) { goto lab←L100010; }; if (((* (( (ptr) gf←c18056)+21) ) == XR←GetReferentType(var←c16808))) { { word procData←v5120; procData←v5120 = var←c16808; SOURCE(2832, 17) return(procData←v5120); }; } else { lab←L100010: ; }; }; SOURCE(2868, 12) return(0); } static void Enumerate←P300(formal←c079, formal←c0243) word formal←c079; word formal←c0243; { W5 var←c18088; /* declaration of matchProc←v12048 skipped */ register ptr gf←c18120 = (ptr) &globalframe; word key←v12092; word procData←v12120; var←c18088.f4/* matchProc←v12048 */ = formal←c0243; /* Enumerate: */ SOURCE(2886, 240) (void) (XR←MonitorEntry((word) (( (bPt) gf←c18120)+16)/* LOCK←v2776 */ )); SOURCE(2886, 240) key←v12092 = 0; SOURCE(2886, 240) procData←v12120 = 0; SOURCE(2928, 198) { word var←c0222; var←c0222 = (word) &var←c18088; (void) (word) XR←Enable(( ((word) (fPt) NoName←Q2304) ), ( ((word) (fPt) NoName←Q2724) ), var←c0222); }; /* removed tail goto */ (void) (XR←MonitorExit((word) (( (bPt) gf←c18120)+16)/* LOCK←v2776 */ )); (* (ptr) formal←c079 ) = key←v12092; (* (( (ptr) formal←c079)+1) ) = procData←v12120; return; } static word NoName←Q2304(formal←c0197) word formal←c0197; { register ptr gf←c0196 = (ptr) &globalframe; SOURCE(2951, 175) { register word ePs←v5164; ePs←v5164 = (* (( (ptr) (* (( (ptr) gf←c0196)+9)/* hooks←v3028 */ ))+1) ); lab←L100018: ; if ((ePs←v5164 != 0)) { } else { goto lab←L100015; }; SOURCE(3019, 107) { word var←c16840; var←c16840 = (* (( (ptr) ePs←v5164)+1) ); if ((var←c16840 == 0)) { goto lab←L100019; }; if (((* (( (ptr) gf←c0196)+16) ) == XR←GetReferentType(var←c16840))) { { word val←v5208; val←v5208 = var←c16840; SOURCE(3076, 52) { word proc←v5264; SOURCE(3078, 26) proc←v5264 = (* (ptr) val←v5208 ); SOURCE(3106, 20) { W2 var←c16872; (void) ( *( (fPt) ((* (ptr) proc←v5264 ))))((word) &var←c16872, (* (( (ptr) formal←c0197)+4) ), proc←v5264); }; }; }; } else { lab←L100019: ; }; }; ePs←v5164 = (* (( (ptr) ePs←v5164)+2) ); goto lab←L100018; lab←L100015: ; }; return(0); } static void EnumerateInRegistry←P360(formal←c092, formal←c0244) word formal←c092; word formal←c0244; { W9 var←c18152; /* declaration of matchProc←v11628 skipped */ register ptr gf←c18184 = (ptr) &globalframe; word key←v11672; word procData←v11700; /* declaration of var←c16904 skipped */ /* declaration of outerKey←v5308 skipped */ /* declaration of outerProcData←v5336 skipped */ (* (( (ptr) &var←c18152)+4)/* matchProc←v11628 */ ) = formal←c0244; /* EnumerateInRegistry: */ SOURCE(3153, 430) { word tmpAddr39; tmpAddr39 = (word) (( (ptr) &var←c18152)+5)/* var←c16904 */ ; (* (ptr) tmpAddr39 ) = ( ((word) (fPt) EachPairProc←P1344) ); (* (( (ptr) tmpAddr39) + 1) ) = 1; }; SOURCE(3153, 430) key←v11672 = 0; SOURCE(3153, 430) procData←v11700 = 0; SOURCE(3192, 14) (* (( (ptr) &var←c18152)+7)/* outerKey←v5308 */ ) = 0; SOURCE(3208, 42) (* (( (ptr) &var←c18152)+8)/* outerProcData←v5336 */ ) = 0; SOURCE(3428, 104) { word pd40; pd40 = (* (( (ptr) (* (( (ptr) gf←c18184)+59)/* var←c16168 */ ))+14) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd40 ))))((* (( (ptr) gf←c18184)+8)/* commandRegistry←v3000 */ ), (word) (( (bPt) &var←c18152)+20) /* var←c16904 */ , pd40))) { SOURCE(3497, 14) (* (( (ptr) &var←c18152)+7)/* outerKey←v5308 */ ) = 0; SOURCE(3513, 19) (* (( (ptr) &var←c18152)+8)/* outerProcData←v5336 */ ) = 0; }; }; SOURCE(3537, 46) key←v11672 = (* (( (ptr) &var←c18152)+7)/* outerKey←v5308 */ ); procData←v11700 = (* (( (ptr) &var←c18152)+8)/* outerProcData←v5336 */ ); /* removed tail goto */ (* (ptr) formal←c092 ) = key←v11672; (* (( (ptr) formal←c092)+1) ) = procData←v11700; return; } static word EachPairProc←P1344(key←v12704, val←v12732, formal←c18248) word key←v12704; word val←v12732; word formal←c18248; { register ptr gf←c18216 = (ptr) &globalframe; word quit←v12776; formal←c18248 = (formal←c18248 - 20); /* EachPairProc: */ SOURCE(3252, 171) SOURCE(3252, 171) quit←v12776 = 0; SOURCE(3292, 56) (* (( (ptr) formal←c18248)+8) ) = XR←Narrow(val←v12732, (* (( (ptr) gf←c18216)+21) )); SOURCE(3350, 14) (* (( (ptr) formal←c18248)+7) ) = key←v12704; SOURCE(3366, 57) { word pd41; pd41 = (* (( (ptr) formal←c18248)+4) ); return((word) ( *( (fPt) ((* (ptr) pd41 ))))((* (( (ptr) formal←c18248)+7) ), (* (( (ptr) formal←c18248)+8) ), pd41)); }; } static void EnumeratePattern←P420(formal←c0100, formal←c0245, formal←c0246) word formal←c0100; word formal←c0245; word formal←c0246; { W6 var←c18280; /* declaration of pattern←v12180 skipped */ /* declaration of matchProc←v12208 skipped */ register ptr gf←c18312 = (ptr) &globalframe; word key←v12252; word procData←v12280; var←c18280.f4/* pattern←v12180 */ = formal←c0245; var←c18280.f5/* matchProc←v12208 */ = formal←c0246; /* EnumeratePattern: */ SOURCE(3589, 264) (void) (XR←MonitorEntry((word) (( (bPt) gf←c18312)+16)/* LOCK←v2776 */ )); SOURCE(3589, 264) key←v12252 = 0; SOURCE(3589, 264) procData←v12280 = 0; SOURCE(3640, 213) { word var←c0223; var←c0223 = (word) &var←c18280; (void) (word) XR←Enable(( ((word) (fPt) NoName←Q2364) ), ( ((word) (fPt) NoName←Q2664) ), var←c0223); }; /* removed tail goto */ (void) (XR←MonitorExit((word) (( (bPt) gf←c18312)+16)/* LOCK←v2776 */ )); (* (ptr) formal←c0100 ) = key←v12252; (* (( (ptr) formal←c0100)+1) ) = procData←v12280; return; } static word NoName←Q2364(formal←c0203) word formal←c0203; { register ptr gf←c0202 = (ptr) &globalframe; SOURCE(3663, 190) { register word ePs←v5408; ePs←v5408 = (* (( (ptr) (* (( (ptr) gf←c0202)+9)/* hooks←v3028 */ ))+2) ); lab←L100028: ; if ((ePs←v5408 != 0)) { } else { goto lab←L100025; }; SOURCE(3733, 120) { word var←c16968; var←c16968 = (* (( (ptr) ePs←v5408)+1) ); if ((var←c16968 == 0)) { goto lab←L100029; }; if (((* (( (ptr) gf←c0202)+18) ) == XR←GetReferentType(var←c16968))) { { word val←v5452; val←v5452 = var←c16968; SOURCE(3792, 63) { word proc←v5508; SOURCE(3794, 28) proc←v5508 = (* (ptr) val←v5452 ); SOURCE(3824, 29) { W2 var←c17000; (void) ( *( (fPt) ((* (ptr) proc←v5508 ))))((word) &var←c17000, (* (( (ptr) formal←c0203)+4) ), (* (( (ptr) formal←c0203)+5) ), proc←v5508); }; }; }; } else { lab←L100029: ; }; }; ePs←v5408 = (* (( (ptr) ePs←v5408)+2) ); goto lab←L100028; lab←L100025: ; }; return(0); } static void EnumPatternInRegistry←P480(formal←c0114, formal←c0247, formal←c0248) word formal←c0114; word formal←c0247; word formal←c0248; { W10 var←c18344; /* declaration of pattern←v11772 skipped */ /* declaration of matchProc←v11800 skipped */ register ptr gf←c18376 = (ptr) &globalframe; word key←v11844; word procData←v11872; /* declaration of var←c17032 skipped */ /* declaration of outerKey←v5552 skipped */ /* declaration of outerProcData←v5580 skipped */ (* (( (ptr) &var←c18344)+4)/* pattern←v11772 */ ) = formal←c0247; (* (( (ptr) &var←c18344)+5)/* matchProc←v11800 */ ) = formal←c0248; /* EnumPatternInRegistry: */ SOURCE(3880, 516) { word tmpAddr42; tmpAddr42 = (word) (( (ptr) &var←c18344)+6)/* var←c17032 */ ; (* (ptr) tmpAddr42 ) = ( ((word) (fPt) EachPairProc←P1548) ); (* (( (ptr) tmpAddr42) + 1) ) = 1; }; SOURCE(3880, 516) key←v11844 = 0; SOURCE(3880, 516) procData←v11872 = 0; SOURCE(3923, 14) (* (( (ptr) &var←c18344)+8)/* outerKey←v5552 */ ) = 0; SOURCE(3939, 42) (* (( (ptr) &var←c18344)+9)/* outerProcData←v5580 */ ) = 0; SOURCE(4241, 104) { word pd43; pd43 = (* (( (ptr) (* (( (ptr) gf←c18376)+59)/* var←c16168 */ ))+14) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd43 ))))((* (( (ptr) gf←c18376)+8)/* commandRegistry←v3000 */ ), (word) (( (bPt) &var←c18344)+24) /* var←c17032 */ , pd43))) { SOURCE(4310, 14) (* (( (ptr) &var←c18344)+8)/* outerKey←v5552 */ ) = 0; SOURCE(4326, 19) (* (( (ptr) &var←c18344)+9)/* outerProcData←v5580 */ ) = 0; }; }; SOURCE(4350, 46) key←v11844 = (* (( (ptr) &var←c18344)+8)/* outerKey←v5552 */ ); procData←v11872 = (* (( (ptr) &var←c18344)+9)/* outerProcData←v5580 */ ); /* removed tail goto */ (* (ptr) formal←c0114 ) = key←v11844; (* (( (ptr) formal←c0114)+1) ) = procData←v11872; return; } static word EachPairProc←P1548(key←v12852, val←v12880, formal←c18440) word key←v12852; word val←v12880; word formal←c18440; { register ptr gf←c18408 = (ptr) &globalframe; word quit←v12924; formal←c18440 = (formal←c18440 - 24); /* EachPairProc: */ SOURCE(3983, 253) SOURCE(3983, 253) quit←v12924 = 0; SOURCE(4023, 80) { word pd44; pd44 = (* (( (ptr) (* (( (ptr) gf←c18408)+61)/* var←c17064 */ ))+23) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd44 ))))((* (( (ptr) formal←c18440)+4) ), key←v12852, 0, pd44))) { SOURCE(4090, 13) return(0); }; }; SOURCE(4105, 56) (* (( (ptr) formal←c18440)+9) ) = XR←Narrow(val←v12880, (* (( (ptr) gf←c18408)+21) )); SOURCE(4163, 14) (* (( (ptr) formal←c18440)+8) ) = key←v12852; SOURCE(4179, 57) { word pd45; pd45 = (* (( (ptr) formal←c18440)+5) ); return((word) ( *( (fPt) ((* (ptr) pd45 ))))((* (( (ptr) formal←c18440)+8) ), (* (( (ptr) formal←c18440)+9) ), pd45)); }; } static word GetProp←P540(cmd←v12340, key←v12368) word cmd←v12340; word key←v12368; { register ptr gf←c18472 = (ptr) &globalframe; word value←v12412; /* GetProp: */ SOURCE(4402, 258) SOURCE(4402, 258) value←v12412 = 0; SOURCE(4451, 209) { register word lpPs←v5652; lpPs←v5652 = (* (( (ptr) (* (( (ptr) gf←c18472)+9)/* hooks←v3028 */ ))+3) ); lab←L100034: ; if ((lpPs←v5652 != 0)) { } else { goto lab←L100031; }; SOURCE(4528, 132) { word var←c17128; var←c17128 = (* (( (ptr) lpPs←v5652)+1) ); if ((var←c17128 == 0)) { goto lab←L100035; }; if (((* (( (ptr) gf←c18472)+22) ) == XR←GetReferentType(var←c17128))) { { word refP←v5696; refP←v5696 = var←c17128; SOURCE(4584, 126) { word proc←v5752; SOURCE(4586, 24) proc←v5752 = (* (ptr) refP←v5696 ); SOURCE(4612, 22) value←v12412 = (word) ( *( (fPt) ((* (ptr) proc←v5752 ))))(cmd←v12340, key←v12368, proc←v5752); SOURCE(4636, 24) if ((value←v12412 != 0)) { SOURCE(4654, 6) return(value←v12412); }; }; }; } else { lab←L100035: ; }; }; lpPs←v5652 = (* (( (ptr) lpPs←v5652)+2) ); goto lab←L100034; lab←L100031: ; }; SOURCE(4402, 258) return(value←v12412); } static word GetWDir←P600() { register ptr gf←c18504 = (ptr) &globalframe; word var←c4188; word wDir←v5796 = 0; word propList←v5824; /* GetWDir: */ SOURCE(4770, 261) SOURCE(4821, 49) { word pd46; pd46 = (* (( (ptr) (* (( (ptr) gf←c18504)+62)/* var←c17160 */ ))+6) ); propList←v5824 = (word) ( *( (fPt) ((* (ptr) pd46 ))))(pd46); }; SOURCE(4872, 84) { word var←c17224; { word pd47; pd47 = (* (( (ptr) (* (( (ptr) gf←c18504)+63)/* var←c17192 */ ))+20) ); var←c17224 = (word) ( *( (fPt) ((* (ptr) pd47 ))))((* (( (ptr) gf←c18504)+23) ), propList←v5824, pd47); }; if ((var←c17224 == 0)) { goto lab←L100036; }; { word tc48; if (((* (( (ptr) gf←c18504)+19) ) == XR←GetReferentType(var←c17224))) { tc48 = (word) ((*(int*)var←c17224<0) == 0); } else { tc48 = (word) 0; }; if (tc48) { { word rope←v5868; rope←v5868 = var←c17224; SOURCE(4945, 11) wDir←v5796 = rope←v5868; }; } else { lab←L100036: ; }; }; }; SOURCE(4967, 50) { word pd49; pd49 = (* (( (ptr) (* (( (ptr) gf←c18504)+61)/* var←c17064 */ ))+13) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd49 ))))(wDir←v5796, pd49))) { SOURCE(4994, 23) wDir←v5796 = (word) GetDefaultWDir←P660(); }; }; SOURCE(5019, 12) return(wDir←v5796); } static word GetDefaultWDir←P660() { register ptr gf←c18536 = (ptr) &globalframe; word wdir←v4248; /* GetDefaultWDir: */ SOURCE(5038, 102) SOURCE(5038, 102) wdir←v4248 = 0; SOURCE(5089, 51) { word var←c17288; { word pd50; pd50 = (* (( (ptr) (* (( (ptr) gf←c18536)+64)/* var←c17320 */ ))+4) ); var←c17288 = (word) ( *( (fPt) ((* (ptr) pd50 ))))((* ((( (ptr) gf←c18536)+25)) ), pd50); }; { word pd51; pd51 = (* (( (ptr) (* (( (ptr) gf←c18536)+61)/* var←c17064 */ ))+6) ); return((word) ( *( (fPt) ((* (ptr) pd51 ))))(var←c17288, (* (( (ptr) gf←c18536)+26) ), pd51)); }; }; } static word PrependWorkingDir←P720(key←v4308) word key←v4308; { word var←c4352; /* PrependWorkingDir: */ SOURCE(5146, 74) SOURCE(5208, 12) return(key←v4308); } static word GetProperty←P780(formal←c0249, formal←c0250) word formal←c0249; word formal←c0250; { W8 var←c18568; /* declaration of key←v4412 skipped */ /* declaration of aList←v4440 skipped */ register ptr gf←c18600 = (ptr) &globalframe; /* declaration of var←c03 skipped */ /* declaration of val←v4496 skipped */ var←c18568.f4/* key←v4412 */ = formal←c0249; var←c18568.f5/* aList←v4440 */ = formal←c0250; /* GetProperty: */ SOURCE(5225, 627) (void) (XR←MonitorEntry((word) (( (bPt) gf←c18600)+16)/* LOCK←v2776 */ )); SOURCE(5225, 627) var←c18568.f7/* val←v4496 */ = 0; SOURCE(5322, 530) { word var←c04; { word var←c0224; var←c0224 = (word) &var←c18568; var←c04 = (word) XR←Enable(( ((word) (fPt) NoName←Q2424) ), ( ((word) (fPt) NoName←Q2604) ), var←c0224); }; /* removed trivial cond node */ }; return(var←c18568.f6/* var←c03 */ ); } static word NoName←Q2424(formal←c0212) word formal←c0212; { register ptr gf←c0211 = (ptr) &globalframe; SOURCE(5345, 13) { word ropeKey←v5912 = 0; SOURCE(5360, 40) { word pd52; pd52 = (* (( (ptr) (* (( (ptr) gf←c0211)+63)/* var←c17192 */ ))+20) ); (* (( (ptr) formal←c0212)+7) ) = (word) ( *( (fPt) ((* (ptr) pd52 ))))((* (( (ptr) formal←c0212)+4) ), (* (( (ptr) formal←c0212)+5) ), pd52); }; SOURCE(5402, 24) if (((* (( (ptr) formal←c0212)+7) ) != 0)) { SOURCE(5420, 6) (void) (XR←MonitorExit((word) (( (bPt) gf←c0211)+16)/* LOCK←v2776 */ )); (* (( (ptr) formal←c0212)+6) ) = (* (( (ptr) formal←c0212)+7) ); return(1); }; SOURCE(5428, 89) { word var←c17352; word var←c17384; var←c17352 = (* (( (ptr) formal←c0212)+4) ); if ((var←c17352 == 0)) { goto lab←L100039; }; var←c17384 = XR←GetReferentType(var←c17352); { word tc53; if (((* (( (ptr) gf←c0211)+19) ) == var←c17384)) { tc53 = (word) ((*(int*)var←c17352<0) == 0); } else { tc53 = (word) 0; }; if (tc53) { { word r←v5956; r←v5956 = var←c17352; SOURCE(5460, 11) ropeKey←v5912 = r←v5956; }; } else { if (((* (( (ptr) gf←c0211)+15) ) == var←c17384)) { { word t←v6000; t←v6000 = var←c17352; SOURCE(5488, 29) { word pd54; pd54 = (* (( (ptr) (* (( (ptr) gf←c0211)+61)/* var←c17064 */ ))+35) ); ropeKey←v5912 = (word) ( *( (fPt) ((* (ptr) pd54 ))))(t←v6000, 0, 32767, pd54); }; }; } else { lab←L100039: ; }; }; }; }; SOURCE(5528, 290) if ((ropeKey←v5912 != 0)) { SOURCE(5552, 266) { register word l←v6056; l←v6056 = (* (( (ptr) formal←c0212)+5) ); lab←L100043: ; if ((l←v6056 != 0)) { } else { goto lab←L100040; }; SOURCE(5603, 215) { word var←c17416; word var←c17448; var←c17416 = (* (ptr) (* (ptr) l←v6056 ) ); if ((var←c17416 == 0)) { goto lab←L100044; }; var←c17448 = XR←GetReferentType(var←c17416); { word tc55; if (((* (( (ptr) gf←c0211)+19) ) == var←c17448)) { tc55 = (word) ((*(int*)var←c17416<0) == 0); } else { tc55 = (word) 0; }; if (tc55) { { word r←v6100; r←v6100 = var←c17416; SOURCE(5643, 70) { word pd56; pd56 = (* (( (ptr) (* (( (ptr) gf←c0211)+61)/* var←c17064 */ ))+8) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd56 ))))(ropeKey←v5912, r←v6100, 1, pd56))) { SOURCE(5694, 19) /*1*/ { /*1*/ word var←c17480; /*1*/ var←c17480 = (* (( (ptr) (* (ptr) l←v6056 ))+1) ); /*1*/ (void) (XR←MonitorExit((word) (( (bPt) gf←c0211)+16)/* LOCK←v2776 */ )); /*1*/ (* (( (ptr) formal←c0212)+6) ) = var←c17480; /*1*/ return(1); /*1*/ }; /*1*/ }; }; }; } else { if (((* (( (ptr) gf←c0211)+15) ) == var←c17448)) { { word t←v6144; word var←c17512; t←v6144 = var←c17416; SOURCE(5730, 88) { /*1*/ word pd58; /*1*/ { /*1*/ word pd57; /*1*/ pd57 = (* (( (ptr) (* (( (ptr) gf←c0211)+61)/* var←c17064 */ ))+35) ); /*1*/ var←c17512 = (word) ( *( (fPt) ((* (ptr) pd57 ))))(t←v6144, 0, 32767, pd57); /*1*/ }; /*1*/ pd58 = (* (( (ptr) (* (( (ptr) gf←c0211)+61)/* var←c17064 */ ))+8) ); /*1*/ if ((0 != (word) ( *( (fPt) ((* (ptr) pd58 ))))(ropeKey←v5912, var←c17512, 1, pd58))) { SOURCE(5799, 19) /*1*/ { /*1*/ word var←c17544; /*1*/ var←c17544 = (* (( (ptr) (* (ptr) l←v6056 ))+1) ); /*1*/ (void) (XR←MonitorExit((word) (( (bPt) gf←c0211)+16)/* LOCK←v2776 */ )); /*1*/ (* (( (ptr) formal←c0212)+6) ) = var←c17544; /*1*/ return(1); /*1*/ }; /*1*/ }; /*1*/ }; }; } else { lab←L100044: ; }; }; }; }; l←v6056 = (* (( (ptr) l←v6056)+1) ); goto lab←L100043; lab←L100040: ; }; }; SOURCE(5841, 11) (void) (XR←MonitorExit((word) (( (bPt) gf←c0211)+16)/* LOCK←v2776 */ )); (* (( (ptr) formal←c0212)+6) ) = 0; return(1); }; /* c2c skipped dead code */ } static word PutProperty←P840(formal←c0251, formal←c0252, formal←c0253) word formal←c0251; word formal←c0252; word formal←c0253; { W8 var←c18632; /* declaration of key←v4568 skipped */ /* declaration of val←v4596 skipped */ /* declaration of aList←v4624 skipped */ register ptr gf←c18664 = (ptr) &globalframe; /* declaration of var←c05 skipped */ word var←c4692; var←c18632.f4/* key←v4568 */ = formal←c0251; var←c18632.f5/* val←v4596 */ = formal←c0252; var←c18632.f6/* aList←v4624 */ = formal←c0253; /* PutProperty: */ SOURCE(5857, 460) (void) (XR←MonitorEntry((word) (( (bPt) gf←c18664)+16)/* LOCK←v2776 */ )); SOURCE(5966, 351) { word var←c06; { word var←c0225; var←c0225 = (word) &var←c18632; var←c06 = (word) XR←Enable(( ((word) (fPt) NoName←Q2484) ), ( ((word) (fPt) NoName←Q2544) ), var←c0225); }; /* removed trivial cond node */ }; return(var←c18632.f7/* var←c05 */ ); } static word NoName←Q2484(formal←c0215) word formal←c0215; { register ptr gf←c0214 = (ptr) &globalframe; SOURCE(5989, 253) { word tc60; if (((* (( (ptr) formal←c0215)+4) ) == 0)) { goto then059;}; if (((* (( (ptr) gf←c0214)+19) ) == XR←GetReferentType(* (( (ptr) formal←c0215)+4) ))) { tc60 = (word) ((*(int*)(* (( (ptr) formal←c0215)+4) )<0) == 0); } else { tc60 = (word) 0; }; if (tc60) { then059: ; SOURCE(6015, 244) { word ropeKey←v6200; SOURCE(6017, 27) ropeKey←v6200 = XR←Narrow((* (( (ptr) formal←c0215)+4) ), (* (( (ptr) gf←c0214)+19) )); if ((ropeKey←v6200 == 0)) { goto lab←L100047; }; if (((*(int*)ropeKey←v6200<0) == 0)) { goto lab←L100047; }; (void) XR←RaiseError(XR←NarrowFault, 0); lab←L100047: ; SOURCE(6046, 196) { register word l←v6244; word var←c17608; word var←c17640; l←v6244 = (* (( (ptr) formal←c0215)+6) ); lab←L100051: ; if ((l←v6244 != 0)) { } else { goto lab←L100048; }; SOURCE(6097, 145) { word tc61; var←c17608 = (* (ptr) (* (ptr) l←v6244 ) ); if ((var←c17608 == 0)) { tc61 = (word) 1; } else { if (((* (( (ptr) gf←c0214)+19) ) == XR←GetReferentType(var←c17608))) { tc61 = (word) ((*(int*)var←c17608<0) == 0); } else { tc61 = (word) 0; }; }; if (tc61) { SOURCE(6133, 109) { word pd62; { word var←c17672; var←c17672 = XR←Narrow((* (ptr) (* (ptr) l←v6244 ) ), (* (( (ptr) gf←c0214)+19) )); if ((var←c17672 == 0)) { /*1*/ goto lab←L100052; /*1*/ }; if (((*(int*)var←c17672<0) == 0)) { /*1*/ goto lab←L100052; /*1*/ }; (void) XR←RaiseError(XR←NarrowFault, 0); lab←L100052: ; var←c17640 = var←c17672; }; pd62 = (* (( (ptr) (* (( (ptr) gf←c0214)+61)/* var←c17064 */ ))+8) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd62 ))))(ropeKey←v6200, var←c17640, 1, pd62))) { SOURCE(6210, 17) (* (( (ptr) (* (ptr) l←v6244 ))+1) ) = (* (( (ptr) formal←c0215)+5) ); SOURCE(6229, 13) (void) (XR←MonitorExit((word) (( (bPt) gf←c0214)+16)/* LOCK←v2776 */ )); (* (( (ptr) formal←c0215)+7) ) = (* (( (ptr) formal←c0215)+6) ); return(1); }; }; }; }; l←v6244 = (* (( (ptr) l←v6244)+1) ); goto lab←L100051; lab←L100048: ; }; }; }; }; SOURCE(6262, 55) { word var←c17704; { word pd63; pd63 = (* (( (ptr) (* (( (ptr) gf←c0214)+63)/* var←c17192 */ ))+22) ); var←c17704 = (word) ( *( (fPt) ((* (ptr) pd63 ))))((* (( (ptr) formal←c0215)+4) ), (* (( (ptr) formal←c0215)+5) ), (* (( (ptr) formal←c0215)+6) ), pd63); }; (void) (XR←MonitorExit((word) (( (bPt) gf←c0214)+16)/* LOCK←v2776 */ )); (* (( (ptr) formal←c0215)+7) ) = var←c17704; return(1); }; /* c2c skipped dead code */ } static void NoName←Q2544(formal←c0164, formal←c200016, formal←c200017, formal←c200018, formal←c200019) word formal←c0164; word formal←c200016; word formal←c200017; word formal←c200018; word formal←c200019; { register ptr gf←c0216 = (ptr) &globalframe; if ((formal←c200017 == XR←Unwind)) { (void) (XR←MonitorExit((word) (( (bPt) gf←c0216)+16)/* LOCK←v2776 */ )); }; (* (ptr) formal←c0164 ) = 0; (* (( (ptr) formal←c0164)+1) ) = 0; return; } static void NoName←Q2604(formal←c0169, formal←c200012, formal←c200013, formal←c200014, formal←c200015) word formal←c0169; word formal←c200012; word formal←c200013; word formal←c200014; word formal←c200015; { register ptr gf←c0217 = (ptr) &globalframe; if ((formal←c200013 == XR←Unwind)) { (void) (XR←MonitorExit((word) (( (bPt) gf←c0217)+16)/* LOCK←v2776 */ )); }; (* (ptr) formal←c0169 ) = 0; (* (( (ptr) formal←c0169)+1) ) = 0; return; } static void NoName←Q2664(formal←c0174, formal←c200008, formal←c200009, formal←c200010, formal←c200011) word formal←c0174; word formal←c200008; word formal←c200009; word formal←c200010; word formal←c200011; { register ptr gf←c0218 = (ptr) &globalframe; if ((formal←c200009 == XR←Unwind)) { (void) (XR←MonitorExit((word) (( (bPt) gf←c0218)+16)/* LOCK←v2776 */ )); }; (* (ptr) formal←c0174 ) = 0; (* (( (ptr) formal←c0174)+1) ) = 0; return; } static void NoName←Q2724(formal←c0179, formal←c200004, formal←c200005, formal←c200006, formal←c200007) word formal←c0179; word formal←c200004; word formal←c200005; word formal←c200006; word formal←c200007; { register ptr gf←c0219 = (ptr) &globalframe; if ((formal←c200005 == XR←Unwind)) { (void) (XR←MonitorExit((word) (( (bPt) gf←c0219)+16)/* LOCK←v2776 */ )); }; (* (ptr) formal←c0179 ) = 0; (* (( (ptr) formal←c0179)+1) ) = 0; return; } static void NoName←Q2784(formal←c0184, formal←c200000, formal←c200001, formal←c200002, formal←c200003) word formal←c0184; word formal←c200000; word formal←c200001; word formal←c200002; word formal←c200003; { register ptr gf←c0220 = (ptr) &globalframe; if ((formal←c200001 == XR←Unwind)) { (void) (XR←MonitorExit((word) (( (bPt) gf←c0220)+16)/* LOCK←v2776 */ )); }; (* (ptr) formal←c0184 ) = 0; (* (( (ptr) formal←c0184)+1) ) = 0; return; } /* file: CommanderImpl, module: CommanderImpl, compiled at: January 19, 1993 12:22:12 pm PST */ extern void XR←install←CommanderImpl() { NoName←Q2184(); } extern void XR←run←CommanderImpl() { XR←Start(&globalframe); }