/* Generated with C2C (Cedar To C)*/
/* Copyright (C) 1992 by Xerox Corporation. All rights reserved. */
/* time: November 3, 1992 12:32:16 pm PST */
/* C2C version: October 7, 1992 (native) */
/* ref-counting: off */
/* file: TEditSelectionImpl, module: TEditSelectionImpl */
/* switches: bcfhklnouw */
#include <cedar/InstallationSupport.h>
#include <cedar/CedarExtra.h>
static char versionStamp[] = "@(#)mob←version [1571098451,3430257031] TEditSelectionImpl";
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;} W6;
typedef struct {word f0, f1;} W2;
typedef W2 *W2Pt;
typedef struct {word f0, f1, f2, f3, f4;} W5;
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 {W8 f; W3 r;} W11;
typedef struct {W16 f; W11 r;} W27;
typedef W27 *W27Pt;
typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7;
typedef struct {W8 f; word r;} W9;
typedef struct {W8 f; W5 r;} W13;
typedef W9 *W9Pt;
typedef struct {W8 f; W7 r;} W15;
typedef struct {word f0, f1, f2, f3;} W4;
typedef struct {W8 f; W2 r;} W10;
typedef struct {W8 f; W4 r;} W12;
typedef struct {W8 f; W6 r;} W14;
#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 MIN(cast, x, y) ( ( cast x) < ( cast y) ? (x) : (y) )
#define SGNCK(i) ((int) (word) (i) < 0 ? XR←RaiseArithmeticFault(): i )
static void NoName←Q7140();
static void TEditSelectionImpl←P0();
static void UnlockDocAndPSel←P60();
static void LockBothSelections←P120();
static void UnlockBothSelections←P180();
static void LockSel←P240();
static word NoName←Q7200();
static void UnlockSel←P300();
static word NoName←Q7260();
static word Create←P360();
static word Alloc←P420();
static word NoName←Q7320();
static void Free←P480();
static void Copy←P540();
static word NoName←Q7380();
static void MakePointSelection←P600();
static void ChangeSelections←P660();
static word NoName←Q7440();
static void PushOrExchangeSelections←P720();
static void DoPush←P3336();
static void MakePrimary←P780();
static void DoMakePrimary←P3396();
static void MakeSecondary←P840();
static void DoMakeSecondary←P3456();
static void CancelPrimary←P900();
static void CancelSecondary←P960();
static void CancelFeedback←P1020();
static void FakeSecondary←P1080();
static void inner←P3516();
static void Deselect←P1140();
static void inner←P3576();
static void MakeSelection←P1200();
static void inner←P3636();
static void ShowSel←P1260();
static void inner←P3792();
static void inner←P3852();
static word NoName←Q7500();
static void MarkSelection←P1320();
static void EffectSelect←P4056();
static void EffectSelAll←P4260();
static void ExtendSelection←P1380();
static void TooHard←P4368();
static void BumpLoc←P4476();
static void DecLoc←P4632();
static void ComputeSpanLines←P1440();
static void ComputePosLine←P1500();
static void ComputePosPoint←P1560();
static word IsPosPastLine←P4884();
static void FindPos←P4944();
static void FixupSelection←P1620();
static void FixupCaret←P1680();
static void PutCaretOnNextLine←P5256();
static void KillSelection←P1740();
static void ModifyPSel←P1800();
static void inner←P5364();
static word NoName←Q7560();
static void SelectEverything←P1860();
static void DoSelEverything←P5472();
static void PendingDeleteSelection←P1920();
static void DoPDel←P5532();
static void NotPendingDeleteSelection←P1980();
static void DoNotPDel←P5592();
static void CaretBeforeSelection←P2040();
static void DoCaretBeforeSelection←P5652();
static void CaretAfterSelection←P2100();
static void DoCaretAfterSelection←P5712();
static void WithLockedSelection←P2160();
static word NoName←Q7620();
static word SelectionRoot←P2220();
static void InputModify←P2280();
static void inner←P5916();
static void CallWithSelAndDocAndTddLocks←P2340();
static word NoName←Q7680();
static void Cleanup←P6072();
static void ShowPosition←P2400();
static word NoName←Q7740();
static word NoName←Q7800();
static void Position←P2460();
static word FmtRange←P2520();
static word CurrentPositionMessage←P2580();
static void ShowGivenPosition←P2640();
static void DoPosition←P6228();
static void ShowGivenPositionRange←P2700();
static void DoPosition←P6288();
static void GoToEndOfNode←P2760();
static void DoIt←P6396();
static word TargetFromSel←P2820();
static void FindFeedback←P2880();
static void Find←P2940();
static void LockedFind←P6648();
static void FindRope←P3000();
static word DoFind←P3060();
static void LockedDoFind←P6708();
static void LocationsFromSelection←P3120();
static word FindTarget←P3180();
static void NoName←Q7860();
static void NoName←Q7920();
static void NoName←Q7980();
static void NoName←Q8040();
static void NoName←Q8100();
static void NoName←Q8160();
static void NoName←Q8220();
static void NoName←Q8280();
static void NoName←Q8340();
static void NoName←Q8400();
static void NoName←Q8460();
static word NoName←Q8520();
static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\135\245\017\123\300\314\165\221\207\100\200\000\000"};
static struct {unsigned f; char r[4];} string2 = {131074, "\004\014\000"};
static struct {unsigned f; char r[16];} string3 = {851984, "\257\300\135\245\017\123\300\314\165\221\207\101\064\000\000"};
static struct {unsigned f; char r[16];} string4 = {851984, "\257\300\343\357\262\137\300\144\166\356\317\100\274\000\000"};
static struct {unsigned f; char r[4];} string5 = {196611, "\004H\007"};
static struct {unsigned f; char r[16];} string6 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"};
static struct {unsigned f; char r[4];} string7 = {65537, "\001\000\000"};
static struct {unsigned f; char r[16];} string8 = {851984, "\257\300\343\357\262\137\300\144\166\356\317\100\164\000\000"};
static struct {unsigned f; char r[16];} string9 = {851981, "\006\005\000\001\004\001\054\001\070\001\100\114\001\000\000"};
static struct {unsigned f; char r[4];} string10 = {131076, "\216\251\000"};
static struct {unsigned f; char r[12];} string11 = {524300, "Deselect\000\000\000"};
static struct {unsigned f; char r[16];} string12 = {786448, "TakeDownPSel\000\000\000"};
static struct {unsigned f; char r[16];} string13 = {851984, "FakeSecondary\000\000"};
static struct {unsigned f; char r[16];} string14 = {786448, "TakeDownSSel\000\000\000"};
static struct {unsigned f; char r[16];} string15 = {786448, "TakeDownFSel\000\000\000"};
static struct {unsigned f; char r[16];} string16 = {851984, "MakeSelection\000\000"};
static struct {unsigned f; char r[12];} string17 = {524300, "ShowPSel\000\000\000"};
static struct {unsigned f; char r[12];} string18 = {524300, "ShowFSel\000\000\000"};
static struct {unsigned f; char r[12];} string19 = {524300, "ShowSSel\000\000\000"};
static struct {unsigned f; char r[8];} string20 = {458760, "ShowSel"};
static struct {unsigned f; char r[24];} string21 = {1310744, "ChangeBothSelections\000\000\000"};
static struct {unsigned f; char r[16];} string22 = {983056, "CallWithSelLock"};
static struct {unsigned f; char r[20];} string23 = {1048596, "SelectionHistory\000\000\000"};
static struct {unsigned f; char r[12];} string24 = {720908, "InputModify"};
static struct {unsigned f; char r[32];} string25 = {1835040, "CallWithSelAndDocAndTddLocks\000\000\000"};
static struct {unsigned f; char r[4];} string26 = {131076, "..\000"};
static struct {unsigned f; char r[56];} string27 = {3407928, "Select character count or count..count for position.\000\000\000"};
static struct {unsigned f; char r[28];} string28 = {1703964, " (excluding comment nodes)\000"};
static struct {unsigned f; char r[28];} string29 = {1703964, " (including comment nodes)\000"};
static struct {unsigned f; char r[28];} string30 = {1638428, "Select target for search.\000\000"};
static struct {unsigned f; char r[4];} string31 = {196612, "..."};
static struct {unsigned f; char r[12];} string32 = {720908, " not found."};
static struct {unsigned f; char r[16];} string33 = {851984, "\257\300\135\245\017\123\300\314\165\221\207\100\164\000\000"};
static struct {unsigned f; char r[64];} string34 = {3932220, "\006\022\040\004\007\100\104\001\100\110\001\100\114\001\100\120\001\100\124\001\100\130\001\100\134\001\100\140\001\100\144\001\100\150\001\100\154\001\100\160\001\100\164\001\100\170\001\100\174\001\100\220\001\100\314\010\000\004\026\001\000\000\000"};
static struct {unsigned f; char r[16];} string35 = {851984, "\257\300\162\231\152\170\300\133\216\116\202\100\150\000\000"};
static struct {unsigned f; char r[16];} string36 = {851984, "\257\300\255\053\300\023\300\142\135\315\105\100\150\000\000"};
static struct {unsigned f; char r[16];} string37 = {851984, "\257\300\004\173\141\246\300\255\256\170\002\100\150\000\000"};
static struct {unsigned f; char r[16];} string38 = {851984, "\257\300\074\177\166\242\300\203\113\217\044\100\150\000\000"};
static struct {unsigned f; char r[16];} string39 = {851984, "\257\300\170\064\225\306\300\207\372\245\271\100\150\000\000"};
static struct {unsigned f; char r[16];} string40 = {851984, "\257\300\263\272\165\301\300\364\117\256\374\100\150\000\000"};
static struct {unsigned f; char r[16];} string41 = {851984, "\257\300\074\270\063\045\300\023\342\016\224\100\150\000\000"};
static struct {unsigned f; char r[16];} string42 = {851984, "\257\300\240\236\274\315\300\111\163\325\023\100\150\000\000"};
static struct {unsigned f; char r[16];} string43 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"};
static struct {unsigned f; char r[16];} string44 = {851984, "\257\300\013\141\323\354\300\341\005\243\127\100\150\000\000"};
static struct {unsigned f; char r[16];} string45 = {851984, "\257\300\241\200\031\316\300\154\273\372\020\100\150\000\000"};
static struct {unsigned f; char r[16];} string46 = {851984, "\257\300\146\107\314\260\300\352\117\305\000\100\150\000\000"};
static struct {unsigned f; char r[16];} string47 = {851984, "\257\300\351\360\047\051\300\272\273\201\332\100\150\000\000"};
static struct {unsigned f; char r[16];} string48 = {851984, "\257\300R-\356\251\300YX]$@h\000\000"};
static struct {unsigned f; char r[16];} string49 = {851984, "\257\300\071\221\120\257\300\230\321\322\204\100\150\000\000"};
static struct {unsigned f; char r[12];} string50 = {1413833833, "tSelection"};
static struct {unsigned f; char r[16];} string51 = {851984, "\257\300\343\112\327\166\300\041\341\335\211\100\150\000\000"};
static struct {unsigned f; char r[16];} string52 = {851984, "\257\300\334\224\340\220\300\346\355\242\107\100\150\000\000"};
static struct {unsigned f; char r[16];} string53 = {851984, "\257\300\174\107\267\236\300\027\127\205\140\100\150\000\000"};
static struct {unsigned f; char r[16];} string54 = {851984, "\257\300\261\010\310\246\300\337\340\027\051\100\150\000\000"};
static struct {unsigned f; char r[16];} string55 = {851984, "\257\300\131\122\261\047\300\056\251\077\203\100\150\000\000"};
static struct {unsigned f; char r[16];} string56 = {851984, "\257\300\042\224\360\026\300\243\254\175\360\100\150\000\000"};
static struct {unsigned f; char r[16];} string57 = {851984, "\257\300\254\115\304\364\300\360\125\113\107\100\150\000\000"};
static struct {unsigned f; char r[16];} string58 = {851984, "\257\300\254\253\350\355\300\233\126\335\104\100\150\000\000"};
static struct {unsigned f; char r[16];} string59 = {851984, "\257\300\354\332\367\333\300\361\203\205\173\100\150\000\000"};
static struct {unsigned f; char r[16];} string60 = {851984, "\257\300\040\353\020\254\300\226\145\363\233\100\150\000\000"};
static struct {unsigned f; char r[16];} string61 = {851984, "\257\300\161\363\331\216\300\223\304\230\020\100\150\000\000"};
static struct {
word f0[74]; word f74; word f75; word f76;
word f77; word f78; word f79; word f80;
word f81; word f82; word f83; word f84;
word f85; word f86; word f87; word f88;
word f89; word f90; word f91; word f92;
word f93; word f94; word f95; word f96;
word f97; word f98; word f99; word f100;
word f101; word f102; word f103; word f104;
word f105; word f106; word f107; word f108;
word f109; word f110; word f111; word f112;
word f113; word f114; word f115; word f116;
word f117; word f118; word f119; word f120;
word f121; word f122; word f123; word f124;
word f125; word f126; word f127; word f128;
word f129; word f130; word f131; word f132;
word f133; word f134; word f135; word f136;
word f137; word f138; word f139; word f140;
word f141; word f142; word f143; word f144;
word f145; word f146; word f147; word f148;
word f149; word f150; word f151; word f152;
word f153; word f154; word f155; word f156;
word f157; word f158; word f159; word f160;
word f161; word f162; word f163; word f164;
word f165; word f166; word f167; word f168;
word f169; word f170; word f171; word f172;
word f173; word f174; word f175; word f176;
word f177; word f178; word f179; word f180;
word f181[26];
} globalframe = {
{0}, (word) FindTarget←P3180, 0, (word) LocationsFromSelection←P3120,
0, (word) DoFind←P3060, 0, (word) FindRope←P3000,
0, (word) Find←P2940, 0, (word) FindFeedback←P2880,
0, (word) TargetFromSel←P2820, 0, (word) GoToEndOfNode←P2760,
0, (word) ShowGivenPositionRange←P2700, 0, (word) ShowGivenPosition←P2640,
0, (word) CurrentPositionMessage←P2580, 0, (word) FmtRange←P2520,
0, (word) Position←P2460, 0, (word) ShowPosition←P2400,
0, (word) CallWithSelAndDocAndTddLocks←P2340, 0, (word) InputModify←P2280,
0, (word) SelectionRoot←P2220, 0, (word) WithLockedSelection←P2160,
0, (word) CaretAfterSelection←P2100, 0, (word) CaretBeforeSelection←P2040,
0, (word) NotPendingDeleteSelection←P1980, 0, (word) PendingDeleteSelection←P1920,
0, (word) SelectEverything←P1860, 0, (word) ModifyPSel←P1800,
0, (word) KillSelection←P1740, 0, (word) FixupCaret←P1680,
0, (word) FixupSelection←P1620, 0, (word) ComputePosPoint←P1560,
0, (word) ComputePosLine←P1500, 0, (word) ComputeSpanLines←P1440,
0, (word) ExtendSelection←P1380, 0, (word) MarkSelection←P1320,
0, (word) ShowSel←P1260, 0, (word) MakeSelection←P1200,
0, (word) Deselect←P1140, 0, (word) FakeSecondary←P1080,
0, (word) CancelFeedback←P1020, 0, (word) CancelSecondary←P960,
0, (word) CancelPrimary←P900, 0, (word) MakeSecondary←P840,
0, (word) MakePrimary←P780, 0, (word) PushOrExchangeSelections←P720,
0, (word) ChangeSelections←P660, 0, (word) MakePointSelection←P600,
0, (word) Copy←P540, 0, (word) Free←P480,
0, (word) Alloc←P420, 0, (word) Create←P360,
0, (word) UnlockSel←P300, 0, (word) LockSel←P240,
0, (word) UnlockBothSelections←P180, 0, (word) LockBothSelections←P120,
0, (word) UnlockDocAndPSel←P60, 0, (word) TEditSelectionImpl←P0,
{0}
};
static void NoName←Q7140()
{
register ptr gf←c0583 = (ptr) &globalframe;
word var←c47804;
(* (( (ptr) gf←c0583)+37) ) = (word) XR←GetTypeIndex((word) &string1, 0, (word) &string2);
(* (( (ptr) gf←c0583)+39) ) = (word) XR←GetTypeIndexS((word) (&string3));
(* (( (ptr) gf←c0583)+41) ) = (word) XR←GetTypeIndex((word) &string4, 0, (word) &string5);
(* (( (ptr) gf←c0583)+47) ) = (word) XR←GetTypeIndex((word) &string6, 0, (word) &string7);
(* (( (ptr) gf←c0583)+48) ) = (word) XR←GetTypeIndex((word) &string8, 0, (word) &string9);
(* (( (ptr) gf←c0583)+50) ) = (word) XR←GetTypeIndex((word) &string10, 0, (word) &string7);
(* (ptr) (( (bPt) gf←c0583)+204) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+47) ), (word) &string11);
(* (ptr) (( (bPt) gf←c0583)+208) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+50) ), (word) &string12);
(* (ptr) (( (bPt) gf←c0583)+212) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+47) ), (word) &string13);
(* (ptr) (( (bPt) gf←c0583)+216) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+50) ), (word) &string14);
(* (ptr) (( (bPt) gf←c0583)+220) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+50) ), (word) &string15);
(* (ptr) (( (bPt) gf←c0583)+224) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+47) ), (word) &string16);
(* (ptr) (( (bPt) gf←c0583)+228) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+50) ), (word) &string17);
(* (ptr) (( (bPt) gf←c0583)+232) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+50) ), (word) &string18);
(* (ptr) (( (bPt) gf←c0583)+236) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+50) ), (word) &string19);
(* (ptr) (( (bPt) gf←c0583)+240) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+47) ), (word) &string20);
(* (ptr) (( (bPt) gf←c0583)+244) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+47) ), (word) &string21);
(* (ptr) (( (bPt) gf←c0583)+248) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+47) ), (word) &string22);
(* (ptr) (( (bPt) gf←c0583)+252) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+50) ), (word) &string23);
(* (ptr) (( (bPt) gf←c0583)+256) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+47) ), (word) &string24);
(* (ptr) (( (bPt) gf←c0583)+260) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+47) ), (word) &string25);
(* (ptr) (( (bPt) gf←c0583)+264) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+47) ), (word) &string26);
(* (ptr) (( (bPt) gf←c0583)+268) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+47) ), (word) &string27);
(* (ptr) (( (bPt) gf←c0583)+272) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+47) ), (word) &string28);
(* (ptr) (( (bPt) gf←c0583)+276) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+47) ), (word) &string29);
(* (ptr) (( (bPt) gf←c0583)+280) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+47) ), (word) &string30);
(* (ptr) (( (bPt) gf←c0583)+284) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+47) ), (word) &string31);
(* (ptr) (( (bPt) gf←c0583)+288) ) = (word) XR←GetRefLiteral((* (( (ptr) gf←c0583)+47) ), (word) &string32);
(void) XR←DeclareGlobalFrame((word) "TEditSelectionImpl", &globalframe, (word) XR←GetTypeIndex((word) &string33, 0, (word) &string34)
, (word) (( (bPt) gf←c0583)+720)/* var←c43036 */ );
var←c47804 = (word) XR←ImportInterface((word) "Carets", (word) XR←GetTypeIndexS((word) (&string35)), 5);
(* (( (ptr) gf←c0583)+195)/* var←c45980 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 262401);
(void) XR←ImportProcS(var←c47804, 1048580);
var←c47804 = (word) XR←ImportInterface((word) "Convert", (word) XR←GetTypeIndexS((word) (&string36)), 73);
(* (( (ptr) gf←c0583)+198)/* var←c46268 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 67901187);
(void) XR←ImportProcS(var←c47804, 67634690);
var←c47804 = (word) XR←ImportInterface((word) "EditSpan", (word) XR←GetTypeIndexS((word) (&string37)), 23);
(* (( (ptr) gf←c0583)+191)/* var←c44540 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 67637762);
var←c47804 = (word) XR←ImportInterface((word) "Imager", (word) XR←GetTypeIndexS((word) (&string38)), 84);
(* (( (ptr) gf←c0583)+190)/* var←c44348 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 1326597);
(void) XR←ImportProcS(var←c47804, 536578);
var←c47804 = (word) XR←ImportInterface((word) "ImagerBackdoor", (word) XR←GetTypeIndexS((word) (&string39)), 42);
(* (( (ptr) gf←c0583)+182)/* var←c43356 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 67641602);
var←c47804 = (word) XR←ImportInterface((word) "InputFocus", (word) XR←GetTypeIndexS((word) (&string40)), 6);
(* (( (ptr) gf←c0583)+187)/* var←c43932 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 524546);
(void) XR←ImportProcS(var←c47804, 67108864);
var←c47804 = (word) XR←ImportInterface((word) "MessageWindow", (word) XR←GetTypeIndexS((word) (&string41)), 7);
(* (( (ptr) gf←c0583)+199)/* var←c46332 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 0);
(void) XR←ImportProcS(var←c47804, 512);
(void) XR←ImportProcS(var←c47804, 524546);
var←c47804 = (word) XR←ImportInterface((word) "Process", (word) XR←GetTypeIndexS((word) (&string42)), 22);
(* (( (ptr) gf←c0583)+184)/* var←c43420 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 526081);
(void) XR←ImportProcS(var←c47804, 134219776);
var←c47804 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string43)), 43);
(* (( (ptr) gf←c0583)+197)/* var←c46204 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 67633666);
(void) XR←ImportProcS(var←c47804, 68419845);
(void) XR←ImportProcS(var←c47804, 67898627);
(void) XR←ImportProcS(var←c47804, 68158980);
(void) XR←ImportProcS(var←c47804, 67373825);
var←c47804 = (word) XR←ImportInterface((word) "TEditInput", (word) XR←GetTypeIndexS((word) (&string44)), 44);
(* (( (ptr) gf←c0583)+204)/* var←c47420 */ ) = var←c47804;
var←c47804 = (word) XR←ImportInterface((word) "TEditLocks", (word) XR←GetTypeIndexS((word) (&string45)), 7);
(* (( (ptr) gf←c0583)+183)/* var←c43388 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 263425);
(void) XR←ImportProcS(var←c47804, 68420613);
(void) XR←ImportProcS(var←c47804, 262913);
var←c47804 = (word) XR←ImportInterface((word) "TEditInputOps", (word) XR←GetTypeIndexS((word) (&string46)), 66);
(* (( (ptr) gf←c0583)+202)/* var←c46812 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 524290);
var←c47804 = (word) XR←ImportInterface((word) "TEditOps", (word) XR←GetTypeIndexS((word) (&string47)), 12);
(* (( (ptr) gf←c0583)+196)/* var←c46172 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 263681);
(void) XR←ImportProcS(var←c47804, 67371265);
(void) XR←ImportProcS(var←c47804, 67108864);
var←c47804 = (word) XR←ImportInterface((word) "TEditProfile", (word) XR←GetTypeIndexS((word) (&string48)), 19);
(* (( (ptr) gf←c0583)+200)/* var←c46620 */ ) = var←c47804;
var←c47804 = (word) XR←ImportInterface((word) "TEditRefresh", (word) XR←GetTypeIndexS((word) (&string49)), 3);
(* (( (ptr) gf←c0583)+201)/* var←c46652 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 786947);
var←c47804 = (word) XR←ImportInterface((word) &string50, (word) XR←GetTypeIndexS((word) (&string51)), 68);
(* (( (ptr) gf←c0583)+185)/* var←c43804 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 134495233);
(void) XR←ImportProcS(var←c47804, 279041);
(void) XR←ImportProcS(var←c47804, 268289);
(void) XR←ImportProcS(var←c47804, 67376897);
var←c47804 = (word) XR←ImportInterface((word) "TEditSelectionPrivate", (word) XR←GetTypeIndexS((word) (&string52)), 3);
(* (( (ptr) gf←c0583)+194)/* var←c45212 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 135266563);
var←c47804 = (word) XR←ImportInterface((word) "TEditTouchup", (word) XR←GetTypeIndexS((word) (&string53)), 6);
(* (( (ptr) gf←c0583)+189)/* var←c44188 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 263425);
(void) XR←ImportProcS(var←c47804, 67633922);
var←c47804 = (word) XR←ImportInterface((word) "TextEdit", (word) XR←GetTypeIndexS((word) (&string54)), 39);
(* (( (ptr) gf←c0583)+192)/* var←c44604 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 67373313);
(void) XR←ImportProcS(var←c47804, 136583945);
(void) XR←ImportProcS(var←c47804, 67380481);
(void) XR←ImportProcS(var←c47804, 136585481);
(void) XR←ImportProcS(var←c47804, 67633154);
(void) XR←ImportProcS(var←c47804, 67371521);
var←c47804 = (word) XR←ImportInterface((word) "TextEditExtras", (word) XR←GetTypeIndexS((word) (&string55)), 2);
(* (( (ptr) gf←c0583)+203)/* var←c47228 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 67895555);
var←c47804 = (word) XR←ImportInterface((word) "TextNode", (word) XR←GetTypeIndexS((word) (&string56)), 34);
(* (( (ptr) gf←c0583)+193)/* var←c44668 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 67109632);
(void) XR←ImportProcS(var←c47804, 67379201);
(void) XR←ImportProcS(var←c47804, 135270404);
(void) XR←ImportProcS(var←c47804, 68162307);
(void) XR←ImportProcS(var←c47804, 67376641);
(void) XR←ImportProcS(var←c47804, 67377153);
(void) XR←ImportProcS(var←c47804, 67372289);
(void) XR←ImportProcS(var←c47804, 135007491);
(void) XR←ImportProcS(var←c47804, 67372033);
(void) XR←ImportProcS(var←c47804, 67374081);
(void) XR←ImportProcS(var←c47804, 67635970);
(void) XR←ImportProcS(var←c47804, 67373569);
var←c47804 = (word) XR←ImportInterface((word) "TiogaFind", (word) XR←GetTypeIndexS((word) (&string57)), 5);
(* (( (ptr) gf←c0583)+205)/* var←c47580 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 204210697);
var←c47804 = (word) XR←ImportInterface((word) "ViewerLocks", (word) XR←GetTypeIndexS((word) (&string58)), 9);
(* (( (ptr) gf←c0583)+188)/* var←c44124 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 524290);
var←c47804 = (word) XR←ImportInterface((word) "ViewerOps", (word) XR←GetTypeIndexS((word) (&string59)), 43);
(* (( (ptr) gf←c0583)+186)/* var←c43836 */ ) = var←c47804;
(void) XR←ImportProcS(var←c47804, 10752);
(void) XR←ImportProcS(var←c47804, 792579);
(void) XR←ImportProcS(var←c47804, 67639554);
(void) XR←ImportProcS(var←c47804, 1051652);
var←c47804 = (word) XR←ExportInterface((word) &string50, (word) XR←GetTypeIndexS((word) (&string51)), 68);
(* (( (ptr) gf←c0583)+206)/* var←c47836 */ ) = var←c47804;
(void) XR←ExportVar(var←c47804, 0, (word) (( (bPt) gf←c0583)+68)/* pSel←v4456 */ );
(void) XR←ExportVar(var←c47804, 1, (word) (( (bPt) gf←c0583)+72)/* sSel←v4484 */ );
(void) XR←ExportVar(var←c47804, 2, (word) (( (bPt) gf←c0583)+76)/* fSel←v4512 */ );
(void) XR←ExportVar(var←c47804, 3, (word) (( (bPt) gf←c0583)+80)/* oldSel←v4540 */ );
(void) XR←ExportVar(var←c47804, 4, (word) (( (bPt) gf←c0583)+84)/* nilSel←v4568 */ );
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+672)/* var←c42844 */ , 67110144);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+664)/* var←c42812 */ , 67110400);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+656)/* var←c42780 */ , 263937);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+648)/* var←c42748 */ , 526338);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+624)/* var←c42652 */ , 2304);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+616)/* var←c42620 */ , 2560);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+608)/* var←c42588 */ , 2816);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+600)/* var←c42556 */ , 3072);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+592)/* var←c42524 */ , 3328);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+584)/* var←c42492 */ , 3584);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+408)/* var←c41788 */ , 790275);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+712)/* var←c43004 */ , 266241);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+688)/* var←c42908 */ , 528642);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+680)/* var←c42876 */ , 266753);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+704)/* var←c42972 */ , 267009);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+696)/* var←c42940 */ , 5120);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+560)/* var←c42396 */ , 1316101);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+576)/* var←c42460 */ , 270081);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+568)/* var←c42428 */ , 270337);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+544)/* var←c42332 */ , 1057028);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+536)/* var←c42300 */ , 1581574);
(void) XR←ExportVar(var←c47804, 35, (word) (( (bPt) gf←c0583)+292)/* var←c41308 */ );
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+528)/* var←c42268 */ , 269755394);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+520)/* var←c42236 */ , 135275779);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+512)/* var←c42204 */ , 605300228);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+504)/* var←c42172 */ , 1058564);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+496)/* var←c42140 */ , 272385);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+488)/* var←c42108 */ , 10496);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+640)/* var←c42716 */ , 797186);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+416)/* var←c41820 */ , 535298);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+472)/* var←c42044 */ , 11264);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+464)/* var←c42012 */ , 12288);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+456)/* var←c41980 */ , 12544);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+448)/* var←c41948 */ , 12800);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+440)/* var←c41916 */ , 13056);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+424)/* var←c41852 */ , 67386113);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+392)/* var←c41724 */ , 278017);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+328)/* var←c41468 */ , 1588998);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+320)/* var←c41436 */ , 1851399);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+312)/* var←c41404 */ , 68960519);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+400)/* var←c41756 */ , 541442);
var←c47804 = (word) XR←ExportInterface((word) "TEditSelectionOps", (word) XR←GetTypeIndexS((word) (&string60)), 2);
(* (( (ptr) gf←c0583)+206)/* var←c47836 */ ) = var←c47804;
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+368)/* var←c41628 */ , 786435);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+360)/* var←c41596 */ , 1573126);
var←c47804 = (word) XR←ExportInterface((word) "TEditSelectionOpsExtras", (word) XR←GetTypeIndexS((word) (&string61)), 2);
(* (( (ptr) gf←c0583)+206)/* var←c47836 */ ) = var←c47804;
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+376)/* var←c41660 */ , 67633154);
(void) XR←ExportProcS(var←c47804, (word) (( (bPt) gf←c0583)+352)/* var←c41564 */ , 262401);
}
static void TEditSelectionImpl←P0(formal←c0120, formal←c0117)
word formal←c0120;
word formal←c0117;
{
register ptr gf←c47868 = (ptr) &globalframe;
/* TEditSelectionImpl: */
SOURCE(1170, 32128)
SOURCE(2064, 82)
(* (( (ptr) gf←c47868)+8) ) = XR←NewObject(24, (* (( (ptr) gf←c47868)+37) ));
(* (( (ptr) gf←c47868)+9) ) = XR←NewObject(24, (* (( (ptr) gf←c47868)+37) ));
(* (( (ptr) gf←c47868)+10) ) = XR←NewObject(24, (* (( (ptr) gf←c47868)+37) ));
SOURCE(3199, 33)
(* (( (ptr) gf←c47868)+17)/* pSel←v4456 */ ) = (word) Create←P360();
SOURCE(3234, 33)
(* (( (ptr) gf←c47868)+18)/* sSel←v4484 */ ) = (word) Create←P360();
SOURCE(3269, 33)
(* (( (ptr) gf←c47868)+19)/* fSel←v4512 */ ) = (word) Create←P360();
SOURCE(3304, 35)
(* (( (ptr) gf←c47868)+20)/* oldSel←v4540 */ ) = (word) Create←P360();
SOURCE(3341, 35)
(* (( (ptr) gf←c47868)+21)/* nilSel←v4568 */ ) = (word) Create←P360();
SOURCE(7681, 61)
(* (( (ptr) gf←c47868)+25)/* showPSel←v5128 */ ) = XR←NewObject(8, (* (( (ptr) gf←c47868)+39) ));
SOURCE(7744, 63)
{
word var←c43292;
var←c43292 = XR←NewObject(8, (* (( (ptr) gf←c47868)+39) ));
(* (( (ptr) var←c43292)+1) ) = 1;
(* (( (ptr) gf←c47868)+26)/* showSSel←v5156 */ ) = var←c43292;
};
SOURCE(7809, 62)
{
word var←c43324;
var←c43324 = XR←NewObject(8, (* (( (ptr) gf←c47868)+39) ));
(* (( (ptr) var←c43324)+1) ) = 2;
(* (( (ptr) gf←c47868)+27)/* showFSel←v5184 */ ) = var←c43324;
};
SOURCE(8587, 79)
{
word pd62;
pd62 = (* (( (ptr) (* (( (ptr) gf←c47868)+182)/* var←c43356 */ ))+37) );
(* (( (ptr) gf←c47868)+28)/* lightGrey←v5240 */ ) = (word) ( *( (fPt) ((* (ptr) pd62 ))))(520, 1, pd62);
};
SOURCE(8668, 79)
{
word pd63;
pd63 = (* (( (ptr) (* (( (ptr) gf←c47868)+182)/* var←c43356 */ ))+37) );
(* (( (ptr) gf←c47868)+29)/* darkGrey←v5268 */ ) = (word) ( *( (fPt) ((* (ptr) pd63 ))))(42405, 1, pd63);
};
SOURCE(8749, 83)
{
word pd64;
pd64 = (* (( (ptr) (* (( (ptr) gf←c47868)+182)/* var←c43356 */ ))+37) );
(* (( (ptr) gf←c47868)+30)/* veryDarkGrey←v5296 */ ) = (word) ( *( (fPt) ((* (ptr) pd64 ))))(60395, 1, pd64);
};
SOURCE(8834, 76)
{
word pd65;
pd65 = (* (( (ptr) (* (( (ptr) gf←c47868)+182)/* var←c43356 */ ))+37) );
(* (( (ptr) gf←c47868)+31)/* black←v5324 */ ) = (word) ( *( (fPt) ((* (ptr) pd65 ))))(65535, 1, pd65);
};
SOURCE(9021, 27)
(* (( (ptr) gf←c47868)+32)/* selectionLineWidth←v5408 */ ) = 2;
SOURCE(9050, 26)
(* (( (ptr) gf←c47868)+33)/* feedbackLineWidth←v5436 */ ) = 4;
SOURCE(9078, 30)
(* (( (ptr) gf←c47868)+34)/* feedbackLineRaise←v5464 */ ) = 1;
SOURCE(9111, 30)
(* (( (ptr) gf←c47868)+35)/* selectionDescentLimit←v5492 */ ) = 7;
}
static void UnlockDocAndPSel←P60(root←v6772)
word root←v6772;
{
register ptr gf←c47900 = (ptr) &globalframe;
/* UnlockDocAndPSel: */
SOURCE(2170, 92)
SOURCE(2217, 23)
{
word pd66;
pd66 = (* (( (ptr) (* (( (ptr) gf←c47900)+183)/* var←c43388 */ ))+7) );
(void) ( *( (fPt) ((* (ptr) pd66 ))))(root←v6772, pd66);
};
SOURCE(2242, 20)
(void) UnlockSel←P300(0);
}
static void LockBothSelections←P120(who←v6832)
word who←v6832;
{
/* LockBothSelections: */
SOURCE(2266, 96)
SOURCE(2314, 21)
(void) LockSel←P240(0, who←v6832);
SOURCE(2337, 25)
(void) LockSel←P240(1, who←v6832);
}
static void UnlockBothSelections←P180()
{
/* UnlockBothSelections: */
SOURCE(2366, 79)
SOURCE(2404, 18)
(void) UnlockSel←P300(0);
SOURCE(2424, 21)
(void) UnlockSel←P300(1);
}
static void LockSel←P240(formal←c0766, formal←c0767)
word formal←c0766;
word formal←c0767;
{
W6 var←c47932;
/* declaration of selection←v6908 skipped */
/* declaration of who←v6936 skipped */
register ptr gf←c47964 = (ptr) &globalframe;
var←c47932.f4/* selection←v6908 */ = formal←c0766;
var←c47932.f5/* who←v6936 */ = formal←c0767;
/* LockSel: */
SOURCE(2449, 447)
(void) (XR←MonitorEntry((word) (( (bPt) gf←c47964)+16)/* LOCK←v3980 */ ));
SOURCE(2516, 380)
{
word var←c0687;
var←c0687 = (word) &var←c47932;
(void) (word) XR←Enable(( ((word) (fPt) NoName←Q7200) ), ( ((word) (fPt) NoName←Q8460) ), var←c0687);
};
SOURCE(2449, 447)
(void) (XR←MonitorExit((word) (( (bPt) gf←c47964)+16)/* LOCK←v3980 */ ));
return;
}
static word NoName←Q7200(formal←c0588)
word formal←c0588;
{
register ptr gf←c0587 = (ptr) &globalframe;
SOURCE(2539, 18)
{
W2 myProcess←v12432;
word lock←v12460;
SOURCE(2539, 18)
(* (ptr) (word) &myProcess←v12432 ) = 0;
(* (( (ptr) (word) &myProcess←v12432) + 1) ) = 0;
SOURCE(2559, 34)
lock←v12460 = (* ((( (ptr) gf←c0587)+8)/* selLock←v4260 */ +(* (( (ptr) formal←c0588)+4) )) );
SOURCE(2603, 43)
SOURCE(2604, 42)
{
word pd67;
pd67 = (* (( (ptr) (* (( (ptr) gf←c0587)+184)/* var←c43420 */ ))+12) );
(void) ( *( (fPt) ((* (ptr) pd67 ))))((word) (&myProcess←v12432), pd67);
};
SOURCE(2649, 103)
if ( ! XR←EqualWords(&myProcess←v12432, lock←v12460, 2)) {
SOURCE(2682, 35)
lab←L100004: ;
if (((* (( (ptr) lock←v12460)+4) ) > 0)) {
}
else {
goto lab←L100002;
};
SOURCE(2704, 13)
(void) (XR←Wait((word) (( (bPt) gf←c0587)+16)/* LOCK←v3980 */ , (word) (( (bPt) gf←c0587)+44)/* unlocked←v4288 */ ));
goto lab←L100004;
lab←L100002: ;
SOURCE(2728, 24)
(* (W2Pt) lock←v12460 ) = myProcess←v12432;
};
SOURCE(2757, 64)
if (((* (( (ptr) lock←v12460)+4) ) == 0)) {
SOURCE(2778, 25)
(* (( (ptr) lock←v12460)+3) ) = (* (( (ptr) formal←c0588)+5) );
}
else {
SOURCE(2803, 18)
(* (( (ptr) lock←v12460)+2) ) = (* (( (ptr) formal←c0588)+5) );
};
SOURCE(2823, 25)
{
word idx68;
(* (( (ptr) lock←v12460)+4) ) = (
idx68 = (word) ((* (( (ptr) lock←v12460)+4) ) + 1),
BCK(idx68, 256)
);
};
SOURCE(2850, 46)
{
word x69;
word x70;
(* (( (ptr) lock←v12460)+5) ) = (x69 = (* (( (ptr) lock←v12460)+5) ),
x70 = (* (( (ptr) lock←v12460)+4) ),
MAX( (unsigned) , x69, x70));
};
};
return(0);
}
static void UnlockSel←P300(formal←c0768)
word formal←c0768;
{
W5 var←c47996;
/* declaration of selection←v6996 skipped */
register ptr gf←c48028 = (ptr) &globalframe;
var←c47996.f4/* selection←v6996 */ = formal←c0768;
/* UnlockSel: */
SOURCE(2902, 294)
(void) (XR←MonitorEntry((word) (( (bPt) gf←c48028)+16)/* LOCK←v3980 */ ));
SOURCE(2970, 226)
{
word var←c01;
{
word var←c0688;
var←c0688 = (word) &var←c47996;
var←c01 = (word) XR←Enable(( ((word) (fPt) NoName←Q7260) ), ( ((word) (fPt) NoName←Q8400) ), var←c0688);
};
if ((var←c01 == 1)) {
goto lab←L03;
};
};
SOURCE(2902, 294)
(void) (XR←MonitorExit((word) (( (bPt) gf←c48028)+16)/* LOCK←v3980 */ ));
return;
lab←L03: ;
return;
}
static word NoName←Q7260(formal←c0591)
word formal←c0591;
{
register ptr gf←c0590 = (ptr) &globalframe;
SOURCE(2993, 34)
{
word lock←v12520;
W2 var←c0130;
word var←c43452;
SOURCE(2993, 34)
lock←v12520 = (* ((( (ptr) gf←c0590)+8)/* selLock←v4260 */ +(* (( (ptr) formal←c0591)+4) )) );
SOURCE(3037, 52)
SOURCE(3039, 44)
{
word pd71;
pd71 = (* (( (ptr) (* (( (ptr) gf←c0590)+184)/* var←c43420 */ ))+12) );
(void) ( *( (fPt) ((* (ptr) pd71 ))))((word) (&var←c0130), pd71);
};
if ( ! XR←EqualWords(lock←v12520, &var←c0130, 2)) {
SOURCE(3083, 6)
(void) XR←RaiseUnnamedError();
};
SOURCE(3092, 46)
{
word idx72;
var←c43452 = (
idx72 = (word) ((* (( (ptr) lock←v12520)+4) ) - 1),
BCK(idx72, 256)
);
};
(* (( (ptr) lock←v12520)+4) ) = var←c43452;
if ((var←c43452 > 0)) {
SOURCE(3132, 6)
(void) (XR←MonitorExit((word) (( (bPt) gf←c0590)+16)/* LOCK←v3980 */ ));
return(1);
};
SOURCE(3140, 34)
(* (( (ptr) lock←v12520)+3) ) = 0;
(* (( (ptr) lock←v12520)+2) ) = 0;
SOURCE(3176, 20)
(void) (XR←Broadcast((word) (( (bPt) gf←c0590)+44)/* unlocked←v4288 */ ));
};
return(0);
}
static word Create←P360()
{
register ptr gf←c48060 = (ptr) &globalframe;
word var←c7056;
/* Create: */
SOURCE(3456, 86)
SOURCE(3500, 42)
{
word var←c43516;
var←c43516 = XR←NewObject(108, (* (( (ptr) gf←c48060)+41) ));
(* (( (ptr) var←c43516)+22) ) = 1;
return(var←c43516);
};
}
static word Alloc←P420()
{
W6 var←c48092;
register ptr gf←c48124 = (ptr) &globalframe;
/* declaration of var←c02 skipped */
/* declaration of tSel←v7116 skipped */
/* Alloc: */
SOURCE(3546, 261)
(void) (XR←MonitorEntry((word) (( (bPt) gf←c48124)+16)/* LOCK←v3980 */ ));
SOURCE(3546, 261)
var←c48092.f5/* tSel←v7116 */ = 0;
SOURCE(3601, 206)
{
word var←c03;
{
word var←c0689;
var←c0689 = (word) &var←c48092;
var←c03 = (word) XR←Enable(( ((word) (fPt) NoName←Q7320) ), ( ((word) (fPt) NoName←Q8340) ), var←c0689);
};
if ((var←c03 == 1)) {
goto lab←L05;
};
};
SOURCE(3546, 261)
(void) (XR←MonitorExit((word) (( (bPt) gf←c48124)+16)/* LOCK←v3980 */ ));
return(var←c48092.f5/* tSel←v7116 */ );
lab←L05: ;
return(var←c48092.f4/* var←c02 */ );
}
static word NoName←Q7320(formal←c0595)
word formal←c0595;
{
register ptr gf←c0594 = (ptr) &globalframe;
SOURCE(3624, 12)
(* (( (ptr) formal←c0595)+5) ) = (* (( (ptr) gf←c0594)+24)/* tSel3←v4652 */ );
SOURCE(3638, 39)
if (((* (( (ptr) formal←c0595)+5) ) != 0)) {
SOURCE(3658, 11)
(* (( (ptr) gf←c0594)+24)/* tSel3←v4652 */ ) = 0;
SOURCE(3671, 6)
(void) (XR←MonitorExit((word) (( (bPt) gf←c0594)+16)/* LOCK←v3980 */ ));
(* (( (ptr) formal←c0595)+4) ) = (* (( (ptr) formal←c0595)+5) );
return(1);
};
SOURCE(3680, 12)
(* (( (ptr) formal←c0595)+5) ) = (* (( (ptr) gf←c0594)+23)/* tSel2←v4624 */ );
SOURCE(3694, 39)
if (((* (( (ptr) formal←c0595)+5) ) != 0)) {
SOURCE(3714, 11)
(* (( (ptr) gf←c0594)+23)/* tSel2←v4624 */ ) = 0;
SOURCE(3727, 6)
(void) (XR←MonitorExit((word) (( (bPt) gf←c0594)+16)/* LOCK←v3980 */ ));
(* (( (ptr) formal←c0595)+4) ) = (* (( (ptr) formal←c0595)+5) );
return(1);
};
SOURCE(3736, 12)
(* (( (ptr) formal←c0595)+5) ) = (* (( (ptr) gf←c0594)+22)/* tSel1←v4596 */ );
SOURCE(3750, 39)
if (((* (( (ptr) formal←c0595)+5) ) != 0)) {
SOURCE(3770, 11)
(* (( (ptr) gf←c0594)+22)/* tSel1←v4596 */ ) = 0;
SOURCE(3783, 6)
(void) (XR←MonitorExit((word) (( (bPt) gf←c0594)+16)/* LOCK←v3980 */ ));
(* (( (ptr) formal←c0595)+4) ) = (* (( (ptr) formal←c0595)+5) );
return(1);
};
SOURCE(3792, 15)
(* (( (ptr) formal←c0595)+5) ) = (word) Create←P360();
return(0);
}
static void Free←P480(tSel←v7176)
word tSel←v7176;
{
register ptr gf←c48156 = (ptr) &globalframe;
/* Free: */
SOURCE(3813, 208)
SOURCE(3853, 53)
if ((((* (( (ptr) gf←c48156)+24)/* tSel3←v4652 */ ) == tSel←v7176) || ((* (( (ptr) gf←c48156)+23)/* tSel2←v4624 */ ) == tSel←v7176)) || ((* (
( (ptr) gf←c48156)+22)/* tSel1←v4596 */ ) == tSel←v7176)) {
SOURCE(3906, 5)
(void) XR←RaiseUnnamedError();
};
SOURCE(3913, 108)
if (((* (( (ptr) gf←c48156)+24)/* tSel3←v4652 */ ) == 0)) {
SOURCE(3933, 18)
(* (( (ptr) gf←c48156)+24)/* tSel3←v4652 */ ) = tSel←v7176;
}
else {
SOURCE(3951, 70)
if (((* (( (ptr) gf←c48156)+23)/* tSel2←v4624 */ ) == 0)) {
SOURCE(3971, 18)
(* (( (ptr) gf←c48156)+23)/* tSel2←v4624 */ ) = tSel←v7176;
}
else {
SOURCE(3989, 32)
if (((* (( (ptr) gf←c48156)+22)/* tSel1←v4596 */ ) == 0)) {
SOURCE(4009, 12)
(* (( (ptr) gf←c48156)+22)/* tSel1←v4596 */ ) = tSel←v7176;
};
};
};
}
static void Copy←P540(formal←c0769, formal←c0770)
word formal←c0769;
word formal←c0770;
{
W6 var←c48188;
/* declaration of source←v7236 skipped */
/* declaration of dest←v7264 skipped */
register ptr gf←c48220 = (ptr) &globalframe;
var←c48188.f4/* source←v7236 */ = formal←c0769;
var←c48188.f5/* dest←v7264 */ = formal←c0770;
/* Copy: */
SOURCE(4027, 92)
(void) (XR←MonitorEntry((word) (( (bPt) gf←c48220)+16)/* LOCK←v3980 */ ));
SOURCE(4081, 38)
{
word var←c0690;
var←c0690 = (word) &var←c48188;
(void) (word) XR←Enable(( ((word) (fPt) NoName←Q7380) ), ( ((word) (fPt) NoName←Q8280) ), var←c0690);
};
SOURCE(4027, 92)
(void) (XR←MonitorExit((word) (( (bPt) gf←c48220)+16)/* LOCK←v3980 */ ));
return;
}
static word NoName←Q7380(formal←c0598)
word formal←c0598;
{
SOURCE(4104, 15)
(* (W27Pt) (* (( (ptr) formal←c0598)+5) ) ) = (* (W27Pt) (* (( (ptr) formal←c0598)+4) ) );
return(0);
}
static void MakePointSelection←P600(selection←v7324, pos←v7352)
word selection←v7324;
W2 pos←v7352;
{
word tSel←v12564;
/* MakePointSelection: */
SOURCE(4124, 310)
SOURCE(4198, 25)
tSel←v12564 = (word) Alloc←P420();
SOURCE(4225, 35)
(void) Copy←P540(selection←v7324, tSel←v12564);
SOURCE(4262, 35)
(* (W2Pt) (( (ptr) tSel←v12564)+2) ) = pos←v7352;
(* (W2Pt) (( (ptr) tSel←v12564)+11) ) = pos←v7352;
SOURCE(4299, 24)
(* (( (ptr) tSel←v12564)+22) ) = 0;
SOURCE(4325, 26)
(* (( (ptr) tSel←v12564)+26) ) = 0;
SOURCE(4353, 23)
(* (( (ptr) tSel←v12564)+24) ) = 0;
SOURCE(4378, 44)
(void) MakeSelection←P1200(tSel←v12564, 0, 0, 0, 1);
SOURCE(4424, 10)
(void) Free←P480(tSel←v12564);
}
static void ChangeSelections←P660(formal←c0771, formal←c0772)
word formal←c0771;
word formal←c0772;
{
W7 var←c48252;
/* declaration of proc←v7412 skipped */
/* declaration of sel←v7440 skipped */
register ptr gf←c48284 = (ptr) &globalframe;
/* declaration of tSel←v12608 skipped */
var←c48252.f4/* proc←v7412 */ = formal←c0771;
var←c48252.f5/* sel←v7440 */ = formal←c0772;
/* ChangeSelections: */
SOURCE(4440, 271)
SOURCE(4514, 25)
var←c48252.f6/* tSel←v12608 */ = (word) Alloc←P420();
SOURCE(4541, 42)
(void) LockBothSelections←P120((* ((( (ptr) gf←c48284)+61)) ));
SOURCE(4587, 85)
{
word var←c0691;
var←c0691 = (word) &var←c48252;
(void) (word) XR←Enable(( ((word) (fPt) NoName←Q7440) ), ( ((word) (fPt) NoName←Q8220) ), var←c0691);
};
SOURCE(4675, 22)
(void) UnlockBothSelections←P180();
SOURCE(4699, 12)
(void) Free←P480(var←c48252.f6/* tSel←v12608 */ );
}
static word NoName←Q7440(formal←c0600)
word formal←c0600;
{
SOURCE(4629, 29)
(void) Copy←P540((* (( (ptr) formal←c0600)+5) ), (* (( (ptr) formal←c0600)+6) ));
SOURCE(4660, 12)
{
word pd73;
pd73 = (* (( (ptr) formal←c0600)+4) );
(void) ( *( (fPt) ((* (ptr) pd73 ))))((* ((( (ptr) formal←c0600)+6)) ), pd73);
};
return(0);
}
static void PushOrExchangeSelections←P720()
{
W6 var←c48316;
register ptr gf←c48348 = (ptr) &globalframe;
/* declaration of var←c43580 skipped */
/* PushOrExchangeSelections: */
SOURCE(4715, 240)
{
word tmpAddr74;
tmpAddr74 = (word) (( (ptr) &var←c48316)+4)/* var←c43580 */ ;
(* (ptr) tmpAddr74 ) = ( ((word) (fPt) DoPush←P3336) );
(* (( (ptr) tmpAddr74) + 1) ) = 1;
};
SOURCE(4923, 32)
(void) ChangeSelections←P660((word) (( (bPt) &var←c48316)+16)/* var←c43580 */ , (* (( (ptr) gf←c48348)+17)/* pSel←v4456 */ ))
;
}
static void DoPush←P3336(tSel←v12728, formal←c48412)
word tSel←v12728;
word formal←c48412;
{
register ptr gf←c48380 = (ptr) &globalframe;
formal←c48412 = (formal←c48412 - 16);
/* DoPush: */
SOURCE(4757, 163)
SOURCE(4792, 61)
(void) MakeSelection←P1200( ( ((* (ptr) (* (( (ptr) gf←c48380)+18)/* sSel←v4484 */ ) ) == 0) ? 0 : (* (( (ptr) gf←c48380)+18)
/* sSel←v4484 */ ) ) , 0, 0, 0, 1);
SOURCE(4855, 65)
(void) MakeSelection←P1200( ( ((* (ptr) tSel←v12728 ) == 0) ? 0 : tSel←v12728 ) , 1, 0, 0, 1);
}
static void MakePrimary←P780()
{
W6 var←c48444;
register ptr gf←c48476 = (ptr) &globalframe;
/* declaration of var←c43612 skipped */
/* MakePrimary: */
SOURCE(4959, 164)
{
word tmpAddr75;
tmpAddr75 = (word) (( (ptr) &var←c48444)+4)/* var←c43612 */ ;
(* (ptr) tmpAddr75 ) = ( ((word) (fPt) DoMakePrimary←P3396) );
(* (( (ptr) tmpAddr75) + 1) ) = 1;
};
SOURCE(5084, 39)
(void) ChangeSelections←P660((word) (( (bPt) &var←c48444)+16)/* var←c43612 */ , (* (( (ptr) gf←c48476)+18)/* sSel←v4484 */ ))
;
}
static void DoMakePrimary←P3396(tSel←v12832, formal←c48508)
word tSel←v12832;
word formal←c48508;
{
formal←c48508 = (formal←c48508 - 16);
/* DoMakePrimary: */
SOURCE(4988, 93)
SOURCE(5030, 19)
(void) Deselect←P1140(1);
SOURCE(5051, 30)
(void) MakeSelection←P1200(tSel←v12832, 0, 0, 0, 1);
}
static void MakeSecondary←P840()
{
W6 var←c48540;
register ptr gf←c48572 = (ptr) &globalframe;
/* declaration of var←c43644 skipped */
/* MakeSecondary: */
SOURCE(5127, 171)
{
word tmpAddr76;
tmpAddr76 = (word) (( (ptr) &var←c48540)+4)/* var←c43644 */ ;
(* (ptr) tmpAddr76 ) = ( ((word) (fPt) DoMakeSecondary←P3456) );
(* (( (ptr) tmpAddr76) + 1) ) = 1;
};
SOURCE(5257, 41)
(void) ChangeSelections←P660((word) (( (bPt) &var←c48540)+16)/* var←c43644 */ , (* (( (ptr) gf←c48572)+17)/* pSel←v4456 */ ))
;
}
static void DoMakeSecondary←P3456(tSel←v12936, formal←c48604)
word tSel←v12936;
word formal←c48604;
{
formal←c48604 = (formal←c48604 - 16);
/* DoMakeSecondary: */
SOURCE(5158, 94)
SOURCE(5202, 17)
(void) Deselect←P1140(0);
SOURCE(5221, 31)
(void) MakeSelection←P1200(tSel←v12936, 1, 0, 0, 1);
}
static void CancelPrimary←P900()
{
/* CancelPrimary: */
SOURCE(5302, 58)
SOURCE(5333, 27)
(void) MakeSelection←P1200(0, 0, 0, 0, 1);
}
static void CancelSecondary←P960()
{
/* CancelSecondary: */
SOURCE(5366, 62)
SOURCE(5399, 29)
(void) MakeSelection←P1200(0, 1, 0, 0, 1);
}
static void CancelFeedback←P1020()
{
/* CancelFeedback: */
SOURCE(5434, 60)
SOURCE(5466, 28)
(void) MakeSelection←P1200(0, 2, 0, 0, 1);
}
static void FakeSecondary←P1080(formal←c0773)
word formal←c0773;
{
W7 var←c48636;
/* declaration of sel←v7656 skipped */
register ptr gf←c48668 = (ptr) &globalframe;
/* declaration of var←c43676 skipped */
var←c48636.f4/* sel←v7656 */ = formal←c0773;
/* FakeSecondary: */
SOURCE(5500, 199)
{
word tmpAddr77;
tmpAddr77 = (word) (( (ptr) &var←c48636)+5)/* var←c43676 */ ;
(* (ptr) tmpAddr77 ) = ( ((word) (fPt) inner←P3516) );
(* (( (ptr) tmpAddr77) + 1) ) = 1;
};
SOURCE(5645, 54)
(void) WithLockedSelection←P2160(1, (word) (( (bPt) &var←c48636)+20)/* var←c43676 */ , (* (( (ptr) gf←c48668)+53) ));
}
static void inner←P3516(formal←c48732)
word formal←c48732;
{
register ptr gf←c48700 = (ptr) &globalframe;
formal←c48732 = (formal←c48732 - 20);
/* inner: */
SOURCE(5548, 92)
SOURCE(5564, 45)
if (((* (ptr) (* (( (ptr) gf←c48700)+18)/* sSel←v4484 */ ) ) != 0)) {
SOURCE(5590, 19)
(void) Deselect←P1140(1);
};
SOURCE(5611, 29)
(void) Copy←P540((* (( (ptr) formal←c48732)+4) ), (* (( (ptr) gf←c48700)+18)/* sSel←v4484 */ ));
}
static void Deselect←P1140(formal←c0774)
word formal←c0774;
{
W7 var←c48764;
/* declaration of selection←v7716 skipped */
register ptr gf←c48796 = (ptr) &globalframe;
/* declaration of var←c43708 skipped */
var←c48764.f4/* selection←v7716 */ = formal←c0774;
/* Deselect: */
SOURCE(5705, 649)
{
word tmpAddr78;
tmpAddr78 = (word) (( (ptr) &var←c48764)+5)/* var←c43708 */ ;
(* (ptr) tmpAddr78 ) = ( ((word) (fPt) inner←P3576) );
(* (( (ptr) tmpAddr78) + 1) ) = 1;
};
SOURCE(6305, 49)
(void) WithLockedSelection←P2160(var←c48764.f4/* selection←v7716 */ , (word) (( (bPt) &var←c48764)+20)/* var←c43708 */ , (* (
( (ptr) gf←c48796)+51) ));
}
static void inner←P3576(formal←c48860)
word formal←c48860;
{
register ptr gf←c48828 = (ptr) &globalframe;
word sel←v13084;
word viewer←v13112;
word op←v13140;
word down←v13168;
formal←c48860 = (formal←c48860 - 20);
/* inner: */
SOURCE(5766, 532)
SOURCE(5782, 109)
{
word var←c43740;
var←c43740 = (* (( (ptr) formal←c48860)+4) );
switch (var←c43740) {
case 0:
sel←v13084 = (* (( (ptr) gf←c48828)+17)/* pSel←v4456 */ );
break;
case 1:
sel←v13084 = (* (( (ptr) gf←c48828)+18)/* sSel←v4484 */ );
break;
case 2:
sel←v13084 = (* (( (ptr) gf←c48828)+19)/* fSel←v4512 */ );
break;
default:
sel←v13084 = (
XR←RaiseUnnamedError(), 0
);
break;
};
};
SOURCE(5893, 27)
viewer←v13112 = (* (ptr) sel←v13084 );
SOURCE(5922, 130)
{
word var←c43772;
var←c43772 = (* (( (ptr) formal←c48860)+4) );
switch (var←c43772) {
case 0:
op←v13140 = (* (( (ptr) gf←c48828)+52) );
break;
case 1:
op←v13140 = (* (( (ptr) gf←c48828)+54) );
break;
case 2:
op←v13140 = (* (( (ptr) gf←c48828)+55) );
break;
default:
op←v13140 = (
XR←RaiseUnnamedError(), 0
);
break;
};
};
SOURCE(6054, 45)
{
word pd79;
pd79 = (* (( (ptr) (* (( (ptr) gf←c48828)+185)/* var←c43804 */ ))+27) );
down←v13168 = (word) ( *( (fPt) ((* (ptr) pd79 ))))((* ((( (ptr) formal←c48860)+4)) ), pd79);
};
SOURCE(6101, 31)
(void) Copy←P540((* (( (ptr) gf←c48828)+21)/* nilSel←v4568 */ ), sel←v13084);
SOURCE(6134, 164)
if ( ( (viewer←v13112 != 0) ? (0 == down←v13168) : 0 ) ) {
SOURCE(6168, 48)
{
word pd80;
pd80 = (* (( (ptr) (* (( (ptr) gf←c48828)+186)/* var←c43836 */ ))+16) );
(void) ( *( (fPt) ((* (ptr) pd80 ))))(viewer←v13112, 1, 0, op←v13140, pd80);
};
SOURCE(6218, 80)
{
word pd81;
pd81 = (* (( (ptr) (* (( (ptr) gf←c48828)+185)/* var←c43804 */ ))+27) );
if ((0 == (word) ( *( (fPt) ((* (ptr) pd81 ))))((* ((( (ptr) formal←c48860)+4)) ), pd81))) {
SOURCE(6263, 35)
{
word pd82;
pd82 = (* (( (ptr) (* (( (ptr) gf←c48828)+185)/* var←c43804 */ ))+28) );
(void) ( *( (fPt) ((* (ptr) pd82 ))))((* ((( (ptr) formal←c48860)+4)) ), pd82);
};
};
};
};
}
static void MakeSelection←P1200(formal←c0775, formal←c0776, formal←c0777, formal←c0778, formal←c0779)
word formal←c0775;
word formal←c0776;
word formal←c0777;
word formal←c0778;
word formal←c0779;
{
W11 var←c48892;
/* declaration of new←v7776 skipped */
/* declaration of selection←v7804 skipped */
/* declaration of startValid←v7832 skipped */
/* declaration of endValid←v7860 skipped */
/* declaration of forkPaint←v7888 skipped */
register ptr gf←c48924 = (ptr) &globalframe;
/* declaration of var←c43868 skipped */
(* (( (ptr) &var←c48892)+4)/* new←v7776 */ ) = formal←c0775;
(* (( (ptr) &var←c48892)+5)/* selection←v7804 */ ) = formal←c0776;
(* (( (ptr) &var←c48892)+6)/* startValid←v7832 */ ) = formal←c0777;
(* (( (ptr) &var←c48892)+7)/* endValid←v7860 */ ) = formal←c0778;
(* (( (ptr) &var←c48892)+8)/* forkPaint←v7888 */ ) = formal←c0779;
/* MakeSelection: */
SOURCE(6360, 1231)
{
word tmpAddr83;
tmpAddr83 = (word) (( (ptr) &var←c48892)+9)/* var←c43868 */ ;
(* (ptr) tmpAddr83 ) = ( ((word) (fPt) inner←P3636) );
(* (( (ptr) tmpAddr83) + 1) ) = 1;
};
SOURCE(7537, 54)
(void) WithLockedSelection←P2160((* (( (ptr) &var←c48892)+5)/* selection←v7804 */ ), (word) (( (bPt) &var←c48892)+36)/* var←c43868 */ , (* (
( (ptr) gf←c48924)+56) ));
}
static void inner←P3636(formal←c48988)
word formal←c48988;
{
register ptr gf←c48956 = (ptr) &globalframe;
word sel←v13272 = 0;
word op←v13300 = 0;
formal←c48988 = (formal←c48988 - 36);
/* inner: */
SOURCE(6508, 1021)
SOURCE(6550, 329)
{
word var←c43900;
var←c43900 = (* (( (ptr) formal←c48988)+5) );
switch (var←c43900) {
case 0:
SOURCE(6583, 207)
{
word if←v13344;
SOURCE(6585, 45)
{
word pd84;
pd84 = (* (( (ptr) (* (( (ptr) gf←c48956)+187)/* var←c43932 */ ))+4) );
if←v13344 = (* (ptr) ( *( (fPt) ((* (ptr) pd84 ))))(pd84) );
};
SOURCE(6632, 10)
sel←v13272 = (* (( (ptr) gf←c48956)+17)/* pSel←v4456 */ );
SOURCE(6644, 14)
op←v13300 = (* (( (ptr) gf←c48956)+57) );
SOURCE(6660, 127)
if (((* (( (ptr) formal←c48988)+4) ) == 0)) {
SOURCE(6677, 44)
if ((if←v13344 != 0)) {
SOURCE(6692, 29)
{
word pd85;
pd85 = (* (( (ptr) (* (( (ptr) gf←c48956)+187)/* var←c43932 */ ))+5) );
(void) ( *( (fPt) ((* (ptr) pd85 ))))(0, 0, pd85);
};
};
}
else {
SOURCE(6729, 58)
if ((if←v13344 != (* (ptr) (* (( (ptr) formal←c48988)+4) ) ))) {
SOURCE(6751, 36)
{
word pd86;
pd86 = (* (( (ptr) (* (( (ptr) gf←c48956)+187)/* var←c43932 */ ))+5) );
(void) ( *( (fPt) ((* (ptr) pd86 ))))((* (ptr) (* (( (ptr) formal←c48988)+4) ) ), 0, pd86);
};
};
};
};
break;
case 2:
SOURCE(6807, 10)
sel←v13272 = (* (( (ptr) gf←c48956)+19)/* fSel←v4512 */ );
SOURCE(6819, 14)
op←v13300 = (* (( (ptr) gf←c48956)+58) );
break;
case 1:
SOURCE(6853, 10)
sel←v13272 = (* (( (ptr) gf←c48956)+18)/* sSel←v4484 */ );
SOURCE(6865, 14)
op←v13300 = (* (( (ptr) gf←c48956)+59) );
break;
default:
SOURCE(6895, 5)
(void) XR←RaiseUnnamedError();
break;
};
};
SOURCE(6902, 62)
if (((* (( (ptr) formal←c48988)+4) ) == 0) || ((* (ptr) (* (( (ptr) formal←c48988)+4) ) ) != (* (ptr) sel←v13272 ))) {
SOURCE(6945, 19)
(void) Deselect←P1140((* ((( (ptr) formal←c48988)+5)) ));
};
SOURCE(6966, 563)
if (((* (( (ptr) formal←c48988)+4) ) != 0)) {
SOURCE(6984, 72)
if ( ( ((* (( (ptr) formal←c48988)+5) ) != 2) ? ((* (ptr) (* (( (ptr) gf←c48956)+19)/* fSel←v4512 */ ) ) == (* (ptr) (* (
( (ptr) formal←c48988)+4) ) )) : 0 ) ) {
SOURCE(7038, 18)
(void) Deselect←P1140(2);
};
SOURCE(7058, 28)
(void) Copy←P540((* (( (ptr) formal←c48988)+4) ), sel←v13272);
SOURCE(7088, 35)
(* (( (ptr) sel←v13272)+10) ) = (* (( (ptr) formal←c48988)+6) );
SOURCE(7125, 31)
(* (( (ptr) sel←v13272)+19) ) = (* (( (ptr) formal←c48988)+7) );
SOURCE(7158, 55)
if (((* (( (ptr) sel←v13272)+22) ) == 0)) {
SOURCE(7188, 25)
(* (( (ptr) sel←v13272)+26) ) = 0;
};
SOURCE(7215, 314)
if ((0 != (* (( (ptr) formal←c48988)+8) ))) {
SOURCE(7233, 237)
{
word showSel←v13388;
SOURCE(7235, 111)
{
word var←c43964;
var←c43964 = (* (( (ptr) formal←c48988)+5) );
if ((var←c43964 == 0)) {
showSel←v13388 = (* (( (ptr) gf←c48956)+25)/* showPSel←v5128 */ );
}
else {
if ((var←c43964 == 1)) {
showSel←v13388 = (* (( (ptr) gf←c48956)+26)/* showSSel←v5156 */ );
}
else {
showSel←v13388 = (* (( (ptr) gf←c48956)+27)/* showFSel←v5184 */ );
};
};
};
SOURCE(7348, 117)
if ((0 == (* (ptr) showSel←v13388 ))) {
SOURCE(7382, 29)
(* (ptr) showSel←v13388 ) = 1;
SOURCE(7421, 44)
SOURCE(7423, 42)
{
W2 var←c43996;
{
W2 var←c0175;
word var←c0174;
var←c0174 = XR←ExtensionAlloc(6);
{
word tmpAddr87;
tmpAddr87 = (word) var←c0174;
(* (ptr) tmpAddr87 ) = ( ((word) (fPt) NoName←Q8520) );
(* (( (ptr) tmpAddr87) + 1) ) = 0;
(* (( (ptr) tmpAddr87) + 2) ) = (word) (( (bPt) gf←c48956)+552)/* var←c42364 */ ;
(* (( (ptr) tmpAddr87) + 3) ) = 0;
(* (( (ptr) tmpAddr87) + 4) ) = showSel←v13388;
(* (( (ptr) tmpAddr87) + 5) ) = op←v13300;
};
(void) XR←Fork((word) &var←c0175, var←c0174);
var←c43996 = var←c0175;
};
{
word pd88;
pd88 = (* (( (ptr) (* (( (ptr) gf←c48956)+184)/* var←c43420 */ ))+11) );
(void) ( *( (fPt) ((* (ptr) pd88 ))))(var←c43996, pd88);
};
};
};
};
}
else {
SOURCE(7477, 52)
{
word pd89;
pd89 = (* (( (ptr) (* (( (ptr) gf←c48956)+186)/* var←c43836 */ ))+16) );
(void) ( *( (fPt) ((* (ptr) pd89 ))))((* (ptr) sel←v13272 ), 1, 0, op←v13300, pd89);
};
};
};
}
static void ShowSel←P1260(formal←c0780, formal←c0781)
word formal←c0780;
word formal←c0781;
{
W9 var←c49020;
/* declaration of my←v8056 skipped */
/* declaration of op←v8084 skipped */
register ptr gf←c49052 = (ptr) &globalframe;
/* declaration of var←c44028 skipped */
word selection←v13444;
/* declaration of sel←v13472 skipped */
(* (( (ptr) &var←c49020)+4)/* my←v8056 */ ) = formal←c0780;
(* (( (ptr) &var←c49020)+5)/* op←v8084 */ ) = formal←c0781;
/* ShowSel: */
SOURCE(7873, 707)
{
word tmpAddr90;
tmpAddr90 = (word) (( (ptr) &var←c49020)+6)/* var←c44028 */ ;
(* (ptr) tmpAddr90 ) = ( ((word) (fPt) inner←P3792) );
(* (( (ptr) tmpAddr90) + 1) ) = 1;
};
SOURCE(7922, 51)
selection←v13444 = (* (( (ptr) (* (( (ptr) &var←c49020)+4)/* my←v8056 */ ))+1) );
SOURCE(7975, 109)
{
word var←c44060;
var←c44060 = selection←v13444;
switch (var←c44060) {
case 0:
(* (( (ptr) &var←c49020)+8)/* sel←v13472 */ ) = (* (( (ptr) gf←c49052)+17)/* pSel←v4456 */ );
break;
case 1:
(* (( (ptr) &var←c49020)+8)/* sel←v13472 */ ) = (* (( (ptr) gf←c49052)+18)/* sSel←v4484 */ );
break;
case 2:
(* (( (ptr) &var←c49020)+8)/* sel←v13472 */ ) = (* (( (ptr) gf←c49052)+19)/* fSel←v4512 */ );
break;
default:
(* (( (ptr) &var←c49020)+8)/* sel←v13472 */ ) = (
XR←RaiseUnnamedError(), 0
);
break;
};
};
SOURCE(8532, 48)
(void) WithLockedSelection←P2160(selection←v13444, (word) (( (bPt) &var←c49020)+24)/* var←c44028 */ , (* (( (ptr) gf←c49052)+60)
));
}
static void inner←P3792(formal←c49148)
word formal←c49148;
{
W7 var←c49084;
register ptr gf←c49116 = (ptr) &globalframe;
/* declaration of var←c44092 skipped */
/* declaration of viewer←v13560 skipped */
formal←c49148 = (formal←c49148 - 24);
var←c49084.f0 = formal←c49148;
/* inner: */
SOURCE(8086, 441)
{
word tmpAddr91;
tmpAddr91 = (word) (( (ptr) &var←c49084)+4)/* var←c44092 */ ;
(* (ptr) tmpAddr91 ) = ( ((word) (fPt) inner←P3852) );
(* (( (ptr) tmpAddr91) + 1) ) = 1;
};
SOURCE(8102, 27)
var←c49084.f6/* viewer←v13560 */ = (* (ptr) (* (( (ptr) formal←c49148)+8) ) );
SOURCE(8436, 64)
if ((var←c49084.f6/* viewer←v13560 */ != 0)) {
SOURCE(8455, 45)
{
word pd92;
pd92 = (* (( (ptr) (* (( (ptr) gf←c49116)+188)/* var←c44124 */ ))+4) );
(void) ( *( (fPt) ((* (ptr) pd92 ))))((word) (( (bPt) &var←c49084)+16)/* var←c44092 */ , var←c49084.f6/* viewer←v13560 */ , pd92)
;
};
};
SOURCE(8502, 25)
(* (ptr) (* (( (ptr) formal←c49148)+4) ) ) = 0;
}
static void inner←P3852(formal←c49244)
word formal←c49244;
{
W6 var←c49180;
register ptr gf←c49212 = (ptr) &globalframe;
formal←c49244 = (formal←c49244 - 16);
var←c49180.f0 = formal←c49244;
/* inner: */
SOURCE(8131, 288)
SOURCE(8147, 272)
{
word var←c44156;
var←c44156 = (* (( (ptr) (* (( (ptr) formal←c49244)+6) ))+26) );
if ((var←c44156 == 0)) {
goto lab←L100013;
};
if (((* (( (ptr) gf←c49212)+48) ) == XR←GetReferentType(var←c44156))) {
{
/* declaration of tdd←v13648 skipped */
var←c49180.f4/* tdd←v13648 */ = var←c44156;
SOURCE(8218, 64)
{
word pd93;
pd93 = (* (( (ptr) (* (( (ptr) gf←c49212)+189)/* var←c44188 */ ))+7) );
if ((0 == (word) ( *( (fPt) ((* (ptr) pd93 ))))(var←c49180.f4/* tdd←v13648 */ , (* (( (ptr) gf←c49212)+60) ), pd93))) {
SOURCE(8276, 6)
return;
};
};
SOURCE(8284, 97)
{
/* declaration of var←c04 skipped */
var←c49180.f5/* var←c04 */ = (* (( (ptr) (* (( (ptr) gf←c49212)+186)/* var←c43836 */ ))+16) );
{
word var←c0692;
var←c0692 = (word) &var←c49180;
(void) (word) XR←Enable(( ((word) (fPt) NoName←Q7500) ), ( ((word) (fPt) NoName←Q8160) ), var←c0692);
};
};
SOURCE(8383, 36)
{
word pd94;
pd94 = (* (( (ptr) (* (( (ptr) gf←c49212)+189)/* var←c44188 */ ))+9) );
(void) ( *( (fPt) ((* (ptr) pd94 ))))(var←c49180.f4/* tdd←v13648 */ , pd94);
};
};
}
else {
lab←L100013: ;
};
};
}
static word NoName←Q7500(formal←c0622)
word formal←c0622;
{
SOURCE(8284, 97)
{
word pd95;
pd95 = (* (( (ptr) formal←c0622)+5) );
(void) ( *( (fPt) ((* (ptr) pd95 ))))((* (( (ptr) (* (ptr) formal←c0622 ))+6) ), 1, 0, (* (( (ptr) (* (ptr) (* (ptr) formal←c0622 ) ))+5)
), pd95);
};
return(0);
}
static void MarkSelection←P1320(formal←c0782, viewer←v8384, selection←v8412, formal←c0783)
word formal←c0782;
word viewer←v8384;
word selection←v8412;
word formal←c0783;
{
W13 var←c49276;
/* declaration of dc←v8356 skipped */
/* declaration of id←v8440 skipped */
register ptr gf←c49308 = (ptr) &globalframe;
/* declaration of var←c44220 skipped */
/* declaration of var←c44252 skipped */
(* (( (ptr) &var←c49276)+4)/* dc←v8356 */ ) = formal←c0782;
(* (( (ptr) &var←c49276)+5)/* id←v8440 */ ) = formal←c0783;
/* MarkSelection: */
SOURCE(9144, 2872)
{
word tmpAddr96;
tmpAddr96 = (word) (( (ptr) &var←c49276)+6)/* var←c44220 */ ;
(* (ptr) tmpAddr96 ) = ( ((word) (fPt) EffectSelAll←P4260) );
(* (( (ptr) tmpAddr96) + 1) ) = 1;
};
{
word tmpAddr97;
tmpAddr97 = (word) (( (ptr) &var←c49276)+8)/* var←c44252 */ ;
(* (ptr) tmpAddr97 ) = ( ((word) (fPt) EffectSelect←P4056) );
(* (( (ptr) tmpAddr97) + 1) ) = 1;
};
SOURCE(9251, 2765)
{
word var←c44284;
var←c44284 = (* (( (ptr) viewer←v8384)+26) );
if ((var←c44284 == 0)) {
goto lab←L100016;
};
if (((* (( (ptr) gf←c49308)+48) ) == XR←GetReferentType(var←c44284))) {
{
word tdd←v13692;
tdd←v13692 = var←c44284;
SOURCE(9320, 2750)
{
/* declaration of lines←v13736 skipped */
/* declaration of vHeight←v13764 skipped */
/* declaration of selBound←v13792 skipped */
word selColor←v13820;
SOURCE(9322, 46)
(* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ) = (* (( (ptr) tdd←v13692)+1) );
SOURCE(9370, 38)
(* (( (ptr) &var←c49276)+11)/* vHeight←v13764 */ ) = (* (( (ptr) (* (ptr) selection←v8412 ))+8) );
SOURCE(9410, 84)
(* (( (ptr) &var←c49276)+12)/* selBound←v13792 */ ) = ( ( (0 != (* (( (ptr) selection←v8412)+26) )) ? ((* (( (ptr) &var←c49276)+5)
/* id←v8440 */ ) != 2) : 0 ) ? 0 : 1 ) ;
SOURCE(9496, 145)
selColor←v13820 = ( ((* (( (ptr) &var←c49276)+5)/* id←v8440 */ ) == 0) ? 0 : ( ((* (( (ptr) &var←c49276)+5)/* id←v8440 */ ) == 2) ? 3 : ( (0 != (* (
( (ptr) selection←v8412)+26) )) ? 1 : 2 ) ) ) ;
SOURCE(10021, 144)
if ((( (int)(* (( (ptr) selection←v8412)+13) ) < (int)0) || ( (int)(* (( (ptr) selection←v8412)+4) ) == (int)2147483647)) || ( ( (int)(* (
( (ptr) selection←v8412)+4) ) == (int)(* (( (ptr) selection←v8412)+13) )) ? (0 != (* (( (ptr) selection←v8412)+18) )) : 0 ) ) {
SOURCE(10159, 6)
return;
};
SOURCE(10182, 194)
{
word var←c44316;
var←c44316 = selColor←v13820;
switch (var←c44316) {
case 0:
SOURCE(10212, 26)
{
word pd98;
pd98 = (* (( (ptr) (* (( (ptr) gf←c49308)+190)/* var←c44348 */ ))+52) );
(void) ( *( (fPt) ((* (ptr) pd98 ))))((* (( (ptr) &var←c49276)+4)/* dc←v8356 */ ), (* (( (ptr) gf←c49308)+31)/* black←v5324 */ ), pd98)
;
};
break;
case 1:
SOURCE(10253, 30)
{
word pd99;
pd99 = (* (( (ptr) (* (( (ptr) gf←c49308)+190)/* var←c44348 */ ))+52) );
(void) ( *( (fPt) ((* (ptr) pd99 ))))((* (( (ptr) &var←c49276)+4)/* dc←v8356 */ ), (* (( (ptr) gf←c49308)+28)/* lightGrey←v5240 */ ), pd99)
;
};
break;
case 2:
SOURCE(10297, 29)
{
word pd100;
pd100 = (* (( (ptr) (* (( (ptr) gf←c49308)+190)/* var←c44348 */ ))+52) );
(void) ( *( (fPt) ((* (ptr) pd100 ))))((* (( (ptr) &var←c49276)+4)/* dc←v8356 */ ), (* (( (ptr) gf←c49308)+29)/* darkGrey←v5268 */ ), pd100)
;
};
break;
case 3:
SOURCE(10343, 33)
{
word pd101;
pd101 = (* (( (ptr) (* (( (ptr) gf←c49308)+190)/* var←c44348 */ ))+52) );
(void) ( *( (fPt) ((* (ptr) pd101 ))))((* (( (ptr) &var←c49276)+4)/* dc←v8356 */ ), (* (( (ptr) gf←c49308)+30)/* veryDarkGrey←v5296 */ ), pd101)
;
};
break;
default:
SOURCE(10389, 5)
(void) XR←RaiseUnnamedError();
break;
};
};
if (( (int)(* (( (ptr) selection←v8412)+4) ) == (int)(* (( (ptr) selection←v8412)+13) )) || ( ( (int)(* (( (ptr) selection←v8412)+4)
) < (int)0) ? ( (int)(* (( (ptr) selection←v8412)+13) ) == (int)0) : 0 ) ) {
SOURCE(10515, 399)
{
word x←v14036;
word y←v14064;
SOURCE(10532, 231)
if (( (int)(* (( (ptr) selection←v8412)+4) ) < (int)0) || (0 != (* (( (ptr) selection←v8412)+9) ))) {
SOURCE(10592, 117)
{
word line←v14108;
SOURCE(10594, 44)
{
/*1*/ word x102;
/*1*/ line←v14108 = (x102 = (* (( (ptr) selection←v8412)+4) ),
/*1*/ MAX((int)(word), 0, x102));
/*1*/ };
SOURCE(10640, 23)
{
/*1*/ word limit103;
/*1*/ x←v14036 = (* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ))+3))+(
/*1*/ limit103 = (* (( (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ))+2) ),
/*1*/ BCK(line←v14108, limit103)
/*1*/ )))+7) );
/*1*/ };
SOURCE(10665, 42)
{
/*1*/ word limit104;
/*1*/ word limit105;
/*1*/ y←v14064 = ((* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ))+3))+(
/*1*/ limit104 = (* (( (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ))+2) ),
/*1*/ BCK(line←v14108, limit104)
/*1*/ )))+6) ) - (* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ))+3))+(
/*1*/ limit105 = (* (( (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ))+2) ),
/*1*/ BCK(line←v14108, limit105)
/*1*/ )))+3) ));
/*1*/ };
};
}
else {
SOURCE(10718, 21)
x←v14036 = (* (( (ptr) selection←v8412)+5) );
SOURCE(10741, 22)
y←v14064 = (* (( (ptr) selection←v8412)+6) );
};
SOURCE(10766, 30)
if ((0 != (* (( (ptr) selection←v8412)+18) ))) {
SOURCE(10796, 5)
(void) XR←RaiseUnnamedError();
};
SOURCE(10843, 71)
(void) EffectSelect←P4056(x←v14036, y←v14064, (((* (( (ptr) selection←v8412)+14) ) - x←v14036) + (* (( (ptr) selection←v8412)+16)
)), (* (( (ptr) selection←v8412)+17) ), (word) (( (bPt) &var←c49276)+32)/* var←c44252 */ );
};
}
else {
if ( ( ( (int)(* (( (ptr) selection←v8412)+4) ) == (int)(* (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ) )) ? ( (int)(* (
( (ptr) selection←v8412)+13) ) > (int)(* (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ) )) : 0 ) ) {
SOURCE(10996, 163)
{
word idx106;
word limit107;
word idx108;
word limit109;
(void) EffectSelect←P4056((* (( (ptr) selection←v8412)+5) ), (* (( (ptr) selection←v8412)+6) ), (((* (( (ptr) (( (W9Pt) (
/*1*/ ( (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ))+3))+(
/*1*/ idx106 = (* (( (ptr) selection←v8412)+4) ),
/*1*/ limit107 = (* (( (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ))+2) ),
/*1*/ BCK(idx106, limit107)
/*1*/ )))+8) ) + (* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ))+3))+(
/*1*/ idx108 = (* (( (ptr) selection←v8412)+4) ),
/*1*/ limit109 = (* (( (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ))+2) ),
/*1*/ BCK(idx108, limit109)
/*1*/ )))+7) )) - (* (( (ptr) selection←v8412)+5) )), (* (( (ptr) selection←v8412)+8) ), (word) (( (bPt) &var←c49276)+32)/* var←c44252 */ )
;
};
}
else {
SOURCE(11173, 894)
{
word sl←v14152;
word el←v14180;
SOURCE(11175, 63)
{
word x110;
word x111;
word x112;
sl←v14152 = (x112 = (x110 = (* (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ) ),
/*1*/ x111 = (* (( (ptr) selection←v8412)+4) ),
/*1*/ MIN((int)(word), x110, x111)),
/*1*/ MAX((int)(word), 0, x112));
};
SOURCE(11240, 61)
{
word x113;
word x114;
word x115;
el←v14180 = (x115 = (x113 = (* (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ) ),
/*1*/ x114 = (* (( (ptr) selection←v8412)+13) ),
/*1*/ MIN((int)(word), x113, x114)),
/*1*/ MAX((int)(word), 0, x115));
};
SOURCE(11458, 220)
if ( ( ( (int)sl←v14152 == (int)(* (( (ptr) selection←v8412)+4) )) ? (0 == (* (( (ptr) selection←v8412)+9) )) : 0 ) ) {
SOURCE(11524, 129)
{
/*1*/ word limit116;
/*1*/ word limit117;
/*1*/ (void) EffectSelect←P4056((* (( (ptr) selection←v8412)+5) ), (* (( (ptr) selection←v8412)+6) ), (((* (( (ptr) (( (W9Pt) (
/*1*/ ( (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ))+3))+(
/*1*/ limit116 = (* (( (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ))+2) ),
/*1*/ BCK(sl←v14152, limit116)
/*1*/ )))+8) ) + (* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ))+3))+(
/*1*/ limit117 = (* (( (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ))+2) ),
/*1*/ BCK(sl←v14152, limit117)
/*1*/ )))+7) )) - (* (( (ptr) selection←v8412)+5) )), (* (( (ptr) selection←v8412)+8) ), (word) (( (bPt) &var←c49276)+32)/* var←c44252 */ )
/*1*/ ;
/*1*/ };
}
else {
SOURCE(11662, 16)
(void) EffectSelAll←P4260(sl←v14152, (word) (( (bPt) &var←c49276)+24)/* var←c44220 */ );
};
SOURCE(11683, 45)
{
register word n←v14312;
n←v14312 = sl←v14152;
if (( (int)n←v14312 >= (int)el←v14180)) {
/*1*/ goto lab←L100017;
/*1*/ };
n←v14312 = (n←v14312 + 1);
if (( (int)n←v14312 == (int)el←v14180)) {
/*1*/ goto lab←L100017;
/*1*/ };
lab←L100020: ;
SOURCE(11713, 15)
(void) EffectSelAll←P4260(n←v14312, (word) (( (bPt) &var←c49276)+24)/* var←c44220 */ );
n←v14312 = (n←v14312 + 1);
if (( (int)n←v14312 < (int)el←v14180)) {
/*1*/ goto lab←L100020;
/*1*/ };
lab←L100017: ;
};
if ((0 != (* (( (ptr) selection←v8412)+18) ))) {
}
else {
if (( (int)el←v14180 == (int)(* (( (ptr) selection←v8412)+13) ))) {
SOURCE(11862, 120)
/*1*/ {
/*1*/ word limit118;
/*1*/ word limit119;
/*1*/ (void) EffectSelect←P4056((* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ))+3))+(
/*1*/ limit118 = (* (( (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ))+2) ),
/*1*/ BCK(el←v14180, limit118)
/*1*/ )))+7) ), (* (( (ptr) selection←v8412)+15) ), (((* (( (ptr) selection←v8412)+14) ) - (* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) &var←c49276)+10)
/*1*/ /* lines←v13736 */ ))+3))+(
/*1*/ limit119 = (* (( (ptr) (* (( (ptr) &var←c49276)+10)/* lines←v13736 */ ))+2) ),
/*1*/ BCK(el←v14180, limit119)
/*1*/ )))+7) )) + (* (( (ptr) selection←v8412)+16) )), (* (( (ptr) selection←v8412)+17) ), (word) (( (bPt) &var←c49276)+32)/* var←c44252 */ )
/*1*/ ;
/*1*/ };
/*1*/ }
else {
SOURCE(12000, 16)
/*1*/ (void) EffectSelAll←P4260(el←v14180, (word) (( (bPt) &var←c49276)+24)/* var←c44220 */ );
/*1*/ };
};
};
};
};
};
};
}
else {
lab←L100016: ;
};
};
}
static void EffectSelect←P4056(x←v13924, y←v13952, w←v13980, h←v14008, formal←c49372)
word x←v13924;
word y←v13952;
word w←v13980;
word h←v14008;
word formal←c49372;
{
register ptr gf←c49340 = (ptr) &globalframe;
word lineHeight←v14356;
word bottom←v14384;
formal←c49372 = (formal←c49372 - 32);
/* EffectSelect: */
SOURCE(9643, 20)
SOURCE(9688, 36)
lineHeight←v14356 = (* (( (ptr) gf←c49340)+32)/* selectionLineWidth←v5408 */ );
SOURCE(9726, 29)
bottom←v14384 = (((* (( (ptr) formal←c49372)+11) ) - y←v13952) - h←v14008);
SOURCE(9757, 90)
if (((* (( (ptr) formal←c49372)+5) ) == 2)) {
SOURCE(9779, 30)
lineHeight←v14356 = (* (( (ptr) gf←c49340)+33)/* feedbackLineWidth←v5436 */ );
SOURCE(9811, 36)
bottom←v14384 = (bottom←v14384 - (* (( (ptr) gf←c49340)+34)/* feedbackLineRaise←v5464 */ ));
};
SOURCE(9850, 148)
{
word var←c44380;
var←c44380 = (* (( (ptr) formal←c49372)+12) );
if ((var←c44380 == 1)) {
SOURCE(9879, 51)
{
word pd120;
pd120 = (* (( (ptr) (* (( (ptr) gf←c49340)+190)/* var←c44348 */ ))+66) );
(void) ( *( (fPt) ((* (ptr) pd120 ))))((* (( (ptr) formal←c49372)+4) ), x←v13924, bottom←v14384, w←v13980, lineHeight←v14356, pd120)
;
};
}
else {
if ((var←c44380 == 0)) {
SOURCE(9941, 57)
{
word pd121;
pd121 = (* (( (ptr) (* (( (ptr) gf←c49340)+190)/* var←c44348 */ ))+66) );
(void) ( *( (fPt) ((* (ptr) pd121 ))))((* (( (ptr) formal←c49372)+4) ), x←v13924, bottom←v14384, w←v13980, (((* (( (ptr) formal←c49372)+11)
) - y←v13952) - bottom←v14384), pd121);
};
}
else {
SOURCE(10011, 5)
(void) XR←RaiseUnnamedError();
};
};
};
}
static void EffectSelAll←P4260(n←v14284, formal←c49404)
word n←v14284;
word formal←c49404;
{
formal←c49404 = (formal←c49404 - 24);
/* EffectSelAll: */
SOURCE(11303, 20)
SOURCE(11339, 116)
{
word limit122;
word limit123;
word limit124;
word limit125;
word limit126;
word limit127;
word idx128;
(void) EffectSelect←P4056((* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) formal←c49404)+10) ))+3))+(
limit122 = (* (( (ptr) (* (( (ptr) formal←c49404)+10) ))+2) ),
BCK(n←v14284, limit122)
)))+7) ), ((* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) formal←c49404)+10) ))+3))+(
limit123 = (* (( (ptr) (* (( (ptr) formal←c49404)+10) ))+2) ),
BCK(n←v14284, limit123)
)))+6) ) - (* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) formal←c49404)+10) ))+3))+(
limit124 = (* (( (ptr) (* (( (ptr) formal←c49404)+10) ))+2) ),
BCK(n←v14284, limit124)
)))+3) )), (* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) formal←c49404)+10) ))+3))+(
limit125 = (* (( (ptr) (* (( (ptr) formal←c49404)+10) ))+2) ),
BCK(n←v14284, limit125)
)))+8) ), (
idx128 = (word) ((* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) formal←c49404)+10) ))+3))+(
limit126 = (* (( (ptr) (* (( (ptr) formal←c49404)+10) ))+2) ),
BCK(n←v14284, limit126)
)))+3) ) + (* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) formal←c49404)+10) ))+3))+(
limit127 = (* (( (ptr) (* (( (ptr) formal←c49404)+10) ))+2) ),
BCK(n←v14284, limit127)
)))+4) )),
SGNCK(idx128)
), (word) (( (bPt) formal←c49404)+32));
};
}
static void ExtendSelection←P1380(formal←c0784, formal←c0785, formal←c0786, formal←c0787, formal←c0788, updateEnd←v8640)
word formal←c0784;
word formal←c0785;
word formal←c0786;
word formal←c0787;
word formal←c0788;
word updateEnd←v8640;
{
W15 var←c49436;
/* declaration of dc←v8500 skipped */
/* declaration of viewer←v8528 skipped */
/* declaration of old←v8556 skipped */
/* declaration of new←v8584 skipped */
/* declaration of id←v8612 skipped */
register ptr gf←c49468 = (ptr) &globalframe;
/* declaration of var←c44412 skipped */
/* declaration of var←c44444 skipped */
/* declaration of var←c44476 skipped */
(* (( (ptr) &var←c49436)+4)/* dc←v8500 */ ) = formal←c0784;
(* (( (ptr) &var←c49436)+5)/* viewer←v8528 */ ) = formal←c0785;
(* (( (ptr) &var←c49436)+6)/* old←v8556 */ ) = formal←c0786;
(* (( (ptr) &var←c49436)+7)/* new←v8584 */ ) = formal←c0787;
(* (( (ptr) &var←c49436)+8)/* id←v8612 */ ) = formal←c0788;
/* ExtendSelection: */
SOURCE(12086, 2485)
{
word tmpAddr129;
tmpAddr129 = (word) (( (ptr) &var←c49436)+9)/* var←c44412 */ ;
(* (ptr) tmpAddr129 ) = ( ((word) (fPt) DecLoc←P4632) );
(* (( (ptr) tmpAddr129) + 1) ) = 1;
};
{
word tmpAddr130;
tmpAddr130 = (word) (( (ptr) &var←c49436)+11)/* var←c44444 */ ;
(* (ptr) tmpAddr130 ) = ( ((word) (fPt) BumpLoc←P4476) );
(* (( (ptr) tmpAddr130) + 1) ) = 1;
};
{
word tmpAddr131;
tmpAddr131 = (word) (( (ptr) &var←c49436)+13)/* var←c44476 */ ;
(* (ptr) tmpAddr131 ) = ( ((word) (fPt) TooHard←P4368) );
(* (( (ptr) tmpAddr131) + 1) ) = 1;
};
SOURCE(12437, 2098)
if ((0 != updateEnd←v8640)) {
SOURCE(12455, 1151)
{
word tooHard←v14516;
word sameNode←v14544;
SOURCE(12651, 54)
{
word var←c44508;
var←c44508 = (* (( (ptr) (* (( (ptr) &var←c49436)+6)/* old←v8556 */ ))+13) );
if (( (int)var←c44508 < (int)0)) {
tooHard←v14516 = 1;
}
else {
tooHard←v14516 = ( (int)var←c44508 >= (int)2147483647);
};
};
SOURCE(12707, 54)
sameNode←v14544 = ((* (( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+11) ) == (* (( (ptr) (* (( (ptr) &var←c49436)+6)
/* old←v8556 */ ))+11) ));
SOURCE(12763, 32)
if ((0 != tooHard←v14516)) {
SOURCE(12780, 7)
(void) TooHard←P4368((word) ((( (bPt) &var←c49436)+52)/* var←c44476 */ ));
SOURCE(12789, 6)
return;
};
if (XR←EqualWords((( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+11), (( (ptr) (* (( (ptr) &var←c49436)+6)/* old←v8556 */ ))+11)
, 2)) {
}
else {
{
word tc133;
word pd134;
if ( ( (0 != sameNode←v14544) ? ( (int)(* (( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+12) ) > (int)(* (( (ptr) (* (
( (ptr) &var←c49436)+6)/* old←v8556 */ ))+12) )) : 0 ) ) { goto then0132;};
if ((0 == sameNode←v14544)) {
pd134 = (* (( (ptr) (* (( (ptr) gf←c49468)+191)/* var←c44540 */ ))+22) );
tc133 = (word) ((word) ( *( (fPt) ((* (ptr) pd134 ))))((* (( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+11) ), (* (
( (ptr) (* (( (ptr) &var←c49436)+6)/* old←v8556 */ ))+11) ), pd134) == 2);
}
else {
tc133 = (word) 0;
};
if (tc133) {
then0132: ;
SOURCE(12992, 19)
(* (W9Pt) (( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+2) ) = (* (W9Pt) (( (ptr) (* (( (ptr) &var←c49436)+6)
/* old←v8556 */ ))+11) );
SOURCE(13013, 38)
(void) BumpLoc←P4476((word) (( (bPt) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+8), (* (W2Pt) (( (ptr) (* (( (ptr) &var←c49436)+7)
/* new←v8584 */ ))+2) ), (word) (( (bPt) &var←c49436)+44)/* var←c44444 */ );
SOURCE(13053, 86)
if ( ( (0 != sameNode←v14544) ? ((* (( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+2) ) != (* (( (ptr) (* (( (ptr) &var←c49436)+7)
/* new←v8584 */ ))+11) )) : 0 ) ) {
SOURCE(13112, 27)
(* (W2Pt) (( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+2) ) = (* (W2Pt) (( (ptr) (* (( (ptr) &var←c49436)+7)
/* new←v8584 */ ))+11) );
};
SOURCE(13141, 27)
(void) FixupSelection←P1620((* (( (ptr) &var←c49436)+7)/* new←v8584 */ ), (* (( (ptr) &var←c49436)+5)/* viewer←v8528 */ ), 1, 1)
;
SOURCE(13170, 34)
(void) MarkSelection←P1320((* (( (ptr) &var←c49436)+4)/* dc←v8500 */ ), (* (( (ptr) &var←c49436)+5)/* viewer←v8528 */ ), (* (
( (ptr) &var←c49436)+7)/* new←v8584 */ ), (* (( (ptr) &var←c49436)+8)/* id←v8612 */ ));
SOURCE(13206, 17)
(* (W9Pt) (( (ptr) (* (( (ptr) &var←c49436)+6)/* old←v8556 */ ))+11) ) = (* (W9Pt) (( (ptr) (* (( (ptr) &var←c49436)+7)
/* new←v8584 */ ))+11) );
}
else {
SOURCE(13238, 365)
{
W2 save←v14692;
SOURCE(13240, 28)
save←v14692 = (* (W2Pt) (( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+11) );
SOURCE(13270, 19)
(* (W9Pt) (( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+2) ) = (* (W9Pt) (( (ptr) (* (( (ptr) &var←c49436)+7)
/* new←v8584 */ ))+11) );
SOURCE(13291, 29)
(void) BumpLoc←P4476((word) (( (bPt) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+8), save←v14692, (word) (( (bPt) &var←c49436)+44)
/* var←c44444 */ );
SOURCE(13322, 86)
if ( ( (0 != sameNode←v14544) ? ((* (( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+2) ) != (* (( (ptr) (* (( (ptr) &var←c49436)+7)
/* new←v8584 */ ))+11) )) : 0 ) ) {
SOURCE(13381, 27)
(* (W2Pt) (( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+2) ) = (* (W2Pt) (( (ptr) (* (( (ptr) &var←c49436)+6)
/* old←v8556 */ ))+11) );
};
SOURCE(13410, 17)
(* (W9Pt) (( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+11) ) = (* (W9Pt) (( (ptr) (* (( (ptr) &var←c49436)+6)
/* old←v8556 */ ))+11) );
SOURCE(13429, 40)
(void) FixupSelection←P1620((* (( (ptr) &var←c49436)+7)/* new←v8584 */ ), (* (( (ptr) &var←c49436)+5)/* viewer←v8528 */ ), 1, 0)
;
SOURCE(13484, 34)
(void) MarkSelection←P1320((* (( (ptr) &var←c49436)+4)/* dc←v8500 */ ), (* (( (ptr) &var←c49436)+5)/* viewer←v8528 */ ), (* (
( (ptr) &var←c49436)+7)/* new←v8584 */ ), (* (( (ptr) &var←c49436)+8)/* id←v8612 */ ));
SOURCE(13520, 19)
(* (W9Pt) (( (ptr) (* (( (ptr) &var←c49436)+6)/* old←v8556 */ ))+11) ) = (* (W9Pt) (( (ptr) (* (( (ptr) &var←c49436)+7)
/* new←v8584 */ ))+2) );
SOURCE(13541, 18)
(* (W2Pt) (( (ptr) (* (( (ptr) &var←c49436)+6)/* old←v8556 */ ))+11) ) = save←v14692;
SOURCE(13561, 40)
(void) FixupSelection←P1620((* (( (ptr) &var←c49436)+6)/* old←v8556 */ ), (* (( (ptr) &var←c49436)+5)/* viewer←v8528 */ ), 0, 1)
;
};
};
};
};
};
}
else {
SOURCE(13613, 927)
{
word tooHard←v14836;
word sameNode←v14864;
SOURCE(13812, 56)
{
word var←c44572;
var←c44572 = (* (( (ptr) (* (( (ptr) &var←c49436)+6)/* old←v8556 */ ))+4) );
if (( (int)var←c44572 < (int)0)) {
tooHard←v14836 = 1;
}
else {
tooHard←v14836 = ( (int)var←c44572 >= (int)2147483647);
};
};
SOURCE(13870, 58)
sameNode←v14864 = ((* (( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+2) ) == (* (( (ptr) (* (( (ptr) &var←c49436)+6)
/* old←v8556 */ ))+2) ));
SOURCE(13930, 32)
if ((0 != tooHard←v14836)) {
SOURCE(13947, 7)
(void) TooHard←P4368((word) ((( (bPt) &var←c49436)+52)/* var←c44476 */ ));
SOURCE(13956, 6)
return;
};
if (XR←EqualWords((( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+2), (( (ptr) (* (( (ptr) &var←c49436)+6)/* old←v8556 */ ))+2)
, 2)) {
}
else {
{
word tc136;
word pd137;
if ( ( (0 != sameNode←v14864) ? ( (int)(* (( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+3) ) < (int)(* (( (ptr) (* (
( (ptr) &var←c49436)+6)/* old←v8556 */ ))+3) )) : 0 ) ) { goto then0135;};
if ((0 == sameNode←v14864)) {
pd137 = (* (( (ptr) (* (( (ptr) gf←c49468)+191)/* var←c44540 */ ))+22) );
tc136 = (word) ((word) ( *( (fPt) ((* (ptr) pd137 ))))((* (( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+2) ), (* (
( (ptr) (* (( (ptr) &var←c49436)+6)/* old←v8556 */ ))+2) ), pd137) == 0);
}
else {
tc136 = (word) 0;
};
if (tc136) {
then0135: ;
SOURCE(14172, 35)
(void) DecLoc←P4632((word) (( (bPt) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+44), (* (W2Pt) (( (ptr) (* (( (ptr) &var←c49436)+6)
/* old←v8556 */ ))+2) ), (word) (( (bPt) &var←c49436)+36)/* var←c44412 */ );
SOURCE(14209, 27)
(void) FixupSelection←P1620((* (( (ptr) &var←c49436)+7)/* new←v8584 */ ), (* (( (ptr) &var←c49436)+5)/* viewer←v8528 */ ), 1, 1)
;
SOURCE(14238, 34)
(void) MarkSelection←P1320((* (( (ptr) &var←c49436)+4)/* dc←v8500 */ ), (* (( (ptr) &var←c49436)+5)/* viewer←v8528 */ ), (* (
( (ptr) &var←c49436)+7)/* new←v8584 */ ), (* (( (ptr) &var←c49436)+8)/* id←v8612 */ ));
SOURCE(14274, 21)
(* (W9Pt) (( (ptr) (* (( (ptr) &var←c49436)+6)/* old←v8556 */ ))+2) ) = (* (W9Pt) (( (ptr) (* (( (ptr) &var←c49436)+7)
/* new←v8584 */ ))+2) );
}
else {
SOURCE(14310, 227)
{
W2 save←v15012;
SOURCE(14312, 30)
save←v15012 = (* (W2Pt) (( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+2) );
SOURCE(14344, 26)
(void) DecLoc←P4632((word) (( (bPt) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+44), save←v15012, (word) (( (bPt) &var←c49436)+36)
/* var←c44412 */ );
SOURCE(14372, 21)
(* (W9Pt) (( (ptr) (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ))+2) ) = (* (W9Pt) (( (ptr) (* (( (ptr) &var←c49436)+6)
/* old←v8556 */ ))+2) );
SOURCE(14395, 40)
(void) FixupSelection←P1620((* (( (ptr) &var←c49436)+7)/* new←v8584 */ ), (* (( (ptr) &var←c49436)+5)/* viewer←v8528 */ ), 0, 1)
;
SOURCE(14437, 34)
(void) MarkSelection←P1320((* (( (ptr) &var←c49436)+4)/* dc←v8500 */ ), (* (( (ptr) &var←c49436)+5)/* viewer←v8528 */ ), (* (
( (ptr) &var←c49436)+7)/* new←v8584 */ ), (* (( (ptr) &var←c49436)+8)/* id←v8612 */ ));
SOURCE(14473, 20)
(* (W2Pt) (( (ptr) (* (( (ptr) &var←c49436)+6)/* old←v8556 */ ))+2) ) = save←v15012;
SOURCE(14495, 40)
(void) FixupSelection←P1620((* (( (ptr) &var←c49436)+6)/* old←v8556 */ ), (* (( (ptr) &var←c49436)+5)/* viewer←v8528 */ ), 1, 0)
;
};
};
};
};
};
};
SOURCE(14543, 28)
(void) Copy←P540((* (( (ptr) &var←c49436)+6)/* old←v8556 */ ), (* (( (ptr) &var←c49436)+7)/* new←v8584 */ ));
}
static void TooHard←P4368(formal←c49500)
word formal←c49500;
{
formal←c49500 = (formal←c49500 - 52);
/* TooHard: */
SOURCE(12211, 221)
SOURCE(12229, 34)
(void) MarkSelection←P1320((* (( (ptr) formal←c49500)+4) ), (* (( (ptr) formal←c49500)+5) ), (* (( (ptr) formal←c49500)+6)
), (* (( (ptr) formal←c49500)+8) ));
SOURCE(12281, 27)
(void) FixupSelection←P1620((* (( (ptr) formal←c49500)+7) ), (* (( (ptr) formal←c49500)+5) ), 1, 1);
SOURCE(12355, 34)
(void) MarkSelection←P1320((* (( (ptr) formal←c49500)+4) ), (* (( (ptr) formal←c49500)+5) ), (* (( (ptr) formal←c49500)+7)
), (* (( (ptr) formal←c49500)+8) ));
SOURCE(12404, 28)
(void) Copy←P540((* (( (ptr) formal←c49500)+7) ), (* (( (ptr) formal←c49500)+6) ));
}
static void BumpLoc←P4476(formal←c0243, loc←v14620, formal←c49564)
word formal←c0243;
W2 loc←v14620;
word formal←c49564;
{
register ptr gf←c49532 = (ptr) &globalframe;
W2 var←c14664;
word n←v14736;
word where←v14764;
formal←c49564 = (formal←c49564 - 44);
/* BumpLoc: */
SOURCE(12457, 15)
SOURCE(12510, 18)
n←v14736 = loc←v14620.f0;
SOURCE(12530, 24)
where←v14764 = (loc←v14620.f1 + 1);
SOURCE(12556, 70)
{
word pd138;
pd138 = (* (( (ptr) (* (( (ptr) gf←c49532)+192)/* var←c44604 */ ))+6) );
if (( (int)where←v14764 >= (int)(word) ( *( (fPt) ((* (ptr) pd138 ))))(n←v14736, pd138))) {
SOURCE(12590, 36)
{
W2 var←c44700;
{
W2 var←c44636;
{
word pd139;
pd139 = (* (( (ptr) (* (( (ptr) gf←c49532)+193)/* var←c44668 */ ))+14) );
var←c44636.f0 = (word) ( *( (fPt) ((* (ptr) pd139 ))))(n←v14736, pd139);
};
var←c44636.f1 = 0;
var←c44700 = var←c44636;
};
var←c14664 = var←c44700;
goto lab←L100021;
};
};
};
SOURCE(12628, 18)
var←c14664.f0 = n←v14736;
var←c14664.f1 = where←v14764;
/* removed tail goto */
lab←L100021: ;
(* (W2Pt) formal←c0243 ) = var←c14664;
return;
}
static void DecLoc←P4632(formal←c0249, loc←v14940, formal←c49628)
word formal←c0249;
W2 loc←v14940;
word formal←c49628;
{
register ptr gf←c49596 = (ptr) &globalframe;
W2 var←c14984;
word n←v15056 = 0;
formal←c49628 = (formal←c49628 - 36);
/* DecLoc: */
SOURCE(13615, 14)
SOURCE(13676, 54)
if (( (int)loc←v14940.f1 > (int)0)) {
SOURCE(13698, 32)
var←c14984.f0 = loc←v14940.f0;
var←c14984.f1 = (loc←v14940.f1 - 1);
goto lab←L100022;
};
SOURCE(13732, 35)
{
word pd140;
pd140 = (* (( (ptr) (* (( (ptr) gf←c49596)+193)/* var←c44668 */ ))+15) );
n←v15056 = (word) ( *( (fPt) ((* (ptr) pd140 ))))(loc←v14940.f0, 0, pd140);
};
SOURCE(13769, 40)
{
W2 var←c44828;
{
W2 var←c44796;
var←c44796.f0 = n←v15056;
{
word pd141;
word x142;
pd141 = (* (( (ptr) (* (( (ptr) gf←c49596)+192)/* var←c44604 */ ))+6) );
var←c44796.f1 = ((x142 = (word) ( *( (fPt) ((* (ptr) pd141 ))))(n←v15056, pd141),
MAX((int)(word), x142, 1)) - 1);
};
var←c44828 = var←c44796;
};
var←c14984 = var←c44828;
/* removed tail goto */
};
lab←L100022: ;
(* (W2Pt) formal←c0249 ) = var←c14984;
return;
}
static void ComputeSpanLines←P1440(formal←c0261, viewer←v8716, span←v8744)
word formal←c0261;
word viewer←v8716;
W4 span←v8744;
{
word start←v8788;
word end←v8816;
word startClipped←v8844;
word endClipped←v8872;
/* ComputeSpanLines: */
SOURCE(14612, 504)
SOURCE(14743, 58)
{
W2 var←c44860;
(void) ComputePosLine←P1500((word) &var←c44860, viewer←v8716, (* (W2Pt) &span←v8744 ), 0);
startClipped←v8844 = var←c44860.f1;
start←v8788 = var←c44860.f0;
};
if (XR←EqualWords(&span←v8744, (( (ptr) &span←v8744)+2), 2)) {
SOURCE(14845, 11)
end←v8816 = start←v8788;
SOURCE(14858, 26)
endClipped←v8872 = startClipped←v8844;
}
else {
if (( (int)start←v8788 == (int)2147483647)) {
SOURCE(14910, 19)
end←v8816 = 2147483647;
}
else {
SOURCE(14965, 153)
{
word firstLine←v15100;
SOURCE(14967, 84)
firstLine←v15100 = ( ( (int)start←v8788 <= (int)0) ? 0 : ( (0 != startClipped←v8844) ? (start←v8788 - 1) : start←v8788 ) ) ;
SOURCE(15053, 63)
{
W2 var←c44892;
(void) ComputePosLine←P1500((word) &var←c44892, viewer←v8716, (* (W2Pt) (( (ptr) &span←v8744)+2) ), firstLine←v15100);
endClipped←v8872 = var←c44892.f1;
end←v8816 = var←c44892.f0;
};
};
};
};
/* removed tail goto */
(* (ptr) formal←c0261 ) = start←v8788;
(* (( (ptr) formal←c0261)+1) ) = end←v8816;
(* (( (ptr) formal←c0261)+2) ) = startClipped←v8844;
(* (( (ptr) formal←c0261)+3) ) = endClipped←v8872;
return;
}
static void ComputePosLine←P1500(formal←c0269, viewer←v8932, pos←v8960, firstLine←v8988)
word formal←c0269;
word viewer←v8932;
W2 pos←v8960;
word firstLine←v8988;
{
word line←v9032;
word clipped←v9060;
W9 sp←v15144;
/* ComputePosLine: */
SOURCE(15125, 237)
SOURCE(15252, 80)
(void) ComputePosPoint←P1560((word) &sp←v15144, viewer←v8932, pos←v8960, firstLine←v8988, 1);
SOURCE(15334, 28)
line←v9032 = (* (( (ptr) &sp←v15144)+2) );
clipped←v9060 = (* (( (ptr) &sp←v15144)+7) );
/* removed tail goto */
(* (ptr) formal←c0269 ) = line←v9032;
(* (( (ptr) formal←c0269)+1) ) = clipped←v9060;
return;
}
static void ComputePosPoint←P1560(formal←c0295, viewer←v9120, pos←v9148, formal←c0789, lineOnly←v9204)
word formal←c0295;
word viewer←v9120;
W2 pos←v9148;
word formal←c0789;
word lineOnly←v9204;
{
W10 var←c49660;
/* declaration of firstLine←v9176 skipped */
register ptr gf←c49692 = (ptr) &globalframe;
W9 sp←v9248;
/* declaration of var←c44924 skipped */
/* declaration of var←c44956 skipped */
(* (( (ptr) &var←c49660)+4)/* firstLine←v9176 */ ) = formal←c0789;
/* ComputePosPoint: */
SOURCE(15368, 2703)
{
word tmpAddr143;
tmpAddr143 = (word) (( (ptr) &var←c49660)+5)/* var←c44924 */ ;
(* (ptr) tmpAddr143 ) = ( ((word) (fPt) FindPos←P4944) );
(* (( (ptr) tmpAddr143) + 1) ) = 1;
};
{
word tmpAddr144;
tmpAddr144 = (word) (( (ptr) &var←c49660)+7)/* var←c44956 */ ;
(* (ptr) tmpAddr144 ) = ( ((word) (fPt) IsPosPastLine←P4884) );
(* (( (ptr) tmpAddr144) + 1) ) = 1;
};
SOURCE(15368, 2703)
XR←FillWords(&sp←v9248, 9, 0);
SOURCE(15524, 2547)
{
word var←c44988;
var←c44988 = (* (( (ptr) viewer←v9120)+26) );
if ((var←c44988 == 0)) {
goto lab←L100026;
};
if (((* (( (ptr) gf←c49692)+48) ) == XR←GetReferentType(var←c44988))) {
{
word tdd←v15188;
tdd←v15188 = var←c44988;
SOURCE(15593, 2480)
{
word foundPos←v15232 = 0;
/* declaration of lines←v15316 skipped */
SOURCE(16171, 46)
(* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ) = (* (( (ptr) tdd←v15188)+1) );
SOURCE(16219, 12)
(* (W2Pt) &sp←v9248 ) = pos←v9148;
SOURCE(16233, 119)
{
word limit145;
if (((* (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+3))+(
limit145 = (* (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+2) ),
BCK(0, limit145)
)) ) == pos←v9148.f0)) {
SOURCE(16272, 80)
{
word limit146;
if (( (int)(* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+3))+(
/*1*/ limit146 = (* (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+2) ),
/*1*/ BCK(0, limit146)
/*1*/ )))+1) ) > (int)pos←v9148.f1)) {
SOURCE(16313, 31)
(* (( (ptr) &sp←v9248)+2) ) = 2147483649;
(* (( (ptr) &sp←v9248)+4) ) = 2147483649;
SOURCE(16346, 6)
goto lab←L100025;
};
};
};
};
SOURCE(16360, 147)
{
word tc147;
word idx148;
word limit149;
if (((* (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+3))+(
idx148 = (* (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ) ),
limit149 = (* (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+2) ),
BCK(idx148, limit149)
)) ) == pos←v9148.f0)) {
tc147 = (word) (0 != (word) IsPosPastLine←P4884(pos←v9148, (* (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ) ), (word) (
( (bPt) &var←c49660)+28)/* var←c44956 */ ));
}
else {
tc147 = (word) 0;
};
if (tc147) {
SOURCE(16448, 30)
(* (( (ptr) &sp←v9248)+2) ) = 2147483647;
(* (( (ptr) &sp←v9248)+4) ) = 2147483647;
SOURCE(16501, 6)
goto lab←L100025;
};
};
SOURCE(16512, 48)
{
word x150;
word x151;
word x152;
(* (( (ptr) &var←c49660)+4)/* firstLine←v9176 */ ) = (x150 = (* (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ) ),
x152 = (x151 = (* (( (ptr) &var←c49660)+4)/* firstLine←v9176 */ ),
MAX((int)(word), x151, 0)),
MIN((int)(word), x150, x152));
};
SOURCE(16562, 34)
{
W2 var←c45020;
(void) FindPos←P4944((word) &var←c45020, pos←v9148, (word) (( (bPt) &var←c49660)+20)/* var←c44924 */ );
(* (( (ptr) &sp←v9248)+2) ) = var←c45020.f1;
foundPos←v15232 = var←c45020.f0;
};
SOURCE(16598, 18)
(* (( (ptr) &sp←v9248)+7) ) = 0;
SOURCE(16618, 988)
if ((0 == foundPos←v15232)) {
SOURCE(16639, 967)
{
word var←c45052;
{
word pd153;
word limit154;
pd153 = (* (( (ptr) (* (( (ptr) gf←c49692)+191)/* var←c44540 */ ))+22) );
var←c45052 = (word) ( *( (fPt) ((* (ptr) pd153 ))))(pos←v9148.f0, (* (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) &var←c49660)+9)
/*1*/ /* lines←v15316 */ ))+3))+(
/*1*/ limit154 = (* (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+2) ),
/*1*/ BCK(0, limit154)
/*1*/ )) ), pd153);
};
switch (var←c45052) {
case 1: case 0:
SOURCE(16724, 31)
(* (( (ptr) &sp←v9248)+4) ) = 2147483649;
(* (( (ptr) &sp←v9248)+2) ) = 2147483649;
SOURCE(16757, 7)
goto lab←L100025;
case 3:
SOURCE(16799, 18)
(void) XR←RaiseError((word) (( (bPt) gf←c49692)+292)/* var←c41308 */ , 0);
break;
default:
SOURCE(16872, 734)
if ( ( ((* (( (ptr) tdd←v15188)+2) ) == 1023) ? ((* (( (ptr) tdd←v15188)+18) ) == 0) : 0 ) ) {
SOURCE(16958, 30)
/*1*/ (* (( (ptr) &sp←v9248)+4) ) = 2147483647;
/*1*/ (* (( (ptr) &sp←v9248)+2) ) = 2147483647;
SOURCE(16990, 8)
/*1*/ goto lab←L100025;
/*1*/ }
else {
SOURCE(17020, 586)
/*1*/ {
/*1*/ word var←c45084;
/*1*/ {
/*1*/ word pd155;
/*1*/ word idx156;
/*1*/ word limit157;
/*1*/ pd155 = (* (( (ptr) (* (( (ptr) gf←c49692)+191)/* var←c44540 */ ))+22) );
/*1*/ var←c45084 = (word) ( *( (fPt) ((* (ptr) pd155 ))))(pos←v9148.f0, (* (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) &var←c49660)+9)
/*1*/ /* lines←v15316 */ ))+3))+(
/*1*/ idx156 = (* (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ) ),
/*1*/ limit157 = (* (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+2) ),
/*1*/ BCK(idx156, limit157)
/*1*/ )) ), pd155);
/*1*/ };
/*1*/ switch (var←c45084) {
/*1*/ case 1: case 2:
SOURCE(17117, 30)
/*1*/ (* (( (ptr) &sp←v9248)+4) ) = 2147483647;
/*1*/ (* (( (ptr) &sp←v9248)+2) ) = 2147483647;
SOURCE(17149, 8)
/*1*/ goto lab←L100025;
/*1*/ case 3:
SOURCE(17172, 18)
/*1*/ (void) XR←RaiseError((word) (( (bPt) gf←c49692)+292)/* var←c41308 */ , 0);
/*1*/ break;
/*1*/ default:
SOURCE(17237, 371)
/*1*/ {
/*1*/ word n←v15624;
/*1*/ word delta←v15652;
/*1*/ W2 var←c0289;
SOURCE(17257, 18)
/*1*/ n←v15624 = pos←v9148.f0;
SOURCE(17277, 49)
/*1*/ {
/*1*/ word pd158;
/*1*/ pd158 = (* (( (ptr) (* (( (ptr) gf←c49692)+193)/* var←c44668 */ ))+16) );
/*1*/ delta←v15652 = ((word) ( *( (fPt) ((* (ptr) pd158 ))))(n←v15624, pd158) - (* (( (ptr) tdd←v15188)+2) ));
/*1*/ };
SOURCE(17328, 13)
/*1*/ (* (( (ptr) &var←c49660)+4)/* firstLine←v9176 */ ) = 0;
SOURCE(17397, 53)
/*1*/ {
/*1*/ register word i←v15696 = 0;
/*1*/ register word noName←c45116;
/*1*/ noName←c45116 = delta←v15652;
/*1*/ if (( (int)i←v15696 >= (int)noName←c45116)) {
/*1*/ goto lab←L100027;
/*1*/ };
/*1*/ lab←L100030: ;
SOURCE(17428, 22)
/*1*/ {
/*1*/ word pd159;
/*1*/ pd159 = (* (( (ptr) (* (( (ptr) gf←c49692)+193)/* var←c44668 */ ))+8) );
/*1*/ n←v15624 = (word) ( *( (fPt) ((* (ptr) pd159 ))))(n←v15624, pd159);
/*1*/ };
/*1*/ i←v15696 = (i←v15696 + 1);
/*1*/ if (( (int)i←v15696 < (int)noName←c45116)) {
/*1*/ goto lab←L100030;
/*1*/ };
/*1*/ lab←L100027: ;
/*1*/ };
SOURCE(17461, 47)
/*1*/ {
/*1*/ word pd160;
/*1*/ pd160 = (* (( (ptr) (* (( (ptr) gf←c49692)+193)/* var←c44668 */ ))+17) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd160 ))))((word) &var←c0289, n←v15624, (* (( (ptr) tdd←v15188)+2) ), 0, pd160);
/*1*/ };
/*1*/ n←v15624 = var←c0289.f0;
SOURCE(17510, 36)
/*1*/ {
/*1*/ W2 var←c45180;
/*1*/ {
/*1*/ W2 var←c0292;
/*1*/ {
/*1*/ W2 var←c45148;
/*1*/ var←c45148.f0 = n←v15624;
/*1*/ var←c45148.f1 = 0;
/*1*/ (void) FindPos←P4944((word) &var←c0292, var←c45148, (word) (( (bPt) &var←c49660)+20)/* var←c44924 */ );
/*1*/ };
/*1*/ var←c45180 = var←c0292;
/*1*/ };
/*1*/ (* (( (ptr) &sp←v9248)+2) ) = var←c45180.f1;
/*1*/ foundPos←v15232 = var←c45180.f0;
/*1*/ };
SOURCE(17548, 39)
/*1*/ if ((0 == foundPos←v15232)) {
SOURCE(17569, 18)
/*1*/ (void) XR←RaiseError((word) (( (bPt) gf←c49692)+292)/* var←c41308 */ , 0);
/*1*/ };
SOURCE(17589, 17)
/*1*/ (* (( (ptr) &sp←v9248)+7) ) = 1;
/*1*/ };
/*1*/ break;
/*1*/ };
/*1*/ };
/*1*/ };
break;
};
};
};
SOURCE(17617, 37)
if (((0 != lineOnly←v9204) || (0 != (* (( (ptr) &sp←v9248)+7) )))) {
SOURCE(17648, 6)
goto lab←L100025;
};
SOURCE(17686, 51)
{
word idx161;
word limit162;
word idx163;
word limit164;
(* (( (ptr) &sp←v9248)+4) ) = ((* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+3))+(
idx161 = (* (( (ptr) &sp←v9248)+2) ),
limit162 = (* (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+2) ),
BCK(idx161, limit162)
)))+6) ) - (* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+3))+(
idx163 = (* (( (ptr) &sp←v9248)+2) ),
limit164 = (* (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+2) ),
BCK(idx163, limit164)
)))+3) ));
};
SOURCE(17739, 79)
{
word idx165;
word limit166;
word idx167;
word limit168;
word x169;
word x170;
word idx171;
(* (( (ptr) &sp←v9248)+6) ) = (
idx171 = (word) ((* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+3))+(
/*1*/ idx165 = (* (( (ptr) &sp←v9248)+2) ),
/*1*/ limit166 = (* (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+2) ),
/*1*/ BCK(idx165, limit166)
/*1*/ )))+3) ) + (x169 = (* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+3))+(
/*1*/ idx167 = (* (( (ptr) &sp←v9248)+2) ),
/*1*/ limit168 = (* (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+2) ),
/*1*/ BCK(idx167, limit168)
/*1*/ )))+4) ),
x170 = (* (( (ptr) gf←c49692)+35)/* selectionDescentLimit←v5492 */ ),
MIN( (unsigned) , x169, x170))),
SGNCK(idx171)
);
};
SOURCE(17820, 83)
{
W2 var←c45244;
{
word pd172;
pd172 = (* (( (ptr) (* (( (ptr) gf←c49692)+194)/* var←c45212 */ ))+5) );
(void) ( *( (fPt) ((* (ptr) pd172 ))))((word) &var←c45244, viewer←v9120, (* (( (ptr) &sp←v9248)+2) ), pos←v9148, pd172);
};
(* (( (ptr) &sp←v9248)+5) ) = var←c45244.f1;
(* (( (ptr) &sp←v9248)+3) ) = var←c45244.f0;
};
SOURCE(17905, 138)
if (( (int)(* (( (ptr) &sp←v9248)+3) ) == (int)2147483647)) {
SOURCE(17936, 107)
if (( (int)(* (( (ptr) &sp←v9248)+2) ) == (int)(* (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ) ))) {
SOURCE(17968, 30)
(* (( (ptr) &sp←v9248)+4) ) = 2147483647;
(* (( (ptr) &sp←v9248)+2) ) = 2147483647;
}
else {
SOURCE(18006, 27)
{
word idx173;
word limit174;
(* (( (ptr) &sp←v9248)+3) ) = (* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+3))+(
/*1*/ idx173 = (* (( (ptr) &sp←v9248)+2) ),
/*1*/ limit174 = (* (( (ptr) (* (( (ptr) &var←c49660)+9)/* lines←v15316 */ ))+2) ),
/*1*/ BCK(idx173, limit174)
/*1*/ )))+8) );
};
SOURCE(18035, 8)
(* (( (ptr) &sp←v9248)+5) ) = 0;
};
};
SOURCE(18049, 22)
(* (( (ptr) &sp←v9248)+8) ) = 1;
};
};
}
else {
lab←L100026: ;
};
};
/* removed tail goto */
lab←L100025: ;
(* (W9Pt) formal←c0295 ) = sp←v9248;
return;
}
static word IsPosPastLine←P4884(pos←v15392, line←v15420, formal←c49724)
W2 pos←v15392;
word line←v15420;
word formal←c49724;
{
word var←c15464;
word next←v15740;
formal←c49724 = (formal←c49724 - 28);
/* IsPosPastLine: */
SOURCE(15619, 21)
SOURCE(15700, 47)
{
word limit175;
word limit176;
next←v15740 = ((* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) formal←c49724)+9) ))+3))+(
limit175 = (* (( (ptr) (* (( (ptr) formal←c49724)+9) ))+2) ),
BCK(line←v15420, limit175)
)))+1) ) + (* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) formal←c49724)+9) ))+3))+(
limit176 = (* (( (ptr) (* (( (ptr) formal←c49724)+9) ))+2) ),
BCK(line←v15420, limit176)
)))+5) ));
};
SOURCE(15749, 65)
{
word tc177;
word limit178;
if (( (int)pos←v15392.f1 >= (int)next←v15740)) {
tc177 = (word) (( (((unsigned)(* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) formal←c49724)+9) ))+3))+(
limit178 = (* (( (ptr) (* (( (ptr) formal←c49724)+9) ))+2) ),
BCK(line←v15420, limit178)
)))+2) ) << 1) >> 1) ) != 0);
}
else {
tc177 = (word) 0;
};
if (tc177) {
SOURCE(15801, 13)
return(1);
};
};
SOURCE(15840, 16)
return(0);
}
static void FindPos←P4944(formal←c0305, pos←v15524, formal←c49756)
word formal←c0305;
W2 pos←v15524;
word formal←c49756;
{
word found←v15568;
word line←v15596;
formal←c49756 = (formal←c49756 - 20);
/* FindPos: */
SOURCE(15859, 15)
SOURCE(15930, 13)
found←v15568 = 0;
SOURCE(15945, 188)
{
register word n←v15784;
register word noName←c45276;
n←v15784 = (* (( (ptr) formal←c49756)+4) );
noName←c45276 = (* (ptr) (* (( (ptr) formal←c49756)+9) ) );
if (( (int)n←v15784 > (int)noName←c45276)) {
goto lab←L100032;
};
lab←L100035: ;
{
word limit179;
if (((* (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) formal←c49756)+9) ))+3))+(
limit179 = (* (( (ptr) (* (( (ptr) formal←c49756)+9) ))+2) ),
BCK(n←v15784, limit179)
)) ) == pos←v15524.f0)) {
SOURCE(16043, 39)
{
word limit180;
if (( (int)pos←v15524.f1 < (int)(* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) formal←c49756)+9) ))+3))+(
limit180 = (* (( (ptr) (* (( (ptr) formal←c49756)+9) ))+2) ),
BCK(n←v15784, limit180)
)))+1) ))) {
SOURCE(16082, 4)
goto lab←L100033;
};
};
SOURCE(16109, 12)
found←v15568 = 1;
SOURCE(16123, 10)
line←v15596 = n←v15784;
}
else {
if ((0 != found←v15568)) {
SOURCE(16145, 4)
goto lab←L100033;
};
};
};
if (( (int)n←v15784 >= (int)noName←c45276)) {
goto lab←L100032;
};
n←v15784 = (n←v15784 + 1);
goto lab←L100035;
lab←L100032: ;
lab←L100033: ;
};
/* removed tail goto */
(* (ptr) formal←c0305 ) = found←v15568;
(* (( (ptr) formal←c0305)+1) ) = line←v15596;
return;
}
static void FixupSelection←P1620(selection←v9308, viewer←v9336, start←v9364, end←v9392)
word selection←v9308;
word viewer←v9336;
word start←v9364;
word end←v9392;
{
/* FixupSelection: */
SOURCE(18089, 624)
SOURCE(18185, 76)
if ((0 != start←v9364)) {
SOURCE(18199, 62)
(void) ComputePosPoint←P1560((word) (( (bPt) selection←v9308)+8), viewer←v9336, (* (W2Pt) (( (ptr) selection←v9308)+2) ), 0, 0)
;
};
SOURCE(18263, 450)
if ((0 != end←v9392)) {
if (XR←EqualWords((( (ptr) selection←v9308)+2), (( (ptr) selection←v9308)+11), 2)) {
SOURCE(18335, 31)
(* (W9Pt) (( (ptr) selection←v9308)+11) ) = (* (W9Pt) (( (ptr) selection←v9308)+2) );
}
else {
if (( (int)(* (( (ptr) selection←v9308)+4) ) == (int)2147483647)) {
SOURCE(18411, 34)
(* (( (ptr) selection←v9308)+13) ) = 2147483647;
SOURCE(18447, 33)
(* (( (ptr) selection←v9308)+19) ) = 1;
}
else {
SOURCE(18496, 219)
{
word firstLine←v15828;
SOURCE(18498, 144)
firstLine←v15828 = ( ( (int)(* (( (ptr) selection←v9308)+4) ) <= (int)0) ? 0 : ( (0 != (* (( (ptr) selection←v9308)+9)
)) ? ((* (( (ptr) selection←v9308)+4) ) - 1) : (* (( (ptr) selection←v9308)+4) ) ) ) ;
SOURCE(18644, 69)
(void) ComputePosPoint←P1560((word) (( (bPt) selection←v9308)+44), viewer←v9336, (* (W2Pt) (( (ptr) selection←v9308)+11)
), firstLine←v15828, 0);
};
};
};
};
}
static void FixupCaret←P1680(formal←c0790)
word formal←c0790;
{
W8 var←c49788;
/* declaration of selection←v9452 skipped */
register ptr gf←c49820 = (ptr) &globalframe;
/* declaration of var←c45308 skipped */
/* declaration of lines←v15872 skipped */
word node←v15900;
word size←v15928;
word var←c45372;
word var←c45404;
word var←c45436;
word index←v41260;
var←c49788.f4/* selection←v9452 */ = formal←c0790;
/* FixupCaret: */
SOURCE(18722, 1662)
{
word tmpAddr181;
tmpAddr181 = (word) (( (ptr) &var←c49788)+5)/* var←c45308 */ ;
(* (ptr) tmpAddr181 ) = ( ((word) (fPt) PutCaretOnNextLine←P5256) );
(* (( (ptr) tmpAddr181) + 1) ) = 1;
};
SOURCE(18773, 57)
var←c49788.f7/* lines←v15872 */ = (* (( (ptr) (* (( (ptr) var←c49788.f4/* selection←v9452 */ )+1) ))+1) );
SOURCE(18832, 35)
node←v15900 = (* (( (ptr) var←c49788.f4/* selection←v9452 */ )+11) );
SOURCE(18869, 31)
{
word pd182;
pd182 = (* (( (ptr) (* (( (ptr) gf←c49820)+192)/* var←c44604 */ ))+6) );
size←v15928 = (word) ( *( (fPt) ((* (ptr) pd182 ))))(node←v15900, pd182);
};
SOURCE(19598, 786)
if (((* (( (ptr) var←c49788.f4/* selection←v9452 */ )+24) ) == 0)) {
SOURCE(19635, 284)
if ((0 != (* (( (ptr) var←c49788.f4/* selection←v9452 */ )+9) ))) {
SOURCE(19667, 59)
(* (( (ptr) var←c49788.f4/* selection←v9452 */ )+21) ) = 2147483647;
}
else {
{
word var←c45340;
SOURCE(19728, 36)
(* (( (ptr) var←c49788.f4/* selection←v9452 */ )+20) ) = (* (( (ptr) var←c49788.f4/* selection←v9452 */ )+5) );
SOURCE(19766, 153)
var←c45340 = (* (( (ptr) var←c49788.f4/* selection←v9452 */ )+4) );
if ( ( ( (int)var←c45340 < (int)0) ? 1 : ( (int)var←c45340 > (int)(* (ptr) var←c49788.f7/* lines←v15872 */ )) ) ) {
(* (( (ptr) var←c49788.f4/* selection←v9452 */ )+21) ) = 2147483647;
}
else {
(* (( (ptr) var←c49788.f4/* selection←v9452 */ )+21) ) = (((* (( (ptr) (* (ptr) var←c49788.f4/* selection←v9452 */ ))+8)
) - (* (( (ptr) var←c49788.f4/* selection←v9452 */ )+6) )) - (* (( (ptr) var←c49788.f4/* selection←v9452 */ )+8) ));
};
};
};
}
else {
if ((0 != (* (( (ptr) var←c49788.f4/* selection←v9452 */ )+18) ))) {
SOURCE(19977, 32)
(* (( (ptr) var←c49788.f4/* selection←v9452 */ )+21) ) = 2147483647;
}
else {
{
word x183;
word tc184;
var←c45372 = (* (( (ptr) var←c49788.f4/* selection←v9452 */ )+12) );
if ( ( ( (int)var←c45372 >= (int)0) ? ( (int)var←c45372 < (int)size←v15928) : 0 ) ) {
var←c45404 = (* (( (ptr) var←c49788.f4/* selection←v9452 */ )+13) );
if (( (int)var←c45404 >= (int)0)) {
tc184 = (word) ( (int)var←c45404 <= (int)(* (ptr) var←c49788.f7/* lines←v15872 */ ));
}
else {
tc184 = (word) 0;
};
}
else {
tc184 = (word) 0;
};
if (tc184) {
index←v41260 = (* (( (ptr) var←c49788.f4/* selection←v9452 */ )+12) );
{
word char←v16176;
{
word pd185;
pd185 = (* (( (ptr) (* (( (ptr) gf←c49820)+192)/* var←c44604 */ ))+4) );
char←v16176 = (word) ( *( (fPt) ((* (ptr) pd185 ))))(node←v15900, index←v41260, pd185);
};
SOURCE(19017, 89)
if ((((word) char←v16176 >> 8) == 0)) {
SOURCE(19042, 64)
{
word var←c45468;
var←c45468 = BCK(char←v16176, 256);
if ((var←c45468 == 13) || (var←c45468 == 10)) {
SOURCE(19094, 12)
var←c45436 = 1;
goto lab←L100036;
};
};
};
SOURCE(19117, 13)
var←c45436 = 0;
};
lab←L100036: ;
x183 = (word) (0 != var←c45436);
}
else {
x183 = (word) 0;
};
if (x183) {
SOURCE(20143, 20)
(void) PutCaretOnNextLine←P5256((word) ((( (bPt) &var←c49788)+20)/* var←c45308 */ ));
}
else {
{
word var←c45500;
SOURCE(20181, 50)
(* (( (ptr) var←c49788.f4/* selection←v9452 */ )+20) ) = ((* (( (ptr) var←c49788.f4/* selection←v9452 */ )+14) ) + (* (( (ptr) var←c49788.f4/* selection←v9452 */ )+16)
));
SOURCE(20233, 151)
var←c45500 = (* (( (ptr) var←c49788.f4/* selection←v9452 */ )+13) );
if ( ( ( (int)var←c45500 < (int)0) ? 1 : ( (int)var←c45500 > (int)(* (ptr) var←c49788.f7/* lines←v15872 */ )) ) ) {
(* (( (ptr) var←c49788.f4/* selection←v9452 */ )+21) ) = 2147483647;
}
else {
(* (( (ptr) var←c49788.f4/* selection←v9452 */ )+21) ) = (((* (( (ptr) (* (ptr) var←c49788.f4/* selection←v9452 */ ))+8)
) - (* (( (ptr) var←c49788.f4/* selection←v9452 */ )+15) )) - (* (( (ptr) var←c49788.f4/* selection←v9452 */ )+17) ));
};
};
};
};
};
};
}
static void PutCaretOnNextLine←P5256(formal←c49852)
word formal←c49852;
{
formal←c49852 = (formal←c49852 - 20);
/* PutCaretOnNextLine: */
SOURCE(19135, 437)
SOURCE(19164, 408)
{
word var←c45532;
var←c45532 = (* (( (ptr) (* (( (ptr) formal←c49852)+4) ))+13) );
if ( ( ( (int)var←c45532 >= (int)0) ? ( (int)var←c45532 < (int)(* (ptr) (* (( (ptr) formal←c49852)+7) ) )) : 0 ) ) {
SOURCE(19221, 180)
{
word nextLine←v16204;
SOURCE(19223, 40)
nextLine←v16204 = ((* (( (ptr) (* (( (ptr) formal←c49852)+4) ))+13) ) + 1);
SOURCE(19265, 42)
{
word limit186;
(* (( (ptr) (* (( (ptr) formal←c49852)+4) ))+20) ) = (* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) formal←c49852)+7) ))+3))+(
limit186 = (* (( (ptr) (* (( (ptr) formal←c49852)+7) ))+2) ),
BCK(nextLine←v16204, limit186)
)))+7) );
};
SOURCE(19309, 90)
{
word limit187;
word limit188;
(* (( (ptr) (* (( (ptr) formal←c49852)+4) ))+21) ) = (((* (( (ptr) (* (ptr) (* (( (ptr) formal←c49852)+4) ) ))+8) ) - (* (
( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) formal←c49852)+7) ))+3))+(
limit187 = (* (( (ptr) (* (( (ptr) formal←c49852)+7) ))+2) ),
BCK(nextLine←v16204, limit187)
)))+6) )) - (* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) formal←c49852)+7) ))+3))+(
limit188 = (* (( (ptr) (* (( (ptr) formal←c49852)+7) ))+2) ),
BCK(nextLine←v16204, limit188)
)))+4) ));
};
};
}
else {
if (( (int)var←c45532 == (int)(* (ptr) (* (( (ptr) formal←c49852)+7) ) ))) {
SOURCE(19426, 52)
{
word idx189;
word limit190;
(* (( (ptr) (* (( (ptr) formal←c49852)+4) ))+20) ) = (* (( (ptr) (( (W9Pt) (( (ptr) (* (( (ptr) formal←c49852)+7) ))+3))+(
idx189 = (* (( (ptr) (* (( (ptr) formal←c49852)+4) ))+13) ),
limit190 = (* (( (ptr) (* (( (ptr) formal←c49852)+7) ))+2) ),
BCK(idx189, limit190)
)))+7) );
};
SOURCE(19480, 92)
(* (( (ptr) (* (( (ptr) formal←c49852)+4) ))+21) ) = ((((* (( (ptr) (* (ptr) (* (( (ptr) formal←c49852)+4) ) ))+8) ) - (* (
( (ptr) (* (( (ptr) formal←c49852)+4) ))+15) )) - (* (( (ptr) (* (( (ptr) formal←c49852)+4) ))+17) )) - (* (( (ptr) (* (( (ptr) formal←c49852)+4)
))+17) ));
}
else {
SOURCE(19588, 5)
(void) XR←RaiseUnnamedError();
};
};
};
}
static void KillSelection←P1740()
{
register ptr gf←c49884 = (ptr) &globalframe;
/* KillSelection: */
SOURCE(20396, 96)
SOURCE(20427, 65)
{
word pd191;
pd191 = (* (( (ptr) (* (( (ptr) gf←c49884)+187)/* var←c43932 */ ))+4) );
if (((word) ( *( (fPt) ((* (ptr) pd191 ))))(pd191) != 0)) {
SOURCE(20466, 26)
{
word pd192;
pd192 = (* (( (ptr) (* (( (ptr) gf←c49884)+187)/* var←c43932 */ ))+5) );
(void) ( *( (fPt) ((* (ptr) pd192 ))))(0, 0, pd192);
};
};
};
}
static void ModifyPSel←P1800(formal←c0791)
word formal←c0791;
{
W7 var←c49916;
/* declaration of proc←v9528 skipped */
register ptr gf←c49948 = (ptr) &globalframe;
/* declaration of var←c45564 skipped */
var←c49916.f4/* proc←v9528 */ = formal←c0791;
/* ModifyPSel: */
SOURCE(20498, 338)
{
word tmpAddr193;
tmpAddr193 = (word) (( (ptr) &var←c49916)+5)/* var←c45564 */ ;
(* (ptr) tmpAddr193 ) = ( ((word) (fPt) inner←P5364) );
(* (( (ptr) tmpAddr193) + 1) ) = 1;
};
SOURCE(20782, 54)
(void) WithLockedSelection←P2160(0, (word) (( (bPt) &var←c49916)+20)/* var←c45564 */ , (* (( (ptr) gf←c49948)+62) ));
}
static void inner←P5364(formal←c50044)
word formal←c50044;
{
W6 var←c49980;
register ptr gf←c50012 = (ptr) &globalframe;
/* declaration of root←v16308 skipped */
formal←c50044 = (formal←c50044 - 20);
var←c49980.f0 = formal←c50044;
/* inner: */
SOURCE(20569, 205)
SOURCE(20585, 32)
var←c49980.f4/* root←v16308 */ = (word) SelectionRoot←P2220((* ((( (ptr) gf←c50012)+17)/* pSel←v4456 */ ) ));
SOURCE(20619, 155)
if ((var←c49980.f4/* root←v16308 */ != 0)) {
SOURCE(20636, 140)
{
/* declaration of tSel←v16352 skipped */
SOURCE(20638, 25)
var←c49980.f5/* tSel←v16352 */ = (word) Alloc←P420();
SOURCE(20665, 30)
(void) Copy←P540((* (( (ptr) gf←c50012)+17)/* pSel←v4456 */ ), var←c49980.f5/* tSel←v16352 */ );
SOURCE(20697, 39)
{
word var←c0693;
var←c0693 = (word) &var←c49980;
(void) (word) XR←Enable(( ((word) (fPt) NoName←Q7560) ), ( ((word) (fPt) NoName←Q8100) ), var←c0693);
};
SOURCE(20738, 24)
(void) MakeSelection←P1200(var←c49980.f5/* tSel←v16352 */ , 0, 0, 0, 1);
SOURCE(20764, 10)
(void) Free←P480(var←c49980.f5/* tSel←v16352 */ );
};
};
}
static word NoName←Q7560(formal←c0642)
word formal←c0642;
{
SOURCE(20697, 39)
{
word pd194;
pd194 = (* (( (ptr) (* (ptr) formal←c0642 ))+4) );
(void) ( *( (fPt) ((* (ptr) pd194 ))))((* (( (ptr) formal←c0642)+4) ), (* (( (ptr) formal←c0642)+5) ), pd194);
};
return(0);
}
static void SelectEverything←P1860()
{
W6 var←c50076;
/* declaration of var←c45596 skipped */
/* SelectEverything: */
SOURCE(20842, 345)
{
word tmpAddr195;
tmpAddr195 = (word) (( (ptr) &var←c50076)+4)/* var←c45596 */ ;
(* (ptr) tmpAddr195 ) = ( ((word) (fPt) DoSelEverything←P5472) );
(* (( (ptr) tmpAddr195) + 1) ) = 1;
};
SOURCE(21158, 29)
(void) ModifyPSel←P1800((word) ((( (bPt) &var←c50076)+16)/* var←c45596 */ ));
}
static void DoSelEverything←P5472(root←v16472, tSel←v16500, formal←c50140)
word root←v16472;
word tSel←v16500;
word formal←c50140;
{
register ptr gf←c50108 = (ptr) &globalframe;
formal←c50140 = (formal←c50140 - 16);
/* DoSelEverything: */
SOURCE(20876, 277)
SOURCE(20932, 41)
{
word pd196;
pd196 = (* (( (ptr) (* (( (ptr) gf←c50108)+193)/* var←c44668 */ ))+9) );
root←v16472 = (word) ( *( (fPt) ((* (ptr) pd196 ))))((* ((( (ptr) tSel←v16500)+2)) ), pd196);
};
SOURCE(20975, 47)
{
word var←c45628;
{
word pd197;
pd197 = (* (( (ptr) (* (( (ptr) gf←c50108)+193)/* var←c44668 */ ))+28) );
var←c45628 = (word) ( *( (fPt) ((* (ptr) pd197 ))))(root←v16472, pd197);
};
(* (( (ptr) tSel←v16500)+2) ) = var←c45628;
(* (( (ptr) tSel←v16500)+3) ) = 0;
};
SOURCE(21024, 45)
{
word pd198;
pd198 = (* (( (ptr) (* (( (ptr) gf←c50108)+193)/* var←c44668 */ ))+26) );
(* (( (ptr) tSel←v16500)+11) ) = (word) ( *( (fPt) ((* (ptr) pd198 ))))(root←v16472, pd198);
};
SOURCE(21071, 55)
{
word var←c45660;
{
word pd199;
pd199 = (* (( (ptr) (* (( (ptr) gf←c50108)+192)/* var←c44604 */ ))+6) );
var←c45660 = ((word) ( *( (fPt) ((* (ptr) pd199 ))))((* ((( (ptr) tSel←v16500)+11)) ), pd199) - 1);
};
(* (( (ptr) tSel←v16500)+12) ) = var←c45660;
};
SOURCE(21128, 25)
(* (( (ptr) tSel←v16500)+22) ) = 4;
}
static void PendingDeleteSelection←P1920()
{
W6 var←c50172;
/* declaration of var←c45692 skipped */
/* PendingDeleteSelection: */
SOURCE(21191, 136)
{
word tmpAddr200;
tmpAddr200 = (word) (( (ptr) &var←c50172)+4)/* var←c45692 */ ;
(* (ptr) tmpAddr200 ) = ( ((word) (fPt) DoPDel←P5532) );
(* (( (ptr) tmpAddr200) + 1) ) = 1;
};
SOURCE(21307, 20)
(void) ModifyPSel←P1800((word) ((( (bPt) &var←c50172)+16)/* var←c45692 */ ));
}
static void DoPDel←P5532(root←v16604, tSel←v16632, formal←c50204)
word root←v16604;
word tSel←v16632;
word formal←c50204;
{
formal←c50204 = (formal←c50204 - 16);
/* DoPDel: */
SOURCE(21231, 73)
SOURCE(21278, 26)
(* (( (ptr) tSel←v16632)+26) ) = 1;
}
static void NotPendingDeleteSelection←P1980()
{
W6 var←c50236;
/* declaration of var←c45724 skipped */
/* NotPendingDeleteSelection: */
SOURCE(21331, 147)
{
word tmpAddr201;
tmpAddr201 = (word) (( (ptr) &var←c50236)+4)/* var←c45724 */ ;
(* (ptr) tmpAddr201 ) = ( ((word) (fPt) DoNotPDel←P5592) );
(* (( (ptr) tmpAddr201) + 1) ) = 1;
};
SOURCE(21455, 23)
(void) ModifyPSel←P1800((word) ((( (bPt) &var←c50236)+16)/* var←c45724 */ ));
}
static void DoNotPDel←P5592(root←v16736, tSel←v16764, formal←c50268)
word root←v16736;
word tSel←v16764;
word formal←c50268;
{
formal←c50268 = (formal←c50268 - 16);
/* DoNotPDel: */
SOURCE(21374, 78)
SOURCE(21424, 28)
(* (( (ptr) tSel←v16764)+26) ) = 0;
}
static void CaretBeforeSelection←P2040()
{
W6 var←c50300;
/* declaration of var←c45756 skipped */
/* CaretBeforeSelection: */
SOURCE(21482, 163)
{
word tmpAddr202;
tmpAddr202 = (word) (( (ptr) &var←c50300)+4)/* var←c45756 */ ;
(* (ptr) tmpAddr202 ) = ( ((word) (fPt) DoCaretBeforeSelection←P5652) );
(* (( (ptr) tmpAddr202) + 1) ) = 1;
};
SOURCE(21609, 36)
(void) ModifyPSel←P1800((word) ((( (bPt) &var←c50300)+16)/* var←c45756 */ ));
}
static void DoCaretBeforeSelection←P5652(root←v16868, tSel←v16896, formal←c50332)
word root←v16868;
word tSel←v16896;
word formal←c50332;
{
formal←c50332 = (formal←c50332 - 16);
/* DoCaretBeforeSelection: */
SOURCE(21520, 86)
SOURCE(21582, 24)
(* (( (ptr) tSel←v16896)+24) ) = 0;
}
static void CaretAfterSelection←P2100()
{
W6 var←c50364;
/* declaration of var←c45788 skipped */
/* CaretAfterSelection: */
SOURCE(21649, 193)
{
word tmpAddr203;
tmpAddr203 = (word) (( (ptr) &var←c50364)+4)/* var←c45788 */ ;
(* (ptr) tmpAddr203 ) = ( ((word) (fPt) DoCaretAfterSelection←P5712) );
(* (( (ptr) tmpAddr203) + 1) ) = 1;
};
SOURCE(21807, 35)
(void) ModifyPSel←P1800((word) ((( (bPt) &var←c50364)+16)/* var←c45788 */ ));
}
static void DoCaretAfterSelection←P5712(root←v17000, tSel←v17028, formal←c50396)
word root←v17000;
word tSel←v17028;
word formal←c50396;
{
formal←c50396 = (formal←c50396 - 16);
/* DoCaretAfterSelection: */
SOURCE(21686, 118)
SOURCE(21748, 56)
if (((* (( (ptr) tSel←v17028)+22) ) != 0)) {
SOURCE(21781, 23)
(* (( (ptr) tSel←v17028)+24) ) = 1;
};
}
static void WithLockedSelection←P2160(formal←c0792, formal←c0793, why←v9812)
word formal←c0792;
word formal←c0793;
word why←v9812;
{
W6 var←c50428;
/* declaration of which←v9756 skipped */
/* declaration of inner←v9784 skipped */
var←c50428.f4/* which←v9756 */ = formal←c0792;
var←c50428.f5/* inner←v9784 */ = formal←c0793;
/* WithLockedSelection: */
SOURCE(21847, 150)
SOURCE(21922, 19)
(void) LockSel←P240(var←c50428.f4/* which←v9756 */ , why←v9812);
SOURCE(21943, 36)
{
word var←c0694;
var←c0694 = (word) &var←c50428;
(void) (word) XR←Enable(( ((word) (fPt) NoName←Q7620) ), ( ((word) (fPt) NoName←Q8040) ), var←c0694);
};
SOURCE(21981, 16)
(void) UnlockSel←P300(var←c50428.f4/* which←v9756 */ );
}
static word NoName←Q7620(formal←c0649)
word formal←c0649;
{
SOURCE(21943, 36)
{
word pd204;
pd204 = (* (( (ptr) formal←c0649)+5) );
(void) ( *( (fPt) ((* (ptr) pd204 ))))(pd204);
};
return(0);
}
static word SelectionRoot←P2220(s←v9888)
word s←v9888;
{
register ptr gf←c50460 = (ptr) &globalframe;
word root←v9932;
/* SelectionRoot: */
SOURCE(22003, 250)
SOURCE(22003, 250)
root←v9932 = 0;
SOURCE(22077, 61)
if (((* (ptr) s←v9888 ) == 0)) {
SOURCE(22098, 40)
{
word pd205;
pd205 = (* (( (ptr) (* (( (ptr) gf←c50460)+193)/* var←c44668 */ ))+9) );
return((word) ( *( (fPt) ((* (ptr) pd205 ))))((* ((( (ptr) s←v9888)+2)) ), pd205));
};
};
SOURCE(22140, 113)
{
word var←c45852;
var←c45852 = (* (( (ptr) (* (ptr) s←v9888 ))+26) );
if ((var←c45852 == 0)) {
goto lab←L100041;
};
if (((* (( (ptr) gf←c50460)+48) ) == XR←GetReferentType(var←c45852))) {
{
word tdd←v17056;
tdd←v17056 = var←c45852;
SOURCE(22211, 17)
return((* (ptr) tdd←v17056 ));
};
}
else {
lab←L100041: ;
SOURCE(22241, 12)
return(0);
};
};
}
static void InputModify←P2280(self←v27052, change←v27080)
word self←v27052;
word change←v27080;
{
W7 var←c50492;
register ptr gf←c50524 = (ptr) &globalframe;
/* declaration of var←c45884 skipped */
/* InputModify: */
SOURCE(22259, 551)
{
word tmpAddr206;
tmpAddr206 = (word) (( (ptr) &var←c50492)+4)/* var←c45884 */ ;
(* (ptr) tmpAddr206 ) = ( ((word) (fPt) inner←P5916) );
(* (( (ptr) tmpAddr206) + 1) ) = 1;
};
SOURCE(22308, 502)
{
word var←c45916;
var←c45916 = (* (( (ptr) self←v27052)+26) );
if ((var←c45916 == 0)) {
goto lab←L100042;
};
if (((* (( (ptr) gf←c50524)+48) ) == XR←GetReferentType(var←c45916))) {
{
word tdd←v17100;
tdd←v17100 = var←c45916;
SOURCE(22377, 433)
{
word var←c45948;
var←c45948 = change←v27080;
switch (var←c45948) {
case 0: case 2:
SOURCE(22408, 58)
{
word pd207;
pd207 = (* (( (ptr) (* (( (ptr) gf←c50524)+195)/* var←c45980 */ ))+4) );
(void) ( *( (fPt) ((* (ptr) pd207 ))))(self←v27052, (* (( (ptr) (* (( (ptr) gf←c50524)+17)/* pSel←v4456 */ ))+20) ), (* (
/*1*/ ( (ptr) (* (( (ptr) gf←c50524)+17)/* pSel←v4456 */ ))+21) ), 0, pd207);
};
break;
case 3:
SOURCE(22476, 298)
{
/* declaration of prop←v17172 skipped */
SOURCE(22545, 70)
{
word pd208;
pd208 = (* (( (ptr) (* (( (ptr) gf←c50524)+186)/* var←c43836 */ ))+29) );
var←c50492.f6/* prop←v17172 */ = XR←Narrow((word) ( *( (fPt) ((* (ptr) pd208 ))))(self←v27052, (* (( (ptr) gf←c50524)+63)
/*1*/ ), pd208), (* (( (ptr) gf←c50524)+41) ));
};
SOURCE(22617, 25)
{
word pd209;
pd209 = (* (( (ptr) (* (( (ptr) gf←c50524)+195)/* var←c45980 */ ))+5) );
(void) ( *( (fPt) ((* (ptr) pd209 ))))(0, pd209);
};
SOURCE(22644, 76)
if ((var←c50492.f6/* prop←v17172 */ == 0)) {
SOURCE(22661, 59)
{
/*1*/ word var←c46012;
/*1*/ {
/*1*/ word var←c46044;
/*1*/ var←c46044 = (word) Create←P360();
/*1*/ var←c50492.f6/* prop←v17172 */ = var←c46044;
/*1*/ var←c46012 = var←c46044;
/*1*/ };
/*1*/ {
/*1*/ word pd210;
/*1*/ pd210 = (* (( (ptr) (* (( (ptr) gf←c50524)+186)/* var←c43836 */ ))+28) );
/*1*/ (void) ( *( (fPt) ((* (ptr) pd210 ))))(self←v27052, (* (( (ptr) gf←c50524)+63) ), var←c46012, pd210);
/*1*/ };
/*1*/ };
};
SOURCE(22722, 50)
(void) WithLockedSelection←P2160(0, (word) (( (bPt) &var←c50492)+16)/* var←c45884 */ , (* (( (ptr) gf←c50524)+64) ));
};
break;
case 1:
SOURCE(22785, 25)
{
word pd211;
pd211 = (* (( (ptr) (* (( (ptr) gf←c50524)+195)/* var←c45980 */ ))+5) );
(void) ( *( (fPt) ((* (ptr) pd211 ))))(0, pd211);
};
break;
default:
SOURCE(22823, 5)
(void) XR←RaiseUnnamedError();
break;
};
};
};
}
else {
lab←L100042: ;
};
};
}
static void inner←P5916(formal←c50588)
word formal←c50588;
{
register ptr gf←c50556 = (ptr) &globalframe;
formal←c50588 = (formal←c50588 - 16);
/* inner: */
SOURCE(22478, 14)
SOURCE(22493, 30)
(void) Copy←P540((* (( (ptr) gf←c50556)+17)/* pSel←v4456 */ ), (* (( (ptr) formal←c50588)+6) ));
SOURCE(22525, 17)
(void) Deselect←P1140(0);
}
static void CallWithSelAndDocAndTddLocks←P2340(viewer←v9992, formal←c0794, formal←c0795)
word viewer←v9992;
word formal←c0794;
word formal←c0795;
{
W11 var←c50620;
/* declaration of id←v10020 skipped */
/* declaration of proc←v10048 skipped */
register ptr gf←c50652 = (ptr) &globalframe;
/* declaration of var←c46076 skipped */
(* (( (ptr) &var←c50620)+4)/* id←v10020 */ ) = formal←c0794;
(* (( (ptr) &var←c50620)+5)/* proc←v10048 */ ) = formal←c0795;
/* CallWithSelAndDocAndTddLocks: */
SOURCE(22846, 805)
{
word tmpAddr212;
tmpAddr212 = (word) (( (ptr) &var←c50620)+6)/* var←c46076 */ ;
(* (ptr) tmpAddr212 ) = ( ((word) (fPt) Cleanup←P6072) );
(* (( (ptr) tmpAddr212) + 1) ) = 1;
};
SOURCE(23005, 646)
if ((viewer←v9992 != 0)) {
SOURCE(23026, 625)
{
word var←c46108;
var←c46108 = (* (( (ptr) viewer←v9992)+26) );
if ((var←c46108 == 0)) {
goto lab←L100043;
};
if (((* (( (ptr) gf←c50652)+48) ) == XR←GetReferentType(var←c46108))) {
{
/* declaration of tdd←v17232 skipped */
(* (( (ptr) &var←c50620)+8)/* tdd←v17232 */ ) = var←c46108;
SOURCE(23095, 561)
{
/* declaration of tSel←v17276 skipped */
/* declaration of lockRef←v17304 skipped */
SOURCE(23097, 21)
(* (( (ptr) &var←c50620)+9)/* tSel←v17276 */ ) = 0;
SOURCE(23120, 33)
(* (( (ptr) &var←c50620)+10)/* lockRef←v17304 */ ) = 0;
SOURCE(23277, 374)
if (((* (( (ptr) &var←c50620)+8)/* tdd←v17232 */ ) != 0)) {
SOURCE(23297, 354)
{
word var←c0695;
var←c0695 = (word) &var←c50620;
(void) (word) XR←Enable(( ((word) (fPt) NoName←Q7680) ), ( ((word) (fPt) NoName←Q7980) ), var←c0695);
};
};
};
};
}
else {
lab←L100043: ;
};
};
};
}
static word NoName←Q7680(formal←c0656)
word formal←c0656;
{
register ptr gf←c0655 = (ptr) &globalframe;
SOURCE(23325, 43)
(void) LockSel←P240((* (( (ptr) formal←c0656)+4) ), (* (( (ptr) gf←c0655)+65) ));
SOURCE(23370, 77)
{
word pd213;
pd213 = (* (( (ptr) (* (( (ptr) gf←c0655)+183)/* var←c43388 */ ))+8) );
(* (( (ptr) formal←c0656)+10) ) = (word) ( *( (fPt) ((* (ptr) pd213 ))))((* (( (ptr) formal←c0656)+8) ), (* (( (ptr) gf←c0655)+65)
), 0, 0, 0, pd213);
};
SOURCE(23449, 190)
if (((* (( (ptr) formal←c0656)+10) ) != 0)) {
SOURCE(23469, 170)
{
word sel←v17392;
SOURCE(23471, 102)
{
word var←c46140;
var←c46140 = (* (( (ptr) formal←c0656)+4) );
switch (var←c46140) {
case 0:
sel←v17392 = (* (( (ptr) gf←c0655)+17)/* pSel←v4456 */ );
break;
case 1:
sel←v17392 = (* (( (ptr) gf←c0655)+18)/* sSel←v4484 */ );
break;
case 2:
sel←v17392 = (* (( (ptr) gf←c0655)+19)/* fSel←v4512 */ );
break;
default:
sel←v17392 = (
XR←RaiseUnnamedError(), 0
);
break;
};
};
SOURCE(23575, 14)
(* (( (ptr) formal←c0656)+9) ) = (word) Alloc←P420();
SOURCE(23591, 29)
(void) Copy←P540(sel←v17392, (* (( (ptr) formal←c0656)+9) ));
SOURCE(23622, 17)
{
word pd214;
pd214 = (* (( (ptr) formal←c0656)+5) );
(void) ( *( (fPt) ((* (ptr) pd214 ))))((* (( (ptr) formal←c0656)+8) ), (* (( (ptr) formal←c0656)+9) ), pd214);
};
};
};
SOURCE(23642, 9)
(void) Cleanup←P6072((word) ((( (bPt) formal←c0656)+24)));
return(0);
}
static void Cleanup←P6072(formal←c50716)
word formal←c50716;
{
register ptr gf←c50684 = (ptr) &globalframe;
formal←c50716 = (formal←c50716 - 24);
/* Cleanup: */
SOURCE(23155, 16)
SOURCE(23173, 13)
(void) UnlockSel←P300((* ((( (ptr) formal←c50716)+4)) ));
SOURCE(23188, 53)
if (((* (( (ptr) formal←c50716)+10) ) != 0)) {
SOURCE(23210, 31)
{
word pd215;
pd215 = (* (( (ptr) (* (( (ptr) gf←c50684)+183)/* var←c43388 */ ))+9) );
(void) ( *( (fPt) ((* (ptr) pd215 ))))((* ((( (ptr) formal←c50716)+8)) ), pd215);
};
};
SOURCE(23243, 31)
if (((* (( (ptr) formal←c50716)+9) ) != 0)) {
SOURCE(23262, 12)
(void) Free←P480((* ((( (ptr) formal←c50716)+9)) ));
};
}
static void ShowPosition←P2400(viewer←v10196, skipCommentNodes←v10224)
word viewer←v10196;
word skipCommentNodes←v10224;
{
W7 var←c50748;
register ptr gf←c50780 = (ptr) &globalframe;
/* ShowPosition: */
SOURCE(23672, 706)
SOURCE(23748, 630)
SOURCE(23750, 24)
{
word countI←v17436 = (word) -1;
word countF←v17464 = (word) -1;
word sel←v17492;
word selLen←v17520;
word sepStart←v17548;
SOURCE(23776, 37)
{
word pd216;
pd216 = (* (( (ptr) (* (( (ptr) gf←c50780)+196)/* var←c46172 */ ))+4) );
sel←v17492 = (word) ( *( (fPt) ((* (ptr) pd216 ))))(pd216);
};
SOURCE(23815, 28)
{
word pd217;
pd217 = (* (( (ptr) (* (( (ptr) gf←c50780)+197)/* var←c46204 */ ))+15) );
selLen←v17520 = (word) ( *( (fPt) ((* (ptr) pd217 ))))(sel←v17492, pd217);
};
SOURCE(23845, 45)
{
word pd218;
pd218 = (* (( (ptr) (* (( (ptr) gf←c50780)+197)/* var←c46204 */ ))+10) );
sepStart←v17548 = (word) ( *( (fPt) ((* (ptr) pd218 ))))(sel←v17492, 0, (* (( (ptr) gf←c50780)+66) ), 1, pd218);
};
SOURCE(23893, 74)
{
/* declaration of var←c46236 skipped */
{
word pd219;
pd219 = (* (( (ptr) (* (( (ptr) gf←c50780)+197)/* var←c46204 */ ))+17) );
var←c50748.f4/* var←c46236 */ = (word) ( *( (fPt) ((* (ptr) pd219 ))))(sel←v17492, 0, sepStart←v17548, pd219);
};
{
/* declaration of var←c05 skipped */
var←c50748.f5/* var←c05 */ = (* (( (ptr) (* (( (ptr) gf←c50780)+198)/* var←c46268 */ ))+10) );
{
/* declaration of var←c06 skipped */
{
word var←c07;
{
word var←c0696;
var←c0696 = (word) &var←c50748;
var←c07 = (word) XR←Enable(( ((word) (fPt) NoName←Q7800) ), ( ((word) (fPt) NoName←Q7920) ), var←c0696);
};
if ((var←c07 == 2)) {
goto lab←L100046;
};
};
countI←v17436 = var←c50748.f6/* var←c06 */ ;
};
};
};
SOURCE(23980, 19)
if (( (int)countI←v17436 < (int)0)) {
SOURCE(23999, 10)
goto lab←L100046;
};
SOURCE(24011, 133)
if (( (int)sepStart←v17548 < (int)selLen←v17520)) {
SOURCE(24037, 71)
{
/* declaration of var←c46300 skipped */
{
word pd220;
pd220 = (* (( (ptr) (* (( (ptr) gf←c50780)+197)/* var←c46204 */ ))+17) );
var←c50748.f4/* var←c46300 */ = (word) ( *( (fPt) ((* (ptr) pd220 ))))(sel←v17492, (sepStart←v17548 + 2), 2147483647, pd220)
;
};
{
/* declaration of var←c08 skipped */
var←c50748.f5/* var←c08 */ = (* (( (ptr) (* (( (ptr) gf←c50780)+198)/* var←c46268 */ ))+10) );
{
/* declaration of var←c09 skipped */
{
word var←c010;
{
word var←c0697;
var←c0697 = (word) &var←c50748;
var←c010 = (word) XR←Enable(( ((word) (fPt) NoName←Q7740) ), ( ((word) (fPt) NoName←Q7860) ), var←c0697);
};
if ((var←c010 == 2)) {
goto lab←L100046;
};
};
countF←v17464 = var←c50748.f6/* var←c09 */ ;
};
};
};
}
else {
SOURCE(24125, 19)
countF←v17464 = (countI←v17436 + 3);
};
SOURCE(24146, 19)
if (( (int)countF←v17464 < (int)0)) {
SOURCE(24165, 10)
goto lab←L100046;
};
SOURCE(24177, 81)
(void) ShowGivenPositionRange←P2700(viewer←v10196, 2, countI←v17436, countF←v17464, skipCommentNodes←v10224, 0);
};
goto lab←L100051;
lab←L100046: ;
SOURCE(24275, 100)
SOURCE(24296, 68)
{
word pd221;
pd221 = (* (( (ptr) (* (( (ptr) gf←c50780)+199)/* var←c46332 */ ))+5) );
(void) ( *( (fPt) ((* (ptr) pd221 ))))((* (( (ptr) gf←c50780)+67) ), 1, pd221);
};
SOURCE(24366, 7)
{
word pd222;
pd222 = (* (( (ptr) (* (( (ptr) gf←c50780)+199)/* var←c46332 */ ))+6) );
(void) ( *( (fPt) ((* (ptr) pd222 ))))(pd222);
};
lab←L100051: ;
}
static word NoName←Q7740(formal←c0660)
word formal←c0660;
{
SOURCE(24037, 71)
{
word pd223;
pd223 = (* (( (ptr) formal←c0660)+5) );
(* (( (ptr) formal←c0660)+6) ) = (word) ( *( (fPt) ((* (ptr) pd223 ))))((* (( (ptr) formal←c0660)+4) ), 8, pd223);
};
return(0);
}
static word NoName←Q7800(formal←c0661)
word formal←c0661;
{
SOURCE(23893, 74)
{
word pd224;
pd224 = (* (( (ptr) formal←c0661)+5) );
(* (( (ptr) formal←c0661)+6) ) = (word) ( *( (fPt) ((* (ptr) pd224 ))))((* (( (ptr) formal←c0661)+4) ), 8, pd224);
};
return(0);
}
static void Position←P2460(viewer←v10284)
word viewer←v10284;
{
/* Position: */
SOURCE(24383, 94)
SOURCE(24425, 52)
(void) ShowPosition←P2400(viewer←v10284, 1);
}
static word FmtRange←P2520(r←v10416, skipCommentNodes←v10444)
W2 r←v10416;
word skipCommentNodes←v10444;
{
register ptr gf←c50812 = (ptr) &globalframe;
word rope←v10488;
/* FmtRange: */
SOURCE(24524, 338)
SOURCE(24524, 338)
rope←v10488 = 0;
SOURCE(24599, 145)
if (( (int)r←v10416.f0 == (int)r←v10416.f1)) {
SOURCE(24623, 41)
{
word pd225;
pd225 = (* (( (ptr) (* (( (ptr) gf←c50812)+198)/* var←c46268 */ ))+27) );
rope←v10488 = (word) ( *( (fPt) ((* (ptr) pd225 ))))(r←v10416.f0, 8, 1, pd225);
};
}
else {
SOURCE(24664, 80)
{
word var←c46364;
word var←c46396;
{
word pd226;
pd226 = (* (( (ptr) (* (( (ptr) gf←c50812)+198)/* var←c46268 */ ))+27) );
var←c46364 = (word) ( *( (fPt) ((* (ptr) pd226 ))))(r←v10416.f0, 8, 1, pd226);
};
{
word pd227;
pd227 = (* (( (ptr) (* (( (ptr) gf←c50812)+198)/* var←c46268 */ ))+27) );
var←c46396 = (word) ( *( (fPt) ((* (ptr) pd227 ))))(r←v10416.f1, 8, 1, pd227);
};
{
word pd228;
pd228 = (* (( (ptr) (* (( (ptr) gf←c50812)+197)/* var←c46204 */ ))+5) );
rope←v10488 = (word) ( *( (fPt) ((* (ptr) pd228 ))))(var←c46364, (* (( (ptr) gf←c50812)+66) ), var←c46396, 0, 0, pd228);
};
};
};
SOURCE(24746, 107)
{
word pd229;
pd229 = (* (( (ptr) (* (( (ptr) gf←c50812)+197)/* var←c46204 */ ))+6) );
rope←v10488 = (word) ( *( (fPt) ((* (ptr) pd229 ))))(rope←v10488, ( (0 != skipCommentNodes←v10444) ? (* (( (ptr) gf←c50812)+68)
) : (* (( (ptr) gf←c50812)+69) ) ) , pd229);
};
SOURCE(24855, 7)
return(rope←v10488);
}
static word CurrentPositionMessage←P2580(viewer←v10548, skipCommentNodes←v10576)
word viewer←v10548;
word skipCommentNodes←v10576;
{
register ptr gf←c50844 = (ptr) &globalframe;
word var←c10620;
word tSel←v17592;
W2 pos←v17620;
/* CurrentPositionMessage: */
SOURCE(24866, 355)
SOURCE(24962, 39)
{
word pd230;
pd230 = (* (( (ptr) (* (( (ptr) gf←c50844)+196)/* var←c46172 */ ))+5) );
tSel←v17592 = (word) ( *( (fPt) ((* (ptr) pd230 ))))(1, pd230);
};
SOURCE(25003, 176)
{
word pd231;
pd231 = (* (( (ptr) (* (( (ptr) gf←c50844)+193)/* var←c44668 */ ))+23) );
pos←v17620.f0 = (word) ( *( (fPt) ((* (ptr) pd231 ))))((* (W2Pt) (( (ptr) tSel←v17592)+2) ), 1, skipCommentNodes←v10576, pd231)
;
};
{
word pd232;
pd232 = (* (( (ptr) (* (( (ptr) gf←c50844)+193)/* var←c44668 */ ))+23) );
pos←v17620.f1 = (word) ( *( (fPt) ((* (ptr) pd232 ))))((* (W2Pt) (( (ptr) tSel←v17592)+11) ), 1, skipCommentNodes←v10576, pd232)
;
};
SOURCE(25181, 40)
return((word) FmtRange←P2520(pos←v17620, skipCommentNodes←v10576));
}
static void ShowGivenPosition←P2640(formal←c0796, formal←c0797, formal←c0798)
word formal←c0796;
word formal←c0797;
word formal←c0798;
{
W9 var←c50876;
/* declaration of viewer←v10680 skipped */
/* declaration of pos←v10708 skipped */
/* declaration of skipCommentNodes←v10736 skipped */
/* declaration of var←c46492 skipped */
(* (( (ptr) &var←c50876)+4)/* viewer←v10680 */ ) = formal←c0796;
(* (( (ptr) &var←c50876)+5)/* pos←v10708 */ ) = formal←c0797;
(* (( (ptr) &var←c50876)+6)/* skipCommentNodes←v10736 */ ) = formal←c0798;
/* ShowGivenPosition: */
SOURCE(25227, 1074)
{
word tmpAddr233;
tmpAddr233 = (word) (( (ptr) &var←c50876)+7)/* var←c46492 */ ;
(* (ptr) tmpAddr233 ) = ( ((word) (fPt) DoPosition←P6228) );
(* (( (ptr) tmpAddr233) + 1) ) = 1;
};
SOURCE(26243, 58)
(void) CallWithSelAndDocAndTddLocks←P2340((* (( (ptr) &var←c50876)+4)/* viewer←v10680 */ ), 2, (word) (( (bPt) &var←c50876)+28)
/* var←c46492 */ );
}
static void DoPosition←P6228(tdd←v17740, tSel←v17768, formal←c50940)
word tdd←v17740;
word tSel←v17768;
word formal←c50940;
{
register ptr gf←c50908 = (ptr) &globalframe;
W2 first←v17796;
formal←c50940 = (formal←c50940 - 28);
/* DoPosition: */
SOURCE(25320, 918)
SOURCE(25397, 61)
{
word pd234;
pd234 = (* (( (ptr) (* (( (ptr) gf←c50908)+193)/* var←c44668 */ ))+28) );
first←v17796.f0 = (word) ( *( (fPt) ((* (ptr) pd234 ))))((* (ptr) (tdd←v17740) ), pd234);
};
first←v17796.f1 = 0;
SOURCE(25460, 62)
{
word x235;
word pd236;
word x237;
pd236 = (* (( (ptr) (* (( (ptr) gf←c50908)+193)/* var←c44668 */ ))+23) );
(* (( (ptr) formal←c50940)+5) ) = (x235 = (* (( (ptr) formal←c50940)+5) ),
x237 = (word) ( *( (fPt) ((* (ptr) pd236 ))))(first←v17796, 1, (* (( (ptr) formal←c50940)+6) ), pd236),
MAX((int)(word), x235, x237));
};
SOURCE(25524, 86)
{
W2 var←c46556;
{
word pd238;
pd238 = (* (( (ptr) (* (( (ptr) gf←c50908)+193)/* var←c44668 */ ))+20) );
(void) ( *( (fPt) ((* (ptr) pd238 ))))((word) &var←c46556, (* (ptr) tdd←v17740 ), (* (( (ptr) formal←c50940)+5) ), 1, (* (
( (ptr) formal←c50940)+6) ), pd238);
};
(* (W2Pt) (( (ptr) tSel←v17768)+11) ) = var←c46556;
(* (W2Pt) (( (ptr) tSel←v17768)+2) ) = var←c46556;
};
SOURCE(25612, 82)
{
word var←c46588;
{
word x239;
word pd240;
word x241;
pd240 = (* (( (ptr) (* (( (ptr) gf←c50908)+193)/* var←c44668 */ ))+36) );
var←c46588 = (x239 = ((* (( (ptr) tSel←v17768)+12) ) + 3),
x241 = (word) ( *( (fPt) ((* (ptr) pd240 ))))((* ((( (ptr) tSel←v17768)+11)) ), pd240),
MIN((int)(word), x239, x241));
};
(* (( (ptr) tSel←v17768)+12) ) = var←c46588;
};
SOURCE(25696, 68)
{
word x242;
word x243;
(* (( (ptr) tSel←v17768)+3) ) = (x242 = (* (( (ptr) tSel←v17768)+12) ),
x243 = (* (( (ptr) tSel←v17768)+3) ),
MIN((int)(word), x242, x243));
};
SOURCE(25766, 122)
if ( ( ( (int)(* (( (ptr) tSel←v17768)+3) ) == (int)(* (( (ptr) tSel←v17768)+12) )) ? ( (int)(* (( (ptr) tSel←v17768)+3)
) > (int)0) : 0 ) ) {
SOURCE(25843, 45)
(* (( (ptr) tSel←v17768)+3) ) = ((* (( (ptr) tSel←v17768)+3) ) - 1);
};
SOURCE(25890, 23)
(* (( (ptr) tSel←v17768)+22) ) = 1;
SOURCE(25915, 20)
(* (ptr) tSel←v17768 ) = (* (( (ptr) formal←c50940)+4) );
SOURCE(25937, 15)
(* (( (ptr) tSel←v17768)+1) ) = tdd←v17740;
SOURCE(25954, 26)
(* (( (ptr) tSel←v17768)+26) ) = 0;
SOURCE(25982, 77)
if (((* (ptr) (* (( (ptr) (* (( (ptr) gf←c50908)+200)/* var←c46620 */ ))+19) ) ) == 0)) {
(* (( (ptr) tSel←v17768)+24) ) = 0;
}
else {
(* (( (ptr) tSel←v17768)+24) ) = 1;
};
SOURCE(26061, 40)
{
word pd244;
pd244 = (* (( (ptr) (* (( (ptr) gf←c50908)+196)/* var←c46172 */ ))+10) );
(void) ( *( (fPt) ((* (ptr) pd244 ))))((* ((( (ptr) formal←c50940)+4)) ), pd244);
};
SOURCE(26103, 32)
{
word pd245;
pd245 = (* (( (ptr) (* (( (ptr) gf←c50908)+185)/* var←c43804 */ ))+70) );
(void) ( *( (fPt) ((* (ptr) pd245 ))))(tSel←v17768, pd245);
};
SOURCE(26137, 45)
(void) MakeSelection←P1200(tSel←v17768, 2, 0, 0, 1);
SOURCE(26184, 54)
{
word pd246;
pd246 = (* (( (ptr) (* (( (ptr) gf←c50908)+201)/* var←c46652 */ ))+6) );
(void) ( *( (fPt) ((* (ptr) pd246 ))))((* (( (ptr) formal←c50940)+4) ), 0, 2, pd246);
};
}
static void ShowGivenPositionRange←P2700(formal←c0799, formal←c0800, formal←c0801, formal←c0802, formal←c0803, formal←c0804)
word formal←c0799;
word formal←c0800;
word formal←c0801;
word formal←c0802;
word formal←c0803;
word formal←c0804;
{
W12 var←c50972;
/* declaration of viewer←v10796 skipped */
/* declaration of selectionId←v10824 skipped */
/* declaration of posI←v10852 skipped */
/* declaration of posF←v10880 skipped */
/* declaration of skipCommentNodes←v10908 skipped */
/* declaration of pendingDelete←v10936 skipped */
/* declaration of var←c46684 skipped */
(* (( (ptr) &var←c50972)+4)/* viewer←v10796 */ ) = formal←c0799;
(* (( (ptr) &var←c50972)+5)/* selectionId←v10824 */ ) = formal←c0800;
(* (( (ptr) &var←c50972)+6)/* posI←v10852 */ ) = formal←c0801;
(* (( (ptr) &var←c50972)+7)/* posF←v10880 */ ) = formal←c0802;
(* (( (ptr) &var←c50972)+8)/* skipCommentNodes←v10908 */ ) = formal←c0803;
(* (( (ptr) &var←c50972)+9)/* pendingDelete←v10936 */ ) = formal←c0804;
/* ShowGivenPositionRange: */
SOURCE(26307, 963)
{
word tmpAddr247;
tmpAddr247 = (word) (( (ptr) &var←c50972)+10)/* var←c46684 */ ;
(* (ptr) tmpAddr247 ) = ( ((word) (fPt) DoPosition←P6288) );
(* (( (ptr) tmpAddr247) + 1) ) = 1;
};
SOURCE(27209, 61)
(void) CallWithSelAndDocAndTddLocks←P2340((* (( (ptr) &var←c50972)+4)/* viewer←v10796 */ ), (* (( (ptr) &var←c50972)+5)/* selectionId←v10824 */ ), (word) (
( (bPt) &var←c50972)+40)/* var←c46684 */ );
}
static void DoPosition←P6288(tdd←v17916, tSel←v17944, formal←c51036)
word tdd←v17916;
word tSel←v17944;
word formal←c51036;
{
register ptr gf←c51004 = (ptr) &globalframe;
word pos0←v17972;
formal←c51036 = (formal←c51036 - 40);
/* DoPosition: */
SOURCE(26446, 758)
SOURCE(26523, 87)
{
word var←c46716;
{
word pd248;
pd248 = (* (( (ptr) (* (( (ptr) gf←c51004)+193)/* var←c44668 */ ))+28) );
var←c46716 = (word) ( *( (fPt) ((* (ptr) pd248 ))))((* (ptr) (tdd←v17916) ), pd248);
};
{
W2 var←c46748;
var←c46748.f0 = var←c46716;
var←c46748.f1 = 0;
{
word pd249;
pd249 = (* (( (ptr) (* (( (ptr) gf←c51004)+193)/* var←c44668 */ ))+23) );
pos0←v17972 = (word) ( *( (fPt) ((* (ptr) pd249 ))))(var←c46748, 1, (* (( (ptr) formal←c51036)+8) ), pd249);
};
};
};
SOURCE(26612, 59)
if (( (int)(* (( (ptr) formal←c51036)+7) ) < (int)(* (( (ptr) formal←c51036)+6) ))) {
SOURCE(26632, 39)
{
word p←v18016;
SOURCE(26634, 13)
p←v18016 = (* (( (ptr) formal←c51036)+6) );
SOURCE(26649, 11)
(* (( (ptr) formal←c51036)+6) ) = (* (( (ptr) formal←c51036)+7) );
SOURCE(26662, 9)
(* (( (ptr) formal←c51036)+7) ) = p←v18016;
};
};
SOURCE(26674, 83)
{
word pd250;
word x251;
pd250 = (* (( (ptr) (* (( (ptr) gf←c51004)+193)/* var←c44668 */ ))+20) );
(void) ( *( (fPt) ((* (ptr) pd250 ))))((word) (( (bPt) tSel←v17944)+8), (* (ptr) tdd←v17916 ), (x251 = (* (( (ptr) formal←c51036)+6)
),
MAX((int)(word), pos0←v17972, x251)), 1, (* (( (ptr) formal←c51036)+8) ), pd250);
};
SOURCE(26759, 81)
{
word pd252;
word x253;
pd252 = (* (( (ptr) (* (( (ptr) gf←c51004)+193)/* var←c44668 */ ))+20) );
(void) ( *( (fPt) ((* (ptr) pd252 ))))((word) (( (bPt) tSel←v17944)+44), (* (ptr) tdd←v17916 ), (x253 = (* (( (ptr) formal←c51036)+7)
),
MAX((int)(word), pos0←v17972, x253)), 1, (* (( (ptr) formal←c51036)+8) ), pd252);
};
SOURCE(26842, 23)
(* (( (ptr) tSel←v17944)+22) ) = 1;
SOURCE(26867, 20)
(* (ptr) tSel←v17944 ) = (* (( (ptr) formal←c51036)+4) );
SOURCE(26889, 15)
(* (( (ptr) tSel←v17944)+1) ) = tdd←v17916;
SOURCE(26906, 34)
(* (( (ptr) tSel←v17944)+26) ) = (* (( (ptr) formal←c51036)+9) );
SOURCE(26942, 77)
if (((* (ptr) (* (( (ptr) (* (( (ptr) gf←c51004)+200)/* var←c46620 */ ))+19) ) ) == 0)) {
(* (( (ptr) tSel←v17944)+24) ) = 0;
}
else {
(* (( (ptr) tSel←v17944)+24) ) = 1;
};
SOURCE(27021, 40)
{
word pd254;
pd254 = (* (( (ptr) (* (( (ptr) gf←c51004)+196)/* var←c46172 */ ))+10) );
(void) ( *( (fPt) ((* (ptr) pd254 ))))((* ((( (ptr) formal←c51036)+4)) ), pd254);
};
SOURCE(27063, 32)
{
word pd255;
pd255 = (* (( (ptr) (* (( (ptr) gf←c51004)+185)/* var←c43804 */ ))+70) );
(void) ( *( (fPt) ((* (ptr) pd255 ))))(tSel←v17944, pd255);
};
SOURCE(27097, 48)
(void) MakeSelection←P1200(tSel←v17944, (* (( (ptr) formal←c51036)+5) ), 0, 0, 1);
SOURCE(27147, 57)
{
word pd256;
pd256 = (* (( (ptr) (* (( (ptr) gf←c51004)+201)/* var←c46652 */ ))+6) );
(void) ( *( (fPt) ((* (ptr) pd256 ))))((* (( (ptr) formal←c51036)+4) ), 0, (* (( (ptr) formal←c51036)+5) ), pd256);
};
}
static void GoToEndOfNode←P2760(formal←c0805)
word formal←c0805;
{
W7 var←c51068;
/* declaration of n←v10996 skipped */
register ptr gf←c51100 = (ptr) &globalframe;
/* declaration of var←c46780 skipped */
var←c51068.f4/* n←v10996 */ = formal←c0805;
/* GoToEndOfNode: */
SOURCE(27276, 850)
{
word tmpAddr257;
tmpAddr257 = (word) (( (ptr) &var←c51068)+5)/* var←c46780 */ ;
(* (ptr) tmpAddr257 ) = ( ((word) (fPt) DoIt←P6396) );
(* (( (ptr) tmpAddr257) + 1) ) = 1;
};
SOURCE(28073, 53)
if (( (int)var←c51068.f4/* n←v10996 */ != (int)0)) {
SOURCE(28087, 39)
{
word pd258;
pd258 = (* (( (ptr) (* (( (ptr) gf←c51100)+202)/* var←c46812 */ ))+4) );
(void) ( *( (fPt) ((* (ptr) pd258 ))))((word) (( (bPt) &var←c51068)+20)/* var←c46780 */ , 0, pd258);
};
};
}
static void DoIt←P6396(root←v18136, tSel←v18164, formal←c51164)
word root←v18136;
word tSel←v18164;
word formal←c51164;
{
register ptr gf←c51132 = (ptr) &globalframe;
word pointSel←v18192;
W2 pos←v18220;
formal←c51164 = (formal←c51164 - 20);
/* DoIt: */
SOURCE(27320, 748)
SOURCE(27379, 39)
pointSel←v18192 = ((* (( (ptr) tSel←v18164)+22) ) == 0);
SOURCE(27420, 51)
{
word pd259;
pd259 = (* (( (ptr) (* (( (ptr) gf←c51132)+185)/* var←c43804 */ ))+64) );
(void) ( *( (fPt) ((* (ptr) pd259 ))))((word) &pos←v18220, tSel←v18164, pd259);
};
SOURCE(27473, 502)
lab←L100054: ;
if ( ( (pos←v18220.f0 != 0) ? ( (int)(* (( (ptr) formal←c51164)+4) ) != (int)0) : 0 ) ) {
}
else {
goto lab←L100052;
};
SOURCE(27507, 468)
if (( (int)(* (( (ptr) formal←c51164)+4) ) > (int)0)) {
SOURCE(27523, 174)
{
word tc260;
word pd261;
if ((0 != pointSel←v18192)) {
pd261 = (* (( (ptr) (* (( (ptr) gf←c51132)+197)/* var←c46204 */ ))+15) );
tc260 = (word) ( (int)pos←v18220.f1 == (int)(word) ( *( (fPt) ((* (ptr) pd261 ))))((* ((( (ptr) pos←v18220.f0)+3)) ), pd261)
);
}
else {
tc260 = (word) 0;
};
if (tc260) {
SOURCE(27581, 118)
{
word node←v18264;
SOURCE(27583, 43)
{
word pd262;
pd262 = (* (( (ptr) (* (( (ptr) gf←c51132)+193)/* var←c44668 */ ))+14) );
node←v18264 = (word) ( *( (fPt) ((* (ptr) pd262 ))))(pos←v18220.f0, pd262);
};
SOURCE(27628, 48)
{
word pd264;
if ((node←v18264 == 0)) { goto then0263;};
pd264 = (* (( (ptr) (* (( (ptr) gf←c51132)+193)/* var←c44668 */ ))+8) );
if (((word) ( *( (fPt) ((* (ptr) pd264 ))))(node←v18264, pd264) == 0)) {
then0263: ;
SOURCE(27676, 4)
goto lab←L100053;
};
};
SOURCE(27682, 15)
pos←v18220.f0 = node←v18264;
};
};
};
SOURCE(27702, 36)
{
word pd265;
pd265 = (* (( (ptr) (* (( (ptr) gf←c51132)+197)/* var←c46204 */ ))+15) );
pos←v18220.f1 = (word) ( *( (fPt) ((* (ptr) pd265 ))))((* ((( (ptr) pos←v18220.f0)+3)) ), pd265);
};
SOURCE(27740, 15)
pointSel←v18192 = 1;
SOURCE(27757, 9)
(* (( (ptr) formal←c51164)+4) ) = ((* (( (ptr) formal←c51164)+4) ) - 1);
}
else {
SOURCE(27777, 152)
if ( ( (0 != pointSel←v18192) ? ( (int)pos←v18220.f1 == (int)0) : 0 ) ) {
SOURCE(27812, 119)
{
word node←v18308;
SOURCE(27814, 44)
{
word pd266;
pd266 = (* (( (ptr) (* (( (ptr) gf←c51132)+193)/* var←c44668 */ ))+15) );
node←v18308 = (word) ( *( (fPt) ((* (ptr) pd266 ))))(pos←v18220.f0, 0, pd266);
};
SOURCE(27860, 48)
{
word pd268;
if ((node←v18308 == 0)) { goto then0267;};
pd268 = (* (( (ptr) (* (( (ptr) gf←c51132)+193)/* var←c44668 */ ))+8) );
if (((word) ( *( (fPt) ((* (ptr) pd268 ))))(node←v18308, pd268) == 0)) {
then0267: ;
SOURCE(27908, 4)
goto lab←L100053;
};
};
SOURCE(27914, 15)
pos←v18220.f0 = node←v18308;
};
};
SOURCE(27934, 13)
pos←v18220.f1 = 0;
SOURCE(27949, 15)
pointSel←v18192 = 1;
SOURCE(27966, 9)
(* (( (ptr) formal←c51164)+4) ) = ((* (( (ptr) formal←c51164)+4) ) + 1);
};
goto lab←L100054;
lab←L100052: ;
lab←L100053: ;
SOURCE(27989, 29)
(void) MakePointSelection←P600(tSel←v18164, pos←v18220);
SOURCE(28020, 48)
{
word pd269;
pd269 = (* (( (ptr) (* (( (ptr) gf←c51132)+201)/* var←c46652 */ ))+6) );
(void) ( *( (fPt) ((* (ptr) pd269 ))))((* (ptr) tSel←v18164 ), 1, 0, pd269);
};
}
static word TargetFromSel←P2820(tSel←v11056)
word tSel←v11056;
{
register ptr gf←c51196 = (ptr) &globalframe;
word target←v11100;
W2 loc1←v18352;
W2 loc2←v18380;
/* TargetFromSel: */
SOURCE(28132, 782)
SOURCE(28132, 782)
target←v11100 = 0;
SOURCE(28203, 20)
loc1←v18352.f0 = 0;
loc1←v18352.f1 = 0;
loc2←v18380 = loc1←v18352;
SOURCE(28225, 43)
{
W4 var←c46876;
(void) LocationsFromSelection←P3120((word) &var←c46876, tSel←v11056);
loc2←v18380 = (* (W2Pt) (( (ptr) &var←c46876)+2) );
loc1←v18352 = (* (W2Pt) &var←c46876 );
};
SOURCE(28270, 66)
if (XR←EqualWords(&loc1←v18352, &loc2←v18380, 2)) {
SOURCE(28288, 17)
return(0);
}
else {
SOURCE(28305, 31)
{
word pd270;
pd270 = (* (( (ptr) (* (( (ptr) gf←c51196)+193)/* var←c44668 */ ))+7) );
target←v11100 = (word) ( *( (fPt) ((* (ptr) pd270 ))))(pd270);
};
};
SOURCE(28338, 576)
{
register word node←v18424;
node←v18424 = loc1←v18352.f0;
lab←L100058: ;
if ((node←v18424 != 0)) {
}
else {
goto lab←L100055;
};
{
word i0←v18468;
word i1←v18496;
SOURCE(28411, 50)
i0←v18468 = ( (node←v18424 == loc1←v18352.f0) ? loc1←v18352.f1 : 0 ) ;
SOURCE(28463, 68)
{
word tc271;
word pd272;
if ((node←v18424 == loc2←v18380.f0)) {
tc271 = (word) loc2←v18380.f1;
}
else {
pd272 = (* (( (ptr) (* (( (ptr) gf←c51196)+192)/* var←c44604 */ ))+6) );
tc271 = (word) ( *( (fPt) ((* (ptr) pd272 ))))(node←v18424, pd272);
};
i1←v18496 = tc271;
};
SOURCE(28533, 172)
if ((node←v18424 != loc1←v18352.f0)) {
SOURCE(28556, 149)
{
W2 var←c47004;
{
word var←c46908;
word var←c46940;
{
word pd273;
pd273 = (* (( (ptr) (* (( (ptr) gf←c51196)+192)/* var←c44604 */ ))+6) );
var←c46908 = (word) ( *( (fPt) ((* (ptr) pd273 ))))(target←v11100, pd273);
};
{
word var←c46972;
{
word pd274;
pd274 = (* (( (ptr) (* (( (ptr) gf←c51196)+193)/* var←c44668 */ ))+9) );
var←c46972 = (word) ( *( (fPt) ((* (ptr) pd274 ))))(node←v18424, pd274);
};
{
word pd275;
pd275 = (* (( (ptr) (* (( (ptr) gf←c51196)+192)/* var←c44604 */ ))+41) );
var←c46940 = (word) ( *( (fPt) ((* (ptr) pd275 ))))(var←c46972, pd275);
};
};
{
W2 var←c0442;
{
word pd276;
pd276 = (* (( (ptr) (* (( (ptr) gf←c51196)+192)/* var←c44604 */ ))+37) );
(void) ( *( (fPt) ((* (ptr) pd276 ))))((word) &var←c0442, 0, target←v11100, var←c46908, 0, var←c46940
, 0, 0, 0, 0, pd276);
};
var←c47004 = var←c0442;
};
};
};
};
SOURCE(28707, 182)
if (( (int)i1←v18496 > (int)i0←v18468)) {
SOURCE(28721, 168)
{
W2 var←c47068;
{
word var←c47036;
{
word pd277;
pd277 = (* (( (ptr) (* (( (ptr) gf←c51196)+192)/* var←c44604 */ ))+6) );
var←c47036 = (word) ( *( (fPt) ((* (ptr) pd277 ))))(target←v11100, pd277);
};
{
word pd278;
pd278 = (* (( (ptr) (* (( (ptr) gf←c51196)+192)/* var←c44604 */ ))+31) );
(void) ( *( (fPt) ((* (ptr) pd278 ))))((word) &var←c47068, 0, 0, target←v11100, var←c47036, 0
, node←v18424, i0←v18468, (i1←v18496 - i0←v18468), 0, pd278);
};
};
};
};
SOURCE(28891, 23)
if ((node←v18424 == loc2←v18380.f0)) {
SOURCE(28914, 4)
goto lab←L100056;
};
};
{
word pd279;
pd279 = (* (( (ptr) (* (( (ptr) gf←c51196)+193)/* var←c44668 */ ))+14) );
node←v18424 = (word) ( *( (fPt) ((* (ptr) pd279 ))))(node←v18424, pd279);
};
goto lab←L100058;
lab←L100055: ;
lab←L100056: ;
};
SOURCE(28132, 782)
return(target←v11100);
}
static void FindFeedback←P2880(found←v11160, rope←v11188)
word found←v11160;
word rope←v11188;
{
register ptr gf←c51228 = (ptr) &globalframe;
/* FindFeedback: */
SOURCE(28966, 373)
SOURCE(29015, 324)
if ((0 != found←v11160)) {
SOURCE(29029, 27)
{
word pd280;
pd280 = (* (( (ptr) (* (( (ptr) gf←c51228)+199)/* var←c46332 */ ))+4) );
(void) ( *( (fPt) ((* (ptr) pd280 ))))(pd280);
};
}
else {
SOURCE(29056, 283)
{
word pd281;
pd281 = (* (( (ptr) (* (( (ptr) gf←c51228)+197)/* var←c46204 */ ))+15) );
if (( (int)(word) ( *( (fPt) ((* (ptr) pd281 ))))(rope←v11188, pd281) == (int)0)) {
SOURCE(29084, 55)
{
word pd282;
pd282 = (* (( (ptr) (* (( (ptr) gf←c51228)+199)/* var←c46332 */ ))+5) );
(void) ( *( (fPt) ((* (ptr) pd282 ))))((* (( (ptr) gf←c51228)+70) ), 1, pd282);
};
SOURCE(29141, 21)
{
word pd283;
pd283 = (* (( (ptr) (* (( (ptr) gf←c51228)+199)/* var←c46332 */ ))+6) );
(void) ( *( (fPt) ((* (ptr) pd283 ))))(pd283);
};
}
else {
SOURCE(29173, 78)
{
word pd284;
pd284 = (* (( (ptr) (* (( (ptr) gf←c51228)+197)/* var←c46204 */ ))+15) );
if (( (int)(word) ( *( (fPt) ((* (ptr) pd284 ))))(rope←v11188, pd284) > (int)50)) {
SOURCE(29200, 51)
{
word var←c47100;
{
word pd285;
pd285 = (* (( (ptr) (* (( (ptr) gf←c51228)+197)/* var←c46204 */ ))+17) );
var←c47100 = (word) ( *( (fPt) ((* (ptr) pd285 ))))(rope←v11188, 0, 47, pd285);
};
{
word pd286;
pd286 = (* (( (ptr) (* (( (ptr) gf←c51228)+197)/* var←c46204 */ ))+6) );
rope←v11188 = (word) ( *( (fPt) ((* (ptr) pd286 ))))(var←c47100, (* (( (ptr) gf←c51228)+71) ), pd286);
};
};
};
};
SOURCE(29253, 60)
{
word var←c47132;
{
word pd287;
pd287 = (* (( (ptr) (* (( (ptr) gf←c51228)+197)/* var←c46204 */ ))+6) );
var←c47132 = (word) ( *( (fPt) ((* (ptr) pd287 ))))(rope←v11188, (* (( (ptr) gf←c51228)+72) ), pd287);
};
{
word pd288;
pd288 = (* (( (ptr) (* (( (ptr) gf←c51228)+199)/* var←c46332 */ ))+5) );
(void) ( *( (fPt) ((* (ptr) pd288 ))))(var←c47132, 1, pd288);
};
};
SOURCE(29315, 24)
{
word pd289;
pd289 = (* (( (ptr) (* (( (ptr) gf←c51228)+186)/* var←c43836 */ ))+46) );
(void) ( *( (fPt) ((* (ptr) pd289 ))))(pd289);
};
};
};
};
}
static void Find←P2940(formal←c0806, formal←c0807, formal←c0808, formal←c0809, formal←c0810, formal←c0811)
word formal←c0806;
word formal←c0807;
word formal←c0808;
word formal←c0809;
word formal←c0810;
word formal←c0811;
{
W14 var←c51260;
/* declaration of viewer←v11248 skipped */
/* declaration of findWhere←v11276 skipped */
/* declaration of def←v11304 skipped */
/* declaration of word←v11332 skipped */
/* declaration of id←v11360 skipped */
/* declaration of case←v11388 skipped */
register ptr gf←c51292 = (ptr) &globalframe;
/* declaration of var←c47164 skipped */
/* declaration of found←v18540 skipped */
/* declaration of target←v18568 skipped */
(* (( (ptr) &var←c51260)+4)/* viewer←v11248 */ ) = formal←c0806;
(* (( (ptr) &var←c51260)+5)/* findWhere←v11276 */ ) = formal←c0807;
(* (( (ptr) &var←c51260)+6)/* def←v11304 */ ) = formal←c0808;
(* (( (ptr) &var←c51260)+7)/* word←v11332 */ ) = formal←c0809;
(* (( (ptr) &var←c51260)+8)/* id←v11360 */ ) = formal←c0810;
(* (( (ptr) &var←c51260)+9)/* case←v11388 */ ) = formal←c0811;
/* Find: */
SOURCE(29348, 694)
{
word tmpAddr290;
tmpAddr290 = (word) (( (ptr) &var←c51260)+10)/* var←c47164 */ ;
(* (ptr) tmpAddr290 ) = ( ((word) (fPt) LockedFind←P6648) );
(* (( (ptr) tmpAddr290) + 1) ) = 1;
};
SOURCE(29544, 19)
(* (( (ptr) &var←c51260)+12)/* found←v18540 */ ) = 0;
SOURCE(29565, 18)
(* (( (ptr) &var←c51260)+13)/* target←v18568 */ ) = 0;
SOURCE(29935, 52)
(void) CallWithSelAndDocAndTddLocks←P2340((* (( (ptr) &var←c51260)+4)/* viewer←v11248 */ ), (* (( (ptr) &var←c51260)+8)/* id←v11360 */ ), (word) (
( (bPt) &var←c51260)+40)/* var←c47164 */ );
SOURCE(29989, 53)
{
word var←c47196;
{
word pd291;
pd291 = (* (( (ptr) (* (( (ptr) gf←c51292)+203)/* var←c47228 */ ))+5) );
var←c47196 = (word) ( *( (fPt) ((* (ptr) pd291 ))))((* (( (ptr) &var←c51260)+13)/* target←v18568 */ ), 0, 2147483647, pd291)
;
};
(void) FindFeedback←P2880((* (( (ptr) &var←c51260)+12)/* found←v18540 */ ), var←c47196);
};
}
static void LockedFind←P6648(tdd←v18672, tSel←v18700, formal←c51356)
word tdd←v18672;
word tSel←v18700;
word formal←c51356;
{
register ptr gf←c51324 = (ptr) &globalframe;
formal←c51356 = (formal←c51356 - 40);
/* LockedFind: */
SOURCE(29585, 345)
SOURCE(29662, 28)
(* (( (ptr) formal←c51356)+13) ) = (word) TargetFromSel←P2820(tSel←v18700);
SOURCE(29692, 79)
if (((* (( (ptr) formal←c51356)+13) ) == 0)) {
SOURCE(29711, 33)
(* (( (ptr) formal←c51356)+13) ) = (* (( (ptr) gf←c51324)+36)/* targetOfLastSearch←v6304 */ );
}
else {
SOURCE(29744, 27)
(* (( (ptr) gf←c51324)+36)/* targetOfLastSearch←v6304 */ ) = (* (( (ptr) formal←c51356)+13) );
};
SOURCE(29773, 157)
if (((* (( (ptr) formal←c51356)+13) ) != 0)) {
SOURCE(29792, 138)
(* (( (ptr) formal←c51356)+12) ) = (word) FindTarget←P3180((* (( (ptr) formal←c51356)+4) ), tdd←v18672, tSel←v18700, (* (
( (ptr) formal←c51356)+8) ), (* (( (ptr) formal←c51356)+5) ), (* (( (ptr) formal←c51356)+13) )
, 0, 2147483647, (* (( (ptr) formal←c51356)+6) ), (* (( (ptr) formal←c51356)+7) ), (* (( (ptr) formal←c51356)+9) ));
};
}
static void FindRope←P3000(viewer←v11448, rope←v11476, findWhere←v11504, def←v11532, word←v11560, id←v11588, case←v11616)
word viewer←v11448;
word rope←v11476;
word findWhere←v11504;
word def←v11532;
word word←v11560;
word id←v11588;
word case←v11616;
{
word found←v18728;
/* FindRope: */
SOURCE(30047, 305)
SOURCE(30259, 66)
found←v18728 = (word) DoFind←P3060(viewer←v11448, rope←v11476, findWhere←v11504, def←v11532, word←v11560, id←v11588
, case←v11616);
SOURCE(30327, 25)
(void) FindFeedback←P2880(found←v18728, rope←v11476);
}
static word DoFind←P3060(formal←c0812, formal←c0813, formal←c0814, formal←c0815, formal←c0816, formal←c0817, formal←c0818)
word formal←c0812;
word formal←c0813;
word formal←c0814;
word formal←c0815;
word formal←c0816;
word formal←c0817;
word formal←c0818;
{
W14 var←c51388;
/* declaration of viewer←v11676 skipped */
/* declaration of rope←v11704 skipped */
/* declaration of findWhere←v11732 skipped */
/* declaration of def←v11760 skipped */
/* declaration of word←v11788 skipped */
/* declaration of id←v11816 skipped */
/* declaration of case←v11844 skipped */
/* declaration of found←v11888 skipped */
/* declaration of var←c47260 skipped */
(* (( (ptr) &var←c51388)+4)/* viewer←v11676 */ ) = formal←c0812;
(* (( (ptr) &var←c51388)+5)/* rope←v11704 */ ) = formal←c0813;
(* (( (ptr) &var←c51388)+6)/* findWhere←v11732 */ ) = formal←c0814;
(* (( (ptr) &var←c51388)+7)/* def←v11760 */ ) = formal←c0815;
(* (( (ptr) &var←c51388)+8)/* word←v11788 */ ) = formal←c0816;
(* (( (ptr) &var←c51388)+9)/* id←v11816 */ ) = formal←c0817;
(* (( (ptr) &var←c51388)+10)/* case←v11844 */ ) = formal←c0818;
/* DoFind: */
SOURCE(30357, 556)
{
word tmpAddr292;
tmpAddr292 = (word) (( (ptr) &var←c51388)+12)/* var←c47260 */ ;
(* (ptr) tmpAddr292 ) = ( ((word) (fPt) LockedDoFind←P6708) );
(* (( (ptr) tmpAddr292) + 1) ) = 1;
};
SOURCE(30357, 556)
(* (( (ptr) &var←c51388)+11)/* found←v11888 */ ) = 0;
SOURCE(30859, 54)
(void) CallWithSelAndDocAndTddLocks←P2340((* (( (ptr) &var←c51388)+4)/* viewer←v11676 */ ), (* (( (ptr) &var←c51388)+9)/* id←v11816 */ ), (word) (
( (bPt) &var←c51388)+48)/* var←c47260 */ );
SOURCE(30357, 556)
return((* (( (ptr) &var←c51388)+11)/* found←v11888 */ ));
}
static void LockedDoFind←P6708(tdd←v18848, tSel←v18876, formal←c51452)
word tdd←v18848;
word tSel←v18876;
word formal←c51452;
{
register ptr gf←c51420 = (ptr) &globalframe;
word target←v18904;
formal←c51452 = (formal←c51452 - 48);
/* LockedDoFind: */
SOURCE(30597, 257)
SOURCE(30676, 38)
{
word pd293;
pd293 = (* (( (ptr) (* (( (ptr) gf←c51420)+192)/* var←c44604 */ ))+13) );
target←v18904 = (word) ( *( (fPt) ((* (ptr) pd293 ))))((* ((( (ptr) formal←c51452)+5)) ), pd293);
};
SOURCE(30716, 138)
(* (( (ptr) formal←c51452)+11) ) = (word) FindTarget←P3180((* (( (ptr) formal←c51452)+4) ), tdd←v18848, tSel←v18876, (* (
( (ptr) formal←c51452)+9) ), (* (( (ptr) formal←c51452)+6) ), target←v18904
, 0, 2147483647, (* (( (ptr) formal←c51452)+7) ), (* (( (ptr) formal←c51452)+8) ), (* (( (ptr) formal←c51452)+10) ));
}
static void LocationsFromSelection←P3120(formal←c0485, tSel←v11948)
word formal←c0485;
word tSel←v11948;
{
register ptr gf←c51484 = (ptr) &globalframe;
W2 loc1←v11992;
W2 loc2←v12020;
/* LocationsFromSelection: */
SOURCE(30919, 397)
SOURCE(30919, 397)
loc1←v11992.f0 = 0;
loc1←v11992.f1 = 0;
SOURCE(30919, 397)
loc2←v12020.f0 = 0;
loc2←v12020.f1 = 0;
SOURCE(31001, 21)
loc1←v11992 = (* (W2Pt) (( (ptr) tSel←v11948)+2) );
SOURCE(31024, 19)
loc2←v12020 = (* (W2Pt) (( (ptr) tSel←v11948)+11) );
SOURCE(31045, 65)
if ((loc1←v11992.f0 == 0) || (loc2←v12020.f0 == 0)) {
SOURCE(31084, 26)
loc1←v11992.f0 = 0;
loc1←v11992.f1 = 0;
loc2←v12020.f0 = 0;
loc2←v12020.f1 = 0;
goto lab←L100059;
};
SOURCE(31112, 50)
if (( (int)loc1←v11992.f1 == (int) (word) -1)) {
SOURCE(31148, 14)
loc1←v11992.f1 = 0;
};
SOURCE(31164, 152)
if (((* (( (ptr) tSel←v11948)+22) ) == 0)) {
SOURCE(31195, 17)
loc2←v12020 = loc1←v11992;
}
else {
SOURCE(31212, 104)
if (( (int)loc2←v12020.f1 == (int) (word) -1)) {
SOURCE(31248, 43)
{
word pd294;
pd294 = (* (( (ptr) (* (( (ptr) gf←c51484)+192)/* var←c44604 */ ))+6) );
loc2←v12020.f1 = (word) ( *( (fPt) ((* (ptr) pd294 ))))(loc2←v12020.f0, pd294);
};
}
else {
SOURCE(31291, 25)
loc2←v12020.f1 = (loc2←v12020.f1 + 1);
};
};
/* removed tail goto */
lab←L100059: ;
(* (W2Pt) formal←c0485 ) = loc1←v11992;
(* (W2Pt) (( (ptr) formal←c0485)+2) ) = loc2←v12020;
return;
}
static word FindTarget←P3180(viewer←v12080, tdd←v12108, tSel←v12136, id←v12164, findWhere←v12192, target←v12220, targetStart←v12248, targetLen←v12276, def←v12304, word←v12332, case←v12360)
word viewer←v12080;
word tdd←v12108;
word tSel←v12136;
word id←v12164;
word findWhere←v12192;
word target←v12220;
word targetStart←v12248;
word targetLen←v12276;
word def←v12304;
word word←v12332;
word case←v12360;
{
register ptr gf←c51516 = (ptr) &globalframe;
word found←v12404;
word match←v18948;
word visible←v18976;
W2 viewPos←v19004;
word var←c47388;
word interrupt←v19032;
W2 loc1←v19060;
W2 loc2←v19088;
word where←v19116 = 0;
word at←v19144 = 0;
word atEnd←v19172 = 0;
/* FindTarget: */
SOURCE(31322, 1976)
SOURCE(31322, 1976)
found←v12404 = 0;
SOURCE(31573, 72)
match←v18948 = ( (0 != def←v12304) ? 2 : ( (0 != word←v12332) ? 1 : 0 ) ) ;
SOURCE(31647, 83)
if (((* (ptr) tSel←v12136 ) == viewer←v12080)) {
{
word var←c47356;
var←c47356 = (* (( (ptr) tSel←v12136)+13) );
if (( (int)var←c47356 >= (int)0)) {
visible←v18976 = ( (int)var←c47356 <= (int)(* (ptr) (* (( (ptr) tdd←v12108)+1) ) ));
}
else {
visible←v18976 = 0;
};
};
}
else {
visible←v18976 = 0;
};
SOURCE(31732, 46)
{
word limit295;
var←c47388 = (* (( (ptr) tdd←v12108)+1) );
viewPos←v19004 = (* (W2Pt) (( (W9Pt) (( (ptr) var←c47388)+3))+(
limit295 = (* (( (ptr) var←c47388)+2) ),
BCK(0, limit295)
)) );
};
SOURCE(31780, 42)
interrupt←v19032 = (* (ptr) (* (( (ptr) (* (( (ptr) gf←c51516)+204)/* var←c47420 */ ))+5) ) );
SOURCE(31824, 20)
loc1←v19060.f0 = 0;
loc1←v19060.f1 = 0;
loc2←v19088 = loc1←v19060;
SOURCE(31879, 43)
{
W4 var←c47484;
(void) LocationsFromSelection←P3120((word) &var←c47484, tSel←v12136);
loc2←v19088 = (* (W2Pt) (( (ptr) &var←c47484)+2) );
loc1←v19060 = (* (W2Pt) &var←c47484 );
};
SOURCE(31924, 18)
(* (ptr) interrupt←v19032 ) = 0;
SOURCE(31944, 581)
{
word var←c47516;
var←c47516 = findWhere←v12192;
switch (var←c47516) {
case 0: case 2:
SOURCE(31988, 261)
{
W2 pos←v19228;
SOURCE(31990, 49)
{
word tcp296;
if ((0 != visible←v18976)) {
tcp296 = (word) &loc2←v19088;
}
else {
tcp296 = (word) &viewPos←v19004;
};
pos←v19228 = (* (W2Pt) tcp296 );
};
SOURCE(32041, 206)
{
W3 var←c47612;
{
W3 var←c0515;
{
W2 var←c47548;
var←c47548.f0 = 0;
var←c47548.f1 = 0;
{
word pd297;
pd297 = (* (( (ptr) (* (( (ptr) gf←c51516)+205)/* var←c47580 */ ))+6) );
(void) ( *( (fPt) ((* (ptr) pd297 ))))((word) &var←c0515, 0, pos←v19228, var←c47548, target←v12220, targetStart←v12248
/*1*/ , targetLen←v12276, case←v12360, match←v18948, interrupt←v19032, pd297);
};
};
var←c47612 = var←c0515;
};
atEnd←v19172 = var←c47612.f2;
at←v19144 = var←c47612.f1;
where←v19116 = var←c47612.f0;
};
};
break;
case 1:
SOURCE(32265, 262)
{
W2 pos←v19272;
SOURCE(32267, 49)
{
word tcp298;
if ((0 != visible←v18976)) {
tcp298 = (word) &loc1←v19060;
}
else {
tcp298 = (word) &viewPos←v19004;
};
pos←v19272 = (* (W2Pt) tcp298 );
};
SOURCE(32318, 207)
{
W3 var←c47676;
{
W3 var←c0519;
{
W2 var←c47644;
var←c47644.f0 = 0;
var←c47644.f1 = 0;
{
word pd299;
pd299 = (* (( (ptr) (* (( (ptr) gf←c51516)+205)/* var←c47580 */ ))+6) );
(void) ( *( (fPt) ((* (ptr) pd299 ))))((word) &var←c0519, 1, var←c47644, pos←v19272, target←v12220, targetStart←v12248
/*1*/ , targetLen←v12276, case←v12360, match←v18948, interrupt←v19032, pd299);
};
};
var←c47676 = var←c0519;
};
atEnd←v19172 = var←c47676.f2;
at←v19144 = var←c47676.f1;
where←v19116 = var←c47676.f0;
};
};
break;
};
};
SOURCE(32539, 320)
if ( ( ( (where←v19116 == 0) ? (findWhere←v12192 == 2) : 0 ) ? (0 == (* (ptr) interrupt←v19032 )) : 0 ) ) {
SOURCE(32599, 262)
{
W2 pos←v19316;
SOURCE(32601, 50)
{
word pd300;
pd300 = (* (( (ptr) (* (( (ptr) gf←c51516)+193)/* var←c44668 */ ))+28) );
pos←v19316.f0 = (word) ( *( (fPt) ((* (ptr) pd300 ))))((* (ptr) (tdd←v12108) ), pd300);
};
pos←v19316.f1 = 0;
SOURCE(32653, 206)
{
W3 var←c47772;
{
W3 var←c0523;
{
W2 var←c47740;
var←c47740.f0 = 0;
var←c47740.f1 = 0;
{
word pd301;
pd301 = (* (( (ptr) (* (( (ptr) gf←c51516)+205)/* var←c47580 */ ))+6) );
(void) ( *( (fPt) ((* (ptr) pd301 ))))((word) &var←c0523, 0, pos←v19316, var←c47740, target←v12220, targetStart←v12248
, targetLen←v12276, case←v12360, match←v18948, interrupt←v19032, pd301);
};
};
var←c47772 = var←c0523;
};
atEnd←v19172 = var←c47772.f2;
at←v19144 = var←c47772.f1;
where←v19116 = var←c47772.f0;
};
};
};
SOURCE(32864, 19)
found←v12404 = (where←v19116 != 0);
SOURCE(32885, 413)
if ((0 != found←v12404)) {
SOURCE(32901, 27)
(* (( (ptr) tSel←v12136)+2) ) = where←v19116;
(* (( (ptr) tSel←v12136)+3) ) = at←v19144;
SOURCE(32930, 37)
(* (( (ptr) tSel←v12136)+11) ) = where←v19116;
(* (( (ptr) tSel←v12136)+12) ) = (MAX((int)(word), 0, (atEnd←v19172 - 1)));
SOURCE(32969, 46)
if ((0 != word←v12332)) {
(* (( (ptr) tSel←v12136)+22) ) = 2;
}
else {
(* (( (ptr) tSel←v12136)+22) ) = 1;
};
SOURCE(33017, 20)
(* (ptr) tSel←v12136 ) = viewer←v12080;
SOURCE(33039, 15)
(* (( (ptr) tSel←v12136)+1) ) = tdd←v12108;
SOURCE(33056, 22)
(* (( (ptr) tSel←v12136)+24) ) = 1;
SOURCE(33080, 26)
(* (( (ptr) tSel←v12136)+26) ) = 0;
SOURCE(33108, 40)
{
word pd302;
pd302 = (* (( (ptr) (* (( (ptr) gf←c51516)+196)/* var←c46172 */ ))+10) );
(void) ( *( (fPt) ((* (ptr) pd302 ))))(viewer←v12080, pd302);
};
SOURCE(33150, 32)
{
word pd303;
pd303 = (* (( (ptr) (* (( (ptr) gf←c51516)+185)/* var←c43804 */ ))+70) );
(void) ( *( (fPt) ((* (ptr) pd303 ))))(tSel←v12136, pd303);
};
SOURCE(33184, 39)
(void) MakeSelection←P1200(tSel←v12136, id←v12164, 0, 0, 1);
SOURCE(33225, 23)
(* (ptr) (* (( (ptr) (* (( (ptr) gf←c51516)+204)/* var←c47420 */ ))+12) ) ) = 1;
SOURCE(33250, 48)
{
word pd304;
pd304 = (* (( (ptr) (* (( (ptr) gf←c51516)+201)/* var←c46652 */ ))+6) );
(void) ( *( (fPt) ((* (ptr) pd304 ))))(viewer←v12080, 0, id←v12164, pd304);
};
};
SOURCE(31322, 1976)
return(found←v12404);
}
static void NoName←Q7860(formal←c0530, formal←c200040, formal←c200041, formal←c200042, formal←c200043)
word formal←c0530;
word formal←c200040;
word formal←c200041;
word formal←c200042;
word formal←c200043;
{
register ptr gf←c0680 = (ptr) &globalframe;
if ((formal←c200041 == (* (( (ptr) (* (( (ptr) gf←c0680)+198)/* var←c46268 */ ))+7) ))) {
{
word reason←v36132;
word index←v36160;
reason←v36132 = (* (ptr) formal←c200043 );
index←v36160 = (* (( (ptr) formal←c200043)+1) );
SOURCE(24108, 17)
(* (ptr) formal←c0530 ) = 2;
(* (( (ptr) formal←c0530)+1) ) = 2;
return;
};
};
(* (ptr) formal←c0530 ) = 0;
(* (( (ptr) formal←c0530)+1) ) = 0;
return;
}
static void NoName←Q7920(formal←c0537, formal←c200036, formal←c200037, formal←c200038, formal←c200039)
word formal←c0537;
word formal←c200036;
word formal←c200037;
word formal←c200038;
word formal←c200039;
{
register ptr gf←c0681 = (ptr) &globalframe;
if ((formal←c200037 == (* (( (ptr) (* (( (ptr) gf←c0681)+198)/* var←c46268 */ ))+7) ))) {
{
word reason←v36044;
word index←v36072;
reason←v36044 = (* (ptr) formal←c200039 );
index←v36072 = (* (( (ptr) formal←c200039)+1) );
SOURCE(23967, 11)
(* (ptr) formal←c0537 ) = 2;
(* (( (ptr) formal←c0537)+1) ) = 2;
return;
};
};
(* (ptr) formal←c0537 ) = 0;
(* (( (ptr) formal←c0537)+1) ) = 0;
return;
}
static void NoName←Q7980(formal←c0542, formal←c200032, formal←c200033, formal←c200034, formal←c200035)
word formal←c0542;
word formal←c200032;
word formal←c200033;
word formal←c200034;
word formal←c200035;
{
if ((formal←c200033 == XR←Unwind)) {
SOURCE(23314, 9)
(void) Cleanup←P6072((word) ((( (bPt) formal←c200032)+24)));
};
(* (ptr) formal←c0542 ) = 0;
(* (( (ptr) formal←c0542)+1) ) = 0;
return;
}
static void NoName←Q8040(formal←c0547, formal←c200028, formal←c200029, formal←c200030, formal←c200031)
word formal←c0547;
word formal←c200028;
word formal←c200029;
word formal←c200030;
word formal←c200031;
{
if ((formal←c200029 == XR←Unwind)) {
SOURCE(21962, 17)
(void) UnlockSel←P300((* ((( (ptr) formal←c200028)+4)) ));
};
(* (ptr) formal←c0547 ) = 0;
(* (( (ptr) formal←c0547)+1) ) = 0;
return;
}
static void NoName←Q8100(formal←c0552, formal←c200024, formal←c200025, formal←c200026, formal←c200027)
word formal←c0552;
word formal←c200024;
word formal←c200025;
word formal←c200026;
word formal←c200027;
{
if ((formal←c200025 == XR←Unwind)) {
SOURCE(20725, 11)
(void) Free←P480((* ((( (ptr) formal←c200024)+5)) ));
};
(* (ptr) formal←c0552 ) = 0;
(* (( (ptr) formal←c0552)+1) ) = 0;
return;
}
static void NoName←Q8160(formal←c0557, formal←c200020, formal←c200021, formal←c200022, formal←c200023)
word formal←c0557;
word formal←c200020;
word formal←c200021;
word formal←c200022;
word formal←c200023;
{
register ptr gf←c0682 = (ptr) &globalframe;
if ((formal←c200021 == XR←Unwind)) {
SOURCE(8344, 37)
{
word pd305;
pd305 = (* (( (ptr) (* (( (ptr) gf←c0682)+189)/* var←c44188 */ ))+9) );
(void) ( *( (fPt) ((* (ptr) pd305 ))))((* ((( (ptr) formal←c200020)+4)) ), pd305);
};
};
(* (ptr) formal←c0557 ) = 0;
(* (( (ptr) formal←c0557)+1) ) = 0;
return;
}
static void NoName←Q8220(formal←c0562, formal←c200016, formal←c200017, formal←c200018, formal←c200019)
word formal←c0562;
word formal←c200016;
word formal←c200017;
word formal←c200018;
word formal←c200019;
{
if ((formal←c200017 == XR←Unwind)) {
SOURCE(4604, 22)
(void) UnlockBothSelections←P180();
};
(* (ptr) formal←c0562 ) = 0;
(* (( (ptr) formal←c0562)+1) ) = 0;
return;
}
static void NoName←Q8280(formal←c0567, formal←c200012, formal←c200013, formal←c200014, formal←c200015)
word formal←c0567;
word formal←c200012;
word formal←c200013;
word formal←c200014;
word formal←c200015;
{
register ptr gf←c0683 = (ptr) &globalframe;
if ((formal←c200013 == XR←Unwind)) {
(void) (XR←MonitorExit((word) (( (bPt) gf←c0683)+16)/* LOCK←v3980 */ ));
};
(* (ptr) formal←c0567 ) = 0;
(* (( (ptr) formal←c0567)+1) ) = 0;
return;
}
static void NoName←Q8340(formal←c0572, formal←c200008, formal←c200009, formal←c200010, formal←c200011)
word formal←c0572;
word formal←c200008;
word formal←c200009;
word formal←c200010;
word formal←c200011;
{
register ptr gf←c0684 = (ptr) &globalframe;
if ((formal←c200009 == XR←Unwind)) {
(void) (XR←MonitorExit((word) (( (bPt) gf←c0684)+16)/* LOCK←v3980 */ ));
};
(* (ptr) formal←c0572 ) = 0;
(* (( (ptr) formal←c0572)+1) ) = 0;
return;
}
static void NoName←Q8400(formal←c0577, formal←c200004, formal←c200005, formal←c200006, formal←c200007)
word formal←c0577;
word formal←c200004;
word formal←c200005;
word formal←c200006;
word formal←c200007;
{
register ptr gf←c0685 = (ptr) &globalframe;
if ((formal←c200005 == XR←Unwind)) {
(void) (XR←MonitorExit((word) (( (bPt) gf←c0685)+16)/* LOCK←v3980 */ ));
};
(* (ptr) formal←c0577 ) = 0;
(* (( (ptr) formal←c0577)+1) ) = 0;
return;
}
static void NoName←Q8460(formal←c0582, formal←c200000, formal←c200001, formal←c200002, formal←c200003)
word formal←c0582;
word formal←c200000;
word formal←c200001;
word formal←c200002;
word formal←c200003;
{
register ptr gf←c0686 = (ptr) &globalframe;
if ((formal←c200001 == XR←Unwind)) {
(void) (XR←MonitorExit((word) (( (bPt) gf←c0686)+16)/* LOCK←v3980 */ ));
};
(* (ptr) formal←c0582 ) = 0;
(* (( (ptr) formal←c0582)+1) ) = 0;
return;
}
static word NoName←Q8520(formal←c0176)
word formal←c0176;
{
W2 var←c0178;
word var←c0177;
/* intermediary proc for a FORK, nArgs: 2, nRets: 0 */
var←c0178 = (* (W2Pt) (( (ptr) formal←c0176)+4) );
var←c0177 = (* (( (ptr) formal←c0176)+2) );
formal←c0176 = XR←ExtensionFree(formal←c0176);
(void) ( *( (fPt) ((* (ptr) var←c0177 ))))(var←c0178.f0, var←c0178.f1, var←c0177);
return(0);
}
/* file: TEditSelectionImpl, module: TEditSelectionImpl, compiled at: November 3, 1992 12:32:13 pm PST */
extern void XR←install←TEditSelectionImpl() {
NoName←Q7140();
}
extern void XR←run←TEditSelectionImpl() { XR←Start(&globalframe); }