/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1992 by Xerox Corporation. All rights reserved. */ /* time: February 28, 1992 10:40:03 am PST */ /* C2C version: October 16, 1990 (native) */ /* ref-counting: off */ /* file: TEditMouseImpl, module: TEditMouseImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> static char versionStamp[] = "@(#)mob←version [2573449505,2079797981] TEditMouseImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef word (*fPt)(); typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8; typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7; typedef struct {W8 f; W7 r;} W15; typedef struct {word f0, f1;} W2; typedef struct {word f0, f1, f2, f3;} W4; typedef struct {word f0, f1, f2;} W3; typedef struct {W8 f; W3 r;} W11; typedef struct {W8 f; word r;} W9; typedef W9 *W9Pt; typedef W2 *W2Pt; typedef struct {W8 f; W4 r;} W12; typedef struct {word f0, f1, f2, f3, f4;} W5; typedef struct {word f0, f1, f2, f3, f4, f5;} W6; #define SOURCE(p, l) /* source p, l */ #define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) ) #define MAX(cast, x, y) ( ( cast x) > ( cast y) ? (x) : (y) ) #define IOP2(op, x, y) ( (word) ((x) op (y)) ) #define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i ) #define MIN(cast, x, y) ( ( cast x) < ( cast y) ? (x) : (y) ) static void NoName←Q4644(); static void TEditMouseImpl←P0(); static void DoSelect←P60(); static word NoName←Q4704(); static void action←P1440(); static void inner←P1500(); static word NoName←Q4764(); static void SelectPoint←P180(); static void DoSelectPoint←P1608(); static void SelectChar←P240(); static void DoSelectChar←P1668(); static void SelectWord←P300(); static void DoSelectWord←P1728(); static void SelectNode←P360(); static void DoSelectNode←P1788(); static void SelectBranch←P420(); static void DoSelectBranch←P1848(); static word Dist←P480(); static word CompareLoc←P540(); static void Extend←P600(); static void DoExtend←P1968(); static void SetSelLooks←P660(); static void Update←P720(); static void ExpandToWord←P780(); static word SetInsertion←P840(); static word ResolveToChar←P900(); static void GrowSelectionToBlanks←P960(); static word Blank←P2220(); static void GrowSelectionToSomething←P1020(); static void GrowSelection←P1080(); static void InsertionPoint←P1140(); static word GetSelectionGrain←P1200(); static void InvalidateLineCache←P1260(); static void GetLine←P1320(); static void CharPositionInCachedLine←P1380(); static void NoName←Q4824(); static void NoName←Q4884(); static struct {unsigned f; char r[16];} string1 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"}; static struct {unsigned f; char r[4];} string2 = {65537, "\001\000\000"}; static struct {unsigned f; char r[16];} string3 = {851984, "\257\300\343\357\262\137\300\144\166\356\317\100\164\000\000"}; static struct {unsigned f; char r[16];} string4 = {851981, "\006\005\000\001\004\001\054\001\070\001\100\114\001\000\000"}; static struct {unsigned f; char r[4];} string5 = {131076, "\216\251\000"}; static struct {unsigned f; char r[12];} string6 = {589836, "StyleKind\000\000"}; static struct {unsigned f; char r[12];} string7 = {524300, "DoSelect\000\000\000"}; static struct {unsigned f; char r[8];} string8 = {327688, "Print\000\000"}; static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\231\143\271\041\300\173\367\062\335\100\164\000\000"}; static struct {unsigned f; char r[20];} string10 = {1114129, "\006\006\040\001\050\001\060\001\070\001\100\100\001\100\144\004\007\000\000"}; static struct {unsigned f; char r[16];} string11 = {851984, "\257\300\314\212\213\004\300\112\342\014\072\100\164\000\000"}; static struct {unsigned f; char r[16];} string12 = {851984, "\257\300\004\173\141\246\300\255\256\170\002\100\150\000\000"}; static struct {unsigned f; char r[16];} string13 = {851984, "\257\300\375\366\273\111\300\156\046\321\053\100\150\000\000"}; static struct {unsigned f; char r[16];} string14 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"}; static struct {unsigned f; char r[16];} string15 = {851984, "\257\300\366\233\214\046\300\233\036\213\260\100\150\000\000"}; static struct {unsigned f; char r[16];} string16 = {851984, "\257\300\013\141\323\354\300\341\005\243\127\100\150\000\000"}; static struct {unsigned f; char r[16];} string17 = {851984, "\257\300R-\356\251\300YX]$@h\000\000"}; static struct {unsigned f; char r[16];} string18 = {851984, "\257\300\353\351\362\137\300\156\374\044\211\100\150\000\000"}; static struct {unsigned f; char r[12];} string19 = {1413833833, "tSelection"}; static struct {unsigned f; char r[16];} string20 = {851984, "\257\300\343\112\327\166\300\041\341\335\211\100\150\000\000"}; static struct {unsigned f; char r[16];} string21 = {851984, "\257\300\174\107\267\236\300\027\127\205\140\100\150\000\000"}; static struct {unsigned f; char r[16];} string22 = {851984, "\257\300\261\010\310\246\300\337\340\027\051\100\150\000\000"}; static struct {unsigned f; char r[16];} string23 = {851984, "\257\3004+\202s\300vm?\203@h\000\000"}; static struct {unsigned f; char r[16];} string24 = {851984, "\257\300\042\224\360\026\300\243\254\175\360\100\150\000\000"}; static struct {unsigned f; char r[16];} string25 = {851984, "\257\300\304\277\342\227\300\257\071\007\130\100\150\000\000"}; static struct {unsigned f; char r[16];} string26 = {851984, "\257\300\354\332\367\333\300\361\203\205\173\100\150\000\000"}; static struct {unsigned f; char r[16];} string27 = {851984, "\257\300\334\224\340\220\300\346\355\242\107\100\150\000\000"}; static struct {unsigned f; char r[16];} string28 = {851984, "\257\300\354\107\165\331\300\073\134\140\272\100\150\000\000"}; static struct { word f0[13]; word f13; word f14[14]; 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[17]; } globalframe = { {0}, 7, {0}, (word) CharPositionInCachedLine←P1380, 0, (word) GetLine←P1320, 0, (word) InvalidateLineCache←P1260, 0, (word) GetSelectionGrain←P1200, 0, (word) InsertionPoint←P1140, 0, (word) GrowSelection←P1080, 0, (word) GrowSelectionToSomething←P1020, 0, (word) GrowSelectionToBlanks←P960, 0, (word) ResolveToChar←P900, 0, (word) SetInsertion←P840, 0, (word) ExpandToWord←P780, 0, (word) Update←P720, 0, (word) SetSelLooks←P660, 0, (word) Extend←P600, 0, (word) CompareLoc←P540, 0, (word) Dist←P480, 0, (word) SelectBranch←P420, 0, (word) SelectNode←P360, 0, (word) SelectWord←P300, 0, (word) SelectChar←P240, 0, (word) SelectPoint←P180, 0, (word) DoSelect←P60, 0, (word) TEditMouseImpl←P0, {0} }; static void NoName←Q4644() { register ptr gf←c0374 = (ptr) &globalframe; word var←c37060; (* (( (ptr) gf←c0374)+20) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2); (* (( (ptr) gf←c0374)+22) ) = (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4); (* (( (ptr) gf←c0374)+24) ) = (word) XR←GetTypeIndex((word) &string5, 0, (word) &string2); (* (ptr) (( (bPt) gf←c0374)+100) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0374)+24) ), (word) &string6); (* (ptr) (( (bPt) gf←c0374)+104) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0374)+20) ), (word) &string7); (* (ptr) (( (bPt) gf←c0374)+108) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0374)+24) ), (word) &string8); (void) XR←DeclareGlobalFrame((word) "TEditMouseImpl", &globalframe, (word) XR←GetTypeIndex((word) &string9, 0, (word) &string10) , (word) (( (bPt) gf←c0374)+288)/* var←c33412 */ ); var←c37060 = (word) XR←ImportInterface((word) "CharOps", (word) XR←GetTypeIndexS((word) (&string11)), 14); (* (( (ptr) gf←c0374)+83)/* var←c35236 */ ) = var←c37060; var←c37060 = (word) XR←ImportInterface((word) "EditSpan", (word) XR←GetTypeIndexS((word) (&string12)), 23); (* (( (ptr) gf←c0374)+80)/* var←c34468 */ ) = var←c37060; (void) XR←ImportProcS(var←c37060, 68422405); (void) XR←ImportProcS(var←c37060, 67637762); var←c37060 = (word) XR←ImportInterface((word) "NodeStyleOps", (word) XR←GetTypeIndexS((word) (&string13)), 23); (* (( (ptr) gf←c0374)+87)/* var←c36868 */ ) = var←c37060; (void) XR←ImportProcS(var←c37060, 262913); (void) XR←ImportProcS(var←c37060, 789251); (void) XR←ImportProcS(var←c37060, 67109376); var←c37060 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string14)), 43); (* (( (ptr) gf←c0374)+85)/* var←c36452 */ ) = var←c37060; (void) XR←ImportProcS(var←c37060, 67373825); var←c37060 = (word) XR←ImportInterface((word) "RopeReader", (word) XR←GetTypeIndexS((word) (&string15)), 25); (* (( (ptr) gf←c0374)+81)/* var←c35012 */ ) = var←c37060; (void) XR←ImportProcS(var←c37060, 268033); (void) XR←ImportProcS(var←c37060, 67636482); (void) XR←ImportProcS(var←c37060, 67114496); var←c37060 = (word) XR←ImportInterface((word) "TEditInput", (word) XR←GetTypeIndexS((word) (&string16)), 44); (* (( (ptr) gf←c0374)+86)/* var←c36804 */ ) = var←c37060; var←c37060 = (word) XR←ImportInterface((word) "TEditProfile", (word) XR←GetTypeIndexS((word) (&string17)), 19); (* (( (ptr) gf←c0374)+84)/* var←c35396 */ ) = var←c37060; var←c37060 = (word) XR←ImportInterface((word) "TEditFormat", (word) XR←GetTypeIndexS((word) (&string18)), 17); (* (( (ptr) gf←c0374)+74)/* var←c33444 */ ) = var←c37060; (void) XR←ImportProcS(var←c37060, 134743042); (void) XR←ImportProcS(var←c37060, 1573126); (void) XR←ImportProcS(var←c37060, 336069378); (void) XR←ImportProcS(var←c37060, 67110400); var←c37060 = (word) XR←ImportInterface((word) &string19, (word) XR←GetTypeIndexS((word) (&string20)), 68); (* (( (ptr) gf←c0374)+75)/* var←c33540 */ ) = var←c37060; (void) XR←ImportProcS(var←c37060, 11264); (void) XR←ImportProcS(var←c37060, 526338); (void) XR←ImportProcS(var←c37060, 1058564); (void) XR←ImportProcS(var←c37060, 1316101); (void) XR←ImportProcS(var←c37060, 270337); (void) XR←ImportProcS(var←c37060, 266753); (void) XR←ImportProcS(var←c37060, 528642); (void) XR←ImportProcS(var←c37060, 263937); (void) XR←ImportProcS(var←c37060, 67110400); var←c37060 = (word) XR←ImportInterface((word) "TEditTouchup", (word) XR←GetTypeIndexS((word) (&string21)), 6); (* (( (ptr) gf←c0374)+77)/* var←c33668 */ ) = var←c37060; (void) XR←ImportProcS(var←c37060, 263425); (void) XR←ImportProcS(var←c37060, 67633922); var←c37060 = (word) XR←ImportInterface((word) "TextEdit", (word) XR←GetTypeIndexS((word) (&string22)), 39); (* (( (ptr) gf←c0374)+78)/* var←c33828 */ ) = var←c37060; (void) XR←ImportProcS(var←c37060, 67633154); (void) XR←ImportProcS(var←c37060, 67633410); (void) XR←ImportProcS(var←c37060, 67371521); var←c37060 = (word) XR←ImportInterface((word) "TextEditBogus", (word) XR←GetTypeIndexS((word) (&string23)), 1); (* (( (ptr) gf←c0374)+82)/* var←c35076 */ ) = var←c37060; (void) XR←ImportProcS(var←c37060, 67371009); var←c37060 = (word) XR←ImportInterface((word) "TextNode", (word) XR←GetTypeIndexS((word) (&string24)), 34); (* (( (ptr) gf←c0374)+79)/* var←c34212 */ ) = var←c37060; (void) XR←ImportProcS(var←c37060, 67372289); (void) XR←ImportProcS(var←c37060, 67372033); (void) XR←ImportProcS(var←c37060, 67377153); (void) XR←ImportProcS(var←c37060, 67379201); (void) XR←ImportProcS(var←c37060, 67376641); var←c37060 = (word) XR←ImportInterface((word) "ViewerGroupLocks", (word) XR←GetTypeIndexS((word) (&string25)), 2); (* (( (ptr) gf←c0374)+76)/* var←c33572 */ ) = var←c37060; (void) XR←ImportProcS(var←c37060, 524290); var←c37060 = (word) XR←ImportInterface((word) "ViewerOps", (word) XR←GetTypeIndexS((word) (&string26)), 43); (* (( (ptr) gf←c0374)+88)/* var←c36900 */ ) = var←c37060; (void) XR←ImportProcS(var←c37060, 67639554); var←c37060 = (word) XR←ExportInterface((word) &string19, (word) XR←GetTypeIndexS((word) (&string20)), 68); (* (( (ptr) gf←c0374)+89)/* var←c37092 */ ) = var←c37060; (void) XR←ExportProcS(var←c37060, (word) (( (bPt) gf←c0374)+168)/* var←c32932 */ , 11520); (void) XR←ExportProcS(var←c37060, (word) (( (bPt) gf←c0374)+160)/* var←c32900 */ , 536066); (void) XR←ExportProcS(var←c37060, (word) (( (bPt) gf←c0374)+152)/* var←c32868 */ , 12032); (void) XR←ExportProcS(var←c37060, (word) (( (bPt) gf←c0374)+272)/* var←c33348 */ , 1586182); (void) XR←ExportProcS(var←c37060, (word) (( (bPt) gf←c0374)+264)/* var←c33316 */ , 1586438); (void) XR←ExportProcS(var←c37060, (word) (( (bPt) gf←c0374)+256)/* var←c33284 */ , 1586694); (void) XR←ExportProcS(var←c37060, (word) (( (bPt) gf←c0374)+248)/* var←c33252 */ , 1586950); (void) XR←ExportProcS(var←c37060, (word) (( (bPt) gf←c0374)+240)/* var←c33220 */ , 1587206); (void) XR←ExportProcS(var←c37060, (word) (( (bPt) gf←c0374)+200)/* var←c33060 */ , 1587462); (void) XR←ExportProcS(var←c37060, (word) (( (bPt) gf←c0374)+216)/* var←c33124 */ , 2112008); (void) XR←ExportProcS(var←c37060, (word) (( (bPt) gf←c0374)+144)/* var←c32836 */ , 134495233); (void) XR←ExportProcS(var←c37060, (word) (( (bPt) gf←c0374)+136)/* var←c32804 */ , 67386625); (void) XR←ExportProcS(var←c37060, (word) (( (bPt) gf←c0374)+208)/* var←c33092 */ , 279041); var←c37060 = (word) XR←ExportInterface((word) "TEditSelectionPrivate", (word) XR←GetTypeIndexS((word) (&string27)), 3); (* (( (ptr) gf←c0374)+89)/* var←c37092 */ ) = var←c37060; (void) XR←ExportProcS(var←c37060, (word) (( (bPt) gf←c0374)+128)/* var←c32772 */ , 0); (void) XR←ExportProcS(var←c37060, (word) (( (bPt) gf←c0374)+112)/* var←c32708 */ , 135266563); (void) XR←ExportProcS(var←c37060, (word) (( (bPt) gf←c0374)+176)/* var←c32964 */ , 68420101); var←c37060 = (word) XR←ExportInterface((word) "TEditSelectionPrivateExtras", (word) XR←GetTypeIndexS((word) (&string28)), 2) ; (* (( (ptr) gf←c0374)+89)/* var←c37092 */ ) = var←c37060; (void) XR←ExportProcS(var←c37060, (word) (( (bPt) gf←c0374)+280)/* var←c33380 */ , 1572870); } static void TEditMouseImpl←P0(formal←c053, formal←c052) word formal←c053; word formal←c052; { register ptr gf←c37124 = (ptr) &globalframe; /* TEditMouseImpl: */ SOURCE(1310, 21999) /* moved to installation proc */ SOURCE(22221, 55) { word pd29; pd29 = (* (( (ptr) (* (( (ptr) gf←c37124)+74)/* var←c33444 */ ))+10) ); (* (( (ptr) gf←c37124)+16)/* lineInfo←v4260 */ ) = (word) ( *( (fPt) ((* (ptr) pd29 ))))(pd29); }; } static void DoSelect←P60(formal←c0439, formal←c0440, formal←c0441, formal←c0442, formal←c0443, formal←c0444) word formal←c0439; word formal←c0440; word formal←c0441; word formal←c0442; word formal←c0443; word formal←c0444; { W15 var←c37156; /* declaration of proc←v4424 skipped */ /* declaration of viewer←v4452 skipped */ /* declaration of tdd←v4480 skipped */ /* declaration of x←v4508 skipped */ /* declaration of y←v4536 skipped */ /* declaration of sel←v4564 skipped */ register ptr gf←c37188 = (ptr) &globalframe; /* declaration of var←c33476 skipped */ /* declaration of var←c33508 skipped */ (* (( (ptr) &var←c37156)+4)/* proc←v4424 */ ) = formal←c0439; (* (( (ptr) &var←c37156)+5)/* viewer←v4452 */ ) = formal←c0440; (* (( (ptr) &var←c37156)+6)/* tdd←v4480 */ ) = formal←c0441; (* (( (ptr) &var←c37156)+7)/* x←v4508 */ ) = formal←c0442; (* (( (ptr) &var←c37156)+8)/* y←v4536 */ ) = formal←c0443; (* (( (ptr) &var←c37156)+9)/* sel←v4564 */ ) = formal←c0444; /* DoSelect: */ SOURCE(1624, 646) { word tmpAddr30; tmpAddr30 = (word) (( (ptr) &var←c37156)+10)/* var←c33476 */ ; (* (ptr) tmpAddr30 ) = ( ((word) (fPt) inner←P1500) ); (* (( (ptr) tmpAddr30) + 1) ) = 1; }; { word tmpAddr31; tmpAddr31 = (word) (( (ptr) &var←c37156)+12)/* var←c33508 */ ; (* (ptr) tmpAddr31 ) = ( ((word) (fPt) action←P1440) ); (* (( (ptr) tmpAddr31) + 1) ) = 1; }; SOURCE(2229, 41) SOURCE(2717, 39) { word pd32; pd32 = (* (( (ptr) (* (( (ptr) gf←c37188)+75)/* var←c33540 */ ))+21) ); (void) ( *( (fPt) ((* (ptr) pd32 ))))((* (( (ptr) &var←c37156)+9)/* sel←v4564 */ ), (* (( (ptr) gf←c37188)+26) ), pd32) ; }; SOURCE(2758, 97) { /* declaration of var←c01 skipped */ (* (( (ptr) &var←c37156)+14)/* var←c01 */ ) = (* (( (ptr) (* (( (ptr) gf←c37188)+76)/* var←c33572 */ ))+4) ); { word var←c0411; var←c0411 = (word) &var←c37156; (void) (word) XR←Enable(( ((word) (fPt) NoName←Q4704) ), ( ((word) (fPt) NoName←Q4884) ), var←c0411); }; }; SOURCE(2857, 30) { word pd33; pd33 = (* (( (ptr) (* (( (ptr) gf←c37188)+75)/* var←c33540 */ ))+22) ); (void) ( *( (fPt) ((* (ptr) pd33 ))))((* ((( (ptr) &var←c37156)+9)/* sel←v4564 */ ) ), pd33); }; } static word NoName←Q4704(formal←c0377) word formal←c0377; { SOURCE(2758, 97) { word pd34; pd34 = (* (( (ptr) formal←c0377)+14) ); (void) ( *( (fPt) ((* (ptr) pd34 ))))((word) (( (bPt) formal←c0377)+40), (* (( (ptr) formal←c0377)+5) ), pd34); }; return(0); } static void action←P1440(formal←c37252) word formal←c37252; { register ptr gf←c37220 = (ptr) &globalframe; word refSel←v8108; word tSel←v8136 = 0; word rightOfLine←v8164 = 0; formal←c37252 = (formal←c37252 - 48); /* action: */ SOURCE(1838, 388) SOURCE(1855, 166) { word var←c33604; var←c33604 = (* (( (ptr) formal←c37252)+9) ); switch (var←c33604) { case 0: refSel←v8108 = (* (ptr) (* (( (ptr) (* (( (ptr) gf←c37220)+75)/* var←c33540 */ ))+4) ) ); break; case 1: refSel←v8108 = (* (ptr) (* (( (ptr) (* (( (ptr) gf←c37220)+75)/* var←c33540 */ ))+5) ) ); break; case 2: refSel←v8108 = (* (ptr) (* (( (ptr) (* (( (ptr) gf←c37220)+75)/* var←c33540 */ ))+6) ) ); break; default: refSel←v8108 = ( XR←RaiseUnnamedError(), 0 ); break; }; }; SOURCE(2081, 29) { word pd35; pd35 = (* (( (ptr) (* (( (ptr) gf←c37220)+75)/* var←c33540 */ ))+10) ); tSel←v8136 = (word) ( *( (fPt) ((* (ptr) pd35 ))))(pd35); }; SOURCE(2112, 52) rightOfLine←v8164 = (word) ResolveToChar←P900(tSel←v8136, (* (( (ptr) formal←c37252)+5) ), (* (( (ptr) formal←c37252)+6) ), (* ( ( (ptr) formal←c37252)+7) ), (* (( (ptr) formal←c37252)+8) )); SOURCE(2166, 31) { word pd36; pd36 = (* (( (ptr) formal←c37252)+4) ); (void) ( *( (fPt) ((* (ptr) pd36 ))))(tSel←v8136, refSel←v8108, rightOfLine←v8164, pd36); }; SOURCE(2199, 27) { word pd37; pd37 = (* (( (ptr) (* (( (ptr) gf←c37220)+75)/* var←c33540 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd37 ))))(tSel←v8136, pd37); }; } static void inner←P1500(formal←c37348) word formal←c37348; { W4 var←c37284; register ptr gf←c37316 = (ptr) &globalframe; formal←c37348 = (formal←c37348 - 40); var←c37284.f0 = formal←c37348; /* inner: */ SOURCE(2438, 259) SOURCE(2454, 243) { word var←c33636; var←c33636 = (* (( (ptr) (* (( (ptr) formal←c37348)+5) ))+26) ); if ((var←c33636 == 0)) { goto lab←L100002; }; if (((* (( (ptr) gf←c37316)+22) ) == XR←GetReferentType(var←c33636))) { { word vtdd←v8252; vtdd←v8252 = var←c33636; SOURCE(2524, 173) if ((vtdd←v8252 == (* (( (ptr) formal←c37348)+6) ))) { SOURCE(2545, 152) { word pd38; pd38 = (* (( (ptr) (* (( (ptr) gf←c37316)+77)/* var←c33668 */ ))+7) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd38 ))))((* (( (ptr) formal←c37348)+6) ), (* (( (ptr) gf←c37316)+26) ), pd38))) { SOURCE(2602, 57) { word var←c0412; var←c0412 = (word) &var←c37284; (void) (word) XR←Enable(( ((word) (fPt) NoName←Q4764) ), ( ((word) (fPt) NoName←Q4824) ), var←c0412); }; SOURCE(2661, 36) { word pd39; pd39 = (* (( (ptr) (* (( (ptr) gf←c37316)+77)/* var←c33668 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd39 ))))((* ((( (ptr) formal←c37348)+6)) ), pd39); }; }; }; }; }; } else { lab←L100002: ; }; }; } static word NoName←Q4764(formal←c0382) word formal←c0382; { SOURCE(2602, 57) (void) action←P1440((word) ((( (bPt) (* (ptr) formal←c0382 ))+48))); return(0); } static void SelectPoint←P180(formal←c0445, formal←c0446, formal←c0447, y←v4984, formal←c0448, formal←c0449) word formal←c0445; word formal←c0446; word formal←c0447; word y←v4984; word formal←c0448; word formal←c0449; { W11 var←c37380; /* declaration of viewer←v4900 skipped */ /* declaration of tdd←v4928 skipped */ /* declaration of x←v4956 skipped */ /* declaration of sel←v5012 skipped */ /* declaration of pDel←v5040 skipped */ /* declaration of var←c33700 skipped */ (* (( (ptr) &var←c37380)+4)/* viewer←v4900 */ ) = formal←c0445; (* (( (ptr) &var←c37380)+5)/* tdd←v4928 */ ) = formal←c0446; (* (( (ptr) &var←c37380)+6)/* x←v4956 */ ) = formal←c0447; (* (( (ptr) &var←c37380)+7)/* sel←v5012 */ ) = formal←c0448; (* (( (ptr) &var←c37380)+8)/* pDel←v5040 */ ) = formal←c0449; /* SelectPoint: */ SOURCE(2893, 881) { word tmpAddr40; tmpAddr40 = (word) (( (ptr) &var←c37380)+9)/* var←c33700 */ ; (* (ptr) tmpAddr40 ) = ( ((word) (fPt) DoSelectPoint←P1608) ); (* (( (ptr) tmpAddr40) + 1) ) = 1; }; SOURCE(3727, 47) (void) DoSelect←P60((word) (( (bPt) &var←c37380)+36)/* var←c33700 */ , (* (( (ptr) &var←c37380)+4)/* viewer←v4900 */ ), (* ( ( (ptr) &var←c37380)+5)/* tdd←v4928 */ ), (* (( (ptr) &var←c37380)+6)/* x←v4956 */ ), y←v4984, (* (( (ptr) &var←c37380)+7) /* sel←v5012 */ )); } static void DoSelectPoint←P1608(tSel←v8372, refSel←v8400, rightOfLine←v8428, formal←c37444) word tSel←v8372; word refSel←v8400; word rightOfLine←v8428; word formal←c37444; { register ptr gf←c37412 = (ptr) &globalframe; word newInsertion←v8456 = 0; formal←c37444 = (formal←c37444 - 36); /* DoSelectPoint: */ SOURCE(3053, 666) SOURCE(3177, 96) if (((* (ptr) refSel←v8400 ) != (* (( (ptr) formal←c37444)+4) )) || ((* (( (ptr) refSel←v8400)+22) ) != 0)) { SOURCE(3234, 39) { word pd41; pd41 = (* (( (ptr) (* (( (ptr) gf←c37412)+75)/* var←c33540 */ ))+36) ); (void) ( *( (fPt) ((* (ptr) pd41 ))))((* ((( (ptr) formal←c37444)+7)) ), pd41); }; }; SOURCE(3275, 21) (* (W9Pt) (( (ptr) tSel←v8372)+11) ) = (* (W9Pt) (( (ptr) tSel←v8372)+2) ); SOURCE(3298, 71) newInsertion←v8456 = (word) SetInsertion←P840(tSel←v8372, (* (( (ptr) formal←c37444)+6) ), (* (( (ptr) tSel←v8372)+4) ), rightOfLine←v8428, (* ( ( (ptr) formal←c37444)+5) )); SOURCE(3371, 348) if ((((((* (ptr) refSel←v8400 ) != (* (( (ptr) formal←c37444)+4) )) || ! XR←EqualWords((( (ptr) refSel←v8400)+2), (( (ptr) tSel←v8372)+2) , 9)) || ((* (( (ptr) refSel←v8400)+22) ) != 0)) || ((* (( (ptr) refSel←v8400)+24) ) != newInsertion←v8456)) || ((* (( (ptr) refSel←v8400)+26) ) != (* (( (ptr) formal←c37444)+8) ))) { SOURCE(3519, 24) (* (( (ptr) tSel←v8372)+22) ) = 0; SOURCE(3545, 20) (* (ptr) tSel←v8372 ) = (* (( (ptr) formal←c37444)+4) ); SOURCE(3567, 15) (* (( (ptr) tSel←v8372)+1) ) = (* (( (ptr) formal←c37444)+5) ); SOURCE(3584, 29) (* (( (ptr) tSel←v8372)+24) ) = newInsertion←v8456; SOURCE(3615, 25) (* (( (ptr) tSel←v8372)+26) ) = (* (( (ptr) formal←c37444)+8) ); SOURCE(3642, 17) (void) SetSelLooks←P660(tSel←v8372); SOURCE(3661, 58) { word pd42; pd42 = (* (( (ptr) (* (( (ptr) gf←c37412)+75)/* var←c33540 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd42 ))))(tSel←v8372, (* (( (ptr) formal←c37444)+7) ), 1, 1, 0, pd42); }; }; } static void SelectChar←P240(formal←c0450, formal←c0451, formal←c0452, y←v5184, formal←c0453, formal←c0454) word formal←c0450; word formal←c0451; word formal←c0452; word y←v5184; word formal←c0453; word formal←c0454; { W11 var←c37476; /* declaration of viewer←v5100 skipped */ /* declaration of tdd←v5128 skipped */ /* declaration of x←v5156 skipped */ /* declaration of sel←v5212 skipped */ /* declaration of pDel←v5240 skipped */ /* declaration of var←c33732 skipped */ (* (( (ptr) &var←c37476)+4)/* viewer←v5100 */ ) = formal←c0450; (* (( (ptr) &var←c37476)+5)/* tdd←v5128 */ ) = formal←c0451; (* (( (ptr) &var←c37476)+6)/* x←v5156 */ ) = formal←c0452; (* (( (ptr) &var←c37476)+7)/* sel←v5212 */ ) = formal←c0453; (* (( (ptr) &var←c37476)+8)/* pDel←v5240 */ ) = formal←c0454; /* SelectChar: */ SOURCE(3780, 1239) { word tmpAddr43; tmpAddr43 = (word) (( (ptr) &var←c37476)+9)/* var←c33732 */ ; (* (ptr) tmpAddr43 ) = ( ((word) (fPt) DoSelectChar←P1668) ); (* (( (ptr) tmpAddr43) + 1) ) = 1; }; SOURCE(4973, 46) (void) DoSelect←P60((word) (( (bPt) &var←c37476)+36)/* var←c33732 */ , (* (( (ptr) &var←c37476)+4)/* viewer←v5100 */ ), (* ( ( (ptr) &var←c37476)+5)/* tdd←v5128 */ ), (* (( (ptr) &var←c37476)+6)/* x←v5156 */ ), y←v5184, (* (( (ptr) &var←c37476)+7) /* sel←v5212 */ )); } static void DoSelectChar←P1668(tSel←v8576, refSel←v8604, rightOfLine←v8632, formal←c37540) word tSel←v8576; word refSel←v8604; word rightOfLine←v8632; word formal←c37540; { register ptr gf←c37508 = (ptr) &globalframe; word newInsertion←v8660 = 0; word newGrain←v8688 = 1; word startValid←v8716 = 1; word endValid←v8744 = 1; word var←c0413; word var←c33764; formal←c37540 = (formal←c37540 - 36); /* DoSelectChar: */ SOURCE(3940, 1025) SOURCE(4141, 21) (* (W9Pt) (( (ptr) tSel←v8576)+11) ) = (* (W9Pt) (( (ptr) tSel←v8576)+2) ); SOURCE(4164, 409) { word tc44; if ( ( ( (0 != rightOfLine←v8632) ? ((* (( (ptr) (* (( (ptr) formal←c37540)+5) ))+11) ) != 0) : 0 ) ? ( (int)(* (( (ptr) tSel←v8576)+13) ) == (int)(* (ptr) (* (( (ptr) (* (( (ptr) formal←c37540)+5) ))+1) ) )) : 0 ) ) { { word idx45; word limit46; var←c33764 = (* (( (ptr) (* (( (ptr) formal←c37540)+5) ))+1) ); var←c0413 = (var←c0413 & 2147483648) | (( (((unsigned)(* (( (ptr) (( (W9Pt) (( (ptr) var←c33764)+3))+( idx45 = (* (( (ptr) tSel←v8576)+13) ), limit46 = (* (( (ptr) var←c33764)+2) ), BCK(idx45, limit46) )))+2) ) << 1) >> 1) )); }; tc44 = (word) (( (((unsigned)var←c0413 << 1) >> 1) ) == 0); } else { tc44 = (word) 0; }; if (tc44) { SOURCE(4324, 78) { word var←c33796; { word pd47; pd47 = (* (( (ptr) (* (( (ptr) gf←c37508)+78)/* var←c33828 */ ))+6) ); var←c33796 = (word) ( *( (fPt) ((* (ptr) pd47 ))))((* ((( (ptr) tSel←v8576)+2)) ), pd47); }; (* (( (ptr) tSel←v8576)+3) ) = var←c33796; (* (( (ptr) tSel←v8576)+12) ) = var←c33796; }; SOURCE(4404, 16) newGrain←v8688 = 0; SOURCE(4422, 21) newInsertion←v8660 = 0; SOURCE(4445, 29) endValid←v8744 = 0; startValid←v8716 = 0; } else { SOURCE(4485, 71) newInsertion←v8660 = (word) SetInsertion←P840(tSel←v8576, (* (( (ptr) formal←c37540)+6) ), (* (( (ptr) tSel←v8576)+4) ), rightOfLine←v8632, (* ( ( (ptr) formal←c37540)+5) )); SOURCE(4558, 15) newGrain←v8688 = 1; }; }; SOURCE(4578, 387) if (((((((* (ptr) refSel←v8604 ) != (* (( (ptr) formal←c37540)+4) )) || ! XR←EqualWords((( (ptr) refSel←v8604)+2), (( (ptr) tSel←v8576)+2) , 9)) || ! XR←EqualWords((( (ptr) refSel←v8604)+11), (( (ptr) tSel←v8576)+11), 9)) || ((* (( (ptr) refSel←v8604)+22) ) != newGrain←v8688)) || ((* ( ( (ptr) refSel←v8604)+26) ) != (* (( (ptr) formal←c37540)+8) ))) || ((* (( (ptr) refSel←v8604)+24) ) != newInsertion←v8660)) { SOURCE(4752, 27) (* (( (ptr) tSel←v8576)+22) ) = newGrain←v8688; SOURCE(4781, 20) (* (ptr) tSel←v8576 ) = (* (( (ptr) formal←c37540)+4) ); SOURCE(4803, 15) (* (( (ptr) tSel←v8576)+1) ) = (* (( (ptr) formal←c37540)+5) ); SOURCE(4820, 29) (* (( (ptr) tSel←v8576)+24) ) = newInsertion←v8660; SOURCE(4851, 25) (* (( (ptr) tSel←v8576)+26) ) = (* (( (ptr) formal←c37540)+8) ); SOURCE(4878, 17) (void) SetSelLooks←P660(tSel←v8576); SOURCE(4897, 68) { word pd48; pd48 = (* (( (ptr) (* (( (ptr) gf←c37508)+75)/* var←c33540 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd48 ))))(tSel←v8576, (* (( (ptr) formal←c37540)+7) ), startValid←v8716, endValid←v8744, 0, pd48) ; }; }; } static void SelectWord←P300(formal←c0455, formal←c0456, formal←c0457, y←v5384, formal←c0458, formal←c0459) word formal←c0455; word formal←c0456; word formal←c0457; word y←v5384; word formal←c0458; word formal←c0459; { W11 var←c37572; /* declaration of viewer←v5300 skipped */ /* declaration of tdd←v5328 skipped */ /* declaration of x←v5356 skipped */ /* declaration of sel←v5412 skipped */ /* declaration of pDel←v5440 skipped */ /* declaration of var←c33860 skipped */ (* (( (ptr) &var←c37572)+4)/* viewer←v5300 */ ) = formal←c0455; (* (( (ptr) &var←c37572)+5)/* tdd←v5328 */ ) = formal←c0456; (* (( (ptr) &var←c37572)+6)/* x←v5356 */ ) = formal←c0457; (* (( (ptr) &var←c37572)+7)/* sel←v5412 */ ) = formal←c0458; (* (( (ptr) &var←c37572)+8)/* pDel←v5440 */ ) = formal←c0459; /* SelectWord: */ SOURCE(5025, 1488) { word tmpAddr49; tmpAddr49 = (word) (( (ptr) &var←c37572)+9)/* var←c33860 */ ; (* (ptr) tmpAddr49 ) = ( ((word) (fPt) DoSelectWord←P1728) ); (* (( (ptr) tmpAddr49) + 1) ) = 1; }; SOURCE(6467, 46) (void) DoSelect←P60((word) (( (bPt) &var←c37572)+36)/* var←c33860 */ , (* (( (ptr) &var←c37572)+4)/* viewer←v5300 */ ), (* ( ( (ptr) &var←c37572)+5)/* tdd←v5328 */ ), (* (( (ptr) &var←c37572)+6)/* x←v5356 */ ), y←v5384, (* (( (ptr) &var←c37572)+7) /* sel←v5412 */ )); } static void DoSelectWord←P1728(tSel←v8864, refSel←v8892, rightOfLine←v8920, formal←c37636) word tSel←v8864; word refSel←v8892; word rightOfLine←v8920; word formal←c37636; { register ptr gf←c37604 = (ptr) &globalframe; word start←v8948; word end←v8976; word punc←v9004 = 0; word newInsertion←v9032 = 0; word newGrain←v9060 = 1; word startValid←v9088 = 1; word endValid←v9116 = 1; word hitLine←v9144; word var←c0414; word var←c33956; formal←c37636 = (formal←c37636 - 36); /* DoSelectWord: */ SOURCE(5185, 1274) SOURCE(5444, 34) hitLine←v9144 = (* (( (ptr) tSel←v8864)+4) ); SOURCE(5480, 49) { W3 var←c33892; (void) ExpandToWord←P780((word) &var←c33892, (* (W2Pt) (( (ptr) tSel←v8864)+2) ), 0); punc←v9004 = var←c33892.f2; end←v8976 = var←c33892.f1; start←v8948 = var←c33892.f0; }; SOURCE(5531, 20) (* (ptr) tSel←v8864 ) = (* (( (ptr) formal←c37636)+4) ); SOURCE(5553, 15) (* (( (ptr) tSel←v8864)+1) ) = (* (( (ptr) formal←c37636)+5) ); SOURCE(5570, 28) (* (( (ptr) tSel←v8864)+3) ) = start←v8948; SOURCE(5600, 41) (* (( (ptr) tSel←v8864)+11) ) = (* (( (ptr) tSel←v8864)+2) ); (* (( (ptr) tSel←v8864)+12) ) = end←v8976; SOURCE(5643, 43) { word pd50; pd50 = (* (( (ptr) (* (( (ptr) gf←c37604)+75)/* var←c33540 */ ))+43) ); (void) ( *( (fPt) ((* (ptr) pd50 ))))(tSel←v8864, (* (( (ptr) formal←c37636)+4) ), 1, 1, pd50); }; SOURCE(5688, 372) { word tc51; if ( ( ( (0 != rightOfLine←v8920) ? ((* (( (ptr) (* (( (ptr) formal←c37636)+5) ))+11) ) != 0) : 0 ) ? ( (int)(* (( (ptr) tSel←v8864)+13) ) == (int)(* (ptr) (* (( (ptr) (* (( (ptr) formal←c37636)+5) ))+1) ) )) : 0 ) ) { { word idx52; word limit53; var←c33956 = (* (( (ptr) (* (( (ptr) formal←c37636)+5) ))+1) ); var←c0414 = (var←c0414 & 2147483648) | (( (((unsigned)(* (( (ptr) (( (W9Pt) (( (ptr) var←c33956)+3))+( idx52 = (* (( (ptr) tSel←v8864)+13) ), limit53 = (* (( (ptr) var←c33956)+2) ), BCK(idx52, limit53) )))+2) ) << 1) >> 1) )); }; tc51 = (word) (( (((unsigned)var←c0414 << 1) >> 1) ) == 0); } else { tc51 = (word) 0; }; if (tc51) { SOURCE(5819, 78) { word var←c33988; { word pd54; pd54 = (* (( (ptr) (* (( (ptr) gf←c37604)+78)/* var←c33828 */ ))+6) ); var←c33988 = (word) ( *( (fPt) ((* (ptr) pd54 ))))((* ((( (ptr) tSel←v8864)+2)) ), pd54); }; (* (( (ptr) tSel←v8864)+3) ) = var←c33988; (* (( (ptr) tSel←v8864)+12) ) = var←c33988; }; SOURCE(5899, 16) newGrain←v9060 = 0; SOURCE(5917, 21) newInsertion←v9032 = 0; SOURCE(5940, 29) endValid←v9116 = 0; startValid←v9088 = 0; } else { SOURCE(5980, 63) newInsertion←v9032 = (word) SetInsertion←P840(tSel←v8864, (* (( (ptr) formal←c37636)+6) ), hitLine←v9144, rightOfLine←v8920, (* ( ( (ptr) formal←c37636)+5) )); SOURCE(6045, 15) newGrain←v9060 = 2; }; }; SOURCE(6065, 394) if (((((((* (ptr) refSel←v8892 ) != (* (ptr) tSel←v8864 )) || ((* (( (ptr) refSel←v8892)+22) ) != newGrain←v9060)) || ! XR←EqualWords( (( (ptr) tSel←v8864)+2), (( (ptr) refSel←v8892)+2), 2)) || ! XR←EqualWords((( (ptr) tSel←v8864)+11), (( (ptr) refSel←v8892)+11) , 2)) || (newInsertion←v9032 != (* (( (ptr) refSel←v8892)+24) ))) || ((* (( (ptr) refSel←v8892)+26) ) != (* (( (ptr) formal←c37636)+8) ))) { SOURCE(6260, 27) (* (( (ptr) tSel←v8864)+22) ) = newGrain←v9060; SOURCE(6289, 23) (* (( (ptr) tSel←v8864)+23) ) = punc←v9004; SOURCE(6314, 29) (* (( (ptr) tSel←v8864)+24) ) = newInsertion←v9032; SOURCE(6345, 25) (* (( (ptr) tSel←v8864)+26) ) = (* (( (ptr) formal←c37636)+8) ); SOURCE(6372, 17) (void) SetSelLooks←P660(tSel←v8864); SOURCE(6391, 68) { word pd55; pd55 = (* (( (ptr) (* (( (ptr) gf←c37604)+75)/* var←c33540 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd55 ))))(tSel←v8864, (* (( (ptr) formal←c37636)+7) ), startValid←v9088, endValid←v9116, 0, pd55) ; }; }; } static void SelectNode←P360(formal←c0460, formal←c0461, formal←c0462, y←v5584, formal←c0463, formal←c0464) word formal←c0460; word formal←c0461; word formal←c0462; word y←v5584; word formal←c0463; word formal←c0464; { W11 var←c37668; /* declaration of viewer←v5500 skipped */ /* declaration of tdd←v5528 skipped */ /* declaration of x←v5556 skipped */ /* declaration of sel←v5612 skipped */ /* declaration of pDel←v5640 skipped */ /* declaration of var←c34020 skipped */ (* (( (ptr) &var←c37668)+4)/* viewer←v5500 */ ) = formal←c0460; (* (( (ptr) &var←c37668)+5)/* tdd←v5528 */ ) = formal←c0461; (* (( (ptr) &var←c37668)+6)/* x←v5556 */ ) = formal←c0462; (* (( (ptr) &var←c37668)+7)/* sel←v5612 */ ) = formal←c0463; (* (( (ptr) &var←c37668)+8)/* pDel←v5640 */ ) = formal←c0464; /* SelectNode: */ SOURCE(6519, 981) { word tmpAddr56; tmpAddr56 = (word) (( (ptr) &var←c37668)+9)/* var←c34020 */ ; (* (ptr) tmpAddr56 ) = ( ((word) (fPt) DoSelectNode←P1788) ); (* (( (ptr) tmpAddr56) + 1) ) = 1; }; SOURCE(7454, 46) (void) DoSelect←P60((word) (( (bPt) &var←c37668)+36)/* var←c34020 */ , (* (( (ptr) &var←c37668)+4)/* viewer←v5500 */ ), (* ( ( (ptr) &var←c37668)+5)/* tdd←v5528 */ ), (* (( (ptr) &var←c37668)+6)/* x←v5556 */ ), y←v5584, (* (( (ptr) &var←c37668)+7) /* sel←v5612 */ )); } static void DoSelectNode←P1788(tSel←v9264, refSel←v9292, rightOfLine←v9320, formal←c37732) word tSel←v9264; word refSel←v9292; word rightOfLine←v9320; word formal←c37732; { register ptr gf←c37700 = (ptr) &globalframe; word hitLine←v9348; word newInsertion←v9376 = 0; formal←c37732 = (formal←c37732 - 36); /* DoSelectNode: */ SOURCE(6678, 768) SOURCE(6760, 34) hitLine←v9348 = (* (( (ptr) tSel←v9264)+4) ); SOURCE(6837, 20) (* (ptr) tSel←v9264 ) = (* (( (ptr) formal←c37732)+4) ); SOURCE(6859, 15) (* (( (ptr) tSel←v9264)+1) ) = (* (( (ptr) formal←c37732)+5) ); SOURCE(6876, 41) { word var←c34052; var←c34052 = (* (( (ptr) tSel←v9264)+2) ); (* (( (ptr) tSel←v9264)+2) ) = var←c34052; (* (( (ptr) tSel←v9264)+3) ) = 0; }; SOURCE(6919, 81) { word var←c34084; { word pd57; word x58; pd57 = (* (( (ptr) (* (( (ptr) gf←c37700)+78)/* var←c33828 */ ))+6) ); var←c34084 = ((x58 = (word) ( *( (fPt) ((* (ptr) pd57 ))))((* ((( (ptr) tSel←v9264)+2)) ), pd57), MAX((int)(word), x58, 1)) - 1); }; (* (( (ptr) tSel←v9264)+11) ) = (* (( (ptr) tSel←v9264)+2) ); (* (( (ptr) tSel←v9264)+12) ) = var←c34084; }; SOURCE(7002, 43) { word pd59; pd59 = (* (( (ptr) (* (( (ptr) gf←c37700)+75)/* var←c33540 */ ))+43) ); (void) ( *( (fPt) ((* (ptr) pd59 ))))(tSel←v9264, (* (( (ptr) formal←c37732)+4) ), 1, 1, pd59); }; SOURCE(7047, 57) newInsertion←v9376 = (word) SetInsertion←P840(tSel←v9264, (* (( (ptr) formal←c37732)+6) ), hitLine←v9348, 0, (* (( (ptr) formal←c37732)+5) )); SOURCE(7106, 340) if ((((((* (ptr) refSel←v9292 ) != (* (( (ptr) formal←c37732)+4) )) || ((* (( (ptr) refSel←v9292)+2) ) != (* (( (ptr) tSel←v9264)+2) ))) || ((* (( (ptr) refSel←v9292)+22) ) != 3)) || ((* (( (ptr) refSel←v9292)+26) ) != (* (( (ptr) formal←c37732)+8) ))) || ((* ( ( (ptr) refSel←v9292)+24) ) != newInsertion←v9376)) { SOURCE(7271, 23) (* (( (ptr) tSel←v9264)+22) ) = 3; SOURCE(7296, 25) (* (( (ptr) tSel←v9264)+26) ) = (* (( (ptr) formal←c37732)+8) ); SOURCE(7323, 29) (* (( (ptr) tSel←v9264)+24) ) = newInsertion←v9376; SOURCE(7354, 17) (void) SetSelLooks←P660(tSel←v9264); SOURCE(7373, 73) { word pd60; pd60 = (* (( (ptr) (* (( (ptr) gf←c37700)+75)/* var←c33540 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd60 ))))(tSel←v9264, (* (( (ptr) formal←c37732)+7) ), 0, 0, 0, pd60); }; }; } static void SelectBranch←P420(formal←c0465, formal←c0466, formal←c0467, y←v5784, formal←c0468, formal←c0469) word formal←c0465; word formal←c0466; word formal←c0467; word y←v5784; word formal←c0468; word formal←c0469; { W11 var←c37764; /* declaration of viewer←v5700 skipped */ /* declaration of tdd←v5728 skipped */ /* declaration of x←v5756 skipped */ /* declaration of sel←v5812 skipped */ /* declaration of pDel←v5840 skipped */ /* declaration of var←c34148 skipped */ (* (( (ptr) &var←c37764)+4)/* viewer←v5700 */ ) = formal←c0465; (* (( (ptr) &var←c37764)+5)/* tdd←v5728 */ ) = formal←c0466; (* (( (ptr) &var←c37764)+6)/* x←v5756 */ ) = formal←c0467; (* (( (ptr) &var←c37764)+7)/* sel←v5812 */ ) = formal←c0468; (* (( (ptr) &var←c37764)+8)/* pDel←v5840 */ ) = formal←c0469; /* SelectBranch: */ SOURCE(7506, 1027) { word tmpAddr61; tmpAddr61 = (word) (( (ptr) &var←c37764)+9)/* var←c34148 */ ; (* (ptr) tmpAddr61 ) = ( ((word) (fPt) DoSelectBranch←P1848) ); (* (( (ptr) tmpAddr61) + 1) ) = 1; }; SOURCE(8485, 48) (void) DoSelect←P60((word) (( (bPt) &var←c37764)+36)/* var←c34148 */ , (* (( (ptr) &var←c37764)+4)/* viewer←v5700 */ ), (* ( ( (ptr) &var←c37764)+5)/* tdd←v5728 */ ), (* (( (ptr) &var←c37764)+6)/* x←v5756 */ ), y←v5784, (* (( (ptr) &var←c37764)+7) /* sel←v5812 */ )); } static void DoSelectBranch←P1848(tSel←v9496, refSel←v9524, rightOfLine←v9552, formal←c37828) word tSel←v9496; word refSel←v9524; word rightOfLine←v9552; word formal←c37828; { register ptr gf←c37796 = (ptr) &globalframe; word hitLine←v9580; word newInsertion←v9608 = 0; formal←c37828 = (formal←c37828 - 36); /* DoSelectBranch: */ SOURCE(7667, 810) SOURCE(7751, 34) hitLine←v9580 = (* (( (ptr) tSel←v9496)+4) ); SOURCE(7828, 20) (* (ptr) tSel←v9496 ) = (* (( (ptr) formal←c37828)+4) ); SOURCE(7850, 15) (* (( (ptr) tSel←v9496)+1) ) = (* (( (ptr) formal←c37828)+5) ); SOURCE(7867, 41) { word var←c34180; var←c34180 = (* (( (ptr) tSel←v9496)+2) ); (* (( (ptr) tSel←v9496)+2) ) = var←c34180; (* (( (ptr) tSel←v9496)+3) ) = 0; }; SOURCE(7910, 60) { word pd62; pd62 = (* (( (ptr) (* (( (ptr) gf←c37796)+79)/* var←c34212 */ ))+26) ); (* (( (ptr) tSel←v9496)+11) ) = (word) ( *( (fPt) ((* (ptr) pd62 ))))((* ((( (ptr) tSel←v9496)+2)) ), pd62); }; SOURCE(7972, 55) { word pd63; pd63 = (* (( (ptr) (* (( (ptr) gf←c37796)+79)/* var←c34212 */ ))+36) ); (* (( (ptr) tSel←v9496)+12) ) = (word) ( *( (fPt) ((* (ptr) pd63 ))))((* ((( (ptr) tSel←v9496)+11)) ), pd63); }; SOURCE(8029, 43) { word pd64; pd64 = (* (( (ptr) (* (( (ptr) gf←c37796)+75)/* var←c33540 */ ))+43) ); (void) ( *( (fPt) ((* (ptr) pd64 ))))(tSel←v9496, (* (( (ptr) formal←c37828)+4) ), 1, 1, pd64); }; SOURCE(8074, 57) newInsertion←v9608 = (word) SetInsertion←P840(tSel←v9496, (* (( (ptr) formal←c37828)+6) ), hitLine←v9580, 0, (* (( (ptr) formal←c37828)+5) )); SOURCE(8133, 344) if ((((((* (ptr) refSel←v9524 ) != (* (( (ptr) formal←c37828)+4) )) || ((* (( (ptr) refSel←v9524)+2) ) != (* (( (ptr) tSel←v9496)+2) ))) || ((* (( (ptr) refSel←v9524)+22) ) != 4)) || ((* (( (ptr) refSel←v9524)+26) ) != (* (( (ptr) formal←c37828)+8) ))) || ((* ( ( (ptr) refSel←v9524)+24) ) != newInsertion←v9608)) { SOURCE(8300, 25) (* (( (ptr) tSel←v9496)+22) ) = 4; SOURCE(8327, 25) (* (( (ptr) tSel←v9496)+26) ) = (* (( (ptr) formal←c37828)+8) ); SOURCE(8354, 29) (* (( (ptr) tSel←v9496)+24) ) = newInsertion←v9608; SOURCE(8385, 17) (void) SetSelLooks←P660(tSel←v9496); SOURCE(8404, 73) { word pd65; pd65 = (* (( (ptr) (* (( (ptr) gf←c37796)+75)/* var←c33540 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd65 ))))(tSel←v9496, (* (( (ptr) formal←c37828)+7) ), 0, 0, 0, pd65); }; }; } static word Dist←P480(sel←v5900, dir←v5928, x←v5956, y←v5984) word sel←v5900; word dir←v5928; word x←v5956; word y←v5984; { word var←c6028; /* Dist: */ SOURCE(8539, 294) SOURCE(8730, 103) if ((dir←v5928 == 0)) { { word var←c0415; { word var←c34276; word n←v31504; word var←c34308; word n←v31456; n←v31504 = (x←v5956 - (* (( (ptr) sel←v5900)+5) )); SOURCE(8716, 11) var←c34276 = IOP2( * , (int)n←v31504, (int)n←v31504); n←v31456 = (y←v5984 - (* (( (ptr) sel←v5900)+6) )); SOURCE(8716, 11) var←c34308 = IOP2( * , (int)n←v31456, (int)n←v31456); var←c0415 = (var←c34276 + var←c34308); }; return(var←c0415); }; } else { { word var←c0416; { word var←c34340; word n←v31408; word var←c34372; word n←v31360; n←v31408 = (x←v5956 - (* (( (ptr) sel←v5900)+14) )); SOURCE(8716, 11) var←c34340 = IOP2( * , (int)n←v31408, (int)n←v31408); n←v31360 = (y←v5984 - (* (( (ptr) sel←v5900)+15) )); SOURCE(8716, 11) var←c34372 = IOP2( * , (int)n←v31360, (int)n←v31360); var←c0416 = (var←c34340 + var←c34372); }; return(var←c0416); }; }; } static word CompareLoc←P540(loc1←v6088, loc2←v6116) W2 loc1←v6088; W2 loc2←v6116; { register ptr gf←c37860 = (ptr) &globalframe; word order←v6160; /* CompareLoc: */ SOURCE(8839, 270) SOURCE(8928, 122) if ((loc1←v6088.f0 == loc2←v6116.f0)) { SOURCE(8956, 94) { word var←c34404; var←c34404 = loc1←v6088.f1; if (( (int)var←c34404 < (int)loc2←v6116.f1)) { return(0); } else { if (( (int)var←c34404 == (int)loc2←v6116.f1)) { return(1); } else { return(2); }; }; }; }; SOURCE(9052, 57) { word pd66; pd66 = (* (( (ptr) (* (( (ptr) gf←c37860)+80)/* var←c34468 */ ))+22) ); return((word) ( *( (fPt) ((* (ptr) pd66 ))))(loc1←v6088.f0, loc2←v6116.f0, pd66)); }; } static void Extend←P600(formal←c0470, formal←c0471, x←v6276, y←v6304, formal←c0472, formal←c0473, formal←c0474, formal←c0475) word formal←c0470; word formal←c0471; word x←v6276; word y←v6304; word formal←c0472; word formal←c0473; word formal←c0474; word formal←c0475; { W12 var←c37892; /* declaration of viewer←v6220 skipped */ /* declaration of tdd←v6248 skipped */ /* declaration of sel←v6332 skipped */ /* declaration of pDel←v6360 skipped */ /* declaration of changeLevel←v6388 skipped */ /* declaration of saveEnds←v6416 skipped */ /* declaration of var←c34500 skipped */ (* (( (ptr) &var←c37892)+4)/* viewer←v6220 */ ) = formal←c0470; (* (( (ptr) &var←c37892)+5)/* tdd←v6248 */ ) = formal←c0471; (* (( (ptr) &var←c37892)+6)/* sel←v6332 */ ) = formal←c0472; (* (( (ptr) &var←c37892)+7)/* pDel←v6360 */ ) = formal←c0473; (* (( (ptr) &var←c37892)+8)/* changeLevel←v6388 */ ) = formal←c0474; (* (( (ptr) &var←c37892)+9)/* saveEnds←v6416 */ ) = formal←c0475; /* Extend: */ SOURCE(9213, 3884) { word tmpAddr67; tmpAddr67 = (word) (( (ptr) &var←c37892)+10)/* var←c34500 */ ; (* (ptr) tmpAddr67 ) = ( ((word) (fPt) DoExtend←P1968) ); (* (( (ptr) tmpAddr67) + 1) ) = 1; }; SOURCE(13055, 42) (void) DoSelect←P60((word) (( (bPt) &var←c37892)+40)/* var←c34500 */ , (* (( (ptr) &var←c37892)+4)/* viewer←v6220 */ ), (* ( ( (ptr) &var←c37892)+5)/* tdd←v6248 */ ), x←v6276, y←v6304, (* (( (ptr) &var←c37892)+6)/* sel←v6332 */ )); } static void DoExtend←P1968(tSel←v9876, refSel←v9904, rightOfLine←v9932, formal←c37956) word tSel←v9876; word refSel←v9904; word rightOfLine←v9932; word formal←c37956; { register ptr gf←c37924 = (ptr) &globalframe; word end←v9960 = 0; word ok←v9988; W9 sp←v10016; formal←c37956 = (formal←c37956 - 40); /* DoExtend: */ SOURCE(9429, 3623) SOURCE(9552, 32) XR←FillWords(&sp←v10016, 9, 0); SOURCE(9618, 32) if (((* (ptr) refSel←v9904 ) == 0)) { SOURCE(9644, 6) return; }; SOURCE(9678, 30) ok←v9988 = ((* (( (ptr) refSel←v9904)+26) ) == (* (( (ptr) formal←c37956)+7) )); SOURCE(9710, 22) end←v9960 = (* (( (ptr) refSel←v9904)+24) ); SOURCE(9734, 233) if (((* (ptr) refSel←v9904 ) != (* (( (ptr) formal←c37956)+4) ))) { SOURCE(9763, 204) { word refTDD←v10060; SOURCE(9765, 68) refTDD←v10060 = XR←Narrow((* (( (ptr) (* (ptr) refSel←v9904 ))+26) ), (* (( (ptr) gf←c37924)+22) )); SOURCE(9835, 51) if ((refTDD←v10060 == 0) || ((* (ptr) refTDD←v10060 ) != (* (ptr) (* (( (ptr) formal←c37956)+5) ) ))) { SOURCE(9880, 6) return; }; SOURCE(9888, 79) ok←v9988 = 0; }; }; SOURCE(9970, 43) if (((* (( (ptr) refSel←v9904)+22) ) == 0)) { SOURCE(10003, 10) ok←v9988 = 0; }; SOURCE(10015, 105) if ((0 != (* (( (ptr) formal←c37956)+9) )) || ((* (( (ptr) formal←c37956)+5) ) != (* (( (ptr) gf←c37924)+12)/* initTDD←v3840 */ ))) { SOURCE(10049, 13) (* (( (ptr) gf←c37924)+12)/* initTDD←v3840 */ ) = (* (( (ptr) formal←c37956)+5) ); SOURCE(10064, 28) (* (W2Pt) (( (ptr) gf←c37924)+8)/* initStart←v3784 */ ) = (* (W2Pt) (( (ptr) refSel←v9904)+2) ); SOURCE(10094, 26) (* (W2Pt) (( (ptr) gf←c37924)+10)/* initEnd←v3812 */ ) = (* (W2Pt) (( (ptr) refSel←v9904)+11) ); }; SOURCE(10123, 15) sp←v10016 = (* (W9Pt) (( (ptr) tSel←v9876)+2) ); SOURCE(10140, 505) if ((end←v9960 == 1)) { SOURCE(10160, 235) if (((word) CompareLoc←P540((* (W2Pt) (( (ptr) tSel←v9876)+2) ), (* (W2Pt) (( (ptr) refSel←v9904)+2) )) == 0)) { SOURCE(10221, 12) end←v9960 = 0; SOURCE(10235, 126) { word var←c34564; var←c34564 = (word) CompareLoc←P540((* (W2Pt) (( (ptr) refSel←v9904)+2) ), (* (W2Pt) (( (ptr) gf←c37924)+10)/* initEnd←v3812 */ )) ; if ((var←c34564 == 1) || (var←c34564 == 0)) { SOURCE(10300, 24) (* (W2Pt) (( (ptr) refSel←v9904)+11) ) = (* (W2Pt) (( (ptr) gf←c37924)+10)/* initEnd←v3812 */ ); } else { SOURCE(10337, 24) (* (W2Pt) (( (ptr) gf←c37924)+10)/* initEnd←v3812 */ ) = (* (W2Pt) (( (ptr) refSel←v9904)+11) ); }; }; SOURCE(10383, 12) ok←v9988 = 0; }; } else { SOURCE(10406, 239) if (((word) CompareLoc←P540((* (W2Pt) (( (ptr) tSel←v9876)+2) ), (* (W2Pt) (( (ptr) refSel←v9904)+11) )) == 2)) { SOURCE(10464, 11) end←v9960 = 1; SOURCE(10477, 134) { word var←c34596; var←c34596 = (word) CompareLoc←P540((* (W2Pt) (( (ptr) gf←c37924)+8)/* initStart←v3784 */ ), (* (W2Pt) (( (ptr) refSel←v9904)+11) )); if ((var←c34596 == 1) || (var←c34596 == 0)) { SOURCE(10542, 28) (* (W2Pt) (( (ptr) refSel←v9904)+2) ) = (* (W2Pt) (( (ptr) gf←c37924)+8)/* initStart←v3784 */ ); } else { SOURCE(10583, 28) (* (W2Pt) (( (ptr) gf←c37924)+8)/* initStart←v3784 */ ) = (* (W2Pt) (( (ptr) refSel←v9904)+2) ); }; }; SOURCE(10633, 12) ok←v9988 = 0; }; }; SOURCE(10650, 126) if ( ( ( (0 != ok←v9988) ? ((* (( (ptr) formal←c37956)+8) ) == 2) : 0 ) ? ( ( (end←v9960 == 0) ? XR←EqualWords(&sp←v10016, ( ( (ptr) refSel←v9904)+2), 2) : 0 ) ? 1 : ( (end←v9960 == 1) ? XR←EqualWords(&sp←v10016, (( (ptr) refSel←v9904)+11), 2) : 0 ) ) : 0 ) ) { SOURCE(10770, 6) return; }; SOURCE(10791, 47) { word pd68; pd68 = (* (( (ptr) (* (( (ptr) gf←c37924)+75)/* var←c33540 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd68 ))))(refSel←v9904, tSel←v9876, pd68); }; SOURCE(10840, 20) (* (ptr) tSel←v9876 ) = (* (( (ptr) formal←c37956)+4) ); SOURCE(10910, 242) if ( ( ( ( ((* (( (ptr) tSel←v9876)+22) ) == 0) ? (end←v9960 == 0) : 0 ) ? ( (int)(* (( (ptr) tSel←v9876)+12) ) > (int)0) : 0 ) ? ( ((* (ptr) &sp←v10016 ) != (* ( ( (ptr) tSel←v9876)+11) )) ? 1 : ( (int)(* (( (ptr) &sp←v10016)+1) ) < (int)(* (( (ptr) tSel←v9876)+12) )) ) : 0 ) ) { SOURCE(11060, 41) (* (( (ptr) tSel←v9876)+12) ) = ((* (( (ptr) tSel←v9876)+12) ) - 1); SOURCE(11140, 12) ok←v9988 = 0; }; SOURCE(11155, 308) { word var←c34628; var←c34628 = (* (( (ptr) formal←c37956)+8) ); switch (var←c34628) { case 2: break; case 0: SOURCE(11205, 10) ok←v9988 = 0; SOURCE(11217, 109) { word var←c34660; var←c34660 = (* (( (ptr) tSel←v9876)+22) ); switch (var←c34660) { case 4: (* (( (ptr) tSel←v9876)+22) ) = 3; break; case 3: (* (( (ptr) tSel←v9876)+22) ) = 2; break; case 2: (* (( (ptr) tSel←v9876)+22) ) = 1; break; default: (* (( (ptr) tSel←v9876)+22) ) = 1; break; }; }; break; case 1: SOURCE(11341, 10) ok←v9988 = 0; SOURCE(11353, 110) { word var←c34692; var←c34692 = (* (( (ptr) tSel←v9876)+22) ); switch (var←c34692) { case 0: (* (( (ptr) tSel←v9876)+22) ) = 1; break; case 1: (* (( (ptr) tSel←v9876)+22) ) = 2; break; case 2: (* (( (ptr) tSel←v9876)+22) ) = 3; break; default: (* (( (ptr) tSel←v9876)+22) ) = 4; break; }; }; break; default: SOURCE(11477, 5) (void) XR←RaiseUnnamedError(); break; }; }; SOURCE(11484, 1362) { word var←c34724; var←c34724 = (* (( (ptr) tSel←v9876)+22) ); switch (var←c34724) { case 4: case 3: SOURCE(11531, 317) if ((end←v9960 == 1)) { SOURCE(11551, 78) if (((* (( (ptr) tSel←v9876)+22) ) == 4)) { SOURCE(11583, 46) { word pd69; pd69 = (* (( (ptr) (* (( (ptr) gf←c37924)+79)/* var←c34212 */ ))+26) ); (* (ptr) &sp←v10016 ) = (word) ( *( (fPt) ((* (ptr) pd69 ))))((* (ptr) (&sp←v10016) ), pd69); }; }; SOURCE(11631, 51) if ( ( (0 != ok←v9988) ? ((* (ptr) &sp←v10016 ) == (* (( (ptr) tSel←v9876)+11) )) : 0 ) ) { SOURCE(11676, 6) return; }; SOURCE(11684, 65) { word var←c34756; { word pd70; word x71; pd70 = (* (( (ptr) (* (( (ptr) gf←c37924)+78)/* var←c33828 */ ))+6) ); var←c34756 = ((x71 = (word) ( *( (fPt) ((* (ptr) pd70 ))))((* (ptr) (&sp←v10016) ), pd70), MAX((int)(word), x71, 1)) - 1); }; (* (( (ptr) tSel←v9876)+11) ) = (* (ptr) &sp←v10016 ); (* (( (ptr) tSel←v9876)+12) ) = var←c34756; }; } else { SOURCE(11760, 53) if ( ( (0 != ok←v9988) ? ((* (ptr) &sp←v10016 ) == (* (( (ptr) tSel←v9876)+2) )) : 0 ) ) { SOURCE(11807, 6) return; }; SOURCE(11815, 33) (* (( (ptr) tSel←v9876)+2) ) = (* (ptr) &sp←v10016 ); (* (( (ptr) tSel←v9876)+3) ) = 0; }; break; case 2: SOURCE(11864, 750) { word prev←v10104; word start←v10132; word endPos←v10160; word node←v10188; word prevNode←v10216 = 0; word punc←v10244 = 0; SOURCE(11892, 32) node←v10188 = (* (ptr) &sp←v10016 ); SOURCE(11991, 56) { W3 var←c34852; (void) ExpandToWord←P780((word) &var←c34852, (* (W2Pt) &sp←v10016 ), (end←v9960 == 0)); punc←v10244 = var←c34852.f2; endPos←v10160 = var←c34852.f1; start←v10132 = var←c34852.f0; }; SOURCE(12049, 560) if ((end←v9960 == 1)) { { word var←c34884; SOURCE(12069, 28) prevNode←v10216 = (* (( (ptr) tSel←v9876)+11) ); SOURCE(12099, 24) (* (( (ptr) tSel←v9876)+11) ) = node←v10188; SOURCE(12125, 105) if (((* (( (ptr) tSel←v9876)+23) ) != 1)) { SOURCE(12160, 29) (* (( (ptr) tSel←v9876)+23) ) = punc←v10244; } else { SOURCE(12189, 41) if ((punc←v10244 == 2)) { SOURCE(12213, 17) endPos←v10160 = (endPos←v10160 - 1); }; }; SOURCE(12232, 25) prev←v10104 = (* (( (ptr) tSel←v9876)+12) ); SOURCE(12259, 72) { word tc72; word tc73; var←c34884 = endPos←v10160; (* (( (ptr) tSel←v9876)+12) ) = endPos←v10160; if (( (int)var←c34884 == (int)prev←v10104)) { tc73 = (word) (0 != ok←v9988); } else { tc73 = (word) 0; }; if (tc73) { tc72 = (word) (node←v10188 == prevNode←v10216); } else { tc72 = (word) 0; }; if (tc72) { SOURCE(12325, 6) return; }; }; }; } else { { word var←c34916; SOURCE(12342, 30) prevNode←v10216 = (* (( (ptr) tSel←v9876)+2) ); SOURCE(12374, 26) (* (( (ptr) tSel←v9876)+2) ) = node←v10188; SOURCE(12402, 103) if (((* (( (ptr) tSel←v9876)+23) ) != 2)) { SOURCE(12438, 29) (* (( (ptr) tSel←v9876)+23) ) = punc←v10244; } else { SOURCE(12467, 38) if ((punc←v10244 == 1)) { SOURCE(12490, 15) start←v10132 = (start←v10132 + 1); }; }; SOURCE(12507, 27) prev←v10104 = (* (( (ptr) tSel←v9876)+3) ); SOURCE(12536, 73) { word tc74; word tc75; var←c34916 = start←v10132; (* (( (ptr) tSel←v9876)+3) ) = start←v10132; if (( (int)var←c34916 == (int)prev←v10104)) { tc75 = (word) (0 != ok←v9988); } else { tc75 = (word) 0; }; if (tc75) { tc74 = (word) (node←v10188 == prevNode←v10216); } else { tc74 = (word) 0; }; if (tc74) { SOURCE(12603, 6) return; }; }; }; }; }; break; case 1: case 0: SOURCE(12634, 186) if ((end←v9960 == 1)) { SOURCE(12654, 59) if ( ( ( (XR←EqualWords((( (ptr) tSel←v9876)+11), &sp←v10016, 9)) ? (0 != ok←v9988) : 0 ) ? ((* (( (ptr) tSel←v9876)+22) ) == 1) : 0 ) ) { SOURCE(12707, 6) return; }; SOURCE(12715, 15) (* (W9Pt) (( (ptr) tSel←v9876)+11) ) = sp←v10016; } else { SOURCE(12740, 61) if ( ( ( (XR←EqualWords((( (ptr) tSel←v9876)+2), &sp←v10016, 9)) ? (0 != ok←v9988) : 0 ) ? ((* (( (ptr) tSel←v9876)+22) ) == 1) : 0 ) ) { SOURCE(12795, 6) return; }; SOURCE(12803, 17) (* (W9Pt) (( (ptr) tSel←v9876)+2) ) = sp←v10016; }; SOURCE(12823, 23) (* (( (ptr) tSel←v9876)+22) ) = 1; break; default: SOURCE(12862, 5) (void) XR←RaiseUnnamedError(); break; }; }; SOURCE(12899, 20) (* (( (ptr) tSel←v9876)+24) ) = end←v9960; SOURCE(12921, 25) (* (( (ptr) tSel←v9876)+26) ) = (* (( (ptr) formal←c37956)+7) ); SOURCE(12948, 17) (void) SetSelLooks←P660(tSel←v9876); SOURCE(12967, 85) { word pd76; pd76 = (* (( (ptr) (* (( (ptr) gf←c37924)+75)/* var←c33540 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd76 ))))(tSel←v9876, (* (( (ptr) formal←c37956)+6) ), ( (end←v9960 == 1) ? (0 != ok←v9988) : 0 ) , ( (end←v9960 == 0) ? (0 != ok←v9988) : 0 ) , 0, pd76) ; }; } static void SetSelLooks←P660(sel←v6476) word sel←v6476; { register ptr gf←c37988 = (ptr) &globalframe; W2 loc←v10288; word size←v10316; /* SetSelLooks: */ SOURCE(13103, 353) SOURCE(13163, 86) { word tcp77; if (((* (( (ptr) sel←v6476)+24) ) == 0)) { tcp77 = (word) (( (ptr) sel←v6476)+2); } else { tcp77 = (word) (( (ptr) sel←v6476)+11); }; loc←v10288 = (* (W2Pt) tcp77 ); }; SOURCE(13251, 35) { word pd78; pd78 = (* (( (ptr) (* (( (ptr) gf←c37988)+78)/* var←c33828 */ ))+6) ); size←v10316 = (word) ( *( (fPt) ((* (ptr) pd78 ))))(loc←v10288.f0, pd78); }; SOURCE(13288, 168) { word var←c34948; { word pd79; word pd80; if (( (int)size←v10316 <= (int)0)) { var←c34948 = 0; } else { if (( (int)loc←v10288.f1 >= (int)size←v10316)) { pd79 = (* (( (ptr) (* (( (ptr) gf←c37988)+78)/* var←c33828 */ ))+5) ); var←c34948 = (word) ( *( (fPt) ((* (ptr) pd79 ))))(loc←v10288.f0, (size←v10316 - 1), pd79); } else { pd80 = (* (( (ptr) (* (( (ptr) gf←c37988)+78)/* var←c33828 */ ))+5) ); var←c34948 = (word) ( *( (fPt) ((* (ptr) pd80 ))))(loc←v10288.f0, loc←v10288.f1, pd80); }; }; }; (* (( (ptr) sel←v6476)+25) ) = var←c34948; }; } static void Update←P720(viewer←v6536, tdd←v6564, x←v6592, y←v6620, sel←v6648, pDel←v6676) word viewer←v6536; word tdd←v6564; word x←v6592; word y←v6620; word sel←v6648; word pDel←v6676; { register ptr gf←c38020 = (ptr) &globalframe; word refSel←v10360; /* Update: */ SOURCE(13460, 524) SOURCE(13615, 131) refSel←v10360 = ( (sel←v6648 == 0) ? (* (ptr) (* (( (ptr) (* (( (ptr) gf←c38020)+75)/* var←c33540 */ ))+4) ) ) : ( (sel←v6648 == 1) ? (* (ptr) (* ( ( (ptr) (* (( (ptr) gf←c38020)+75)/* var←c33540 */ ))+5) ) ) : ( XR←RaiseUnnamedError(), 0 ) ) ) ; SOURCE(13748, 236) { word var←c34980; var←c34980 = (* (( (ptr) refSel←v10360)+22) ); switch (var←c34980) { case 2: SOURCE(13787, 40) (void) SelectWord←P300(viewer←v6536, tdd←v6564, x←v6592, y←v6620, sel←v6648, pDel←v6676); break; case 3: SOURCE(13837, 40) (void) SelectNode←P360(viewer←v6536, tdd←v6564, x←v6592, y←v6620, sel←v6648, pDel←v6676); break; case 4: SOURCE(13889, 42) (void) SelectBranch←P420(viewer←v6536, tdd←v6564, x←v6592, y←v6620, sel←v6648, pDel←v6676); break; default: SOURCE(13944, 40) (void) SelectChar←P240(viewer←v6536, tdd←v6564, x←v6592, y←v6620, sel←v6648, pDel←v6676); break; }; }; } static void ExpandToWord←P780(formal←c0253, pos←v6736, frontOnly←v6764) word formal←c0253; W2 pos←v6736; word frontOnly←v6764; { register ptr gf←c38052 = (ptr) &globalframe; word start←v6808; word end←v6836; word punc←v6864; word refChar←v10404; word char←v10432; word alpha←v10460; word node←v10488; word lastOffset←v10516; word ropeReader←v10544; /* ExpandToWord: */ SOURCE(13990, 1410) SOURCE(13990, 1410) punc←v6864 = 0; SOURCE(14182, 37) node←v10488 = pos←v6736.f0; SOURCE(14221, 39) { word pd81; pd81 = (* (( (ptr) (* (( (ptr) gf←c38052)+78)/* var←c33828 */ ))+6) ); lastOffset←v10516 = ((word) ( *( (fPt) ((* (ptr) pd81 ))))(node←v10488, pd81) - 1); }; SOURCE(14262, 55) { word pd82; pd82 = (* (( (ptr) (* (( (ptr) gf←c38052)+81)/* var←c35012 */ ))+26) ); ropeReader←v10544 = (word) ( *( (fPt) ((* (ptr) pd82 ))))(pd82); }; SOURCE(14319, 23) { word var←c35044; var←c35044 = pos←v6736.f1; end←v6836 = var←c35044; start←v6808 = var←c35044; }; SOURCE(14344, 68) { word reader←v32044; word rope←v32072; word index←v32100; word var←c35108; word rope←v18280; reader←v32044 = ropeReader←v10544; { word pd83; pd83 = (* (( (ptr) (* (( (ptr) gf←c38052)+82)/* var←c35076 */ ))+4) ); rope←v32072 = (word) ( *( (fPt) ((* (ptr) pd83 ))))(node←v10488, pd83); }; index←v32100 = end←v6836; { word tc84; rope←v18280 = 0; var←c35108 = (* (( (ptr) reader←v32044)+2) ); if (((var←c35108 == rope←v32072) )) { tc84 = (word) ( (int)((* (( (ptr) reader←v32044)+3) ) + (* (( (ptr) reader←v32044)+1) )) == (int)index←v32100); } else { tc84 = (word) 0; }; if (tc84) { goto lab←L100011; }; }; (* (( (ptr) reader←v32044)+2) ) = rope←v32072; (* (( (ptr) reader←v32044)+1) ) = 0; (* (hPt) (* (ptr) reader←v32044 ) ) = 0; (* (( (ptr) reader←v32044)+3) ) = index←v32100; lab←L100011: ; }; SOURCE(14414, 52) { word reader←v32164; reader←v32164 = ropeReader←v10544; (* (( (ptr) reader←v32164)+5) ) = 13; (* (( (ptr) reader←v32164)+4) ) = 1; }; SOURCE(14501, 36) { word var←c35140; word text←v16688; word i←v16732; text←v16688 = (* (ptr) ropeReader←v10544 ); i←v16732 = (* (( (ptr) ropeReader←v10544)+1) ); { word pd86; if ((i←v16732 < (* (hPt) text←v16688 ))) { (* (( (ptr) ropeReader←v10544)+1) ) = (i←v16732 + 1); { word limit85; var←c35140 = (word) (* ((( (bPt) text←v16688)+4)+( limit85 = (word) (* (( (hPt) text←v16688)+1) ), BCK(i←v16732, limit85) )) ); }; } else { pd86 = (* (( (ptr) (* (( (ptr) gf←c38052)+81)/* var←c35012 */ ))+17) ); var←c35140 = (word) ( *( (fPt) ((* (ptr) pd86 ))))(ropeReader←v10544, 0, pd86); }; }; refChar←v10404 = var←c35140; }; SOURCE(14539, 90) { word var←c35204; var←c35204 = refChar←v10404; if ((var←c35204 == 13) || (var←c35204 == 10)) { SOURCE(14583, 37) { word pd87; pd87 = (* (( (ptr) (* (( (ptr) gf←c38052)+81)/* var←c35012 */ ))+27) ); (void) ( *( (fPt) ((* (ptr) pd87 ))))(ropeReader←v10544, pd87); }; SOURCE(14622, 7) goto lab←L100009; }; }; SOURCE(14665, 37) alpha←v10460 = ((word) (* (( (bPt) (* (ptr) (* (( (ptr) (* (( (ptr) gf←c38052)+83)/* var←c35236 */ ))+4) ) ))+refChar←v10404) ) == 2); SOURCE(14704, 33) { word var←c35268; word text←v32356; word i←v32384; text←v32356 = (* (ptr) ropeReader←v10544 ); i←v32384 = (* (( (ptr) ropeReader←v10544)+1) ); { word pd89; if ((i←v32384 < (* (hPt) text←v32356 ))) { (* (( (ptr) ropeReader←v10544)+1) ) = (i←v32384 + 1); { word limit88; var←c35268 = (word) (* ((( (bPt) text←v32356)+4)+( limit88 = (word) (* (( (hPt) text←v32356)+1) ), BCK(i←v32384, limit88) )) ); }; } else { pd89 = (* (( (ptr) (* (( (ptr) gf←c38052)+81)/* var←c35012 */ ))+17) ); var←c35268 = (word) ( *( (fPt) ((* (ptr) pd89 ))))(ropeReader←v10544, 0, pd89); }; }; char←v10432 = var←c35268; }; SOURCE(14740, 131) lab←L100016: ; { word tc90; word tc91; if ((0 != alpha←v10460)) { tc91 = (word) ((word) (* (( (bPt) (* (ptr) (* (( (ptr) (* (( (ptr) gf←c38052)+83)/* var←c35236 */ ))+4) ) ))+char←v10432) ) == 2); } else { tc91 = (word) 0; }; if (tc91 || (char←v10432 == refChar←v10404)) { tc90 = (word) ( (int)end←v6836 < (int)lastOffset←v10516); } else { tc90 = (word) 0; }; if (tc90) { } else { goto lab←L100014; }; }; SOURCE(14825, 33) { word var←c35332; word text←v32284; word i←v32312; text←v32284 = (* (ptr) ropeReader←v10544 ); i←v32312 = (* (( (ptr) ropeReader←v10544)+1) ); { word pd93; if ((i←v32312 < (* (hPt) text←v32284 ))) { (* (( (ptr) ropeReader←v10544)+1) ) = (i←v32312 + 1); { word limit92; var←c35332 = (word) (* ((( (bPt) text←v32284)+4)+( limit92 = (word) (* (( (hPt) text←v32284)+1) ), BCK(i←v32312, limit92) )) ); }; } else { pd93 = (* (( (ptr) (* (( (ptr) gf←c38052)+81)/* var←c35012 */ ))+17) ); var←c35332 = (word) ( *( (fPt) ((* (ptr) pd93 ))))(ropeReader←v10544, 0, pd93); }; }; char←v10432 = var←c35332; }; SOURCE(14860, 11) end←v6836 = (end←v6836 + 1); goto lab←L100016; lab←L100014: ; SOURCE(14882, 105) if ( ( ( ( (0 != (* (ptr) (* (( (ptr) (* (( (ptr) gf←c38052)+84)/* var←c35396 */ ))+13) ) )) ? (0 == frontOnly←v6764) : 0 ) ? (0 != alpha←v10460) : 0 ) ? (char←v10432 == 32) : 0 ) ) { SOURCE(14959, 15) punc←v6864 = 2; SOURCE(14976, 11) end←v6836 = (end←v6836 + 1); }; SOURCE(14992, 70) { word reader←v31896; word rope←v31924; word index←v31952; word var←c35428; word rope←v32000; reader←v31896 = ropeReader←v10544; { word pd94; pd94 = (* (( (ptr) (* (( (ptr) gf←c38052)+82)/* var←c35076 */ ))+4) ); rope←v31924 = (word) ( *( (fPt) ((* (ptr) pd94 ))))(node←v10488, pd94); }; index←v31952 = start←v6808; { word tc95; rope←v32000 = 0; var←c35428 = (* (( (ptr) reader←v31896)+2) ); if (((var←c35428 == rope←v31924) )) { tc95 = (word) ( (int)((* (( (ptr) reader←v31896)+3) ) + (* (( (ptr) reader←v31896)+1) )) == (int)index←v31952); } else { tc95 = (word) 0; }; if (tc95) { goto lab←L100019; }; }; (* (( (ptr) reader←v31896)+2) ) = rope←v31924; (* (( (ptr) reader←v31896)+1) ) = 0; (* (hPt) (* (ptr) reader←v31896 ) ) = 0; (* (( (ptr) reader←v31896)+3) ) = index←v31952; lab←L100019: ; }; SOURCE(15064, 39) { word var←c35460; word reader←v32596; reader←v32596 = ropeReader←v10544; { word i←v16036; i←v16036 = (* (( (ptr) reader←v32596)+1) ); { word pd97; if ((i←v16036 > 0)) { { word var←c35524; word var←c35556; var←c35524 = SGNCK((i←v16036 - 1)); (* (( (ptr) reader←v32596)+1) ) = var←c35524; var←c35556 = (* (ptr) reader←v32596 ); { word limit96; var←c35460 = (word) (* ((( (bPt) var←c35556)+4)+( limit96 = (word) (* (( (hPt) var←c35556)+1) ), BCK(var←c35524, limit96) )) ); }; }; } else { pd97 = (* (( (ptr) (* (( (ptr) gf←c38052)+81)/* var←c35012 */ ))+17) ); var←c35460 = (word) ( *( (fPt) ((* (ptr) pd97 ))))(reader←v32596, 1, pd97); }; }; }; char←v10432 = var←c35460; }; SOURCE(15105, 134) lab←L100023: ; { word tc98; word tc99; if ((0 != alpha←v10460)) { tc99 = (word) ((word) (* (( (bPt) (* (ptr) (* (( (ptr) (* (( (ptr) gf←c38052)+83)/* var←c35236 */ ))+4) ) ))+char←v10432) ) == 2); } else { tc99 = (word) 0; }; if (tc99 || (char←v10432 == refChar←v10404)) { tc98 = (word) ( (int)start←v6808 > (int)0); } else { tc98 = (word) 0; }; if (tc98) { } else { goto lab←L100021; }; }; SOURCE(15183, 39) { word var←c35620; word reader←v32520; reader←v32520 = ropeReader←v10544; { word i←v32552; i←v32552 = (* (( (ptr) reader←v32520)+1) ); { word pd101; if ((i←v32552 > 0)) { { word var←c35684; word var←c35716; var←c35684 = SGNCK((i←v32552 - 1)); (* (( (ptr) reader←v32520)+1) ) = var←c35684; var←c35716 = (* (ptr) reader←v32520 ); { word limit100; var←c35620 = (word) (* ((( (bPt) var←c35716)+4)+( limit100 = (word) (* (( (hPt) var←c35716)+1) ), BCK(var←c35684, limit100) )) ); }; }; } else { pd101 = (* (( (ptr) (* (( (ptr) gf←c38052)+81)/* var←c35012 */ ))+17) ); var←c35620 = (word) ( *( (fPt) ((* (ptr) pd101 ))))(reader←v32520, 1, pd101); }; }; }; char←v10432 = var←c35620; }; SOURCE(15224, 15) start←v6808 = (start←v6808 - 1); goto lab←L100023; lab←L100021: ; SOURCE(15250, 107) if ( ( ( ( (0 != (* (ptr) (* (( (ptr) (* (( (ptr) gf←c38052)+84)/* var←c35396 */ ))+13) ) )) ? (punc←v6864 == 0) : 0 ) ? (0 != alpha←v10460) : 0 ) ? (char←v10432 == 32) : 0 ) ) { SOURCE(15326, 14) punc←v6864 = 1; SOURCE(15342, 15) start←v6808 = (start←v6808 - 1); }; SOURCE(15363, 37) { word pd102; pd102 = (* (( (ptr) (* (( (ptr) gf←c38052)+81)/* var←c35012 */ ))+27) ); (void) ( *( (fPt) ((* (ptr) pd102 ))))(ropeReader←v10544, pd102); }; /* removed tail goto */ lab←L100009: ; (* (ptr) formal←c0253 ) = start←v6808; (* (( (ptr) formal←c0253)+1) ) = end←v6836; (* (( (ptr) formal←c0253)+2) ) = punc←v6864; return; } static word SetInsertion←P840(sel←v6924, x←v6952, line←v6980, rightOfLine←v7008, tdd←v7036) word sel←v6924; word x←v6952; word line←v6980; word rightOfLine←v7008; word tdd←v7036; { register ptr gf←c38084 = (ptr) &globalframe; word var←c7080; word node←v10588; word size←v10616; /* SetInsertion: */ SOURCE(15406, 1254) SOURCE(15574, 47) node←v10588 = (* (( (ptr) sel←v6924)+2) ); SOURCE(15623, 31) { word pd103; pd103 = (* (( (ptr) (* (( (ptr) gf←c38084)+78)/* var←c33828 */ ))+6) ); size←v10616 = (word) ( *( (fPt) ((* (ptr) pd103 ))))(node←v10588, pd103); }; SOURCE(15656, 81) if ( ( ( (int)(* (( (ptr) sel←v6924)+4) ) == (int)(* (( (ptr) sel←v6924)+13) )) ? ( (int)(* (( (ptr) sel←v6924)+3) ) >= (int)size←v10616) : 0 ) ) { SOURCE(15722, 15) return(0); }; SOURCE(15739, 354) { word var←c35780; word var←c35812; var←c35780 = (* (ptr) (* (( (ptr) (* (( (ptr) gf←c38084)+84)/* var←c35396 */ ))+19) ) ); if ((var←c35780 == 0)) { SOURCE(15789, 139) { word tc104; word limit105; if ( ( ( (XR←EqualWords((( (ptr) sel←v6924)+2), (( (ptr) sel←v6924)+11), 2)) ? ((* (( (ptr) sel←v6924)+22) ) == 1) : 0 ) ? (0 != rightOfLine←v7008) : 0 ) ) { var←c35812 = (* (( (ptr) tdd←v7036)+1) ); tc104 = (word) (( (((unsigned)(* (( (ptr) (( (W9Pt) (( (ptr) var←c35812)+3))+( limit105 = (* (( (ptr) var←c35812)+2) ), BCK(line←v6980, limit105) )))+2) ) << 1) >> 1) ) == 0); } else { tc104 = (word) 0; }; if (tc104) { return(1); } else { return(0); }; }; } else { if ((var←c35780 == 1)) { SOURCE(15939, 154) if ( ( ( ( ( (int)(* (( (ptr) sel←v6924)+3) ) == (int)0) ? XR←EqualWords((( (ptr) sel←v6924)+2), (( (ptr) sel←v6924)+11) , 2) : 0 ) ? ((* (( (ptr) sel←v6924)+22) ) == 1) : 0 ) ? ( (int)(x←v6952 - (* (( (ptr) sel←v6924)+5) )) <= (int)(((* ( ( (ptr) sel←v6924)+14) ) + (* (( (ptr) sel←v6924)+16) )) - x←v6952)) : 0 ) ) { return(0); } else { return(1); }; }; }; }; SOURCE(16104, 480) if (( (int)(* (( (ptr) sel←v6924)+4) ) == (int)line←v6980)) { { word var←c35876; word c←v32644; word var←c35940; word c←v13372; SOURCE(16134, 41) if (( (int)(* (( (ptr) sel←v6924)+13) ) != (int)line←v6980)) { SOURCE(16160, 15) return(0); }; SOURCE(16177, 49) if (( (int)(* (( (ptr) sel←v6924)+3) ) >= (int)size←v10616)) { SOURCE(16211, 15) return(0); }; SOURCE(16228, 231) if ((0 != rightOfLine←v7008)) { SOURCE(16250, 209) { word tc106; if ( ( (XR←EqualWords((( (ptr) sel←v6924)+2), (( (ptr) sel←v6924)+11), 2)) ? ( (int)((* (( (ptr) sel←v6924)+3) ) + 1) < (int)size←v10616) : 0 ) ) { { word pd107; pd107 = (* (( (ptr) (* (( (ptr) gf←c38084)+78)/* var←c33828 */ ))+4) ); c←v32644 = (word) ( *( (fPt) ((* (ptr) pd107 ))))(node←v10588, (* (( (ptr) sel←v6924)+3) ), pd107); }; { word tc108; if (((c←v32644 >> 8) == 0)) { c←v13372 = (c←v32644 & 0377); var←c35940 = ((word) (* (( (bPt) (* (ptr) (* (( (ptr) (* (( (ptr) gf←c38084)+83)/* var←c35236 */ ))+4) ) ))+c←v13372) ) == 1); tc108 = (word) (0 != var←c35940); } else { tc108 = (word) 0; }; var←c35876 = tc108; }; tc106 = (word) (0 != var←c35876); } else { tc106 = (word) 0; }; if (tc106) { return(0); } else { return(1); }; }; }; SOURCE(16464, 72) if (( (int)(x←v6952 - (* (( (ptr) sel←v6924)+5) )) <= (int)(((* (( (ptr) sel←v6924)+14) ) + (* (( (ptr) sel←v6924)+16) )) - x←v6952))) { return(0); } else { return(1); }; }; } else { SOURCE(16545, 39) if (( (int)(* (( (ptr) sel←v6924)+13) ) == (int)line←v6980)) { SOURCE(16571, 13) return(1); }; }; SOURCE(16586, 74) if (( (int)(line←v6980 - (* (( (ptr) sel←v6924)+4) )) <= (int)((* (( (ptr) sel←v6924)+13) ) - line←v6980))) { return(0); } else { return(1); }; } static word ResolveToChar←P900(selection←v7140, viewer←v7168, tdd←v7196, x←v7224, y←v7252) word selection←v7140; word viewer←v7168; word tdd←v7196; word x←v7224; word y←v7252; { register ptr gf←c38116 = (ptr) &globalframe; word rightOfLine←v7296; word lines←v10660 = 0; word line←v10688 = 0; word lastLine←v10716; /* ResolveToChar: */ SOURCE(16699, 1186) (void) (XR←MonitorEntry((word) (( (bPt) gf←c38116)+16)/* LOCK←v3504 */ )); SOURCE(16965, 21) lines←v10660 = (* (( (ptr) tdd←v7196)+1) ); SOURCE(16988, 32) { word var←c35972; var←c35972 = (* (ptr) lines←v10660 ); lastLine←v10716 = var←c35972; line←v10688 = var←c35972; }; SOURCE(17022, 31) y←v7252 = (y←v7252 - (* (ptr) (* (( (ptr) (* (( (ptr) gf←c38116)+84)/* var←c35396 */ ))+17) ) )); SOURCE(17104, 454) { word limit109; word limit110; if (( (int)y←v7252 > (int)((* (( (ptr) (( (W9Pt) (( (ptr) lines←v10660)+3))+( limit109 = (* (( (ptr) lines←v10660)+2) ), BCK(lastLine←v10716, limit109) )))+6) ) + (* (( (ptr) (( (W9Pt) (( (ptr) lines←v10660)+3))+( limit110 = (* (( (ptr) lines←v10660)+2) ), BCK(lastLine←v10716, limit110) )))+4) )))) { SOURCE(17187, 16) x←v7224 = ((* (( (ptr) viewer←v7168)+7) ) + 10); } else { SOURCE(17212, 346) { register word n←v10760 = 1; register word noName←c36004; noName←c36004 = lastLine←v10716; if (( (int)n←v10760 > (int)noName←c36004)) { goto lab←L100027; }; lab←L100030: ; SOURCE(17274, 284) { word limit111; if (( (int)(* (( (ptr) (( (W9Pt) (( (ptr) lines←v10660)+3))+( limit111 = (* (( (ptr) lines←v10660)+2) ), BCK(n←v10760, limit111) )))+6) ) >= (int)y←v7252)) { SOURCE(17304, 262) { word bottomOfUpper←v10804; word topOfLower←v10832; word break←v10860; SOURCE(17306, 62) { word var←c36036; word var←c0417; word var←c36068; word var←c0418; { word limit112; var←c36036 = (n←v10760 - 1); var←c0417 = (* (( (ptr) (( (W9Pt) (( (ptr) lines←v10660)+3))+( /*1*/ limit112 = (* (( (ptr) lines←v10660)+2) ), /*1*/ BCK(var←c36036, limit112) /*1*/ )))+6) ); }; { word limit113; var←c36068 = (n←v10760 - 1); var←c0418 = (* (( (ptr) (( (W9Pt) (( (ptr) lines←v10660)+3))+( /*1*/ limit113 = (* (( (ptr) lines←v10660)+2) ), /*1*/ BCK(var←c36068, limit113) /*1*/ )))+4) ); }; bottomOfUpper←v10804 = (var←c0417 + var←c0418); }; SOURCE(17370, 54) { word limit114; word limit115; topOfLower←v10832 = ((* (( (ptr) (( (W9Pt) (( (ptr) lines←v10660)+3))+( /*1*/ limit114 = (* (( (ptr) lines←v10660)+2) ), /*1*/ BCK(n←v10760, limit114) /*1*/ )))+6) ) - (* (( (ptr) (( (W9Pt) (( (ptr) lines←v10660)+3))+( /*1*/ limit115 = (* (( (ptr) lines←v10660)+2) ), /*1*/ BCK(n←v10760, limit115) /*1*/ )))+3) )); }; SOURCE(17426, 95) { word var←c36100; word var←c0419; word var←c0420; { word limit116; var←c36100 = (n←v10760 - 1); var←c0419 = (* (( (ptr) (( (W9Pt) (( (ptr) lines←v10660)+3))+( /*1*/ limit116 = (* (( (ptr) lines←v10660)+2) ), /*1*/ BCK(var←c36100, limit116) /*1*/ )))+6) ); }; { word x117; var←c0420 = (x117 = IOP2( / , (int)(bottomOfUpper←v10804 + topOfLower←v10832), (int)2), /*1*/ MAX((int)(word), x117, var←c0419)); }; { word limit118; word x119; break←v10860 = (x119 = ((* (( (ptr) (( (W9Pt) (( (ptr) lines←v10660)+3))+( /*1*/ limit118 = (* (( (ptr) lines←v10660)+2) ), /*1*/ BCK(n←v10760, limit118) /*1*/ )))+6) ) - 1), /*1*/ MIN((int)(word), var←c0420, x119)); }; }; SOURCE(17523, 35) if (( (int)y←v7252 < (int)break←v10860)) { line←v10688 = (n←v10760 - 1); } else { line←v10688 = n←v10760; }; SOURCE(17560, 4) goto lab←L100028; }; }; }; if (( (int)n←v10760 >= (int)noName←c36004)) { goto lab←L100027; }; n←v10760 = (n←v10760 + 1); goto lab←L100030; lab←L100027: ; lab←L100028: ; }; }; }; SOURCE(17578, 58) { word limit120; word limit121; (* (( (ptr) selection←v7140)+6) ) = ((* (( (ptr) (( (W9Pt) (( (ptr) lines←v10660)+3))+( limit120 = (* (( (ptr) lines←v10660)+2) ), BCK(line←v10688, limit120) )))+6) ) - (* (( (ptr) (( (W9Pt) (( (ptr) lines←v10660)+3))+( limit121 = (* (( (ptr) lines←v10660)+2) ), BCK(line←v10688, limit121) )))+3) )); }; SOURCE(17638, 86) { word limit122; word limit123; word x124; word x125; word idx126; (* (( (ptr) selection←v7140)+8) ) = ( idx126 = (word) ((* (( (ptr) (( (W9Pt) (( (ptr) lines←v10660)+3))+( limit122 = (* (( (ptr) lines←v10660)+2) ), BCK(line←v10688, limit122) )))+3) ) + (x124 = (* (( (ptr) (( (W9Pt) (( (ptr) lines←v10660)+3))+( limit123 = (* (( (ptr) lines←v10660)+2) ), BCK(line←v10688, limit123) )))+4) ), x125 = (* (( (ptr) gf←c38116)+13)/* selectionDescentLimit←v4008 */ ), MIN( (unsigned) , x124, x125))), SGNCK(idx126) ); }; SOURCE(17726, 27) (* (( (ptr) selection←v7140)+4) ) = line←v10688; SOURCE(17755, 21) (void) GetLine←P1320(viewer←v7168, line←v10688); SOURCE(17778, 107) { W5 var←c36132; { word pd127; pd127 = (* (( (ptr) (* (( (ptr) gf←c38116)+74)/* var←c33444 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd127 ))))((word) &var←c36132, (* (( (ptr) gf←c38116)+16)/* lineInfo←v4260 */ ), x←v7224, pd127) ; }; rightOfLine←v7296 = var←c36132.f4; (* (( (ptr) selection←v7140)+7) ) = var←c36132.f3; (* (( (ptr) selection←v7140)+5) ) = var←c36132.f2; (* (W2Pt) (( (ptr) selection←v7140)+2) ) = (* (W2Pt) &var←c36132 ); }; SOURCE(16699, 1186) (void) (XR←MonitorExit((word) (( (bPt) gf←c38116)+16)/* LOCK←v3504 */ )); return(rightOfLine←v7296); } static void GrowSelectionToBlanks←P960() { W6 var←c38148; /* declaration of var←c36164 skipped */ /* GrowSelectionToBlanks: */ SOURCE(17891, 159) { word tmpAddr128; tmpAddr128 = (word) (( (ptr) &var←c38148)+4)/* var←c36164 */ ; (* (ptr) tmpAddr128 ) = ( ((word) (fPt) Blank←P2220) ); (* (( (ptr) tmpAddr128) + 1) ) = 1; }; SOURCE(18010, 40) (void) GrowSelectionToSomething←P1020((word) (( (bPt) &var←c38148)+16)/* var←c36164 */ , (word) (( (bPt) &var←c38148)+16) /* var←c36164 */ ); } static word Blank←P2220(char←v10980, formal←c38212) word char←v10980; word formal←c38212; { register ptr gf←c38180 = (ptr) &globalframe; word var←c11024; formal←c38212 = (formal←c38212 - 16); /* Blank: */ SOURCE(17930, 77) SOURCE(17977, 30) return(((word) (* (( (bPt) (* (ptr) (* (( (ptr) (* (( (ptr) gf←c38180)+83)/* var←c35236 */ ))+4) ) ))+char←v10980) ) == 1)); } static void GrowSelectionToSomething←P1020(left←v7372, right←v7400) word left←v7372; word right←v7400; { register ptr gf←c38244 = (ptr) &globalframe; word tSel←v11052 = 0; word cSel←v11080 = 0; word selection←v11108; word start←v11136 = 0; word end←v11164 = 0; word startPos←v11192; word endPos←v11220; word endLen←v11248; word ropeReader←v11276 = 0; /* GrowSelectionToSomething: */ SOURCE(18054, 1692) SOURCE(18309, 26) cSel←v11080 = (* (ptr) (* (( (ptr) (* (( (ptr) gf←c38244)+75)/* var←c33540 */ ))+5) ) ); SOURCE(18337, 21) selection←v11108 = 1; SOURCE(18360, 100) if ((cSel←v11080 == 0) || ((* (ptr) (* (ptr) (* (( (ptr) (* (( (ptr) gf←c38244)+75)/* var←c33540 */ ))+5) ) ) ) == 0)) { SOURCE(18413, 26) cSel←v11080 = (* (ptr) (* (( (ptr) (* (( (ptr) gf←c38244)+75)/* var←c33540 */ ))+4) ) ); SOURCE(18441, 19) selection←v11108 = 0; }; SOURCE(18465, 42) if ((cSel←v11080 == 0) || ((* (ptr) cSel←v11080 ) == 0)) { SOURCE(18501, 6) return; }; SOURCE(18509, 29) { word pd129; pd129 = (* (( (ptr) (* (( (ptr) gf←c38244)+75)/* var←c33540 */ ))+10) ); tSel←v11052 = (word) ( *( (fPt) ((* (ptr) pd129 ))))(pd129); }; SOURCE(18540, 45) { word pd130; pd130 = (* (( (ptr) (* (( (ptr) gf←c38244)+75)/* var←c33540 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd130 ))))(cSel←v11080, tSel←v11052, pd130); }; SOURCE(18587, 27) start←v11136 = (* (( (ptr) tSel←v11052)+2) ); SOURCE(18616, 39) { word pd131; pd131 = (* (( (ptr) (* (( (ptr) gf←c38244)+81)/* var←c35012 */ ))+26) ); ropeReader←v11276 = (word) ( *( (fPt) ((* (ptr) pd131 ))))(pd131); }; SOURCE(18657, 86) { word reader←v31748; word rope←v31776; word index←v31804; word var←c36196; word rope←v31852; reader←v31748 = ropeReader←v11276; { word pd132; pd132 = (* (( (ptr) (* (( (ptr) gf←c38244)+82)/* var←c35076 */ ))+4) ); rope←v31776 = (word) ( *( (fPt) ((* (ptr) pd132 ))))(start←v11136, pd132); }; index←v31804 = (* (( (ptr) tSel←v11052)+3) ); { word tc133; rope←v31852 = 0; var←c36196 = (* (( (ptr) reader←v31748)+2) ); if (((var←c36196 == rope←v31776) )) { tc133 = (word) ( (int)((* (( (ptr) reader←v31748)+3) ) + (* (( (ptr) reader←v31748)+1) )) == (int)index←v31804); } else { tc133 = (word) 0; }; if (tc133) { goto lab←L100032; }; }; (* (( (ptr) reader←v31748)+2) ) = rope←v31776; (* (( (ptr) reader←v31748)+1) ) = 0; (* (hPt) (* (ptr) reader←v31748 ) ) = 0; (* (( (ptr) reader←v31748)+3) ) = index←v31804; lab←L100032: ; }; SOURCE(18745, 200) lab←L100035: ; SOURCE(18745, 200) { word loc←v11320; word var←c36228; SOURCE(18798, 42) loc←v11320 = ((* (( (ptr) ropeReader←v11276)+3) ) + (* (( (ptr) ropeReader←v11276)+1) )); SOURCE(18842, 30) if (( (int)loc←v11320 == (int)0)) { SOURCE(18860, 12) startPos←v11192 = 0; SOURCE(18874, 5) goto lab←L100034; }; SOURCE(18882, 63) { word var←c36260; word reader←v32444; reader←v32444 = ropeReader←v11276; { word i←v32476; i←v32476 = (* (( (ptr) reader←v32444)+1) ); { word pd135; if ((i←v32476 > 0)) { { word var←c36324; word var←c36356; var←c36324 = SGNCK((i←v32476 - 1)); (* (( (ptr) reader←v32444)+1) ) = var←c36324; var←c36356 = (* (ptr) reader←v32444 ); { word limit134; var←c36260 = (word) (* ((( (bPt) var←c36356)+4)+( /*1*/ limit134 = (word) (* (( (hPt) var←c36356)+1) ), /*1*/ BCK(var←c36324, limit134) /*1*/ )) ); }; }; } else { pd135 = (* (( (ptr) (* (( (ptr) gf←c38244)+81)/* var←c35012 */ ))+17) ); var←c36260 = (word) ( *( (fPt) ((* (ptr) pd135 ))))(reader←v32444, 1, pd135); }; }; }; var←c36228 = var←c36260; }; if ((0 != (word) ( *( (fPt) ((* (ptr) left←v7372 ))))(var←c36228, left←v7372))) { SOURCE(18931, 14) startPos←v11192 = loc←v11320; SOURCE(18947, 5) goto lab←L100034; }; }; goto lab←L100035; lab←L100034: ; SOURCE(18964, 31) (* (( (ptr) tSel←v11052)+3) ) = startPos←v11192; SOURCE(18997, 23) end←v11164 = (* (( (ptr) tSel←v11052)+11) ); SOURCE(19022, 84) if (((* (( (ptr) tSel←v11052)+22) ) == 0)) { endPos←v11220 = (* (( (ptr) tSel←v11052)+12) ); } else { endPos←v11220 = ((* (( (ptr) tSel←v11052)+12) ) + 1); }; SOURCE(19108, 46) { word var←c36420; { word pd136; pd136 = (* (( (ptr) (* (( (ptr) gf←c38244)+82)/* var←c35076 */ ))+4) ); var←c36420 = (word) ( *( (fPt) ((* (ptr) pd136 ))))(end←v11164, pd136); }; { word pd137; pd137 = (* (( (ptr) (* (( (ptr) gf←c38244)+85)/* var←c36452 */ ))+15) ); endLen←v11248 = (word) ( *( (fPt) ((* (ptr) pd137 ))))(var←c36420, pd137); }; }; SOURCE(19156, 70) { word reader←v31600; word rope←v31628; word index←v31656; word var←c36484; word rope←v31704; reader←v31600 = ropeReader←v11276; { word pd138; pd138 = (* (( (ptr) (* (( (ptr) gf←c38244)+82)/* var←c35076 */ ))+4) ); rope←v31628 = (word) ( *( (fPt) ((* (ptr) pd138 ))))(end←v11164, pd138); }; index←v31656 = endPos←v11220; { word tc139; rope←v31704 = 0; var←c36484 = (* (( (ptr) reader←v31600)+2) ); if (((var←c36484 == rope←v31628) )) { tc139 = (word) ( (int)((* (( (ptr) reader←v31600)+3) ) + (* (( (ptr) reader←v31600)+1) )) == (int)index←v31656); } else { tc139 = (word) 0; }; if (tc139) { goto lab←L100038; }; }; (* (( (ptr) reader←v31600)+2) ) = rope←v31628; (* (( (ptr) reader←v31600)+1) ) = 0; (* (hPt) (* (ptr) reader←v31600 ) ) = 0; (* (( (ptr) reader←v31600)+3) ) = index←v31656; lab←L100038: ; }; SOURCE(19228, 200) lab←L100041: ; SOURCE(19228, 200) { word loc←v11364; word var←c36516; SOURCE(19280, 42) loc←v11364 = ((* (( (ptr) ropeReader←v11276)+3) ) + (* (( (ptr) ropeReader←v11276)+1) )); SOURCE(19324, 38) if (( (int)loc←v11364 == (int)endLen←v11248)) { SOURCE(19347, 15) endPos←v11220 = endLen←v11248; SOURCE(19364, 5) goto lab←L100040; }; SOURCE(19372, 56) { word var←c36548; word text←v32212; word i←v32240; text←v32212 = (* (ptr) ropeReader←v11276 ); i←v32240 = (* (( (ptr) ropeReader←v11276)+1) ); { word pd141; if ((i←v32240 < (* (hPt) text←v32212 ))) { (* (( (ptr) ropeReader←v11276)+1) ) = (i←v32240 + 1); { word limit140; var←c36548 = (word) (* ((( (bPt) text←v32212)+4)+( limit140 = (word) (* (( (hPt) text←v32212)+1) ), BCK(i←v32240, limit140) )) ); }; } else { pd141 = (* (( (ptr) (* (( (ptr) gf←c38244)+81)/* var←c35012 */ ))+17) ); var←c36548 = (word) ( *( (fPt) ((* (ptr) pd141 ))))(ropeReader←v11276, 0, pd141); }; }; var←c36516 = var←c36548; }; if ((0 != (word) ( *( (fPt) ((* (ptr) right←v7400 ))))(var←c36516, right←v7400))) { SOURCE(19416, 12) endPos←v11220 = loc←v11364; SOURCE(19430, 5) goto lab←L100040; }; }; goto lab←L100041; lab←L100040: ; SOURCE(19447, 37) { word pd142; pd142 = (* (( (ptr) (* (( (ptr) gf←c38244)+81)/* var←c35012 */ ))+27) ); (void) ( *( (fPt) ((* (ptr) pd142 ))))(ropeReader←v11276, pd142); }; SOURCE(19486, 29) (* (( (ptr) tSel←v11052)+12) ) = (endPos←v11220 - 1); SOURCE(19517, 80) if ( ( ( (int)(endPos←v11220 - startPos←v11192) > (int)1) ? ((* (( (ptr) tSel←v11052)+22) ) == 0) : 0 ) ) { SOURCE(19574, 23) (* (( (ptr) tSel←v11052)+22) ) = 1; }; SOURCE(19599, 55) if (((* (( (ptr) tSel←v11052)+22) ) != 0)) { SOURCE(19632, 22) (* (( (ptr) tSel←v11052)+24) ) = 1; }; SOURCE(19656, 61) { word pd143; pd143 = (* (( (ptr) (* (( (ptr) gf←c38244)+75)/* var←c33540 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd143 ))))(tSel←v11052, selection←v11108, 0, 0, 1, pd143); }; SOURCE(19719, 27) { word pd144; pd144 = (* (( (ptr) (* (( (ptr) gf←c38244)+75)/* var←c33540 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd144 ))))(tSel←v11052, pd144); }; } static void GrowSelection←P1080() { register ptr gf←c38276 = (ptr) &globalframe; word tSel←v11408 = 0; /* GrowSelection: */ SOURCE(19750, 1254) SOURCE(19812, 72) if (((* (ptr) (* (( (ptr) (* (( (ptr) gf←c38276)+75)/* var←c33540 */ ))+4) ) ) == 0) || ((* (ptr) (* (ptr) (* (( (ptr) (* ( ( (ptr) gf←c38276)+75)/* var←c33540 */ ))+4) ) ) ) == 0)) { SOURCE(19878, 6) return; }; SOURCE(19886, 29) { word pd145; pd145 = (* (( (ptr) (* (( (ptr) gf←c38276)+75)/* var←c33540 */ ))+10) ); tSel←v11408 = (word) ( *( (fPt) ((* (ptr) pd145 ))))(pd145); }; SOURCE(19917, 60) { word pd146; pd146 = (* (( (ptr) (* (( (ptr) gf←c38276)+75)/* var←c33540 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd146 ))))((* (ptr) (* (( (ptr) (* (( (ptr) gf←c38276)+75)/* var←c33540 */ ))+4) ) ), tSel←v11408, pd146) ; }; SOURCE(19979, 934) { word var←c36612; var←c36612 = (* (( (ptr) tSel←v11408)+22) ); switch (var←c36612) { case 0: SOURCE(20019, 23) (* (( (ptr) tSel←v11408)+22) ) = 1; break; case 1: SOURCE(20055, 168) { word start←v11452; word end←v11480; SOURCE(20074, 23) (* (( (ptr) tSel←v11408)+22) ) = 2; SOURCE(20099, 49) { W3 var←c36644; (void) ExpandToWord←P780((word) &var←c36644, (* (W2Pt) (( (ptr) tSel←v11408)+2) ), 0); end←v11480 = var←c36644.f1; start←v11452 = var←c36644.f0; }; SOURCE(20150, 28) (* (( (ptr) tSel←v11408)+3) ) = start←v11452; SOURCE(20180, 41) (* (( (ptr) tSel←v11408)+11) ) = (* (( (ptr) tSel←v11408)+2) ); (* (( (ptr) tSel←v11408)+12) ) = end←v11480; }; break; case 2: SOURCE(20236, 24) (* (( (ptr) tSel←v11408)+3) ) = 0; SOURCE(20262, 55) { word pd147; pd147 = (* (( (ptr) (* (( (ptr) gf←c38276)+79)/* var←c34212 */ ))+36) ); (* (( (ptr) tSel←v11408)+12) ) = (word) ( *( (fPt) ((* (ptr) pd147 ))))((* ((( (ptr) tSel←v11408)+11)) ), pd147); }; SOURCE(20319, 128) { word var←c36708; { word tc148; word pd149; if (((* (( (ptr) tSel←v11408)+2) ) == (* (( (ptr) tSel←v11408)+11) ))) { pd149 = (* (( (ptr) (* (( (ptr) gf←c38276)+79)/* var←c34212 */ ))+28) ); tc148 = (word) ((word) ( *( (fPt) ((* (ptr) pd149 ))))((* ((( (ptr) tSel←v11408)+11)) ), pd149) == 0); } else { tc148 = (word) 0; }; if (tc148) { var←c36708 = 4; } else { var←c36708 = 3; }; }; (* (( (ptr) tSel←v11408)+22) ) = var←c36708; }; break; case 3: SOURCE(20462, 25) (* (( (ptr) tSel←v11408)+22) ) = 4; SOURCE(20489, 58) { word pd150; pd150 = (* (( (ptr) (* (( (ptr) gf←c38276)+79)/* var←c34212 */ ))+26) ); (* (( (ptr) tSel←v11408)+11) ) = (word) ( *( (fPt) ((* (ptr) pd150 ))))((* ((( (ptr) tSel←v11408)+11)) ), pd150); }; SOURCE(20549, 55) { word pd151; pd151 = (* (( (ptr) (* (( (ptr) gf←c38276)+79)/* var←c34212 */ ))+36) ); (* (( (ptr) tSel←v11408)+12) ) = (word) ( *( (fPt) ((* (ptr) pd151 ))))((* ((( (ptr) tSel←v11408)+11)) ), pd151); }; break; case 4: SOURCE(20619, 296) { word parent←v11524; SOURCE(20621, 59) { word pd152; pd152 = (* (( (ptr) (* (( (ptr) gf←c38276)+79)/* var←c34212 */ ))+8) ); parent←v11524 = (word) ( *( (fPt) ((* (ptr) pd152 ))))((* ((( (ptr) tSel←v11408)+2)) ), pd152); }; SOURCE(20682, 94) { word pd153; pd153 = (* (( (ptr) (* (( (ptr) gf←c38276)+79)/* var←c34212 */ ))+8) ); if (((word) ( *( (fPt) ((* (ptr) pd153 ))))(parent←v11524, pd153) == 0)) { SOURCE(20735, 31) { word pd154; pd154 = (* (( (ptr) (* (( (ptr) gf←c38276)+75)/* var←c33540 */ ))+48) ); (void) ( *( (fPt) ((* (ptr) pd154 ))))(pd154); }; SOURCE(20768, 8) return; }; }; SOURCE(20779, 28) (* (( (ptr) tSel←v11408)+2) ) = parent←v11524; (* (( (ptr) tSel←v11408)+3) ) = 0; SOURCE(20809, 47) { word pd155; pd155 = (* (( (ptr) (* (( (ptr) gf←c38276)+79)/* var←c34212 */ ))+26) ); (* (( (ptr) tSel←v11408)+11) ) = (word) ( *( (fPt) ((* (ptr) pd155 ))))(parent←v11524, pd155); }; SOURCE(20858, 55) { word pd156; pd156 = (* (( (ptr) (* (( (ptr) gf←c38276)+79)/* var←c34212 */ ))+36) ); (* (( (ptr) tSel←v11408)+12) ) = (word) ( *( (fPt) ((* (ptr) pd156 ))))((* ((( (ptr) tSel←v11408)+11)) ), pd156); }; }; break; default: SOURCE(20929, 5) (void) XR←RaiseUnnamedError(); break; }; }; SOURCE(20936, 39) { word pd157; pd157 = (* (( (ptr) (* (( (ptr) gf←c38276)+75)/* var←c33540 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd157 ))))(tSel←v11408, 0, 0, 0, 1, pd157); }; SOURCE(20977, 27) { word pd158; pd158 = (* (( (ptr) (* (( (ptr) gf←c38276)+75)/* var←c33540 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd158 ))))(tSel←v11408, pd158); }; } static void InsertionPoint←P1140(formal←c0342, s←v7580) word formal←c0342; word s←v7580; { register ptr gf←c38308 = (ptr) &globalframe; W2 ip←v7624; word nodeSel←v11568; word viewer←v11596; /* InsertionPoint: */ SOURCE(21008, 813) SOURCE(21008, 813) ip←v7624.f0 = 0; ip←v7624.f1 = 0; SOURCE(21123, 65) nodeSel←v11568 = ( ((* (( (ptr) s←v7580)+22) ) == 3) ? 1 : ((* (( (ptr) s←v7580)+22) ) == 4) ) ; SOURCE(21190, 39) viewer←v11596 = (* (ptr) s←v7580 ); SOURCE(21231, 62) if ((viewer←v11596 == 0) || ((* (( (ptr) s←v7580)+1) ) != (* (( (ptr) viewer←v11596)+26) ))) { SOURCE(21276, 17) ip←v7624.f0 = 0; ip←v7624.f1 = 0; goto lab←L100043; }; SOURCE(21328, 493) if ( ( (0 != nodeSel←v11568) ? ((* (( (ptr) s←v7580)+2) ) == 0) : 0 ) ) { SOURCE(21369, 288) { word place←v11640; word node←v11668; SOURCE(21371, 68) place←v11640 = ( ((* (( (ptr) s←v7580)+24) ) == 0) ? 0 : 1 ) ; SOURCE(21441, 80) node←v11668 = ( (place←v11640 == 0) ? (* (( (ptr) s←v7580)+2) ) : (* (( (ptr) s←v7580)+11) ) ) ; SOURCE(21523, 132) { word var←c36772; { word pd159; pd159 = (* (( (ptr) (* (( (ptr) gf←c38308)+79)/* var←c34212 */ ))+9) ); var←c36772 = (word) ( *( (fPt) ((* (ptr) pd159 ))))(node←v11668, pd159); }; { word pd160; pd160 = (* (( (ptr) (* (( (ptr) gf←c38308)+80)/* var←c34468 */ ))+15) ); ip←v7624.f0 = (word) ( *( (fPt) ((* (ptr) pd160 ))))(var←c36772, node←v11668, place←v11640, 1, (* (ptr) (* (( (ptr) (* ( ( (ptr) gf←c38308)+86)/* var←c36804 */ ))+6) ) ), pd160); }; }; ip←v7624.f1 = 0; }; } else { SOURCE(21666, 155) if (((* (( (ptr) s←v7580)+24) ) == 0)) { SOURCE(21694, 16) ip←v7624 = (* (W2Pt) (( (ptr) s←v7580)+2) ); } else { SOURCE(21717, 106) { word size←v11712; SOURCE(21719, 41) { word pd161; pd161 = (* (( (ptr) (* (( (ptr) gf←c38308)+78)/* var←c33828 */ ))+6) ); size←v11712 = (word) ( *( (fPt) ((* (ptr) pd161 ))))((* ((( (ptr) s←v7580)+11)) ), pd161); }; SOURCE(21762, 59) ip←v7624.f0 = (* (( (ptr) s←v7580)+11) ); { word x162; word x163; ip←v7624.f1 = (x163 = (x162 = ((* (( (ptr) s←v7580)+12) ) + 1), MAX((int)(word), x162, 0)), MIN((int)(word), x163, size←v11712)); }; }; }; }; /* removed tail goto */ lab←L100043: ; (* (W2Pt) formal←c0342 ) = ip←v7624; return; } static word GetSelectionGrain←P1200(sel←v7684) word sel←v7684; { word var←c7728; /* GetSelectionGrain: */ SOURCE(21833, 311) SOURCE(21938, 72) if (((* (( (ptr) sel←v7684)+22) ) == 3) || ((* (( (ptr) sel←v7684)+22) ) == 4)) { SOURCE(21997, 13) return(3); }; SOURCE(22012, 78) if ( ( ((* (( (ptr) sel←v7684)+22) ) == 0) ? XR←EqualWords((( (ptr) sel←v7684)+2), (( (ptr) sel←v7684)+11), 2) : 0 ) ) { SOURCE(22076, 14) return(0); }; SOURCE(22092, 52) if (((* (( (ptr) sel←v7684)+22) ) == 2)) { return(2); } else { return(1); }; } static void InvalidateLineCache←P1260() { register ptr gf←c38340 = (ptr) &globalframe; /* InvalidateLineCache: */ SOURCE(22278, 64) (void) (XR←MonitorEntry((word) (( (bPt) gf←c38340)+16)/* LOCK←v3504 */ )); SOURCE(22321, 21) (* (( (ptr) gf←c38340)+14)/* lineInfoViewer←v4204 */ ) = 0; SOURCE(22278, 64) (void) (XR←MonitorExit((word) (( (bPt) gf←c38340)+16)/* LOCK←v3504 */ )); return; } static void GetLine←P1320(viewer←v7804, line←v7832) word viewer←v7804; word line←v7832; { register ptr gf←c38372 = (ptr) &globalframe; /* GetLine: */ SOURCE(22345, 708) SOURCE(22418, 635) { word var←c36836; var←c36836 = (* (( (ptr) viewer←v7804)+26) ); if ((var←c36836 == 0)) { goto lab←L100044; }; if (((* (( (ptr) gf←c38372)+22) ) == XR←GetReferentType(var←c36836))) { { word tdd←v11756; tdd←v11756 = var←c36836; SOURCE(22487, 571) { word lines←v11800; SOURCE(22489, 46) lines←v11800 = (* (( (ptr) tdd←v11756)+1) ); SOURCE(22537, 516) if ((viewer←v7804 != (* (( (ptr) gf←c38372)+14)/* lineInfoViewer←v4204 */ )) || ( (int)line←v7832 != (int)(* (( (ptr) gf←c38372)+15) /* lineInfoLine←v4232 */ ))) { SOURCE(22588, 467) { word style←v11844; W2 pos←v11872; word kind←v11900; SOURCE(22590, 43) { word pd164; pd164 = (* (( (ptr) (* (( (ptr) gf←c38372)+87)/* var←c36868 */ ))+6) ); style←v11844 = (word) ( *( (fPt) ((* (ptr) pd164 ))))(pd164); }; SOURCE(22635, 40) { word limit165; pos←v11872 = (* (W2Pt) (( (W9Pt) (( (ptr) lines←v11800)+3))+( /*1*/ limit165 = (* (( (ptr) lines←v11800)+2) ), /*1*/ BCK(line←v7832, limit165) /*1*/ )) ); }; SOURCE(22677, 103) { word tc166; word pd167; pd167 = (* (( (ptr) (* (( (ptr) gf←c38372)+88)/* var←c36900 */ ))+29) ); if (((word) ( *( (fPt) ((* (ptr) pd167 ))))(viewer←v7804, (* (( (ptr) gf←c38372)+25) ), pd167) == (* (( (ptr) gf←c38372)+27) ))) { tc166 = (word) 1; } else { tc166 = (word) 0; }; kind←v11900 = tc166; }; SOURCE(22782, 56) { word pd168; word limit169; pd168 = (* (( (ptr) (* (( (ptr) gf←c38372)+87)/* var←c36868 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd168 ))))(style←v11844, (* (ptr) (( (W9Pt) (( (ptr) lines←v11800)+3))+( /*1*/ limit169 = (* (( (ptr) lines←v11800)+2) ), /*1*/ BCK(line←v7832, limit169) /*1*/ )) ), kind←v11900, pd168); }; SOURCE(22840, 141) { word var←c36932; { word var←c36964; word int←v31552; int←v31552 = (* (( (ptr) viewer←v7804)+7) ); var←c36964 = (int←v31552 << 16); var←c36932 = var←c36964; }; { word pd170; pd170 = (* (( (ptr) (* (( (ptr) gf←c38372)+74)/* var←c33444 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd170 ))))((* (( (ptr) gf←c38372)+16)/* lineInfo←v4260 */ ), pos←v11872.f0, pos←v11872.f1, style←v11844, var←c36932, 0, pd170) ; }; }; SOURCE(22983, 23) (* (( (ptr) gf←c38372)+14)/* lineInfoViewer←v4204 */ ) = viewer←v7804; SOURCE(23008, 19) (* (( (ptr) gf←c38372)+15)/* lineInfoLine←v4232 */ ) = line←v7832; SOURCE(23029, 24) { word pd171; pd171 = (* (( (ptr) (* (( (ptr) gf←c38372)+87)/* var←c36868 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd171 ))))(style←v11844, pd171); }; }; }; }; }; } else { lab←L100044: ; }; }; } static void CharPositionInCachedLine←P1380(formal←c0363, viewer←v7892, line←v7920, pos←v7948) word formal←c0363; word viewer←v7892; word line←v7920; W2 pos←v7948; { register ptr gf←c38404 = (ptr) &globalframe; word x←v7992; word width←v8020; /* CharPositionInCachedLine: */ SOURCE(23082, 227) (void) (XR←MonitorEntry((word) (( (bPt) gf←c38404)+16)/* LOCK←v3504 */ )); SOURCE(23228, 21) (void) GetLine←P1320(viewer←v7892, line←v7920); SOURCE(23251, 58) { W2 var←c37028; { word pd172; pd172 = (* (( (ptr) (* (( (ptr) gf←c38404)+74)/* var←c33444 */ ))+8) ); (void) ( *( (fPt) ((* (ptr) pd172 ))))((word) &var←c37028, (* (( (ptr) gf←c38404)+16)/* lineInfo←v4260 */ ), pos←v7948.f1, pd172) ; }; width←v8020 = var←c37028.f1; x←v7992 = var←c37028.f0; }; /* removed tail goto */ (void) (XR←MonitorExit((word) (( (bPt) gf←c38404)+16)/* LOCK←v3504 */ )); (* (ptr) formal←c0363 ) = x←v7992; (* (( (ptr) formal←c0363)+1) ) = width←v8020; return; } static void NoName←Q4824(formal←c0368, formal←c200004, formal←c200005, formal←c200006, formal←c200007) word formal←c0368; word formal←c200004; word formal←c200005; word formal←c200006; word formal←c200007; { register ptr gf←c0409 = (ptr) &globalframe; if ((formal←c200005 == XR←Unwind)) { SOURCE(2622, 37) { word pd173; pd173 = (* (( (ptr) (* (( (ptr) gf←c0409)+77)/* var←c33668 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd173 ))))((* ((( (ptr) (* (ptr) formal←c200004 ))+6)) ), pd173); }; }; (* (ptr) formal←c0368 ) = 0; (* (( (ptr) formal←c0368)+1) ) = 0; return; } static void NoName←Q4884(formal←c0373, formal←c200000, formal←c200001, formal←c200002, formal←c200003) word formal←c0373; word formal←c200000; word formal←c200001; word formal←c200002; word formal←c200003; { register ptr gf←c0410 = (ptr) &globalframe; if ((formal←c200001 == XR←Unwind)) { SOURCE(2825, 30) { word pd174; pd174 = (* (( (ptr) (* (( (ptr) gf←c0410)+75)/* var←c33540 */ ))+22) ); (void) ( *( (fPt) ((* (ptr) pd174 ))))((* ((( (ptr) formal←c200000)+9)) ), pd174); }; }; (* (ptr) formal←c0373 ) = 0; (* (( (ptr) formal←c0373)+1) ) = 0; return; } /* file: TEditMouseImpl, module: TEditMouseImpl, compiled at: February 28, 1992 10:40:02 am PST */ extern void XR←install←TEditMouseImpl() { NoName←Q4644(); } extern void XR←run←TEditMouseImpl() { XR←Start(&globalframe); }