/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1992 by Xerox Corporation. All rights reserved. */
/* time: February 21, 1992 5:38:37 pm PST */
/* C2C version: October 16, 1990 (native) */
/* ref-counting: off */
/* file: UXStringsImpl, module: UXStringsImpl */
/* switches: bcfhklnouw */
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
static char versionStamp[] = "@(#)mob←version [127296091,1255415823] UXStringsImpl";
typedef unsigned word, *ptr;
typedef unsigned char byte, *bPt;
typedef unsigned short half, *hPt;
typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8;
typedef struct {word f0, f1;} W2;
typedef word (*fPt)();
#define SOURCE(p, l) /* source p, l */
#define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) )
static void NoName←Q2124();
static void UXStringsImpl←P0();
static word ToRope←P60();
static word PerChar←P660();
static word Create←P120();
static word CreateSpace←P180();
static void CopyRefToString←P240();
static word ViewRefText←P300();
static word CreateScratch←P420();
static word ObtainScratch←P480();
static void ReleaseScratch←P540();
static void InitializeScratchPool←P600();
static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\007\226\142\133\300\112\324\040\017\100\230\000\000"};
static struct {unsigned f; char r[16];} string2 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\104\304\000\000"};
static struct {unsigned f; char r[24];} string3 = {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[44];} string4 = {2752556, "\260\007\006\154\145\156\147\164\150\210\241\000\200\177\377\005\004\164\145\170\164\254\206\012\011\155\141\170\114\145\156\147\164\150\210\241\000\200\177\377\243\261\000"};
static struct {unsigned f; char r[48];} string5 = {2883632, "\260\006\005\146\151\162\163\164\220\257\300\227\306\253\223\300\107\163\142\023\101\144\005\004\162\145\163\164\214\220\257\300\227\306\253\223\300\107\163\142\023\101\144\261\000\000\000"};
static struct {unsigned f; char r[4];} string6 = {131074, "\003\001\000"};
static struct {unsigned f; char r[16];} string7 = {851984, "\257\300\007\226\142\133\300\112\324\040\017\100\164\000\000"};
static struct {unsigned f; char r[4];} string8 = {196611, "\004O\000"};
static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"};
static struct {unsigned f; char r[16];} string10 = {851984, "\257\300\220\270\074\115\300\121\012\115\357\100\150\000\000"};
static struct {
word f0[23]; word f23; word f24; word f25;
word f26; word f27; word f28; word f29;
word f30; word f31; word f32; word f33;
word f34; word f35; word f36; word f37;
word f38; word f39; word f40; word f41;
word f42[3];
} globalframe = {
{0}, (word) InitializeScratchPool←P600, 0, (word) ReleaseScratch←P540,
0, (word) ObtainScratch←P480, 0, (word) CreateScratch←P420,
0, (word) ViewRefText←P300, 0, (word) CopyRefToString←P240,
0, (word) CreateSpace←P180, 0, (word) Create←P120,
0, (word) ToRope←P60, 0, (word) UXStringsImpl←P0,
{0}
};
static void NoName←Q2124()
{
register ptr gf←c0118 = (ptr) &globalframe;
word var←c12656;
(* (( (ptr) gf←c0118)+18) ) = (word) XR←GetTypeIndexS((word) (&string1));
(* (( (ptr) gf←c0118)+19) ) = (word) XR←GetTypeIndex((word) &string2, 0, (word) &string3);
(* (( (ptr) gf←c0118)+20) ) = (word) XR←GetTypeIndexS((word) (&string4));
(* (( (ptr) gf←c0118)+21) ) = (word) XR←GetTypeIndex((word) &string5, 0, (word) &string6);
(void) XR←DeclareGlobalFrame((word) "UXStringsImpl", &globalframe, (word) XR←GetTypeIndex((word) &string7, 0, (word) &string8)
, (word) (( (bPt) gf←c0118)+164)/* var←c11216 */ );
var←c12656 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string9)), 43);
(* (( (ptr) gf←c0118)+43)/* var←c11312 */ ) = var←c12656;
(void) XR←ImportProcS(var←c12656, 67634434);
(void) XR←ImportProcS(var←c12656, 67373569);
(void) XR←ImportProcS(var←c12656, 67902211);
var←c12656 = (word) XR←ExportInterface((word) "UXStrings", (word) XR←GetTypeIndexS((word) (&string10)), 9);
(* (( (ptr) gf←c0118)+44)/* var←c12688 */ ) = var←c12656;
(void) XR←ExportVar(var←c12656, 0, (word) (( (bPt) gf←c0118)+88)/* var←c10896 */ );
(void) XR←ExportProcS(var←c12656, (word) (( (bPt) gf←c0118)+148)/* var←c11152 */ , 67371265);
(void) XR←ExportProcS(var←c12656, (word) (( (bPt) gf←c0118)+140)/* var←c11120 */ , 67371521);
(void) XR←ExportProcS(var←c12656, (word) (( (bPt) gf←c0118)+156)/* var←c11184 */ , 67633922);
(void) XR←ExportProcS(var←c12656, (word) (( (bPt) gf←c0118)+124)/* var←c11056 */ , 67372033);
(void) XR←ExportProcS(var←c12656, (word) (( (bPt) gf←c0118)+116)/* var←c11024 */ , 67372289);
(void) XR←ExportProcS(var←c12656, (word) (( (bPt) gf←c0118)+108)/* var←c10992 */ , 67372545);
(void) XR←ExportProcS(var←c12656, (word) (( (bPt) gf←c0118)+100)/* var←c10960 */ , 263937);
(void) XR←ExportProcS(var←c12656, (word) (( (bPt) gf←c0118)+132)/* var←c11088 */ , 526338);
}
static void UXStringsImpl←P0(formal←c021, formal←c020)
word formal←c021;
word formal←c020;
{
/* UXStringsImpl: */
SOURCE(38, 4696)
SOURCE(4711, 23)
(void) InitializeScratchPool←P600();
}
static word ToRope←P60(formal←c0133, maxLength←v3164)
word formal←c0133;
word maxLength←v3164;
{
W8 var←c12720;
/* declaration of from←v3136 skipped */
register ptr gf←c12752 = (ptr) &globalframe;
word r←v3208;
/* declaration of var←c11248 skipped */
word len←v4552 = 0;
/* declaration of pos←v4580 skipped */
var←c12720.f4/* from←v3136 */ = formal←c0133;
/* ToRope: */
SOURCE(132, 358)
{
word tmpAddr11;
tmpAddr11 = (word) (( (ptr) &var←c12720)+5)/* var←c11248 */ ;
(* (ptr) tmpAddr11 ) = ( ((word) (fPt) PerChar←P660) );
(* (( (ptr) tmpAddr11) + 1) ) = 1;
};
SOURCE(132, 358)
r←v3208 = 0;
SOURCE(231, 17)
var←c12720.f7/* pos←v4580 */ = 0;
SOURCE(326, 28)
if ((var←c12720.f4/* from←v3136 */ == 0)) {
SOURCE(343, 11)
return(0);
};
SOURCE(356, 67)
lab←L100002: ;
{
word tc12;
if (((word) (* (( (bPt) var←c12720.f4/* from←v3136 */ )+len←v4552) ) != 0)) {
tc12 = (word) ( (int)len←v4552 < (int)maxLength←v3164);
}
else {
tc12 = (word) 0;
};
if (tc12) {
}
else {
goto lab←L100000;
};
};
SOURCE(402, 21)
len←v4552 = (len←v4552 + 1);
goto lab←L100002;
lab←L100000: ;
SOURCE(425, 27)
if (( (int)len←v4552 == (int)0)) {
SOURCE(441, 11)
return(0);
};
SOURCE(454, 36)
{
word pd13;
pd13 = (* (( (ptr) (* (( (ptr) gf←c12752)+43)/* var←c11312 */ ))+31) );
return((word) ( *( (fPt) ((* (ptr) pd13 ))))(len←v4552, (word) (( (bPt) &var←c12720)+20)/* var←c11248 */ , 2147483647, pd13)
);
};
}
static word PerChar←P660(formal←c12784)
word formal←c12784;
{
word c←v4684;
formal←c12784 = (formal←c12784 - 20);
/* PerChar: */
SOURCE(250, 71)
SOURCE(294, 14)
c←v4684 = (word) (* (( (bPt) (* (( (ptr) formal←c12784)+4) ))+(* (( (ptr) formal←c12784)+7) )) );
SOURCE(310, 11)
(* (( (ptr) formal←c12784)+7) ) = ((* (( (ptr) formal←c12784)+7) ) + 1);
SOURCE(250, 71)
return(c←v4684);
}
static word Create←P120(from←v3360)
word from←v3360;
{
register ptr gf←c12816 = (ptr) &globalframe;
word string←v3420;
/* Create: */
SOURCE(572, 620)
SOURCE(572, 620)
string←v3420 = 0;
SOURCE(634, 558)
{
word var←c11344;
word var←c11376;
var←c11344 = from←v3360;
if ((var←c11344 == 0)) {
goto lab←L100003;
};
var←c11376 = XR←GetReferentType(var←c11344);
{
word tc14;
if (((* (( (ptr) gf←c12816)+19) ) == var←c11376)) {
tc14 = (word) ((*(int*)var←c11344<0) == 0);
}
else {
tc14 = (word) 0;
};
if (tc14) {
{
word r←v4712;
r←v4712 = var←c11344;
SOURCE(672, 189)
{
word len←v4756;
word rtn←v4784;
SOURCE(674, 25)
{
word pd15;
pd15 = (* (( (ptr) (* (( (ptr) gf←c12816)+43)/* var←c11312 */ ))+14) );
len←v4756 = (word) ( *( (fPt) ((* (ptr) pd15 ))))(r←v4712, pd15);
};
SOURCE(701, 48)
{
word var←c11408;
word var←c11440;
word var←c11472;
var←c11408 = (len←v4756 + 1);
var←c11440 = (((var←c11408 + 3) >> 2) << 2);
var←c11472 = XR←NewObject(var←c11440, (* (( (ptr) gf←c12816)+18) ));
rtn←v4784 = var←c11472;
};
SOURCE(759, 75)
SOURCE(761, 53)
{
register word i←v4840 = 0;
register word noName←c11504;
noName←c11504 = len←v4756;
if (( (int)i←v4840 >= (int)noName←c11504)) {
goto lab←L100004;
};
lab←L100007: ;
SOURCE(787, 27)
{
word var←c11536;
{
word pd16;
pd16 = (* (( (ptr) (* (( (ptr) gf←c12816)+43)/* var←c11312 */ ))+9) );
var←c11536 = (word) ( *( (fPt) ((* (ptr) pd16 ))))(r←v4712, i←v4840, pd16);
};
(* (( (bPt) rtn←v4784)+i←v4840) ) = var←c11536;
};
i←v4840 = (i←v4840 + 1);
if (( (int)i←v4840 < (int)noName←c11504)) {
goto lab←L100007;
};
lab←L100004: ;
};
SOURCE(816, 16)
(* (( (bPt) rtn←v4784)+len←v4756) ) = 0;
SOURCE(837, 22)
string←v3420 = rtn←v4784;
};
};
}
else {
if (((* (( (ptr) gf←c12816)+20) ) == var←c11376)) {
{
word r←v4884;
r←v4884 = var←c11344;
SOURCE(879, 186)
{
word len←v4940;
word rtn←v4968;
SOURCE(881, 28)
{
word base←v10848;
base←v10848 = r←v4884;
{
word tc17;
word idx18;
if ((base←v10848 == 0)) {
/*1*/ tc17 = (word) 0;
/*1*/ }
else {
/*1*/ tc17 = (word) (* (hPt) base←v10848 );
/*1*/ };
len←v4940 = (
/*1*/ idx18 = (word) tc17,
/*1*/ BCK(idx18, 32768)
/*1*/ );
};
};
SOURCE(911, 48)
{
word var←c11600;
word var←c11632;
word var←c11664;
var←c11600 = (len←v4940 + 1);
var←c11632 = (((var←c11600 + 3) >> 2) << 2);
var←c11664 = XR←NewObject(var←c11632, (* (( (ptr) gf←c12816)+18) ));
rtn←v4968 = var←c11664;
};
SOURCE(969, 69)
SOURCE(971, 47)
{
register word i←v5024 = 0;
register word noName←c11696;
noName←c11696 = len←v4940;
if (( (int)i←v5024 >= (int)noName←c11696)) {
goto lab←L100009;
};
lab←L100012: ;
SOURCE(997, 21)
{
word limit19;
(* (( (bPt) rtn←v4968)+i←v5024) ) = (word) (* ((( (bPt) r←v4884)+4)+(
/*1*/ limit19 = (word) (* (( (hPt) r←v4884)+1) ),
/*1*/ BCK(i←v5024, limit19)
/*1*/ )) );
};
i←v5024 = (i←v5024 + 1);
if (( (int)i←v5024 < (int)noName←c11696)) {
goto lab←L100012;
};
lab←L100009: ;
};
SOURCE(1020, 16)
(* (( (bPt) rtn←v4968)+len←v4940) ) = 0;
SOURCE(1041, 22)
string←v3420 = rtn←v4968;
};
};
}
else {
lab←L100003: ;
SOURCE(1080, 112)
if ((from←v3360 == 0)) {
SOURCE(1106, 88)
{
word rtn←v5068;
SOURCE(1108, 44)
rtn←v5068 = XR←NewObject(4, (* (( (ptr) gf←c12816)+18) ));
SOURCE(1154, 14)
(* (bPt) rtn←v5068 ) = 0;
SOURCE(1170, 22)
string←v3420 = rtn←v5068;
};
}
else {
SOURCE(1201, 5)
(void) XR←RaiseUnnamedError();
};
};
};
};
};
SOURCE(572, 620)
return(string←v3420);
}
static word CreateSpace←P180(size←v3480)
word size←v3480;
{
register ptr gf←c12848 = (ptr) &globalframe;
word string←v3524;
word rtn←v5124;
/* CreateSpace: */
SOURCE(1236, 140)
SOURCE(1236, 140)
string←v3524 = 0;
SOURCE(1303, 49)
{
word var←c11760;
word var←c11792;
word var←c11824;
var←c11760 = (size←v3480 + 1);
var←c11792 = (((var←c11760 + 3) >> 2) << 2);
var←c11824 = XR←NewObject(var←c11792, (* (( (ptr) gf←c12848)+18) ));
rtn←v5124 = var←c11824;
};
SOURCE(1354, 22)
string←v3524 = rtn←v5124;
SOURCE(1236, 140)
return(string←v3524);
}
static void CopyRefToString←P240(ref←v3584, string←v3612)
word ref←v3584;
word string←v3612;
{
register ptr gf←c12880 = (ptr) &globalframe;
word rtn←v5180;
/* CopyRefToString: */
SOURCE(1382, 460)
SOURCE(1460, 40)
rtn←v5180 = string←v3612;
SOURCE(1502, 340)
{
word var←c11856;
word var←c11888;
var←c11856 = ref←v3584;
if ((var←c11856 == 0)) {
goto lab←L100013;
};
var←c11888 = XR←GetReferentType(var←c11856);
{
word tc20;
if (((* (( (ptr) gf←c12880)+19) ) == var←c11888)) {
tc20 = (word) ((*(int*)var←c11856<0) == 0);
}
else {
tc20 = (word) 0;
};
if (tc20) {
{
word r←v5236;
r←v5236 = var←c11856;
SOURCE(1539, 115)
{
word len←v5280;
SOURCE(1541, 25)
{
word pd21;
pd21 = (* (( (ptr) (* (( (ptr) gf←c12880)+43)/* var←c11312 */ ))+14) );
len←v5280 = (word) ( *( (fPt) ((* (ptr) pd21 ))))(r←v5236, pd21);
};
SOURCE(1576, 75)
SOURCE(1578, 53)
{
register word i←v5324 = 0;
register word noName←c11920;
noName←c11920 = len←v5280;
if (( (int)i←v5324 >= (int)noName←c11920)) {
goto lab←L100014;
};
lab←L100017: ;
SOURCE(1604, 27)
{
word var←c11952;
{
word pd22;
pd22 = (* (( (ptr) (* (( (ptr) gf←c12880)+43)/* var←c11312 */ ))+9) );
var←c11952 = (word) ( *( (fPt) ((* (ptr) pd22 ))))(r←v5236, i←v5324, pd22);
};
(* (( (bPt) rtn←v5180)+i←v5324) ) = var←c11952;
};
i←v5324 = (i←v5324 + 1);
if (( (int)i←v5324 < (int)noName←c11920)) {
goto lab←L100017;
};
lab←L100014: ;
};
SOURCE(1633, 16)
(* (( (bPt) rtn←v5180)+len←v5280) ) = 0;
};
};
}
else {
if (((* (( (ptr) gf←c12880)+20) ) == var←c11888)) {
{
word r←v5368;
r←v5368 = var←c11856;
SOURCE(1672, 112)
{
word len←v5424;
SOURCE(1674, 28)
{
word base←v10800;
base←v10800 = r←v5368;
{
word tc23;
word idx24;
if ((base←v10800 == 0)) {
/*1*/ tc23 = (word) 0;
/*1*/ }
else {
/*1*/ tc23 = (word) (* (hPt) base←v10800 );
/*1*/ };
len←v5424 = (
/*1*/ idx24 = (word) tc23,
/*1*/ BCK(idx24, 32768)
/*1*/ );
};
};
SOURCE(1712, 69)
SOURCE(1714, 47)
{
register word i←v5468 = 0;
register word noName←c12016;
noName←c12016 = len←v5424;
if (( (int)i←v5468 >= (int)noName←c12016)) {
goto lab←L100019;
};
lab←L100022: ;
SOURCE(1740, 21)
{
word limit25;
(* (( (bPt) rtn←v5180)+i←v5468) ) = (word) (* ((( (bPt) r←v5368)+4)+(
/*1*/ limit25 = (word) (* (( (hPt) r←v5368)+1) ),
/*1*/ BCK(i←v5468, limit25)
/*1*/ )) );
};
i←v5468 = (i←v5468 + 1);
if (( (int)i←v5468 < (int)noName←c12016)) {
goto lab←L100022;
};
lab←L100019: ;
};
SOURCE(1763, 16)
(* (( (bPt) rtn←v5180)+len←v5424) ) = 0;
};
};
}
else {
lab←L100013: ;
SOURCE(1799, 43)
if ((ref←v3584 == 0)) {
SOURCE(1824, 18)
SOURCE(1826, 14)
(* (bPt) rtn←v5180 ) = 0;
}
else {
SOURCE(1849, 5)
(void) XR←RaiseUnnamedError();
};
};
};
};
};
}
static word ViewRefText←P300(from←v3684)
word from←v3684;
{
word string←v3740;
/* ViewRefText: */
SOURCE(1884, 134)
SOURCE(1884, 134)
string←v3740 = 0;
SOURCE(1963, 55)
return((from←v3684 + 4));
}
static word CreateScratch←P420(from←v4288)
word from←v4288;
{
register ptr gf←c12912 = (ptr) &globalframe;
word string←v4344;
/* CreateScratch: */
SOURCE(2536, 662)
SOURCE(2536, 662)
string←v4344 = 0;
SOURCE(2605, 593)
{
word var←c12048;
word var←c12080;
var←c12048 = from←v4288;
if ((var←c12048 == 0)) {
goto lab←L100023;
};
var←c12080 = XR←GetReferentType(var←c12048);
{
word tc26;
if (((* (( (ptr) gf←c12912)+19) ) == var←c12080)) {
tc26 = (word) ((*(int*)var←c12048<0) == 0);
}
else {
tc26 = (word) 0;
};
if (tc26) {
{
word r←v5512;
r←v5512 = var←c12048;
SOURCE(2643, 200)
{
word len←v5556;
word rtn←v5584;
SOURCE(2645, 25)
{
word pd27;
pd27 = (* (( (ptr) (* (( (ptr) gf←c12912)+43)/* var←c11312 */ ))+14) );
len←v5556 = (word) ( *( (fPt) ((* (ptr) pd27 ))))(r←v5512, pd27);
};
SOURCE(2672, 59)
rtn←v5584 = (word) ObtainScratch←P480(len←v5556);
SOURCE(2741, 75)
SOURCE(2743, 53)
{
register word i←v5640 = 0;
register word noName←c12112;
noName←c12112 = len←v5556;
if (( (int)i←v5640 >= (int)noName←c12112)) {
goto lab←L100024;
};
lab←L100027: ;
SOURCE(2769, 27)
{
word var←c12144;
{
word pd28;
pd28 = (* (( (ptr) (* (( (ptr) gf←c12912)+43)/* var←c11312 */ ))+9) );
var←c12144 = (word) ( *( (fPt) ((* (ptr) pd28 ))))(r←v5512, i←v5640, pd28);
};
(* (( (bPt) rtn←v5584)+i←v5640) ) = var←c12144;
};
i←v5640 = (i←v5640 + 1);
if (( (int)i←v5640 < (int)noName←c12112)) {
goto lab←L100027;
};
lab←L100024: ;
};
SOURCE(2798, 16)
(* (( (bPt) rtn←v5584)+len←v5556) ) = 0;
SOURCE(2819, 22)
string←v4344 = rtn←v5584;
};
};
}
else {
if (((* (( (ptr) gf←c12912)+20) ) == var←c12080)) {
{
word r←v5684;
r←v5684 = var←c12048;
SOURCE(2861, 197)
{
word len←v5740;
word rtn←v5768;
SOURCE(2863, 28)
{
word base←v10752;
base←v10752 = r←v5684;
{
word tc29;
word idx30;
if ((base←v10752 == 0)) {
/*1*/ tc29 = (word) 0;
/*1*/ }
else {
/*1*/ tc29 = (word) (* (hPt) base←v10752 );
/*1*/ };
len←v5740 = (
/*1*/ idx30 = (word) tc29,
/*1*/ BCK(idx30, 32768)
/*1*/ );
};
};
SOURCE(2893, 59)
rtn←v5768 = (word) ObtainScratch←P480(len←v5740);
SOURCE(2962, 69)
SOURCE(2964, 47)
{
register word i←v5824 = 0;
register word noName←c12208;
noName←c12208 = len←v5740;
if (( (int)i←v5824 >= (int)noName←c12208)) {
goto lab←L100029;
};
lab←L100032: ;
SOURCE(2990, 21)
{
word limit31;
(* (( (bPt) rtn←v5768)+i←v5824) ) = (word) (* ((( (bPt) r←v5684)+4)+(
/*1*/ limit31 = (word) (* (( (hPt) r←v5684)+1) ),
/*1*/ BCK(i←v5824, limit31)
/*1*/ )) );
};
i←v5824 = (i←v5824 + 1);
if (( (int)i←v5824 < (int)noName←c12208)) {
goto lab←L100032;
};
lab←L100029: ;
};
SOURCE(3013, 16)
(* (( (bPt) rtn←v5768)+len←v5740) ) = 0;
SOURCE(3034, 22)
string←v4344 = rtn←v5768;
};
};
}
else {
lab←L100023: ;
SOURCE(3073, 125)
if ((from←v4288 == 0)) {
SOURCE(3099, 101)
{
word rtn←v5868;
SOURCE(3101, 57)
rtn←v5868 = (word) ObtainScratch←P480(0);
SOURCE(3160, 14)
(* (bPt) rtn←v5868 ) = 0;
SOURCE(3176, 22)
string←v4344 = rtn←v5868;
};
}
else {
SOURCE(3207, 5)
(void) XR←RaiseUnnamedError();
};
};
};
};
};
SOURCE(2536, 662)
return(string←v4344);
}
static word ObtainScratch←P480(nChars←v4404)
word nChars←v4404;
{
register ptr gf←c12944 = (ptr) &globalframe;
word var←c12368;
word var←c12400;
word var←c4448;
register word i←v5924 = 0;
word avail←v5952 = 0;
/* ObtainScratch: */
SOURCE(3241, 730)
(void) (XR←MonitorEntry((word) (( (bPt) gf←c12944)+16)/* LOCK←v2524 */ ));
SOURCE(3362, 18)
SOURCE(2461, 26)
(* (( (ptr) gf←c12944)+12) ) = ((* (( (ptr) gf←c12944)+12) ) + 1);
SOURCE(3382, 151)
{
register word noName←c12240 = 0;
W2 var←c12272;
word var←c0128;
lab←L100036: ;
i←v5924 = noName←c12240;
SOURCE(3419, 37)
var←c12272.f0 = 100;
var←c12272.f1 = 512;
var←c0128 = (* (( (ptr) &var←c12272)+i←v5924) );
if (( (int)nChars←v4404 <= (int)var←c0128)) {
SOURCE(3456, 4)
goto lab←L100034;
};
noName←c12240 = i←v5924;
if ((noName←c12240 >= 1)) {
goto lab←L100033;
};
noName←c12240 = (noName←c12240 + 1);
goto lab←L100036;
lab←L100033: ;
SOURCE(3483, 20)
SOURCE(2461, 26)
(* (( (ptr) gf←c12944)+13) ) = ((* (( (ptr) gf←c12944)+13) ) + 1);
SOURCE(3505, 28)
{
word var←c12304;
var←c12304 = (word) CreateSpace←P180(nChars←v4404);
(void) (XR←MonitorExit((word) (( (bPt) gf←c12944)+16)/* LOCK←v2524 */ ));
return(var←c12304);
};
lab←L100034: ;
};
SOURCE(3547, 225)
avail←v5952 = (* (( (ptr) (* ((( (ptr) gf←c12944)+8)/* available←v2804 */ +i←v5924) ))+1) );
if ((avail←v5952 == 0)) {
SOURCE(3589, 183)
{
word r←v6080 = 0;
SOURCE(3611, 16)
SOURCE(2461, 26)
(* (( (ptr) gf←c12944)+14) ) = ((* (( (ptr) gf←c12944)+14) ) + 1);
SOURCE(3629, 15)
r←v6080 = (* ((( (ptr) gf←c12944)+10)/* reserved←v2832 */ +i←v5924) );
SOURCE(3646, 45)
lab←L100039: ;
if (((* (( (ptr) (* (( (ptr) r←v6080)+1) ))+1) ) != 0)) {
}
else {
goto lab←L100037;
};
SOURCE(3673, 18)
r←v6080 = (* (( (ptr) r←v6080)+1) );
goto lab←L100039;
lab←L100037: ;
SOURCE(3693, 15)
avail←v5952 = (* (( (ptr) r←v6080)+1) );
SOURCE(3711, 12)
(* (( (ptr) r←v6080)+1) ) = 0;
SOURCE(3726, 46)
{
W2 var←c12336;
word var←c0129;
var←c12336.f0 = 100;
var←c12336.f1 = 512;
var←c0129 = (* (( (ptr) &var←c12336)+i←v5924) );
(* (ptr) avail←v5952 ) = (word) CreateSpace←P180(var←c0129);
};
};
};
SOURCE(3775, 30)
(* (( (ptr) (* ((( (ptr) gf←c12944)+8)/* available←v2804 */ +i←v5924) ))+1) ) = (* (( (ptr) avail←v5952)+1) );
SOURCE(3807, 29)
(* (( (ptr) avail←v5952)+1) ) = (* (( (ptr) (* ((( (ptr) gf←c12944)+10)/* reserved←v2832 */ +i←v5924) ))+1) );
SOURCE(3839, 24)
(* (( (ptr) (* ((( (ptr) gf←c12944)+10)/* reserved←v2832 */ +i←v5924) ))+1) ) = avail←v5952;
SOURCE(3865, 84)
if (((* (bPt) (* (ptr) avail←v5952 ) ) != 0)) {
SOURCE(3896, 53)
var←c12368 = (word) (( (bPt) gf←c12944)+88)/* var←c10896 */ ;
var←c12400 = 0;
(void) (XR←MonitorExit((word) (( (bPt) gf←c12944)+16)/* LOCK←v2524 */ ));
goto lab←L100040;
};
SOURCE(3951, 20)
{
word var←c12432;
var←c12432 = (* (ptr) avail←v5952 );
(void) (XR←MonitorExit((word) (( (bPt) gf←c12944)+16)/* LOCK←v2524 */ ));
return(var←c12432);
};
/* c2c skipped dead code */
lab←L100040: ;
SOURCE(3896, 53)
{
word var←c0104;
var←c0104 = var←c12400;
(void) XR←RaiseError(var←c12368, (word) &var←c0104);
};
}
static void ReleaseScratch←P540(s←v4508)
word s←v4508;
{
register ptr gf←c12976 = (ptr) &globalframe;
register word i←v6208 = 0;
word r←v6236 = 0;
word l←v6264 = 0;
/* ReleaseScratch: */
SOURCE(3977, 329)
(void) (XR←MonitorEntry((word) (( (bPt) gf←c12976)+16)/* LOCK←v2524 */ ));
SOURCE(4079, 22)
if ((s←v4508 == 0)) {
SOURCE(4095, 6)
(void) (XR←MonitorExit((word) (( (bPt) gf←c12976)+16)/* LOCK←v2524 */ ));
return;
};
SOURCE(4103, 203)
{
register word noName←c12464 = 0;
lab←L100045: ;
i←v6208 = noName←c12464;
SOURCE(4140, 15)
r←v6236 = (* ((( (ptr) gf←c12976)+10)/* reserved←v2832 */ +i←v6208) );
SOURCE(4157, 149)
lab←L100048: ;
l←v6264 = (* (( (ptr) r←v6236)+1) );
if ((l←v6264 != 0)) {
}
else {
goto lab←L100046;
};
SOURCE(4185, 111)
if (((* (ptr) l←v6264 ) == s←v4508)) {
SOURCE(4207, 15)
(* (( (ptr) r←v6236)+1) ) = (* (( (ptr) l←v6264)+1) );
SOURCE(4224, 26)
(* (( (ptr) l←v6264)+1) ) = (* (( (ptr) (* ((( (ptr) gf←c12976)+8)/* available←v2804 */ +i←v6208) ))+1) );
SOURCE(4253, 21)
(* (( (ptr) (* ((( (ptr) gf←c12976)+8)/* available←v2804 */ +i←v6208) ))+1) ) = l←v6264;
SOURCE(4276, 12)
(* (bPt) s←v4508 ) = 0;
SOURCE(4290, 6)
(void) (XR←MonitorExit((word) (( (bPt) gf←c12976)+16)/* LOCK←v2524 */ ));
return;
};
SOURCE(4301, 5)
r←v6236 = l←v6264;
goto lab←L100048;
lab←L100046: ;
noName←c12464 = i←v6208;
if ((noName←c12464 >= 1)) {
goto lab←L100042;
};
noName←c12464 = (noName←c12464 + 1);
goto lab←L100045;
lab←L100042: ;
};
SOURCE(3977, 329)
(void) (XR←MonitorExit((word) (( (bPt) gf←c12976)+16)/* LOCK←v2524 */ ));
return;
}
static void InitializeScratchPool←P600()
{
register ptr gf←c13008 = (ptr) &globalframe;
/* InitializeScratchPool: */
SOURCE(4330, 357)
(void) (XR←MonitorEntry((word) (( (bPt) gf←c13008)+16)/* LOCK←v2524 */ ));
SOURCE(4371, 149)
{
register word i←v6392 = 0;
lab←L100052: ;
SOURCE(4408, 28)
(* ((( (ptr) gf←c13008)+10)/* reserved←v2832 */ +i←v6392) ) = XR←NewObject(8, (* (( (ptr) gf←c13008)+21) ));
SOURCE(4438, 82)
{
register word j←v6436 = 0;
register word noName←c12560;
W2 var←c12528;
var←c12528.f0 = 8;
var←c12528.f1 = 2;
noName←c12560 = (* (( (ptr) &var←c12528)+i←v6392) );
if ((j←v6436 > noName←c12560)) {
goto lab←L100053;
};
lab←L100056: ;
SOURCE(4482, 38)
{
word var←c12592;
var←c12592 = XR←NewObject(8, (* (( (ptr) gf←c13008)+21) ));
(* (( (ptr) var←c12592)+1) ) = (* ((( (ptr) gf←c13008)+8)/* available←v2804 */ +i←v6392) );
(* ((( (ptr) gf←c13008)+8)/* available←v2804 */ +i←v6392) ) = var←c12592;
};
if ((j←v6436 >= noName←c12560)) {
goto lab←L100053;
};
j←v6436 = (j←v6436 + 1);
goto lab←L100056;
lab←L100053: ;
};
if ((i←v6392 >= 1)) {
goto lab←L100049;
};
i←v6392 = (i←v6392 + 1);
goto lab←L100052;
lab←L100049: ;
};
SOURCE(4540, 147)
{
register word i←v6480 = 0;
lab←L100060: ;
{
word l←v6524;
SOURCE(4577, 3)
l←v6524 = (* (( (ptr) (* ((( (ptr) gf←c13008)+8)/* available←v2804 */ +i←v6480) ))+1) );
SOURCE(4617, 70)
lab←L100063: ;
if ((l←v6524 != 0)) {
}
else {
goto lab←L100061;
};
SOURCE(4634, 41)
{
W2 var←c12624;
word var←c0130;
var←c12624.f0 = 100;
var←c12624.f1 = 512;
var←c0130 = (* (( (ptr) &var←c12624)+i←v6480) );
(* (ptr) l←v6524 ) = (word) CreateSpace←P180(var←c0130);
};
SOURCE(4677, 10)
l←v6524 = (* (( (ptr) l←v6524)+1) );
goto lab←L100063;
lab←L100061: ;
};
if ((i←v6480 >= 1)) {
goto lab←L100057;
};
i←v6480 = (i←v6480 + 1);
goto lab←L100060;
lab←L100057: ;
};
SOURCE(4330, 357)
(void) (XR←MonitorExit((word) (( (bPt) gf←c13008)+16)/* LOCK←v2524 */ ));
return;
}
/* file: UXStringsImpl, module: UXStringsImpl, compiled at: February 21, 1992 5:38:36 pm PST */
extern void XR←install←UXStringsImpl() {
NoName←Q2124();
}
extern void XR←run←UXStringsImpl() { XR←Start(&globalframe); }