/* 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); }