/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */ /* time: September 14, 1993 4:25:34 pm PDT */ /* C2C version: April 20, 1993 (sun4) */ /* ref-counting: off */ /* file: XlShmPixmapsImpl, module: XlShmPixmapsImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> #include <xr/ThreadsTermination.h> #include <xr/UIO.h> #include <xr/ThreadsSharedMem.h> #include <sys/types.h> #include <sys/ipc.h> #include <sys/shm.h> static char versionStamp[] = "@(#)mob←version [1534080382,671882230] XlShmPixmapsImpl"; 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 {W8 f; W2 r;} W10; typedef struct {word f0, f1, f2, f3;} W4; typedef W4 *W4Pt; typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7; typedef W7 *W7Pt; typedef struct {word f0, f1, f2;} W3; typedef struct {W8 f; W4 r;} W12; typedef W3 *W3Pt; typedef struct {W8 f; W7 r;} W15; typedef W2 *W2Pt; typedef struct {W8 f; word r;} W9; typedef struct {word f0, f1, f2, f3, f4, f5;} W6; typedef struct {W8 f; W3 r;} W11; #define SOURCE(p, l) /* source p, l */ #define IOP2(op, x, y) ( (word) ((x) op (y)) ) #define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i ) #define MAX(cast, x, y) ( ( cast x) > ( cast y) ? (x) : (y) ) #define MIN(cast, x, y) ( ( cast x) < ( cast y) ? (x) : (y) ) #define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) ) static void NoName←Q3660(); static void XlShmPixmapsImpl←P0(); static void DebugSetNeverUseThis←P60(); static word InitShmExtension←P180(); static word NoName←Q3720(); static word GetShmConnectionDataAndTest←P240(); static word SHMAttach←P300(); static void action←P1908(); static word SHMCreatePixmap←P360(); static void action←P1968(); static void SHMDetach←P420(); static void action←P2028(); static void UncachedSHMQueryVersion←P480(); static void action←P2088(); static void SHMQueryVersion←P540(); static word ShmAllocSegmentateSystemId←P600(); static void ShmAllocSegmentateNew←P660(); static void SignalUnixError←P720(); static word Next←P780(); static void Info←P840(); static void PreAllocate←P900(); static word AllocateSegment←P960(); static void Link←P2196(); static word Alloc←P2256(); static word NoName←Q3780(); static word AllocateBlock←P1020(); static void UNTHREADEDBeforeQuitWorld←P1080(); static word NewSharedSampleMap←P1140(); static word Disabled1←P1200(); static word ServerHostFromConvention←P1260(); static word NoName←Q3840(); static word Disabled2←P1320(); static word TestWorking←P1380(); static word NoName←Q3900(); static word ConnectionSupportsThis←P1440(); static word ConnectionSupportsPixmaps←P1500(); static word SampleMapSupportsThis←P1560(); static word SampleMapPiece←P1620(); static word GetXShmId←P1680(); static word GetXShmInit←P2796(); static word NoName←Q3960(); static word UnsafeCreatePixmap←P1740(); static word ProcessExtension←P1800(); static void NoName←Q4020(); static void NoName←Q4080(); static void NoName←Q4140(); static void NoName←Q4200(); static void NoName←Q4260(); static struct {unsigned f; char r[4];} string1 = {65540, "\251\000\000"}; static struct {unsigned f; char r[4];} string2 = {131076, "\216\251\000"}; static struct {unsigned f; char r[4];} string3 = {65537, "\001\000\000"}; static struct {unsigned f; char r[16];} string4 = {851984, "\257\300\133\160\065\176\300\050\014\033\366\101\364\000\000"}; static struct {unsigned f; char r[4];} string5 = {131074, "\004\003\000"}; static struct {unsigned f; char r[16];} string6 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\104\304\000\000"}; static struct {unsigned f; char r[24];} string7 = {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];} string8 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"}; static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\133\160\065\176\300\050\014\033\366\101\224\000\000"}; static struct {unsigned f; char r[4];} string10 = {196611, "\004@a"}; static struct {unsigned f; char r[4];} string11 = {65540, "\242\000\000"}; static struct {unsigned f; char r[16];} string12 = {851984, "\257\300\351\276\264\273\300\115\104\320\264\126\304\000\000"}; static struct {unsigned f; char r[60];} string13 = {3735609, "\006\023\040\001\070\001\100\100\001\100\104\001\100\110\001\100\140\001\100\144\001\100\150\001\100\154\001\100\160\001\100\164\001\100\170\001\100\174\001\100\200\001\100\224\001\100\234\001\100\240\001\100\244\001\100\250\001\000\000"}; static struct {unsigned f; char r[4];} string14 = {65540, "\241\000\000"}; static struct {unsigned f; char r[16];} string15 = {851984, "\257\300\133\160\065\176\300\050\014\033\366\101\004\000\000"}; static struct {unsigned f; char r[16];} string16 = {851984, "\257\300\351\276\264\273\300\115\104\320\264\123\320\000\000"}; static struct {unsigned f; char r[60];} string17 = {3801146, "\007\100\200\040\047\004\100\354\004\200\140\054\004\014\015\015\015\015\015\015\015\015\004\140\014\015\015\015\015\015\015\015\015\015\015\015\015\015\015\015\015\015\015\015\015\015\015\015\013\004\100\114\004\102\354\004\100\314\000"}; static struct {unsigned f; char r[20];} string18 = {1048596, "widthOfShmPixmap\000\000\000"}; static struct {unsigned f; char r[8];} string19 = {458760, "MIT-SHM"}; static struct {unsigned f; char r[4];} string20 = {65540, "x\000\000"}; static struct {unsigned f; char r[20];} string21 = {1245204, "PreventSharedMemory"}; static struct {unsigned f; char r[16];} string22 = {983056, "PARC←ServerHost"}; static struct {unsigned f; char r[16];} string23 = {851984, "\257\300\133\160\065\176\300\050\014\033\366\100\200\000\000"}; static struct {unsigned f; char r[16];} string24 = {917518, "\006\005\020\001\030\001\034\001\044\001\100\240\004\037\000"}; static struct {unsigned f; char r[16];} string25 = {851984, "\257\300\055\153\222\376\300\327\164\352\142\100\150\000\000"}; static struct {unsigned f; char r[16];} string26 = {851984, "\257\300\213\226\301\143\300\072\355\320\373\100\150\000\000"}; static struct {unsigned f; char r[16];} string27 = {851984, "\257\300\240\236\274\315\300\111\163\325\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string28 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"}; static struct {unsigned f; char r[16];} string29 = {851984, "\257\300\277\374\326\303\300\302\136\022\175\100\150\000\000"}; static struct {unsigned f; char r[16];} string30 = {851984, "\257\300\243\162\130\311\300\344\000\142\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string31 = {851984, "\257\300\246\171\266\212\300\131\156\315\206\100\150\000\000"}; static struct {unsigned f; char r[16];} string32 = {851984, "\257\300\351\276\264\273\300\115\104\320\264\100\164\000\000"}; static struct {unsigned f; char r[16];} string33 = {851984, "\257\300\156\124\232\133\300\236\077\321\110\100\150\000\000"}; static struct {unsigned f; char r[16];} string34 = {851984, "\257\300\337\070\153\303\300\227\216\321\214\100\150\000\000"}; static struct {unsigned f; char r[16];} string35 = {851984, "\257\300\305\130\130\253\300\227\246\357\266\100\150\000\000"}; static struct {unsigned f; char r[16];} string36 = {851984, "\257\300\304\042\023\266\300\315\144\243\337\100\150\000\000"}; static struct {unsigned f; char r[16];} string37 = {851984, "\257\300\212\247\207\172\300\123\222\237\073\100\150\000\000"}; static struct {unsigned f; char r[16];} string38 = {851984, "\257\300\044\126\136\322\300\125\273\233\107\100\150\000\000"}; static struct {unsigned f; char r[16];} string39 = {851984, "\257\300\313\043\035\351\300\322\261\377\170\100\150\000\000"}; static struct {unsigned f; char r[16];} string40 = {851984, "\257\300\361\330\262\307\300\017\351\022\161\100\150\000\000"}; static struct {unsigned f; char r[16];} string41 = {851984, "\257\300\145\070\316\243\300\025\254\213\206\100\150\000\000"}; static struct { word f0[46]; 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; word f80; word f81; word f82; word f83; word f84; word f85; word f86; word f87; word f88; word f89; word f90; word f91; word f92; word f93; word f94; word f95; word f96; word f97; word f98; word f99; word f100; word f101; word f102; word f103; word f104; word f105[16]; } globalframe = { {0}, (word) ProcessExtension←P1800, 0, (word) UnsafeCreatePixmap←P1740, 0, (word) GetXShmId←P1680, 0, (word) SampleMapPiece←P1620, 0, (word) SampleMapSupportsThis←P1560, 0, (word) ConnectionSupportsPixmaps←P1500, 0, (word) ConnectionSupportsThis←P1440, 0, (word) TestWorking←P1380, 0, (word) Disabled2←P1320, 0, (word) ServerHostFromConvention←P1260, 0, (word) Disabled1←P1200, 0, (word) NewSharedSampleMap←P1140, 0, (word) UNTHREADEDBeforeQuitWorld←P1080, 0, (word) AllocateBlock←P1020, 0, (word) AllocateSegment←P960, 0, (word) PreAllocate←P900, 0, (word) Info←P840, 0, (word) Next←P780, 0, (word) SignalUnixError←P720, 0, (word) ShmAllocSegmentateNew←P660, 0, (word) ShmAllocSegmentateSystemId←P600, 0, (word) SHMQueryVersion←P540, 0, (word) UncachedSHMQueryVersion←P480, 0, (word) SHMDetach←P420, 0, (word) SHMCreatePixmap←P360, 0, (word) SHMAttach←P300, 0, (word) GetShmConnectionDataAndTest←P240, 0, (word) InitShmExtension←P180, 0, (word) DebugSetNeverUseThis←P60, 0, (word) XlShmPixmapsImpl←P0, {0} }; static void NoName←Q3660() { register ptr gf←c0267 = (ptr) &globalframe; word var←c42856; (* (( (ptr) gf←c0267)+10) ) = (word) XR←GetTypeIndexS((word) (&string1)); (* (( (ptr) gf←c0267)+11) ) = (word) XR←GetTypeIndex((word) &string2, 0, (word) &string3); (* (( (ptr) gf←c0267)+12) ) = (word) XR←GetTypeIndex((word) &string4, 0, (word) &string5); (* (( (ptr) gf←c0267)+13) ) = (word) XR←GetTypeIndex((word) &string6, 0, (word) &string7); (* (( (ptr) gf←c0267)+14) ) = (word) XR←GetTypeIndex((word) &string8, 0, (word) &string3); (* (( (ptr) gf←c0267)+15) ) = (word) XR←GetTypeIndex((word) &string9, 0, (word) &string10); (* (( (ptr) gf←c0267)+16) ) = (word) XR←GetTypeIndexS((word) (&string11)); (* (( (ptr) gf←c0267)+17) ) = (word) XR←GetTypeIndex((word) &string12, 0, (word) &string13); (* (( (ptr) gf←c0267)+18) ) = (word) XR←GetTypeIndexS((word) (&string14)); (* (( (ptr) gf←c0267)+34) ) = (word) XR←GetTypeIndex((word) &string15, 0, (word) &string3); (* (( (ptr) gf←c0267)+35) ) = (word) XR←GetTypeIndex((word) &string16, 0, (word) &string17); (* (ptr) (( (bPt) gf←c0267)+160) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0267)+11) ), (word) &string18); (* (ptr) (( (bPt) gf←c0267)+164) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0267)+14) ), (word) &string19); (* (ptr) (( (bPt) gf←c0267)+168) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0267)+11) ), (word) &string20); (* (ptr) (( (bPt) gf←c0267)+172) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0267)+11) ), (word) &string21); (* (ptr) (( (bPt) gf←c0267)+176) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0267)+14) ), (word) &string22); (void) XR←DeclareGlobalFrame((word) "XlShmPixmapsImpl", &globalframe, (word) XR←GetTypeIndex((word) &string23, 0, (word) &string24) , (word) (( (bPt) gf←c0267)+416)/* var←c40936 */ ); var←c42856 = (word) XR←ImportInterface((word) "Atom", (word) XR←GetTypeIndexS((word) (&string25)), 16); (* (( (ptr) gf←c0267)+106)/* var←c40968 */ ) = var←c42856; (void) XR←ImportProcS(var←c42856, 67895555); var←c42856 = (word) XR←ImportInterface((word) "ImagerSample", (word) XR←GetTypeIndexS((word) (&string26)), 60); (* (( (ptr) gf←c0267)+116)/* var←c42184 */ ) = var←c42856; (void) XR←ImportProcS(var←c42856, 69995271); var←c42856 = (word) XR←ImportInterface((word) "Process", (word) XR←GetTypeIndexS((word) (&string27)), 22); (* (( (ptr) gf←c0267)+114)/* var←c41896 */ ) = var←c42856; (void) XR←ImportProcS(var←c42856, 4864); var←c42856 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string28)), 43); (* (( (ptr) gf←c0267)+118)/* var←c42344 */ ) = var←c42856; (void) XR←ImportProcS(var←c42856, 67373313); var←c42856 = (word) XR←ImportInterface((word) "SafeStorage", (word) XR←GetTypeIndexS((word) (&string29)), 27); (* (( (ptr) gf←c0267)+113)/* var←c41864 */ ) = var←c42856; (void) XR←ImportProcS(var←c42856, 526082); var←c42856 = (word) XR←ImportInterface((word) "SF", (word) XR←GetTypeIndexS((word) (&string30)), 19); (* (( (ptr) gf←c0267)+115)/* var←c42088 */ ) = var←c42856; (void) XR←ImportProcS(var←c42856, 68161025); (void) XR←ImportProcS(var←c42856, 68160769); var←c42856 = (word) XR←ImportInterface((word) "VMChunks", (word) XR←GetTypeIndexS((word) (&string31)), 9); (* (( (ptr) gf←c0267)+112)/* var←c41768 */ ) = var←c42856; (void) XR←ImportProcS(var←c42856, 67372545); (void) XR←ImportProcS(var←c42856, 67634434); (void) XR←ImportProcS(var←c42856, 67633666); var←c42856 = (word) XR←ImportInterface((word) "Xl", (word) XR←GetTypeIndexS((word) (&string32)), 218); (* (( (ptr) gf←c0267)+108)/* var←c41160 */ ) = var←c42856; (void) XR←ImportProcS(var←c42856, 792323); (void) XR←ImportProcS(var←c42856, 67375105); (void) XR←ImportProcS(var←c42856, 270545672); (void) XR←ImportProcS(var←c42856, 67644930); (void) XR←ImportProcS(var←c42856, 67639298); (void) XR←ImportProcS(var←c42856, 67901699); var←c42856 = (word) XR←ImportInterface((word) "XlAccess", (word) XR←GetTypeIndexS((word) (&string33)), 4); (* (( (ptr) gf←c0267)+117)/* var←c42312 */ ) = var←c42856; (void) XR←ImportProcS(var←c42856, 67371265); var←c42856 = (word) XR←ImportInterface((word) "XlDetails", (word) XR←GetTypeIndexS((word) (&string34)), 4); (* (( (ptr) gf←c0267)+119)/* var←c42664 */ ) = var←c42856; var←c42856 = (word) XR←ImportInterface((word) "XlExtensions", (word) XR←GetTypeIndexS((word) (&string35)), 3); (* (( (ptr) gf←c0267)+107)/* var←c41032 */ ) = var←c42856; (void) XR←ImportProcS(var←c42856, 67633666); (void) XR←ImportProcS(var←c42856, 786691); var←c42856 = (word) XR←ImportInterface((word) "XlPrivate", (word) XR←GetTypeIndexS((word) (&string36)), 77); (* (( (ptr) gf←c0267)+109)/* var←c41256 */ ) = var←c42856; (void) XR←ImportProcS(var←c42856, 67385857); (void) XR←ImportProcS(var←c42856, 67389953); (void) XR←ImportProcS(var←c42856, 67389697); (void) XR←ImportProcS(var←c42856, 278529); (void) XR←ImportProcS(var←c42856, 792834); (void) XR←ImportProcS(var←c42856, 530178); (void) XR←ImportProcS(var←c42856, 531202); (void) XR←ImportProcS(var←c42856, 539650); (void) XR←ImportProcS(var←c42856, 528130); (void) XR←ImportProcS(var←c42856, 528642); (void) XR←ImportProcS(var←c42856, 1051908); (void) XR←ImportProcS(var←c42856, 786947); var←c42856 = (word) XR←ImportInterface((word) "XlPrivateErrorHandling", (word) XR←GetTypeIndexS((word) (&string37)), 10); (* (( (ptr) gf←c0267)+111)/* var←c41352 */ ) = var←c42856; (void) XR←ImportProcS(var←c42856, 526082); var←c42856 = (word) XR←ImportInterface((word) "XlPrivateResources", (word) XR←GetTypeIndexS((word) (&string38)), 9); (* (( (ptr) gf←c0267)+110)/* var←c41288 */ ) = var←c42856; (void) XR←ImportProcS(var←c42856, 67371521); var←c42856 = (word) XR←ExportInterface((word) "XlShmPixmaps", (word) XR←GetTypeIndexS((word) (&string39)), 5); (* (( (ptr) gf←c0267)+120)/* var←c42888 */ ) = var←c42856; (void) XR←ExportProcS(var←c42856, (word) (( (bPt) gf←c0267)+272)/* var←c40360 */ , 68419586, (word) "NewSharedSampleMap") ; (void) XR←ExportProcS(var←c42856, (word) (( (bPt) gf←c0267)+216)/* var←c40136 */ , 67371265, (word) "SampleMapSupportsThis") ; (void) XR←ExportProcS(var←c42856, (word) (( (bPt) gf←c0267)+192)/* var←c40040 */ , 67895811, (word) "UnsafeCreatePixmap") ; (void) XR←ExportProcS(var←c42856, (word) (( (bPt) gf←c0267)+232)/* var←c40200 */ , 67371777, (word) "ConnectionSupportsThis") ; (void) XR←ExportProcS(var←c42856, (word) (( (bPt) gf←c0267)+224)/* var←c40168 */ , 67372033, (word) "ConnectionSupportsPixmaps") ; var←c42856 = (word) XR←ExportInterface((word) "XlShmMonitor", (word) XR←GetTypeIndexS((word) (&string40)), 2); (* (( (ptr) gf←c0267)+120)/* var←c42888 */ ) = var←c42856; (void) XR←ExportProcS(var←c42856, (word) (( (bPt) gf←c0267)+320)/* var←c40552 */ , 67371009, (word) "Next"); (void) XR←ExportProcS(var←c42856, (word) (( (bPt) gf←c0267)+312)/* var←c40520 */ , 201588993, (word) "Info"); var←c42856 = (word) XR←ExportInterface((word) "XlShmPixmapsExtras", (word) XR←GetTypeIndexS((word) (&string41)), 1); (* (( (ptr) gf←c0267)+120)/* var←c42888 */ ) = var←c42856; (void) XR←ExportProcS(var←c42856, (word) (( (bPt) gf←c0267)+304)/* var←c40488 */ , 262145, (word) "PreAllocate"); } static void XlShmPixmapsImpl←P0(formal←c070, formal←c067) word formal←c070; word formal←c067; { register ptr gf←c42920 = (ptr) &globalframe; /* XlShmPixmapsImpl: */ SOURCE(247, 13495) SOURCE(629, 48) { word pd42; pd42 = (* (( (ptr) (* (( (ptr) gf←c42920)+106)/* var←c40968 */ ))+5) ); (* (( (ptr) gf←c42920)+4)/* shmExtensionKey←v3448 */ ) = (word) ( *( (fPt) ((* (ptr) pd42 ))))((* (( (ptr) gf←c42920)+41) ), 0, 2147483647, pd42); }; SOURCE(1137, 30) (* (( (ptr) gf←c42920)+6)/* privateKey←v3728 */ ) = XR←NewObject(4, (* (( (ptr) gf←c42920)+16) )); SOURCE(6328, 53) { word var←c41000; var←c41000 = XR←NewObject(172, (* (( (ptr) gf←c42920)+17) )); (* (( (ptr) var←c41000)+33) ) = XR←CheckProc(0); (* (( (ptr) var←c41000)+34) ) = XR←CheckProc(0); (* (( (ptr) gf←c42920)+9)/* fakeConnection←v4316 */ ) = var←c41000; }; SOURCE(13525, 31) (void) PreAllocate←P900(1048576); SOURCE(13558, 88) { word pd43; pd43 = (* (( (ptr) (* (( (ptr) gf←c42920)+107)/* var←c41032 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd43 ))))((* (( (ptr) gf←c42920)+4)/* shmExtensionKey←v3448 */ ), (word) (( (bPt) gf←c42920)+184) /* var←c40008 */ , 1, pd43); }; SOURCE(13656, 86) SOURCE(13659, 81) { word var←c41064; var←c41064 = (word) XR←RegisterTerminationCleanupProc((word) (( (bPt) gf←c42920)+280)/* var←c40392 */ , 0); }; } static void DebugSetNeverUseThis←P60(b←v4928) word b←v4928; { register ptr gf←c42952 = (ptr) &globalframe; /* DebugSetNeverUseThis: */ SOURCE(907, 56) SOURCE(947, 16) (* (( (ptr) gf←c42952)+5)/* neverUseThis←v3644 */ ) = b←v4928; } static word InitShmExtension←P180(formal←c0343, key←v16476) word formal←c0343; word key←v16476; { W10 var←c42984; /* declaration of c←v16448 skipped */ register ptr gf←c43016 = (ptr) &globalframe; word val←v16520; /* declaration of shmd←v8920 skipped */ (* (( (ptr) &var←c42984)+4)/* c←v16448 */ ) = formal←c0343; /* InitShmExtension: */ SOURCE(1169, 11458) SOURCE(1169, 11458) val←v16520 = (* (( (ptr) gf←c43016)+42) ); SOURCE(1213, 52) (* (( (ptr) &var←c42984)+5)/* shmd←v8920 */ ) = XR←NewObject(28, (* (( (ptr) gf←c43016)+34) )); SOURCE(1267, 11360) if ((0 == (word) Disabled1←P1200((* ((( (ptr) &var←c42984)+4)/* c←v16448 */ ) )))) { SOURCE(1291, 11336) { word pd44; pd44 = (* (( (ptr) (* (( (ptr) gf←c43016)+107)/* var←c41032 */ ))+6) ); (* (ptr) (* (( (ptr) &var←c42984)+5)/* shmd←v8920 */ ) ) = (word) ( *( (fPt) ((* (ptr) pd44 ))))((* (( (ptr) &var←c42984)+4) /* c←v16448 */ ), (* (( (ptr) gf←c43016)+4)/* shmExtensionKey←v3448 */ ), pd44); }; SOURCE(1350, 11277) if ( ( ((* (ptr) (* (( (ptr) &var←c42984)+5)/* shmd←v8920 */ ) ) != 0) ? (0 == (word) Disabled2←P1320((* ((( (ptr) &var←c42984)+4) /* c←v16448 */ ) ))) : 0 ) ) { SOURCE(1390, 27) (* (( (ptr) (* (( (ptr) &var←c42984)+5)/* shmd←v8920 */ ))+5) ) = 1; SOURCE(1419, 11208) SOURCE(1419, 11208) { /* declaration of var←c01 skipped */ { word var←c02; { word var←c0316; var←c0316 = (word) &var←c42984; var←c02 = (word) XR←Enable(( ((word) (fPt) NoName←Q3720) ), ( ((word) (fPt) NoName←Q4260) ), var←c0316); }; if ((var←c02 == 2)) { goto lab←L100001; }; }; (* (W4Pt) (( (ptr) (* (( (ptr) &var←c42984)+5)/* shmd←v8920 */ ))+1) ) = (* (W4Pt) (( (ptr) &var←c42984)+6)/* var←c01 */ ); }; lab←L100001: ; SOURCE(1513, 70) if ((0 != (* (( (ptr) (* (( (ptr) &var←c42984)+5)/* shmd←v8920 */ ))+5) ))) { (* (( (ptr) (* (( (ptr) &var←c42984)+5)/* shmd←v8920 */ ))+6) ) = (unsigned) (0 != (* (( (ptr) (* (( (ptr) &var←c42984)+5) /* shmd←v8920 */ ))+4) )); } else { (* (( (ptr) (* (( (ptr) &var←c42984)+5)/* shmd←v8920 */ ))+6) ) = (unsigned) 0; }; SOURCE(1585, 11042) if ((0 == (* (( (ptr) (* (( (ptr) &var←c42984)+5)/* shmd←v8920 */ ))+1) ))) { SOURCE(1616, 11011) XR←FillWords(&(* (W7Pt) ((* (( (ptr) &var←c42984)+5)/* shmd←v8920 */ ))), 7, 0); }; }; }; SOURCE(1650, 14) return((* (( (ptr) &var←c42984)+5)/* shmd←v8920 */ )); } static word NoName←Q3720(formal←c0271) word formal←c0271; { SOURCE(1419, 11208) (void) UncachedSHMQueryVersion←P480((word) (( (bPt) formal←c0271)+24), (* (( (ptr) formal←c0271)+4) ), (* (( (ptr) formal←c0271)+5) )); return(0); } static word GetShmConnectionDataAndTest←P240(c←v5116) word c←v5116; { register ptr gf←c43048 = (ptr) &globalframe; word shmd←v5160; /* GetShmConnectionDataAndTest: */ SOURCE(1668, 10959) SOURCE(1668, 10959) shmd←v5160 = 0; SOURCE(1763, 10864) { word var←c41128; word d←v39832; SOURCE(967, 11660) d←v39832 = 0; SOURCE(1059, 11568) { word pd45; pd45 = (* (( (ptr) (* (( (ptr) gf←c43048)+108)/* var←c41160 */ ))+29) ); d←v39832 = XR←Narrow((word) ( *( (fPt) ((* (ptr) pd45 ))))(c←v5116, (* (( (ptr) gf←c43048)+6)/* privateKey←v3728 */ ), (word) ( ( (bPt) gf←c43048)+400)/* var←c40872 */ , pd45), (* (( (ptr) gf←c43048)+34) )); }; SOURCE(967, 11660) var←c41128 = d←v39832; shmd←v5160 = var←c41128; }; SOURCE(1795, 10832) if (((* (ptr) shmd←v5160 ) == 0)) { SOURCE(1815, 138) { word err←v8976; SOURCE(1846, 63) err←v8976 = XR←NewObject(60, (* (( (ptr) gf←c43048)+35) )); (* (( (ptr) err←v8976)+4) ) = 1; SOURCE(1911, 18) (* (( (ptr) err←v8976)+2) ) = c←v5116; SOURCE(1931, 10696) { word var←c082; var←c082 = err←v8976; (void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c43048)+108)/* var←c41160 */ ))+4) ), (word) &var←c082); }; }; }; SOURCE(1668, 10959) return(shmd←v5160); } static word SHMAttach←P300(c←v5232, formal←c0344, formal←c0345) word c←v5232; W3 formal←c0344; word formal←c0345; { W12 var←c43080; /* declaration of shmInfo←v5260 skipped */ /* declaration of details←v5288 skipped */ register ptr gf←c43112 = (ptr) &globalframe; /* declaration of xShmID←v5332 skipped */ /* declaration of var←c41224 skipped */ /* declaration of shmd←v9032 skipped */ (* (W3Pt) (( (ptr) &var←c43080)+4)/* shmInfo←v5260 */ ) = formal←c0344; (* (( (ptr) &var←c43080)+7)/* details←v5288 */ ) = formal←c0345; /* SHMAttach: */ SOURCE(1986, 10641) { word tmpAddr46; tmpAddr46 = (word) (( (ptr) &var←c43080)+9)/* var←c41224 */ ; (* (ptr) tmpAddr46 ) = ( ((word) (fPt) action←P1908) ); (* (( (ptr) tmpAddr46) + 1) ) = 1; }; SOURCE(1986, 10641) (* (( (ptr) &var←c43080)+8)/* xShmID←v5332 */ ) = 0; SOURCE(2109, 60) (* (( (ptr) &var←c43080)+11)/* shmd←v9032 */ ) = (word) GetShmConnectionDataAndTest←P240(c←v5232); SOURCE(2506, 41) { word pd47; pd47 = (* (( (ptr) (* (( (ptr) gf←c43112)+109)/* var←c41256 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd47 ))))(c←v5232, (word) (( (bPt) &var←c43080)+36)/* var←c41224 */ , (* (( (ptr) &var←c43080)+7) /* details←v5288 */ ), pd47); }; SOURCE(1986, 10641) return((* (( (ptr) &var←c43080)+8)/* xShmID←v5332 */ )); } static void action←P1908(c←v9148, formal←c43176) word c←v9148; word formal←c43176; { register ptr gf←c43144 = (ptr) &globalframe; formal←c43176 = (formal←c43176 - 36); /* action: */ SOURCE(2171, 10456) SOURCE(2207, 10420) { word pd48; pd48 = (* (( (ptr) (* (( (ptr) gf←c43144)+110)/* var←c41288 */ ))+6) ); (* (( (ptr) formal←c43176)+8) ) = (word) ( *( (fPt) ((* (ptr) pd48 ))))(c←v9148, pd48); }; SOURCE(2253, 63) { word pd49; pd49 = (* (( (ptr) (* (( (ptr) gf←c43144)+109)/* var←c41256 */ ))+17) ); (void) ( *( (fPt) ((* (ptr) pd49 ))))(c←v9148, (* (( (ptr) (* (ptr) (* (( (ptr) formal←c43176)+11) ) ))+1) ), 1, 4, pd49) ; }; SOURCE(2318, 27) { word pd50; pd50 = (* (( (ptr) (* (( (ptr) gf←c43144)+109)/* var←c41256 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd50 ))))(c←v9148, (* (( (ptr) formal←c43176)+8) ), pd50); }; SOURCE(2354, 38) { word pd51; pd51 = (* (( (ptr) (* (( (ptr) gf←c43144)+109)/* var←c41256 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd51 ))))(c←v9148, (* (( (ptr) formal←c43176)+4) ), pd51); }; SOURCE(2394, 41) { word pd52; pd52 = (* (( (ptr) (* (( (ptr) gf←c43144)+109)/* var←c41256 */ ))+19) ); (void) ( *( (fPt) ((* (ptr) pd52 ))))(c←v9148, (* (( (ptr) formal←c43176)+6) ), pd52); }; SOURCE(2438, 21) (* (( (ptr) c←v9148)+4) ) = ((* (( (ptr) c←v9148)+4) ) + 3); SOURCE(2462, 39) { word pd53; pd53 = (* (( (ptr) (* (( (ptr) gf←c43144)+109)/* var←c41256 */ ))+64) ); (void) ( *( (fPt) ((* (ptr) pd53 ))))(c←v9148, (* (( (ptr) formal←c43176)+7) ), pd53); }; } static word SHMCreatePixmap←P360(c←v5392, formal←c0346, formal←c0347, formal←c0348, formal←c0349, formal←c0350, formal←c0351) word c←v5392; word formal←c0346; word formal←c0347; word formal←c0348; W2 formal←c0349; word formal←c0350; word formal←c0351; { W15 var←c43208; /* declaration of drawable←v5420 skipped */ /* declaration of xShmID←v5448 skipped */ /* declaration of offset←v5476 skipped */ /* declaration of size←v5504 skipped */ /* declaration of depth←v5532 skipped */ /* declaration of details←v5560 skipped */ register ptr gf←c43240 = (ptr) &globalframe; /* declaration of p←v5604 skipped */ /* declaration of var←c41320 skipped */ /* declaration of shmd←v9176 skipped */ (* (( (ptr) &var←c43208)+4)/* drawable←v5420 */ ) = formal←c0346; (* (( (ptr) &var←c43208)+5)/* xShmID←v5448 */ ) = formal←c0347; (* (( (ptr) &var←c43208)+6)/* offset←v5476 */ ) = formal←c0348; (* (W2Pt) (( (ptr) &var←c43208)+7)/* size←v5504 */ ) = formal←c0349; (* (( (ptr) &var←c43208)+9)/* depth←v5532 */ ) = formal←c0350; (* (( (ptr) &var←c43208)+10)/* details←v5560 */ ) = formal←c0351; /* SHMCreatePixmap: */ SOURCE(2554, 10073) { word tmpAddr54; tmpAddr54 = (word) (( (ptr) &var←c43208)+12)/* var←c41320 */ ; (* (ptr) tmpAddr54 ) = ( ((word) (fPt) action←P1968) ); (* (( (ptr) tmpAddr54) + 1) ) = 1; }; SOURCE(2554, 10073) (* (( (ptr) &var←c43208)+11)/* p←v5604 */ ) = 0; SOURCE(2749, 60) (* (( (ptr) &var←c43208)+14)/* shmd←v9176 */ ) = (word) GetShmConnectionDataAndTest←P240(c←v5392); SOURCE(3217, 147) if (( (int)IOP2( % , (int)(* (( (ptr) &var←c43208)+7) ), (int)(32 / (* (( (ptr) &var←c43208)+9)/* depth←v5532 */ ))) != (int)0)) { SOURCE(3303, 61) { word pd55; pd55 = (* (( (ptr) (* (( (ptr) gf←c43240)+111)/* var←c41352 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd55 ))))(c←v5392, (* (( (ptr) gf←c43240)+40) ), pd55); }; }; SOURCE(3388, 41) { word pd56; pd56 = (* (( (ptr) (* (( (ptr) gf←c43240)+109)/* var←c41256 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd56 ))))(c←v5392, (word) (( (bPt) &var←c43208)+48)/* var←c41320 */ , (* (( (ptr) &var←c43208)+10) /* details←v5560 */ ), pd56); }; SOURCE(2554, 10073) return((* (( (ptr) &var←c43208)+11)/* p←v5604 */ )); } static void action←P1968(c←v9292, formal←c43304) word c←v9292; word formal←c43304; { register ptr gf←c43272 = (ptr) &globalframe; formal←c43304 = (formal←c43304 - 48); /* action: */ SOURCE(2811, 9816) SOURCE(2847, 9780) { word pd57; pd57 = (* (( (ptr) (* (( (ptr) gf←c43272)+110)/* var←c41288 */ ))+6) ); (* (( (ptr) formal←c43304)+11) ) = (word) ( *( (fPt) ((* (ptr) pd57 ))))(c←v9292, pd57); }; SOURCE(2892, 69) { word pd58; pd58 = (* (( (ptr) (* (( (ptr) gf←c43272)+109)/* var←c41256 */ ))+17) ); (void) ( *( (fPt) ((* (ptr) pd58 ))))(c←v9292, (* (( (ptr) (* (ptr) (* (( (ptr) formal←c43304)+14) ) ))+1) ), 5, 7, pd58) ; }; SOURCE(2963, 26) { word pd59; pd59 = (* (( (ptr) (* (( (ptr) gf←c43272)+109)/* var←c41256 */ ))+31) ); (void) ( *( (fPt) ((* (ptr) pd59 ))))(c←v9292, (* (( (ptr) formal←c43304)+11) ), pd59); }; SOURCE(2992, 35) { word pd60; pd60 = (* (( (ptr) (* (( (ptr) gf←c43272)+109)/* var←c41256 */ ))+27) ); (void) ( *( (fPt) ((* (ptr) pd60 ))))(c←v9292, (* (( (ptr) formal←c43304)+4) ), pd60); }; SOURCE(3030, 27) { word pd61; pd61 = (* (( (ptr) (* (( (ptr) gf←c43272)+109)/* var←c41256 */ ))+29) ); (void) ( *( (fPt) ((* (ptr) pd61 ))))(c←v9292, (* (W2Pt) (( (ptr) formal←c43304)+7) ), pd61); }; SOURCE(3060, 25) { word pd62; pd62 = (* (( (ptr) (* (( (ptr) gf←c43272)+109)/* var←c41256 */ ))+19) ); (void) ( *( (fPt) ((* (ptr) pd62 ))))(c←v9292, (* (( (ptr) formal←c43304)+9) ), pd62); }; SOURCE(3089, 21) (* (( (ptr) c←v9292)+4) ) = ((* (( (ptr) c←v9292)+4) ) + 3); SOURCE(3113, 27) { word pd63; pd63 = (* (( (ptr) (* (( (ptr) gf←c43272)+109)/* var←c41256 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd63 ))))(c←v9292, (* (( (ptr) formal←c43304)+5) ), pd63); }; SOURCE(3143, 27) { word pd64; pd64 = (* (( (ptr) (* (( (ptr) gf←c43272)+109)/* var←c41256 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd64 ))))(c←v9292, (* (( (ptr) formal←c43304)+6) ), pd64); }; SOURCE(3173, 39) { word pd65; pd65 = (* (( (ptr) (* (( (ptr) gf←c43272)+109)/* var←c41256 */ ))+64) ); (void) ( *( (fPt) ((* (ptr) pd65 ))))(c←v9292, (* (( (ptr) formal←c43304)+10) ), pd65); }; } static void SHMDetach←P420(c←v5664, formal←c0352, formal←c0353) word c←v5664; word formal←c0352; word formal←c0353; { W9 var←c43336; /* declaration of xShmID←v5692 skipped */ /* declaration of details←v5720 skipped */ register ptr gf←c43368 = (ptr) &globalframe; /* declaration of var←c41384 skipped */ /* declaration of shmd←v9348 skipped */ (* (( (ptr) &var←c43336)+4)/* xShmID←v5692 */ ) = formal←c0352; (* (( (ptr) &var←c43336)+5)/* details←v5720 */ ) = formal←c0353; /* SHMDetach: */ SOURCE(3435, 9192) { word tmpAddr66; tmpAddr66 = (word) (( (ptr) &var←c43336)+6)/* var←c41384 */ ; (* (ptr) tmpAddr66 ) = ( ((word) (fPt) action←P2028) ); (* (( (ptr) tmpAddr66) + 1) ) = 1; }; SOURCE(3692, 60) (* (( (ptr) &var←c43336)+8)/* shmd←v9348 */ ) = (word) GetShmConnectionDataAndTest←P240(c←v5664); SOURCE(3754, 41) { word pd67; pd67 = (* (( (ptr) (* (( (ptr) gf←c43368)+109)/* var←c41256 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd67 ))))(c←v5664, (word) (( (bPt) &var←c43336)+24)/* var←c41384 */ , (* (( (ptr) &var←c43336)+5) /* details←v5720 */ ), pd67); }; } static void action←P2028(c←v9424, formal←c43432) word c←v9424; word formal←c43432; { register ptr gf←c43400 = (ptr) &globalframe; formal←c43432 = (formal←c43432 - 24); /* action: */ SOURCE(3518, 169) SOURCE(3554, 63) { word pd68; pd68 = (* (( (ptr) (* (( (ptr) gf←c43400)+109)/* var←c41256 */ ))+17) ); (void) ( *( (fPt) ((* (ptr) pd68 ))))(c←v9424, (* (( (ptr) (* (ptr) (* (( (ptr) formal←c43432)+8) ) ))+1) ), 2, 2, pd68) ; }; SOURCE(3619, 27) { word pd69; pd69 = (* (( (ptr) (* (( (ptr) gf←c43400)+109)/* var←c41256 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd69 ))))(c←v9424, (* (( (ptr) formal←c43432)+4) ), pd69); }; SOURCE(3648, 39) { word pd70; pd70 = (* (( (ptr) (* (( (ptr) gf←c43400)+109)/* var←c41256 */ ))+64) ); (void) ( *( (fPt) ((* (ptr) pd70 ))))(c←v9424, (* (( (ptr) formal←c43432)+5) ), pd70); }; } static void UncachedSHMQueryVersion←P480(formal←c0112, c←v5908, formal←c0354) word formal←c0112; word c←v5908; word formal←c0354; { W8 var←c43464; /* declaration of shmd←v5936 skipped */ register ptr gf←c43496 = (ptr) &globalframe; W4 sv←v5992; /* declaration of var←c41416 skipped */ /* declaration of reply←v9464 skipped */ var←c43464.f4/* shmd←v5936 */ = formal←c0354; /* UncachedSHMQueryVersion: */ SOURCE(4053, 8574) { word tmpAddr71; tmpAddr71 = (word) (( (ptr) &var←c43464)+5)/* var←c41416 */ ; (* (ptr) tmpAddr71 ) = ( ((word) (fPt) action←P2088) ); (* (( (ptr) tmpAddr71) + 1) ) = 1; }; SOURCE(4053, 8574) sv←v5992.f0 = 0; sv←v5992.f1 = 0; sv←v5992.f2 = 0; sv←v5992.f3 = 0; SOURCE(4220, 22) var←c43464.f7/* reply←v9464 */ = 0; SOURCE(4387, 8240) if (((* (ptr) var←c43464.f4/* shmd←v5936 */ ) != 0)) { SOURCE(4409, 37) { word pd72; pd72 = (* (( (ptr) (* (( (ptr) gf←c43496)+109)/* var←c41256 */ ))+6) ); (void) ( *( (fPt) ((* (ptr) pd72 ))))(c←v5908, (word) (( (bPt) &var←c43464)+20)/* var←c41416 */ , 0, pd72); }; SOURCE(4448, 27) { word pd73; pd73 = (* (( (ptr) (* (( (ptr) gf←c43496)+109)/* var←c41256 */ ))+68) ); (void) ( *( (fPt) ((* (ptr) pd73 ))))(var←c43464.f7/* reply←v9464 */ , pd73); }; SOURCE(4477, 8150) { word pd74; pd74 = (* (( (ptr) (* (( (ptr) gf←c43496)+109)/* var←c41256 */ ))+77) ); sv←v5992.f3 = (unsigned) ((word) ( *( (fPt) ((* (ptr) pd74 ))))(var←c43464.f7/* reply←v9464 */ , pd74) != 0); }; SOURCE(4517, 24) (* (( (ptr) var←c43464.f7/* reply←v9464 */ )+10) ) = ((* (( (ptr) var←c43464.f7/* reply←v9464 */ )+10) ) + 6); SOURCE(4543, 8084) { word pd75; pd75 = (* (( (ptr) (* (( (ptr) gf←c43496)+109)/* var←c41256 */ ))+78) ); sv←v5992.f1 = (word) ( *( (fPt) ((* (ptr) pd75 ))))(var←c43464.f7/* reply←v9464 */ , pd75); }; SOURCE(4580, 8047) { word pd76; pd76 = (* (( (ptr) (* (( (ptr) gf←c43496)+109)/* var←c41256 */ ))+78) ); sv←v5992.f2 = (word) ( *( (fPt) ((* (ptr) pd76 ))))(var←c43464.f7/* reply←v9464 */ , pd76); }; SOURCE(4617, 22) sv←v5992.f0 = 1; }; /* removed tail goto */ (* (W4Pt) formal←c0112 ) = sv←v5992; return; } static void action←P2088(c←v9568, formal←c43560) word c←v9568; word formal←c43560; { register ptr gf←c43528 = (ptr) &globalframe; formal←c43560 = (formal←c43560 - 20); /* action: */ SOURCE(4244, 8383) SOURCE(4280, 64) { word pd77; pd77 = (* (( (ptr) (* (( (ptr) gf←c43528)+109)/* var←c41256 */ ))+17) ); (void) ( *( (fPt) ((* (ptr) pd77 ))))(c←v9568, (* (( (ptr) (* (ptr) (* (( (ptr) formal←c43560)+4) ) ))+1) ), 0, 1, pd77) ; }; SOURCE(4346, 8281) { word pd78; pd78 = (* (( (ptr) (* (( (ptr) gf←c43528)+109)/* var←c41256 */ ))+62) ); (* (( (ptr) formal←c43560)+7) ) = (word) ( *( (fPt) ((* (ptr) pd78 ))))(c←v9568, pd78); }; } static void SHMQueryVersion←P540(formal←c0119, c←v6052) word formal←c0119; word c←v6052; { register ptr gf←c43592 = (ptr) &globalframe; W4 var←c6096; word shmd←v9596; /* SHMQueryVersion: */ SOURCE(4648, 7979) SOURCE(4721, 53) { word d←v39784; SOURCE(967, 11660) d←v39784 = 0; SOURCE(1059, 11568) { word pd79; pd79 = (* (( (ptr) (* (( (ptr) gf←c43592)+108)/* var←c41160 */ ))+29) ); d←v39784 = XR←Narrow((word) ( *( (fPt) ((* (ptr) pd79 ))))(c←v6052, (* (( (ptr) gf←c43592)+6)/* privateKey←v3728 */ ), (word) ( ( (bPt) gf←c43592)+400)/* var←c40872 */ , pd79), (* (( (ptr) gf←c43592)+34) )); }; SOURCE(967, 11660) shmd←v9596 = d←v39784; }; SOURCE(4776, 16) var←c6096 = (* (W4Pt) (( (ptr) shmd←v9596)+1) ); /* removed tail goto */ (* (W4Pt) formal←c0119 ) = var←c6096; return; } static word ShmAllocSegmentateSystemId←P600(nbytes←v6396, permissions←v6424) word nbytes←v6396; word permissions←v6424; { word shmId←v6488; /* ShmAllocSegmentateSystemId: */ SOURCE(5034, 7593) SOURCE(5181, 7446) shmId←v6488 = (word) XR←ShmGet(0, nbytes←v6396, (permissions←v6424 + 512)); SOURCE(5291, 51) if (( (int)shmId←v6488 == (int) (word) -1)) { SOURCE(5325, 17) (void) SignalUnixError←P720(); }; SOURCE(5034, 7593) return(shmId←v6488); } static void ShmAllocSegmentateNew←P660(formal←c0127, nbytes←v6548) word formal←c0127; word nbytes←v6548; { W3 info←v6592; word vmAddr←v9652; word i←v9680; /* ShmAllocSegmentateNew: */ SOURCE(5348, 7279) SOURCE(5348, 7279) info←v6592.f0 = 0; info←v6592.f1 = 0; info←v6592.f2 = 0; SOURCE(5446, 7181) info←v6592.f0 = (word) ShmAllocSegmentateSystemId←P600(nbytes←v6548, 511); SOURCE(5495, 7132) vmAddr←v9652 = (word) XR←VMReserve(SGNCK(nbytes←v6548)); SOURCE(5543, 21) if ((vmAddr←v9652 == 0)) { SOURCE(5564, 5) (void) XR←RaiseUnnamedError(); }; SOURCE(5571, 7056) i←v9680 = (word) XR←ShmAt(info←v6592.f0, vmAddr←v9652, 0); SOURCE(5646, 32) if (( (int)i←v9680 == (int) (word) -1)) { SOURCE(5661, 17) (void) SignalUnixError←P720(); }; SOURCE(5680, 23) info←v6592.f1 = i←v9680; SOURCE(5705, 27) if ((info←v6592.f1 != vmAddr←v9652)) { SOURCE(5732, 5) (void) XR←RaiseUnnamedError(); }; /* removed tail goto */ (* (W3Pt) formal←c0127 ) = info←v6592; return; } static void SignalUnixError←P720() { register ptr gf←c43624 = (ptr) &globalframe; word errno←v9736; /* SignalUnixError: */ SOURCE(5744, 6883) SOURCE(5773, 45) errno←v9736 = (word) XR←GetErrno(); SOURCE(5821, 16) { word var←c0129; var←c0129 = errno←v9736; (void) XR←RaiseError((word) (( (bPt) gf←c43624)+180)/* var←c39976 */ , (word) &var←c0129); }; } static word Next←P780(segment←v6924) word segment←v6924; { register ptr gf←c43656 = (ptr) &globalframe; word var←c6980; /* Next: */ SOURCE(6405, 180) SOURCE(6486, 99) { word var←c41512; var←c41512 = segment←v6924; if ((var←c41512 == 0)) { goto lab←L100009; }; if (((* (( (ptr) gf←c43656)+15) ) == XR←GetReferentType(var←c41512))) { { word ls←v9780; ls←v9780 = var←c41512; SOURCE(6536, 16) return((* (( (ptr) ls←v9780)+6) )); }; } else { lab←L100009: ; SOURCE(6565, 20) return((* (( (ptr) gf←c43656)+7)/* rootSegment←v4204 */ )); }; }; } static void Info←P840(formal←c0142, segment←v7052) word formal←c0142; word segment←v7052; { register ptr gf←c43688 = (ptr) &globalframe; word addr←v7108; word bytes←v7136; word id←v7164; word ls←v9836; /* Info: */ SOURCE(6590, 218) SOURCE(6695, 39) ls←v9836 = XR←Narrow(segment←v7052, (* (( (ptr) gf←c43688)+15) )); SOURCE(6736, 72) addr←v7108 = (* (( (ptr) ls←v9836)+2) ); bytes←v7136 = (* (( (ptr) ls←v9836)+4) ); id←v7164 = (* (( (ptr) ls←v9836)+1) ); /* removed tail goto */ (* (ptr) formal←c0142 ) = addr←v7108; (* (( (ptr) formal←c0142)+1) ) = bytes←v7136; (* (( (ptr) formal←c0142)+2) ) = id←v7164; return; } static void PreAllocate←P900(nbytes←v7224) word nbytes←v7224; { /* PreAllocate: */ SOURCE(6813, 5814) SOURCE(6857, 40) nbytes←v7224 = (MAX( (unsigned) , nbytes←v7224, 1048576)); SOURCE(6899, 36) nbytes←v7224 = (MIN( (unsigned) , nbytes←v7224, 4194304)); SOURCE(6937, 5690) { word var←c41640; var←c41640 = (word) AllocateSegment←P960(nbytes←v7224); }; } static word AllocateSegment←P960(nbytes←v7284) word nbytes←v7284; { W8 var←c43720; register ptr gf←c43752 = (ptr) &globalframe; word ls←v7328; /* declaration of var←c41672 skipped */ /* declaration of var←c41704 skipped */ /* AllocateSegment: */ SOURCE(6971, 5656) { word tmpAddr80; tmpAddr80 = (word) (( (ptr) &var←c43720)+4)/* var←c41672 */ ; (* (ptr) tmpAddr80 ) = ( ((word) (fPt) Alloc←P2256) ); (* (( (ptr) tmpAddr80) + 1) ) = 1; }; { word tmpAddr81; tmpAddr81 = (word) (( (ptr) &var←c43720)+6)/* var←c41704 */ ; (* (ptr) tmpAddr81 ) = ( ((word) (fPt) Link←P2196) ); (* (( (ptr) tmpAddr81) + 1) ) = 1; }; SOURCE(6971, 5656) ls←v7328 = 0; SOURCE(7577, 42) if ((nbytes←v7284 > 4194304)) { SOURCE(7607, 12) return(0); }; SOURCE(7621, 5006) ls←v7328 = (word) Alloc←P2256(nbytes←v7284, (word) (( (bPt) &var←c43720)+16)/* var←c41672 */ ); SOURCE(7641, 39) if ((ls←v7328 != 0)) { SOURCE(7656, 24) (void) Link←P2196((* (( (ptr) gf←c43752)+9)/* fakeConnection←v4316 */ ), ls←v7328, (word) (( (bPt) &var←c43720)+24)/* var←c41704 */ ) ; }; SOURCE(6971, 5656) return(ls←v7328); } static void Link←P2196(c←v9996, ls←v10024, formal←c43816) word c←v9996; word ls←v10024; word formal←c43816; { register ptr gf←c43784 = (ptr) &globalframe; formal←c43816 = (formal←c43816 - 24); /* Link: */ SOURCE(7071, 138) (void) (XR←MonitorEntry(c←v9996)); SOURCE(7169, 21) (* (( (ptr) ls←v10024)+6) ) = (* (( (ptr) gf←c43784)+7)/* rootSegment←v4204 */ ); SOURCE(7192, 17) (* (( (ptr) gf←c43784)+7)/* rootSegment←v4204 */ ) = ls←v10024; SOURCE(7071, 138) (void) (XR←MonitorExit(c←v9996)); return; } static word Alloc←P2256(formal←c0355, formal←c43880) word formal←c0355; word formal←c43880; { W6 var←c43848; /* declaration of nbytes←v10096 skipped */ /* declaration of ls←v10140 skipped */ formal←c43880 = (formal←c43880 - 16); var←c43848.f4/* nbytes←v10096 */ = formal←c0355; var←c43848.f0 = formal←c43880; /* Alloc: */ SOURCE(7212, 5415) SOURCE(7212, 5415) var←c43848.f5/* ls←v10140 */ = 0; SOURCE(7273, 5354) SOURCE(7275, 5352) { word var←c03; { word var←c0317; var←c0317 = (word) &var←c43848; var←c03 = (word) XR←Enable(( ((word) (fPt) NoName←Q3780) ), ( ((word) (fPt) NoName←Q4200) ), var←c0317); }; if ((var←c03 == 3)) { goto lab←L100011; }; }; goto lab←L100014; lab←L100011: ; SOURCE(7560, 12) return(0); lab←L100014: ; SOURCE(7212, 5415) return(var←c43848.f5/* ls←v10140 */ ); } static word NoName←Q3780(formal←c0294) word formal←c0294; { register ptr gf←c0293 = (ptr) &globalframe; SOURCE(7369, 23) (* (( (ptr) formal←c0294)+5) ) = XR←NewObject(28, (* (( (ptr) gf←c0293)+15) )); SOURCE(7394, 5233) { word idx82; (void) ShmAllocSegmentateNew←P660((word) (( (bPt) (* (( (ptr) formal←c0294)+5) ))+4), ( idx82 = (* (( (ptr) formal←c0294)+4) ), SGNCK(idx82) )); }; SOURCE(7438, 5189) { word pd83; pd83 = (* (( (ptr) (* (( (ptr) gf←c0293)+112)/* var←c41768 */ ))+6) ); (* (ptr) (* (( (ptr) formal←c0294)+5) ) ) = (word) ( *( (fPt) ((* (ptr) pd83 ))))((* (( (ptr) (* (( (ptr) formal←c0294)+5) ))+2) ), (* (( (ptr) formal←c0294)+4) ), pd83); }; SOURCE(7508, 17) (* (( (ptr) (* (( (ptr) formal←c0294)+5) ))+4) ) = (* (( (ptr) formal←c0294)+4) ); SOURCE(7527, 17) (* (( (ptr) (* (( (ptr) formal←c0294)+5) ))+5) ) = XR←NewObject(4, (* (( (ptr) gf←c0293)+16) )); return(0); } static word AllocateBlock←P1020(nbytes←v7484) word nbytes←v7484; { register ptr gf←c43912 = (ptr) &globalframe; word var←c7528; word ls←v10180; /* AllocateBlock: */ SOURCE(7757, 4870) SOURCE(7757, 4870) var←c7528 = 0; SOURCE(7822, 35) ls←v10180 = (* (( (ptr) gf←c43912)+7)/* rootSegment←v4204 */ ); SOURCE(7859, 24) nbytes←v7484 = nbytes←v7484; SOURCE(7921, 4706) lab←L100017: ; if ((ls←v10180 != 0)) { } else { goto lab←L100015; }; { word c←v10236; SOURCE(7937, 61) { word pd84; pd84 = (* (( (ptr) (* (( (ptr) gf←c43912)+112)/* var←c41768 */ ))+9) ); c←v10236 = (word) ( *( (fPt) ((* (ptr) pd84 ))))((* (ptr) ls←v10180 ), nbytes←v7484, pd84); }; SOURCE(8000, 4627) if ((c←v10236 != 0)) { SOURCE(8014, 4613) { word var←c41832; var←c41832 = XR←NewObject(8, (* (( (ptr) gf←c43912)+12) )); (* (ptr) var←c41832 ) = ls←v10180; (* (( (ptr) var←c41832)+1) ) = c←v10236; return(var←c41832); }; }; SOURCE(8047, 20) ls←v10180 = (* (( (ptr) ls←v10180)+6) ); }; goto lab←L100017; lab←L100015: ; SOURCE(8069, 16) ls←v10180 = (* (( (ptr) gf←c43912)+7)/* rootSegment←v4204 */ ); SOURCE(8087, 4540) if ((ls←v10180 != 0)) { SOURCE(8104, 39) { word pd85; pd85 = (* (( (ptr) (* (( (ptr) gf←c43912)+113)/* var←c41864 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd85 ))))(1, 0, pd85); }; SOURCE(8145, 15) { word pd86; pd86 = (* (( (ptr) (* (( (ptr) gf←c43912)+114)/* var←c41896 */ ))+23) ); (void) ( *( (fPt) ((* (ptr) pd86 ))))(pd86); }; SOURCE(8196, 4431) lab←L100020: ; if ((ls←v10180 != 0)) { } else { goto lab←L100018; }; { word c←v10280; SOURCE(8212, 61) { word pd87; pd87 = (* (( (ptr) (* (( (ptr) gf←c43912)+112)/* var←c41768 */ ))+9) ); c←v10280 = (word) ( *( (fPt) ((* (ptr) pd87 ))))((* (ptr) ls←v10180 ), nbytes←v7484, pd87); }; SOURCE(8275, 4352) if ((c←v10280 != 0)) { SOURCE(8289, 4338) { word var←c41960; var←c41960 = XR←NewObject(8, (* (( (ptr) gf←c43912)+12) )); (* (ptr) var←c41960 ) = ls←v10180; (* (( (ptr) var←c41960)+1) ) = c←v10280; return(var←c41960); }; }; SOURCE(8322, 20) ls←v10180 = (* (( (ptr) ls←v10180)+6) ); }; goto lab←L100020; lab←L100018: ; }; SOURCE(8347, 62) if ((nbytes←v7484 < 1048576)) { SOURCE(8382, 27) nbytes←v7484 = 1048576; }; SOURCE(8478, 4149) ls←v10180 = (word) AllocateSegment←P960(nbytes←v7484); SOURCE(8508, 4119) if ((ls←v10180 != 0)) { SOURCE(8523, 112) { word c←v10324; SOURCE(8525, 61) { word pd88; pd88 = (* (( (ptr) (* (( (ptr) gf←c43912)+112)/* var←c41768 */ ))+9) ); c←v10324 = (word) ( *( (fPt) ((* (ptr) pd88 ))))((* (ptr) ls←v10180 ), nbytes←v7484, pd88); }; SOURCE(8588, 4039) if ((c←v10324 != 0)) { SOURCE(8602, 4025) { word var←c42024; var←c42024 = XR←NewObject(8, (* (( (ptr) gf←c43912)+12) )); (* (ptr) var←c42024 ) = ls←v10180; (* (( (ptr) var←c42024)+1) ) = c←v10324; return(var←c42024); }; }; }; }; SOURCE(7757, 4870) return(var←c7528); } static void UNTHREADEDBeforeQuitWorld←P1080(x←v7600) word x←v7600; { register ptr gf←c43944 = (ptr) &globalframe; /* UNTHREADEDBeforeQuitWorld: */ SOURCE(8643, 3984) SOURCE(8688, 19) (* (( (ptr) gf←c43944)+5)/* neverUseThis←v3644 */ ) = 1; SOURCE(8709, 3918) { register word ls←v10368; ls←v10368 = (* (( (ptr) gf←c43944)+7)/* rootSegment←v4204 */ ); lab←L100024: ; if ((ls←v10368 != 0)) { } else { goto lab←L100021; }; { word shmId←v10424; SOURCE(8774, 57) shmId←v10424 = (* (( (ptr) ls←v10368)+1) ); SOURCE(8833, 3794) if (( (int)shmId←v10424 != (int) (word) -1)) { SOURCE(8875, 3752) SOURCE(8877, 3750) { word var←c42056; var←c42056 = (word) shmctl(shmId←v10424, 0, 0); }; }; }; ls←v10368 = (* (( (ptr) ls←v10368)+6) ); goto lab←L100024; lab←L100021: ; }; } static word NewSharedSampleMap←P1140(box←v7672, bitsPerSample←v7700) W4 box←v7672; word bitsPerSample←v7700; { register ptr gf←c43976 = (ptr) &globalframe; word sm←v7744; word block←v10468 = 0; word chunk←v10496 = 0; word addr←v10524; word w←v10552; word h←v10580; word nbytes←v10608; /* NewSharedSampleMap: */ SOURCE(8955, 3672) SOURCE(8955, 3672) sm←v7744 = 0; SOURCE(9148, 23) { word pd89; pd89 = (* (( (ptr) (* (( (ptr) gf←c43976)+115)/* var←c42088 */ ))+17) ); w←v10552 = (word) ( *( (fPt) ((* (ptr) pd89 ))))(box←v7672, pd89); }; SOURCE(9174, 23) { word pd90; pd90 = (* (( (ptr) (* (( (ptr) gf←c43976)+115)/* var←c42088 */ ))+18) ); h←v10580 = (word) ( *( (fPt) ((* (ptr) pd90 ))))(box←v7672, pd90); }; SOURCE(9213, 19) if ((w←v10552 == 0) || (h←v10580 == 0)) { SOURCE(9232, 5) (void) XR←RaiseUnnamedError(); }; SOURCE(9245, 287) { word var←c42120; var←c42120 = bitsPerSample←v7700; switch (var←c42120) { case 1: SOURCE(9277, 20) w←v10552 = ((word) ((word) (w←v10552 + 63) >> 6) << 6); break; case 8: SOURCE(9309, 20) w←v10552 = ((word) ((word) (w←v10552 + 7) >> 3) << 3); break; case 4: SOURCE(9341, 20) w←v10552 = ((word) ((word) (w←v10552 + 15) >> 4) << 4); break; case 2: SOURCE(9373, 20) w←v10552 = ((word) ((word) (w←v10552 + 31) >> 5) << 5); break; case 24: SOURCE(9405, 20) w←v10552 = ((word) ((word) (w←v10552 + 3) >> 2) << 2); break; case 32: SOURCE(9451, 20) w←v10552 = ((word) ((word) (w←v10552 + 1) >> 1) << 1); break; case 16: SOURCE(9483, 20) w←v10552 = ((word) ((word) (w←v10552 + 3) >> 2) << 2); break; default: SOURCE(9520, 12) return(0); }; }; SOURCE(9570, 3057) box←v7672.f3 = (box←v7672.f1 + w←v10552); SOURCE(9622, 30) nbytes←v10608 = (((word) (w←v10552 * bitsPerSample←v7700) >> 3) * h←v10580); SOURCE(9654, 2973) if ((nbytes←v10608 <= 4194304)) { SOURCE(9685, 2942) block←v10468 = (word) AllocateBlock←P1020(nbytes←v10608); }; SOURCE(9716, 30) if ((block←v10468 == 0)) { SOURCE(9734, 12) return(0); }; SOURCE(9767, 2860) { word pd91; pd91 = (* (( (ptr) (* (( (ptr) gf←c43976)+112)/* var←c41768 */ ))+10) ); addr←v10524 = (word) ( *( (fPt) ((* (ptr) pd91 ))))((* ((( (ptr) block←v10468)+1)) ), pd91); }; SOURCE(9820, 2807) SOURCE(9822, 2805) { W2 var←c42152; var←c42152.f0 = addr←v10524; var←c42152.f1 = 0; { word pd92; word idx93; pd92 = (* (( (ptr) (* (( (ptr) gf←c43976)+116)/* var←c42184 */ ))+15) ); sm←v7744 = (word) ( *( (fPt) ((* (ptr) pd92 ))))(box←v7672, bitsPerSample←v7700, ( idx93 = (word) (w←v10552 * bitsPerSample←v7700), SGNCK(idx93) ), var←c42152, block←v10468, ((word) nbytes←v10608 >> 2) , 0, pd92); }; }; SOURCE(8955, 3672) return(sm←v7744); } static word Disabled1←P1200(c←v7804) word c←v7804; { register ptr gf←c44008 = (ptr) &globalframe; word var←c7848; /* Disabled1: */ SOURCE(10016, 2611) SOURCE(10070, 27) if ((c←v7804 == 0)) { SOURCE(10084, 13) return(1); }; SOURCE(10099, 2528) { word pd94; pd94 = (* (( (ptr) (* (( (ptr) gf←c44008)+108)/* var←c41160 */ ))+28) ); return( (unsigned) ((word) ( *( (fPt) ((* (ptr) pd94 ))))(c←v7804, (* (( (ptr) gf←c44008)+43) ), pd94) != 0)); }; } static word ServerHostFromConvention←P1260(formal←c0356) word formal←c0356; { W6 var←c44040; /* declaration of c←v7908 skipped */ /* declaration of var←c04 skipped */ word var←c7952; var←c44040.f4/* c←v7908 */ = formal←c0356; /* ServerHostFromConvention: */ SOURCE(10164, 2463) SOURCE(10164, 2463) var←c7952 = 0; SOURCE(10242, 2385) SOURCE(10244, 2383) { word var←c05; { word var←c0318; var←c0318 = (word) &var←c44040; var←c05 = (word) XR←Enable(( ((word) (fPt) NoName←Q3840) ), ( ((word) (fPt) NoName←Q4140) ), var←c0318); }; if ((var←c05 == 4)) { goto lab←L100025; } else { if ((var←c05 == 1)) { goto lab←L04; }; }; }; goto lab←L100029; lab←L100025: ; lab←L100029: ; SOURCE(10164, 2463) return(var←c7952); lab←L04: ; return(var←c44040.f5/* var←c04 */ ); } static word NoName←Q3840(formal←c0300) word formal←c0300; { register ptr gf←c0299 = (ptr) &globalframe; SOURCE(10269, 60) { word serverHostAtom←v10664; W4 prr←v10692; SOURCE(10269, 60) { word pd95; pd95 = (* (( (ptr) (* (( (ptr) gf←c0299)+108)/* var←c41160 */ ))+50) ); serverHostAtom←v10664 = (word) ( *( (fPt) ((* (ptr) pd95 ))))((* (( (ptr) formal←c0300)+4) ), (* (( (ptr) gf←c0299)+44) ), pd95) ; }; SOURCE(10331, 113) { word var←c42248; { word pd96; pd96 = (* (( (ptr) (* (( (ptr) gf←c0299)+108)/* var←c41160 */ ))+20) ); var←c42248 = (word) ( *( (fPt) ((* (ptr) pd96 ))))((* ((( (ptr) formal←c0300)+4)) ), pd96); }; { word pd97; pd97 = (* (( (ptr) (* (( (ptr) gf←c0299)+108)/* var←c41160 */ ))+55) ); (void) ( *( (fPt) ((* (ptr) pd97 ))))((word) &prr←v10692, (* (( (ptr) formal←c0300)+4) ), var←c42248, serverHostAtom←v10664, 0, 0 , 0, 2147483647, 8, pd97); }; }; SOURCE(10446, 53) { word var←c42280; var←c42280 = prr←v10692.f2; if ((var←c42280 == 0)) { goto lab←L100028; }; { word tc98; if (((* (( (ptr) gf←c0299)+13) ) == XR←GetReferentType(var←c42280))) { tc98 = (word) ( (unsigned) (*(int*)var←c42280<0) == 0); } else { tc98 = (word) 0; }; if (tc98) { { word r←v10736; r←v10736 = var←c42280; SOURCE(10489, 10) (* (( (ptr) formal←c0300)+5) ) = r←v10736; return(1); }; } else { lab←L100028: ; }; }; }; }; return(0); } static word Disabled2←P1320(c←v8012) word c←v8012; { register ptr gf←c44072 = (ptr) &globalframe; word var←c8056; word name←v10780 = 0; word isLocalhost←v10808; /* Disabled2: */ SOURCE(10536, 2091) SOURCE(10536, 2091) var←c8056 = 0; SOURCE(10634, 1993) if ((0 != (word) Disabled1←P1200(c←v8012))) { SOURCE(10655, 13) return(1); }; SOURCE(10670, 1957) name←v10780 = (* (( (ptr) c←v8012)+18) ); SOURCE(10695, 1932) { word pd99; pd99 = (* (( (ptr) (* (( (ptr) gf←c44072)+117)/* var←c42312 */ ))+5) ); isLocalhost←v10808 = (word) ( *( (fPt) ((* (ptr) pd99 ))))((* ((( (ptr) c←v8012)+18)) ), pd99); }; SOURCE(10749, 34) if ((0 == isLocalhost←v10808)) { SOURCE(10770, 13) return(1); }; SOURCE(10785, 1842) name←v10780 = (word) ServerHostFromConvention←P1260(c←v8012); SOURCE(10821, 1806) { word pd100; word pd101; pd100 = (* (( (ptr) (* (( (ptr) gf←c44072)+118)/* var←c42344 */ ))+13) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd100 ))))(name←v10780, pd100))) { isLocalhost←v10808 = (unsigned) 1; } else { pd101 = (* (( (ptr) (* (( (ptr) gf←c44072)+117)/* var←c42312 */ ))+5) ); isLocalhost←v10808 = (unsigned) (0 != (word) ( *( (fPt) ((* (ptr) pd101 ))))(name←v10780, pd101)); }; }; SOURCE(10885, 34) if ((0 == isLocalhost←v10808)) { SOURCE(10906, 13) return(1); }; SOURCE(10536, 2091) return(var←c8056); } static word TestWorking←P1380(formal←c0357) word formal←c0357; { W8 var←c44104; /* declaration of c←v8116 skipped */ register ptr gf←c44136 = (ptr) &globalframe; word ok←v8160; /* declaration of someXSR←v10852 skipped */ /* declaration of shmd←v10880 skipped */ var←c44104.f4/* c←v8116 */ = formal←c0357; /* TestWorking: */ SOURCE(10925, 1702) SOURCE(10985, 40) var←c44104.f5/* someXSR←v10852 */ = (* (( (ptr) gf←c44136)+7)/* rootSegment←v4204 */ ); SOURCE(11027, 53) { word d←v39736; SOURCE(967, 11660) d←v39736 = 0; SOURCE(1059, 11568) { word pd102; pd102 = (* (( (ptr) (* (( (ptr) gf←c44136)+108)/* var←c41160 */ ))+29) ); d←v39736 = XR←Narrow((word) ( *( (fPt) ((* (ptr) pd102 ))))(var←c44104.f4/* c←v8116 */ , (* (( (ptr) gf←c44136)+6)/* privateKey←v3728 */ ), (word) ( ( (bPt) gf←c44136)+400)/* var←c40872 */ , pd102), (* (( (ptr) gf←c44136)+34) )); }; SOURCE(967, 11660) var←c44104.f6/* shmd←v10880 */ = d←v39736; }; SOURCE(11082, 71) if (((var←c44104.f6/* shmd←v10880 */ == 0) || (0 == (* (( (ptr) var←c44104.f6/* shmd←v10880 */ )+5) ))) || (var←c44104.f5/* someXSR←v10852 */ == 0)) { SOURCE(11139, 14) return(0); }; SOURCE(11155, 1472) SOURCE(11155, 1472) { word var←c42408; { /* declaration of var←c06 skipped */ { word var←c07; { word var←c0319; var←c0319 = (word) &var←c44104; var←c07 = (word) XR←Enable(( ((word) (fPt) NoName←Q3900) ), ( ((word) (fPt) NoName←Q4080) ), var←c0319); }; if ((var←c07 == 5)) { goto lab←L100032; }; }; var←c42408 = var←c44104.f7/* var←c06 */ ; }; }; lab←L100032: ; SOURCE(11239, 100) if ((0 == (* (( (ptr) var←c44104.f6/* shmd←v10880 */ )+5) ))) { SOURCE(11271, 68) { word pd103; pd103 = (* (( (ptr) (* (( (ptr) gf←c44136)+108)/* var←c41160 */ ))+27) ); (void) ( *( (fPt) ((* (ptr) pd103 ))))(var←c44104.f4/* c←v8116 */ , (* (( (ptr) gf←c44136)+43) ), (* (( (ptr) gf←c44136)+43) ), pd103); }; }; SOURCE(11342, 29) return((* (( (ptr) var←c44104.f6/* shmd←v10880 */ )+5) )); } static word NoName←Q3900(formal←c0303) word formal←c0303; { SOURCE(11155, 1472) (* (( (ptr) formal←c0303)+7) ) = (word) GetXShmId←P1680((* (( (ptr) formal←c0303)+4) ), (* (( (ptr) formal←c0303)+5) )); return(0); } static word ConnectionSupportsThis←P1440(c←v8220) word c←v8220; { register ptr gf←c44168 = (ptr) &globalframe; word var←c8264; /* ConnectionSupportsThis: */ SOURCE(11377, 1250) SOURCE(11451, 35) if ((0 != (* (( (ptr) gf←c44168)+5)/* neverUseThis←v3644 */ ))) { SOURCE(11472, 14) return(0); }; SOURCE(11488, 36) if ((c←v8220 == 0)) { SOURCE(11502, 22) return( (unsigned) (0 == (* (( (ptr) gf←c44168)+5)/* neverUseThis←v3644 */ ))); }; SOURCE(11526, 1101) if ((0 != (word) Disabled1←P1200(c←v8220))) { SOURCE(11547, 14) return(0); }; SOURCE(11563, 1064) return((word) TestWorking←P1380(c←v8220)); } static word ConnectionSupportsPixmaps←P1500(c←v8324) word c←v8324; { register ptr gf←c44200 = (ptr) &globalframe; word var←c8368; /* ConnectionSupportsPixmaps: */ SOURCE(11592, 1035) SOURCE(11592, 1035) var←c8368 = 0; SOURCE(11677, 950) if ((0 == (* (( (ptr) gf←c44200)+5)/* neverUseThis←v3644 */ ))) { SOURCE(11699, 118) { word shmd←v10948; SOURCE(11701, 53) { word d←v39688; SOURCE(967, 11660) d←v39688 = 0; SOURCE(1059, 11568) { word pd104; pd104 = (* (( (ptr) (* (( (ptr) gf←c44200)+108)/* var←c41160 */ ))+29) ); d←v39688 = XR←Narrow((word) ( *( (fPt) ((* (ptr) pd104 ))))(c←v8324, (* (( (ptr) gf←c44200)+6)/* privateKey←v3728 */ ), (word) ( ( (bPt) gf←c44200)+400)/* var←c40872 */ , pd104), (* (( (ptr) gf←c44200)+34) )); }; SOURCE(967, 11660) shmd←v10948 = d←v39688; }; SOURCE(11756, 871) if ((0 != (* (( (ptr) shmd←v10948)+6) ))) { SOURCE(11792, 835) return((word) TestWorking←P1380(c←v8324)); }; }; }; SOURCE(11592, 1035) return(var←c8368); } static word SampleMapSupportsThis←P1560(sm←v8428) word sm←v8428; { register ptr gf←c44232 = (ptr) &globalframe; word var←c8472; /* SampleMapSupportsThis: */ SOURCE(11824, 803) SOURCE(11907, 35) if ((0 != (* (( (ptr) gf←c44232)+5)/* neverUseThis←v3644 */ ))) { SOURCE(11928, 14) return(0); }; SOURCE(11944, 683) return( (unsigned) ((word) SampleMapPiece←P1620(sm←v8428) != 0)); } static word SampleMapPiece←P1620(sm←v8532) word sm←v8532; { register ptr gf←c44264 = (ptr) &globalframe; word var←c8576; /* SampleMapPiece: */ SOURCE(11980, 647) SOURCE(11980, 647) var←c8576 = 0; SOURCE(12060, 567) { word var←c42568; var←c42568 = sm←v8532; if ((var←c42568 == 0)) { goto lab←L100036; }; if (((* (( (ptr) var←c42568)+6) ) == 0)) { { word rsm←v11004; rsm←v11004 = var←c42568; SOURCE(12118, 509) { word var←c42600; var←c42600 = (* (( (ptr) rsm←v11004)+10) ); if ((var←c42600 == 0)) { goto lab←L100037; }; if (((* (( (ptr) gf←c44264)+12) ) == XR←GetReferentType(var←c42600))) { { word p←v11048; p←v11048 = var←c42600; SOURCE(12176, 10) return(p←v11048); }; } else { lab←L100037: ; SOURCE(12199, 12) return(0); }; }; }; } else { lab←L100036: ; }; }; SOURCE(11980, 647) return(var←c8576); } static word GetXShmId←P1680(c←v8648, formal←c0358) word c←v8648; word formal←c0358; { W7 var←c44296; /* declaration of ls←v8676 skipped */ register ptr gf←c44328 = (ptr) &globalframe; word xshmid←v8732; /* declaration of var←c42632 skipped */ word refXId←v11132; var←c44296.f4/* ls←v8676 */ = formal←c0358; /* GetXShmId: */ SOURCE(12232, 528) { word tmpAddr105; tmpAddr105 = (word) (( (ptr) &var←c44296)+5)/* var←c42632 */ ; (* (ptr) tmpAddr105 ) = ( ((word) (fPt) GetXShmInit←P2796) ); (* (( (ptr) tmpAddr105) + 1) ) = 1; }; SOURCE(12661, 80) { word pd106; pd106 = (* (( (ptr) (* (( (ptr) gf←c44328)+108)/* var←c41160 */ ))+29) ); refXId←v11132 = XR←Narrow((word) ( *( (fPt) ((* (ptr) pd106 ))))(c←v8648, (* (( (ptr) var←c44296.f4/* ls←v8676 */ )+5) ), (word) ( ( (bPt) &var←c44296)+20)/* var←c42632 */ , pd106), (* (( (ptr) gf←c44328)+18) )); }; SOURCE(12743, 17) return((* (ptr) refXId←v11132 )); } static word GetXShmInit←P2796(formal←c0359, key←v38388, formal←c44424) word formal←c0359; word key←v38388; word formal←c44424; { W11 var←c44360; /* declaration of c←v38360 skipped */ register ptr gf←c44392 = (ptr) &globalframe; word val←v38432; /* declaration of refXId←v11188 skipped */ formal←c44424 = (formal←c44424 - 20); (* (( (ptr) &var←c44360)+4)/* c←v38360 */ ) = formal←c0359; (* (ptr) &var←c44360 ) = formal←c44424; /* GetXShmInit: */ SOURCE(12319, 339) SOURCE(12319, 339) val←v38432 = (* (( (ptr) gf←c44392)+42) ); SOURCE(12358, 32) (* (( (ptr) &var←c44360)+5)/* refXId←v11188 */ ) = XR←NewObject(4, (* (( (ptr) gf←c44392)+18) )); SOURCE(12392, 235) SOURCE(12392, 235) { /* declaration of var←c08 skipped */ /* declaration of var←c09 skipped */ (* (W3Pt) (( (ptr) &var←c44360)+6)/* var←c08 */ ) = (* (W3Pt) (( (ptr) (* (( (ptr) formal←c44424)+4) ))+1) ); (* (( (ptr) &var←c44360)+9)/* var←c09 */ ) = (* (ptr) (* (( (ptr) (* (( (ptr) gf←c44392)+119)/* var←c42664 */ ))+4) ) ); { /* declaration of var←c010 skipped */ { word var←c011; { word var←c0320; var←c0320 = (word) &var←c44360; var←c011 = (word) XR←Enable(( ((word) (fPt) NoName←Q3960) ), ( ((word) (fPt) NoName←Q4020) ), var←c0320); }; if ((var←c011 == 6)) { goto lab←L100039; }; }; (* (ptr) (* (( (ptr) &var←c44360)+5)/* refXId←v11188 */ ) ) = (* (( (ptr) &var←c44360)+10)/* var←c010 */ ); }; }; lab←L100039: ; SOURCE(12642, 16) return((* (( (ptr) &var←c44360)+5)/* refXId←v11188 */ )); } static word NoName←Q3960(formal←c0311) word formal←c0311; { SOURCE(12392, 235) (* (( (ptr) formal←c0311)+10) ) = (word) SHMAttach←P300((* (( (ptr) formal←c0311)+4) ), (* (W3Pt) (( (ptr) formal←c0311)+6) ), (* (( (ptr) formal←c0311)+9) )); return(0); } static word UnsafeCreatePixmap←P1740(c←v8792, drawable←v8820, sm←v8848) word c←v8792; word drawable←v8820; word sm←v8848; { register ptr gf←c44456 = (ptr) &globalframe; word p←v8892; word block←v11300; W2 sz←v11328; word bps←v11356; word xshmid←v11384; word offset←v11412; /* UnsafeCreatePixmap: */ SOURCE(12764, 692) SOURCE(12917, 37) block←v11300 = (word) SampleMapPiece←P1620(sm←v8848); SOURCE(12956, 37) { word map←v39928; map←v39928 = sm←v8848; { W4 b←v38852; b←v38852 = (* (W4Pt) map←v39928 ); sz←v11328.f0 = (b←v38852.f2 - b←v38852.f0); sz←v11328.f1 = (b←v38852.f3 - b←v38852.f1); }; }; SOURCE(12995, 44) { word map←v39880; map←v39880 = sm←v8848; bps←v11356 = (* (( (ptr) map←v39880)+5) ); }; SOURCE(13073, 35) if ((0 == (word) ConnectionSupportsThis←P1440(c←v8792))) { SOURCE(13108, 5) (void) XR←RaiseUnnamedError(); }; SOURCE(13116, 18) if ((block←v11300 == 0)) { SOURCE(13134, 5) (void) XR←RaiseUnnamedError(); }; SOURCE(13175, 98) offset←v11412 = ((* (( (ptr) sm←v8848)+8) ) - (* (( (ptr) (* (ptr) block←v11300 ))+2) )); SOURCE(13275, 31) xshmid←v11384 = (word) GetXShmId←P1680(c←v8792, (* (ptr) block←v11300 )); SOURCE(13308, 148) { W2 var←c42824; var←c42824.f0 = sz←v11328.f1; var←c42824.f1 = sz←v11328.f0; p←v8892 = (word) SHMCreatePixmap←P360(c←v8792, drawable←v8820, xshmid←v11384, offset←v11412, var←c42824, BCK(bps←v11356, 256) , (* (ptr) (* (( (ptr) (* (( (ptr) gf←c44456)+119)/* var←c42664 */ ))+4) ) )); }; SOURCE(12764, 692) return(p←v8892); } static word ProcessExtension←P1800(self←v19432, xEvent←v19460) word self←v19432; word xEvent←v19460; { word continue←v19504; /* ProcessExtension: */ SOURCE(13460, 59) SOURCE(13460, 59) continue←v19504 = 0; SOURCE(13460, 59) return(continue←v19504); } static void NoName←Q4020(formal←c0244, formal←c200016, formal←c200017, formal←c200018, formal←c200019) word formal←c0244; word formal←c200016; word formal←c200017; word formal←c200018; word formal←c200019; { register ptr gf←c0313 = (ptr) &globalframe; if ((formal←c200017 == (* (( (ptr) (* (( (ptr) gf←c0313)+108)/* var←c41160 */ ))+4) ))) { { word err←v38536; err←v38536 = (* (ptr) formal←c200019 ); SOURCE(12470, 168) { word shmd←v11244; SOURCE(12472, 53) { word d←v39640; SOURCE(967, 11660) d←v39640 = 0; SOURCE(1059, 11568) { word pd107; pd107 = (* (( (ptr) (* (( (ptr) gf←c0313)+108)/* var←c41160 */ ))+29) ); d←v39640 = XR←Narrow((word) ( *( (fPt) ((* (ptr) pd107 ))))((* (( (ptr) formal←c200016)+4) ), (* (( (ptr) gf←c0313)+6)/* privateKey←v3728 */ ), (word) ( ( (bPt) gf←c0313)+400)/* var←c40872 */ , pd107), (* (( (ptr) gf←c0313)+34) )); }; SOURCE(967, 11660) shmd←v11244 = d←v39640; }; SOURCE(12527, 84) if ((shmd←v11244 != 0)) { SOURCE(12546, 28) (* (( (ptr) shmd←v11244)+5) ) = 0; SOURCE(12576, 35) (* (( (ptr) shmd←v11244)+6) ) = 0; }; SOURCE(12616, 11) (* (ptr) (* (( (ptr) formal←c200016)+5) ) ) = 0; SOURCE(12629, 9) (* (ptr) formal←c0244 ) = 2; (* (( (ptr) formal←c0244)+1) ) = 6; return; }; }; }; (* (ptr) formal←c0244 ) = 0; (* (( (ptr) formal←c0244)+1) ) = 0; return; } static void NoName←Q4080(formal←c0250, formal←c200012, formal←c200013, formal←c200014, formal←c200015) word formal←c0250; word formal←c200012; word formal←c200013; word formal←c200014; word formal←c200015; { register ptr gf←c0314 = (ptr) &globalframe; if ((formal←c200013 == (* (( (ptr) (* (( (ptr) gf←c0314)+108)/* var←c41160 */ ))+4) ))) { { word err←v37680; err←v37680 = (* (ptr) formal←c200015 ); SOURCE(11197, 28) (* (( (ptr) (* (( (ptr) formal←c200012)+6) ))+5) ) = 0; SOURCE(11227, 8) (* (ptr) formal←c0250 ) = 2; (* (( (ptr) formal←c0250)+1) ) = 5; return; }; }; (* (ptr) formal←c0250 ) = 0; (* (( (ptr) formal←c0250)+1) ) = 0; return; } static void NoName←Q4140(formal←c0255, formal←c200008, formal←c200009, formal←c200010, formal←c200011) word formal←c0255; word formal←c200008; word formal←c200009; word formal←c200010; word formal←c200011; { SOURCE(10258, 9) (* (ptr) formal←c0255 ) = 2; (* (( (ptr) formal←c0255)+1) ) = 4; return; /* c2c skipped dead code */ } static void NoName←Q4200(formal←c0261, formal←c200004, formal←c200005, formal←c200006, formal←c200007) word formal←c0261; word formal←c200004; word formal←c200005; word formal←c200006; word formal←c200007; { register ptr gf←c0315 = (ptr) &globalframe; if ((formal←c200005 == (word) (( (bPt) gf←c0315)+180)/* var←c39976 */ )) { { word errno←v34076; errno←v34076 = (* (ptr) formal←c200007 ); SOURCE(7299, 21) (* (( (ptr) gf←c0315)+8)/* lastUnixErrno←v4232 */ ) = errno←v34076; SOURCE(7322, 9) (* (ptr) formal←c0261 ) = 2; (* (( (ptr) formal←c0261)+1) ) = 3; return; }; } else { if ((formal←c200005 == XR←Uncaught)) { SOURCE(7351, 9) (* (ptr) formal←c0261 ) = 2; (* (( (ptr) formal←c0261)+1) ) = 3; return; }; }; (* (ptr) formal←c0261 ) = 0; (* (( (ptr) formal←c0261)+1) ) = 0; return; } static void NoName←Q4260(formal←c0266, formal←c200000, formal←c200001, formal←c200002, formal←c200003) word formal←c0266; word formal←c200000; word formal←c200001; word formal←c200002; word formal←c200003; { SOURCE(1471, 28) (* (( (ptr) (* (( (ptr) formal←c200000)+5) ))+5) ) = 0; SOURCE(1501, 8) (* (ptr) formal←c0266 ) = 2; (* (( (ptr) formal←c0266)+1) ) = 2; return; /* c2c skipped dead code */ } /* file: XlShmPixmapsImpl, module: XlShmPixmapsImpl, compiled at: September 14, 1993 4:25:33 pm PDT */ extern void XR←install←XlShmPixmapsImpl() { NoName←Q3660(); } extern void XR←run←XlShmPixmapsImpl() { XR←Start(&globalframe); }