/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1992 by Xerox Corporation. All rights reserved. */
/* time: May 20, 1992 4:33:00 pm PDT */
/* C2C version: October 16, 1990 (native) */
/* ref-counting: off */
/* file: IOSimpleStreamsImpl, module: IOSimpleStreamsImpl */
/* switches: bcfhklnouw */
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
static char versionStamp[] = "@(#)mob←version [715216511,883790115] IOSimpleStreamsImpl";
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 {W8 f; W8 r;} W16;
typedef struct {word f0, f1, f2;} W3;
typedef struct {W16 f; W3 r;} W19;
typedef word (*fPt)();
typedef struct {word f0, f1, f2, f3;} W4;
typedef struct {word f0, f1, f2, f3, f4, f5;} W6;
typedef W6 *W6Pt;
typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7;
typedef W7 *W7Pt;
typedef struct {word f0, f1;} W2;
typedef struct {W8 f; W2 r;} W10;
#define SOURCE(p, l) /* source p, l */
#define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) )
#define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i )
#define MIN(cast, x, y) ( ( cast x) < ( cast y) ? (x) : (y) )
static void NoName←Q3612();
static void IOSimpleStreamsImpl←P0();
static void NoWherePutChar←P60();
static void NoWhereClose←P120();
static word NoInputGetChar←P180();
static void NoInputBackup←P240();
static word NoInputEndOf←P300();
static void NoInputClose←P360();
static word RIS←P420();
static word InputRopeStreamGetChar←P540();
static word InputRopeStreamGetBlock←P600();
static word InputRopeStreamUnsafeGetBlock←P660();
static word InputRopeStreamEndOf←P720();
static void InputRopeStreamBackup←P780();
static void InputRopeStreamReset←P840();
static word InputRopeStreamGetIndex←P900();
static void InputRopeStreamSetIndex←P960();
static word InputRopeStreamGetLength←P1020();
static void RopeStreamClose←P1080();
static word GetRope←P1140();
static word ROS←P1200();
static word ROSNormalize←P1260();
static void OutputRopeStreamPutChar←P1320();
static void OutputRopeStreamEraseChar←P1380();
static void OutputRopeStreamReset←P1440();
static word OutputRopeStreamGetIndex←P1500();
static word RopeFromROS←P1560();
static void PutRope←P1620();
static word TIS←P1680();
static word InputTextStreamGetChar←P1740();
static word InputTextStreamEndOf←P1800();
static void InputTextStreamReset←P1860();
static void InputTextStreamBackup←P1920();
static word InputTextStreamGetIndex←P1980();
static void InputTextStreamSetIndex←P2040();
static word InputTextStreamGetLength←P2100();
static word TOS←P2160();
static word TextFromTOS←P2220();
static word AppendOutput←P2280();
static void OutputTextStreamPutChar←P2340();
static void OutputTextStreamEraseChar←P2400();
static void OutputTextStreamReset←P2460();
static word OutputTextStreamGetIndex←P2520();
static word OutputTextStreamGetLength←P2580();
static struct {unsigned f; char r[4];} string1 = {131076, "\216\251\000"};
static struct {unsigned f; char r[4];} string2 = {65537, "\001\000\000"};
static struct {unsigned f; char r[44];} string3 = {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[16];} string4 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\104\304\000\000"};
static struct {unsigned f; char r[24];} string5 = {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];} string6 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\112\064\000\000"};
static struct {unsigned f; char r[4];} string7 = {131074, "\004\037\000"};
static struct {unsigned f; char r[16];} string8 = {851984, "\257\300\052\241\126\177\300\064\255\221\043\100\340\000\000"};
static struct {unsigned f; char r[8];} string9 = {262152, "TEXT\000\000\000"};
static struct {unsigned f; char r[8];} string10 = {262152, "ROPE\000\000\000"};
static struct {unsigned f; char r[8];} string11 = {262152, "Null\000\000\000"};
static struct {unsigned f; char r[16];} string12 = {851984, "\257\300\052\241\126\177\300\064\255\221\043\100\164\000\000"};
static struct {unsigned f; char r[20];} string13 = {1179666, "\006\007\020\001\024\001\030\001\034\001\044\001\050\001\100\134\004\007\000"};
static unsigned string14 = 1229914112;
static struct {unsigned f; char r[16];} string15 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"};
static struct {unsigned f; char r[16];} string16 = {851984, "\257\300\165\000\243\166\300\177\026\106\323\100\150\000\000"};
static struct {unsigned f; char r[16];} string17 = {851984, "\257\300\332\223\177\020\300\304\076\102\260\100\164\000\000"};
static struct {unsigned f; char r[16];} string18 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"};
static struct {
word f0[26]; word f26; word f27; word f28;
word f29; word f30; word f31; word f32;
word f33; word f34; word f35; word f36;
word f37; word f38; word f39; word f40;
word f41; word f42; word f43; word f44;
word f45; word f46; word f47; word f48;
word f49; word f50; word f51; word f52;
word f53; word f54; word f55; word f56;
word f57; word f58; word f59; word f60;
word f61; word f62; word f63; word f64;
word f65; word f66; word f67; word f68;
word f69; word f70; word f71; word f72;
word f73; word f74; word f75; word f76;
word f77; word f78; word f79; 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; word f106; word f107; word f108;
word f109; word f110; word f111[6];
} globalframe = {
{0}, (word) OutputTextStreamGetLength←P2580, 0, (word) OutputTextStreamGetIndex←P2520,
0, (word) OutputTextStreamReset←P2460, 0, (word) OutputTextStreamEraseChar←P2400,
0, (word) OutputTextStreamPutChar←P2340, 0, (word) AppendOutput←P2280,
0, (word) TextFromTOS←P2220, 0, (word) TOS←P2160,
0, (word) InputTextStreamGetLength←P2100, 0, (word) InputTextStreamSetIndex←P2040,
0, (word) InputTextStreamGetIndex←P1980, 0, (word) InputTextStreamBackup←P1920,
0, (word) InputTextStreamReset←P1860, 0, (word) InputTextStreamEndOf←P1800,
0, (word) InputTextStreamGetChar←P1740, 0, (word) TIS←P1680,
0, (word) PutRope←P1620, 0, (word) RopeFromROS←P1560,
0, (word) OutputRopeStreamGetIndex←P1500, 0, (word) OutputRopeStreamReset←P1440,
0, (word) OutputRopeStreamEraseChar←P1380, 0, (word) OutputRopeStreamPutChar←P1320,
0, (word) ROSNormalize←P1260, 0, (word) ROS←P1200,
0, (word) GetRope←P1140, 0, (word) RopeStreamClose←P1080,
0, (word) InputRopeStreamGetLength←P1020, 0, (word) InputRopeStreamSetIndex←P960,
0, (word) InputRopeStreamGetIndex←P900, 0, (word) InputRopeStreamReset←P840,
0, (word) InputRopeStreamBackup←P780, 0, (word) InputRopeStreamEndOf←P720,
0, (word) InputRopeStreamUnsafeGetBlock←P660, 0, (word) InputRopeStreamGetBlock←P600,
0, (word) InputRopeStreamGetChar←P540, 0, (word) RIS←P420,
0, (word) NoInputClose←P360, 0, (word) NoInputEndOf←P300,
0, (word) NoInputBackup←P240, 0, (word) NoInputGetChar←P180,
0, (word) NoWhereClose←P120, 0, (word) NoWherePutChar←P60,
0, (word) IOSimpleStreamsImpl←P0, {0}
};
static void NoName←Q3612()
{
register ptr gf←c0255 = (ptr) &globalframe;
word var←c25736;
(* (( (ptr) gf←c0255)+11) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2);
(* (( (ptr) gf←c0255)+12) ) = (word) XR←GetTypeIndexS((word) (&string3));
(* (( (ptr) gf←c0255)+15) ) = (word) XR←GetTypeIndex((word) &string4, 0, (word) &string5);
(* (( (ptr) gf←c0255)+17) ) = (word) XR←GetTypeIndex((word) &string6, 0, (word) &string7);
(* (( (ptr) gf←c0255)+22) ) = (word) XR←GetTypeIndex((word) &string8, 0, (word) &string2);
(* (ptr) (( (bPt) gf←c0255)+92) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0255)+11) ), (word) &string9);
(* (ptr) (( (bPt) gf←c0255)+96) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0255)+11) ), (word) &string10);
(* (ptr) (( (bPt) gf←c0255)+100) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0255)+11) ), (word) &string11);
(void) XR←DeclareGlobalFrame((word) "IOSimpleStreamsImpl", &globalframe, (word) XR←GetTypeIndex((word) &string12, 0, (word) &string13)
, (word) (( (bPt) gf←c0255)+440)/* var←c24232 */ );
var←c25736 = (word) XR←ImportInterface((word) &string14, (word) XR←GetTypeIndexS((word) (&string15)), 103);
(* (( (ptr) gf←c0255)+112)/* var←c24296 */ ) = var←c25736;
(void) XR←ImportProcS(var←c25736, 1053698);
(void) XR←ImportProcS(var←c25736, 1053444);
(void) XR←ImportProcS(var←c25736, 68159748);
(void) XR←ImportProcS(var←c25736, 67373825);
(void) XR←ImportProcS(var←c25736, 72115219);
(void) XR←ImportProcS(var←c25736, 67921155);
var←c25736 = (word) XR←ImportInterface((word) "IOUtils", (word) XR←GetTypeIndexS((word) (&string16)), 27);
(* (( (ptr) gf←c0255)+115)/* var←c24776 */ ) = var←c25736;
var←c25736 = (word) XR←ImportInterface((word) "RefText", (word) XR←GetTypeIndexS((word) (&string17)), 26);
(* (( (ptr) gf←c0255)+114)/* var←c24488 */ ) = var←c25736;
(void) XR←ImportProcS(var←c25736, 67634946);
(void) XR←ImportProcS(var←c25736, 67371009);
(void) XR←ImportProcS(var←c25736, 262913);
(void) XR←ImportProcS(var←c25736, 67371521);
var←c25736 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string18)), 43);
(* (( (ptr) gf←c0255)+113)/* var←c24360 */ ) = var←c25736;
(void) XR←ImportProcS(var←c25736, 67633666);
(void) XR←ImportProcS(var←c25736, 67903235);
(void) XR←ImportProcS(var←c25736, 67898627);
(void) XR←ImportProcS(var←c25736, 67634434);
(void) XR←ImportProcS(var←c25736, 68429059);
(void) XR←ImportProcS(var←c25736, 68166660);
(void) XR←ImportProcS(var←c25736, 67373825);
var←c25736 = (word) XR←ExportInterface((word) &string14, (word) XR←GetTypeIndexS((word) (&string15)), 103);
(* (( (ptr) gf←c0255)+116)/* var←c25768 */ ) = var←c25736;
(void) XR←ExportProcS(var←c25736, (word) (( (bPt) gf←c0255)+384)/* var←c24008 */ , 67640578);
(void) XR←ExportProcS(var←c25736, (word) (( (bPt) gf←c0255)+288)/* var←c23624 */ , 67378689);
(void) XR←ExportProcS(var←c25736, (word) (( (bPt) gf←c0255)+240)/* var←c23432 */ , 67641090);
(void) XR←ExportProcS(var←c25736, (word) (( (bPt) gf←c0255)+224)/* var←c23368 */ , 67641346);
(void) XR←ExportProcS(var←c25736, (word) (( (bPt) gf←c0255)+160)/* var←c23112 */ , 67641602);
(void) XR←ExportProcS(var←c25736, (word) (( (bPt) gf←c0255)+152)/* var←c23080 */ , 67379713);
(void) XR←ExportVar(var←c25736, 35, (word) (( (bPt) gf←c0255)+16)/* noWhereStream←v2720 */ );
(void) XR←ExportVar(var←c25736, 36, (word) (( (bPt) gf←c0255)+20)/* noInputStream←v2804 */ );
(void) XR←ExportProcS(var←c25736, (word) (( (bPt) gf←c0255)+296)/* var←c23656 */ , 67917827);
(void) XR←ExportProcS(var←c25736, (word) (( (bPt) gf←c0255)+232)/* var←c23400 */ , 1071364);
}
static void IOSimpleStreamsImpl←P0(formal←c068, formal←c059)
word formal←c068;
word formal←c059;
{
register ptr gf←c25800 = (ptr) &globalframe;
/* IOSimpleStreamsImpl: */
SOURCE(170, 13118)
SOURCE(347, 152)
{
word var←c24264;
{
W19 var←c061;
(* (ptr) (word) &var←c061 ) = 1;
(* (( (ptr) (word) &var←c061) + 1) ) = (* (( (ptr) gf←c25800)+25) );
(* (( (ptr) (word) &var←c061) + 2) ) = 0;
(* (( (ptr) (word) &var←c061) + 3) ) = 0;
(* (( (ptr) (word) &var←c061) + 4) ) = 0;
(* (( (ptr) (word) &var←c061) + 5) ) = 0;
(* (( (ptr) (word) &var←c061) + 6) ) = 0;
(* (( (ptr) (word) &var←c061) + 7) ) = 0;
(* (( (ptr) (word) &var←c061) + 8) ) = (word) (( (bPt) gf←c25800)+432)/* var←c24200 */ ;
(* (( (ptr) (word) &var←c061) + 9) ) = 0;
(* (( (ptr) (word) &var←c061) + 10) ) = 0;
(* (( (ptr) (word) &var←c061) + 11) ) = 0;
(* (( (ptr) (word) &var←c061) + 12) ) = 0;
(* (( (ptr) (word) &var←c061) + 13) ) = (word) (( (bPt) gf←c25800)+424)/* var←c24168 */ ;
(* (( (ptr) (word) &var←c061) + 14) ) = 0;
(* (( (ptr) (word) &var←c061) + 15) ) = 0;
(* (( (ptr) (word) &var←c061) + 16) ) = 0;
(* (( (ptr) (word) &var←c061) + 17) ) = 0;
(* (( (ptr) (word) &var←c061) + 18) ) = 0;
{
word pd19;
pd19 = (* (( (ptr) (* (( (ptr) gf←c25800)+112)/* var←c24296 */ ))+104) );
var←c24264 = (word) ( *( (fPt) ((* (ptr) pd19 ))))((word) (&var←c061), pd19);
};
};
{
word pd20;
pd20 = (* (( (ptr) (* (( (ptr) gf←c25800)+112)/* var←c24296 */ ))+105) );
(* (( (ptr) gf←c25800)+4)/* noWhereStream←v2720 */ ) = (word) ( *( (fPt) ((* (ptr) pd20 ))))(var←c24264, 0, 0, pd20);
};
};
SOURCE(609, 221)
{
word var←c24328;
{
W19 var←c063;
(* (ptr) (word) &var←c063 ) = 0;
(* (( (ptr) (word) &var←c063) + 1) ) = (* (( (ptr) gf←c25800)+25) );
(* (( (ptr) (word) &var←c063) + 2) ) = (word) (( (bPt) gf←c25800)+416)/* var←c24136 */ ;
(* (( (ptr) (word) &var←c063) + 3) ) = 0;
(* (( (ptr) (word) &var←c063) + 4) ) = 0;
(* (( (ptr) (word) &var←c063) + 5) ) = (word) (( (bPt) gf←c25800)+400)/* var←c24072 */ ;
(* (( (ptr) (word) &var←c063) + 6) ) = 0;
(* (( (ptr) (word) &var←c063) + 7) ) = (word) (( (bPt) gf←c25800)+408)/* var←c24104 */ ;
(* (( (ptr) (word) &var←c063) + 8) ) = 0;
(* (( (ptr) (word) &var←c063) + 9) ) = 0;
(* (( (ptr) (word) &var←c063) + 10) ) = 0;
(* (( (ptr) (word) &var←c063) + 11) ) = 0;
(* (( (ptr) (word) &var←c063) + 12) ) = 0;
(* (( (ptr) (word) &var←c063) + 13) ) = (word) (( (bPt) gf←c25800)+392)/* var←c24040 */ ;
(* (( (ptr) (word) &var←c063) + 14) ) = 0;
(* (( (ptr) (word) &var←c063) + 15) ) = 0;
(* (( (ptr) (word) &var←c063) + 16) ) = 0;
(* (( (ptr) (word) &var←c063) + 17) ) = 0;
(* (( (ptr) (word) &var←c063) + 18) ) = 0;
{
word pd21;
pd21 = (* (( (ptr) (* (( (ptr) gf←c25800)+112)/* var←c24296 */ ))+104) );
var←c24328 = (word) ( *( (fPt) ((* (ptr) pd21 ))))((word) (&var←c063), pd21);
};
};
{
word pd22;
pd22 = (* (( (ptr) (* (( (ptr) gf←c25800)+112)/* var←c24296 */ ))+105) );
(* (( (ptr) gf←c25800)+5)/* noInputStream←v2804 */ ) = (word) ( *( (fPt) ((* (ptr) pd22 ))))(var←c24328, 0, 0, pd22);
};
};
SOURCE(1329, 428)
{
W19 var←c064;
(* (ptr) (word) &var←c064 ) = 0;
(* (( (ptr) (word) &var←c064) + 1) ) = (* (( (ptr) gf←c25800)+24) );
(* (( (ptr) (word) &var←c064) + 2) ) = (word) (( (bPt) gf←c25800)+376)/* var←c23976 */ ;
(* (( (ptr) (word) &var←c064) + 3) ) = (word) (( (bPt) gf←c25800)+368)/* var←c23944 */ ;
(* (( (ptr) (word) &var←c064) + 4) ) = (word) (( (bPt) gf←c25800)+360)/* var←c23912 */ ;
(* (( (ptr) (word) &var←c064) + 5) ) = (word) (( (bPt) gf←c25800)+352)/* var←c23880 */ ;
(* (( (ptr) (word) &var←c064) + 6) ) = 0;
(* (( (ptr) (word) &var←c064) + 7) ) = (word) (( (bPt) gf←c25800)+344)/* var←c23848 */ ;
(* (( (ptr) (word) &var←c064) + 8) ) = 0;
(* (( (ptr) (word) &var←c064) + 9) ) = 0;
(* (( (ptr) (word) &var←c064) + 10) ) = 0;
(* (( (ptr) (word) &var←c064) + 11) ) = 0;
(* (( (ptr) (word) &var←c064) + 12) ) = (word) (( (bPt) gf←c25800)+336)/* var←c23816 */ ;
(* (( (ptr) (word) &var←c064) + 13) ) = (word) (( (bPt) gf←c25800)+304)/* var←c23688 */ ;
(* (( (ptr) (word) &var←c064) + 14) ) = (word) (( (bPt) gf←c25800)+328)/* var←c23784 */ ;
(* (( (ptr) (word) &var←c064) + 15) ) = (word) (( (bPt) gf←c25800)+320)/* var←c23752 */ ;
(* (( (ptr) (word) &var←c064) + 16) ) = (word) (( (bPt) gf←c25800)+312)/* var←c23720 */ ;
(* (( (ptr) (word) &var←c064) + 17) ) = 0;
(* (( (ptr) (word) &var←c064) + 18) ) = 0;
{
word pd23;
pd23 = (* (( (ptr) (* (( (ptr) gf←c25800)+112)/* var←c24296 */ ))+104) );
(* (( (ptr) gf←c25800)+6)/* InputRopeStreamProcs←v3000 */ ) = (word) ( *( (fPt) ((* (ptr) pd23 ))))((word) (&var←c064), pd23)
;
};
};
SOURCE(6505, 316)
{
W19 var←c065;
(* (ptr) (word) &var←c065 ) = 1;
(* (( (ptr) (word) &var←c065) + 1) ) = (* (( (ptr) gf←c25800)+24) );
(* (( (ptr) (word) &var←c065) + 2) ) = 0;
(* (( (ptr) (word) &var←c065) + 3) ) = 0;
(* (( (ptr) (word) &var←c065) + 4) ) = 0;
(* (( (ptr) (word) &var←c065) + 5) ) = 0;
(* (( (ptr) (word) &var←c065) + 6) ) = 0;
(* (( (ptr) (word) &var←c065) + 7) ) = 0;
(* (( (ptr) (word) &var←c065) + 8) ) = (word) (( (bPt) gf←c25800)+272)/* var←c23560 */ ;
(* (( (ptr) (word) &var←c065) + 9) ) = 0;
(* (( (ptr) (word) &var←c065) + 10) ) = 0;
(* (( (ptr) (word) &var←c065) + 11) ) = 0;
(* (( (ptr) (word) &var←c065) + 12) ) = (word) (( (bPt) gf←c25800)+256)/* var←c23496 */ ;
(* (( (ptr) (word) &var←c065) + 13) ) = (word) (( (bPt) gf←c25800)+304)/* var←c23688 */ ;
(* (( (ptr) (word) &var←c065) + 14) ) = (word) (( (bPt) gf←c25800)+248)/* var←c23464 */ ;
(* (( (ptr) (word) &var←c065) + 15) ) = 0;
(* (( (ptr) (word) &var←c065) + 16) ) = (word) (( (bPt) gf←c25800)+248)/* var←c23464 */ ;
(* (( (ptr) (word) &var←c065) + 17) ) = 0;
(* (( (ptr) (word) &var←c065) + 18) ) = (word) (( (bPt) gf←c25800)+264)/* var←c23528 */ ;
{
word pd24;
pd24 = (* (( (ptr) (* (( (ptr) gf←c25800)+112)/* var←c24296 */ ))+104) );
(* (( (ptr) gf←c25800)+7)/* OutputRopeStreamProcs←v3392 */ ) = (word) ( *( (fPt) ((* (ptr) pd24 ))))((word) (&var←c065), pd24)
;
};
};
SOURCE(9614, 322)
{
W19 var←c066;
(* (ptr) (word) &var←c066 ) = 0;
(* (( (ptr) (word) &var←c066) + 1) ) = (* (( (ptr) gf←c25800)+23) );
(* (( (ptr) (word) &var←c066) + 2) ) = (word) (( (bPt) gf←c25800)+216)/* var←c23336 */ ;
(* (( (ptr) (word) &var←c066) + 3) ) = 0;
(* (( (ptr) (word) &var←c066) + 4) ) = 0;
(* (( (ptr) (word) &var←c066) + 5) ) = (word) (( (bPt) gf←c25800)+208)/* var←c23304 */ ;
(* (( (ptr) (word) &var←c066) + 6) ) = 0;
(* (( (ptr) (word) &var←c066) + 7) ) = (word) (( (bPt) gf←c25800)+192)/* var←c23240 */ ;
(* (( (ptr) (word) &var←c066) + 8) ) = 0;
(* (( (ptr) (word) &var←c066) + 9) ) = 0;
(* (( (ptr) (word) &var←c066) + 10) ) = 0;
(* (( (ptr) (word) &var←c066) + 11) ) = 0;
(* (( (ptr) (word) &var←c066) + 12) ) = (word) (( (bPt) gf←c25800)+200)/* var←c23272 */ ;
(* (( (ptr) (word) &var←c066) + 13) ) = 0;
(* (( (ptr) (word) &var←c066) + 14) ) = (word) (( (bPt) gf←c25800)+184)/* var←c23208 */ ;
(* (( (ptr) (word) &var←c066) + 15) ) = (word) (( (bPt) gf←c25800)+176)/* var←c23176 */ ;
(* (( (ptr) (word) &var←c066) + 16) ) = (word) (( (bPt) gf←c25800)+168)/* var←c23144 */ ;
(* (( (ptr) (word) &var←c066) + 17) ) = 0;
(* (( (ptr) (word) &var←c066) + 18) ) = 0;
{
word pd25;
pd25 = (* (( (ptr) (* (( (ptr) gf←c25800)+112)/* var←c24296 */ ))+104) );
(* (( (ptr) gf←c25800)+9)/* InputTextStreamProcs←v3672 */ ) = (word) ( *( (fPt) ((* (ptr) pd25 ))))((word) (&var←c066), pd25)
;
};
};
SOURCE(11314, 271)
{
W19 var←c067;
(* (ptr) (word) &var←c067 ) = 1;
(* (( (ptr) (word) &var←c067) + 1) ) = (* (( (ptr) gf←c25800)+23) );
(* (( (ptr) (word) &var←c067) + 2) ) = 0;
(* (( (ptr) (word) &var←c067) + 3) ) = 0;
(* (( (ptr) (word) &var←c067) + 4) ) = 0;
(* (( (ptr) (word) &var←c067) + 5) ) = 0;
(* (( (ptr) (word) &var←c067) + 6) ) = 0;
(* (( (ptr) (word) &var←c067) + 7) ) = 0;
(* (( (ptr) (word) &var←c067) + 8) ) = (word) (( (bPt) gf←c25800)+136)/* var←c23016 */ ;
(* (( (ptr) (word) &var←c067) + 9) ) = 0;
(* (( (ptr) (word) &var←c067) + 10) ) = 0;
(* (( (ptr) (word) &var←c067) + 11) ) = 0;
(* (( (ptr) (word) &var←c067) + 12) ) = (word) (( (bPt) gf←c25800)+120)/* var←c22952 */ ;
(* (( (ptr) (word) &var←c067) + 13) ) = 0;
(* (( (ptr) (word) &var←c067) + 14) ) = (word) (( (bPt) gf←c25800)+112)/* var←c22920 */ ;
(* (( (ptr) (word) &var←c067) + 15) ) = 0;
(* (( (ptr) (word) &var←c067) + 16) ) = (word) (( (bPt) gf←c25800)+104)/* var←c22888 */ ;
(* (( (ptr) (word) &var←c067) + 17) ) = 0;
(* (( (ptr) (word) &var←c067) + 18) ) = (word) (( (bPt) gf←c25800)+128)/* var←c22984 */ ;
{
word pd26;
pd26 = (* (( (ptr) (* (( (ptr) gf←c25800)+112)/* var←c24296 */ ))+104) );
(* (( (ptr) gf←c25800)+10)/* OutputTextStreamProcs←v3924 */ ) = (word) ( *( (fPt) ((* (ptr) pd26 ))))((word) (&var←c067), pd26)
;
};
};
}
static void NoWherePutChar←P60(self←v4228, char←v4256)
word self←v4228;
word char←v4256;
{
/* NoWherePutChar: */
}
static void NoWhereClose←P120(self←v4316, abort←v4344)
word self←v4316;
word abort←v4344;
{
/* NoWhereClose: */
}
static word NoInputGetChar←P180(self←v4404)
word self←v4404;
{
register ptr gf←c25832 = (ptr) &globalframe;
word var←c4448;
/* NoInputGetChar: */
SOURCE(832, 82)
SOURCE(887, 27)
{
word var←c075;
var←c075 = self←v4404;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c25832)+112)/* var←c24296 */ ))+4) ), (word) &var←c075);
};
}
static void NoInputBackup←P240(self←v4508, char←v4536)
word self←v4508;
word char←v4536;
{
register ptr gf←c25864 = (ptr) &globalframe;
/* NoInputBackup: */
SOURCE(917, 88)
SOURCE(968, 37)
{
W4 var←c078;
(* (ptr) (word) &var←c078 ) = 4;
(* (( (ptr) (word) &var←c078) + 1) ) = self←v4508;
(* (( (ptr) (word) &var←c078) + 2) ) = 0;
(* (( (ptr) (word) &var←c078) + 3) ) = 0;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c25864)+112)/* var←c24296 */ ))+5) ), (word) &var←c078);
};
}
static word NoInputEndOf←P300(self←v4596)
word self←v4596;
{
word var←c4640;
/* NoInputEndOf: */
SOURCE(1008, 66)
SOURCE(1061, 13)
return(1);
}
static void NoInputClose←P360(self←v4700, abort←v4728)
word self←v4700;
word abort←v4728;
{
/* NoInputClose: */
}
static word RIS←P420(rope←v4912, oldStream←v4940)
word rope←v4912;
word oldStream←v4940;
{
register ptr gf←c25896 = (ptr) &globalframe;
word var←c4984;
word size←v8924;
word self←v8952;
word data←v8980;
word bufSize←v9064;
word buffer←v9092;
/* RIS: */
SOURCE(1760, 704)
SOURCE(1830, 27)
{
word pd27;
pd27 = (* (( (ptr) (* (( (ptr) gf←c25896)+113)/* var←c24360 */ ))+15) );
size←v8924 = (word) ( *( (fPt) ((* (ptr) pd27 ))))(rope←v4912, pd27);
};
SOURCE(1859, 72)
self←v8952 = ( (oldStream←v4940 != 0) ? oldStream←v4940 : XR←NewObject(32, (* (( (ptr) gf←c25896)+17) )) ) ;
SOURCE(1933, 61)
{
word var←c24424;
var←c24424 = (* (( (ptr) self←v8952)+1) );
if ((var←c24424 == 0)) {
goto lab←L100000;
};
if (((* (( (ptr) gf←c25896)+22) ) == XR←GetReferentType(var←c24424))) {
data←v8980 = var←c24424;
}
else {
lab←L100000: ;
data←v8980 = XR←NewObject(12, (* (( (ptr) gf←c25896)+22) ));
};
};
SOURCE(2125, 72)
bufSize←v9064 = ( ( (int)size←v8924 <= (int)128) ? 128 : 2048 ) ;
SOURCE(2199, 126)
{
word tc28;
word tc29;
word pd30;
if (((* (( (ptr) self←v8952)+4) ) != 0)) {
tc29 = (word) ((* (( (hPt) (* (( (ptr) self←v8952)+4) ))+1) ) >= bufSize←v9064);
}
else {
tc29 = (word) 0;
};
if (tc29) {
tc28 = (word) (* (( (ptr) self←v8952)+4) );
}
else {
pd30 = (* (( (ptr) (* (( (ptr) gf←c25896)+114)/* var←c24488 */ ))+6) );
tc28 = (word) ( *( (fPt) ((* (ptr) pd30 ))))(BCK(bufSize←v9064, 32768), pd30);
};
buffer←v9092 = tc28;
};
SOURCE(2327, 44)
(* (ptr) data←v8980 ) = rope←v4912;
(* (( (ptr) data←v8980)+1) ) = size←v8924;
(* (( (ptr) data←v8980)+2) ) = 0;
SOURCE(2373, 77)
XR←FillWords(&(* (W6Pt) ((( (ptr) self←v8952)+2))), 6, 0);
(* (ptr) self←v8952 ) = (* (( (ptr) gf←c25896)+6)/* InputRopeStreamProcs←v3000 */ );
(* (( (ptr) self←v8952)+1) ) = data←v8980;
(* (( (ptr) self←v8952)+4) ) = buffer←v9092;
SOURCE(2452, 12)
return(self←v8952);
}
static word InputRopeStreamGetChar←P540(self←v5148)
word self←v5148;
{
register ptr gf←c25928 = (ptr) &globalframe;
word char←v5192;
word i←v9220;
/* InputRopeStreamGetChar: */
SOURCE(2705, 455)
SOURCE(2774, 25)
i←v9220 = (* (( (ptr) self←v5148)+7) );
SOURCE(2801, 359)
if ((i←v9220 < (* (( (ptr) self←v5148)+5) ))) {
SOURCE(2838, 22)
(* (( (ptr) self←v5148)+7) ) = (i←v9220 + 1);
SOURCE(2862, 23)
{
word var←c0285;
{
word var←c24520;
var←c24520 = (* (( (ptr) self←v5148)+4) );
{
word limit31;
var←c0285 = (word) (* ((( (bPt) var←c24520)+4)+(
limit31 = (word) (* (( (hPt) var←c24520)+1) ),
BCK(i←v9220, limit31)
)) );
};
};
return(var←c0285);
};
}
else {
SOURCE(2892, 270)
{
word data←v9264;
SOURCE(2894, 46)
{
word self←v22840;
self←v22840 = self←v5148;
{
word data←v9192;
data←v9192 = XR←Narrow((* (( (ptr) self←v22840)+1) ), (* (( (ptr) gf←c25928)+22) ));
SOURCE(2598, 40)
(* (( (ptr) data←v9192)+2) ) = ((* (( (ptr) data←v9192)+2) ) + (* (( (ptr) self←v22840)+7) ));
SOURCE(2640, 45)
(* (( (ptr) self←v22840)+5) ) = 0;
(* (( (ptr) self←v22840)+7) ) = 0;
SOURCE(2687, 12)
data←v9264 = data←v9192;
};
};
SOURCE(2942, 22)
(* (hPt) (* (( (ptr) self←v5148)+4) ) ) = 0;
SOURCE(2966, 77)
{
word var←c24584;
{
word pd32;
pd32 = (* (( (ptr) (* (( (ptr) gf←c25928)+113)/* var←c24360 */ ))+40) );
var←c24584 = (word) ( *( (fPt) ((* (ptr) pd32 ))))((* (( (ptr) self←v5148)+4) ), (* (ptr) data←v9264 ), (* (( (ptr) data←v9264)+2)
), 2147483647, pd32);
};
(* (( (ptr) self←v5148)+5) ) = var←c24584;
};
SOURCE(3045, 115)
if (((* (( (ptr) self←v5148)+5) ) > 0)) {
SOURCE(3082, 20)
(* (( (ptr) self←v5148)+7) ) = 1;
SOURCE(3104, 23)
{
word var←c0286;
{
word var←c24616;
var←c24616 = (* (( (ptr) self←v5148)+4) );
{
word limit33;
var←c0286 = (word) (* ((( (bPt) var←c24616)+4)+(
limit33 = (word) (* (( (hPt) var←c24616)+1) ),
BCK(0, limit33)
)) );
};
};
return(var←c0286);
};
}
else {
SOURCE(3134, 26)
{
word var←c0102;
var←c0102 = self←v5148;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c25928)+112)/* var←c24296 */ ))+4) ), (word) &var←c0102);
};
};
};
};
}
static word InputRopeStreamGetBlock←P600(self←v5252, block←v5280, startIndex←v5308, count←v5336)
word self←v5252;
word block←v5280;
word startIndex←v5308;
word count←v5336;
{
register ptr gf←c25960 = (ptr) &globalframe;
word nBytesRead←v5392;
word data←v9308;
word index←v9336;
/* InputRopeStreamGetBlock: */
SOURCE(3169, 339)
SOURCE(3290, 46)
{
word self←v22764;
self←v22764 = self←v5252;
{
word data←v22796;
data←v22796 = XR←Narrow((* (( (ptr) self←v22764)+1) ), (* (( (ptr) gf←c25960)+22) ));
SOURCE(2598, 40)
(* (( (ptr) data←v22796)+2) ) = ((* (( (ptr) data←v22796)+2) ) + (* (( (ptr) self←v22764)+7) ));
SOURCE(2640, 45)
(* (( (ptr) self←v22764)+5) ) = 0;
(* (( (ptr) self←v22764)+7) ) = 0;
SOURCE(2687, 12)
data←v9308 = data←v22796;
};
};
SOURCE(3338, 23)
index←v9336 = (* (( (ptr) data←v9308)+2) );
SOURCE(3363, 25)
(* (hPt) block←v5280 ) = BCK(startIndex←v5308, 32768);
SOURCE(3390, 87)
{
word pd34;
pd34 = (* (( (ptr) (* (( (ptr) gf←c25960)+113)/* var←c24360 */ ))+40) );
nBytesRead←v5392 = (word) ( *( (fPt) ((* (ptr) pd34 ))))(block←v5280, (* (ptr) data←v9308 ), index←v9336, count←v5336, pd34)
;
};
SOURCE(3479, 29)
(* (( (ptr) data←v9308)+2) ) = (index←v9336 + nBytesRead←v5392);
SOURCE(3169, 339)
return(nBytesRead←v5392);
}
static word InputRopeStreamUnsafeGetBlock←P660(self←v5452, block←v5480)
word self←v5452;
W3 block←v5480;
{
register ptr gf←c25992 = (ptr) &globalframe;
word nBytesRead←v5524;
word data←v9380;
word index←v9408;
/* InputRopeStreamUnsafeGetBlock: */
SOURCE(3514, 309)
SOURCE(3629, 46)
{
word self←v22688;
self←v22688 = self←v5452;
{
word data←v22720;
data←v22720 = XR←Narrow((* (( (ptr) self←v22688)+1) ), (* (( (ptr) gf←c25992)+22) ));
SOURCE(2598, 40)
(* (( (ptr) data←v22720)+2) ) = ((* (( (ptr) data←v22720)+2) ) + (* (( (ptr) self←v22688)+7) ));
SOURCE(2640, 45)
(* (( (ptr) self←v22688)+5) ) = 0;
(* (( (ptr) self←v22688)+7) ) = 0;
SOURCE(2687, 12)
data←v9380 = data←v22720;
};
};
SOURCE(3677, 23)
index←v9408 = (* (( (ptr) data←v9380)+2) );
SOURCE(3710, 81)
SOURCE(3712, 79)
{
word pd35;
pd35 = (* (( (ptr) (* (( (ptr) gf←c25992)+113)/* var←c24360 */ ))+41) );
nBytesRead←v5524 = (word) ( *( (fPt) ((* (ptr) pd35 ))))(block←v5480, (* (ptr) data←v9380 ), index←v9408, pd35);
};
SOURCE(3794, 29)
(* (( (ptr) data←v9380)+2) ) = (index←v9408 + nBytesRead←v5524);
SOURCE(3514, 309)
return(nBytesRead←v5524);
}
static word InputRopeStreamEndOf←P720(self←v5584)
word self←v5584;
{
register ptr gf←c26024 = (ptr) &globalframe;
word var←c5628;
word data←v9452;
/* InputRopeStreamEndOf: */
SOURCE(3829, 166)
SOURCE(3890, 51)
data←v9452 = XR←Narrow((* (( (ptr) self←v5584)+1) ), (* (( (ptr) gf←c26024)+22) ));
SOURCE(3943, 52)
return(( (int)((* (( (ptr) data←v9452)+2) ) + (* (( (ptr) self←v5584)+7) )) >= (int)(* (( (ptr) data←v9452)+1) )));
}
static void InputRopeStreamBackup←P780(self←v5688, char←v5716)
word self←v5688;
word char←v5716;
{
register ptr gf←c26056 = (ptr) &globalframe;
word data←v9496;
/* InputRopeStreamBackup: */
SOURCE(4001, 240)
SOURCE(4060, 46)
{
word self←v22612;
self←v22612 = self←v5688;
{
word data←v22644;
data←v22644 = XR←Narrow((* (( (ptr) self←v22612)+1) ), (* (( (ptr) gf←c26056)+22) ));
SOURCE(2598, 40)
(* (( (ptr) data←v22644)+2) ) = ((* (( (ptr) data←v22644)+2) ) + (* (( (ptr) self←v22612)+7) ));
SOURCE(2640, 45)
(* (( (ptr) self←v22612)+5) ) = 0;
(* (( (ptr) self←v22612)+7) ) = 0;
SOURCE(2687, 12)
data←v9496 = data←v22644;
};
};
SOURCE(4108, 133)
{
word tc36;
word pd37;
if (( (int)(* (( (ptr) data←v9496)+2) ) > (int)0)) {
pd37 = (* (( (ptr) (* (( (ptr) gf←c26056)+113)/* var←c24360 */ ))+9) );
tc36 = (word) ((word) ( *( (fPt) ((* (ptr) pd37 ))))((* (ptr) data←v9496 ), ((* (( (ptr) data←v9496)+2) ) - 1), pd37) == char←v5716);
}
else {
tc36 = (word) 0;
};
if (tc36) {
SOURCE(4174, 31)
(* (( (ptr) data←v9496)+2) ) = ((* (( (ptr) data←v9496)+2) ) - 1);
}
else {
SOURCE(4205, 36)
{
W4 var←c0127;
(* (ptr) (word) &var←c0127 ) = 4;
(* (( (ptr) (word) &var←c0127) + 1) ) = self←v5688;
(* (( (ptr) (word) &var←c0127) + 2) ) = 0;
(* (( (ptr) (word) &var←c0127) + 3) ) = 0;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26056)+112)/* var←c24296 */ ))+5) ), (word) &var←c0127);
};
};
};
}
static void InputRopeStreamReset←P840(self←v5776)
word self←v5776;
{
register ptr gf←c26088 = (ptr) &globalframe;
word data←v9540;
/* InputRopeStreamReset: */
SOURCE(4247, 118)
SOURCE(4293, 46)
{
word self←v22536;
self←v22536 = self←v5776;
{
word data←v22568;
data←v22568 = XR←Narrow((* (( (ptr) self←v22536)+1) ), (* (( (ptr) gf←c26088)+22) ));
SOURCE(2598, 40)
(* (( (ptr) data←v22568)+2) ) = ((* (( (ptr) data←v22568)+2) ) + (* (( (ptr) self←v22536)+7) ));
SOURCE(2640, 45)
(* (( (ptr) self←v22536)+5) ) = 0;
(* (( (ptr) self←v22536)+7) ) = 0;
SOURCE(2687, 12)
data←v9540 = data←v22568;
};
};
SOURCE(4341, 24)
(* (( (ptr) data←v9540)+2) ) = (* (( (ptr) data←v9540)+1) );
}
static word InputRopeStreamGetIndex←P900(self←v5836)
word self←v5836;
{
register ptr gf←c26120 = (ptr) &globalframe;
word var←c5880;
word data←v9584;
/* InputRopeStreamGetIndex: */
SOURCE(4371, 151)
SOURCE(4434, 51)
data←v9584 = XR←Narrow((* (( (ptr) self←v5836)+1) ), (* (( (ptr) gf←c26120)+22) ));
SOURCE(4487, 35)
return(((* (( (ptr) data←v9584)+2) ) + (* (( (ptr) self←v5836)+7) )));
}
static void InputRopeStreamSetIndex←P960(self←v5940, index←v5968)
word self←v5940;
word index←v5968;
{
register ptr gf←c26152 = (ptr) &globalframe;
word data←v9628;
/* InputRopeStreamSetIndex: */
SOURCE(4528, 357)
SOURCE(4589, 51)
data←v9628 = XR←Narrow((* (( (ptr) self←v5940)+1) ), (* (( (ptr) gf←c26152)+22) ));
SOURCE(4642, 68)
if (( (int)index←v5968 < (int)0) || ( (int)index←v5968 > (int)(* (( (ptr) data←v9628)+1) ))) {
SOURCE(4679, 31)
{
W4 var←c0138;
(* (ptr) (word) &var←c0138 ) = 6;
(* (( (ptr) (word) &var←c0138) + 1) ) = self←v5940;
(* (( (ptr) (word) &var←c0138) + 2) ) = 0;
(* (( (ptr) (word) &var←c0138) + 3) ) = 0;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26152)+112)/* var←c24296 */ ))+5) ), (word) &var←c0138);
};
};
SOURCE(4712, 173)
if ( ( ( (int)index←v5968 >= (int)(* (( (ptr) data←v9628)+2) )) ? ( (int)index←v5968 <= (int)((* (( (ptr) data←v9628)+2)
) + (* (( (ptr) self←v5940)+5) ))) : 0 ) ) {
SOURCE(4776, 41)
{
word idx38;
(* (( (ptr) self←v5940)+7) ) = (
idx38 = (word) (index←v5968 - (* (( (ptr) data←v9628)+2) )),
SGNCK(idx38)
);
};
}
else {
SOURCE(4819, 45)
(* (( (ptr) self←v5940)+5) ) = 0;
(* (( (ptr) self←v5940)+7) ) = 0;
SOURCE(4866, 19)
(* (( (ptr) data←v9628)+2) ) = index←v5968;
};
}
static word InputRopeStreamGetLength←P1020(self←v6028)
word self←v6028;
{
register ptr gf←c26184 = (ptr) &globalframe;
word length←v6072;
word data←v9672;
/* InputRopeStreamGetLength: */
SOURCE(4892, 144)
SOURCE(4964, 51)
data←v9672 = XR←Narrow((* (( (ptr) self←v6028)+1) ), (* (( (ptr) gf←c26184)+22) ));
SOURCE(5017, 19)
return((* (( (ptr) data←v9672)+1) ));
}
static void RopeStreamClose←P1080(self←v6132, abort←v6160)
word self←v6132;
word abort←v6160;
{
register ptr gf←c26216 = (ptr) &globalframe;
/* RopeStreamClose: */
SOURCE(5042, 139)
SOURCE(5096, 35)
{
word pd39;
pd39 = (* (( (ptr) (* (( (ptr) gf←c26216)+114)/* var←c24488 */ ))+7) );
(void) ( *( (fPt) ((* (ptr) pd39 ))))((* ((( (ptr) self←v6132)+4)) ), pd39);
};
SOURCE(5133, 48)
XR←FillWords(&(* (W7Pt) ((( (ptr) self←v6132)+1))), 7, 0);
(* (ptr) self←v6132 ) = (* (ptr) (* (( (ptr) (* (( (ptr) gf←c26216)+115)/* var←c24776 */ ))+15) ) );
}
static word GetRope←P1140(self←v6220, len←v6248, demand←v6276)
word self←v6220;
word len←v6248;
word demand←v6276;
{
register ptr gf←c26248 = (ptr) &globalframe;
word rope←v6320;
word ropeSize←v9716 = 0;
/* GetRope: */
SOURCE(5187, 1312)
SOURCE(5187, 1312)
rope←v6320 = 0;
SOURCE(5317, 1119)
{
word var←c24808;
var←c24808 = (* (( (ptr) self←v6220)+1) );
if ((var←c24808 == 0)) {
goto lab←L100006;
};
if (((* (( (ptr) gf←c26248)+22) ) == XR←GetReferentType(var←c24808))) {
{
word data←v9760;
data←v9760 = var←c24808;
SOURCE(5379, 186)
{
word index←v9804;
SOURCE(5381, 40)
index←v9804 = ((* (( (ptr) data←v9760)+2) ) + (* (( (ptr) self←v6220)+7) ));
SOURCE(5447, 41)
{
word pd40;
pd40 = (* (( (ptr) (* (( (ptr) gf←c26248)+113)/* var←c24360 */ ))+17) );
rope←v6320 = (word) ( *( (fPt) ((* (ptr) pd40 ))))((* (ptr) data←v9760 ), index←v9804, len←v6248, pd40);
};
SOURCE(5490, 26)
{
word pd41;
pd41 = (* (( (ptr) (* (( (ptr) gf←c26248)+113)/* var←c24360 */ ))+15) );
ropeSize←v9716 = (word) ( *( (fPt) ((* (ptr) pd41 ))))(rope←v6320, pd41);
};
SOURCE(5518, 45)
(void) InputRopeStreamSetIndex←P960(self←v6220, (index←v9804 + ropeSize←v9716));
};
};
}
else {
lab←L100006: ;
SOURCE(5579, 859)
{
W10 s←v9904;
word buf←v9932;
word residual←v9960;
SOURCE(5622, 42)
XR←FillWords(&s←v9904, 10, 0);
SOURCE(5666, 46)
{
word pd42;
pd42 = (* (( (ptr) (* (( (ptr) gf←c26248)+114)/* var←c24488 */ ))+6) );
buf←v9932 = (word) ( *( (fPt) ((* (ptr) pd42 ))))(512, pd42);
};
SOURCE(5714, 19)
residual←v9960 = len←v6248;
SOURCE(5735, 469)
lab←L100009: ;
{
word tc43;
word pd44;
if (( (int)residual←v9960 != (int)0)) {
pd44 = (* (( (ptr) (* (( (ptr) gf←c26248)+112)/* var←c24296 */ ))+15) );
tc43 = (word) (0 == (word) ( *( (fPt) ((* (ptr) pd44 ))))(self←v6220, pd44));
}
else {
tc43 = (word) 0;
};
if (tc43) {
}
else {
goto lab←L100007;
};
};
{
word chunkSize←v10052;
word bytesRead←v10080;
SOURCE(5775, 39)
chunkSize←v10052 = (MIN((int)(word), residual←v9960, 512));
SOURCE(5816, 95)
{
word pd45;
pd45 = (* (( (ptr) (* (( (ptr) gf←c26248)+112)/* var←c24296 */ ))+13) );
bytesRead←v10080 = (word) ( *( (fPt) ((* (ptr) pd45 ))))(self←v6220, buf←v9932, 0, chunkSize←v10052, pd45);
};
SOURCE(5913, 20)
if ((bytesRead←v10080 == 0)) {
SOURCE(5933, 4)
goto lab←L100008;
};
SOURCE(5939, 31)
residual←v9960 = (residual←v9960 - bytesRead←v10080);
SOURCE(5972, 28)
{
word pd46;
pd46 = (* (( (ptr) (* (( (ptr) gf←c26248)+113)/* var←c24360 */ ))+35) );
rope←v6320 = (word) ( *( (fPt) ((* (ptr) pd46 ))))(buf←v9932, 0, 32767, pd46);
};
SOURCE(6002, 202)
{
register word i←v10144 = 0;
lab←L100013: ;
SOURCE(6034, 43)
if (((* (( (ptr) &s←v9904)+BCK(i←v10144, 10)) ) == 0)) {
SOURCE(6054, 11)
(* (( (ptr) &s←v9904)+BCK(i←v10144, 10)) ) = rope←v6320;
SOURCE(6067, 10)
rope←v6320 = 0;
SOURCE(6079, 4)
goto lab←L100011;
};
SOURCE(6086, 67)
if ((i←v10144 == 9)) {
SOURCE(6111, 30)
{
word var←c24872;
{
word pd47;
pd47 = (* (( (ptr) (* (( (ptr) gf←c26248)+113)/* var←c24360 */ ))+6) );
var←c24872 = (word) ( *( (fPt) ((* (ptr) pd47 ))))((* (( (ptr) &s←v9904)+BCK(i←v10144, 10)) ), rope←v6320, pd47);
};
(* (( (ptr) &s←v9904)+BCK(i←v10144, 10)) ) = var←c24872;
};
SOURCE(6143, 10)
rope←v6320 = 0;
SOURCE(6155, 4)
goto lab←L100011;
};
SOURCE(6162, 30)
{
word pd48;
pd48 = (* (( (ptr) (* (( (ptr) gf←c26248)+113)/* var←c24360 */ ))+6) );
rope←v6320 = (word) ( *( (fPt) ((* (ptr) pd48 ))))((* (( (ptr) &s←v9904)+BCK(i←v10144, 10)) ), rope←v6320, pd48);
};
SOURCE(6194, 10)
(* (( (ptr) &s←v9904)+BCK(i←v10144, 10)) ) = 0;
if ((i←v10144 >= 9)) {
goto lab←L100010;
};
i←v10144 = (i←v10144 + 1);
goto lab←L100013;
lab←L100010: ;
lab←L100011: ;
};
};
goto lab←L100009;
lab←L100007: ;
lab←L100008: ;
SOURCE(6224, 19)
if ((rope←v6320 != 0)) {
SOURCE(6243, 5)
(void) XR←RaiseUnnamedError();
};
SOURCE(6250, 81)
{
register word i←v10188 = 0;
lab←L100017: ;
SOURCE(6282, 49)
if (((* (( (ptr) &s←v9904)+BCK(i←v10188, 10)) ) != 0)) {
SOURCE(6301, 30)
{
word pd49;
pd49 = (* (( (ptr) (* (( (ptr) gf←c26248)+113)/* var←c24360 */ ))+6) );
rope←v6320 = (word) ( *( (fPt) ((* (ptr) pd49 ))))((* (( (ptr) &s←v9904)+BCK(i←v10188, 10)) ), rope←v6320, pd49);
};
};
if ((i←v10188 >= 9)) {
goto lab←L100014;
};
i←v10188 = (i←v10188 + 1);
goto lab←L100017;
lab←L100014: ;
};
SOURCE(6342, 26)
{
word pd50;
pd50 = (* (( (ptr) (* (( (ptr) gf←c26248)+113)/* var←c24360 */ ))+15) );
ropeSize←v9716 = (word) ( *( (fPt) ((* (ptr) pd50 ))))(rope←v6320, pd50);
};
SOURCE(6370, 32)
if (( (int)(ropeSize←v9716 + residual←v9960) != (int)len←v6248)) {
SOURCE(6402, 5)
(void) XR←RaiseUnnamedError();
};
SOURCE(6409, 27)
{
word pd51;
pd51 = (* (( (ptr) (* (( (ptr) gf←c26248)+114)/* var←c24488 */ ))+7) );
(void) ( *( (fPt) ((* (ptr) pd51 ))))(buf←v9932, pd51);
};
};
};
};
SOURCE(6441, 58)
if ( ( (0 != demand←v6276) ? ( (int)ropeSize←v9716 < (int)len←v6248) : 0 ) ) {
SOURCE(6473, 26)
{
word var←c0160;
var←c0160 = self←v6220;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26248)+112)/* var←c24296 */ ))+4) ), (word) &var←c0160);
};
};
SOURCE(5187, 1312)
return(rope←v6320);
}
static word ROS←P1200(oldStream←v6392)
word oldStream←v6392;
{
register ptr gf←c26280 = (ptr) &globalframe;
word var←c6436;
word self←v10232;
word buffer←v10260;
/* ROS: */
SOURCE(6824, 388)
SOURCE(6882, 72)
self←v10232 = ( (oldStream←v6392 != 0) ? oldStream←v6392 : XR←NewObject(32, (* (( (ptr) gf←c26280)+17) )) ) ;
SOURCE(6956, 30)
buffer←v10260 = (* (( (ptr) self←v10232)+4) );
SOURCE(6988, 77)
if ((buffer←v10260 == 0)) { goto then052;};
if (((* (( (hPt) buffer←v10260)+1) ) < 10)) {
then052: ;
SOURCE(7030, 35)
{
word pd53;
pd53 = (* (( (ptr) (* (( (ptr) gf←c26280)+114)/* var←c24488 */ ))+6) );
buffer←v10260 = (word) ( *( (fPt) ((* (ptr) pd53 ))))(256, pd53);
};
};
SOURCE(7067, 131)
{
word var←c24936;
var←c24936 = (* (( (hPt) buffer←v10260)+1) );
XR←FillWords(&(* (W7Pt) ((( (ptr) self←v10232)+1))), 7, 0);
(* (ptr) self←v10232 ) = (* (( (ptr) gf←c26280)+7)/* OutputRopeStreamProcs←v3392 */ );
(* (( (ptr) self←v10232)+4) ) = buffer←v10260;
(* (( (ptr) self←v10232)+6) ) = var←c24936;
};
SOURCE(7200, 12)
return(self←v10232);
}
static word ROSNormalize←P1260(self←v6496)
word self←v6496;
{
register ptr gf←c26312 = (ptr) &globalframe;
word rope←v6540;
/* ROSNormalize: */
SOURCE(7218, 285)
SOURCE(7218, 285)
rope←v6540 = 0;
SOURCE(7277, 30)
{
word var←c24968;
var←c24968 = XR←Narrow((* (( (ptr) self←v6496)+1) ), (* (( (ptr) gf←c26312)+15) ));
if ((var←c24968 == 0)) {
goto lab←L100018;
};
if (((*(int*)var←c24968<0) == 0)) {
goto lab←L100018;
};
(void) XR←RaiseError(XR←NarrowFault, 0);
lab←L100018: ;
rope←v6540 = var←c24968;
};
SOURCE(7340, 163)
if (((* (( (ptr) self←v6496)+7) ) > 0)) {
SOURCE(7369, 37)
{
word idx54;
(* (hPt) (* (( (ptr) self←v6496)+4) ) ) = (
idx54 = (* (( (ptr) self←v6496)+7) ),
BCK(idx54, 32768)
);
};
SOURCE(7408, 73)
{
word var←c25000;
{
word var←c25032;
{
word pd55;
pd55 = (* (( (ptr) (* (( (ptr) gf←c26312)+113)/* var←c24360 */ ))+35) );
var←c25032 = (word) ( *( (fPt) ((* (ptr) pd55 ))))((* (( (ptr) self←v6496)+4) ), 0, 32767, pd55);
};
{
word pd56;
pd56 = (* (( (ptr) (* (( (ptr) gf←c26312)+113)/* var←c24360 */ ))+6) );
var←c25000 = (word) ( *( (fPt) ((* (ptr) pd56 ))))(rope←v6540, var←c25032, pd56);
};
};
rope←v6540 = var←c25000;
(* (( (ptr) self←v6496)+1) ) = var←c25000;
};
SOURCE(7483, 20)
(* (( (ptr) self←v6496)+7) ) = 0;
};
SOURCE(7218, 285)
return(rope←v6540);
}
static void OutputRopeStreamPutChar←P1320(self←v6600, char←v6628)
word self←v6600;
word char←v6628;
{
word i←v10316;
/* OutputRopeStreamPutChar: */
SOURCE(7512, 250)
SOURCE(7573, 25)
i←v10316 = (* (( (ptr) self←v6600)+7) );
SOURCE(7600, 162)
if ((i←v10316 < (* (( (ptr) self←v6600)+6) ))) {
SOURCE(7638, 22)
(* (( (ptr) self←v6600)+7) ) = (i←v10316 + 1);
SOURCE(7662, 22)
{
word var←c25064;
var←c25064 = (* (( (ptr) self←v6600)+4) );
{
word limit57;
(* ((( (bPt) var←c25064)+4)+(
limit57 = (word) (* (( (hPt) var←c25064)+1) ),
BCK(i←v10316, limit57)
)) ) = char←v6628;
};
};
}
else {
SOURCE(7693, 23)
{
word var←c25096;
var←c25096 = (word) ROSNormalize←P1260(self←v6600);
};
SOURCE(7718, 20)
(* (( (ptr) self←v6600)+7) ) = 1;
SOURCE(7740, 22)
{
word var←c25128;
var←c25128 = (* (( (ptr) self←v6600)+4) );
{
word limit58;
(* ((( (bPt) var←c25128)+4)+(
limit58 = (word) (* (( (hPt) var←c25128)+1) ),
BCK(0, limit58)
)) ) = char←v6628;
};
};
};
}
static void OutputRopeStreamEraseChar←P1380(self←v6688, char←v6716)
word self←v6688;
word char←v6716;
{
register ptr gf←c26344 = (ptr) &globalframe;
/* OutputRopeStreamEraseChar: */
SOURCE(7769, 260)
SOURCE(7832, 197)
if (((* (( (ptr) self←v6688)+7) ) > 0)) {
SOURCE(7861, 43)
{
word idx59;
(* (( (ptr) self←v6688)+7) ) = (
idx59 = (word) ((* (( (ptr) self←v6688)+7) ) - 1),
SGNCK(idx59)
);
};
}
else {
SOURCE(7904, 127)
{
word rope←v10360;
word size←v10388;
SOURCE(7906, 31)
rope←v10360 = (word) ROSNormalize←P1260(self←v6688);
SOURCE(7939, 27)
{
word pd60;
pd60 = (* (( (ptr) (* (( (ptr) gf←c26344)+113)/* var←c24360 */ ))+15) );
size←v10388 = (word) ( *( (fPt) ((* (ptr) pd60 ))))(rope←v10360, pd60);
};
SOURCE(7968, 61)
if (( (int)size←v10388 > (int)0)) {
SOURCE(7983, 46)
{
word pd61;
pd61 = (* (( (ptr) (* (( (ptr) gf←c26344)+113)/* var←c24360 */ ))+17) );
(* (( (ptr) self←v6688)+1) ) = (word) ( *( (fPt) ((* (ptr) pd61 ))))(rope←v10360, 0, (size←v10388 - 1), pd61);
};
};
};
};
}
static void OutputRopeStreamReset←P1440(self←v6776)
word self←v6776;
{
/* OutputRopeStreamReset: */
SOURCE(8038, 90)
SOURCE(8085, 21)
(* (( (ptr) self←v6776)+1) ) = 0;
SOURCE(8108, 20)
(* (( (ptr) self←v6776)+7) ) = 0;
}
static word OutputRopeStreamGetIndex←P1500(self←v6836)
word self←v6836;
{
register ptr gf←c26376 = (ptr) &globalframe;
word var←c6880;
/* OutputRopeStreamGetIndex: */
SOURCE(8134, 181)
SOURCE(8198, 117)
if (((* (( (ptr) self←v6836)+1) ) == 0)) {
SOURCE(8226, 30)
return((* (( (ptr) self←v6836)+7) ));
}
else {
SOURCE(8256, 59)
{
word var←c0288;
{
word var←c25192;
word var←c0287;
var←c25192 = XR←Narrow((* (( (ptr) self←v6836)+1) ), (* (( (ptr) gf←c26376)+15) ));
{
word pd62;
pd62 = (* (( (ptr) (* (( (ptr) gf←c26376)+113)/* var←c24360 */ ))+15) );
var←c0287 = (word) ( *( (fPt) ((* (ptr) pd62 ))))(var←c25192, pd62);
};
var←c0288 = (var←c0287 + (* (( (ptr) self←v6836)+7) ));
};
return(var←c0288);
};
};
}
static word RopeFromROS←P1560(self←v6940, close←v6968)
word self←v6940;
word close←v6968;
{
register ptr gf←c26408 = (ptr) &globalframe;
word var←c7012;
/* RopeFromROS: */
SOURCE(8397, 325)
SOURCE(8469, 253)
if (((* (ptr) self←v6940 ) == (* (( (ptr) gf←c26408)+7)/* OutputRopeStreamProcs←v3392 */ ))) {
SOURCE(8516, 149)
{
word rope←v10432;
SOURCE(8518, 31)
rope←v10432 = (word) ROSNormalize←P1260(self←v6940);
SOURCE(8551, 42)
if ((0 != close←v6968)) {
SOURCE(8565, 28)
(void) RopeStreamClose←P1080(self←v6940, 0);
};
SOURCE(8595, 68)
{
word tc63;
word pd64;
if ((0 != (* (( (ptr) gf←c26408)+8)/* debugRopeFromROS←v3588 */ ))) {
pd64 = (* (( (ptr) (* (( (ptr) gf←c26408)+113)/* var←c24360 */ ))+15) );
tc63 = (word) ( (int)(word) ( *( (fPt) ((* (ptr) pd64 ))))(rope←v10432, pd64) == (int)0);
}
else {
tc63 = (word) 0;
};
if (tc63) {
return(0);
}
else {
return(rope←v10432);
};
};
};
}
else {
SOURCE(8672, 50)
{
W4 var←c0189;
(* (ptr) (word) &var←c0189 ) = 1;
(* (( (ptr) (word) &var←c0189) + 1) ) = self←v6940;
(* (( (ptr) (word) &var←c0189) + 2) ) = 0;
(* (( (ptr) (word) &var←c0189) + 3) ) = 0;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26408)+112)/* var←c24296 */ ))+5) ), (word) &var←c0189);
};
};
}
static void PutRope←P1620(self←v7072, r←v7100, start←v7128, len←v7156)
word self←v7072;
word r←v7100;
word start←v7128;
word len←v7156;
{
register ptr gf←c26440 = (ptr) &globalframe;
word ref←v10476;
word rem←v10504;
/* PutRope: */
SOURCE(8728, 868)
SOURCE(8814, 12)
ref←v10476 = r←v7100;
SOURCE(8828, 35)
{
word pd65;
pd65 = (* (( (ptr) (* (( (ptr) gf←c26440)+113)/* var←c24360 */ ))+15) );
rem←v10504 = ((word) ( *( (fPt) ((* (ptr) pd65 ))))(r←v7100, pd65) - SGNCK(start←v7128));
};
SOURCE(8865, 25)
if (( (int)rem←v10504 < (int)len←v7156)) {
SOURCE(8881, 9)
len←v7156 = rem←v10504;
};
SOURCE(8892, 21)
if (( (int)len←v7156 <= (int)0)) {
SOURCE(8907, 6)
return;
};
SOURCE(8915, 681)
{
word tc66;
word tc67;
word tc69;
if ((ref←v10476 == 0)) { goto then068;};
if (((* (( (ptr) gf←c26440)+15) ) == XR←GetReferentType(ref←v10476))) {
tc69 = (word) ((*(int*)ref←v10476<0) == 0);
}
else {
tc69 = (word) 0;
};
if (tc69) {
then068: ;
tc67 = (word) ((* (ptr) self←v7072 ) == (* (( (ptr) gf←c26440)+7)/* OutputRopeStreamProcs←v3392 */ ));
}
else {
tc67 = (word) 0;
};
if (tc67) {
if (((* (( (ptr) self←v7072)+7) ) == 0)) {
tc66 = (word) 1;
}
else {
tc66 = (word) ( (int)len←v7156 > (int)((* (( (ptr) self←v7072)+6) ) - (* (( (ptr) self←v7072)+7) )));
};
}
else {
tc66 = (word) 0;
};
if (tc66) {
SOURCE(9063, 83)
{
word var←c25256;
word var←c25288;
var←c25256 = (word) ROSNormalize←P1260(self←v7072);
{
word pd70;
pd70 = (* (( (ptr) (* (( (ptr) gf←c26440)+113)/* var←c24360 */ ))+17) );
var←c25288 = (word) ( *( (fPt) ((* (ptr) pd70 ))))(r←v7100, start←v7128, len←v7156, pd70);
};
{
word pd71;
pd71 = (* (( (ptr) (* (( (ptr) gf←c26440)+113)/* var←c24360 */ ))+6) );
(* (( (ptr) self←v7072)+1) ) = (word) ( *( (fPt) ((* (ptr) pd71 ))))(var←c25256, var←c25288, pd71);
};
};
}
else {
SOURCE(9146, 450)
{
word var←c25320;
word var←c25352;
var←c25320 = ref←v10476;
if ((var←c25320 == 0)) {
goto lab←L100019;
};
var←c25352 = XR←GetReferentType(var←c25320);
{
word tc73;
if (((* (( (ptr) gf←c26440)+12) ) == var←c25352)) {
{
word t←v10564;
t←v10564 = var←c25320;
SOURCE(9182, 32)
{
word pd72;
pd72 = (* (( (ptr) (* (( (ptr) gf←c26440)+112)/* var←c24296 */ ))+23) );
(void) ( *( (fPt) ((* (ptr) pd72 ))))(self←v7072, t←v10564, SGNCK(start←v7128), SGNCK(len←v7156), pd72);
};
};
}
else {
if (((* (( (ptr) gf←c26440)+15) ) == var←c25352)) {
if (((*(int*)var←c25320<0) == 0)) {
tc73 = (word) ((*(( short *)var←c25320 + 1)<0) == 0);
}
else {
tc73 = (word) 0;
};
}
else {
tc73 = (word) 0;
};
if (tc73) {
{
word t←v10620;
t←v10620 = var←c25320;
SOURCE(9232, 61)
{
word pd74;
pd74 = (* (( (ptr) (* (( (ptr) gf←c26440)+112)/* var←c24296 */ ))+23) );
(void) ( *( (fPt) ((* (ptr) pd74 ))))(self←v7072, t←v10620, SGNCK(start←v7128), SGNCK(len←v7156), pd74);
};
};
}
else {
lab←L100019: ;
SOURCE(9314, 293)
{
W16 buffer←v10692;
word base←v10720;
SOURCE(9371, 52)
base←v10720 = (word) &buffer←v10692;
SOURCE(9425, 171)
lab←L100022: ;
if (( (int)len←v7156 > (int)0)) {
}
else {
goto lab←L100020;
};
{
word moved←v10812;
SOURCE(9442, 69)
{
/*1*/ W3 var←c25384;
/*1*/ var←c25384.f0 = base←v10720;
/*1*/ var←c25384.f1 = 0;
/*1*/ var←c25384.f2 = (MIN((int)(word), len←v7156, 64));
/*1*/ {
/*1*/ word pd75;
/*1*/ word idx76;
/*1*/ pd75 = (* (( (ptr) (* (( (ptr) gf←c26440)+113)/* var←c24360 */ ))+41) );
/*1*/ moved←v10812 = (
/*1*/ idx76 = (word) ( *( (fPt) ((* (ptr) pd75 ))))(var←c25384, r←v7100, start←v7128, pd75),
/*1*/ SGNCK(idx76)
/*1*/ );
/*1*/ };
/*1*/ };
SOURCE(9513, 41)
{
/*1*/ W3 var←c25416;
/*1*/ var←c25416.f0 = base←v10720;
/*1*/ var←c25416.f1 = 0;
/*1*/ var←c25416.f2 = moved←v10812;
/*1*/ {
/*1*/ word pd77;
/*1*/ pd77 = (* (( (ptr) (* (( (ptr) gf←c26440)+112)/* var←c24296 */ ))+24) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd77 ))))(self←v7072, var←c25416, pd77);
/*1*/ };
/*1*/ };
SOURCE(9556, 21)
start←v7128 = (start←v7128 + moved←v10812);
SOURCE(9579, 17)
len←v7156 = (len←v7156 - moved←v10812);
};
goto lab←L100022;
lab←L100020: ;
};
};
};
};
};
};
};
}
static word TIS←P1680(text←v7228, oldStream←v7256)
word text←v7228;
word oldStream←v7256;
{
register ptr gf←c26472 = (ptr) &globalframe;
word var←c7312;
word self←v10856;
/* TIS: */
SOURCE(9938, 369)
SOURCE(10021, 72)
self←v10856 = ( (oldStream←v7256 != 0) ? oldStream←v7256 : XR←NewObject(32, (* (( (ptr) gf←c26472)+17) )) ) ;
SOURCE(10095, 60)
XR←FillWords(&(* (W7Pt) ((( (ptr) self←v10856)+1))), 7, 0);
(* (ptr) self←v10856 ) = (* (( (ptr) gf←c26472)+9)/* InputTextStreamProcs←v3672 */ );
SOURCE(10165, 31)
SOURCE(10167, 29)
(* (( (ptr) self←v10856)+4) ) = text←v7228;
SOURCE(10236, 57)
{
word x78;
word x79;
(* (( (ptr) self←v10856)+5) ) = (x78 = (* (hPt) text←v7228 ),
x79 = (* (( (hPt) text←v7228)+1) ),
MIN( (unsigned) , x78, x79));
};
SOURCE(10295, 12)
return(self←v10856);
}
static word InputTextStreamGetChar←P1740(self←v7372)
word self←v7372;
{
register ptr gf←c26504 = (ptr) &globalframe;
word var←c7416;
word i←v10900;
/* InputTextStreamGetChar: */
SOURCE(10313, 207)
SOURCE(10376, 25)
i←v10900 = (* (( (ptr) self←v7372)+7) );
SOURCE(10403, 117)
if ((i←v10900 < (* (( (ptr) self←v7372)+5) ))) {
SOURCE(10440, 22)
(* (( (ptr) self←v7372)+7) ) = (i←v10900 + 1);
SOURCE(10464, 23)
{
word var←c0289;
{
word var←c25480;
var←c25480 = (* (( (ptr) self←v7372)+4) );
{
word limit80;
var←c0289 = (word) (* ((( (bPt) var←c25480)+4)+(
limit80 = (word) (* (( (hPt) var←c25480)+1) ),
BCK(i←v10900, limit80)
)) );
};
};
return(var←c0289);
};
}
else {
SOURCE(10494, 26)
{
word var←c0215;
var←c0215 = self←v7372;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26504)+112)/* var←c24296 */ ))+4) ), (word) &var←c0215);
};
};
}
static word InputTextStreamEndOf←P1800(self←v7476)
word self←v7476;
{
word var←c7520;
/* InputTextStreamEndOf: */
SOURCE(10526, 109)
SOURCE(10587, 48)
return(((* (( (ptr) self←v7476)+7) ) >= (* (( (ptr) self←v7476)+5) )));
}
static void InputTextStreamReset←P1860(self←v7580)
word self←v7580;
{
/* InputTextStreamReset: */
SOURCE(10641, 87)
SOURCE(10687, 41)
(* (( (ptr) self←v7580)+7) ) = (* (( (ptr) self←v7580)+5) );
}
static void InputTextStreamBackup←P1920(self←v7640, char←v7668)
word self←v7640;
word char←v7668;
{
register ptr gf←c26536 = (ptr) &globalframe;
word var←c25512;
word var←c25544;
word var←c0290;
/* InputTextStreamBackup: */
SOURCE(10733, 206)
SOURCE(10792, 147)
{
word tc81;
if (((* (( (ptr) self←v7640)+7) ) > 0)) {
var←c25512 = ((* (( (ptr) self←v7640)+7) ) - 1);
var←c25544 = (* (( (ptr) self←v7640)+4) );
{
word limit82;
var←c0290 = (word) (* ((( (bPt) var←c25544)+4)+(
limit82 = (word) (* (( (hPt) var←c25544)+1) ),
BCK(var←c25512, limit82)
)) );
};
tc81 = (word) (var←c0290 == char←v7668);
}
else {
tc81 = (word) 0;
};
if (tc81) {
SOURCE(10860, 43)
{
word idx83;
(* (( (ptr) self←v7640)+7) ) = (
idx83 = (word) ((* (( (ptr) self←v7640)+7) ) - 1),
SGNCK(idx83)
);
};
}
else {
SOURCE(10903, 36)
{
W4 var←c0223;
(* (ptr) (word) &var←c0223 ) = 4;
(* (( (ptr) (word) &var←c0223) + 1) ) = self←v7640;
(* (( (ptr) (word) &var←c0223) + 2) ) = 0;
(* (( (ptr) (word) &var←c0223) + 3) ) = 0;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26536)+112)/* var←c24296 */ ))+5) ), (word) &var←c0223);
};
};
};
}
static word InputTextStreamGetIndex←P1980(self←v7728)
word self←v7728;
{
word var←c7772;
/* InputTextStreamGetIndex: */
SOURCE(10944, 87)
SOURCE(11007, 24)
return((* (( (ptr) self←v7728)+7) ));
}
static void InputTextStreamSetIndex←P2040(self←v7832, index←v7860)
word self←v7832;
word index←v7860;
{
register ptr gf←c26568 = (ptr) &globalframe;
/* InputTextStreamSetIndex: */
SOURCE(11036, 166)
SOURCE(11097, 105)
if ( ( ( (int)index←v7860 >= (int)0) ? ( (int)index←v7860 <= (int)(* (( (ptr) self←v7832)+5) )) : 0 ) ) {
SOURCE(11141, 30)
(* (( (ptr) self←v7832)+7) ) = SGNCK(index←v7860);
}
else {
SOURCE(11171, 31)
{
W4 var←c0228;
(* (ptr) (word) &var←c0228 ) = 6;
(* (( (ptr) (word) &var←c0228) + 1) ) = self←v7832;
(* (( (ptr) (word) &var←c0228) + 2) ) = 0;
(* (( (ptr) (word) &var←c0228) + 3) ) = 0;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26568)+112)/* var←c24296 */ ))+5) ), (word) &var←c0228);
};
};
}
static word InputTextStreamGetLength←P2100(self←v7920)
word self←v7920;
{
word length←v7964;
/* InputTextStreamGetLength: */
SOURCE(11207, 102)
SOURCE(11279, 30)
return((* (( (ptr) self←v7920)+5) ));
}
static word TOS←P2160(text←v8036, oldStream←v8064)
word text←v8036;
word oldStream←v8064;
{
register ptr gf←c26600 = (ptr) &globalframe;
word var←c8120;
word self←v10944;
/* TOS: */
SOURCE(11587, 331)
SOURCE(11661, 72)
self←v10944 = ( (oldStream←v8064 != 0) ? oldStream←v8064 : XR←NewObject(32, (* (( (ptr) gf←c26600)+17) )) ) ;
SOURCE(11735, 61)
XR←FillWords(&(* (W7Pt) ((( (ptr) self←v10944)+1))), 7, 0);
(* (ptr) self←v10944 ) = (* (( (ptr) gf←c26600)+10)/* OutputTextStreamProcs←v3924 */ );
SOURCE(11798, 57)
{
word var←c25608;
{
word pd84;
if ((text←v8036 != 0)) {
var←c25608 = text←v8036;
}
else {
pd84 = (* (( (ptr) (* (( (ptr) gf←c26600)+114)/* var←c24488 */ ))+4) );
var←c25608 = (word) ( *( (fPt) ((* (ptr) pd84 ))))(128, pd84);
};
};
(* (( (ptr) self←v10944)+4) ) = var←c25608;
};
SOURCE(11857, 47)
(* (( (ptr) self←v10944)+6) ) = (* (( (hPt) (* (( (ptr) self←v10944)+4) ))+1) );
SOURCE(11906, 12)
return(self←v10944);
}
static word TextFromTOS←P2220(self←v8180)
word self←v8180;
{
register ptr gf←c26632 = (ptr) &globalframe;
word var←c8224;
/* TextFromTOS: */
SOURCE(11924, 228)
SOURCE(11987, 165)
if (((* (ptr) self←v8180 ) == (* (( (ptr) gf←c26632)+10)/* OutputTextStreamProcs←v3924 */ ))) {
SOURCE(12036, 37)
{
word idx85;
(* (hPt) (* (( (ptr) self←v8180)+4) ) ) = (
idx85 = (* (( (ptr) self←v8180)+7) ),
BCK(idx85, 32768)
);
};
SOURCE(12075, 20)
return((* (( (ptr) self←v8180)+4) ));
}
else {
SOURCE(12102, 50)
{
W4 var←c0238;
(* (ptr) (word) &var←c0238 ) = 1;
(* (( (ptr) (word) &var←c0238) + 1) ) = self←v8180;
(* (( (ptr) (word) &var←c0238) + 2) ) = 0;
(* (( (ptr) (word) &var←c0238) + 3) ) = 0;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26632)+112)/* var←c24296 */ ))+5) ), (word) &var←c0238);
};
};
}
static word AppendOutput←P2280(to←v8296, from←v8324)
word to←v8296;
word from←v8324;
{
register ptr gf←c26664 = (ptr) &globalframe;
word var←c8440;
word self←v10988;
/* AppendOutput: */
SOURCE(12157, 302)
SOURCE(12242, 145)
self←v10988 = XR←NewObject(32, (* (( (ptr) gf←c26664)+17) ));
(* (ptr) self←v10988 ) = (* (( (ptr) gf←c26664)+10)/* OutputTextStreamProcs←v3924 */ );
(* (( (ptr) self←v10988)+4) ) = to←v8296;
(* (( (ptr) self←v10988)+6) ) = (* (( (hPt) to←v8296)+1) );
(* (( (ptr) self←v10988)+7) ) = (* (hPt) to←v8296 );
SOURCE(12389, 10)
(void) ( *( (fPt) ((* (ptr) from←v8324 ))))(self←v10988, from←v8324);
SOURCE(12401, 37)
{
word idx86;
(* (hPt) (* (( (ptr) self←v10988)+4) ) ) = (
idx86 = (* (( (ptr) self←v10988)+7) ),
BCK(idx86, 32768)
);
};
SOURCE(12440, 19)
return((* (( (ptr) self←v10988)+4) ));
}
static void OutputTextStreamPutChar←P2340(self←v8512, char←v8540)
word self←v8512;
word char←v8540;
{
register ptr gf←c26696 = (ptr) &globalframe;
word i←v11032;
/* OutputTextStreamPutChar: */
SOURCE(12465, 408)
SOURCE(12526, 25)
i←v11032 = (* (( (ptr) self←v8512)+7) );
SOURCE(12553, 320)
if ((i←v11032 < (* (( (ptr) self←v8512)+6) ))) {
SOURCE(12591, 22)
(* (( (ptr) self←v8512)+7) ) = (i←v11032 + 1);
SOURCE(12615, 22)
{
word var←c25672;
var←c25672 = (* (( (ptr) self←v8512)+4) );
{
word limit87;
(* ((( (bPt) var←c25672)+4)+(
limit87 = (word) (* (( (hPt) var←c25672)+1) ),
BCK(i←v11032, limit87)
)) ) = char←v8540;
};
};
}
else {
{
word var←c25704;
word var←c0291;
SOURCE(12646, 22)
(* (hPt) (* (( (ptr) self←v8512)+4) ) ) = BCK(i←v11032, 32768);
SOURCE(12670, 51)
{
word pd88;
pd88 = (* (( (ptr) (* (( (ptr) gf←c26696)+114)/* var←c24488 */ ))+11) );
(* (( (ptr) self←v8512)+4) ) = (word) ( *( (fPt) ((* (ptr) pd88 ))))((* (( (ptr) self←v8512)+4) ), char←v8540, pd88);
};
SOURCE(12723, 37)
(* (( (ptr) self←v8512)+7) ) = (* (hPt) (* (( (ptr) self←v8512)+4) ) );
SOURCE(12762, 47)
(* (( (ptr) self←v8512)+6) ) = (* (( (hPt) (* (( (ptr) self←v8512)+4) ))+1) );
SOURCE(12811, 62)
if (((* (( (ptr) self←v8512)+7) ) != (i←v11032 + 1))) { goto then089;};
var←c25704 = (* (( (ptr) self←v8512)+4) );
{
word limit90;
var←c0291 = (word) (* ((( (bPt) var←c25704)+4)+(
limit90 = (word) (* (( (hPt) var←c25704)+1) ),
BCK(i←v11032, limit90)
)) );
};
if ((var←c0291 != char←v8540)) {
then089: ;
SOURCE(12873, 5)
(void) XR←RaiseUnnamedError();
};
};
};
}
static void OutputTextStreamEraseChar←P2400(self←v8600, char←v8628)
word self←v8600;
word char←v8628;
{
/* OutputTextStreamEraseChar: */
SOURCE(12902, 127)
SOURCE(12965, 64)
if (((* (( (ptr) self←v8600)+7) ) > 0)) {
SOURCE(12992, 37)
{
word idx91;
(* (( (ptr) self←v8600)+7) ) = (
idx91 = (word) ((* (( (ptr) self←v8600)+7) ) - 1),
SGNCK(idx91)
);
};
};
}
static void OutputTextStreamReset←P2460(self←v8688)
word self←v8688;
{
/* OutputTextStreamReset: */
SOURCE(13034, 67)
SOURCE(13081, 20)
(* (( (ptr) self←v8688)+7) ) = 0;
}
static word OutputTextStreamGetIndex←P2520(self←v8748)
word self←v8748;
{
word var←c8792;
/* OutputTextStreamGetIndex: */
SOURCE(13106, 88)
SOURCE(13170, 24)
return((* (( (ptr) self←v8748)+7) ));
}
static word OutputTextStreamGetLength←P2580(self←v8852)
word self←v8852;
{
word var←c8896;
/* OutputTextStreamGetLength: */
SOURCE(13199, 89)
SOURCE(13264, 24)
return((* (( (ptr) self←v8852)+7) ));
}
/* file: IOSimpleStreamsImpl, module: IOSimpleStreamsImpl, compiled at: May 20, 1992 4:32:59 pm PDT */
extern void XR←install←IOSimpleStreamsImpl() {
NoName←Q3612();
}
extern void XR←run←IOSimpleStreamsImpl() { XR←Start(&globalframe); }