/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1992 by Xerox Corporation. All rights reserved. */
/* time: February 21, 1992 9:35:34 pm PST */
/* C2C version: October 16, 1990 (native) */
/* ref-counting: off */
/* file: IOEditedStreamImpl, module: IOEditedStreamImpl */
/* switches: bcfhklnouw */
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
static char versionStamp[] = "@(#)mob←version [4237070766,2745193541] IOEditedStreamImpl";
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;} W2;
typedef struct {word f0, f1, f2, f3;} W4;
typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7;
typedef struct {W16 f; word r;} W17;
#define SOURCE(p, l) /* source p, l */
#define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) )
#define MIN(cast, x, y) ( ( cast x) < ( cast y) ? (x) : (y) )
#define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i )
#define IOP2(op, x, y) ( (word) ((x) op (y)) )
static void NoName←Q3108();
static void IOEditedStreamImpl←P0();
static word InlineLookupProc←P60();
static void GetDeliverWhen←P120();
static void SetDeliverWhen←P180();
static void AppendBufferChars←P240();
static void UnAppendBufferChars←P300();
static void SetMode←P360();
static void IsACR←P420();
static void IsANL←P480();
static word Create←P540();
static void EditedStreamAppendBufferChars←P600();
static word Append1←P2208();
static void AppendBufferChar←P660();
static void EditedStreamUnAppendBufferChars←P720();
static void UnAppendBufferChar←P780();
static void EditedStreamSetMode←P840();
static void EditedStreamGetDeliverWhen←P900();
static void EditedStreamSetDeliverWhen←P960();
static word EditedStreamGetChar←P1020();
static word NoName←Q3168();
static word NoName←Q3228();
static word IsEditCommand←P2364();
static void BackChar←P2424();
static void BackWord←P2484();
static void BackLine←P2544();
static word EditedStreamEndOf←P1080();
static word EditedStreamCharsAvail←P1140();
static void EditedStreamBackup←P1200();
static void EditedStreamSetEcho←P1260();
static word EditedStreamGetEcho←P1320();
static void EditedStreamReset←P1380();
static void SetEcho←P1440();
static word GetEcho←P1500();
static void DefaultSetEchoSetEcho←P1560();
static word DefaultSetEchoGetEcho←P1620();
static void DefaultSetEchoBackup←P1680();
static word NoName←Q3288();
static word DefaultSetEchoGetChar←P1740();
static word DefaultSetEchoGetBlock←P1800();
static word DefaultSetEchoUnsafeGetBlock←P1860();
static word DefaultSetEchoEndOf←P1920();
static word DefaultSetEchoCharsAvail←P1980();
static void DefaultSetEchoReset←P2040();
static word AddStreamProcs←P2100();
static void NoName←Q3348();
static void NoName←Q3408();
static void NoName←Q3468();
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[52];} string3 = {3145780, "\262\260\005\004\163\145\154\146\216\257\300\015\277\004\146\300\034\367\146\045\112\064\261\260\010\007\157\154\144\105\143\150\157\216\257\300\015\277\004\146\300\034\367\146\045\112\064\261\000\000\000"};
static struct {unsigned f; char r[16];} string4 = {851984, "\257\300\374\214\221\256\300\243\240\124\105\102\124\000\000"};
static struct {unsigned f; char r[4];} string5 = {131074, "\004\003\000"};
static struct {unsigned f; char r[164];} string6 = {10485924, "\262\260\005\004\163\145\154\146\216\257\300\015\277\004\146\300\034\367\146\045\112\064\261\260\005\004\160\162\157\143\262\260\005\004\143\150\141\162\243\007\006\142\165\146\146\145\162\216\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\007\006\163\164\162\145\141\155\216\257\300\015\277\004\146\300\034\367\146\045\112\064\010\007\143\157\156\164\145\170\164\217\261\260\013\012\141\160\160\145\156\144\103\150\141\162\232\011\010\141\143\164\151\166\141\164\145\232\261\010\007\143\157\156\164\145\170\164\217\261\000\000\000"};
static struct {unsigned f; char r[48];} string7 = {3080240, "\262\260\005\004\163\145\154\146\216\257\300\015\277\004\146\300\034\367\146\045\112\064\007\006\145\143\150\157\124\157\216\257\300\015\277\004\146\300\034\367\146\045\112\064\261\260\261"};
static struct {unsigned f; char r[164];} string8 = {10485924, "\262\260\005\004\163\145\154\146\216\257\300\015\277\004\146\300\034\367\146\045\112\064\005\004\160\162\157\143\262\260\005\004\143\150\141\162\243\007\006\142\165\146\146\145\162\216\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\007\006\163\164\162\145\141\155\216\257\300\015\277\004\146\300\034\367\146\045\112\064\010\007\143\157\156\164\145\170\164\217\261\260\013\012\141\160\160\145\156\144\103\150\141\162\232\011\010\141\143\164\151\166\141\164\145\232\261\010\007\143\157\156\164\145\170\164\217\261\260\261\000\000\000"};
static struct {unsigned f; char r[44];} string9 = {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[52];} string10 = {3145780, "\262\260\007\006\163\164\162\145\141\155\216\257\300\015\277\004\146\300\034\367\146\045\112\064\006\005\143\150\141\162\163\216\257\300\363\223\326\161\300\017\164\046\072\104\350\261\260\261\000\000\000"};
static struct {unsigned f; char r[16];} string11 = {851984, "\257\300\374\214\221\256\300\243\240\124\105\101\114\000\000"};
static struct {unsigned f; char r[4];} string12 = {131074, "\004-\000"};
static struct {unsigned f; char r[44];} string13 = {2818092, "\262\260\007\006\163\164\162\145\141\155\216\257\300\015\277\004\146\300\034\367\146\045\112\064\007\006\156\103\150\141\162\163\210\241\000\300\177\377\377\377\261\260\261"};
static struct {unsigned f; char r[84];} string14 = {5242964, "\262\260\007\006\163\164\162\145\141\155\216\257\300\015\277\004\146\300\034\367\146\045\112\064\006\005\163\164\165\146\146\216\257\300\363\223\326\161\300\017\164\046\072\104\350\016\015\160\145\156\144\151\156\147\104\145\154\145\164\145\232\016\015\145\143\150\157\101\163\164\145\162\151\163\153\163\232\261\260\261\000\000\000"};
static struct {unsigned f; char r[8];} string15 = {458760, "SetMode"};
static struct {unsigned f; char r[8];} string16 = {458760, "SetEcho"};
static struct {unsigned f; char r[20];} string17 = {1245204, "UnAppendBufferChars"};
static struct {unsigned f; char r[20];} string18 = {1114132, "AppendBufferChars\000\000"};
static struct {unsigned f; char r[16];} string19 = {917520, "SetDeliverWhen\000"};
static struct {unsigned f; char r[16];} string20 = {917520, "GetDeliverWhen\000"};
static struct {unsigned f; char r[8];} string21 = {458760, "GetEcho"};
static struct {unsigned f; char r[8];} string22 = {393224, "Edited\000"};
static struct {unsigned f; char r[16];} string23 = {851984, "\257\300\374\214\221\256\300\243\240\124\105\100\164\000\000"};
static struct {unsigned f; char r[12];} string24 = {720907, "\006\003\020\001\024\001\100\114\004\100\377"};
static struct {unsigned f; char r[16];} string25 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"};
static struct {unsigned f; char r[16];} string26 = {851984, "\257\300\165\000\243\166\300\177\026\106\323\100\150\000\000"};
static struct {unsigned f; char r[16];} string27 = {851984, "\257\300\332\223\177\020\300\304\076\102\260\100\164\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\275\320\070\317\300\004\110\363\366\100\150\000\000"};
static struct {unsigned f; char r[16];} string30 = {851984, "\257\300\235\332\224\345\300\052\031\354\223\100\150\000\000"};
static struct {
word f0[27]; 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[7];
} globalframe = {
{0}, (word) AddStreamProcs←P2100, 0, (word) DefaultSetEchoReset←P2040,
0, (word) DefaultSetEchoCharsAvail←P1980, 0, (word) DefaultSetEchoEndOf←P1920,
0, (word) DefaultSetEchoUnsafeGetBlock←P1860, 0, (word) DefaultSetEchoGetBlock←P1800,
0, (word) DefaultSetEchoGetChar←P1740, 0, (word) DefaultSetEchoBackup←P1680,
0, (word) DefaultSetEchoGetEcho←P1620, 0, (word) DefaultSetEchoSetEcho←P1560,
0, (word) GetEcho←P1500, 0, (word) SetEcho←P1440,
0, (word) EditedStreamReset←P1380, 0, (word) EditedStreamGetEcho←P1320,
0, (word) EditedStreamSetEcho←P1260, 0, (word) EditedStreamBackup←P1200,
0, (word) EditedStreamCharsAvail←P1140, 0, (word) EditedStreamEndOf←P1080,
0, (word) EditedStreamGetChar←P1020, 0, (word) EditedStreamSetDeliverWhen←P960,
0, (word) EditedStreamGetDeliverWhen←P900, 0, (word) EditedStreamSetMode←P840,
0, (word) UnAppendBufferChar←P780, 0, (word) EditedStreamUnAppendBufferChars←P720,
0, (word) AppendBufferChar←P660, 0, (word) EditedStreamAppendBufferChars←P600,
0, (word) Create←P540, 0, (word) IsANL←P480,
0, (word) IsACR←P420, 0, (word) SetMode←P360,
0, (word) UnAppendBufferChars←P300, 0, (word) AppendBufferChars←P240,
0, (word) SetDeliverWhen←P180, 0, (word) GetDeliverWhen←P120,
0, (word) InlineLookupProc←P60, 0, (word) IOEditedStreamImpl←P0,
{0}
};
static void NoName←Q3108()
{
register ptr gf←c0287 = (ptr) &globalframe;
word var←c26664;
(* (( (ptr) gf←c0287)+7) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2);
(* (( (ptr) gf←c0287)+8) ) = (word) XR←GetTypeIndexS((word) (&string3));
(* (( (ptr) gf←c0287)+10) ) = (word) XR←GetTypeIndex((word) &string4, 0, (word) &string5);
(* (( (ptr) gf←c0287)+11) ) = (word) XR←GetTypeIndexS((word) (&string6));
(* (( (ptr) gf←c0287)+12) ) = (word) XR←GetTypeIndexS((word) (&string7));
(* (( (ptr) gf←c0287)+13) ) = (word) XR←GetTypeIndexS((word) (&string8));
(* (( (ptr) gf←c0287)+14) ) = (word) XR←GetTypeIndexS((word) (&string9));
(* (( (ptr) gf←c0287)+15) ) = (word) XR←GetTypeIndexS((word) (&string10));
(* (( (ptr) gf←c0287)+16) ) = (word) XR←GetTypeIndex((word) &string11, 0, (word) &string12);
(* (( (ptr) gf←c0287)+17) ) = (word) XR←GetTypeIndexS((word) (&string13));
(* (( (ptr) gf←c0287)+18) ) = (word) XR←GetTypeIndexS((word) (&string14));
(* (ptr) (( (bPt) gf←c0287)+76) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0287)+7) ), (word) &string15);
(* (ptr) (( (bPt) gf←c0287)+80) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0287)+7) ), (word) &string16);
(* (ptr) (( (bPt) gf←c0287)+84) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0287)+7) ), (word) &string17);
(* (ptr) (( (bPt) gf←c0287)+88) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0287)+7) ), (word) &string18);
(* (ptr) (( (bPt) gf←c0287)+92) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0287)+7) ), (word) &string19);
(* (ptr) (( (bPt) gf←c0287)+96) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0287)+7) ), (word) &string20);
(* (ptr) (( (bPt) gf←c0287)+100) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0287)+7) ), (word) &string21);
(* (ptr) (( (bPt) gf←c0287)+104) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0287)+7) ), (word) &string22);
(void) XR←DeclareGlobalFrame((word) "IOEditedStreamImpl", &globalframe, (word) XR←GetTypeIndex((word) &string23, 0, (word) &string24)
, (word) (( (bPt) gf←c0287)+388)/* var←c24424 */ );
var←c26664 = (word) XR←ImportInterface((word) "IO", (word) XR←GetTypeIndexS((word) (&string25)), 103);
(* (( (ptr) gf←c0287)+99)/* var←c24488 */ ) = var←c26664;
(void) XR←ImportProcS(var←c26664, 1053698);
(void) XR←ImportProcS(var←c26664, 68160002);
(void) XR←ImportProcS(var←c26664, 1053444);
(void) XR←ImportProcS(var←c26664, 68159748);
(void) XR←ImportProcS(var←c26664, 268033);
(void) XR←ImportProcS(var←c26664, 67636482);
(void) XR←ImportProcS(var←c26664, 67373825);
(void) XR←ImportProcS(var←c26664, 67372801);
(void) XR←ImportProcS(var←c26664, 529922);
(void) XR←ImportProcS(var←c26664, 528642);
(void) XR←ImportProcS(var←c26664, 67921155);
(void) XR←ImportProcS(var←c26664, 72115219);
var←c26664 = (word) XR←ImportInterface((word) "IOUtils", (word) XR←GetTypeIndexS((word) (&string26)), 27);
(* (( (ptr) gf←c0287)+100)/* var←c24584 */ ) = var←c26664;
(void) XR←ImportProcS(var←c26664, 267521);
(void) XR←ImportProcS(var←c26664, 1053700);
(void) XR←ImportProcS(var←c26664, 792835);
var←c26664 = (word) XR←ImportInterface((word) "RefText", (word) XR←GetTypeIndexS((word) (&string27)), 26);
(* (( (ptr) gf←c0287)+102)/* var←c25320 */ ) = var←c26664;
(void) XR←ImportProcS(var←c26664, 67371009);
(void) XR←ImportProcS(var←c26664, 68158468);
(void) XR←ImportProcS(var←c26664, 67634946);
var←c26664 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string28)), 43);
(* (( (ptr) gf←c0287)+101)/* var←c25160 */ ) = var←c26664;
(void) XR←ImportProcS(var←c26664, 68163076);
var←c26664 = (word) XR←ImportInterface((word) "RuntimeError", (word) XR←GetTypeIndexS((word) (&string29)), 27);
(* (( (ptr) gf←c0287)+103)/* var←c26312 */ ) = var←c26664;
var←c26664 = (word) XR←ExportInterface((word) "EditedStream", (word) XR←GetTypeIndexS((word) (&string30)), 11);
(* (( (ptr) gf←c0287)+104)/* var←c26696 */ ) = var←c26664;
(void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+316)/* var←c24136 */ , 68157444);
(void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+332)/* var←c24200 */ , 135266564);
(void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+324)/* var←c24168 */ , 135266820);
(void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+372)/* var←c24360 */ , 134480641);
(void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+364)/* var←c24328 */ , 787459);
(void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+356)/* var←c24296 */ , 525570);
(void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+348)/* var←c24264 */ , 525826);
(void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+340)/* var←c24232 */ , 1050372);
(void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+196)/* var←c23656 */ , 526338);
(void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+188)/* var←c23624 */ , 67373313);
(void) XR←ExportProcS(var←c26664, (word) (( (bPt) gf←c0287)+108)/* var←c23304 */ , 67897859);
}
static void IOEditedStreamImpl←P0(formal←c068, formal←c053)
word formal←c068;
word formal←c053;
{
register ptr gf←c26728 = (ptr) &globalframe;
/* IOEditedStreamImpl: */
SOURCE(111, 14313)
SOURCE(13168, 300)
{
word var←c24456;
{
W19 var←c055;
(* (ptr) (word) &var←c055 ) = 0;
(* (( (ptr) (word) &var←c055) + 1) ) = (* (( (ptr) gf←c26728)+26) );
(* (( (ptr) (word) &var←c055) + 2) ) = (word) (( (bPt) gf←c26728)+252)/* var←c23880 */ ;
(* (( (ptr) (word) &var←c055) + 3) ) = 0;
(* (( (ptr) (word) &var←c055) + 4) ) = 0;
(* (( (ptr) (word) &var←c055) + 5) ) = (word) (( (bPt) gf←c26728)+244)/* var←c23848 */ ;
(* (( (ptr) (word) &var←c055) + 6) ) = (word) (( (bPt) gf←c26728)+236)/* var←c23816 */ ;
(* (( (ptr) (word) &var←c055) + 7) ) = (word) (( (bPt) gf←c26728)+228)/* var←c23784 */ ;
(* (( (ptr) (word) &var←c055) + 8) ) = 0;
(* (( (ptr) (word) &var←c055) + 9) ) = 0;
(* (( (ptr) (word) &var←c055) + 10) ) = 0;
(* (( (ptr) (word) &var←c055) + 11) ) = 0;
(* (( (ptr) (word) &var←c055) + 12) ) = (word) (( (bPt) gf←c26728)+204)/* var←c23688 */ ;
(* (( (ptr) (word) &var←c055) + 13) ) = 0;
(* (( (ptr) (word) &var←c055) + 14) ) = 0;
(* (( (ptr) (word) &var←c055) + 15) ) = 0;
(* (( (ptr) (word) &var←c055) + 16) ) = 0;
(* (( (ptr) (word) &var←c055) + 17) ) = 0;
(* (( (ptr) (word) &var←c055) + 18) ) = 0;
{
word pd31;
pd31 = (* (( (ptr) (* (( (ptr) gf←c26728)+99)/* var←c24488 */ ))+104) );
var←c24456 = (word) ( *( (fPt) ((* (ptr) pd31 ))))((word) (&var←c055), pd31);
};
};
(* (( (ptr) gf←c26728)+4)/* EditedStreamProcs←v3336 */ ) = (word) AddStreamProcs←P2100(var←c24456, (word) (( (bPt) gf←c26728)+220)
/* var←c23752 */ , (word) (( (bPt) gf←c26728)+212)/* var←c23720 */ );
};
SOURCE(13470, 109)
{
word var←c24520;
{
word var←c24552;
var←c24552 = XR←NewObject(4, (* (( (ptr) gf←c26728)+11) ));
(* (ptr) var←c24552 ) = (word) (( (bPt) gf←c26728)+268)/* var←c23944 */ ;
var←c24520 = var←c24552;
};
{
word pd32;
pd32 = (* (( (ptr) (* (( (ptr) gf←c26728)+100)/* var←c24584 */ ))+29) );
(void) ( *( (fPt) ((* (ptr) pd32 ))))((* (( (ptr) gf←c26728)+4)/* EditedStreamProcs←v3336 */ ), (* (( (ptr) gf←c26728)+24)
), var←c24520, pd32);
};
};
SOURCE(13581, 109)
{
word var←c24616;
{
word var←c24648;
var←c24648 = XR←NewObject(4, (* (( (ptr) gf←c26728)+13) ));
(* (ptr) var←c24648 ) = (word) (( (bPt) gf←c26728)+260)/* var←c23912 */ ;
var←c24616 = var←c24648;
};
{
word pd33;
pd33 = (* (( (ptr) (* (( (ptr) gf←c26728)+100)/* var←c24584 */ ))+29) );
(void) ( *( (fPt) ((* (ptr) pd33 ))))((* (( (ptr) gf←c26728)+4)/* EditedStreamProcs←v3336 */ ), (* (( (ptr) gf←c26728)+23)
), var←c24616, pd33);
};
};
SOURCE(13692, 118)
{
word var←c24680;
{
word var←c24712;
var←c24712 = XR←NewObject(4, (* (( (ptr) gf←c26728)+15) ));
(* (ptr) var←c24712 ) = (word) (( (bPt) gf←c26728)+308)/* var←c24104 */ ;
var←c24680 = var←c24712;
};
{
word pd34;
pd34 = (* (( (ptr) (* (( (ptr) gf←c26728)+100)/* var←c24584 */ ))+29) );
(void) ( *( (fPt) ((* (ptr) pd34 ))))((* (( (ptr) gf←c26728)+4)/* EditedStreamProcs←v3336 */ ), (* (( (ptr) gf←c26728)+22)
), var←c24680, pd34);
};
};
SOURCE(13812, 124)
{
word var←c24744;
{
word var←c24776;
var←c24776 = XR←NewObject(4, (* (( (ptr) gf←c26728)+17) ));
(* (ptr) var←c24776 ) = (word) (( (bPt) gf←c26728)+292)/* var←c24040 */ ;
var←c24744 = var←c24776;
};
{
word pd35;
pd35 = (* (( (ptr) (* (( (ptr) gf←c26728)+100)/* var←c24584 */ ))+29) );
(void) ( *( (fPt) ((* (ptr) pd35 ))))((* (( (ptr) gf←c26728)+4)/* EditedStreamProcs←v3336 */ ), (* (( (ptr) gf←c26728)+21)
), var←c24744, pd35);
};
};
SOURCE(13938, 88)
{
word var←c24808;
{
word var←c24840;
var←c24840 = XR←NewObject(4, (* (( (ptr) gf←c26728)+18) ));
(* (ptr) var←c24840 ) = (word) (( (bPt) gf←c26728)+276)/* var←c23976 */ ;
var←c24808 = var←c24840;
};
{
word pd36;
pd36 = (* (( (ptr) (* (( (ptr) gf←c26728)+100)/* var←c24584 */ ))+29) );
(void) ( *( (fPt) ((* (ptr) pd36 ))))((* (( (ptr) gf←c26728)+4)/* EditedStreamProcs←v3336 */ ), (* (( (ptr) gf←c26728)+19)
), var←c24808, pd36);
};
};
SOURCE(14028, 396)
{
word var←c24872;
{
W19 var←c067;
(* (ptr) (word) &var←c067 ) = 2;
(* (( (ptr) (word) &var←c067) + 1) ) = (* (( (ptr) gf←c26728)+20) );
(* (( (ptr) (word) &var←c067) + 2) ) = (word) (( (bPt) gf←c26728)+156)/* var←c23496 */ ;
(* (( (ptr) (word) &var←c067) + 3) ) = (word) (( (bPt) gf←c26728)+148)/* var←c23464 */ ;
(* (( (ptr) (word) &var←c067) + 4) ) = (word) (( (bPt) gf←c26728)+140)/* var←c23432 */ ;
(* (( (ptr) (word) &var←c067) + 5) ) = (word) (( (bPt) gf←c26728)+132)/* var←c23400 */ ;
(* (( (ptr) (word) &var←c067) + 6) ) = (word) (( (bPt) gf←c26728)+124)/* var←c23368 */ ;
(* (( (ptr) (word) &var←c067) + 7) ) = (word) (( (bPt) gf←c26728)+164)/* var←c23528 */ ;
(* (( (ptr) (word) &var←c067) + 8) ) = 0;
(* (( (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←c26728)+116)/* var←c23336 */ ;
(* (( (ptr) (word) &var←c067) + 13) ) = 0;
(* (( (ptr) (word) &var←c067) + 14) ) = 0;
(* (( (ptr) (word) &var←c067) + 15) ) = 0;
(* (( (ptr) (word) &var←c067) + 16) ) = 0;
(* (( (ptr) (word) &var←c067) + 17) ) = 0;
(* (( (ptr) (word) &var←c067) + 18) ) = 0;
{
word pd37;
pd37 = (* (( (ptr) (* (( (ptr) gf←c26728)+99)/* var←c24488 */ ))+104) );
var←c24872 = (word) ( *( (fPt) ((* (ptr) pd37 ))))((word) (&var←c067), pd37);
};
};
(* (( (ptr) gf←c26728)+5)/* setEchoProcs←v3896 */ ) = (word) AddStreamProcs←P2100(var←c24872, (word) (( (bPt) gf←c26728)+180)
/* var←c23592 */ , (word) (( (bPt) gf←c26728)+172)/* var←c23560 */ );
};
}
static word InlineLookupProc←P60(self←v5100, operation←v5128)
word self←v5100;
word operation←v5128;
{
word proc←v5172;
/* InlineLookupProc: */
SOURCE(984, 219)
SOURCE(984, 219)
proc←v5172 = 0;
SOURCE(1078, 125)
{
register word l←v9412;
l←v9412 = (* (( (ptr) (* (ptr) self←v5100 ))+17) );
lab←L100003: ;
if ((l←v9412 != 0)) {
}
else {
goto lab←L100000;
};
SOURCE(1152, 51)
if (((* (ptr) (* (ptr) l←v9412 ) ) == operation←v5128)) {
SOURCE(1184, 19)
return((* (( (ptr) (* (ptr) l←v9412 ))+1) ));
};
l←v9412 = (* (( (ptr) l←v9412)+1) );
goto lab←L100003;
lab←L100000: ;
};
SOURCE(984, 219)
return(proc←v5172);
}
static void GetDeliverWhen←P120(formal←c080, self←v5244)
word formal←c080;
word self←v5244;
{
register ptr gf←c26760 = (ptr) &globalframe;
word proc←v5288;
word context←v5316;
word p←v9456;
/* GetDeliverWhen: */
SOURCE(1219, 298)
SOURCE(1219, 298)
proc←v5288 = 0;
SOURCE(1219, 298)
context←v5316 = 0;
SOURCE(1316, 52)
p←v9456 = (word) InlineLookupProc←P60(self←v5244, (* (( (ptr) gf←c26760)+24) ));
SOURCE(1370, 147)
if ((p←v9456 != 0)) {
SOURCE(1388, 63)
{
W2 var←c24904;
{
word pd38;
pd38 = (* (ptr) XR←Narrow(p←v9456, (* (( (ptr) gf←c26760)+11) )) );
(void) ( *( (fPt) ((* (ptr) pd38 ))))((word) &var←c24904, self←v5244, pd38);
};
context←v5316 = var←c24904.f1;
proc←v5288 = XR←CheckProc(var←c24904.f0);
};
/* removed tail goto */
}
else {
SOURCE(1467, 50)
{
W4 var←c079;
(* (ptr) (word) &var←c079 ) = 1;
(* (( (ptr) (word) &var←c079) + 1) ) = self←v5244;
(* (( (ptr) (word) &var←c079) + 2) ) = 0;
(* (( (ptr) (word) &var←c079) + 3) ) = 0;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26760)+99)/* var←c24488 */ ))+5) ), (word) &var←c079);
};
};
(* (ptr) formal←c080 ) = proc←v5288;
(* (( (ptr) formal←c080)+1) ) = context←v5316;
return;
}
static void SetDeliverWhen←P180(self←v5388, proc←v5416, context←v5444)
word self←v5388;
word proc←v5416;
word context←v5444;
{
register ptr gf←c26792 = (ptr) &globalframe;
word p←v9524;
/* SetDeliverWhen: */
SOURCE(1523, 286)
SOURCE(1611, 52)
p←v9524 = (word) InlineLookupProc←P60(self←v5388, (* (( (ptr) gf←c26792)+23) ));
SOURCE(1665, 144)
if ((p←v9524 != 0)) {
SOURCE(1683, 60)
{
word pd39;
pd39 = (* (ptr) XR←Narrow(p←v9524, (* (( (ptr) gf←c26792)+13) )) );
(void) ( *( (fPt) ((* (ptr) pd39 ))))(self←v5388, proc←v5416, context←v5444, pd39);
};
SOURCE(1745, 7)
return;
}
else {
SOURCE(1759, 50)
{
W4 var←c085;
(* (ptr) (word) &var←c085 ) = 1;
(* (( (ptr) (word) &var←c085) + 1) ) = self←v5388;
(* (( (ptr) (word) &var←c085) + 2) ) = 0;
(* (( (ptr) (word) &var←c085) + 3) ) = 0;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26792)+99)/* var←c24488 */ ))+5) ), (word) &var←c085);
};
};
}
static void AppendBufferChars←P240(stream←v5516, chars←v5544)
word stream←v5516;
word chars←v5544;
{
register ptr gf←c26824 = (ptr) &globalframe;
word p←v9592;
/* AppendBufferChars: */
SOURCE(1815, 267)
SOURCE(1880, 57)
p←v9592 = (word) InlineLookupProc←P60(stream←v5516, (* (( (ptr) gf←c26824)+22) ));
SOURCE(1939, 143)
if ((p←v9592 != 0)) {
SOURCE(1957, 57)
{
word pd40;
pd40 = (* (ptr) XR←Narrow(p←v9592, (* (( (ptr) gf←c26824)+15) )) );
(void) ( *( (fPt) ((* (ptr) pd40 ))))(stream←v5516, chars←v5544, pd40);
};
SOURCE(2016, 7)
return;
}
else {
SOURCE(2030, 52)
{
W4 var←c089;
(* (ptr) (word) &var←c089 ) = 1;
(* (( (ptr) (word) &var←c089) + 1) ) = stream←v5516;
(* (( (ptr) (word) &var←c089) + 2) ) = 0;
(* (( (ptr) (word) &var←c089) + 3) ) = 0;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26824)+99)/* var←c24488 */ ))+5) ), (word) &var←c089);
};
};
}
static void UnAppendBufferChars←P300(stream←v5604, nChars←v5632)
word stream←v5604;
word nChars←v5632;
{
register ptr gf←c26856 = (ptr) &globalframe;
word p←v9660;
/* UnAppendBufferChars: */
SOURCE(2088, 274)
SOURCE(2155, 59)
p←v9660 = (word) InlineLookupProc←P60(stream←v5604, (* (( (ptr) gf←c26856)+21) ));
SOURCE(2216, 146)
if ((p←v9660 != 0)) {
SOURCE(2234, 60)
{
word pd41;
pd41 = (* (ptr) XR←Narrow(p←v9660, (* (( (ptr) gf←c26856)+17) )) );
(void) ( *( (fPt) ((* (ptr) pd41 ))))(stream←v5604, nChars←v5632, pd41);
};
SOURCE(2296, 7)
return;
}
else {
SOURCE(2310, 52)
{
W4 var←c093;
(* (ptr) (word) &var←c093 ) = 1;
(* (( (ptr) (word) &var←c093) + 1) ) = stream←v5604;
(* (( (ptr) (word) &var←c093) + 2) ) = 0;
(* (( (ptr) (word) &var←c093) + 3) ) = 0;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26856)+99)/* var←c24488 */ ))+5) ), (word) &var←c093);
};
};
}
static void SetMode←P360(stream←v5692, stuff←v5720, pendingDelete←v5748, echoAsterisks←v5776)
word stream←v5692;
word stuff←v5720;
word pendingDelete←v5748;
word echoAsterisks←v5776;
{
register ptr gf←c26888 = (ptr) &globalframe;
word p←v9728;
/* SetMode: */
SOURCE(2368, 309)
SOURCE(2465, 47)
p←v9728 = (word) InlineLookupProc←P60(stream←v5692, (* (( (ptr) gf←c26888)+19) ));
SOURCE(2514, 163)
if ((p←v9728 != 0)) {
SOURCE(2532, 77)
{
word pd42;
pd42 = (* (ptr) XR←Narrow(p←v9728, (* (( (ptr) gf←c26888)+18) )) );
(void) ( *( (fPt) ((* (ptr) pd42 ))))(stream←v5692, stuff←v5720, pendingDelete←v5748, echoAsterisks←v5776, pd42);
};
SOURCE(2611, 7)
return;
}
else {
SOURCE(2625, 52)
{
W4 var←c099;
(* (ptr) (word) &var←c099 ) = 1;
(* (( (ptr) (word) &var←c099) + 1) ) = stream←v5692;
(* (( (ptr) (word) &var←c099) + 2) ) = 0;
(* (( (ptr) (word) &var←c099) + 3) ) = 0;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c26888)+99)/* var←c24488 */ ))+5) ), (word) &var←c099);
};
};
}
static void IsACR←P420(formal←c0106, char←v12688, buffer←v12716, stream←v12744, context←v12772)
word formal←c0106;
word char←v12688;
word buffer←v12716;
word stream←v12744;
word context←v12772;
{
word appendChar←v12816;
word activate←v12844;
/* IsACR: */
SOURCE(3064, 104)
SOURCE(3098, 70)
appendChar←v12816 = 1;
if ((char←v12688 == 13)) {
activate←v12844 = 1;
}
else {
activate←v12844 = (char←v12688 == 10);
};
/* removed tail goto */
(* (ptr) formal←c0106 ) = appendChar←v12816;
(* (( (ptr) formal←c0106)+1) ) = activate←v12844;
return;
}
static void IsANL←P480(formal←c0113, char←v12904, buffer←v12932, stream←v12960, context←v12988)
word formal←c0113;
word char←v12904;
word buffer←v12932;
word stream←v12960;
word context←v12988;
{
word appendChar←v13032;
word activate←v13060;
/* IsANL: */
SOURCE(3172, 104)
SOURCE(3206, 70)
appendChar←v13032 = 1;
if ((char←v12904 == 13)) {
activate←v13060 = 1;
}
else {
activate←v13060 = (char←v12904 == 10);
};
/* removed tail goto */
(* (ptr) formal←c0113 ) = appendChar←v13032;
(* (( (ptr) formal←c0113)+1) ) = activate←v13060;
return;
}
static word Create←P540(in←v6136, echoTo←v6164, deliverWhen←v6192, context←v6220)
word in←v6136;
word echoTo←v6164;
word deliverWhen←v6192;
word context←v6220;
{
register ptr gf←c26920 = (ptr) &globalframe;
word var←c6276;
word h←v9796;
/* Create: */
SOURCE(3282, 385)
SOURCE(3400, 214)
{
word var←c24936;
{
word var←c24968;
word var←c25032;
word var←c25096;
{
word var←c25000;
var←c25000 = XR←NewObject(260, (* (( (ptr) gf←c26920)+14) ));
(* (( (hPt) var←c25000)+1) ) = 256;
var←c24968 = var←c25000;
};
{
word var←c25064;
var←c25064 = XR←NewObject(260, (* (( (ptr) gf←c26920)+14) ));
(* (( (hPt) var←c25064)+1) ) = 256;
var←c25032 = var←c25064;
};
var←c25096 = XR←NewObject(32, (* (( (ptr) gf←c26920)+16) ));
(* (ptr) var←c25096 ) = var←c24968;
(* (( (ptr) var←c25096)+2) ) = var←c25032;
(* (( (ptr) var←c25096)+4) ) = XR←CheckProc(deliverWhen←v6192);
(* (( (ptr) var←c25096)+5) ) = context←v6220;
var←c24936 = var←c25096;
};
{
word pd43;
pd43 = (* (( (ptr) (* (( (ptr) gf←c26920)+99)/* var←c24488 */ ))+105) );
h←v9796 = (word) ( *( (fPt) ((* (ptr) pd43 ))))((* (( (ptr) gf←c26920)+4)/* EditedStreamProcs←v3336 */ ), var←c24936, in←v6136, pd43)
;
};
};
SOURCE(3616, 16)
(void) SetEcho←P1440(in←v6136, 0);
SOURCE(3635, 18)
(void) SetEcho←P1440(h←v9796, echoTo←v6164);
SOURCE(3656, 11)
return(h←v9796);
}
static void EditedStreamAppendBufferChars←P600(stream←v6336, chars←v6364)
word stream←v6336;
word chars←v6364;
{
W7 var←c26952;
register ptr gf←c26984 = (ptr) &globalframe;
/* declaration of var←c25128 skipped */
/* declaration of data←v9840 skipped */
/* EditedStreamAppendBufferChars: */
SOURCE(3671, 253)
{
word tmpAddr44;
tmpAddr44 = (word) (( (ptr) &var←c26952)+4)/* var←c25128 */ ;
(* (ptr) tmpAddr44 ) = ( ((word) (fPt) Append1←P2208) );
(* (( (ptr) tmpAddr44) + 1) ) = 1;
};
SOURCE(3741, 50)
var←c26952.f6/* data←v9840 */ = XR←Narrow((* (( (ptr) stream←v6336)+1) ), (* (( (ptr) gf←c26984)+16) ));
SOURCE(3893, 31)
{
word var←c25192;
word pd45;
pd45 = (* (( (ptr) (* (( (ptr) gf←c26984)+101)/* var←c25160 */ ))+26) );
var←c25192 = (word) ( *( (fPt) ((* (ptr) pd45 ))))(chars←v6364, 0, 2147483647, (word) (( (bPt) &var←c26952)+16)/* var←c25128 */ , pd45)
;
};
}
static word Append1←P2208(c←v9944, formal←c27016)
word c←v9944;
word formal←c27016;
{
word quit←v9988;
formal←c27016 = (formal←c27016 - 16);
/* Append1: */
SOURCE(3793, 97)
SOURCE(3842, 25)
(void) AppendBufferChar←P660((* (( (ptr) formal←c27016)+6) ), c←v9944);
SOURCE(3869, 21)
return(0);
}
static void AppendBufferChar←P660(data←v6424, char←v6452)
word data←v6424;
word char←v6452;
{
register ptr gf←c27048 = (ptr) &globalframe;
/* AppendBufferChar: */
SOURCE(3930, 272)
SOURCE(4005, 57)
{
word var←c25224;
{
word var←c25256;
word to←v23228;
word from←v23256;
to←v23228 = (* (( (ptr) data←v6424)+2) );
from←v23256 = char←v6452;
if (((* (hPt) to←v23228 ) >= (* (( (hPt) to←v23228)+1) ))) {
{
word pd46;
pd46 = (* (( (ptr) (* (( (ptr) gf←c27048)+102)/* var←c25320 */ ))+11) );
var←c25256 = (word) ( *( (fPt) ((* (ptr) pd46 ))))(to←v23228, from←v23256, pd46);
};
goto lab←L100007;
};
{
word idx47;
word limit48;
(* ((( (bPt) to←v23228)+4)+(
idx47 = (word) (* (hPt) to←v23228 ),
limit48 = (word) (* (( (hPt) to←v23228)+1) ),
BCK(idx47, limit48)
)) ) = from←v23256;
};
{
word idx49;
(* (hPt) to←v23228 ) = (
idx49 = (word) ((* (hPt) to←v23228 ) + 1),
BCK(idx49, 32768)
);
};
var←c25256 = to←v23228;
lab←L100007: ;
var←c25224 = var←c25256;
};
(* (( (ptr) data←v6424)+2) ) = var←c25224;
};
SOURCE(4064, 138)
if (((* (( (ptr) data←v6424)+3) ) != 0)) {
SOURCE(4096, 106)
if ( ( (0 != (* (( (ptr) data←v6424)+6) )) ? (char←v6452 > 32) : 0 ) ) {
SOURCE(4140, 33)
{
word pd50;
pd50 = (* (( (ptr) (* (( (ptr) gf←c27048)+99)/* var←c24488 */ ))+21) );
(void) ( *( (fPt) ((* (ptr) pd50 ))))((* (( (ptr) data←v6424)+3) ), 42, pd50);
};
}
else {
SOURCE(4173, 29)
{
word pd51;
pd51 = (* (( (ptr) (* (( (ptr) gf←c27048)+99)/* var←c24488 */ ))+21) );
(void) ( *( (fPt) ((* (ptr) pd51 ))))((* (( (ptr) data←v6424)+3) ), char←v6452, pd51);
};
};
};
}
static void EditedStreamUnAppendBufferChars←P720(stream←v6512, nChars←v6540)
word stream←v6512;
word nChars←v6540;
{
register ptr gf←c27080 = (ptr) &globalframe;
word data←v10016;
/* EditedStreamUnAppendBufferChars: */
SOURCE(4211, 219)
SOURCE(4290, 50)
data←v10016 = XR←Narrow((* (( (ptr) stream←v6512)+1) ), (* (( (ptr) gf←c27080)+16) ));
SOURCE(4342, 88)
{
register word i←v10060 = 0;
register word noName←c25352;
{
word x52;
noName←c25352 = (x52 = (* (hPt) (* (( (ptr) data←v10016)+2) ) ),
MIN( (unsigned) , nChars←v6540, x52));
};
if ((i←v10060 >= noName←c25352)) {
goto lab←L100008;
};
lab←L100011: ;
SOURCE(4398, 32)
(void) UnAppendBufferChar←P780(data←v10016);
i←v10060 = (i←v10060 + 1);
if ((i←v10060 < noName←c25352)) {
goto lab←L100011;
};
lab←L100008: ;
};
}
static void UnAppendBufferChar←P780(data←v6600)
word data←v6600;
{
register ptr gf←c27112 = (ptr) &globalframe;
/* UnAppendBufferChar: */
SOURCE(4436, 304)
SOURCE(4501, 193)
if (((* (( (ptr) data←v6600)+3) ) != 0)) {
SOURCE(4531, 163)
{
word char←v10104;
SOURCE(4533, 48)
{
word var←c25384;
word var←c25416;
var←c25384 = ((* (hPt) (* (( (ptr) data←v6600)+2) ) ) - 1);
var←c25416 = (* (( (ptr) data←v6600)+2) );
{
word limit53;
char←v10104 = (word) (* ((( (bPt) var←c25416)+4)+(
limit53 = (word) (* (( (hPt) var←c25416)+1) ),
BCK(var←c25384, limit53)
)) );
};
};
SOURCE(4583, 111)
if ( ( (0 != (* (( (ptr) data←v6600)+6) )) ? (char←v10104 > 32) : 0 ) ) {
SOURCE(4627, 35)
{
word pd54;
pd54 = (* (( (ptr) (* (( (ptr) gf←c27112)+99)/* var←c24488 */ ))+26) );
(void) ( *( (fPt) ((* (ptr) pd54 ))))((* (( (ptr) data←v6600)+3) ), 42, pd54);
};
}
else {
SOURCE(4662, 32)
{
word pd55;
pd55 = (* (( (ptr) (* (( (ptr) gf←c27112)+99)/* var←c24488 */ ))+26) );
(void) ( *( (fPt) ((* (ptr) pd55 ))))((* (( (ptr) data←v6600)+3) ), char←v10104, pd55);
};
};
};
};
SOURCE(4697, 43)
{
word idx56;
(* (hPt) (* (( (ptr) data←v6600)+2) ) ) = (
idx56 = (word) ((* (hPt) (* (( (ptr) data←v6600)+2) ) ) - 1),
BCK(idx56, 32768)
);
};
}
static void EditedStreamSetMode←P840(stream←v6660, stuff←v6688, pendingDelete←v6716, echoAsterisks←v6744)
word stream←v6660;
word stuff←v6688;
word pendingDelete←v6716;
word echoAsterisks←v6744;
{
register ptr gf←c27144 = (ptr) &globalframe;
word data←v10148;
/* EditedStreamSetMode: */
SOURCE(4746, 318)
SOURCE(4849, 50)
data←v10148 = XR←Narrow((* (( (ptr) stream←v6660)+1) ), (* (( (ptr) gf←c27144)+16) ));
SOURCE(4901, 22)
(* (hPt) (* (( (ptr) data←v10148)+2) ) ) = 0;
SOURCE(4925, 33)
(* (( (ptr) data←v10148)+1) ) = (* (hPt) (* (ptr) data←v10148 ) );
SOURCE(4960, 34)
(* (( (ptr) data←v10148)+7) ) = pendingDelete←v6716;
SOURCE(4996, 34)
(* (( (ptr) data←v10148)+6) ) = echoAsterisks←v6744;
SOURCE(5032, 32)
(void) AppendBufferChars←P240(stream←v6660, stuff←v6688);
}
static void EditedStreamGetDeliverWhen←P900(formal←c0159, self←v6804)
word formal←c0159;
word self←v6804;
{
register ptr gf←c27176 = (ptr) &globalframe;
word proc←v6848;
word context←v6876;
word data←v10192;
/* EditedStreamGetDeliverWhen: */
SOURCE(5070, 191)
SOURCE(5070, 191)
proc←v6848 = 0;
SOURCE(5070, 191)
context←v6876 = 0;
SOURCE(5172, 48)
data←v10192 = XR←Narrow((* (( (ptr) self←v6804)+1) ), (* (( (ptr) gf←c27176)+16) ));
SOURCE(5222, 39)
proc←v6848 = XR←CheckProc(* (( (ptr) data←v10192)+4) );
context←v6876 = (* (( (ptr) data←v10192)+5) );
/* removed tail goto */
(* (ptr) formal←c0159 ) = proc←v6848;
(* (( (ptr) formal←c0159)+1) ) = context←v6876;
return;
}
static void EditedStreamSetDeliverWhen←P960(self←v6948, proc←v6976, context←v7004)
word self←v6948;
word proc←v6976;
word context←v7004;
{
register ptr gf←c27208 = (ptr) &globalframe;
word data←v10236;
/* EditedStreamSetDeliverWhen: */
SOURCE(5267, 191)
SOURCE(5360, 48)
data←v10236 = XR←Narrow((* (( (ptr) self←v6948)+1) ), (* (( (ptr) gf←c27208)+16) ));
SOURCE(5410, 23)
(* (( (ptr) data←v10236)+4) ) = XR←CheckProc(proc←v6976);
SOURCE(5436, 22)
(* (( (ptr) data←v10236)+5) ) = context←v7004;
}
static word EditedStreamGetChar←P1020(formal←c0344)
word formal←c0344;
{
W17 var←c27240;
/* declaration of self←v7076 skipped */
register ptr gf←c27272 = (ptr) &globalframe;
word char←v7120;
/* declaration of var←c25512 skipped */
/* declaration of var←c25544 skipped */
/* declaration of var←c25576 skipped */
/* declaration of var←c25608 skipped */
/* declaration of data←v10280 skipped */
(* (( (ptr) &var←c27240)+4)/* self←v7076 */ ) = formal←c0344;
/* EditedStreamGetChar: */
SOURCE(5464, 1983)
{
word tmpAddr57;
tmpAddr57 = (word) (( (ptr) &var←c27240)+5)/* var←c25512 */ ;
(* (ptr) tmpAddr57 ) = ( ((word) (fPt) BackLine←P2544) );
(* (( (ptr) tmpAddr57) + 1) ) = 1;
};
{
word tmpAddr58;
tmpAddr58 = (word) (( (ptr) &var←c27240)+7)/* var←c25544 */ ;
(* (ptr) tmpAddr58 ) = ( ((word) (fPt) BackWord←P2484) );
(* (( (ptr) tmpAddr58) + 1) ) = 1;
};
{
word tmpAddr59;
tmpAddr59 = (word) (( (ptr) &var←c27240)+9)/* var←c25576 */ ;
(* (ptr) tmpAddr59 ) = ( ((word) (fPt) BackChar←P2424) );
(* (( (ptr) tmpAddr59) + 1) ) = 1;
};
{
word tmpAddr60;
tmpAddr60 = (word) (( (ptr) &var←c27240)+11)/* var←c25608 */ ;
(* (ptr) tmpAddr60 ) = ( ((word) (fPt) IsEditCommand←P2364) );
(* (( (ptr) tmpAddr60) + 1) ) = 1;
};
SOURCE(5530, 48)
(* (( (ptr) &var←c27240)+13)/* data←v10280 */ ) = XR←Narrow((* (( (ptr) (* (( (ptr) &var←c27240)+4)/* self←v7076 */ ))+1)
), (* (( (ptr) gf←c27272)+16) ));
SOURCE(6272, 1175)
lab←L100015: ;
SOURCE(6275, 126)
if (( (int)(* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ))+1) ) < (int)(* (hPt) (* (ptr) (* (( (ptr) &var←c27240)+13)
/* data←v10280 */ ) ) ))) {
SOURCE(6319, 32)
{
word var←c25640;
var←c25640 = (* (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ) );
{
word idx61;
word limit62;
char←v7120 = (word) (* ((( (bPt) var←c25640)+4)+(
idx61 = (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ))+1) ),
limit62 = (word) (* (( (hPt) var←c25640)+1) ),
BCK(idx61, limit62)
)) );
};
};
SOURCE(6353, 33)
(* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ))+1) ) = ((* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ))+1)
) + 1);
SOURCE(6388, 13)
return(char←v7120);
};
SOURCE(6406, 1041)
SOURCE(6408, 26)
{
word appendChar←v10588;
word activate←v10616;
SOURCE(6436, 86)
{
/* declaration of var←c01 skipped */
/* declaration of var←c02 skipped */
(* (( (ptr) &var←c27240)+14)/* var←c01 */ ) = (* (( (ptr) (* (( (ptr) &var←c27240)+4)/* self←v7076 */ ))+3) );
(* (( (ptr) &var←c27240)+15)/* var←c02 */ ) = (* (( (ptr) (* (( (ptr) gf←c27272)+99)/* var←c24488 */ ))+11) );
{
/* declaration of var←c03 skipped */
{
word var←c04;
{
word var←c0333;
var←c0333 = (word) &var←c27240;
var←c04 = (word) XR←Enable(( ((word) (fPt) NoName←Q3228) ), ( ((word) (fPt) NoName←Q3468) ), var←c0333);
};
if ((var←c04 == 2)) {
goto lab←L100016;
};
};
char←v7120 = (* (( (ptr) &var←c27240)+16)/* var←c03 */ );
};
};
SOURCE(6556, 102)
{
W2 var←c25672;
{
word pd63;
pd63 = (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ))+4) );
(void) ( *( (fPt) ((* (ptr) pd63 ))))((word) &var←c25672, char←v7120, (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ))+2)
), (* (( (ptr) &var←c27240)+4)/* self←v7076 */ ), (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ))+5) ), pd63)
;
};
activate←v10616 = var←c25672.f1;
appendChar←v10588 = var←c25672.f0;
};
SOURCE(6660, 166)
if ((0 != (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ))+7) ))) {
SOURCE(6689, 26)
(* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ))+7) ) = 0;
SOURCE(6717, 109)
if ( ( ( (0 == activate←v10616) ? (0 != appendChar←v10588) : 0 ) ? (0 == (word) IsEditCommand←P2364(char←v7120, (word) (
( (bPt) &var←c27240)+44)/* var←c25608 */ )) : 0 ) ) {
SOURCE(6781, 45)
(void) UnAppendBufferChars←P300((* (( (ptr) &var←c27240)+4)/* self←v7076 */ ), (* (hPt) (* (( (ptr) (* (( (ptr) &var←c27240)+13)
/* data←v10280 */ ))+2) ) ));
};
};
SOURCE(6831, 397)
if ((0 != appendChar←v10588)) {
SOURCE(6852, 376)
{
word var←c25704;
var←c25704 = char←v7120;
switch (var←c25704) {
case 127:
SOURCE(6884, 62)
{
word var←c0334;
var←c0334 = (word) &var←c27240;
(void) (word) XR←Enable(( ((word) (fPt) NoName←Q3168) ), ( ((word) (fPt) NoName←Q3408) ), var←c0334);
};
break;
case 1: case 8:
SOURCE(6979, 10)
(void) BackChar←P2424((word) ((( (bPt) &var←c27240)+36)/* var←c25576 */ ));
break;
case 23:
SOURCE(7009, 10)
(void) BackWord←P2484((word) ((( (bPt) &var←c27240)+28)/* var←c25544 */ ));
break;
case 17:
SOURCE(7039, 10)
(void) BackLine←P2544((word) ((( (bPt) &var←c27240)+20)/* var←c25512 */ ));
break;
case 27:
SOURCE(7064, 112)
if (((* (hPt) (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ))+2) ) ) == 0)) {
SOURCE(7097, 79)
{
register word i←v10660 = 0;
register word noName←c25736;
{
word idx64;
noName←c25736 = (
/*1*/ idx64 = (word) ((* (hPt) (* (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ) ) ) - 1),
/*1*/ SGNCK(idx64)
/*1*/ );
};
if ((i←v10660 >= noName←c25736)) {
goto lab←L100021;
};
lab←L100024: ;
SOURCE(7139, 37)
{
word var←c25768;
word var←c0335;
var←c25768 = (* (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ) );
{
/*1*/ word limit65;
/*1*/ var←c0335 = (word) (* ((( (bPt) var←c25768)+4)+(
/*1*/ limit65 = (word) (* (( (hPt) var←c25768)+1) ),
/*1*/ BCK(i←v10660, limit65)
/*1*/ )) );
/*1*/ };
(void) AppendBufferChar←P660((* (( (ptr) &var←c27240)+13)/* data←v10280 */ ), var←c0335);
};
i←v10660 = (i←v10660 + 1);
if ((i←v10660 < noName←c25736)) {
goto lab←L100024;
};
lab←L100021: ;
};
};
break;
default:
SOURCE(7200, 28)
(void) AppendBufferChar←P660((* (( (ptr) &var←c27240)+13)/* data←v10280 */ ), char←v7120);
break;
};
};
};
SOURCE(7233, 17)
if ((0 != activate←v10616)) {
SOURCE(7250, 19)
goto lab←L100016;
};
};
goto lab←L100025;
lab←L100016: ;
SOURCE(7297, 21)
(* (hPt) (* (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ) ) ) = 0;
SOURCE(7320, 52)
{
word pd66;
pd66 = (* (( (ptr) (* (( (ptr) gf←c27272)+102)/* var←c25320 */ ))+8) );
(* (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ) ) = (word) ( *( (fPt) ((* (ptr) pd66 ))))((* (ptr) (* (( (ptr) &var←c27240)+13)
/* data←v10280 */ ) ), (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ))+2) ), 0, 32767, pd66);
};
SOURCE(7374, 17)
(* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ))+1) ) = 0;
SOURCE(7393, 22)
(* (hPt) (* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ))+2) ) ) = 0;
SOURCE(7417, 26)
(* (( (ptr) (* (( (ptr) &var←c27240)+13)/* data←v10280 */ ))+6) ) = 0;
lab←L100025: ;
goto lab←L100015;
}
static word NoName←Q3168(formal←c0305)
word formal←c0305;
{
register ptr gf←c0304 = (ptr) &globalframe;
SOURCE(6925, 21)
{
word var←c0180;
var←c0180 = (* (( (ptr) formal←c0305)+4) );
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c0304)+99)/* var←c24488 */ ))+8) ), (word) &var←c0180);
};
/* removed dead code */
}
static word NoName←Q3228(formal←c0306)
word formal←c0306;
{
SOURCE(6436, 86)
{
word pd67;
pd67 = (* (( (ptr) formal←c0306)+15) );
(* (( (ptr) formal←c0306)+16) ) = (word) ( *( (fPt) ((* (ptr) pd67 ))))((* ((( (ptr) formal←c0306)+14)) ), pd67);
};
return(0);
}
static word IsEditCommand←P2364(char←v10468, formal←c27304)
word char←v10468;
word formal←c27304;
{
word var←c10512;
formal←c27304 = (formal←c27304 - 44);
/* IsEditCommand: */
SOURCE(5580, 171)
SOURCE(5632, 119)
{
word var←c25800;
var←c25800 = char←v10468;
switch (var←c25800) {
case 127: case 1: case 8: case 23: case 17:
return(1);
default:
return(0);
};
};
}
static void BackChar←P2424(formal←c27336)
word formal←c27336;
{
formal←c27336 = (formal←c27336 - 36);
/* BackChar: */
SOURCE(5756, 76)
SOURCE(5775, 57)
if (((* (hPt) (* (( (ptr) (* (( (ptr) formal←c27336)+13) ))+2) ) ) > 0)) {
SOURCE(5808, 24)
(void) UnAppendBufferChar←P780((* ((( (ptr) formal←c27336)+13)) ));
};
}
static void BackWord←P2484(formal←c27368)
word formal←c27368;
{
word alphaSeen←v10704 = 0;
formal←c27368 = (formal←c27368 - 28);
/* BackWord: */
SOURCE(5839, 242)
SOURCE(5883, 198)
lab←L100028: ;
if (((* (hPt) (* (( (ptr) (* (( (ptr) formal←c27368)+13) ))+2) ) ) != 0)) {
}
else {
goto lab←L100026;
};
SOURCE(5915, 136)
{
word var←c25896;
{
word var←c25832;
word var←c25864;
var←c25832 = ((* (hPt) (* (( (ptr) (* (( (ptr) formal←c27368)+13) ))+2) ) ) - 1);
var←c25864 = (* (( (ptr) (* (( (ptr) formal←c27368)+13) ))+2) );
{
word limit68;
var←c25896 = (word) (* ((( (bPt) var←c25864)+4)+(
limit68 = (word) (* (( (hPt) var←c25864)+1) ),
BCK(var←c25832, limit68)
)) );
};
};
if ((((var←c25896 - 65) <= 25) || ((var←c25896 - 97) <= 25)) || ((var←c25896 - 48) <= 9)) {
SOURCE(6004, 16)
alphaSeen←v10704 = 1;
}
else {
SOURCE(6033, 18)
if ((0 != alphaSeen←v10704)) {
SOURCE(6051, 4)
goto lab←L100027;
};
};
};
SOURCE(6057, 24)
(void) UnAppendBufferChar←P780((* ((( (ptr) formal←c27368)+13)) ));
goto lab←L100028;
lab←L100026: ;
lab←L100027: ;
}
static void BackLine←P2544(formal←c27400)
word formal←c27400;
{
formal←c27400 = (formal←c27400 - 20);
/* BackLine: */
SOURCE(6095, 163)
SOURCE(6114, 144)
lab←L100031: ;
if (((* (hPt) (* (( (ptr) (* (( (ptr) formal←c27400)+13) ))+2) ) ) != 0)) {
}
else {
goto lab←L100029;
};
{
word c←v10748;
SOURCE(6146, 45)
{
word var←c25928;
word var←c25960;
var←c25928 = ((* (hPt) (* (( (ptr) (* (( (ptr) formal←c27400)+13) ))+2) ) ) - 1);
var←c25960 = (* (( (ptr) (* (( (ptr) formal←c27400)+13) ))+2) );
{
word limit69;
c←v10748 = (word) (* ((( (bPt) var←c25960)+4)+(
limit69 = (word) (* (( (hPt) var←c25960)+1) ),
BCK(var←c25928, limit69)
)) );
};
};
SOURCE(6193, 35)
if ((c←v10748 == 13) || (c←v10748 == 10)) {
SOURCE(6228, 4)
goto lab←L100030;
};
SOURCE(6234, 24)
(void) UnAppendBufferChar←P780((* ((( (ptr) formal←c27400)+13)) ));
};
goto lab←L100031;
lab←L100029: ;
lab←L100030: ;
}
static word EditedStreamEndOf←P1080(self←v7180)
word self←v7180;
{
register ptr gf←c27432 = (ptr) &globalframe;
word var←c7224;
word data←v10792;
/* EditedStreamEndOf: */
SOURCE(7462, 180)
SOURCE(7520, 48)
data←v10792 = XR←Narrow((* (( (ptr) self←v7180)+1) ), (* (( (ptr) gf←c27432)+16) ));
SOURCE(7570, 72)
{
word tc70;
word pd71;
if (( (int)(* (( (ptr) data←v10792)+1) ) == (int)(* (hPt) (* (ptr) data←v10792 ) ))) {
pd71 = (* (( (ptr) (* (( (ptr) gf←c27432)+99)/* var←c24488 */ ))+15) );
tc70 = (word) (0 != (word) ( *( (fPt) ((* (ptr) pd71 ))))((* ((( (ptr) self←v7180)+3)) ), pd71));
}
else {
tc70 = (word) 0;
};
return(tc70);
};
}
static word EditedStreamCharsAvail←P1140(self←v7284, wait←v7312)
word self←v7284;
word wait←v7312;
{
register ptr gf←c27464 = (ptr) &globalframe;
word var←c7356;
word data←v10836;
/* EditedStreamCharsAvail: */
SOURCE(7649, 251)
SOURCE(7723, 48)
data←v10836 = XR←Narrow((* (( (ptr) self←v7284)+1) ), (* (( (ptr) gf←c27464)+16) ));
SOURCE(7773, 82)
if (( (int)(* (( (ptr) data←v10836)+1) ) < (int)(* (hPt) (* (ptr) data←v10836 ) ))) {
SOURCE(7815, 40)
return(((* (hPt) (* (ptr) data←v10836 ) ) - (* (( (ptr) data←v10836)+1) )));
};
SOURCE(7857, 43)
{
word pd72;
pd72 = (* (( (ptr) (* (( (ptr) gf←c27464)+99)/* var←c24488 */ ))+17) );
return((word) ( *( (fPt) ((* (ptr) pd72 ))))((* (( (ptr) self←v7284)+3) ), wait←v7312, pd72));
};
}
static void EditedStreamBackup←P1200(self←v7416, char←v7444)
word self←v7416;
word char←v7444;
{
register ptr gf←c27496 = (ptr) &globalframe;
word data←v10880;
word var←c26056;
word var←c26088;
word var←c0336;
/* EditedStreamBackup: */
SOURCE(7906, 237)
SOURCE(7962, 48)
data←v10880 = XR←Narrow((* (( (ptr) self←v7416)+1) ), (* (( (ptr) gf←c27496)+16) ));
SOURCE(8012, 96)
if (( (int)(* (( (ptr) data←v10880)+1) ) == (int)0)) { goto then073;};
var←c26056 = ((* (( (ptr) data←v10880)+1) ) - 1);
var←c26088 = (* (ptr) data←v10880 );
{
word limit74;
var←c0336 = (word) (* ((( (bPt) var←c26088)+4)+(
limit74 = (word) (* (( (hPt) var←c26088)+1) ),
BCK(var←c26056, limit74)
)) );
};
if ((var←c0336 != char←v7444)) {
then073: ;
SOURCE(8078, 30)
{
W4 var←c0203;
(* (ptr) (word) &var←c0203 ) = 4;
(* (( (ptr) (word) &var←c0203) + 1) ) = self←v7416;
(* (( (ptr) (word) &var←c0203) + 2) ) = 0;
(* (( (ptr) (word) &var←c0203) + 3) ) = 0;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c27496)+99)/* var←c24488 */ ))+5) ), (word) &var←c0203);
};
};
SOURCE(8110, 33)
(* (( (ptr) data←v10880)+1) ) = ((* (( (ptr) data←v10880)+1) ) - 1);
}
static void EditedStreamSetEcho←P1260(self←v7504, echoTo←v7532)
word self←v7504;
word echoTo←v7532;
{
register ptr gf←c27528 = (ptr) &globalframe;
word data←v10924;
/* EditedStreamSetEcho: */
SOURCE(8149, 135)
SOURCE(8210, 48)
data←v10924 = XR←Narrow((* (( (ptr) self←v7504)+1) ), (* (( (ptr) gf←c27528)+16) ));
SOURCE(8260, 24)
(* (( (ptr) data←v10924)+3) ) = echoTo←v7532;
}
static word EditedStreamGetEcho←P1320(self←v7592)
word self←v7592;
{
register ptr gf←c27560 = (ptr) &globalframe;
word var←c7636;
word data←v10968;
/* EditedStreamGetEcho: */
SOURCE(8290, 136)
SOURCE(8352, 48)
data←v10968 = XR←Narrow((* (( (ptr) self←v7592)+1) ), (* (( (ptr) gf←c27560)+16) ));
SOURCE(8402, 24)
return((* (( (ptr) data←v10968)+3) ));
}
static void EditedStreamReset←P1380(self←v7696)
word self←v7696;
{
register ptr gf←c27592 = (ptr) &globalframe;
word data←v11012;
/* EditedStreamReset: */
SOURCE(8432, 240)
SOURCE(8475, 48)
data←v11012 = XR←Narrow((* (( (ptr) self←v7696)+1) ), (* (( (ptr) gf←c27592)+16) ));
SOURCE(8525, 22)
(* (hPt) (* (( (ptr) data←v11012)+2) ) ) = 0;
SOURCE(8549, 21)
(* (hPt) (* (ptr) data←v11012 ) ) = 0;
SOURCE(8572, 17)
(* (( (ptr) data←v11012)+1) ) = 0;
SOURCE(8591, 26)
{
word pd75;
pd75 = (* (( (ptr) (* (( (ptr) gf←c27592)+99)/* var←c24488 */ ))+27) );
(void) ( *( (fPt) ((* (ptr) pd75 ))))((* ((( (ptr) self←v7696)+3)) ), pd75);
};
SOURCE(8619, 53)
if (((* (( (ptr) data←v11012)+3) ) != 0)) {
SOURCE(8649, 23)
{
word pd76;
pd76 = (* (( (ptr) (* (( (ptr) gf←c27592)+99)/* var←c24488 */ ))+27) );
(void) ( *( (fPt) ((* (ptr) pd76 ))))((* ((( (ptr) data←v11012)+3)) ), pd76);
};
};
}
static void SetEcho←P1440(self←v7864, echoTo←v7892)
word self←v7864;
word echoTo←v7892;
{
register ptr gf←c27624 = (ptr) &globalframe;
word origSelf←v11056;
/* SetEcho: */
SOURCE(8818, 510)
SOURCE(8874, 23)
origSelf←v11056 = self←v7864;
SOURCE(8899, 204)
lab←L100034: ;
SOURCE(8899, 204)
{
word proc←v11100;
SOURCE(8902, 48)
proc←v11100 = (word) InlineLookupProc←P60(self←v7864, (* (( (ptr) gf←c27624)+20) ));
SOURCE(8952, 151)
if ((proc←v11100 != 0)) {
SOURCE(8973, 49)
{
word pd77;
pd77 = (* (ptr) XR←Narrow(proc←v11100, (* (( (ptr) gf←c27624)+12) )) );
(void) ( *( (fPt) ((* (ptr) pd77 ))))(self←v7864, echoTo←v7892, pd77);
};
SOURCE(9024, 6)
return;
}
else {
SOURCE(9039, 64)
if (((* (( (ptr) self←v7864)+3) ) != 0)) {
SOURCE(9072, 31)
self←v7864 = (* (( (ptr) self←v7864)+3) );
}
else {
SOURCE(9103, 4)
goto lab←L100033;
};
};
};
goto lab←L100034;
lab←L100033: ;
SOURCE(9118, 27)
if ((echoTo←v7892 == 0)) {
SOURCE(9139, 6)
return;
};
SOURCE(9147, 140)
{
word var←c26120;
{
word var←c26152;
word var←c26184;
{
word pd78;
pd78 = (* (( (ptr) (* (( (ptr) gf←c27624)+102)/* var←c25320 */ ))+4) );
var←c26152 = (word) ( *( (fPt) ((* (ptr) pd78 ))))(8, pd78);
};
var←c26184 = XR←NewObject(8, (* (( (ptr) gf←c27624)+10) ));
(* (( (ptr) var←c26184)+1) ) = var←c26152;
var←c26120 = var←c26184;
};
{
word pd79;
pd79 = (* (( (ptr) (* (( (ptr) gf←c27624)+100)/* var←c24584 */ ))+24) );
(void) ( *( (fPt) ((* (ptr) pd79 ))))(origSelf←v11056, (* (( (ptr) gf←c27624)+5)/* setEchoProcs←v3896 */ ), var←c26120, 0, pd79)
;
};
};
SOURCE(9289, 39)
(void) DefaultSetEchoSetEcho←P1560(origSelf←v11056, echoTo←v7892);
}
static word GetEcho←P1500(self←v7952)
word self←v7952;
{
register ptr gf←c27656 = (ptr) &globalframe;
word oldEcho←v7996;
word origSelf←v11168;
/* GetEcho: */
SOURCE(9335, 310)
SOURCE(9335, 310)
oldEcho←v7996 = 0;
SOURCE(9401, 23)
origSelf←v11168 = self←v7952;
SOURCE(9426, 192)
lab←L100037: ;
SOURCE(9426, 192)
{
word proc←v11212;
SOURCE(9429, 48)
proc←v11212 = (word) InlineLookupProc←P60(self←v7952, (* (( (ptr) gf←c27656)+25) ));
SOURCE(9479, 139)
if ((proc←v11212 != 0)) {
SOURCE(9498, 56)
{
word pd80;
pd80 = (* (ptr) XR←Narrow(proc←v11212, (* (( (ptr) gf←c27656)+8) )) );
return((word) ( *( (fPt) ((* (ptr) pd80 ))))(self←v7952, pd80));
};
}
else {
SOURCE(9554, 64)
if (((* (( (ptr) self←v7952)+3) ) != 0)) {
SOURCE(9587, 31)
self←v7952 = (* (( (ptr) self←v7952)+3) );
}
else {
SOURCE(9618, 4)
goto lab←L100036;
};
};
};
goto lab←L100037;
lab←L100036: ;
SOURCE(9633, 12)
return(0);
}
static void DefaultSetEchoSetEcho←P1560(self←v8056, echoTo←v8084)
word self←v8056;
word echoTo←v8084;
{
register ptr gf←c27688 = (ptr) &globalframe;
word data←v11280;
/* DefaultSetEchoSetEcho: */
SOURCE(9651, 210)
SOURCE(9714, 43)
data←v11280 = XR←Narrow((* (( (ptr) self←v8056)+1) ), (* (( (ptr) gf←c27688)+10) ));
SOURCE(9759, 24)
(* (ptr) data←v11280 ) = echoTo←v8084;
SOURCE(9785, 76)
{
word tc81;
if ((echoTo←v8084 == 0)) {
tc81 = (word) ((* (hPt) (* (( (ptr) data←v11280)+1) ) ) == 0);
}
else {
tc81 = (word) 0;
};
if (tc81) {
SOURCE(9833, 28)
{
word pd82;
pd82 = (* (( (ptr) (* (( (ptr) gf←c27688)+100)/* var←c24584 */ ))+25) );
(void) ( *( (fPt) ((* (ptr) pd82 ))))(self←v8056, pd82);
};
};
};
}
static word DefaultSetEchoGetEcho←P1620(self←v8144)
word self←v8144;
{
register ptr gf←c27720 = (ptr) &globalframe;
word oldEcho←v8188;
word data←v11324;
/* DefaultSetEchoGetEcho: */
SOURCE(9867, 141)
SOURCE(9867, 141)
oldEcho←v8188 = 0;
SOURCE(9940, 43)
data←v11324 = XR←Narrow((* (( (ptr) self←v8144)+1) ), (* (( (ptr) gf←c27720)+10) ));
SOURCE(9985, 23)
return((* (ptr) data←v11324 ));
}
static void DefaultSetEchoBackup←P1680(formal←c0345, char←v8276)
word formal←c0345;
word char←v8276;
{
W8 var←c27752;
/* declaration of self←v8248 skipped */
register ptr gf←c27784 = (ptr) &globalframe;
word data←v11368;
var←c27752.f4/* self←v8248 */ = formal←c0345;
/* DefaultSetEchoBackup: */
SOURCE(10014, 228)
SOURCE(10072, 43)
data←v11368 = XR←Narrow((* (( (ptr) var←c27752.f4/* self←v8248 */ )+1) ), (* (( (ptr) gf←c27784)+10) ));
SOURCE(10117, 125)
{
word var←c26248;
{
/* declaration of var←c26280 skipped */
/* declaration of to←v23136 skipped */
/* declaration of from←v23164 skipped */
var←c27752.f6/* to←v23136 */ = (* (( (ptr) data←v11368)+1) );
var←c27752.f7/* from←v23164 */ = char←v8276;
{
word var←c05;
{
word var←c0337;
var←c0337 = (word) &var←c27752;
var←c05 = (word) XR←Enable(( ((word) (fPt) NoName←Q3288) ), ( ((word) (fPt) NoName←Q3348) ), var←c0337);
};
/* removed trivial cond node */
};
var←c26248 = var←c27752.f5/* var←c26280 */ ;
};
(* (( (ptr) data←v11368)+1) ) = var←c26248;
};
}
static word NoName←Q3288(formal←c0323)
word formal←c0323;
{
register ptr gf←c0322 = (ptr) &globalframe;
if (((* (hPt) (* (( (ptr) formal←c0323)+6) ) ) >= (* (( (hPt) (* (( (ptr) formal←c0323)+6) ))+1) ))) {
{
word pd83;
pd83 = (* (( (ptr) (* (( (ptr) gf←c0322)+102)/* var←c25320 */ ))+11) );
(* (( (ptr) formal←c0323)+5) ) = (word) ( *( (fPt) ((* (ptr) pd83 ))))((* (( (ptr) formal←c0323)+6) ), (* (( (ptr) formal←c0323)+7)
), pd83);
};
return(3);
};
{
word idx84;
word limit85;
(* ((( (bPt) (* (( (ptr) formal←c0323)+6) ))+4)+(
idx84 = (word) (* (hPt) (* (( (ptr) formal←c0323)+6) ) ),
limit85 = (word) (* (( (hPt) (* (( (ptr) formal←c0323)+6) ))+1) ),
BCK(idx84, limit85)
)) ) = (* (( (bPt) formal←c0323)+31) );
};
{
word idx86;
(* (hPt) (* (( (ptr) formal←c0323)+6) ) ) = (
idx86 = (word) ((* (hPt) (* (( (ptr) formal←c0323)+6) ) ) + 1),
BCK(idx86, 32768)
);
};
(* (( (ptr) formal←c0323)+5) ) = (* (( (ptr) formal←c0323)+6) );
return(3);
/* c2c skipped dead code */
}
static word DefaultSetEchoGetChar←P1740(self←v8336)
word self←v8336;
{
register ptr gf←c27816 = (ptr) &globalframe;
word char←v8380;
word data←v11412;
/* DefaultSetEchoGetChar: */
SOURCE(10248, 344)
SOURCE(10316, 43)
data←v11412 = XR←Narrow((* (( (ptr) self←v8336)+1) ), (* (( (ptr) gf←c27816)+10) ));
SOURCE(10361, 130)
if (((* (hPt) (* (( (ptr) data←v11412)+1) ) ) > 0)) {
SOURCE(10394, 43)
{
word idx87;
(* (hPt) (* (( (ptr) data←v11412)+1) ) ) = (
idx87 = (word) ((* (hPt) (* (( (ptr) data←v11412)+1) ) ) - 1),
BCK(idx87, 32768)
);
};
SOURCE(10439, 38)
{
word var←c26376;
var←c26376 = (* (( (ptr) data←v11412)+1) );
{
word idx88;
word limit89;
char←v8380 = (word) (* ((( (bPt) var←c26376)+4)+(
idx88 = (word) (* (hPt) (* (( (ptr) data←v11412)+1) ) ),
limit89 = (word) (* (( (hPt) var←c26376)+1) ),
BCK(idx88, limit89)
)) );
};
};
SOURCE(10479, 12)
return(char←v8380);
};
SOURCE(10496, 35)
{
word pd90;
pd90 = (* (( (ptr) (* (( (ptr) gf←c27816)+99)/* var←c24488 */ ))+11) );
char←v8380 = (word) ( *( (fPt) ((* (ptr) pd90 ))))((* ((( (ptr) self←v8336)+3)) ), pd90);
};
SOURCE(10533, 59)
if (((* (ptr) data←v11412 ) != 0)) {
SOURCE(10563, 29)
{
word pd91;
pd91 = (* (( (ptr) (* (( (ptr) gf←c27816)+99)/* var←c24488 */ ))+21) );
(void) ( *( (fPt) ((* (ptr) pd91 ))))((* (ptr) data←v11412 ), char←v8380, pd91);
};
};
SOURCE(10248, 344)
return(char←v8380);
}
static word DefaultSetEchoGetBlock←P1800(self←v8440, block←v8468, startIndex←v8496, count←v8524)
word self←v8440;
word block←v8468;
word startIndex←v8496;
word count←v8524;
{
register ptr gf←c27848 = (ptr) &globalframe;
word nBytesRead←v8580;
word data←v11456;
/* DefaultSetEchoGetBlock: */
SOURCE(10598, 669)
SOURCE(10718, 43)
data←v11456 = XR←Narrow((* (( (ptr) self←v8440)+1) ), (* (( (ptr) gf←c27848)+10) ));
SOURCE(10763, 14)
nBytesRead←v8580 = 0;
SOURCE(10779, 277)
lab←L100043: ;
if (((* (hPt) (* (( (ptr) data←v11456)+1) ) ) > 0)) {
}
else {
goto lab←L100041;
};
SOURCE(10811, 70)
if ((count←v8524 == 0)) { goto then092;};
if ((startIndex←v8496 >= (* (( (hPt) block←v8468)+1) ))) {
then092: ;
SOURCE(10862, 19)
return(nBytesRead←v8580);
};
SOURCE(10883, 43)
{
word idx93;
(* (hPt) (* (( (ptr) data←v11456)+1) ) ) = (
idx93 = (word) ((* (hPt) (* (( (ptr) data←v11456)+1) ) ) - 1),
BCK(idx93, 32768)
);
};
SOURCE(10928, 51)
{
word var←c26408;
var←c26408 = (* (( (ptr) data←v11456)+1) );
{
word limit94;
word idx95;
word limit96;
(* ((( (bPt) block←v8468)+4)+(
limit94 = (word) (* (( (hPt) block←v8468)+1) ),
BCK(startIndex←v8496, limit94)
)) ) = (word) (* ((( (bPt) var←c26408)+4)+(
idx95 = (word) (* (hPt) (* (( (ptr) data←v11456)+1) ) ),
limit96 = (word) (* (( (hPt) var←c26408)+1) ),
BCK(idx95, limit96)
)) );
};
};
SOURCE(10981, 27)
startIndex←v8496 = (startIndex←v8496 + 1);
SOURCE(11010, 17)
count←v8524 = SGNCK((count←v8524 - 1));
SOURCE(11029, 27)
nBytesRead←v8580 = (nBytesRead←v8580 + 1);
goto lab←L100043;
lab←L100041: ;
SOURCE(11067, 79)
{
word pd97;
word idx98;
pd97 = (* (( (ptr) (* (( (ptr) gf←c27848)+99)/* var←c24488 */ ))+13) );
nBytesRead←v8580 = (
idx98 = (word) (nBytesRead←v8580 + (word) ( *( (fPt) ((* (ptr) pd97 ))))((* (( (ptr) self←v8440)+3) ), block←v8468, startIndex←v8496, count←v8524, pd97)
),
SGNCK(idx98)
);
};
SOURCE(11148, 98)
if (((* (ptr) data←v11456 ) != 0)) {
SOURCE(11178, 68)
{
word pd99;
pd99 = (* (( (ptr) (* (( (ptr) gf←c27848)+99)/* var←c24488 */ ))+23) );
(void) ( *( (fPt) ((* (ptr) pd99 ))))((* (ptr) data←v11456 ), block←v8468, startIndex←v8496, ((* (hPt) block←v8468 ) - startIndex←v8496), pd99)
;
};
};
SOURCE(11248, 19)
return(nBytesRead←v8580);
}
static word DefaultSetEchoUnsafeGetBlock←P1860(self←v8640, block←v8668)
word self←v8640;
W3 block←v8668;
{
register ptr gf←c27880 = (ptr) &globalframe;
word nBytesRead←v8712;
word data←v11500;
/* DefaultSetEchoUnsafeGetBlock: */
SOURCE(11273, 962)
SOURCE(11273, 962)
nBytesRead←v8712 = 0;
SOURCE(11397, 43)
data←v11500 = XR←Narrow((* (( (ptr) self←v8640)+1) ), (* (( (ptr) gf←c27880)+10) ));
SOURCE(11442, 253)
if (((* (hPt) (* (( (ptr) data←v11500)+1) ) ) > (2147483647 - block←v8668.f1))) {
SOURCE(11547, 150)
{
word offset←v11544;
SOURCE(11549, 50)
offset←v11544 = IOP2( / , (int)block←v8668.f1, (int)4);
SOURCE(11601, 30)
block←v8668.f0 = (block←v8668.f0 + offset←v11544);
SOURCE(11633, 62)
block←v8668.f1 = (block←v8668.f1 - IOP2( * , (int)offset←v11544, (int)4));
};
};
SOURCE(11738, 328)
lab←L100046: ;
if (((* (hPt) (* (( (ptr) data←v11500)+1) ) ) > 0)) {
}
else {
goto lab←L100044;
};
SOURCE(11770, 43)
if (( (int)block←v8668.f2 == (int)0)) {
SOURCE(11794, 19)
return(nBytesRead←v8712);
};
SOURCE(11815, 43)
{
word idx100;
(* (hPt) (* (( (ptr) data←v11500)+1) ) ) = (
idx100 = (word) ((* (hPt) (* (( (ptr) data←v11500)+1) ) ) - 1),
BCK(idx100, 32768)
);
};
SOURCE(11860, 105)
{
word var←c26440;
var←c26440 = (* (( (ptr) data←v11500)+1) );
{
word idx101;
word limit102;
(* (( (bPt) block←v8668.f0)+block←v8668.f1) ) = (word) (* ((( (bPt) var←c26440)+4)+(
idx101 = (word) (* (hPt) (* (( (ptr) data←v11500)+1) ) ),
limit102 = (word) (* (( (hPt) var←c26440)+1) ),
BCK(idx101, limit102)
)) );
};
};
SOURCE(11967, 39)
block←v8668.f1 = (block←v8668.f1 + 1);
SOURCE(12008, 29)
block←v8668.f2 = (block←v8668.f2 - 1);
SOURCE(12039, 27)
nBytesRead←v8712 = (nBytesRead←v8712 + 1);
goto lab←L100046;
lab←L100044: ;
SOURCE(12077, 54)
{
word pd103;
pd103 = (* (( (ptr) (* (( (ptr) gf←c27880)+99)/* var←c24488 */ ))+14) );
block←v8668.f2 = (word) ( *( (fPt) ((* (ptr) pd103 ))))((* (( (ptr) self←v8640)+3) ), block←v8668, pd103);
};
SOURCE(12133, 67)
if (((* (ptr) data←v11500 ) != 0)) {
SOURCE(12163, 37)
{
word pd104;
pd104 = (* (( (ptr) (* (( (ptr) gf←c27880)+99)/* var←c24488 */ ))+24) );
(void) ( *( (fPt) ((* (ptr) pd104 ))))((* (ptr) data←v11500 ), block←v8668, pd104);
};
};
SOURCE(12202, 33)
return((nBytesRead←v8712 + block←v8668.f2));
}
static word DefaultSetEchoEndOf←P1920(self←v8772)
word self←v8772;
{
register ptr gf←c27912 = (ptr) &globalframe;
word var←c8816;
word data←v11600;
/* DefaultSetEchoEndOf: */
SOURCE(12241, 167)
SOURCE(12302, 43)
data←v11600 = XR←Narrow((* (( (ptr) self←v8772)+1) ), (* (( (ptr) gf←c27912)+10) ));
SOURCE(12347, 61)
{
word tc105;
word pd106;
if (((* (hPt) (* (( (ptr) data←v11600)+1) ) ) == 0)) {
pd106 = (* (( (ptr) (* (( (ptr) gf←c27912)+99)/* var←c24488 */ ))+15) );
tc105 = (word) (0 != (word) ( *( (fPt) ((* (ptr) pd106 ))))((* ((( (ptr) self←v8772)+3)) ), pd106));
}
else {
tc105 = (word) 0;
};
return(tc105);
};
}
static word DefaultSetEchoCharsAvail←P1980(self←v8876, wait←v8904)
word self←v8876;
word wait←v8904;
{
register ptr gf←c27944 = (ptr) &globalframe;
word var←c8948;
word data←v11644;
/* DefaultSetEchoCharsAvail: */
SOURCE(12414, 224)
SOURCE(12490, 43)
data←v11644 = XR←Narrow((* (( (ptr) self←v8876)+1) ), (* (( (ptr) gf←c27944)+10) ));
SOURCE(12535, 58)
if (((* (hPt) (* (( (ptr) data←v11644)+1) ) ) > 0)) {
SOURCE(12566, 27)
return((* (hPt) (* (( (ptr) data←v11644)+1) ) ));
};
SOURCE(12595, 43)
{
word pd107;
pd107 = (* (( (ptr) (* (( (ptr) gf←c27944)+99)/* var←c24488 */ ))+17) );
return((word) ( *( (fPt) ((* (ptr) pd107 ))))((* (( (ptr) self←v8876)+3) ), wait←v8904, pd107));
};
}
static void DefaultSetEchoReset←P2040(self←v9008)
word self←v9008;
{
register ptr gf←c27976 = (ptr) &globalframe;
word data←v11688;
/* DefaultSetEchoReset: */
SOURCE(12644, 141)
SOURCE(12690, 43)
data←v11688 = XR←Narrow((* (( (ptr) self←v9008)+1) ), (* (( (ptr) gf←c27976)+10) ));
SOURCE(12735, 22)
(* (hPt) (* (( (ptr) data←v11688)+1) ) ) = 0;
SOURCE(12759, 26)
{
word pd108;
pd108 = (* (( (ptr) (* (( (ptr) gf←c27976)+99)/* var←c24488 */ ))+27) );
(void) ( *( (fPt) ((* (ptr) pd108 ))))((* ((( (ptr) self←v9008)+3)) ), pd108);
};
}
static word AddStreamProcs←P2100(to←v9068, setEcho←v9096, getEcho←v9124)
word to←v9068;
word setEcho←v9096;
word getEcho←v9124;
{
register ptr gf←c28008 = (ptr) &globalframe;
word var←c9372;
/* AddStreamProcs: */
SOURCE(12791, 371)
SOURCE(12981, 83)
if ((setEcho←v9096 != 0)) {
SOURCE(13003, 61)
{
word var←c26536;
{
word var←c26568;
var←c26568 = XR←NewObject(4, (* (( (ptr) gf←c28008)+12) ));
(* (ptr) var←c26568 ) = XR←CheckProc(setEcho←v9096);
var←c26536 = var←c26568;
};
{
word pd109;
pd109 = (* (( (ptr) (* (( (ptr) gf←c28008)+100)/* var←c24584 */ ))+29) );
(void) ( *( (fPt) ((* (ptr) pd109 ))))(to←v9068, (* (( (ptr) gf←c28008)+20) ), var←c26536, pd109);
};
};
};
SOURCE(13066, 83)
if ((getEcho←v9124 != 0)) {
SOURCE(13088, 61)
{
word var←c26600;
{
word var←c26632;
var←c26632 = XR←NewObject(4, (* (( (ptr) gf←c28008)+8) ));
(* (ptr) var←c26632 ) = XR←CheckProc(getEcho←v9124);
var←c26600 = var←c26632;
};
{
word pd110;
pd110 = (* (( (ptr) (* (( (ptr) gf←c28008)+100)/* var←c24584 */ ))+29) );
(void) ( *( (fPt) ((* (ptr) pd110 ))))(to←v9068, (* (( (ptr) gf←c28008)+25) ), var←c26600, pd110);
};
};
};
SOURCE(13151, 11)
return(to←v9068);
}
static void NoName←Q3348(formal←c0275, formal←c200008, formal←c200009, formal←c200010, formal←c200011)
word formal←c0275;
word formal←c200008;
word formal←c200009;
word formal←c200010;
word formal←c200011;
{
register ptr gf←c0331 = (ptr) &globalframe;
if ((formal←c200009 == (* (( (ptr) (* (( (ptr) gf←c0331)+103)/* var←c26312 */ ))+8) ))) {
SOURCE(10204, 38)
{
W4 var←c0274;
(* (ptr) (word) &var←c0274 ) = 5;
(* (( (ptr) (word) &var←c0274) + 1) ) = (* (( (ptr) formal←c200008)+4) );
(* (( (ptr) (word) &var←c0274) + 2) ) = 0;
(* (( (ptr) (word) &var←c0274) + 3) ) = 0;
(void) XR←RaiseError((* (( (ptr) (* (( (ptr) gf←c0331)+99)/* var←c24488 */ ))+5) ), (word) &var←c0274);
};
};
(* (ptr) formal←c0275 ) = 0;
(* (( (ptr) formal←c0275)+1) ) = 0;
return;
}
static void NoName←Q3408(formal←c0280, formal←c200004, formal←c200005, formal←c200006, formal←c200007)
word formal←c0280;
word formal←c200004;
word formal←c200005;
word formal←c200006;
word formal←c200007;
{
if ((formal←c200005 == XR←Unwind)) {
SOURCE(6901, 22)
(* (hPt) (* (( (ptr) (* (( (ptr) formal←c200004)+13) ))+2) ) ) = 0;
};
(* (ptr) formal←c0280 ) = 0;
(* (( (ptr) formal←c0280)+1) ) = 0;
return;
}
static void NoName←Q3468(formal←c0286, formal←c200000, formal←c200001, formal←c200002, formal←c200003)
word formal←c0286;
word formal←c200000;
word formal←c200001;
word formal←c200002;
word formal←c200003;
{
register ptr gf←c0332 = (ptr) &globalframe;
if ((formal←c200001 == (* (( (ptr) (* (( (ptr) gf←c0332)+99)/* var←c24488 */ ))+4) ))) {
{
word stream←v20004;
stream←v20004 = (* (ptr) formal←c200003 );
SOURCE(6491, 31)
if (((* (hPt) (* (( (ptr) (* (( (ptr) formal←c200000)+13) ))+2) ) ) == 0)) {
/* removed tail goto */
}
else {
SOURCE(6534, 20)
(* (ptr) formal←c0286 ) = 2;
(* (( (ptr) formal←c0286)+1) ) = 2;
return;
};
};
};
(* (ptr) formal←c0286 ) = 0;
(* (( (ptr) formal←c0286)+1) ) = 0;
return;
}
/* file: IOEditedStreamImpl, module: IOEditedStreamImpl, compiled at: February 21, 1992 9:35:33 pm PST */
extern void XR←install←IOEditedStreamImpl() {
NoName←Q3108();
}
extern void XR←run←IOEditedStreamImpl() { XR←Start(&globalframe); }