/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */ /* time: July 13, 1993 1:25:56 pm PDT */ /* C2C version: April 20, 1993 (sun4) */ /* ref-counting: off */ /* file: GGAlignImpl, module: GGAlignImpl */ /* switches: bcfhklnouw */ #include #include static char versionStamp[] = "@(#)mob_version [691176395,3997848566] GGAlignImpl"; 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 struct {word f0, f1, f2, f3, f4, f5, f6;} W7; typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8; typedef struct {word f0, f1, f2, f3, f4;} W5; typedef struct {W8 f; W2 r;} W10; typedef struct {word f0, f1, f2, f3;} W4; typedef W2 *W2Pt; typedef struct {word f0, f1, f2;} W3; typedef W3 *W3Pt; typedef W5 *W5Pt; typedef struct {W8 f; W8 r;} W16; typedef struct {W16 f; word r;} W17; typedef struct {W8 f; W7 r;} W15; typedef struct {W8 f; W4 r;} W12; typedef struct {W8 f; word r;} W9; typedef struct {W8 f; W6 r;} W14; typedef W4 *W4Pt; #define SOURCE(p, l) /* source p, l */ static float fc115 = 0.0; #define MIN(cast, x, y) ( ( cast x) < ( cast y) ? (x) : (y) ) #define MAX(cast, x, y) ( ( cast x) > ( cast y) ? (x) : (y) ) static float fc133 = 1.0e+3; #define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR_RaiseBoundsFault()) : (idx) ) static float fc145 = 1.0e-3; #define FABS(f, t) ( ((t=(f)) >= (float) 0.0) ? (t) : (- (t)) ) static float fc246 = 72.0; static float fc308 = 90.0; static float fc345 = 1.0; static void NoName_Q9648(); static void GGAlignImpl_P0(); static word CreateTriggerBag_P60(); static void FlushTriggerBag_P120(); static word EmptyTriggerBag_P180(); static word EmptyTriggerSlices_P240(); static word SliceFeatureFound_P5460(); static void CopyTriggerBag_P300(); static void CopyTriggerSlices_P360(); static word CopySliceFeatures_P5520(); static void WalkSliceTriggers_P420(); static word DoForTrigger_P5580(); static word ListSliceTriggers_P480(); static word DoMakeList_P5688(); static word FindFeature_P540(); static void ReplaceFeature_P600(); static void DeleteFeature_P660(); static void AppendFeature_P720(); static word FeatureFromSlice_P780(); static word FeatureFromAnchor_P840(); static void FillStaticTriggerBag_P900(); static void FillDynamicTriggerBag_P960(); static void FillStaticSceneBag_P1020(); static void FillDynamicSceneBag_P1080(); static word CreateAlignBag_P1140(); static void CopyAlignBag_P1200(); static word EmptyAlignBag_P1260(); static void CopySlopeLineTable_P1320(); static word CopyFeatures_P5988(); static word EmptySlopeLines_P1380(); static word FeatureFound_P6048(); static void FlushAlignBag_P1440(); static void TriggersPerSlopeLine_P1500(); static word Count_P6108(); static void FlushSlopeLines_P1560(); static void FillStaticAlignBag_P1620(); static void FillDynamicAlignBag_P1680(); static void AddAlignment_P1740(); static void AddSlopeLine_P1800(); static word JointAddSlopeLine_P1860(); static void WalkSlopeLines_P1920(); static word WalkAction_P6456(); static word ListOfSlopeLines_P1980(); static word ConsSlopeLine_P6564(); static void KeysFromDistance_P2040(); static word KeyFromDistance_P2100(); static void LineThru_P2160(); static word JointAddCircle_P2220(); static word SameCircle_P2280(); static void DistanceFromOrigin_P2340(); static void SegmentAddTwoAngleLines_P2400(); static void SegmentAddDistanceLines_P2460(); static void SetStaticBags_P2520(); static void SetStaticTriggerAndAlignBags_P2580(); static void SetDynamicBags_P2640(); static void StaticToDynamicBags_P2700(); static void DynamicToStaticBags_P2760(); static void SwapOldAndNewAlignBags_P2820(); static void SwapOldAndNewTriggerBags_P2880(); static void SwapOldAndNewSceneBags_P2940(); static word UpdateBagsForAdd_P3000(); static void UpdateBagsForNewSlices_P3060(); static void AddAnchorTrigger_P3120(); static void AddAllHotSlices_P3180(); static word AddHotToTriggerBag_P7248(); static void AddHeuristics_P3240(); static word AddToTriggerBag_P7356(); static word StationaryParts_P3300(); static void StationaryTriggerParts_P3360(); static word RemoveMoving_P3420(); static word DoRemoveMoving_P7464(); static word EmptyFilterLists_P3480(); static word FilterListsFromFilter_P3540(); static void BuiltInFilters_P3600(); static word DoPointFireRule_P7620(); static word DoForSlice_P7680(); static word CreateAnchorTrigger_P3660(); static word AddSliceFeature_P3720(); static word IncrementalFilterSlice_P3780(); static word SplineInPointFeatures_P7788(); static word IncrementalNewTrigger_P3840(); static word IncrementalNewFilter_P3900(); static word DoPointFireRule_P8088(); static word DoForSlice_P8148(); static void RemoveAnchorTrigger_P3960(); static word RemoveEntireHotSlice_P4020(); static void AddFeature_P4080(); static void AddAllSlices_P4140(); static word DoAddSlice_P8400(); static void AddAnchorObject_P4200(); static word PointFireRule_P4260(); static word SegmentFireRule_P4320(); static word AnchorFireRule_P4380(); static word SomeSelectedIsHot_P4440(); static word FindHot_P8796(); static void FindOldSlice_P4500(); static word RemoveFeatureFromList_P4560(); static void CreateLineTable_P4620(); static word LineIsPresent_P4680(); static void TableStatistics_P4740(); static word Count_P8952(); static word CopyLineList_P4800(); static void SaveLineTable_P4860(); static word CopyLines_P9060(); static void RestoreLineTable_P4920(); static void FlushLineTable_P4980(); static word CardFromLine_P5040(); static void AddLineToTable_P5100(); static void DrawFeatureList_P5160(); static void DrawLineAux_P9120(); static void DrawCircleAux_P9180(); static word HasVisibleObjects_P5220(); static void DrawAlignBagRegardless_P5280(); static void MakeFiltersGarbage_P5340(); static void UnlinkBag_P9480(); static word DoUnLink_P9540(); static void Init_P5400(); static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\223\145\303\043\300\372\023\025\003\101\050\000\000"}; static struct {unsigned f; char r[4];} string2 = {131074, "\004\003\000"}; static struct {unsigned f; char r[48];} string3 = {2883632, "\260\006\005\146\151\162\163\164\216\257\300\247\365\203\234\300\047\265\225\046\107\270\005\004\162\145\163\164\214\216\257\300\247\365\203\234\300\047\265\225\046\107\270\261\000\000\000"}; static struct {unsigned f; char r[16];} string4 = {851984, "\257\300\247\365\203\234\300\047\265\225\046\100\310\000\000"}; static struct {unsigned f; char r[16];} string5 = {851984, "\257\300\247\365\203\234\300\047\265\225\046\107\270\000\000"}; static struct {unsigned f; char r[4];} string6 = {131074, "\003\001\000"}; static struct {unsigned f; char r[4];} string7 = {131076, "\216\251\000"}; static struct {unsigned f; char r[4];} string8 = {65537, "\001\000\000"}; static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\241\203\324\306\300\306\173\161\152\100\200\000\000"}; static struct {unsigned f; char r[16];} string10 = {851984, "\257\300\223\145\303\043\300\372\023\025\003\101\064\000\000"}; static struct {unsigned f; char r[4];} string11 = {131074, "\004\037\000"}; static struct {unsigned f; char r[16];} string12 = {851984, "\257\300\223\145\303\043\300\372\023\025\003\101\144\000\000"}; static struct {unsigned f; char r[4];} string13 = {131074, "\004\005\000"}; static struct {unsigned f; char r[16];} string14 = {917520, "\216\257\300\363\223\326\161\300\017\164\046\072\104\350\000"}; static struct {unsigned f; char r[48];} string15 = {2883632, "\260\006\005\146\151\162\163\164\216\257\300\241\203\324\306\300\306\173\161\152\100\200\005\004\162\145\163\164\214\216\257\300\241\203\324\306\300\306\173\161\152\100\200\261\000\000\000"}; static struct {unsigned f; char r[44];} string16 = {2752556, "\260\006\005\146\151\162\163\164\257\300\247\031\224\326\300\123\162\224\023\100\164\005\004\162\145\163\164\214\257\300\247\031\224\326\300\123\162\224\023\100\164\261\000"}; static struct {unsigned f; char r[4];} string17 = {131074, "\003\002\000"}; static struct {unsigned f; char r[16];} string18 = {851984, "\257\300\223\145\303\043\300\372\023\025\003\101\174\000\000"}; static struct {unsigned f; char r[16];} string19 = {851984, "\257\300\223\145\303\043\300\372\023\025\003\100\370\000\000"}; static struct {unsigned f; char r[4];} string20 = {196611, "\004@`"}; static struct {unsigned f; char r[20];} string21 = {1179668, "\260\006\005\146\151\162\163\164\256\005\004\162\145\163\164\214\256\261\000"}; static struct {unsigned f; char r[16];} string22 = {851984, "\257\300\314\006\055\020\300\004\067\017\043\100\164\000\000"}; static struct {unsigned f; char r[4];} string23 = {131074, "\004\017\000"}; static struct {unsigned f; char r[48];} string24 = {2883632, "\260\006\005\146\151\162\163\164\216\257\300\247\365\203\234\300\047\265\225\046\100\310\005\004\162\145\163\164\214\216\257\300\247\365\203\234\300\047\265\225\046\100\310\261\000\000\000"}; static struct {unsigned f; char r[16];} string25 = {851984, "\257\300\247\365\203\234\300\047\265\225\046\106\354\000\000"}; static struct {unsigned f; char r[8];} string26 = {262148, "\004\200@\034\000\000\000"}; static struct {unsigned f; char r[8];} string27 = {262152, "Traj\000\000\000"}; static struct {unsigned f; char r[20];} string28 = {1245204, "DynamicToStaticBags"}; static struct {unsigned f; char r[20];} string29 = {1245204, "StaticToDynamicBags"}; static struct {unsigned f; char r[12];} string30 = {524300, "CaretPos\000\000\000"}; static struct {unsigned f; char r[16];} string31 = {917520, "SetDynamicBags\000"}; static struct {unsigned f; char r[12];} string32 = {524300, "Gargoyle\000\000\000"}; static struct {unsigned f; char r[16];} string33 = {917520, "BuiltInFilters\000"}; static struct {unsigned f; char r[16];} string34 = {851984, "SetStaticBags\000\000"}; static struct {unsigned f; char r[28];} string35 = {1703964, "Unimplemented feature type\000"}; static struct {unsigned f; char r[8];} string36 = {262152, "Drag\000\000\000"}; static struct {unsigned f; char r[16];} string37 = {851984, "\257\300\051\062\203\313\300\356\112\123\366\100\164\000\000"}; static struct {unsigned f; char r[16];} string38 = {983055, "\006\005\024\001\030\001\034\001\040\001\100\200\004\103\377"}; static struct {unsigned f; char r[16];} string39 = {851984, "\257\300\223\215\300\016\300\070\141\304\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string40 = {851984, "\257\300\006<7[\300;CV\364@h\000\000"}; static struct {unsigned f; char r[16];} string41 = {851984, "\257\300\244\024\137\127\300\061\033\201\312\100\164\000\000"}; static struct {unsigned f; char r[16];} string42 = {851984, "\257\300\322\334\347\304\300\124\107\000\027\100\150\000\000"}; static struct {unsigned f; char r[16];} string43 = {851984, "\257\300\223\031\346\162\300\275\253\133\335\100\150\000\000"}; static struct {unsigned f; char r[16];} string44 = {851984, "\257\300\346\140\152\135\300\203\202\276\373\100\150\000\000"}; static struct {unsigned f; char r[16];} string45 = {851984, "\257\300IKM\275\300Y\0222&@h\000\000"}; static struct {unsigned f; char r[16];} string46 = {851984, "\257\300\301\241\007\150\300\032\111\265\237\100\150\000\000"}; static struct {unsigned f; char r[16];} string47 = {851984, "\257\300\207\142\037\125\300\254\056\012\025\100\150\000\000"}; static struct {unsigned f; char r[16];} string48 = {851984, "\257\300\347\101\365\007\300\150\102\366\020\100\150\000\000"}; static struct {unsigned f; char r[16];} string49 = {851984, "\257\300\011\245\206\305\300\112\326\356\245\100\150\000\000"}; static struct {unsigned f; char r[16];} string50 = {851984, "\257\300\261\002\056\176\300\055\321\222\125\100\150\000\000"}; static struct {unsigned f; char r[16];} string51 = {851984, "\257\300\235\036\354\311\300\234\133\201\260\100\150\000\000"}; static struct {unsigned f; char r[16];} string52 = {851984, "\257\300U$)\337\300Xo9\243@t\000\000"}; static struct {unsigned f; char r[16];} string53 = {851984, "\257\300\336\025\013\356\300\216\115\352\271\100\150\000\000"}; static struct {unsigned f; char r[16];} string54 = {851984, "\257\300\206\055\004\241\300\261\334\001\116\100\150\000\000"}; static struct {unsigned f; char r[16];} string55 = {851984, "\257\300\050\310\006\072\300\004\273\314\121\100\150\000\000"}; static struct {unsigned f; char r[16];} string56 = {851984, "\257\300\370\132\042\205\300\045\133\011\125\100\150\000\000"}; static struct {unsigned f; char r[16];} string57 = {851984, "\257\300\074\177\166\242\300\203\113\217\044\100\150\000\000"}; static struct {unsigned f; char r[16];} string58 = {851984, "\257\300\170\064\225\306\300\207\372\245\271\100\150\000\000"}; static struct {unsigned f; char r[16];} string59 = {851984, "\257\300\121\117\377\026\300\315\013\026\004\100\150\000\000"}; static struct {unsigned f; char r[16];} string60 = {851984, "\257\300\103\306\166\071\300\047\126\012\237\100\150\000\000"}; static struct {unsigned f; char r[16];} string61 = {851984, "\257\300\240\236\274\315\300\111\163\325\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string62 = {851984, "\257\300\246\205\220\035\300\344\000\142\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string63 = {851984, "\257\300\245\247\302\156\300\052\156\325\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string64 = {851984, "\257\300\242\221\264\046\300\105\142\142\023\100\150\000\000"}; static struct {unsigned f; char r[16];} string65 = {851984, "\257\300\004\142\347\110\300\363\053\254\345\100\150\000\000"}; static struct {unsigned f; char r[16];} string66 = {851984, "\257\300\136\002\175\264\300\016\031\370\241\100\150\000\000"}; static struct {unsigned f; char r[16];} string67 = {851984, "\257\300\223\145\303\043\300\372\023\025\003\100\150\000\000"}; static struct {unsigned f; char r[28];} string68 = {1572892, "\211\014\013\104\162\141\147\104\141\164\141\117\142\152\300\223\145\303\043\300\372\023\025\003\000\000\000"}; static struct {unsigned f; char r[16];} string69 = {851984, "\257\300\333\030\273\126\300\173\036\033\131\100\200\000\000"}; static struct {unsigned f; char r[20];} string70 = {1114129, "\006\006\050\001\054\001\060\001\064\001\100\100\001\100\110\004\030\000\000"}; static struct {unsigned f; char r[28];} string71 = {1769500, "\211\017\016\122\145\146\162\145\163\150\104\141\164\141\117\142\152\300\223\145\303\043\300\372\023\025\003"}; static struct {unsigned f; char r[16];} string72 = {851984, "\257\300\026\355\016\312\300\171\207\041\370\100\200\000\000"}; static struct {unsigned f; char r[44];} string73 = {2752554, "\006\020\000\001\014\001\020\001\024\001\030\001\034\001\070\001\074\001\100\100\001\100\104\001\100\110\001\100\114\001\100\120\001\100\124\001\100\130\001\100\144\001\000"}; static struct { word f0[45]; word f45; word f46; word f47; word f48; word f49; word f50; word f51; word f52; word f53; word f54; word f55; word f56; word f57; word f58; word f59; word f60; word f61; word f62; word f63; word f64; word f65; word f66; word f67; word f68; word f69; word f70; word f71; word f72; word f73; word f74; word f75; word f76; word f77; word f78; word f79; word f80; word f81; word f82; word f83; word f84; word f85; word f86; word f87; word f88; word f89; word f90; word f91; word f92; word f93; word f94; word f95; word f96; word f97; word f98; word f99; word f100; word f101; word f102; word f103; word f104; word f105; word f106; word f107; word f108; word f109; word f110; word f111; 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; word f182; word f183; word f184; word f185; word f186; word f187; word f188; word f189; word f190; word f191; word f192; word f193; word f194; word f195; word f196; word f197; word f198; word f199; word f200; word f201; word f202; word f203; word f204; word f205; word f206; word f207; word f208; word f209; word f210; word f211; word f212; word f213; word f214; word f215; word f216; word f217; word f218; word f219; word f220; word f221; word f222; word f223; word f224; word f225; word f226[30]; } globalframe = { {0}, (word) Init_P5400, 0, (word) MakeFiltersGarbage_P5340, 0, (word) DrawAlignBagRegardless_P5280, 0, (word) HasVisibleObjects_P5220, 0, (word) DrawFeatureList_P5160, 0, (word) AddLineToTable_P5100, 0, (word) CardFromLine_P5040, 0, (word) FlushLineTable_P4980, 0, (word) RestoreLineTable_P4920, 0, (word) SaveLineTable_P4860, 0, (word) CopyLineList_P4800, 0, (word) TableStatistics_P4740, 0, (word) LineIsPresent_P4680, 0, (word) CreateLineTable_P4620, 0, (word) RemoveFeatureFromList_P4560, 0, (word) FindOldSlice_P4500, 0, (word) SomeSelectedIsHot_P4440, 0, (word) AnchorFireRule_P4380, 0, (word) SegmentFireRule_P4320, 0, (word) PointFireRule_P4260, 0, (word) AddAnchorObject_P4200, 0, (word) AddAllSlices_P4140, 0, (word) AddFeature_P4080, 0, (word) RemoveEntireHotSlice_P4020, 0, (word) RemoveAnchorTrigger_P3960, 0, (word) IncrementalNewFilter_P3900, 0, (word) IncrementalNewTrigger_P3840, 0, (word) IncrementalFilterSlice_P3780, 0, (word) AddSliceFeature_P3720, 0, (word) CreateAnchorTrigger_P3660, 0, (word) BuiltInFilters_P3600, 0, (word) FilterListsFromFilter_P3540, 0, (word) EmptyFilterLists_P3480, 0, (word) RemoveMoving_P3420, 0, (word) StationaryTriggerParts_P3360, 0, (word) StationaryParts_P3300, 0, (word) AddHeuristics_P3240, 0, (word) AddAllHotSlices_P3180, 0, (word) AddAnchorTrigger_P3120, 0, (word) UpdateBagsForNewSlices_P3060, 0, (word) UpdateBagsForAdd_P3000, 0, (word) SwapOldAndNewSceneBags_P2940, 0, (word) SwapOldAndNewTriggerBags_P2880, 0, (word) SwapOldAndNewAlignBags_P2820, 0, (word) DynamicToStaticBags_P2760, 0, (word) StaticToDynamicBags_P2700, 0, (word) SetDynamicBags_P2640, 0, (word) SetStaticTriggerAndAlignBags_P2580, 0, (word) SetStaticBags_P2520, 0, (word) SegmentAddDistanceLines_P2460, 0, (word) SegmentAddTwoAngleLines_P2400, 0, (word) DistanceFromOrigin_P2340, 0, (word) SameCircle_P2280, 0, (word) JointAddCircle_P2220, 0, (word) LineThru_P2160, 0, (word) KeyFromDistance_P2100, 0, (word) KeysFromDistance_P2040, 0, (word) ListOfSlopeLines_P1980, 0, (word) WalkSlopeLines_P1920, 0, (word) JointAddSlopeLine_P1860, 0, (word) AddSlopeLine_P1800, 0, (word) AddAlignment_P1740, 0, (word) FillDynamicAlignBag_P1680, 0, (word) FillStaticAlignBag_P1620, 0, (word) FlushSlopeLines_P1560, 0, (word) TriggersPerSlopeLine_P1500, 0, (word) FlushAlignBag_P1440, 0, (word) EmptySlopeLines_P1380, 0, (word) CopySlopeLineTable_P1320, 0, (word) EmptyAlignBag_P1260, 0, (word) CopyAlignBag_P1200, 0, (word) CreateAlignBag_P1140, 0, (word) FillDynamicSceneBag_P1080, 0, (word) FillStaticSceneBag_P1020, 0, (word) FillDynamicTriggerBag_P960, 0, (word) FillStaticTriggerBag_P900, 0, (word) FeatureFromAnchor_P840, 0, (word) FeatureFromSlice_P780, 0, (word) AppendFeature_P720, 0, (word) DeleteFeature_P660, 0, (word) ReplaceFeature_P600, 0, (word) FindFeature_P540, 0, (word) ListSliceTriggers_P480, 0, (word) WalkSliceTriggers_P420, 0, (word) CopyTriggerSlices_P360, 0, (word) CopyTriggerBag_P300, 0, (word) EmptyTriggerSlices_P240, 0, (word) EmptyTriggerBag_P180, 0, (word) FlushTriggerBag_P120, 0, (word) CreateTriggerBag_P60, 0, (word) GGAlignImpl_P0, {0} }; static void NoName_Q9648() { register ptr gf_c0901 = (ptr) &globalframe; word var_c77988; (* (( (ptr) gf_c0901)+13) ) = (word) XR_GetTypeIndex((word) &string1, 0, (word) &string2); (* (( (ptr) gf_c0901)+14) ) = (word) XR_GetTypeIndex((word) &string3, 0, (word) &string2); (* (( (ptr) gf_c0901)+15) ) = (word) XR_GetTypeIndex((word) &string4, 0, (word) &string2); (* (( (ptr) gf_c0901)+16) ) = (word) XR_GetTypeIndex((word) &string5, 0, (word) &string6); (* (( (ptr) gf_c0901)+17) ) = (word) XR_GetTypeIndex((word) &string7, 0, (word) &string8); (* (( (ptr) gf_c0901)+18) ) = (word) XR_GetTypeIndexS((word) (&string9)); (* (( (ptr) gf_c0901)+20) ) = (word) XR_GetTypeIndex((word) &string10, 0, (word) &string11); (* (( (ptr) gf_c0901)+21) ) = (word) XR_GetTypeIndex((word) &string12, 0, (word) &string13); (* (( (ptr) gf_c0901)+23) ) = (word) XR_GetTypeIndex((word) &string14, 0, (word) &string8); (* (( (ptr) gf_c0901)+24) ) = (word) XR_GetTypeIndex((word) &string15, 0, (word) &string2); (* (( (ptr) gf_c0901)+25) ) = (word) XR_GetTypeIndex((word) &string16, 0, (word) &string17); (* (( (ptr) gf_c0901)+26) ) = (word) XR_GetTypeIndex((word) &string18, 0, (word) &string2); (* (( (ptr) gf_c0901)+27) ) = (word) XR_GetTypeIndex((word) &string19, 0, (word) &string20); (* (( (ptr) gf_c0901)+28) ) = (word) XR_GetTypeIndex((word) &string21, 0, (word) &string6); (* (( (ptr) gf_c0901)+29) ) = (word) XR_GetTypeIndex((word) &string22, 0, (word) &string23); (* (( (ptr) gf_c0901)+30) ) = (word) XR_GetTypeIndex((word) &string24, 0, (word) &string2); (* (( (ptr) gf_c0901)+31) ) = (word) XR_GetTypeIndex((word) &string25, 0, (word) &string26); (* (ptr) (( (bPt) gf_c0901)+128) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0901)+17) ), (word) &string27); (* (ptr) (( (bPt) gf_c0901)+132) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0901)+17) ), (word) &string28); (* (ptr) (( (bPt) gf_c0901)+136) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0901)+17) ), (word) &string29); (* (ptr) (( (bPt) gf_c0901)+140) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0901)+17) ), (word) &string30); (* (ptr) (( (bPt) gf_c0901)+144) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0901)+17) ), (word) &string31); (* (ptr) (( (bPt) gf_c0901)+148) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0901)+17) ), (word) &string32); (* (ptr) (( (bPt) gf_c0901)+152) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0901)+17) ), (word) &string33); (* (ptr) (( (bPt) gf_c0901)+156) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0901)+17) ), (word) &string34); (* (ptr) (( (bPt) gf_c0901)+160) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0901)+23) ), (word) &string35); (* (ptr) (( (bPt) gf_c0901)+164) ) = (word) XR_GetRefLiteral((* (( (ptr) gf_c0901)+17) ), (word) &string36); (void) XR_DeclareGlobalFrame((word) "GGAlignImpl", &globalframe, (word) XR_GetTypeIndex((word) &string37, 0, (word) &string38) , (word) (( (bPt) gf_c0901)+900)/* var_c71012 */ ); var_c77988 = (word) XR_ImportInterface((word) "CardTab", (word) XR_GetTypeIndexS((word) (&string39)), 12); (* (( (ptr) gf_c0901)+234)/* var_c72196 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 67896579); (void) XR_ImportProcS(var_c77988, 134742786); (void) XR_ImportProcS(var_c77988, 67896835); (void) XR_ImportProcS(var_c77988, 67635458); (void) XR_ImportProcS(var_c77988, 264193); (void) XR_ImportProcS(var_c77988, 67371265); var_c77988 = (word) XR_ImportInterface((word) "CodeTimer", (word) XR_GetTypeIndexS((word) (&string40)), 21); (* (( (ptr) gf_c0901)+241)/* var_c73860 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 526850); (void) XR_ImportProcS(var_c77988, 526338); var_c77988 = (word) XR_ImportInterface((word) "Draw2d", (word) XR_GetTypeIndexS((word) (&string41)), 15); (* (( (ptr) gf_c0901)+251)/* var_c77668 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 264193); (void) XR_ImportProcS(var_c77988, 67634946); var_c77988 = (word) XR_ImportInterface((word) "Feedback", (word) XR_GetTypeIndexS((word) (&string42)), 25); (* (( (ptr) gf_c0901)+227)/* var_c71044 */ ) = var_c77988; var_c77988 = (word) XR_ImportInterface((word) "GGCaret", (word) XR_GetTypeIndexS((word) (&string43)), 13); (* (( (ptr) gf_c0901)+248)/* var_c75556 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 134482945); (void) XR_ImportProcS(var_c77988, 134482689); (void) XR_ImportProcS(var_c77988, 67371777); var_c77988 = (word) XR_ImportInterface((word) "GGCircleCache", (word) XR_GetTypeIndexS((word) (&string44)), 6); (* (( (ptr) gf_c0901)+253)/* var_c77828 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 524546); (void) XR_ImportProcS(var_c77988, 1049859); (void) XR_ImportProcS(var_c77988, 67633666); var_c77988 = (word) XR_ImportInterface((word) "GGCircles", (word) XR_GetTypeIndexS((word) (&string45)), 29); (* (( (ptr) gf_c0901)+237)/* var_c73284 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 67896066); var_c77988 = (word) XR_ImportInterface((word) "GGParent", (word) XR_GetTypeIndexS((word) (&string46)), 83); (* (( (ptr) gf_c0901)+244)/* var_c74180 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 67391489); (void) XR_ImportProcS(var_c77988, 68176388); var_c77988 = (word) XR_ImportInterface((word) "GGRefresh", (word) XR_GetTypeIndexS((word) (&string47)), 30); (* (( (ptr) gf_c0901)+242)/* var_c74020 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 268289); (void) XR_ImportProcS(var_c77988, 529410); (void) XR_ImportProcS(var_c77988, 268033); (void) XR_ImportProcS(var_c77988, 529666); var_c77988 = (word) XR_ImportInterface((word) "GGScene", (word) XR_GetTypeIndexS((word) (&string48)), 50); (* (( (ptr) gf_c0901)+247)/* var_c74724 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 68164356); (void) XR_ImportProcS(var_c77988, 68426757); var_c77988 = (word) XR_ImportInterface((word) "GGSelect", (word) XR_GetTypeIndexS((word) (&string49)), 23); (* (( (ptr) gf_c0901)+243)/* var_c74084 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 67898883); (void) XR_ImportProcS(var_c77988, 67637250); var_c77988 = (word) XR_ImportInterface((word) "GGSequence", (word) XR_GetTypeIndexS((word) (&string50)), 58); (* (( (ptr) gf_c0901)+245)/* var_c74276 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 67634178); (void) XR_ImportProcS(var_c77988, 67634434); (void) XR_ImportProcS(var_c77988, 67637250); var_c77988 = (word) XR_ImportInterface((word) "GGShapes", (word) XR_GetTypeIndexS((word) (&string51)), 20); (* (( (ptr) gf_c0901)+252)/* var_c77764 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 2098949); (void) XR_ImportProcS(var_c77988, 526594); var_c77988 = (word) XR_ImportInterface((word) "GGSlice", (word) XR_GetTypeIndexS((word) (&string52)), 128); (* (( (ptr) gf_c0901)+233)/* var_c71972 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 279297); (void) XR_ImportProcS(var_c77988, 67634178); var_c77988 = (word) XR_ImportInterface((word) "GGSliceOps", (word) XR_GetTypeIndexS((word) (&string53)), 73); (* (( (ptr) gf_c0901)+232)/* var_c71940 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 336078338); (void) XR_ImportProcS(var_c77988, 67379713); (void) XR_ImportProcS(var_c77988, 532738); (void) XR_ImportProcS(var_c77988, 270539780); (void) XR_ImportProcS(var_c77988, 67639810); (void) XR_ImportProcS(var_c77988, 67376897); (void) XR_ImportProcS(var_c77988, 67377153); (void) XR_ImportProcS(var_c77988, 67640066); (void) XR_ImportProcS(var_c77988, 67901699); var_c77988 = (word) XR_ImportInterface((word) "GGState", (word) XR_GetTypeIndexS((word) (&string54)), 119); (* (( (ptr) gf_c0901)+240)/* var_c73828 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 67382017); (void) XR_ImportProcS(var_c77988, 134481921); (void) XR_ImportProcS(var_c77988, 268698369); (void) XR_ImportProcS(var_c77988, 67375617); (void) XR_ImportProcS(var_c77988, 67384833); (void) XR_ImportProcS(var_c77988, 67394561); var_c77988 = (word) XR_ImportInterface((word) "GGTraj", (word) XR_GetTypeIndexS((word) (&string55)), 55); (* (( (ptr) gf_c0901)+246)/* var_c74468 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 67379969); (void) XR_ImportProcS(var_c77988, 67379457); var_c77988 = (word) XR_ImportInterface((word) "GGUtility", (word) XR_GetTypeIndexS((word) (&string56)), 42); (* (( (ptr) gf_c0901)+230)/* var_c71428 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 67634434); (void) XR_ImportProcS(var_c77988, 67372033); (void) XR_ImportProcS(var_c77988, 135004931); var_c77988 = (word) XR_ImportInterface((word) "Imager", (word) XR_GetTypeIndexS((word) (&string57)), 84); (* (( (ptr) gf_c0901)+250)/* var_c77636 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 536578); (void) XR_ImportProcS(var_c77988, 540674); var_c77988 = (word) XR_ImportInterface((word) "ImagerBackdoor", (word) XR_GetTypeIndexS((word) (&string58)), 42); (* (( (ptr) gf_c0901)+228)/* var_c71076 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 67641602); var_c77988 = (word) XR_ImportInterface((word) "ImagerTransformation", (word) XR_GetTypeIndexS((word) (&string59)), 55); (* (( (ptr) gf_c0901)+249)/* var_c77604 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 269756930); var_c77988 = (word) XR_ImportInterface((word) "Lines2d", (word) XR_GetTypeIndexS((word) (&string60)), 50); (* (( (ptr) gf_c0901)+235)/* var_c72836 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 67635714); (void) XR_ImportProcS(var_c77988, 67635458); (void) XR_ImportProcS(var_c77988, 68158466); (void) XR_ImportProcS(var_c77988, 67897090); (void) XR_ImportProcS(var_c77988, 67904258); (void) XR_ImportProcS(var_c77988, 67896835); var_c77988 = (word) XR_ImportInterface((word) "Process", (word) XR_GetTypeIndexS((word) (&string61)), 22); (* (( (ptr) gf_c0901)+231)/* var_c71716 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 3584); var_c77988 = (word) XR_ImportInterface((word) "Real", (word) XR_GetTypeIndexS((word) (&string62)), 11); (* (( (ptr) gf_c0901)+236)/* var_c73156 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 67372033); var_c77988 = (word) XR_ImportInterface((word) "RealFns", (word) XR_GetTypeIndexS((word) (&string63)), 36); (* (( (ptr) gf_c0901)+238)/* var_c73444 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 67372801); (void) XR_ImportProcS(var_c77988, 67373313); (void) XR_ImportProcS(var_c77988, 67904259); var_c77988 = (word) XR_ImportInterface((word) "RefTab", (word) XR_GetTypeIndexS((word) (&string64)), 16); (* (( (ptr) gf_c0901)+229)/* var_c71140 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 67634946); (void) XR_ImportProcS(var_c77988, 67896579); (void) XR_ImportProcS(var_c77988, 134742786); (void) XR_ImportProcS(var_c77988, 67896835); (void) XR_ImportProcS(var_c77988, 67635458); (void) XR_ImportProcS(var_c77988, 264193); (void) XR_ImportProcS(var_c77988, 67895555); var_c77988 = (word) XR_ImportInterface((word) "Vectors2d", (word) XR_GetTypeIndexS((word) (&string65)), 21); (* (( (ptr) gf_c0901)+239)/* var_c73540 */ ) = var_c77988; (void) XR_ImportProcS(var_c77988, 67633665); var_c77988 = (word) XR_ExportInterface((word) "GGAlign", (word) XR_GetTypeIndexS((word) (&string66)), 46); (* (( (ptr) gf_c0901)+254)/* var_c78020 */ ) = var_c77988; (void) XR_ExportVar(var_c77988, 0, (word) (( (bPt) gf_c0901)+20)/* emptyTriggerBag_v5800 */ ); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+892)/* var_c70980 */ , 67109120, (word) "CreateTriggerBag"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+884)/* var_c70948 */ , 262657, (word) "FlushTriggerBag"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+876)/* var_c70916 */ , 67371777, (word) "EmptyTriggerBag"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+860)/* var_c70852 */ , 525314, (word) "CopyTriggerBag"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+844)/* var_c70788 */ , 525570, (word) "WalkSliceTriggers"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+796)/* var_c70596 */ , 67634690, (word) "FeatureFromSlice"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+788)/* var_c70564 */ , 67372801, (word) "FeatureFromAnchor"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+780)/* var_c70532 */ , 1050628, (word) "FillStaticTriggerBag") ; (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+772)/* var_c70500 */ , 2623750, (word) "FillDynamicTriggerBag") ; (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+764)/* var_c70468 */ , 526850, (word) "FillStaticSceneBag"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+756)/* var_c70436 */ , 2099972, (word) "FillDynamicSceneBag") ; (void) XR_ExportVar(var_c77988, 12, (word) (( (bPt) gf_c0901)+24)/* emptyAlignBag_v6332 */ ); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+748)/* var_c70404 */ , 67112192, (word) "CreateAlignBag"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+708)/* var_c70244 */ , 265729, (word) "FlushAlignBag"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+732)/* var_c70340 */ , 67374849, (word) "EmptyAlignBag"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+652)/* var_c70020 */ , 68161539, (word) "JointAddSlopeLine"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+644)/* var_c69988 */ , 528642, (word) "WalkSlopeLines"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+604)/* var_c69828 */ , 68162051, (word) "JointAddCircle"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+580)/* var_c69732 */ , 136057605, (word) "SegmentAddTwoAngleLines") ; (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+572)/* var_c69700 */ , 136057861, (word) "SegmentAddDistanceLines") ; (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+684)/* var_c70148 */ , 1316101, (word) "FillStaticAlignBag"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+676)/* var_c70116 */ , 1578502, (word) "FillDynamicAlignBag") ; (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+564)/* var_c69668 */ , 268033, (word) "SetStaticBags"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+556)/* var_c69636 */ , 268289, (word) "SetStaticTriggerAndAlignBags") ; (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+548)/* var_c69604 */ , 530690, (word) "SetDynamicBags"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+540)/* var_c69572 */ , 530946, (word) "StaticToDynamicBags"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+532)/* var_c69540 */ , 531202, (word) "DynamicToStaticBags"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+500)/* var_c69412 */ , 68164612, (word) "UpdateBagsForAdd"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+492)/* var_c69380 */ , 531714, (word) "UpdateBagsForNewSlices") ; (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+420)/* var_c69092 */ , 1056516, (word) "BuiltInFilters"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+412)/* var_c69060 */ , 67641346, (word) "CreateAnchorTrigger") ; (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+404)/* var_c69028 */ , 67641602, (word) "AddSliceFeature"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+388)/* var_c68964 */ , 68166404, (word) "IncrementalNewTrigger") ; (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+380)/* var_c68932 */ , 68428805, (word) "IncrementalNewFilter") ; (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+372)/* var_c68900 */ , 271617, (word) "RemoveAnchorTrigger"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+364)/* var_c68868 */ , 67642882, (word) "RemoveEntireHotSlice") ; (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+284)/* var_c68548 */ , 272385, (word) "CreateLineTable"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+236)/* var_c68356 */ , 272641, (word) "FlushLineTable"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+204)/* var_c68228 */ , 67381761, (word) "HasVisibleObjects"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+212)/* var_c68260 */ , 797443, (word) "DrawFeatureList"); (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+196)/* var_c68196 */ , 797699, (word) "DrawAlignBagRegardless") ; (void) XR_ExportProcS(var_c77988, (word) (( (bPt) gf_c0901)+188)/* var_c68164 */ , 273665, (word) "MakeFiltersGarbage"); var_c77988 = (word) XR_ExportInterface((word) "GGInterfaceTypes", (word) XR_GetTypeIndexS((word) (&string67)), 6); (* (( (ptr) gf_c0901)+255)/* var_c78052 */ ) = var_c77988; (void) XR_ExportType((word) "DragDataObj", (word) XR_GetTypeIndexS((word) (&string68)), (word) XR_GetTypeIndex((word) &string69, 0, (word) &string70) ); (void) XR_ExportType((word) "RefreshDataObj", (word) XR_GetTypeIndexS((word) (&string71)), (word) XR_GetTypeIndex((word) &string72, 0, (word) &string73) ); } static void GGAlignImpl_P0(formal_c0132, formal_c0131) word formal_c0132; word formal_c0131; { register ptr gf_c78084 = (ptr) &globalframe; /* GGAlignImpl: */ SOURCE(438, 47719) SOURCE(3347, 17) (* (( (ptr) gf_c78084)+4)/* Problem_v5688 */ ) = (* (ptr) (* (( (ptr) (* (( (ptr) gf_c78084)+227)/* var_c71044 */ ))+28) ) ); SOURCE(42115, 66) { word pd74; pd74 = (* (( (ptr) (* (( (ptr) gf_c78084)+228)/* var_c71076 */ ))+37) ); (* (( (ptr) gf_c78084)+7)/* alignmentColor_v8040 */ ) = (word) ( *( (fPt) ((* (ptr) pd74 ))))(51765, 0, pd74); }; SOURCE(42183, 64) { word pd75; pd75 = (* (( (ptr) (* (( (ptr) gf_c78084)+228)/* var_c71076 */ ))+37) ); (* (( (ptr) gf_c78084)+8)/* checkerColor_v8068 */ ) = (word) ( *( (fPt) ((* (ptr) pd75 ))))(42405, 0, pd75); }; SOURCE(42250, 21) (* (( (ptr) gf_c78084)+9)/* useCache_v8096 */ ) = 1; SOURCE(48151, 6) (void) Init_P5400(); } static word CreateTriggerBag_P60() { register ptr gf_c78116 = (ptr) &globalframe; word triggerBag_v8712; /* CreateTriggerBag: */ SOURCE(3550, 151) SOURCE(3550, 151) triggerBag_v8712 = 0; SOURCE(3620, 81) { word var_c71108; word var_c71172; { word pd76; pd76 = (* (( (ptr) (* (( (ptr) gf_c78116)+229)/* var_c71140 */ ))+5) ); var_c71108 = (word) ( *( (fPt) ((* (ptr) pd76 ))))(211, 0, 0, pd76); }; var_c71172 = XR_NewObject(8, (* (( (ptr) gf_c78116)+13) )); (* (ptr) var_c71172 ) = var_c71108; triggerBag_v8712 = var_c71172; }; SOURCE(3550, 151) return(triggerBag_v8712); } static void FlushTriggerBag_P120(triggerBag_v8772) word triggerBag_v8772; { register ptr gf_c78148 = (ptr) &globalframe; /* FlushTriggerBag: */ SOURCE(3707, 114) SOURCE(3765, 31) { word pd77; pd77 = (* (( (ptr) (* (( (ptr) gf_c78148)+229)/* var_c71140 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd77 ))))((* (ptr) (triggerBag_v8772) ), pd77); }; SOURCE(3798, 23) (* (( (ptr) triggerBag_v8772)+1) ) = 0; } static word EmptyTriggerBag_P180(triggerBag_v8832) word triggerBag_v8832; { word var_c8876; /* EmptyTriggerBag: */ SOURCE(3827, 141) SOURCE(3900, 68) { word tc78; if ((0 != (word) EmptyTriggerSlices_P240(triggerBag_v8832))) { tc78 = (word) (unsigned) ((* (( (ptr) triggerBag_v8832)+1) ) == 0); } else { tc78 = (word) (unsigned) 0; }; return(tc78); }; } static word EmptyTriggerSlices_P240(triggerBag_v8936) word triggerBag_v8936; { W6 var_c78180; register ptr gf_c78212 = (ptr) &globalframe; word empty_v8980; /* declaration of var_c71236 skipped */ /* EmptyTriggerSlices: */ SOURCE(3974, 232) { word tmpAddr79; tmpAddr79 = (word) (( (ptr) &var_c78180)+4)/* var_c71236 */ ; (* (ptr) tmpAddr79 ) = ( ((word) (fPt) SliceFeatureFound_P5460) ); (* (( (ptr) tmpAddr79) + 1) ) = 1; }; SOURCE(3974, 232) empty_v8980 = 0; SOURCE(4144, 62) { word pd80; pd80 = (* (( (ptr) (* (( (ptr) gf_c78212)+229)/* var_c71140 */ ))+13) ); empty_v8980 = (unsigned) (0 == (word) ( *( (fPt) ((* (ptr) pd80 ))))((* (ptr) triggerBag_v8936 ), (word) (( (bPt) &var_c78180)+16) /* var_c71236 */ , pd80)); }; SOURCE(3974, 232) return(empty_v8980); } static word SliceFeatureFound_P5460(key_v46056, val_v46084, formal_c78244) word key_v46056; word val_v46084; word formal_c78244; { word quit_v46128; formal_c78244 = (formal_c78244 - 16); /* SliceFeatureFound: */ SOURCE(4058, 81) SOURCE(4058, 81) quit_v46128 = 0; SOURCE(4103, 18) if ((val_v46084 == 0)) { SOURCE(4121, 5) (void) XR_RaiseUnnamedError(); }; SOURCE(4128, 11) quit_v46128 = 1; SOURCE(4058, 81) return(quit_v46128); } static void CopyTriggerBag_P300(to_v9040, from_v9068) word to_v9040; word from_v9068; { /* CopyTriggerBag: */ SOURCE(4212, 142) SOURCE(4267, 19) (void) FlushTriggerBag_P120(to_v9040); SOURCE(4288, 41) (void) CopyTriggerSlices_P360((* (ptr) to_v9040 ), (* (ptr) from_v9068 )); SOURCE(4331, 23) (* (( (ptr) to_v9040)+1) ) = (* (( (ptr) from_v9068)+1) ); } static void CopyTriggerSlices_P360(formal_c01059, fromTable_v9156) word formal_c01059; word fromTable_v9156; { W7 var_c78276; /* declaration of toTable_v9128 skipped */ register ptr gf_c78308 = (ptr) &globalframe; /* declaration of var_c71268 skipped */ var_c78276.f4/* toTable_v9128 */ = formal_c01059; /* CopyTriggerSlices: */ SOURCE(4360, 258) { word tmpAddr81; tmpAddr81 = (word) (( (ptr) &var_c78276)+5)/* var_c71268 */ ; (* (ptr) tmpAddr81 ) = ( ((word) (fPt) CopySliceFeatures_P5520) ); (* (( (ptr) tmpAddr81) + 1) ) = 1; }; SOURCE(4548, 21) { word pd82; pd82 = (* (( (ptr) (* (( (ptr) gf_c78308)+229)/* var_c71140 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd82 ))))(var_c78276.f4/* toTable_v9128 */ , pd82); }; SOURCE(4571, 47) { word var_c71300; word pd83; pd83 = (* (( (ptr) (* (( (ptr) gf_c78308)+229)/* var_c71140 */ ))+13) ); var_c71300 = (word) ( *( (fPt) ((* (ptr) pd83 ))))(fromTable_v9156, (word) (( (bPt) &var_c78276)+20)/* var_c71268 */ , pd83) ; }; } static word CopySliceFeatures_P5520(key_v46352, val_v46380, formal_c78372) word key_v46352; word val_v46380; word formal_c78372; { register ptr gf_c78340 = (ptr) &globalframe; word quit_v46424; word inserted_v20952; formal_c78372 = (formal_c78372 - 20); /* CopySliceFeatures: */ SOURCE(4421, 117) SOURCE(4421, 117) quit_v46424 = 0; SOURCE(4466, 49) { word pd84; pd84 = (* (( (ptr) (* (( (ptr) gf_c78340)+229)/* var_c71140 */ ))+10) ); inserted_v20952 = (word) ( *( (fPt) ((* (ptr) pd84 ))))((* (( (ptr) formal_c78372)+4) ), key_v46352, val_v46380, pd84); }; SOURCE(4517, 21) if ((0 == inserted_v20952)) { SOURCE(4538, 5) (void) XR_RaiseUnnamedError(); }; SOURCE(4421, 117) return(quit_v46424); } static void WalkSliceTriggers_P420(triggerBag_v9216, formal_c01060) word triggerBag_v9216; word formal_c01060; { W7 var_c78404; /* declaration of walkProc_v9244 skipped */ register ptr gf_c78436 = (ptr) &globalframe; /* declaration of var_c71332 skipped */ var_c78404.f4/* walkProc_v9244 */ = formal_c01060; /* WalkSliceTriggers: */ SOURCE(4624, 312) { word tmpAddr85; tmpAddr85 = (word) (( (ptr) &var_c78404)+5)/* var_c71332 */ ; (* (ptr) tmpAddr85 ) = ( ((word) (fPt) DoForTrigger_P5580) ); (* (( (ptr) tmpAddr85) + 1) ) = 1; }; SOURCE(4886, 50) { word var_c71364; word pd86; pd86 = (* (( (ptr) (* (( (ptr) gf_c78436)+229)/* var_c71140 */ ))+13) ); var_c71364 = (word) ( *( (fPt) ((* (ptr) pd86 ))))((* (ptr) triggerBag_v9216 ), (word) (( (bPt) &var_c78404)+20)/* var_c71332 */ , pd86) ; }; } static word DoForTrigger_P5580(key_v46676, val_v46704, formal_c78500) word key_v46676; word val_v46704; word formal_c78500; { register ptr gf_c78468 = (ptr) &globalframe; word quit_v46748; formal_c78500 = (formal_c78500 - 20); /* DoForTrigger: */ SOURCE(4711, 157) SOURCE(4711, 157) quit_v46748 = 0; SOURCE(4751, 117) { register word list_v21040; list_v21040 = XR_Narrow(val_v46704, (* (( (ptr) gf_c78468)+14) )); lab_L100003: ; if ((list_v21040 != 0)) { } else { goto lab_L100000; }; SOURCE(4826, 27) { word pd87; pd87 = (* (( (ptr) formal_c78500)+4) ); quit_v46748 = (word) ( *( (fPt) ((* (ptr) pd87 ))))((* (ptr) (list_v21040) ), pd87); }; SOURCE(4855, 13) if ((0 != quit_v46748)) { SOURCE(4868, 4) goto lab_L100001; }; list_v21040 = (* (( (ptr) list_v21040)+1) ); goto lab_L100003; lab_L100000: ; lab_L100001: ; }; SOURCE(4711, 157) return(quit_v46748); } static word ListSliceTriggers_P480(triggerBag_v9304) word triggerBag_v9304; { W8 var_c78532; /* declaration of features_v9348 skipped */ /* declaration of var_c71396 skipped */ /* declaration of ptr_v21196 skipped */ /* ListSliceTriggers: */ SOURCE(4942, 304) { word tmpAddr88; tmpAddr88 = (word) (( (ptr) &var_c78532)+5)/* var_c71396 */ ; (* (ptr) tmpAddr88 ) = ( ((word) (fPt) DoMakeList_P5688) ); (* (( (ptr) tmpAddr88) + 1) ) = 1; }; SOURCE(4942, 304) var_c78532.f4/* features_v9348 */ = 0; SOURCE(5179, 5) var_c78532.f7/* ptr_v21196 */ = 0; SOURCE(5205, 41) (void) WalkSliceTriggers_P420(triggerBag_v9304, (word) (( (bPt) &var_c78532)+20)/* var_c71396 */ ); SOURCE(4942, 304) return(var_c78532.f4/* features_v9348 */ ); } static word DoMakeList_P5688(feature_v21272, formal_c78596) word feature_v21272; word formal_c78596; { register ptr gf_c78564 = (ptr) &globalframe; word done_v21316; formal_c78596 = (formal_c78596 - 20); /* DoMakeList: */ SOURCE(5035, 139) SOURCE(5035, 139) done_v21316 = 0; SOURCE(5108, 66) { W2 var_c71460; { word pd89; pd89 = (* (( (ptr) (* (( (ptr) gf_c78564)+230)/* var_c71428 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd89 ))))((word) &var_c71460, feature_v21272, (* (( (ptr) formal_c78596)+4) ), (* (( (ptr) formal_c78596)+7) ), pd89); }; (* (( (ptr) formal_c78596)+7) ) = var_c71460.f1; (* (( (ptr) formal_c78596)+4) ) = var_c71460.f0; }; SOURCE(5035, 139) return(done_v21316); } static word FindFeature_P540(triggerBag_v9492, slice_v9520) word triggerBag_v9492; word slice_v9520; { register ptr gf_c78628 = (ptr) &globalframe; word feature_v9564; word val_v21428 = 0; word found_v21456 = 0; /* FindFeature: */ SOURCE(5252, 372) SOURCE(5252, 372) feature_v9564 = 0; SOURCE(5381, 53) { W2 var_c71492; { word pd90; pd90 = (* (( (ptr) (* (( (ptr) gf_c78628)+229)/* var_c71140 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd90 ))))((word) &var_c71492, (* (ptr) triggerBag_v9492 ), slice_v9520, pd90); }; val_v21428 = var_c71492.f1; found_v21456 = var_c71492.f0; }; SOURCE(5436, 29) if ((0 == found_v21456)) { SOURCE(5454, 11) return(0); }; SOURCE(5467, 157) { register word list_v21516; list_v21516 = XR_Narrow(val_v21428, (* (( (ptr) gf_c78628)+14) )); lab_L100007: ; if ((list_v21516 != 0)) { } else { goto lab_L100004; }; SOURCE(5542, 82) if (((* (ptr) XR_Narrow((* (( (ptr) (* (ptr) list_v21516 ))+1) ), (* (( (ptr) gf_c78628)+15) )) ) == slice_v9520)) { SOURCE(5606, 18) return((* (ptr) list_v21516 )); }; list_v21516 = (* (( (ptr) list_v21516)+1) ); goto lab_L100007; lab_L100004: ; }; SOURCE(5252, 372) return(feature_v9564); } static void ReplaceFeature_P600(triggerBag_v9624, oldFeature_v9652, newFeature_v9680) word triggerBag_v9624; word oldFeature_v9652; word newFeature_v9680; { register ptr gf_c78660 = (ptr) &globalframe; word val_v21644 = 0; word key_v21672; word found_v21700 = 0; /* ReplaceFeature: */ SOURCE(5639, 428) SOURCE(5736, 58) key_v21672 = (* (ptr) XR_Narrow((* (( (ptr) oldFeature_v9652)+1) ), (* (( (ptr) gf_c78660)+15) )) ); SOURCE(5817, 51) { W2 var_c71524; { word pd91; pd91 = (* (( (ptr) (* (( (ptr) gf_c78660)+229)/* var_c71140 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd91 ))))((word) &var_c71524, (* (ptr) triggerBag_v9624 ), key_v21672, pd91); }; val_v21644 = var_c71524.f1; found_v21700 = var_c71524.f0; }; SOURCE(5870, 197) if ( ( (0 != found_v21700) ? (val_v21644 != 0) : 0 ) ) { SOURCE(5898, 171) { word list_v21768; SOURCE(5900, 6) list_v21768 = XR_Narrow(val_v21644, (* (( (ptr) gf_c78660)+14) )); SOURCE(5941, 46) list_v21768 = (word) RemoveFeatureFromList_P4560(oldFeature_v9652, list_v21768); SOURCE(5989, 29) { word var_c71556; var_c71556 = XR_NewObject(8, (* (( (ptr) gf_c78660)+14) )); (* (ptr) var_c71556 ) = newFeature_v9680; (* (( (ptr) var_c71556)+1) ) = list_v21768; list_v21768 = var_c71556; }; SOURCE(6020, 47) { word var_c71588; word pd92; pd92 = (* (( (ptr) (* (( (ptr) gf_c78660)+229)/* var_c71140 */ ))+9) ); var_c71588 = (word) ( *( (fPt) ((* (ptr) pd92 ))))((* (ptr) triggerBag_v9624 ), key_v21672, list_v21768, pd92); }; }; } else { SOURCE(6076, 5) (void) XR_RaiseUnnamedError(); }; } static void DeleteFeature_P660(triggerBag_v9740, oldFeature_v9768) word triggerBag_v9740; word oldFeature_v9768; { register ptr gf_c78692 = (ptr) &globalframe; word val_v21896 = 0; word key_v21924; word found_v21952 = 0; /* DeleteFeature: */ SOURCE(6087, 451) SOURCE(6171, 58) key_v21924 = (* (ptr) XR_Narrow((* (( (ptr) oldFeature_v9768)+1) ), (* (( (ptr) gf_c78692)+15) )) ); SOURCE(6252, 51) { W2 var_c71620; { word pd93; pd93 = (* (( (ptr) (* (( (ptr) gf_c78692)+229)/* var_c71140 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd93 ))))((word) &var_c71620, (* (ptr) triggerBag_v9740 ), key_v21924, pd93); }; val_v21896 = var_c71620.f1; found_v21952 = var_c71620.f0; }; SOURCE(6305, 233) if ( ( (0 != found_v21952) ? (val_v21896 != 0) : 0 ) ) { SOURCE(6333, 207) { word list_v22020; SOURCE(6335, 6) list_v22020 = XR_Narrow(val_v21896, (* (( (ptr) gf_c78692)+14) )); SOURCE(6376, 46) list_v22020 = (word) RemoveFeatureFromList_P4560(oldFeature_v9768, list_v22020); SOURCE(6424, 114) if ((list_v22020 == 0)) { SOURCE(6443, 48) { word var_c71652; word pd94; pd94 = (* (( (ptr) (* (( (ptr) gf_c78692)+229)/* var_c71140 */ ))+11) ); var_c71652 = (word) ( *( (fPt) ((* (ptr) pd94 ))))((* (ptr) triggerBag_v9740 ), key_v21924, pd94); }; } else { SOURCE(6491, 47) { word var_c71684; word pd95; pd95 = (* (( (ptr) (* (( (ptr) gf_c78692)+229)/* var_c71140 */ ))+9) ); var_c71684 = (word) ( *( (fPt) ((* (ptr) pd95 ))))((* (ptr) triggerBag_v9740 ), key_v21924, list_v22020, pd95); }; }; }; } else { SOURCE(6547, 5) (void) XR_RaiseUnnamedError(); }; } static void AppendFeature_P720(feature_v9828, sliceTriggers_v9856) word feature_v9828; word sliceTriggers_v9856; { register ptr gf_c78724 = (ptr) &globalframe; word val_v22148 = 0; word slice_v22176; word found_v22204 = 0; /* AppendFeature: */ SOURCE(6558, 494) SOURCE(6649, 59) slice_v22176 = (* (ptr) XR_Narrow((* (( (ptr) feature_v9828)+1) ), (* (( (ptr) gf_c78724)+15) )) ); SOURCE(6732, 23) { word pd96; pd96 = (* (( (ptr) (* (( (ptr) gf_c78724)+231)/* var_c71716 */ ))+18) ); (void) ( *( (fPt) ((* (ptr) pd96 ))))(pd96); }; SOURCE(6757, 49) { W2 var_c71748; { word pd97; pd97 = (* (( (ptr) (* (( (ptr) gf_c78724)+229)/* var_c71140 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd97 ))))((word) &var_c71748, sliceTriggers_v9856, slice_v22176, pd97); }; val_v22148 = var_c71748.f1; found_v22204 = var_c71748.f0; }; SOURCE(6808, 244) if ( ( (0 != found_v22204) ? (val_v22148 != 0) : 0 ) ) { SOURCE(6836, 118) { word list_v22260; SOURCE(6838, 6) list_v22260 = XR_Narrow(val_v22148, (* (( (ptr) gf_c78724)+14) )); SOURCE(6879, 26) { word var_c71780; var_c71780 = XR_NewObject(8, (* (( (ptr) gf_c78724)+14) )); (* (ptr) var_c71780 ) = feature_v9828; (* (( (ptr) var_c71780)+1) ) = list_v22260; list_v22260 = var_c71780; }; SOURCE(6907, 45) { word var_c71812; word pd98; pd98 = (* (( (ptr) (* (( (ptr) gf_c78724)+229)/* var_c71140 */ ))+9) ); var_c71812 = (word) ( *( (fPt) ((* (ptr) pd98 ))))(sliceTriggers_v9856, slice_v22176, list_v22260, pd98); }; }; } else { SOURCE(6961, 93) { word list_v22388; SOURCE(6963, 6) list_v22388 = XR_NewObject(8, (* (( (ptr) gf_c78724)+14) )); { word var_c71876; var_c71876 = list_v22388; (* (ptr) var_c71876 ) = feature_v9828; }; SOURCE(7006, 46) { word var_c71908; word pd99; pd99 = (* (( (ptr) (* (( (ptr) gf_c78724)+229)/* var_c71140 */ ))+10) ); var_c71908 = (word) ( *( (fPt) ((* (ptr) pd99 ))))(sliceTriggers_v9856, slice_v22176, list_v22388, pd99); }; }; }; } static word FeatureFromSlice_P780(slice_v9916, parts_v9944) word slice_v9916; word parts_v9944; { register ptr gf_c78756 = (ptr) &globalframe; word feature_v9988; word sliceD_v22516; /* FeatureFromSlice: */ SOURCE(7061, 311) SOURCE(7061, 311) feature_v9988 = 0; SOURCE(7166, 129) { word tc100; word pd101; word pd102; if ((parts_v9944 == 0)) { pd101 = (* (( (ptr) (* (( (ptr) gf_c78756)+232)/* var_c71940 */ ))+29) ); tc100 = (word) ( *( (fPt) ((* (ptr) pd101 ))))(slice_v9916, 0, 6, pd101); } else { pd102 = (* (( (ptr) (* (( (ptr) gf_c78756)+233)/* var_c71972 */ ))+8) ); tc100 = (word) ( *( (fPt) ((* (ptr) pd102 ))))(slice_v9916, parts_v9944, pd102); }; sliceD_v22516 = tc100; }; SOURCE(7297, 29) feature_v9988 = XR_NewObject(8, (* (( (ptr) gf_c78756)+16) )); SOURCE(7328, 20) (* (ptr) feature_v9988 ) = 0; SOURCE(7350, 22) (* (( (ptr) feature_v9988)+1) ) = sliceD_v22516; SOURCE(7061, 311) return(feature_v9988); } static word FeatureFromAnchor_P840(anchor_v10048) word anchor_v10048; { register ptr gf_c78788 = (ptr) &globalframe; word feature_v10092; /* FeatureFromAnchor: */ SOURCE(7378, 214) SOURCE(7378, 214) feature_v10092 = 0; SOURCE(7460, 29) feature_v10092 = XR_NewObject(8, (* (( (ptr) gf_c78788)+16) )); SOURCE(7491, 21) (* (ptr) feature_v10092 ) = 8; SOURCE(7570, 22) (* (( (ptr) feature_v10092)+1) ) = anchor_v10048; SOURCE(7378, 214) return(feature_v10092); } static void FillStaticTriggerBag_P900(anchor_v10152, scene_v10180, heuristics_v10208, triggerBag_v10236) word anchor_v10152; word scene_v10180; word heuristics_v10208; word triggerBag_v10236; { /* FillStaticTriggerBag: */ SOURCE(7633, 182) SOURCE(7743, 36) (void) AddAnchorTrigger_P3120(anchor_v10152, triggerBag_v10236); SOURCE(7781, 34) (void) AddAllHotSlices_P3180(scene_v10180, triggerBag_v10236); } static void FillDynamicTriggerBag_P960(anchor_v10296, scene_v10324, heuristics_v10352, triggerBag_v10380, editConstraints_v10408, bezierDrag_v10436) word anchor_v10296; word scene_v10324; word heuristics_v10352; word triggerBag_v10380; word editConstraints_v10408; W5 bezierDrag_v10436; { register ptr gf_c78820 = (ptr) &globalframe; /* FillDynamicTriggerBag: */ SOURCE(7821, 401) SOURCE(7996, 36) (void) AddAnchorTrigger_P3120(anchor_v10296, triggerBag_v10380); SOURCE(8034, 34) (void) AddAllHotSlices_P3180(scene_v10324, triggerBag_v10380); SOURCE(8070, 85) { W2 var_c72068; (void) AddHeuristics_P3240((word) &var_c72068, scene_v10324, heuristics_v10352, (* (( (ptr) gf_c78820)+41) ), triggerBag_v10380, editConstraints_v10408 , bezierDrag_v10436); }; SOURCE(8157, 65) { word var_c72100; var_c72100 = (word) RemoveMoving_P3420(scene_v10324, triggerBag_v10380, editConstraints_v10408, bezierDrag_v10436); }; } static void FillStaticSceneBag_P1020(scene_v10496, sceneBag_v10524) word scene_v10496; word sceneBag_v10524; { /* FillStaticSceneBag: */ SOURCE(8227, 102) SOURCE(8300, 29) (void) AddAllSlices_P4140(scene_v10496, sceneBag_v10524); } static void FillDynamicSceneBag_P1080(scene_v10584, sceneBag_v10612, editConstraints_v10640, bezierDrag_v10668) word scene_v10584; word sceneBag_v10612; word editConstraints_v10640; W5 bezierDrag_v10668; { /* FillDynamicSceneBag: */ SOURCE(8335, 262) SOURCE(8503, 29) (void) AddAllSlices_P4140(scene_v10584, sceneBag_v10612); SOURCE(8534, 63) { word var_c72132; var_c72132 = (word) RemoveMoving_P3420(scene_v10584, sceneBag_v10612, editConstraints_v10640, bezierDrag_v10668); }; } static word CreateAlignBag_P1140() { register ptr gf_c78852 = (ptr) &globalframe; word alignBag_v10728; /* CreateAlignBag: */ SOURCE(8634, 207) SOURCE(8634, 207) alignBag_v10728 = 0; SOURCE(8698, 143) { word var_c72164; word var_c72228; { word pd103; pd103 = (* (( (ptr) (* (( (ptr) gf_c78852)+234)/* var_c72196 */ ))+5) ); var_c72164 = (word) ( *( (fPt) ((* (ptr) pd103 ))))(211, pd103); }; var_c72228 = XR_NewObject(20, (* (( (ptr) gf_c78852)+20) )); (* (ptr) var_c72228 ) = var_c72164; alignBag_v10728 = var_c72228; }; SOURCE(8634, 207) return(alignBag_v10728); } static void CopyAlignBag_P1200(to_v10788, from_v10816) word to_v10788; word from_v10816; { register ptr gf_c78884 = (ptr) &globalframe; /* CopyAlignBag: */ SOURCE(8847, 349) SOURCE(8891, 78) (void) CopySlopeLineTable_P1320((* (ptr) to_v10788 ), (* (ptr) from_v10816 )); SOURCE(8971, 62) { word pd104; pd104 = (* (( (ptr) (* (( (ptr) gf_c78884)+230)/* var_c71428 */ ))+8) ); (* (( (ptr) to_v10788)+1) ) = (word) ( *( (fPt) ((* (ptr) pd104 ))))((* ((( (ptr) from_v10816)+1)) ), pd104); }; SOURCE(9035, 66) { word pd105; pd105 = (* (( (ptr) (* (( (ptr) gf_c78884)+230)/* var_c71428 */ ))+8) ); (* (( (ptr) to_v10788)+2) ) = (word) ( *( (fPt) ((* (ptr) pd105 ))))((* ((( (ptr) from_v10816)+2)) ), pd105); }; SOURCE(9103, 68) { word pd106; pd106 = (* (( (ptr) (* (( (ptr) gf_c78884)+230)/* var_c71428 */ ))+8) ); (* (( (ptr) to_v10788)+3) ) = (word) ( *( (fPt) ((* (ptr) pd106 ))))((* ((( (ptr) from_v10816)+3)) ), pd106); }; SOURCE(9173, 23) (* (( (ptr) to_v10788)+4) ) = (* (( (ptr) from_v10816)+4) ); } static word EmptyAlignBag_P1260(alignBag_v10876) word alignBag_v10876; { word var_c10920; /* EmptyAlignBag: */ SOURCE(9202, 222) SOURCE(9269, 155) { word tc107; if ( ( ( ( (0 != (word) EmptySlopeLines_P1380(alignBag_v10876)) ? ((* (( (ptr) alignBag_v10876)+1) ) == 0) : 0 ) ? ((* ( ( (ptr) alignBag_v10876)+2) ) == 0) : 0 ) ? ((* (( (ptr) alignBag_v10876)+3) ) == 0) : 0 ) ) { tc107 = (word) (unsigned) ((* (( (ptr) alignBag_v10876)+4) ) == 0); } else { tc107 = (word) (unsigned) 0; }; return(tc107); }; } static void CopySlopeLineTable_P1320(formal_c01061, fromTable_v11008) word formal_c01061; word fromTable_v11008; { W7 var_c78916; /* declaration of toTable_v10980 skipped */ register ptr gf_c78948 = (ptr) &globalframe; /* declaration of var_c72292 skipped */ var_c78916.f4/* toTable_v10980 */ = formal_c01061; /* CopySlopeLineTable: */ SOURCE(9430, 254) { word tmpAddr108; tmpAddr108 = (word) (( (ptr) &var_c78916)+5)/* var_c72292 */ ; (* (ptr) tmpAddr108 ) = ( ((word) (fPt) CopyFeatures_P5988) ); (* (( (ptr) tmpAddr108) + 1) ) = 1; }; SOURCE(9617, 22) { word pd109; pd109 = (* (( (ptr) (* (( (ptr) gf_c78948)+234)/* var_c72196 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd109 ))))(var_c78916.f4/* toTable_v10980 */ , pd109); }; SOURCE(9641, 43) { word var_c72324; word pd110; pd110 = (* (( (ptr) (* (( (ptr) gf_c78948)+234)/* var_c72196 */ ))+13) ); var_c72324 = (word) ( *( (fPt) ((* (ptr) pd110 ))))(fromTable_v11008, (word) (( (bPt) &var_c78916)+20)/* var_c72292 */ , pd110) ; }; } static word CopyFeatures_P5988(key_v49200, val_v49228, formal_c79012) word key_v49200; word val_v49228; word formal_c79012; { register ptr gf_c78980 = (ptr) &globalframe; word quit_v49272; word inserted_v22604; formal_c79012 = (formal_c79012 - 20); /* CopyFeatures: */ SOURCE(9493, 114) SOURCE(9493, 114) quit_v49272 = 0; SOURCE(9534, 50) { word pd111; pd111 = (* (( (ptr) (* (( (ptr) gf_c78980)+234)/* var_c72196 */ ))+10) ); inserted_v22604 = (word) ( *( (fPt) ((* (ptr) pd111 ))))((* (( (ptr) formal_c79012)+4) ), key_v49200, val_v49228, pd111) ; }; SOURCE(9586, 21) if ((0 == inserted_v22604)) { SOURCE(9607, 5) (void) XR_RaiseUnnamedError(); }; SOURCE(9493, 114) return(quit_v49272); } static word EmptySlopeLines_P1380(alignBag_v11068) word alignBag_v11068; { W6 var_c79044; register ptr gf_c79076 = (ptr) &globalframe; word empty_v11112; /* declaration of var_c72356 skipped */ /* EmptySlopeLines: */ SOURCE(9690, 223) { word tmpAddr112; tmpAddr112 = (word) (( (ptr) &var_c79044)+4)/* var_c72356 */ ; (* (ptr) tmpAddr112 ) = ( ((word) (fPt) FeatureFound_P6048) ); (* (( (ptr) tmpAddr112) + 1) ) = 1; }; SOURCE(9690, 223) empty_v11112 = 0; SOURCE(9849, 64) { word pd113; pd113 = (* (( (ptr) (* (( (ptr) gf_c79076)+234)/* var_c72196 */ ))+13) ); empty_v11112 = (unsigned) (0 == (word) ( *( (fPt) ((* (ptr) pd113 ))))((* (ptr) alignBag_v11068 ), (word) (( (bPt) &var_c79044)+16) /* var_c72356 */ , pd113)); }; SOURCE(9690, 223) return(empty_v11112); } static word FeatureFound_P6048(key_v49780, val_v49808, formal_c79108) word key_v49780; word val_v49808; word formal_c79108; { word quit_v49852; formal_c79108 = (formal_c79108 - 16); /* FeatureFound: */ SOURCE(9767, 77) SOURCE(9767, 77) quit_v49852 = 0; SOURCE(9808, 18) if ((val_v49808 == 0)) { SOURCE(9826, 5) (void) XR_RaiseUnnamedError(); }; SOURCE(9833, 11) quit_v49852 = 1; SOURCE(9767, 77) return(quit_v49852); } static void FlushAlignBag_P1440(alignBag_v11172) word alignBag_v11172; { /* FlushAlignBag: */ SOURCE(9919, 186) SOURCE(9971, 25) (void) FlushSlopeLines_P1560(alignBag_v11172); SOURCE(9998, 25) (* (( (ptr) alignBag_v11172)+1) ) = 0; SOURCE(10025, 27) (* (( (ptr) alignBag_v11172)+2) ) = 0; SOURCE(10054, 28) (* (( (ptr) alignBag_v11172)+3) ) = 0; SOURCE(10084, 21) (* (( (ptr) alignBag_v11172)+4) ) = 0; } static void TriggersPerSlopeLine_P1500(formal_c0269, ggData_v11232) word formal_c0269; word ggData_v11232; { W10 var_c79140; register ptr gf_c79172 = (ptr) &globalframe; /* declaration of lines_v11276 skipped */ /* declaration of min_v11304 skipped */ /* declaration of max_v11332 skipped */ word avg_v11360; /* declaration of var_c72388 skipped */ /* declaration of totalTriggers_v22720 skipped */ /* TriggersPerSlopeLine: */ SOURCE(10111, 790) { word tmpAddr114; tmpAddr114 = (word) (( (ptr) &var_c79140)+7)/* var_c72388 */ ; (* (ptr) tmpAddr114 ) = ( ((word) (fPt) Count_P6108) ); (* (( (ptr) tmpAddr114) + 1) ) = 1; }; SOURCE(10744, 25) (* (( (ptr) &var_c79140)+9)/* totalTriggers_v22720 */ ) = (* (ptr) &fc115 ); SOURCE(10771, 9) (* (( (ptr) &var_c79140)+4)/* lines_v11276 */ ) = 0; SOURCE(10782, 16) (* (( (ptr) &var_c79140)+5)/* min_v11304 */ ) = (word) -1; SOURCE(10800, 7) (* (( (ptr) &var_c79140)+6)/* max_v11332 */ ) = 0; SOURCE(10809, 65) { word var_c72420; word pd116; pd116 = (* (( (ptr) (* (( (ptr) gf_c79172)+234)/* var_c72196 */ ))+13) ); var_c72420 = (word) ( *( (fPt) ((* (ptr) pd116 ))))((* (ptr) (* (( (ptr) (* (( (ptr) ggData_v11232)+18) ))+4) ) ), (word) ( ( (bPt) &var_c79140)+28)/* var_c72388 */ , pd116); }; SOURCE(10876, 25) { word x117; *(float*)&avg_v11360 = ( x117 = (* (( (ptr) &var_c79140)+9)/* totalTriggers_v22720 */ ), *(float*)&x117 ) / (float)(unsigned)(* (( (ptr) &var_c79140)+4)/* lines_v11276 */ ); }; /* removed tail goto */ (* (ptr) formal_c0269 ) = (* (( (ptr) &var_c79140)+4)/* lines_v11276 */ ); (* (( (ptr) formal_c0269)+1) ) = (* (( (ptr) &var_c79140)+5)/* min_v11304 */ ); (* (( (ptr) formal_c0269)+2) ) = (* (( (ptr) &var_c79140)+6)/* max_v11332 */ ); (* (( (ptr) formal_c0269)+3) ) = avg_v11360; return; } static word Count_P6108(key_v49912, val_v49940, formal_c79236) word key_v49912; word val_v49940; word formal_c79236; { register ptr gf_c79204 = (ptr) &globalframe; word quit_v49984; word list_v22764; word aLine_v22792 = 0; word triggersPerSlope_v22820 = 0; formal_c79236 = (formal_c79236 - 28); /* Count: */ SOURCE(10202, 514) SOURCE(10202, 514) quit_v49984 = 0; SOURCE(10236, 6) list_v22764 = XR_Narrow(val_v49940, (* (( (ptr) gf_c79204)+14) )); SOURCE(10327, 389) { register word l_v22948; l_v22948 = list_v22764; lab_L100012: ; if ((l_v22948 != 0)) { } else { goto lab_L100009; }; SOURCE(10386, 17) (* (( (ptr) formal_c79236)+4) ) = ((* (( (ptr) formal_c79236)+4) ) + 1); SOURCE(10405, 29) aLine_v22792 = XR_Narrow((* (( (ptr) (* (ptr) l_v22948 ))+1) ), (* (( (ptr) gf_c79204)+21) )); SOURCE(10436, 20) triggersPerSlope_v22820 = 0; SOURCE(10458, 131) { register word pointList_v23076; pointList_v23076 = (* (( (ptr) aLine_v22792)+2) ); lab_L100016: ; if ((pointList_v23076 != 0)) { } else { goto lab_L100013; }; SOURCE(10550, 39) triggersPerSlope_v22820 = (triggersPerSlope_v22820 + 1); pointList_v23076 = (* (( (ptr) pointList_v23076)+2) ); goto lab_L100016; lab_L100013: ; }; SOURCE(10600, 32) { word x118; (* (( (ptr) formal_c79236)+5) ) = (x118 = (* (( (ptr) formal_c79236)+5) ), MIN( (unsigned) , x118, triggersPerSlope_v22820)); }; SOURCE(10634, 32) { word x119; (* (( (ptr) formal_c79236)+6) ) = (x119 = (* (( (ptr) formal_c79236)+6) ), MAX( (unsigned) , x119, triggersPerSlope_v22820)); }; SOURCE(10668, 48) { word x120; *(float*)(( (ptr) formal_c79236)+9) = ( x120 = (* (( (ptr) formal_c79236)+9) ), *(float*)&x120 ) + (float)(unsigned)triggersPerSlope_v22820; }; l_v22948 = (* (( (ptr) l_v22948)+1) ); goto lab_L100012; lab_L100009: ; }; SOURCE(10202, 514) return(quit_v49984); } static void FlushSlopeLines_P1560(alignBag_v11420) word alignBag_v11420; { register ptr gf_c79268 = (ptr) &globalframe; /* FlushSlopeLines: */ SOURCE(10907, 85) SOURCE(10954, 38) { word pd121; pd121 = (* (( (ptr) (* (( (ptr) gf_c79268)+234)/* var_c72196 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd121 ))))((* (ptr) (alignBag_v11420) ), pd121); }; } static void FillStaticAlignBag_P1620(triggerBag_v11480, sceneBag_v11508, ggData_v11536, hideAlignments_v11564, alignBag_v11592) word triggerBag_v11480; word sceneBag_v11508; word ggData_v11536; word hideAlignments_v11564; word alignBag_v11592; { /* FillStaticAlignBag: */ SOURCE(10998, 201) SOURCE(11139, 60) (void) BuiltInFilters_P3600(triggerBag_v11480, ggData_v11536, hideAlignments_v11564, alignBag_v11592); } static void FillDynamicAlignBag_P1680(triggerBag_v11652, sceneBag_v11680, ggData_v11708, hideAlignments_v11736, action_v11764, alignBag_v11792) word triggerBag_v11652; word sceneBag_v11680; word ggData_v11708; word hideAlignments_v11736; word action_v11764; word alignBag_v11792; { /* FillDynamicAlignBag: */ SOURCE(11205, 216) SOURCE(11361, 60) (void) BuiltInFilters_P3600(triggerBag_v11652, ggData_v11708, hideAlignments_v11736, alignBag_v11792); } static void AddAlignment_P1740(featureData_v11852, alignBag_v11880) word featureData_v11852; word alignBag_v11880; { register ptr gf_c79300 = (ptr) &globalframe; /* AddAlignment: */ SOURCE(11427, 515) SOURCE(11497, 23) { word pd122; pd122 = (* (( (ptr) (* (( (ptr) gf_c79300)+231)/* var_c71716 */ ))+18) ); (void) ( *( (fPt) ((* (ptr) pd122 ))))(pd122); }; SOURCE(11522, 420) { word var_c72452; var_c72452 = (* (ptr) featureData_v11852 ); switch (var_c72452) { case 1: SOURCE(11567, 66) { word var_c72484; var_c72484 = XR_NewObject(8, (* (( (ptr) gf_c79300)+14) )); (* (ptr) var_c72484 ) = featureData_v11852; (* (( (ptr) var_c72484)+1) ) = (* (( (ptr) alignBag_v11880)+3) ); (* (( (ptr) alignBag_v11880)+3) ) = var_c72484; }; break; case 2: SOURCE(11648, 35) (void) AddSlopeLine_P1800(featureData_v11852, alignBag_v11880); break; case 3: SOURCE(11698, 60) { word var_c72516; var_c72516 = XR_NewObject(8, (* (( (ptr) gf_c79300)+14) )); (* (ptr) var_c72516 ) = featureData_v11852; (* (( (ptr) var_c72516)+1) ) = (* (( (ptr) alignBag_v11880)+1) ); (* (( (ptr) alignBag_v11880)+1) ) = var_c72516; }; break; case 5: SOURCE(11775, 64) { word var_c72548; var_c72548 = XR_NewObject(8, (* (( (ptr) gf_c79300)+14) )); (* (ptr) var_c72548 ) = featureData_v11852; (* (( (ptr) var_c72548)+1) ) = (* (( (ptr) alignBag_v11880)+2) ); (* (( (ptr) alignBag_v11880)+2) ) = var_c72548; }; break; case 8: SOURCE(11851, 29) (* (( (ptr) alignBag_v11880)+4) ) = featureData_v11852; break; default: SOURCE(11893, 49) { word var_c0296; var_c0296 = (* (( (ptr) gf_c79300)+40) ); (void) (XR_RaiseSignal((* (( (ptr) gf_c79300)+4)/* Problem_v5688 */ ), 0, (word) &var_c0296)); }; break; }; }; } static void AddSlopeLine_P1800(featureData_v11940, alignBag_v11968) word featureData_v11940; word alignBag_v11968; { register ptr gf_c79332 = (ptr) &globalframe; word line_v23204; word distance_v23232; word key_v23260; word val_v23288 = 0; word found_v23316 = 0; /* AddSlopeLine: */ SOURCE(11948, 545) SOURCE(12018, 58) line_v23204 = (* (ptr) XR_Narrow((* (( (ptr) featureData_v11940)+1) ), (* (( (ptr) gf_c79332)+21) )) ); SOURCE(12078, 23) distance_v23232 = (* (( (ptr) line_v23204)+1) ); SOURCE(12103, 37) key_v23260 = (word) KeyFromDistance_P2100(distance_v23232); SOURCE(12173, 58) { W2 var_c72580; { word pd123; pd123 = (* (( (ptr) (* (( (ptr) gf_c79332)+234)/* var_c72196 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd123 ))))((word) &var_c72580, (* (ptr) alignBag_v11968 ), key_v23260, pd123); }; val_v23288 = var_c72580.f1; found_v23316 = var_c72580.f0; }; SOURCE(12233, 260) if ((0 == found_v23316)) { SOURCE(12251, 106) { word list_v23372; SOURCE(12253, 6) list_v23372 = XR_NewObject(8, (* (( (ptr) gf_c79332)+14) )); { word var_c72644; var_c72644 = list_v23372; (* (ptr) var_c72644 ) = featureData_v11940; }; SOURCE(12300, 55) { word var_c72676; word pd124; pd124 = (* (( (ptr) (* (( (ptr) gf_c79332)+234)/* var_c72196 */ ))+10) ); var_c72676 = (word) ( *( (fPt) ((* (ptr) pd124 ))))((* (ptr) alignBag_v11968 ), key_v23260, list_v23372, pd124); }; }; } else { SOURCE(12364, 131) { word list_v23500; SOURCE(12366, 6) list_v23500 = XR_Narrow(val_v23288, (* (( (ptr) gf_c79332)+14) )); SOURCE(12407, 30) { word var_c72708; var_c72708 = XR_NewObject(8, (* (( (ptr) gf_c79332)+14) )); (* (ptr) var_c72708 ) = featureData_v11940; (* (( (ptr) var_c72708)+1) ) = list_v23500; list_v23500 = var_c72708; }; SOURCE(12439, 54) { word var_c72740; word pd125; pd125 = (* (( (ptr) (* (( (ptr) gf_c79332)+234)/* var_c72196 */ ))+9) ); var_c72740 = (word) ( *( (fPt) ((* (ptr) pd125 ))))((* (ptr) alignBag_v11968 ), key_v23260, list_v23500, pd125); }; }; }; } static word JointAddSlopeLine_P1860(degrees_v12028, point_v12056, alignBag_v12084) word degrees_v12028; W2 point_v12056; word alignBag_v12084; { register ptr gf_c79364 = (ptr) &globalframe; word feature_v12128; word line_v23628 = 0; word coincident_v23656 = 0; word cosine_v23684; word sine_v23712; word distance_v23740; /* JointAddSlopeLine: */ SOURCE(12502, 769) SOURCE(12502, 769) feature_v12128 = 0; SOURCE(12685, 88) { W4 var_c72772; (void) LineThru_P2160((word) &var_c72772, point_v12056, degrees_v12028, (* (ptr) alignBag_v12084 )); distance_v23740 = var_c72772.f3; sine_v23712 = var_c72772.f2; cosine_v23684 = var_c72772.f1; coincident_v23656 = var_c72772.f0; }; SOURCE(12775, 496) if ((coincident_v23656 != 0)) { SOURCE(12800, 146) { word alignmentLine_v23784; SOURCE(12802, 55) alignmentLine_v23784 = XR_Narrow((* (( (ptr) coincident_v23656)+1) ), (* (( (ptr) gf_c79364)+21) )); SOURCE(12859, 70) { word var_c72804; var_c72804 = XR_NewObject(12, (* (( (ptr) gf_c79364)+25) )); (* (W2Pt) var_c72804 ) = point_v12056; (* (( (ptr) var_c72804)+2) ) = (* (( (ptr) alignmentLine_v23784)+2) ); (* (( (ptr) alignmentLine_v23784)+2) ) = var_c72804; }; SOURCE(12931, 13) feature_v12128 = 0; }; } else { SOURCE(12953, 320) { word alignmentLine_v23828 = 0; SOURCE(12986, 59) { word pd126; pd126 = (* (( (ptr) (* (( (ptr) gf_c79364)+235)/* var_c72836 */ ))+10) ); line_v23628 = (word) ( *( (fPt) ((* (ptr) pd126 ))))(sine_v23712, cosine_v23684, distance_v23740, pd126); }; SOURCE(13047, 103) { word var_c72868; word var_c72932; { word var_c72900; var_c72900 = XR_NewObject(12, (* (( (ptr) gf_c79364)+25) )); (* (W2Pt) var_c72900 ) = point_v12056; var_c72868 = var_c72900; }; var_c72932 = XR_NewObject(12, (* (( (ptr) gf_c79364)+21) )); (* (ptr) var_c72932 ) = line_v23628; (* (( (ptr) var_c72932)+1) ) = degrees_v12028; (* (( (ptr) var_c72932)+2) ) = var_c72868; alignmentLine_v23828 = var_c72932; }; SOURCE(13152, 29) feature_v12128 = XR_NewObject(8, (* (( (ptr) gf_c79364)+16) )); SOURCE(13183, 24) (* (ptr) feature_v12128 ) = 2; SOURCE(13209, 29) (* (( (ptr) feature_v12128)+1) ) = alignmentLine_v23828; SOURCE(13240, 31) (void) AddAlignment_P1740(feature_v12128, alignBag_v12084); }; }; SOURCE(12502, 769) return(feature_v12128); } static void WalkSlopeLines_P1920(alignBag_v12188, formal_c01062) word alignBag_v12188; word formal_c01062; { W7 var_c79396; /* declaration of walkProc_v12216 skipped */ register ptr gf_c79428 = (ptr) &globalframe; /* declaration of var_c72996 skipped */ var_c79396.f4/* walkProc_v12216 */ = formal_c01062; /* WalkSlopeLines: */ SOURCE(13280, 309) { word tmpAddr127; tmpAddr127 = (word) (( (ptr) &var_c79396)+5)/* var_c72996 */ ; (* (ptr) tmpAddr127 ) = ( ((word) (fPt) WalkAction_P6456) ); (* (( (ptr) tmpAddr127) + 1) ) = 1; }; SOURCE(13534, 55) { word var_c73028; word pd128; pd128 = (* (( (ptr) (* (( (ptr) gf_c79428)+234)/* var_c72196 */ ))+13) ); var_c73028 = (word) ( *( (fPt) ((* (ptr) pd128 ))))((* (ptr) alignBag_v12188 ), (word) (( (bPt) &var_c79396)+20)/* var_c72996 */ , pd128) ; }; } static word WalkAction_P6456(key_v53400, val_v53428, formal_c79492) word key_v53400; word val_v53428; word formal_c79492; { register ptr gf_c79460 = (ptr) &globalframe; word quit_v53472; formal_c79492 = (formal_c79492 - 20); /* WalkAction: */ SOURCE(13360, 156) SOURCE(13360, 156) quit_v53472 = 0; SOURCE(13399, 117) { register word list_v23916; list_v23916 = XR_Narrow(val_v53428, (* (( (ptr) gf_c79460)+14) )); lab_L100020: ; if ((list_v23916 != 0)) { } else { goto lab_L100017; }; SOURCE(13474, 27) { word pd129; pd129 = (* (( (ptr) formal_c79492)+4) ); quit_v53472 = (word) ( *( (fPt) ((* (ptr) pd129 ))))((* (ptr) (list_v23916) ), pd129); }; SOURCE(13503, 13) if ((0 != quit_v53472)) { SOURCE(13516, 4) goto lab_L100018; }; list_v23916 = (* (( (ptr) list_v23916)+1) ); goto lab_L100020; lab_L100017: ; lab_L100018: ; }; SOURCE(13360, 156) return(quit_v53472); } static word ListOfSlopeLines_P1980(alignBag_v12276) word alignBag_v12276; { W7 var_c79524; register ptr gf_c79556 = (ptr) &globalframe; /* declaration of slopeLines_v12320 skipped */ /* declaration of var_c73060 skipped */ /* ListOfSlopeLines: */ SOURCE(13595, 326) { word tmpAddr130; tmpAddr130 = (word) (( (ptr) &var_c79524)+5)/* var_c73060 */ ; (* (ptr) tmpAddr130 ) = ( ((word) (fPt) ConsSlopeLine_P6564) ); (* (( (ptr) tmpAddr130) + 1) ) = 1; }; SOURCE(13595, 326) var_c79524.f4/* slopeLines_v12320 */ = 0; SOURCE(13863, 58) { word var_c73092; word pd131; pd131 = (* (( (ptr) (* (( (ptr) gf_c79556)+234)/* var_c72196 */ ))+13) ); var_c73092 = (word) ( *( (fPt) ((* (ptr) pd131 ))))((* (ptr) alignBag_v12276 ), (word) (( (bPt) &var_c79524)+20)/* var_c73060 */ , pd131) ; }; SOURCE(13595, 326) return(var_c79524.f4/* slopeLines_v12320 */ ); } static word ConsSlopeLine_P6564(key_v53532, val_v53560, formal_c79620) word key_v53532; word val_v53560; word formal_c79620; { register ptr gf_c79588 = (ptr) &globalframe; word quit_v53604; formal_c79620 = (formal_c79620 - 20); /* ConsSlopeLine: */ SOURCE(13691, 158) SOURCE(13691, 158) quit_v53604 = 0; SOURCE(13733, 116) { register word list_v24088; list_v24088 = XR_Narrow(val_v53560, (* (( (ptr) gf_c79588)+14) )); lab_L100024: ; if ((list_v24088 != 0)) { } else { goto lab_L100021; }; SOURCE(13808, 41) { word var_c73124; var_c73124 = XR_NewObject(8, (* (( (ptr) gf_c79588)+14) )); (* (ptr) var_c73124 ) = (* (ptr) list_v24088 ); (* (( (ptr) var_c73124)+1) ) = (* (( (ptr) formal_c79620)+4) ); (* (( (ptr) formal_c79620)+4) ) = var_c73124; }; list_v24088 = (* (( (ptr) list_v24088)+1) ); goto lab_L100024; lab_L100021: ; }; SOURCE(13691, 158) return(quit_v53604); } static void KeysFromDistance_P2040(formal_c0349, distance_v12464) word formal_c0349; word distance_v12464; { register ptr gf_c79652 = (ptr) &globalframe; W3 keys_v12508; word int_v24216; /* KeysFromDistance: */ SOURCE(13983, 233) SOURCE(14073, 36) { word x132; word x134; *(float*)&distance_v12464 = ( x132 = distance_v12464, *(float*)&x132 ) * ( x134 = (* (ptr) &fc133 ), *(float*)&x134 ); }; SOURCE(14111, 26) { word pd135; pd135 = (* (( (ptr) (* (( (ptr) gf_c79652)+236)/* var_c73156 */ ))+8) ); int_v24216 = (word) ( *( (fPt) ((* (ptr) pd135 ))))(distance_v12464, pd135); }; SOURCE(14139, 23) keys_v12508.f0 = int_v24216; SOURCE(14164, 25) keys_v12508.f1 = (int_v24216 + 1); SOURCE(14191, 25) keys_v12508.f2 = (int_v24216 - 1); /* removed tail goto */ (* (W3Pt) formal_c0349 ) = keys_v12508; return; } static word KeyFromDistance_P2100(distance_v12604) word distance_v12604; { register ptr gf_c79684 = (ptr) &globalframe; word key_v12648; word int_v24260; /* KeyFromDistance: */ SOURCE(14222, 190) SOURCE(14295, 36) { word x136; word x137; *(float*)&distance_v12604 = ( x136 = distance_v12604, *(float*)&x136 ) * ( x137 = (* (ptr) &fc133 ), *(float*)&x137 ); }; SOURCE(14365, 26) { word pd138; pd138 = (* (( (ptr) (* (( (ptr) gf_c79684)+236)/* var_c73156 */ ))+8) ); int_v24260 = (word) ( *( (fPt) ((* (ptr) pd138 ))))(distance_v12604, pd138); }; SOURCE(14393, 19) key_v12648 = int_v24260; SOURCE(14222, 190) return(key_v12648); } static void LineThru_P2160(formal_c0371, point_v12708, degrees_v12736, table_v12764) word formal_c0371; W2 point_v12708; word degrees_v12736; word table_v12764; { register ptr gf_c79716 = (ptr) &globalframe; word coincident_v12808; word cosine_v12836; word sine_v12864; word distance_v12892; word line_v24304 = 0; W3 keys_v24332; word val_v24360 = 0; word found_v24388 = 0; /* LineThru: */ SOURCE(14418, 687) SOURCE(14418, 687) coincident_v12808 = 0; SOURCE(14621, 61) { W3 var_c73188; (void) DistanceFromOrigin_P2340((word) &var_c73188, point_v12708, degrees_v12736); sine_v12864 = var_c73188.f2; cosine_v12836 = var_c73188.f1; distance_v12892 = var_c73188.f0; }; SOURCE(14684, 33) (void) KeysFromDistance_P2040((word) &keys_v24332, distance_v12892); SOURCE(14719, 350) { register word i_v24480 = 0; lab_L100030: ; SOURCE(14743, 44) { W2 var_c73220; { word pd139; pd139 = (* (( (ptr) (* (( (ptr) gf_c79716)+234)/* var_c72196 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd139 ))))((word) &var_c73220, table_v12764, (* (( (ptr) &keys_v24332)+BCK(i_v24480, 3)) ), pd139) ; }; val_v24360 = var_c73220.f1; found_v24388 = var_c73220.f0; }; SOURCE(14789, 18) if ((0 == found_v24388)) { SOURCE(14807, 4) goto lab_L100029; }; SOURCE(14813, 256) { register word l_v24524; l_v24524 = XR_Narrow(val_v24360, (* (( (ptr) gf_c79716)+14) )); lab_L100034: ; if ((l_v24524 != 0)) { } else { goto lab_L100031; }; SOURCE(14879, 48) line_v24304 = (* (ptr) XR_Narrow((* (( (ptr) (* (ptr) l_v24524 ))+1) ), (* (( (ptr) gf_c79716)+21) )) ); SOURCE(14929, 140) { word tc140; word x141; word x142; word pd143; word x144; word x146; if ((( x141 = (* (( (ptr) XR_Narrow((* (( (ptr) (* (ptr) l_v24524 ))+1) ), (* (( (ptr) gf_c79716)+21) )))+1) ), *(float*)&x141 ) == ( x142 = degrees_v12736, *(float*)&x142 ))) { pd143 = (* (( (ptr) (* (( (ptr) gf_c79716)+235)/* var_c72836 */ ))+39) ); tc140 = (word) (( x144 = (word) ( *( (fPt) ((* (ptr) pd143 ))))(point_v12708, line_v24304, pd143), *(float*)&x144 ) < ( x146 = (* (ptr) &fc145 ), *(float*)&x146 )); } else { tc140 = (word) 0; }; if (tc140) { SOURCE(15041, 20) coincident_v12808 = (* (ptr) l_v24524 ); SOURCE(15063, 6) goto lab_L100026; }; }; l_v24524 = (* (( (ptr) l_v24524)+1) ); goto lab_L100034; lab_L100031: ; }; lab_L100029: ; if ((i_v24480 >= 2)) { goto lab_L100027; }; i_v24480 = (i_v24480 + 1); goto lab_L100030; lab_L100027: ; }; SOURCE(15089, 16) coincident_v12808 = 0; /* removed tail goto */ lab_L100026: ; (* (ptr) formal_c0371 ) = coincident_v12808; (* (( (ptr) formal_c0371)+1) ) = cosine_v12836; (* (( (ptr) formal_c0371)+2) ) = sine_v12864; (* (( (ptr) formal_c0371)+3) ) = distance_v12892; return; } static word JointAddCircle_P2220(radius_v12952, point_v12980, alignBag_v13008) word radius_v12952; W2 point_v12980; word alignBag_v13008; { register ptr gf_c79748 = (ptr) &globalframe; word feature_v13052; word circle_v24652 = 0; word coincident_v24680 = 0; /* JointAddCircle: */ SOURCE(15112, 717) SOURCE(15112, 717) feature_v13052 = 0; SOURCE(15265, 61) coincident_v24680 = (word) SameCircle_P2280(point_v12980, radius_v12952, (* (( (ptr) alignBag_v13008)+2) )); SOURCE(15328, 501) if ((coincident_v24680 != 0)) { SOURCE(15353, 154) { word alignmentCircle_v24724; SOURCE(15355, 59) alignmentCircle_v24724 = XR_Narrow((* (( (ptr) coincident_v24680)+1) ), (* (( (ptr) gf_c79748)+26) )); SOURCE(15416, 74) { word var_c73252; var_c73252 = XR_NewObject(12, (* (( (ptr) gf_c79748)+25) )); (* (W2Pt) var_c73252 ) = point_v12980; (* (( (ptr) var_c73252)+2) ) = (* (( (ptr) alignmentCircle_v24724)+1) ); (* (( (ptr) alignmentCircle_v24724)+1) ) = var_c73252; }; SOURCE(15492, 13) feature_v13052 = 0; }; } else { SOURCE(15514, 317) { word alignmentCircle_v24768 = 0; SOURCE(15551, 58) { word pd147; pd147 = (* (( (ptr) (* (( (ptr) gf_c79748)+237)/* var_c73284 */ ))+7) ); circle_v24652 = (word) ( *( (fPt) ((* (ptr) pd147 ))))(point_v12980, radius_v12952, pd147); }; SOURCE(15611, 93) { word var_c73316; word var_c73380; { word var_c73348; var_c73348 = XR_NewObject(12, (* (( (ptr) gf_c79748)+25) )); (* (W2Pt) var_c73348 ) = point_v12980; var_c73316 = var_c73348; }; var_c73380 = XR_NewObject(8, (* (( (ptr) gf_c79748)+26) )); (* (ptr) var_c73380 ) = circle_v24652; (* (( (ptr) var_c73380)+1) ) = var_c73316; alignmentCircle_v24768 = var_c73380; }; SOURCE(15706, 29) feature_v13052 = XR_NewObject(8, (* (( (ptr) gf_c79748)+16) )); SOURCE(15737, 26) (* (ptr) feature_v13052 ) = 5; SOURCE(15765, 31) (* (( (ptr) feature_v13052)+1) ) = alignmentCircle_v24768; SOURCE(15798, 31) (void) AddAlignment_P1740(feature_v13052, alignBag_v13008); }; }; SOURCE(15112, 717) return(feature_v13052); } static word SameCircle_P2280(point_v13112, radius_v13140, list_v13168) W2 point_v13112; word radius_v13140; word list_v13168; { register ptr gf_c79780 = (ptr) &globalframe; word coincident_v13296; word circle_v24812 = 0; /* SameCircle: */ SOURCE(15838, 445) SOURCE(15838, 445) coincident_v13296 = 0; SOURCE(15965, 296) { register word l_v24856; l_v24856 = list_v13168; lab_L100038: ; if ((l_v24856 != 0)) { } else { goto lab_L100035; }; SOURCE(16024, 54) circle_v24812 = (* (ptr) XR_Narrow((* (( (ptr) (* (ptr) l_v24856 ))+1) ), (* (( (ptr) gf_c79780)+26) )) ); SOURCE(16080, 181) { word tc148; word tc149; word pd150; word pd151; word pd152; pd150 = (* (( (ptr) (* (( (ptr) gf_c79780)+238)/* var_c73444 */ ))+39) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd150 ))))((* (ptr) circle_v24812 ), point_v13112.f0, 116, pd150))) { pd151 = (* (( (ptr) (* (( (ptr) gf_c79780)+238)/* var_c73444 */ ))+39) ); tc149 = (word) (0 != (word) ( *( (fPt) ((* (ptr) pd151 ))))((* (( (ptr) circle_v24812)+1) ), point_v13112.f1, 116, pd151) ); } else { tc149 = (word) 0; }; if (tc149) { pd152 = (* (( (ptr) (* (( (ptr) gf_c79780)+238)/* var_c73444 */ ))+39) ); tc148 = (word) (0 != (word) ( *( (fPt) ((* (ptr) pd152 ))))((* (( (ptr) circle_v24812)+2) ), radius_v13140, 116, pd152) ); } else { tc148 = (word) 0; }; if (tc148) { SOURCE(16246, 15) return((* (ptr) l_v24856 )); }; }; l_v24856 = (* (( (ptr) l_v24856)+1) ); goto lab_L100038; lab_L100035: ; }; SOURCE(16272, 11) return(0); } static void DistanceFromOrigin_P2340(formal_c0395, pt1_v13356, degrees_v13384) word formal_c0395; W2 pt1_v13356; word degrees_v13384; { register ptr gf_c79812 = (ptr) &globalframe; word distance_v13428; word c_v13456; word s_v13484; /* DistanceFromOrigin: */ SOURCE(16289, 174) SOURCE(16377, 27) { word pd153; pd153 = (* (( (ptr) (* (( (ptr) gf_c79812)+238)/* var_c73444 */ ))+13) ); c_v13456 = (word) ( *( (fPt) ((* (ptr) pd153 ))))(degrees_v13384, pd153); }; SOURCE(16406, 27) { word pd154; pd154 = (* (( (ptr) (* (( (ptr) gf_c79812)+238)/* var_c73444 */ ))+11) ); s_v13484 = (word) ( *( (fPt) ((* (ptr) pd154 ))))(degrees_v13384, pd154); }; SOURCE(16435, 28) { word x155; word x156; word x157; word x158; *(float*)&distance_v13428 = (( x155 = pt1_v13356.f1, *(float*)&x155 ) * ( x156 = c_v13456, *(float*)&x156 )) - (( x157 = pt1_v13356.f0, *(float*)&x157 ) * ( x158 = s_v13484, *(float*)&x158 )); }; /* removed tail goto */ (* (ptr) formal_c0395 ) = distance_v13428; (* (( (ptr) formal_c0395)+1) ) = c_v13456; (* (( (ptr) formal_c0395)+2) ) = s_v13484; return; } static void SegmentAddTwoAngleLines_P2400(formal_c0411, degrees_v13544, segNum_v13572, lo_v13600, hi_v13628, alignBag_v13656) word formal_c0411; word degrees_v13544; word segNum_v13572; W2 lo_v13600; W2 hi_v13628; word alignBag_v13656; { register ptr gf_c79844 = (ptr) &globalframe; word line1_v13700; word line2_v13728; word loLine_v24984; word hiLine_v25012; /* SegmentAddTwoAngleLines: */ SOURCE(16469, 747) SOURCE(16469, 747) line1_v13700 = 0; SOURCE(16469, 747) line2_v13728 = 0; SOURCE(16610, 126) { word var_c73476; { W2 var_c73508; word var_c01013; { word x159; word x160; *(float*)&var_c73508.f0 = ( x159 = hi_v13628.f0, *(float*)&x159 ) - ( x160 = lo_v13600.f0, *(float*)&x160 ); }; { word x161; word x162; *(float*)&var_c73508.f1 = ( x161 = hi_v13628.f1, *(float*)&x161 ) - ( x162 = lo_v13600.f1, *(float*)&x162 ); }; { word pd163; pd163 = (* (( (ptr) (* (( (ptr) gf_c79844)+239)/* var_c73540 */ ))+6) ); var_c01013 = (word) ( *( (fPt) ((* (ptr) pd163 ))))(var_c73508, pd163); }; { word x164; word x165; *(float*)&var_c73476 = ( x164 = var_c01013, *(float*)&x164 ) + ( x165 = degrees_v13544, *(float*)&x165 ); }; }; { word pd166; pd166 = (* (( (ptr) (* (( (ptr) gf_c79844)+235)/* var_c72836 */ ))+11) ); loLine_v24984 = (word) ( *( (fPt) ((* (ptr) pd166 ))))(lo_v13600, var_c73476, pd166); }; }; SOURCE(16738, 126) { word var_c73572; { W2 var_c73604; word var_c01014; { word x167; word x168; *(float*)&var_c73604.f0 = ( x167 = lo_v13600.f0, *(float*)&x167 ) - ( x168 = hi_v13628.f0, *(float*)&x168 ); }; { word x169; word x170; *(float*)&var_c73604.f1 = ( x169 = lo_v13600.f1, *(float*)&x169 ) - ( x170 = hi_v13628.f1, *(float*)&x170 ); }; { word pd171; pd171 = (* (( (ptr) (* (( (ptr) gf_c79844)+239)/* var_c73540 */ ))+6) ); var_c01014 = (word) ( *( (fPt) ((* (ptr) pd171 ))))(var_c73604, pd171); }; { word x172; word x173; *(float*)&var_c73572 = ( x172 = var_c01014, *(float*)&x172 ) + ( x173 = degrees_v13544, *(float*)&x173 ); }; }; { word pd174; pd174 = (* (( (ptr) (* (( (ptr) gf_c79844)+235)/* var_c72836 */ ))+11) ); hiLine_v25012 = (word) ( *( (fPt) ((* (ptr) pd174 ))))(hi_v13628, var_c73572, pd174); }; }; SOURCE(16866, 27) line1_v13700 = XR_NewObject(8, (* (( (ptr) gf_c79844)+16) )); SOURCE(16895, 22) (* (ptr) line1_v13700 ) = 3; SOURCE(16919, 90) { word var_c73668; var_c73668 = XR_NewObject(12, (* (( (ptr) gf_c79844)+21) )); (* (ptr) var_c73668 ) = loLine_v24984; (* (( (ptr) var_c73668)+1) ) = degrees_v13544; (* (( (ptr) line1_v13700)+1) ) = var_c73668; }; SOURCE(17011, 29) (void) AddAlignment_P1740(line1_v13700, alignBag_v13656); SOURCE(17042, 27) line2_v13728 = XR_NewObject(8, (* (( (ptr) gf_c79844)+16) )); SOURCE(17071, 22) (* (ptr) line2_v13728 ) = 3; SOURCE(17095, 90) { word var_c73732; var_c73732 = XR_NewObject(12, (* (( (ptr) gf_c79844)+21) )); (* (ptr) var_c73732 ) = hiLine_v25012; (* (( (ptr) var_c73732)+1) ) = degrees_v13544; (* (( (ptr) line2_v13728)+1) ) = var_c73732; }; SOURCE(17187, 29) (void) AddAlignment_P1740(line2_v13728, alignBag_v13656); /* removed tail goto */ (* (ptr) formal_c0411 ) = line1_v13700; (* (( (ptr) formal_c0411)+1) ) = line2_v13728; return; } static void SegmentAddDistanceLines_P2460(formal_c0422, distance_v13788, segNum_v13816, lo_v13844, hi_v13872, alignBag_v13900) word formal_c0422; word distance_v13788; word segNum_v13816; W2 lo_v13844; W2 hi_v13872; word alignBag_v13900; { register ptr gf_c79876 = (ptr) &globalframe; word line1_v13944; word line2_v13972; word line_v25056 = 0; word leftLine_v25084 = 0; word rightLine_v25112 = 0; /* SegmentAddDistanceLines: */ SOURCE(17223, 591) SOURCE(17223, 591) line1_v13944 = 0; SOURCE(17223, 591) line2_v13972 = 0; SOURCE(17398, 37) { word pd175; pd175 = (* (( (ptr) (* (( (ptr) gf_c79876)+235)/* var_c72836 */ ))+8) ); line_v25056 = (word) ( *( (fPt) ((* (ptr) pd175 ))))(lo_v13844, hi_v13872, pd175); }; SOURCE(17438, 49) { word pd176; pd176 = (* (( (ptr) (* (( (ptr) gf_c79876)+235)/* var_c72836 */ ))+13) ); leftLine_v25084 = (word) ( *( (fPt) ((* (ptr) pd176 ))))(line_v25056, distance_v13788, pd176); }; SOURCE(17489, 27) line1_v13944 = XR_NewObject(8, (* (( (ptr) gf_c79876)+16) )); SOURCE(17518, 25) (* (ptr) line1_v13944 ) = 1; SOURCE(17545, 22) (* (( (ptr) line1_v13944)+1) ) = leftLine_v25084; SOURCE(17569, 29) (void) AddAlignment_P1740(line1_v13944, alignBag_v13900); SOURCE(17601, 213) { float tf177; word x178; word x179; if ((FABS(( x178 = distance_v13788, *(float*)&x178 ), tf177) > ( x179 = (* (ptr) &fc115 ), *(float*)&x179 ))) { SOURCE(17631, 51) { word pd180; pd180 = (* (( (ptr) (* (( (ptr) gf_c79876)+235)/* var_c72836 */ ))+14) ); rightLine_v25112 = (word) ( *( (fPt) ((* (ptr) pd180 ))))(line_v25056, distance_v13788, pd180); }; SOURCE(17684, 27) line2_v13972 = XR_NewObject(8, (* (( (ptr) gf_c79876)+16) )); SOURCE(17713, 25) (* (ptr) line2_v13972 ) = 1; SOURCE(17740, 23) (* (( (ptr) line2_v13972)+1) ) = rightLine_v25112; SOURCE(17765, 29) (void) AddAlignment_P1740(line2_v13972, alignBag_v13900); } else { SOURCE(17803, 11) line2_v13972 = 0; }; }; /* removed tail goto */ (* (ptr) formal_c0422 ) = line1_v13944; (* (( (ptr) formal_c0422)+1) ) = line2_v13972; return; } static void SetStaticBags_P2520(ggData_v14032) word ggData_v14032; { register ptr gf_c79908 = (ptr) &globalframe; word triggerBag_v25156; word alignBag_v25184; word sceneBag_v25212; word scene_v25240; word anchor_v25268; word heuristics_v25296; word filters_v25324; word hideAlignments_v25352; /* SetStaticBags: */ SOURCE(17819, 872) SOURCE(17868, 50) triggerBag_v25156 = (* (( (ptr) (* (( (ptr) ggData_v14032)+18) ))+1) ); SOURCE(17920, 44) alignBag_v25184 = (* (( (ptr) (* (( (ptr) ggData_v14032)+18) ))+4) ); SOURCE(17966, 46) sceneBag_v25212 = (* (( (ptr) (* (( (ptr) ggData_v14032)+18) ))+8) ); SOURCE(18014, 27) scene_v25240 = (* (( (ptr) ggData_v14032)+11) ); SOURCE(18043, 29) anchor_v25268 = (* (( (ptr) ggData_v14032)+14) ); SOURCE(18074, 48) { word pd181; pd181 = (* (( (ptr) (* (( (ptr) gf_c79908)+240)/* var_c73828 */ ))+96) ); heuristics_v25296 = (word) ( *( (fPt) ((* (ptr) pd181 ))))(ggData_v14032, pd181); }; SOURCE(18124, 33) filters_v25324 = (* (( (ptr) ggData_v14032)+18) ); SOURCE(18159, 60) { word pd182; pd182 = (* (( (ptr) (* (( (ptr) gf_c79908)+240)/* var_c73828 */ ))+58) ); hideAlignments_v25352 = (unsigned) (0 == (word) ( *( (fPt) ((* (ptr) pd182 ))))(ggData_v14032, pd182)); }; SOURCE(18222, 469) if ((0 != hideAlignments_v25352)) { SOURCE(18247, 23) (void) FlushAlignBag_P1440(alignBag_v25184); SOURCE(18272, 25) (void) FlushTriggerBag_P120(sceneBag_v25212); SOURCE(18299, 35) (void) FillStaticSceneBag_P1020(scene_v25240, sceneBag_v25212); } else { SOURCE(18345, 45) { word pd183; pd183 = (* (( (ptr) (* (( (ptr) gf_c79908)+241)/* var_c73860 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd183 ))))((* (( (ptr) gf_c79908)+39) ), (* (( (ptr) gf_c79908)+37) ), pd183); }; SOURCE(18392, 27) (void) FlushTriggerBag_P120(triggerBag_v25156); SOURCE(18421, 59) (void) FillStaticTriggerBag_P900(anchor_v25268, scene_v25240, heuristics_v25296, triggerBag_v25156); SOURCE(18482, 25) (void) FlushTriggerBag_P120(sceneBag_v25212); SOURCE(18509, 35) (void) FillStaticSceneBag_P1020(scene_v25240, sceneBag_v25212); SOURCE(18546, 23) (void) FlushAlignBag_P1440(alignBag_v25184); SOURCE(18571, 74) (void) FillStaticAlignBag_P1620(triggerBag_v25156, sceneBag_v25212, ggData_v14032, hideAlignments_v25352, alignBag_v25184) ; SOURCE(18647, 44) { word pd184; pd184 = (* (( (ptr) (* (( (ptr) gf_c79908)+241)/* var_c73860 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd184 ))))((* (( (ptr) gf_c79908)+39) ), (* (( (ptr) gf_c79908)+37) ), pd184); }; }; } static void SetStaticTriggerAndAlignBags_P2580(ggData_v14092) word ggData_v14092; { register ptr gf_c79940 = (ptr) &globalframe; word triggerBag_v25396; word alignBag_v25424; word scene_v25452; word anchor_v25480; word heuristics_v25508; word filters_v25536; word hideAlignments_v25564; /* SetStaticTriggerAndAlignBags: */ SOURCE(18700, 664) SOURCE(18763, 50) triggerBag_v25396 = (* (( (ptr) (* (( (ptr) ggData_v14092)+18) ))+1) ); SOURCE(18815, 44) alignBag_v25424 = (* (( (ptr) (* (( (ptr) ggData_v14092)+18) ))+4) ); SOURCE(18861, 27) scene_v25452 = (* (( (ptr) ggData_v14092)+11) ); SOURCE(18890, 29) anchor_v25480 = (* (( (ptr) ggData_v14092)+14) ); SOURCE(18921, 48) { word pd185; pd185 = (* (( (ptr) (* (( (ptr) gf_c79940)+240)/* var_c73828 */ ))+96) ); heuristics_v25508 = (word) ( *( (fPt) ((* (ptr) pd185 ))))(ggData_v14092, pd185); }; SOURCE(18971, 33) filters_v25536 = (* (( (ptr) ggData_v14092)+18) ); SOURCE(19006, 60) { word pd186; pd186 = (* (( (ptr) (* (( (ptr) gf_c79940)+240)/* var_c73828 */ ))+58) ); hideAlignments_v25564 = (unsigned) (0 == (word) ( *( (fPt) ((* (ptr) pd186 ))))(ggData_v14092, pd186)); }; SOURCE(19068, 296) if ((0 != hideAlignments_v25564)) { SOURCE(19093, 23) (void) FlushAlignBag_P1440(alignBag_v25424); } else { SOURCE(19125, 241) { word sceneBag_v25608; SOURCE(19127, 46) sceneBag_v25608 = (* (( (ptr) (* (( (ptr) ggData_v14092)+18) ))+8) ); SOURCE(19175, 27) (void) FlushTriggerBag_P120(triggerBag_v25396); SOURCE(19204, 59) (void) FillStaticTriggerBag_P900(anchor_v25480, scene_v25452, heuristics_v25508, triggerBag_v25396); SOURCE(19265, 23) (void) FlushAlignBag_P1440(alignBag_v25424); SOURCE(19290, 74) (void) FillStaticAlignBag_P1620(triggerBag_v25396, sceneBag_v25608, ggData_v14092, hideAlignments_v25564, alignBag_v25424) ; }; }; } static void SetDynamicBags_P2640(ggData_v14152, action_v14180) word ggData_v14152; word action_v14180; { register ptr gf_c79972 = (ptr) &globalframe; word triggerBag_v25652; word alignBag_v25680; word sceneBag_v25708; word scene_v25736; word anchor_v25764; word heuristics_v25792; word filters_v25820; word hideAlignments_v25848; /* SetDynamicBags: */ SOURCE(19373, 1118) SOURCE(19437, 50) triggerBag_v25652 = (* (( (ptr) (* (( (ptr) ggData_v14152)+18) ))+1) ); SOURCE(19489, 44) alignBag_v25680 = (* (( (ptr) (* (( (ptr) ggData_v14152)+18) ))+4) ); SOURCE(19535, 46) sceneBag_v25708 = (* (( (ptr) (* (( (ptr) ggData_v14152)+18) ))+8) ); SOURCE(19583, 27) scene_v25736 = (* (( (ptr) ggData_v14152)+11) ); SOURCE(19612, 29) anchor_v25764 = (* (( (ptr) ggData_v14152)+14) ); SOURCE(19643, 48) { word pd187; pd187 = (* (( (ptr) (* (( (ptr) gf_c79972)+240)/* var_c73828 */ ))+96) ); heuristics_v25792 = (word) ( *( (fPt) ((* (ptr) pd187 ))))(ggData_v14152, pd187); }; SOURCE(19693, 33) filters_v25820 = (* (( (ptr) ggData_v14152)+18) ); SOURCE(19728, 60) { word pd188; pd188 = (* (( (ptr) (* (( (ptr) gf_c79972)+240)/* var_c73828 */ ))+58) ); hideAlignments_v25848 = (unsigned) (0 == (word) ( *( (fPt) ((* (ptr) pd188 ))))(ggData_v14152, pd188)); }; SOURCE(19791, 700) if ((0 != hideAlignments_v25848)) { SOURCE(19816, 23) (void) FlushAlignBag_P1440(alignBag_v25680); SOURCE(19841, 25) (void) FlushTriggerBag_P120(sceneBag_v25708); SOURCE(19868, 27) (void) FlushTriggerBag_P120(triggerBag_v25652); SOURCE(19926, 89) (void) FillDynamicSceneBag_P1080(scene_v25736, sceneBag_v25708, (* (( (ptr) (* (( (ptr) ggData_v14152)+16) ))+17) ), (* (W5Pt) ( ( (ptr) (* (( (ptr) ggData_v14152)+16) ))+18) )); } else { SOURCE(20026, 46) { word pd189; pd189 = (* (( (ptr) (* (( (ptr) gf_c79972)+241)/* var_c73860 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd189 ))))((* (( (ptr) gf_c79972)+36) ), (* (( (ptr) gf_c79972)+37) ), pd189); }; SOURCE(20074, 27) (void) FlushTriggerBag_P120(triggerBag_v25652); SOURCE(20103, 113) (void) FillDynamicTriggerBag_P960(anchor_v25764, scene_v25736, heuristics_v25792, triggerBag_v25652, (* (( (ptr) (* (( (ptr) ggData_v14152)+16) ))+17) ), (* (W5Pt) (( (ptr) (* (( (ptr) ggData_v14152)+16) ))+18) )); SOURCE(20218, 25) (void) FlushTriggerBag_P120(sceneBag_v25708); SOURCE(20245, 89) (void) FillDynamicSceneBag_P1080(scene_v25736, sceneBag_v25708, (* (( (ptr) (* (( (ptr) ggData_v14152)+16) ))+17) ), (* (W5Pt) ( ( (ptr) (* (( (ptr) ggData_v14152)+16) ))+18) )); SOURCE(20336, 23) (void) FlushAlignBag_P1440(alignBag_v25680); SOURCE(20361, 83) (void) FillDynamicAlignBag_P1680(triggerBag_v25652, sceneBag_v25708, ggData_v14152, hideAlignments_v25848, action_v14180, alignBag_v25680) ; SOURCE(20446, 45) { word pd190; pd190 = (* (( (ptr) (* (( (ptr) gf_c79972)+241)/* var_c73860 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd190 ))))((* (( (ptr) gf_c79972)+36) ), (* (( (ptr) gf_c79972)+37) ), pd190); }; }; } static void StaticToDynamicBags_P2700(ggData_v14240, saveForeground_v14268) word ggData_v14240; word saveForeground_v14268; { register ptr gf_c80004 = (ptr) &globalframe; word scene_v25892; W5 bd_v25920; word ec_v25948; word triggerBag_v25976; word sceneBag_v26004; word alignBag_v26032; word heuristics_v26060; word hideAlignments_v26088; word hotMoving_v26116; /* StaticToDynamicBags: */ SOURCE(20501, 2503) SOURCE(20584, 27) scene_v25892 = (* (( (ptr) ggData_v14240)+11) ); SOURCE(20613, 45) bd_v25920 = (* (W5Pt) (( (ptr) (* (( (ptr) ggData_v14240)+16) ))+18) ); SOURCE(20660, 49) ec_v25948 = (* (( (ptr) (* (( (ptr) ggData_v14240)+16) ))+17) ); SOURCE(20711, 50) triggerBag_v25976 = (* (( (ptr) (* (( (ptr) ggData_v14240)+18) ))+1) ); SOURCE(20763, 46) sceneBag_v26004 = (* (( (ptr) (* (( (ptr) ggData_v14240)+18) ))+8) ); SOURCE(20811, 44) alignBag_v26032 = (* (( (ptr) (* (( (ptr) ggData_v14240)+18) ))+4) ); SOURCE(20857, 48) { word pd191; pd191 = (* (( (ptr) (* (( (ptr) gf_c80004)+240)/* var_c73828 */ ))+96) ); heuristics_v26060 = (word) ( *( (fPt) ((* (ptr) pd191 ))))(ggData_v14240, pd191); }; SOURCE(20907, 60) { word pd192; pd192 = (* (( (ptr) (* (( (ptr) gf_c80004)+240)/* var_c73828 */ ))+58) ); hideAlignments_v26088 = (unsigned) (0 == (word) ( *( (fPt) ((* (ptr) pd192 ))))(ggData_v14240, pd192)); }; SOURCE(20969, 42) hotMoving_v26116 = (word) SomeSelectedIsHot_P4440(scene_v25892); SOURCE(21014, 1990) if ((0 != (* (( (ptr) (* (( (ptr) ggData_v14240)+15) ))+3) ))) { SOURCE(21093, 23) (void) FlushAlignBag_P1440(alignBag_v26032); SOURCE(21118, 66) (void) CopyTriggerBag_P300((* (( (ptr) (* (( (ptr) ggData_v14240)+18) ))+2) ), triggerBag_v25976); SOURCE(21186, 62) (void) CopyTriggerBag_P300((* (( (ptr) (* (( (ptr) ggData_v14240)+18) ))+9) ), sceneBag_v26004); SOURCE(21250, 42) { word var_c73892; var_c73892 = (word) RemoveMoving_P3420(scene_v25892, sceneBag_v26004, ec_v25948, bd_v25920); }; } else { SOURCE(21301, 1705) { word autoAdded_v26160 = 0; word autoTriggers_v26188 = 0; word filterLists_v26216; word someAlignmentsActive_v26244; SOURCE(21373, 57) { word pd193; pd193 = (* (( (ptr) (* (( (ptr) gf_c80004)+240)/* var_c73828 */ ))+22) ); filterLists_v26216 = (word) ( *( (fPt) ((* (ptr) pd193 ))))(ggData_v14240, pd193); }; SOURCE(21432, 62) someAlignmentsActive_v26244 = (unsigned) (0 == (word) EmptyFilterLists_P3480(filterLists_v26216)); SOURCE(21496, 51) { word pd194; pd194 = (* (( (ptr) (* (( (ptr) gf_c80004)+241)/* var_c73860 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd194 ))))((* (( (ptr) gf_c80004)+34) ), (* (( (ptr) gf_c80004)+37) ), pd194); }; SOURCE(21550, 318) if ((0 != someAlignmentsActive_v26244)) { SOURCE(21581, 66) (void) CopyTriggerBag_P300((* (( (ptr) (* (( (ptr) ggData_v14240)+18) ))+2) ), triggerBag_v25976); SOURCE(21649, 44) { word var_c73924; var_c73924 = (word) RemoveMoving_P3420(scene_v25892, triggerBag_v25976, ec_v25948, bd_v25920); }; SOURCE(21695, 87) { W2 var_c73956; (void) AddHeuristics_P3240((word) &var_c73956, scene_v25892, heuristics_v26060, (* (( (ptr) gf_c80004)+41) ), triggerBag_v25976, ec_v25948 , bd_v25920); autoTriggers_v26188 = var_c73956.f1; autoAdded_v26160 = var_c73956.f0; }; SOURCE(21784, 37) (* (( (ptr) (* (( (ptr) ggData_v14240)+18) ))+3) ) = 1; } else { SOURCE(21830, 38) (* (( (ptr) (* (( (ptr) ggData_v14240)+18) ))+3) ) = 0; }; SOURCE(21870, 62) (void) CopyTriggerBag_P300((* (( (ptr) (* (( (ptr) ggData_v14240)+18) ))+9) ), sceneBag_v26004); SOURCE(21934, 42) { word var_c73988; var_c73988 = (word) RemoveMoving_P3420(scene_v25892, sceneBag_v26004, ec_v25948, bd_v25920); }; SOURCE(21978, 970) if (((0 != autoAdded_v26160) || (0 != hotMoving_v26116))) { SOURCE(22011, 44) (* (( (ptr) (* (( (ptr) ggData_v14240)+18) ))+5) ) = 0; SOURCE(22057, 727) if ((0 != hotMoving_v26116)) { SOURCE(22092, 36) (* (( (ptr) (* (( (ptr) ggData_v14240)+18) ))+7) ) = 0; SOURCE(22130, 23) (void) FlushAlignBag_P1440(alignBag_v26032); SOURCE(22155, 60) (void) BuiltInFilters_P3600(triggerBag_v25976, ggData_v14240, hideAlignments_v26088, alignBag_v26032); SOURCE(22217, 40) { word pd195; pd195 = (* (( (ptr) (* (( (ptr) gf_c80004)+242)/* var_c74020 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd195 ))))(ggData_v14240, 1, pd195); }; } else { SOURCE(22266, 520) { word alignObjects_v26372 = 0; SOURCE(22330, 35) (* (( (ptr) (* (( (ptr) ggData_v14240)+18) ))+7) ) = 1; SOURCE(22367, 60) (void) CopyAlignBag_P1200((* (( (ptr) (* (( (ptr) ggData_v14240)+18) ))+6) ), alignBag_v26032); SOURCE(22429, 210) { register word list_v26500; list_v26500 = autoTriggers_v26188; lab_L100045: ; if ((list_v26500 != 0)) { } else { goto lab_L100042; }; SOURCE(22509, 130) { word var_c74052; var_c74052 = (word) IncrementalFilterSlice_P3780((* (ptr) list_v26500 ), filterLists_v26216, hideAlignments_v26088, alignBag_v26032) ; { word pd196; pd196 = (* (( (ptr) (* (( (ptr) gf_c80004)+230)/* var_c71428 */ ))+9) ); alignObjects_v26372 = (word) ( *( (fPt) ((* (ptr) pd196 ))))(var_c74052, alignObjects_v26372, pd196); }; }; list_v26500 = (* (( (ptr) list_v26500)+1) ); goto lab_L100045; lab_L100042: ; }; SOURCE(22650, 80) if ((0 != saveForeground_v14268)) { SOURCE(22675, 32) { word pd197; pd197 = (* (( (ptr) (* (( (ptr) gf_c80004)+242)/* var_c74020 */ ))+27) ); (void) ( *( (fPt) ((* (ptr) pd197 ))))(ggData_v14240, pd197); }; SOURCE(22709, 21) (void) SaveLineTable_P4860(ggData_v14240); }; SOURCE(22735, 49) { word pd198; pd198 = (* (( (ptr) (* (( (ptr) gf_c80004)+242)/* var_c74020 */ ))+24) ); (void) ( *( (fPt) ((* (ptr) pd198 ))))(ggData_v14240, alignObjects_v26372, pd198); }; }; }; } else { SOURCE(22867, 43) (* (( (ptr) (* (( (ptr) ggData_v14240)+18) ))+5) ) = 1; SOURCE(22912, 36) (* (( (ptr) (* (( (ptr) ggData_v14240)+18) ))+7) ) = 0; }; SOURCE(22954, 50) { word pd199; pd199 = (* (( (ptr) (* (( (ptr) gf_c80004)+241)/* var_c73860 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd199 ))))((* (( (ptr) gf_c80004)+34) ), (* (( (ptr) gf_c80004)+37) ), pd199); }; }; }; } static void DynamicToStaticBags_P2760(ggData_v14328, restoreForeground_v14356) word ggData_v14328; word restoreForeground_v14356; { register ptr gf_c80036 = (ptr) &globalframe; word alignBag_v26628; word filters_v26656; word hideAlignments_v26684; /* DynamicToStaticBags: */ SOURCE(23014, 905) SOURCE(23100, 44) alignBag_v26628 = (* (( (ptr) (* (( (ptr) ggData_v14328)+18) ))+4) ); SOURCE(23146, 33) filters_v26656 = (* (( (ptr) ggData_v14328)+18) ); SOURCE(23181, 60) { word pd200; pd200 = (* (( (ptr) (* (( (ptr) gf_c80036)+240)/* var_c73828 */ ))+58) ); hideAlignments_v26684 = (unsigned) (0 == (word) ( *( (fPt) ((* (ptr) pd200 ))))(ggData_v14328, pd200)); }; SOURCE(23244, 51) { word pd201; pd201 = (* (( (ptr) (* (( (ptr) gf_c80036)+241)/* var_c73860 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd201 ))))((* (( (ptr) gf_c80036)+33) ), (* (( (ptr) gf_c80036)+37) ), pd201); }; SOURCE(23297, 71) if ((0 != (* (( (ptr) (* (( (ptr) ggData_v14328)+18) ))+3) ))) { SOURCE(23336, 32) (void) SwapOldAndNewTriggerBags_P2880(ggData_v14328); }; SOURCE(23370, 30) (void) SwapOldAndNewSceneBags_P2940(ggData_v14328); SOURCE(23402, 459) if ((0 != (* (( (ptr) (* (( (ptr) ggData_v14328)+18) ))+5) ))) { } else { SOURCE(23477, 384) if ((0 != (* (( (ptr) (* (( (ptr) ggData_v14328)+18) ))+7) ))) { SOURCE(23538, 30) (void) SwapOldAndNewAlignBags_P2820(ggData_v14328); SOURCE(23570, 89) if ((0 != restoreForeground_v14356)) { SOURCE(23598, 35) { word pd202; pd202 = (* (( (ptr) (* (( (ptr) gf_c80036)+242)/* var_c74020 */ ))+28) ); (void) ( *( (fPt) ((* (ptr) pd202 ))))(ggData_v14328, pd202); }; SOURCE(23635, 24) (void) RestoreLineTable_P4920(ggData_v14328); }; } else { SOURCE(23719, 23) (void) FlushAlignBag_P1440(alignBag_v26628); SOURCE(23744, 75) (void) BuiltInFilters_P3600((* (( (ptr) (* (( (ptr) ggData_v14328)+18) ))+1) ), ggData_v14328, hideAlignments_v26684, alignBag_v26628) ; SOURCE(23821, 40) { word pd203; pd203 = (* (( (ptr) (* (( (ptr) gf_c80036)+242)/* var_c74020 */ ))+25) ); (void) ( *( (fPt) ((* (ptr) pd203 ))))(ggData_v14328, 1, pd203); }; }; }; SOURCE(23869, 50) { word pd204; pd204 = (* (( (ptr) (* (( (ptr) gf_c80036)+241)/* var_c73860 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd204 ))))((* (( (ptr) gf_c80036)+33) ), (* (( (ptr) gf_c80036)+37) ), pd204); }; } static void SwapOldAndNewAlignBags_P2820(ggData_v14416) word ggData_v14416; { word tempBag_v26728 = 0; /* SwapOldAndNewAlignBags: */ SOURCE(23925, 194) SOURCE(23994, 33) tempBag_v26728 = (* (( (ptr) (* (( (ptr) ggData_v14416)+18) ))+4) ); SOURCE(24029, 52) (* (( (ptr) (* (( (ptr) ggData_v14416)+18) ))+4) ) = (* (( (ptr) (* (( (ptr) ggData_v14416)+18) ))+6) ); SOURCE(24083, 36) (* (( (ptr) (* (( (ptr) ggData_v14416)+18) ))+6) ) = tempBag_v26728; } static void SwapOldAndNewTriggerBags_P2880(ggData_v14476) word ggData_v14476; { word tempBag_v26772 = 0; /* SwapOldAndNewTriggerBags: */ SOURCE(24125, 206) SOURCE(24198, 35) tempBag_v26772 = (* (( (ptr) (* (( (ptr) ggData_v14476)+18) ))+1) ); SOURCE(24235, 56) (* (( (ptr) (* (( (ptr) ggData_v14476)+18) ))+1) ) = (* (( (ptr) (* (( (ptr) ggData_v14476)+18) ))+2) ); SOURCE(24293, 38) (* (( (ptr) (* (( (ptr) ggData_v14476)+18) ))+2) ) = tempBag_v26772; } static void SwapOldAndNewSceneBags_P2940(ggData_v14536) word ggData_v14536; { word tempBag_v26816 = 0; /* SwapOldAndNewSceneBags: */ SOURCE(24337, 196) SOURCE(24408, 33) tempBag_v26816 = (* (( (ptr) (* (( (ptr) ggData_v14536)+18) ))+8) ); SOURCE(24443, 52) (* (( (ptr) (* (( (ptr) ggData_v14536)+18) ))+8) ) = (* (( (ptr) (* (( (ptr) ggData_v14536)+18) ))+9) ); SOURCE(24497, 36) (* (( (ptr) (* (( (ptr) ggData_v14536)+18) ))+9) ) = tempBag_v26816; } static word UpdateBagsForAdd_P3000(oldAncestor_v14596, newAncestorD_v14624, trajEnd_v14652, ggData_v14680) word oldAncestor_v14596; word newAncestorD_v14624; word trajEnd_v14652; word ggData_v14680; { register ptr gf_c80068 = (ptr) &globalframe; word repaintForeground_v14724; word triggerBag_v26860; word sceneBag_v26888; word alignBag_v26916; word scene_v26944; word newHot_v26972 = 0; word oldHot_v27000 = 0; word newWhole_v27028 = 0; word oldWhole_v27056 = 0; word hotMinusOldHot_v27084 = 0; word hideAlignments_v27112; word alignObjects_v27140 = 0; /* UpdateBagsForAdd: */ SOURCE(24539, 1867) SOURCE(24539, 1867) repaintForeground_v14724 = 0; SOURCE(24702, 50) triggerBag_v26860 = (* (( (ptr) (* (( (ptr) ggData_v14680)+18) ))+1) ); SOURCE(24754, 46) sceneBag_v26888 = (* (( (ptr) (* (( (ptr) ggData_v14680)+18) ))+8) ); SOURCE(24802, 44) alignBag_v26916 = (* (( (ptr) (* (( (ptr) ggData_v14680)+18) ))+4) ); SOURCE(24848, 27) scene_v26944 = (* (( (ptr) ggData_v14680)+11) ); SOURCE(24946, 60) { word pd205; pd205 = (* (( (ptr) (* (( (ptr) gf_c80068)+240)/* var_c73828 */ ))+58) ); hideAlignments_v27112 = (unsigned) (0 == (word) ( *( (fPt) ((* (ptr) pd205 ))))(ggData_v14680, pd205)); }; SOURCE(25044, 54) oldHot_v27000 = (word) RemoveEntireHotSlice_P4020(oldAncestor_v14596, triggerBag_v26860); SOURCE(25100, 60) { word pd206; pd206 = (* (( (ptr) (* (( (ptr) gf_c80068)+243)/* var_c74084 */ ))+20) ); newHot_v26972 = (word) ( *( (fPt) ((* (ptr) pd206 ))))((* (ptr) newAncestorD_v14624 ), 1, pd206); }; SOURCE(25162, 61) if ((newHot_v26972 != 0)) { SOURCE(25183, 40) { word var_c74116; var_c74116 = (word) AddSliceFeature_P3720(newHot_v26972, triggerBag_v26860); }; }; SOURCE(25225, 54) oldWhole_v27056 = (word) RemoveEntireHotSlice_P4020(oldAncestor_v14596, sceneBag_v26888); SOURCE(25281, 62) { word pd207; pd207 = (* (( (ptr) (* (( (ptr) gf_c80068)+232)/* var_c71940 */ ))+29) ); newWhole_v27028 = (word) ( *( (fPt) ((* (ptr) pd207 ))))((* (ptr) newAncestorD_v14624 ), 0, 6, pd207); }; SOURCE(25345, 40) { word var_c74148; var_c74148 = (word) AddSliceFeature_P3720(newWhole_v27028, sceneBag_v26888); }; SOURCE(25387, 1019) if ((newHot_v26972 == 0)) { SOURCE(25408, 26) hotMinusOldHot_v27084 = 0; } else { SOURCE(25434, 974) { word maskD_v27268 = 0; word outD_v27296 = 0; word traj_v27324; word trajData_v27352; word filterLists_v27380; SOURCE(25530, 99) { word pd208; pd208 = (* (( (ptr) (* (( (ptr) gf_c80068)+244)/* var_c74180 */ ))+78) ); traj_v27324 = (* (ptr) ( *( (fPt) ((* (ptr) pd208 ))))((* (ptr) newAncestorD_v14624 ), (* (( (ptr) newAncestorD_v14624)+1) ), 1, (* (( (ptr) gf_c80068)+32) ), pd208) ); }; SOURCE(25631, 38) trajData_v27352 = XR_Narrow((* (( (ptr) traj_v27324)+1) ), (* (( (ptr) gf_c80068)+31) )); SOURCE(25671, 57) { word pd209; pd209 = (* (( (ptr) (* (( (ptr) gf_c80068)+240)/* var_c73828 */ ))+22) ); filterLists_v27380 = (word) ( *( (fPt) ((* (ptr) pd209 ))))(ggData_v14680, pd209); }; SOURCE(25730, 423) if ((trajEnd_v14652 == 0)) { SOURCE(25751, 184) { word var_c74212; word var_c74308; { word var_c74244; { word pd210; pd210 = (* (( (ptr) (* (( (ptr) gf_c80068)+245)/* var_c74276 */ ))+9) ); var_c74244 = (word) ( *( (fPt) ((* (ptr) pd210 ))))(trajData_v27352, 0, pd210); }; { word pd211; pd211 = (* (( (ptr) (* (( (ptr) gf_c80068)+233)/* var_c71972 */ ))+8) ); var_c74212 = (word) ( *( (fPt) ((* (ptr) pd211 ))))(traj_v27324, var_c74244, pd211); }; }; { word var_c74340; { word pd212; pd212 = (* (( (ptr) (* (( (ptr) gf_c80068)+245)/* var_c74276 */ ))+8) ); var_c74340 = (word) ( *( (fPt) ((* (ptr) pd212 ))))(trajData_v27352, 0, pd212); }; { word pd213; pd213 = (* (( (ptr) (* (( (ptr) gf_c80068)+233)/* var_c71972 */ ))+8) ); var_c74308 = (word) ( *( (fPt) ((* (ptr) pd213 ))))(traj_v27324, var_c74340, pd213); }; }; { word pd214; pd214 = (* (( (ptr) (* (( (ptr) gf_c80068)+245)/* var_c74276 */ ))+20) ); maskD_v27268 = (word) ( *( (fPt) ((* (ptr) pd214 ))))(var_c74212, var_c74308, pd214); }; }; } else { SOURCE(25935, 218) { word var_c74372; word var_c74500; { word var_c74404; { word var_c74436; { word pd215; pd215 = (* (( (ptr) (* (( (ptr) gf_c80068)+246)/* var_c74468 */ ))+37) ); var_c74436 = (word) ( *( (fPt) ((* (ptr) pd215 ))))(traj_v27324, pd215); }; { word pd216; pd216 = (* (( (ptr) (* (( (ptr) gf_c80068)+245)/* var_c74276 */ ))+9) ); var_c74404 = (word) ( *( (fPt) ((* (ptr) pd216 ))))(trajData_v27352, var_c74436, pd216); }; }; { word pd217; pd217 = (* (( (ptr) (* (( (ptr) gf_c80068)+233)/* var_c71972 */ ))+8) ); var_c74372 = (word) ( *( (fPt) ((* (ptr) pd217 ))))(traj_v27324, var_c74404, pd217); }; }; { word var_c74532; { word var_c74564; { word pd218; pd218 = (* (( (ptr) (* (( (ptr) gf_c80068)+246)/* var_c74468 */ ))+39) ); var_c74564 = (word) ( *( (fPt) ((* (ptr) pd218 ))))(traj_v27324, pd218); }; { word pd219; pd219 = (* (( (ptr) (* (( (ptr) gf_c80068)+245)/* var_c74276 */ ))+8) ); var_c74532 = (word) ( *( (fPt) ((* (ptr) pd219 ))))(trajData_v27352, var_c74564, pd219); }; }; { word pd220; pd220 = (* (( (ptr) (* (( (ptr) gf_c80068)+233)/* var_c71972 */ ))+8) ); var_c74500 = (word) ( *( (fPt) ((* (ptr) pd220 ))))(traj_v27324, var_c74532, pd220); }; }; { word pd221; pd221 = (* (( (ptr) (* (( (ptr) gf_c80068)+245)/* var_c74276 */ ))+20) ); maskD_v27268 = (word) ( *( (fPt) ((* (ptr) pd221 ))))(var_c74372, var_c74500, pd221); }; }; }; SOURCE(26155, 60) { word pd222; pd222 = (* (( (ptr) (* (( (ptr) gf_c80068)+244)/* var_c74180 */ ))+84) ); outD_v27296 = (word) ( *( (fPt) ((* (ptr) pd222 ))))(maskD_v27268, pd222); }; SOURCE(26217, 95) { word var_c74596; { word pd223; pd223 = (* (( (ptr) (* (( (ptr) gf_c80068)+232)/* var_c71940 */ ))+31) ); var_c74596 = (word) ( *( (fPt) ((* (ptr) pd223 ))))(newWhole_v27028, outD_v27296, pd223); }; { word pd224; pd224 = (* (( (ptr) (* (( (ptr) gf_c80068)+232)/* var_c71940 */ ))+31) ); hotMinusOldHot_v27084 = (word) ( *( (fPt) ((* (ptr) pd224 ))))(newHot_v26972, var_c74596, pd224); }; }; SOURCE(26314, 92) alignObjects_v27140 = (word) IncrementalFilterSlice_P3780(hotMinusOldHot_v27084, filterLists_v27380, hideAlignments_v27112, alignBag_v26916) ; }; }; SOURCE(24539, 1867) return(repaintForeground_v14724); } static void UpdateBagsForNewSlices_P3060(newSlices_v14784, ggData_v14812) word newSlices_v14784; word ggData_v14812; { register ptr gf_c80100 = (ptr) &globalframe; word triggerBag_v27424; word sceneBag_v27452; word alignBag_v27480; word scene_v27508; /* UpdateBagsForNewSlices: */ SOURCE(26415, 467) SOURCE(26498, 50) triggerBag_v27424 = (* (( (ptr) (* (( (ptr) ggData_v14812)+18) ))+1) ); SOURCE(26550, 46) sceneBag_v27452 = (* (( (ptr) (* (( (ptr) ggData_v14812)+18) ))+8) ); SOURCE(26598, 44) alignBag_v27480 = (* (( (ptr) (* (( (ptr) ggData_v14812)+18) ))+4) ); SOURCE(26644, 27) scene_v27508 = (* (( (ptr) ggData_v14812)+11) ); SOURCE(26674, 208) { register word list_v27552; list_v27552 = newSlices_v14784; lab_L100049: ; if ((list_v27552 != 0)) { } else { goto lab_L100046; }; { word firstSlice_v27680; word wholeD_v27708; SOURCE(26741, 30) firstSlice_v27680 = (* (ptr) list_v27552 ); SOURCE(26773, 69) { word pd225; pd225 = (* (( (ptr) (* (( (ptr) gf_c80100)+232)/* var_c71940 */ ))+29) ); wholeD_v27708 = (word) ( *( (fPt) ((* (ptr) pd225 ))))(firstSlice_v27680, 0, 6, pd225); }; SOURCE(26844, 38) { word var_c74628; var_c74628 = (word) AddSliceFeature_P3720(wholeD_v27708, sceneBag_v27452); }; }; list_v27552 = (* (( (ptr) list_v27552)+1) ); goto lab_L100049; lab_L100046: ; }; } static void AddAnchorTrigger_P3120(anchor_v14956, triggerBag_v14984) word anchor_v14956; word triggerBag_v14984; { /* AddAnchorTrigger: */ SOURCE(26897, 111) SOURCE(26964, 44) { word var_c74660; var_c74660 = (word) CreateAnchorTrigger_P3660(anchor_v14956, triggerBag_v14984); }; } static void AddAllHotSlices_P3180(scene_v15044, formal_c01063) word scene_v15044; word formal_c01063; { W8 var_c80132; /* declaration of triggerBag_v15072 skipped */ register ptr gf_c80164 = (ptr) &globalframe; /* declaration of var_c74692 skipped */ /* declaration of feature_v27752 skipped */ var_c80132.f4/* triggerBag_v15072 */ = formal_c01063; /* AddAllHotSlices: */ SOURCE(27014, 333) { word tmpAddr226; tmpAddr226 = (word) (( (ptr) &var_c80132)+5)/* var_c74692 */ ; (* (ptr) tmpAddr226 ) = ( ((word) (fPt) AddHotToTriggerBag_P7248) ); (* (( (ptr) tmpAddr226) + 1) ) = 1; }; SOURCE(27079, 20) var_c80132.f7/* feature_v27752 */ = 0; SOURCE(27277, 70) { word var_c74756; word pd227; pd227 = (* (( (ptr) (* (( (ptr) gf_c80164)+247)/* var_c74724 */ ))+32) ); var_c74756 = (word) ( *( (fPt) ((* (ptr) pd227 ))))(scene_v15044, 0, (word) (( (bPt) &var_c80132)+20)/* var_c74692 */ , 1, 0, pd227) ; }; } static word AddHotToTriggerBag_P7248(sliceD_v27856, formal_c80196) word sliceD_v27856; word formal_c80196; { word done_v27900; formal_c80196 = (formal_c80196 - 20); /* AddHotToTriggerBag: */ SOURCE(27101, 171) SOURCE(27101, 171) done_v27900 = 0; SOURCE(27185, 54) (* (( (ptr) formal_c80196)+7) ) = (word) FeatureFromSlice_P780((* (ptr) sliceD_v27856 ), (* (( (ptr) sliceD_v27856)+1) )) ; SOURCE(27241, 31) (void) AddFeature_P4080((* (( (ptr) formal_c80196)+7) ), (* (( (ptr) formal_c80196)+4) )); SOURCE(27101, 171) return(done_v27900); } static void AddHeuristics_P3240(formal_c0551, formal_c01064, heuristics_v15160, atom_v15188, formal_c01065, formal_c01066, formal_c01067) word formal_c0551; word formal_c01064; word heuristics_v15160; word atom_v15188; word formal_c01065; word formal_c01066; W5 formal_c01067; { W17 var_c80228; /* declaration of scene_v15132 skipped */ /* declaration of triggerBag_v15216 skipped */ /* declaration of ec_v15244 skipped */ /* declaration of bd_v15272 skipped */ register ptr gf_c80260 = (ptr) &globalframe; /* declaration of autoAdded_v15316 skipped */ /* declaration of autoTriggers_v15344 skipped */ /* declaration of var_c74788 skipped */ /* declaration of feature_v27928 skipped */ (* (( (ptr) &var_c80228)+4)/* scene_v15132 */ ) = formal_c01064; (* (( (ptr) &var_c80228)+5)/* triggerBag_v15216 */ ) = formal_c01065; (* (( (ptr) &var_c80228)+6)/* ec_v15244 */ ) = formal_c01066; (* (W5Pt) (( (ptr) &var_c80228)+7)/* bd_v15272 */ ) = formal_c01067; /* AddHeuristics: */ SOURCE(27353, 1461) { word tmpAddr228; tmpAddr228 = (word) (( (ptr) &var_c80228)+14)/* var_c74788 */ ; (* (ptr) tmpAddr228 ) = ( ((word) (fPt) AddToTriggerBag_P7356) ); (* (( (ptr) tmpAddr228) + 1) ) = 1; }; SOURCE(27353, 1461) (* (( (ptr) &var_c80228)+12)/* autoAdded_v15316 */ ) = 0; SOURCE(27353, 1461) (* (( (ptr) &var_c80228)+13)/* autoTriggers_v15344 */ ) = 0; SOURCE(27568, 20) (* (( (ptr) &var_c80228)+16)/* feature_v27928 */ ) = 0; SOURCE(27590, 29) if ((0 == heuristics_v15160)) { SOURCE(27613, 6) goto lab_L100050; }; SOURCE(27621, 1193) { word var_c74820; var_c74820 = atom_v15188; if ((var_c74820 == (* (( (ptr) gf_c80260)+41) ))) { SOURCE(27647, 1114) SOURCE(28689, 70) { word var_c74852; word pd229; pd229 = (* (( (ptr) (* (( (ptr) gf_c80260)+247)/* var_c74724 */ ))+32) ); var_c74852 = (word) ( *( (fPt) ((* (ptr) pd229 ))))((* (( (ptr) &var_c80228)+4)/* scene_v15132 */ ), 0, (word) (( (bPt) &var_c80228)+56) /* var_c74788 */ , 0, 0, pd229); }; } else { if ((var_c74820 == (* (( (ptr) gf_c80260)+35) ))) { } else { SOURCE(28794, 20) (void) XR_RaiseError((word) (( (bPt) gf_c80260)+172), 0); }; }; }; /* removed tail goto */ lab_L100050: ; (* (ptr) formal_c0551 ) = (* (( (ptr) &var_c80228)+12)/* autoAdded_v15316 */ ); (* (( (ptr) formal_c0551)+1) ) = (* (( (ptr) &var_c80228)+13)/* autoTriggers_v15344 */ ); return; } static word AddToTriggerBag_P7356(sliceD_v28048, formal_c80324) word sliceD_v28048; word formal_c80324; { register ptr gf_c80292 = (ptr) &globalframe; word done_v28092; word stationaryD_v28120 = 0; word oldFeature_v28148 = 0; formal_c80324 = (formal_c80324 - 56); /* AddToTriggerBag: */ SOURCE(27649, 23) SOURCE(27649, 23) done_v28092 = 0; SOURCE(27785, 49) { word pd230; pd230 = (* (( (ptr) (* (( (ptr) gf_c80292)+232)/* var_c71940 */ ))+28) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd230 ))))(sliceD_v28048, pd230))) { SOURCE(27828, 6) return(done_v28092); }; }; SOURCE(27865, 52) stationaryD_v28120 = (word) StationaryParts_P3300(sliceD_v28048, (* (( (ptr) formal_c80324)+4) ), (* (( (ptr) formal_c80324)+6) ), (* (W5Pt) (( (ptr) formal_c80324)+7) )); SOURCE(27919, 51) { word pd231; pd231 = (* (( (ptr) (* (( (ptr) gf_c80292)+232)/* var_c71940 */ ))+27) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd231 ))))(stationaryD_v28120, pd231))) { SOURCE(27964, 6) return(done_v28092); }; }; SOURCE(28002, 55) oldFeature_v28148 = (word) FindFeature_P540((* (( (ptr) formal_c80324)+5) ), (* (ptr) stationaryD_v28120 )); SOURCE(28059, 622) if ((oldFeature_v28148 != 0)) { SOURCE(28084, 425) { word hotD_v28192; word newlyHotD_v28220; word totalD_v28248 = 0; SOURCE(28086, 48) hotD_v28192 = XR_Narrow((* (( (ptr) oldFeature_v28148)+1) ), (* (( (ptr) gf_c80292)+15) )); SOURCE(28136, 74) { word pd232; pd232 = (* (( (ptr) (* (( (ptr) gf_c80292)+232)/* var_c71940 */ ))+31) ); newlyHotD_v28220 = (word) ( *( (fPt) ((* (ptr) pd232 ))))(stationaryD_v28120, hotD_v28192, pd232); }; SOURCE(28237, 267) { word pd233; pd233 = (* (( (ptr) (* (( (ptr) gf_c80292)+232)/* var_c71940 */ ))+27) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd233 ))))(newlyHotD_v28220, pd233))) { SOURCE(28286, 49) { word pd234; pd234 = (* (( (ptr) (* (( (ptr) gf_c80292)+232)/* var_c71940 */ ))+30) ); totalD_v28248 = (word) ( *( (fPt) ((* (ptr) pd234 ))))(stationaryD_v28120, hotD_v28192, pd234); }; SOURCE(28337, 54) (* (( (ptr) formal_c80324)+16) ) = (word) FeatureFromSlice_P780((* (ptr) totalD_v28248 ), (* (( (ptr) totalD_v28248)+1) )) ; SOURCE(28393, 47) (void) ReplaceFeature_P600((* (( (ptr) formal_c80324)+5) ), oldFeature_v28148, (* (( (ptr) formal_c80324)+16) )); SOURCE(28442, 44) { word var_c74884; var_c74884 = XR_NewObject(8, (* (( (ptr) gf_c80292)+30) )); (* (ptr) var_c74884 ) = newlyHotD_v28220; (* (( (ptr) var_c74884)+1) ) = (* (( (ptr) formal_c80324)+13) ); (* (( (ptr) formal_c80324)+13) ) = var_c74884; }; SOURCE(28488, 16) (* (( (ptr) formal_c80324)+12) ) = 1; }; }; }; } else { SOURCE(28518, 64) (* (( (ptr) formal_c80324)+16) ) = (word) FeatureFromSlice_P780((* (ptr) stationaryD_v28120 ), (* (( (ptr) stationaryD_v28120)+1) )); SOURCE(28584, 31) (void) AddFeature_P4080((* (( (ptr) formal_c80324)+16) ), (* (( (ptr) formal_c80324)+5) )); SOURCE(28617, 46) { word var_c74916; var_c74916 = XR_NewObject(8, (* (( (ptr) gf_c80292)+30) )); (* (ptr) var_c74916 ) = stationaryD_v28120; (* (( (ptr) var_c74916)+1) ) = (* (( (ptr) formal_c80324)+13) ); (* (( (ptr) formal_c80324)+13) ) = var_c74916; }; SOURCE(28665, 16) (* (( (ptr) formal_c80324)+12) ) = 1; }; SOURCE(27649, 23) return(done_v28092); } static word StationaryParts_P3300(selectedD_v15488, scene_v15516, ec_v15544, bd_v15572) word selectedD_v15488; word scene_v15516; word ec_v15544; W5 bd_v15572; { register ptr gf_c80356 = (ptr) &globalframe; word stationaryD_v15616; word background_v28292 = 0; word overlay_v28320 = 0; word rubber_v28348 = 0; word drag_v28376 = 0; word move_v28404 = 0; word totalD_v28432 = 0; /* StationaryParts: */ SOURCE(28820, 513) SOURCE(28820, 513) stationaryD_v15616 = 0; SOURCE(29037, 57) { word pd235; pd235 = (* (( (ptr) (* (( (ptr) gf_c80356)+232)/* var_c71940 */ ))+29) ); totalD_v28432 = (word) ( *( (fPt) ((* (ptr) pd235 ))))((* (ptr) selectedD_v15488 ), 0, 6, pd235); }; SOURCE(29096, 102) { W4 var_c74948; { word pd236; pd236 = (* (( (ptr) (* (( (ptr) gf_c80356)+232)/* var_c71940 */ ))+32) ); (void) ( *( (fPt) ((* (ptr) pd236 ))))((word) &var_c74948, (* (ptr) selectedD_v15488 ), (* (( (ptr) selectedD_v15488)+1) ), ec_v15544, bd_v15572, pd236); }; drag_v28376 = var_c74948.f3; rubber_v28348 = var_c74948.f2; overlay_v28320 = var_c74948.f1; background_v28292 = var_c74948.f0; }; SOURCE(29200, 42) { word pd237; pd237 = (* (( (ptr) (* (( (ptr) gf_c80356)+232)/* var_c71940 */ ))+30) ); move_v28404 = (word) ( *( (fPt) ((* (ptr) pd237 ))))(rubber_v28348, drag_v28376, pd237); }; SOURCE(29244, 33) if ((move_v28404 == 0)) { SOURCE(29263, 14) return(totalD_v28432); }; SOURCE(29279, 54) { word pd238; pd238 = (* (( (ptr) (* (( (ptr) gf_c80356)+232)/* var_c71940 */ ))+31) ); stationaryD_v15616 = (word) ( *( (fPt) ((* (ptr) pd238 ))))(totalD_v28432, move_v28404, pd238); }; SOURCE(28820, 513) return(stationaryD_v15616); } static void StationaryTriggerParts_P3360(formal_c0587, hotD_v15676, selSliceD_v15704, editConstraints_v15732, bezierDrag_v15760) word formal_c0587; word hotD_v15676; word selSliceD_v15704; word editConstraints_v15732; W5 bezierDrag_v15760; { register ptr gf_c80388 = (ptr) &globalframe; word stationary_v15804; word someRemoved_v15832; word background_v28476 = 0; word overlay_v28504 = 0; word rubber_v28532 = 0; word drag_v28560 = 0; word move_v28588 = 0; /* StationaryTriggerParts: */ SOURCE(29339, 635) SOURCE(29339, 635) stationary_v15804 = 0; SOURCE(29339, 635) someRemoved_v15832 = 0; SOURCE(29601, 36) if ((selSliceD_v15704 == 0)) { SOURCE(29625, 12) stationary_v15804 = hotD_v15676; someRemoved_v15832 = 0; goto lab_L100051; }; SOURCE(29668, 123) { W4 var_c74980; { word pd239; pd239 = (* (( (ptr) (* (( (ptr) gf_c80388)+232)/* var_c71940 */ ))+32) ); (void) ( *( (fPt) ((* (ptr) pd239 ))))((word) &var_c74980, (* (ptr) selSliceD_v15704 ), (* (( (ptr) selSliceD_v15704)+1) ), editConstraints_v15732, bezierDrag_v15760, pd239); }; drag_v28560 = var_c74980.f3; rubber_v28532 = var_c74980.f2; overlay_v28504 = var_c74980.f1; background_v28476 = var_c74980.f0; }; SOURCE(29793, 42) { word pd240; pd240 = (* (( (ptr) (* (( (ptr) gf_c80388)+232)/* var_c71940 */ ))+30) ); move_v28588 = (word) ( *( (fPt) ((* (ptr) pd240 ))))(rubber_v28532, drag_v28560, pd240); }; SOURCE(29837, 38) if ((move_v28588 == 0)) { SOURCE(29856, 19) stationary_v15804 = hotD_v15676; someRemoved_v15832 = 0; goto lab_L100051; }; SOURCE(29877, 51) { word pd241; pd241 = (* (( (ptr) (* (( (ptr) gf_c80388)+232)/* var_c71940 */ ))+31) ); stationary_v15804 = (word) ( *( (fPt) ((* (ptr) pd241 ))))(hotD_v15676, move_v28588, pd241); }; SOURCE(29930, 44) if ((stationary_v15804 != hotD_v15676)) { SOURCE(29956, 18) someRemoved_v15832 = 1; }; /* removed tail goto */ lab_L100051: ; (* (ptr) formal_c0587 ) = stationary_v15804; (* (( (ptr) formal_c0587)+1) ) = someRemoved_v15832; return; } static word RemoveMoving_P3420(scene_v15892, formal_c01068, formal_c01069, formal_c01070) word scene_v15892; word formal_c01068; word formal_c01069; W5 formal_c01070; { W15 var_c80420; /* declaration of bag_v15920 skipped */ /* declaration of ec_v15948 skipped */ /* declaration of bd_v15976 skipped */ register ptr gf_c80452 = (ptr) &globalframe; /* declaration of someRemoved_v16020 skipped */ /* declaration of var_c75012 skipped */ /* declaration of thisRemoved_v28632 skipped */ (* (( (ptr) &var_c80420)+4)/* bag_v15920 */ ) = formal_c01068; (* (( (ptr) &var_c80420)+5)/* ec_v15948 */ ) = formal_c01069; (* (W5Pt) (( (ptr) &var_c80420)+6)/* bd_v15976 */ ) = formal_c01070; /* RemoveMoving: */ SOURCE(29980, 881) { word tmpAddr242; tmpAddr242 = (word) (( (ptr) &var_c80420)+12)/* var_c75012 */ ; (* (ptr) tmpAddr242 ) = ( ((word) (fPt) DoRemoveMoving_P7464) ); (* (( (ptr) tmpAddr242) + 1) ) = 1; }; SOURCE(29980, 881) (* (( (ptr) &var_c80420)+11)/* someRemoved_v16020 */ ) = 0; SOURCE(30114, 25) (* (( (ptr) &var_c80420)+14)/* thisRemoved_v28632 */ ) = 0; SOURCE(30792, 69) { word var_c75044; word pd243; pd243 = (* (( (ptr) (* (( (ptr) gf_c80452)+247)/* var_c74724 */ ))+32) ); var_c75044 = (word) ( *( (fPt) ((* (ptr) pd243 ))))(scene_v15892, 0, (word) (( (bPt) &var_c80420)+48)/* var_c75012 */ , 0, 0, pd243) ; }; SOURCE(29980, 881) return((* (( (ptr) &var_c80420)+11)/* someRemoved_v16020 */ )); } static word DoRemoveMoving_P7464(selectedD_v28736, formal_c80516) word selectedD_v28736; word formal_c80516; { register ptr gf_c80484 = (ptr) &globalframe; word done_v28780; word hotSliceD_v28808 = 0; word stationaryD_v28836 = 0; word oldFeature_v28864 = 0; formal_c80516 = (formal_c80516 - 48); /* DoRemoveMoving: */ SOURCE(30141, 643) SOURCE(30141, 643) done_v28780 = 0; SOURCE(30290, 46) oldFeature_v28864 = (word) FindFeature_P540((* (( (ptr) formal_c80516)+4) ), (* (ptr) selectedD_v28736 )); SOURCE(30338, 31) if ((oldFeature_v28864 == 0)) { SOURCE(30363, 6) return(done_v28780); }; SOURCE(30371, 36) hotSliceD_v28808 = XR_Narrow((* (( (ptr) oldFeature_v28864)+1) ), (* (( (ptr) gf_c80484)+15) )); SOURCE(30409, 81) { W2 var_c75076; (void) StationaryTriggerParts_P3360((word) &var_c75076, hotSliceD_v28808, selectedD_v28736, (* (( (ptr) formal_c80516)+5) ), (* (W5Pt) (( (ptr) formal_c80516)+6) )); (* (( (ptr) formal_c80516)+14) ) = var_c75076.f1; stationaryD_v28836 = var_c75076.f0; }; SOURCE(30492, 292) if ((0 != (* (( (ptr) formal_c80516)+14) ))) { SOURCE(30512, 274) { word newFeature_v28908 = 0; SOURCE(30562, 18) (* (( (ptr) formal_c80516)+11) ) = 1; SOURCE(30582, 202) { word pd244; pd244 = (* (( (ptr) (* (( (ptr) gf_c80484)+232)/* var_c71940 */ ))+27) ); if ((0 == (word) ( *( (fPt) ((* (ptr) pd244 ))))(stationaryD_v28836, pd244))) { SOURCE(30633, 67) newFeature_v28908 = (word) FeatureFromSlice_P780((* (ptr) stationaryD_v28836 ), (* (( (ptr) stationaryD_v28836)+1) )); SOURCE(30702, 43) (void) ReplaceFeature_P600((* (( (ptr) formal_c80516)+4) ), oldFeature_v28864, newFeature_v28908); } else { SOURCE(30754, 30) (void) DeleteFeature_P660((* (( (ptr) formal_c80516)+4) ), oldFeature_v28864); }; }; }; }; SOURCE(30141, 643) return(done_v28780); } static word EmptyFilterLists_P3480(filterLists_v16080) word filterLists_v16080; { word var_c16124; /* EmptyFilterLists: */ SOURCE(30867, 194) SOURCE(30936, 125) { word tc245; if ( ( ( ((* (ptr) filterLists_v16080 ) == 0) ? ((* (( (ptr) filterLists_v16080)+1) ) == 0) : 0 ) ? ((* (( (ptr) filterLists_v16080)+2) ) == 0) : 0 ) ) { tc245 = (word) (unsigned) ((* (( (ptr) filterLists_v16080)+3) ) == 0); } else { tc245 = (word) (unsigned) 0; }; return(tc245); }; } static word FilterListsFromFilter_P3540(value_v16184, filterType_v16212) word value_v16184; word filterType_v16212; { register ptr gf_c80548 = (ptr) &globalframe; word filterLists_v16256; /* FilterListsFromFilter: */ SOURCE(31067, 370) SOURCE(31067, 370) filterLists_v16256 = 0; SOURCE(31172, 56) { word var_c75108; var_c75108 = XR_NewObject(20, (* (( (ptr) gf_c80548)+29) )); (* (( (ptr) var_c75108)+4) ) = (* (ptr) &fc246 ); filterLists_v16256 = var_c75108; }; SOURCE(31230, 207) { word var_c75140; var_c75140 = filterType_v16212; switch (var_c75140) { case 0: SOURCE(31262, 34) { word var_c75172; word var_c75204; var_c75172 = XR_NewObject(8, (* (( (ptr) gf_c80548)+28) )); var_c75204 = var_c75172; (* (ptr) var_c75204 ) = value_v16184; (* (ptr) filterLists_v16256 ) = var_c75172; }; break; case 1: SOURCE(31308, 33) { word var_c75236; word var_c75268; var_c75236 = XR_NewObject(8, (* (( (ptr) gf_c80548)+28) )); var_c75268 = var_c75236; (* (ptr) var_c75268 ) = value_v16184; (* (( (ptr) filterLists_v16256)+1) ) = var_c75236; }; break; case 2: SOURCE(31352, 34) { word var_c75300; word var_c75332; var_c75300 = XR_NewObject(8, (* (( (ptr) gf_c80548)+28) )); var_c75332 = var_c75300; (* (ptr) var_c75332 ) = value_v16184; (* (( (ptr) filterLists_v16256)+2) ) = var_c75300; }; break; case 3: SOURCE(31400, 37) { word var_c75364; word var_c75396; var_c75364 = XR_NewObject(8, (* (( (ptr) gf_c80548)+28) )); var_c75396 = var_c75364; (* (ptr) var_c75396 ) = value_v16184; (* (( (ptr) filterLists_v16256)+3) ) = var_c75364; }; break; default: SOURCE(31450, 5) (void) XR_RaiseUnnamedError(); break; }; }; SOURCE(31067, 370) return(filterLists_v16256); } static void BuiltInFilters_P3600(triggerBag_v16316, ggData_v16344, hideAlignments_v16372, formal_c01071) word triggerBag_v16316; word ggData_v16344; word hideAlignments_v16372; word formal_c01071; { W12 var_c80580; /* declaration of alignBag_v16400 skipped */ register ptr gf_c80612 = (ptr) &globalframe; /* declaration of var_c75428 skipped */ /* declaration of var_c75460 skipped */ /* declaration of filterLists_v28952 skipped */ word anchor_v28980 = 0; word anchorFeature_v29008 = 0; word var_c75588; (* (( (ptr) &var_c80580)+4)/* alignBag_v16400 */ ) = formal_c01071; /* BuiltInFilters: */ SOURCE(31461, 1611) { word tmpAddr247; tmpAddr247 = (word) (( (ptr) &var_c80580)+5)/* var_c75428 */ ; (* (ptr) tmpAddr247 ) = ( ((word) (fPt) DoForSlice_P7680) ); (* (( (ptr) tmpAddr247) + 1) ) = 1; }; { word tmpAddr248; tmpAddr248 = (word) (( (ptr) &var_c80580)+7)/* var_c75460 */ ; (* (ptr) tmpAddr248 ) = ( ((word) (fPt) DoPointFireRule_P7620) ); (* (( (ptr) tmpAddr248) + 1) ) = 1; }; SOURCE(31576, 24) (* (( (ptr) &var_c80580)+9)/* filterLists_v28952 */ ) = 0; SOURCE(31646, 46) { word pd249; pd249 = (* (( (ptr) (* (( (ptr) gf_c80612)+241)/* var_c73860 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd249 ))))((* (( (ptr) gf_c80612)+38) ), (* (( (ptr) gf_c80612)+37) ), pd249); }; SOURCE(31694, 33) anchorFeature_v29008 = (* (( (ptr) triggerBag_v16316)+1) ); SOURCE(31730, 190) if ((0 != hideAlignments_v16372)) { { word var_c75492; SOURCE(31755, 23) (void) FlushAlignBag_P1440((* ((( (ptr) &var_c80580)+4)/* alignBag_v16400 */ ) )); SOURCE(31780, 132) { word tc250; word pd251; if ((anchorFeature_v29008 != 0)) { { word var_c75524; var_c75524 = XR_Narrow((* (( (ptr) anchorFeature_v29008)+1) ), (* (( (ptr) gf_c80612)+27) )); anchor_v28980 = var_c75524; var_c75492 = var_c75524; }; pd251 = (* (( (ptr) (* (( (ptr) gf_c80612)+248)/* var_c75556 */ ))+7) ); tc250 = (word) (0 != (word) ( *( (fPt) ((* (ptr) pd251 ))))(var_c75492, pd251)); } else { tc250 = (word) 0; }; if (tc250) { SOURCE(31872, 40) (void) AddAnchorObject_P4200(anchorFeature_v29008, (* (( (ptr) &var_c80580)+4)/* alignBag_v16400 */ )); }; }; SOURCE(31914, 6) return; }; }; SOURCE(31926, 44) { word pd252; pd252 = (* (( (ptr) (* (( (ptr) gf_c80612)+240)/* var_c73828 */ ))+22) ); (* (( (ptr) &var_c80580)+9)/* filterLists_v28952 */ ) = (word) ( *( (fPt) ((* (ptr) pd252 ))))(ggData_v16344, pd252); }; SOURCE(32025, 997) if ((0 != (word) EmptyFilterLists_P3480((* ((( (ptr) &var_c80580)+9)/* filterLists_v28952 */ ) )))) { SOURCE(32065, 132) { word tc253; word pd254; if ((anchorFeature_v29008 != 0)) { { word var_c75620; var_c75620 = XR_Narrow((* (( (ptr) anchorFeature_v29008)+1) ), (* (( (ptr) gf_c80612)+27) )); anchor_v28980 = var_c75620; var_c75588 = var_c75620; }; pd254 = (* (( (ptr) (* (( (ptr) gf_c80612)+248)/* var_c75556 */ ))+7) ); tc253 = (word) (0 != (word) ( *( (fPt) ((* (ptr) pd254 ))))(var_c75588, pd254)); } else { tc253 = (word) 0; }; if (tc253) { SOURCE(32157, 40) (void) AddAnchorObject_P4200(anchorFeature_v29008, (* (( (ptr) &var_c80580)+4)/* alignBag_v16400 */ )); }; }; } else { SOURCE(32206, 818) { /* declaration of sliceD_v29108 skipped */ /* declaration of pointPairGen_v29136 skipped */ SOURCE(32715, 23) (* (( (ptr) &var_c80580)+10)/* sliceD_v29108 */ ) = 0; SOURCE(32740, 32) (* (( (ptr) &var_c80580)+11)/* pointPairGen_v29136 */ ) = 0; SOURCE(32775, 198) if ((anchorFeature_v29008 != 0)) { SOURCE(32803, 43) anchor_v28980 = XR_Narrow((* (( (ptr) anchorFeature_v29008)+1) ), (* (( (ptr) gf_c80612)+27) )); SOURCE(32848, 125) { word pd255; pd255 = (* (( (ptr) (* (( (ptr) gf_c80612)+248)/* var_c75556 */ ))+7) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd255 ))))(anchor_v28980, pd255))) { SOURCE(32881, 40) (void) AddAnchorObject_P4200(anchorFeature_v29008, (* (( (ptr) &var_c80580)+4)/* alignBag_v16400 */ )); SOURCE(32923, 50) { word var_c75652; var_c75652 = (word) AnchorFireRule_P4380(anchor_v28980, (* (( (ptr) &var_c80580)+9)/* filterLists_v28952 */ ), (* (( (ptr) &var_c80580)+4) /* alignBag_v16400 */ )); }; }; }; }; SOURCE(32981, 41) (void) WalkSliceTriggers_P420(triggerBag_v16316, (word) (( (bPt) &var_c80580)+20)/* var_c75428 */ ); }; }; SOURCE(33027, 45) { word pd256; pd256 = (* (( (ptr) (* (( (ptr) gf_c80612)+241)/* var_c73860 */ ))+14) ); (void) ( *( (fPt) ((* (ptr) pd256 ))))((* (( (ptr) gf_c80612)+38) ), (* (( (ptr) gf_c80612)+37) ), pd256); }; } static word DoPointFireRule_P7620(point_v62824, formal_c80644) W2 point_v62824; word formal_c80644; { word done_v62868; formal_c80644 = (formal_c80644 - 28); /* DoPointFireRule: */ SOURCE(32208, 33) SOURCE(32208, 33) done_v62868 = 0; SOURCE(32243, 48) { word var_c75684; var_c75684 = (word) PointFireRule_P4260(point_v62824, (* (( (ptr) formal_c80644)+9) ), (* (( (ptr) formal_c80644)+4) )); }; SOURCE(32208, 33) return(done_v62868); } static word DoForSlice_P7680(feature_v62928, formal_c80708) word feature_v62928; word formal_c80708; { register ptr gf_c80676 = (ptr) &globalframe; word done_v62972; formal_c80708 = (formal_c80708 - 20); /* DoForSlice: */ SOURCE(32296, 30) SOURCE(32296, 30) done_v62972 = 0; SOURCE(32328, 30) (* (( (ptr) formal_c80708)+10) ) = XR_Narrow((* (( (ptr) feature_v62928)+1) ), (* (( (ptr) gf_c80676)+15) )); SOURCE(32360, 58) { word pd257; pd257 = (* (( (ptr) (* (( (ptr) gf_c80676)+232)/* var_c71940 */ ))+37) ); (void) ( *( (fPt) ((* (ptr) pd257 ))))((* (( (ptr) formal_c80708)+10) ), (word) (( (bPt) formal_c80708)+28), pd257); }; SOURCE(32420, 56) { word pd258; pd258 = (* (( (ptr) (* (( (ptr) gf_c80676)+232)/* var_c71940 */ ))+38) ); (* (( (ptr) formal_c80708)+11) ) = (word) ( *( (fPt) ((* (ptr) pd258 ))))((* ((( (ptr) formal_c80708)+10)) ), pd258); }; SOURCE(32478, 222) { W5 next_v29180; { word pd259; pd259 = (* (( (ptr) (* (( (ptr) gf_c80676)+232)/* var_c71940 */ ))+42) ); (void) ( *( (fPt) ((* (ptr) pd259 ))))((word) &next_v29180, (* (ptr) (* (( (ptr) formal_c80708)+10) ) ), (* (( (ptr) formal_c80708)+11) ), pd259); }; lab_L100055: ; if ((0 == next_v29180.f4)) { } else { goto lab_L100052; }; SOURCE(32633, 67) { word var_c75716; var_c75716 = (word) SegmentFireRule_P4320(9999, (* (W2Pt) &next_v29180 ), (* (W2Pt) (( (ptr) &next_v29180)+2) ), (* (( (ptr) formal_c80708)+9) ), (* (( (ptr) formal_c80708)+4) )); }; { word pd260; pd260 = (* (( (ptr) (* (( (ptr) gf_c80676)+232)/* var_c71940 */ ))+42) ); (void) ( *( (fPt) ((* (ptr) pd260 ))))((word) &next_v29180, (* (ptr) (* (( (ptr) formal_c80708)+10) ) ), (* (( (ptr) formal_c80708)+11) ), pd260); }; goto lab_L100055; lab_L100052: ; }; SOURCE(32296, 30) return(done_v62972); } static word CreateAnchorTrigger_P3660(anchor_v16460, triggerBag_v16488) word anchor_v16460; word triggerBag_v16488; { word feature_v16532; /* CreateAnchorTrigger: */ SOURCE(33078, 176) SOURCE(33078, 176) feature_v16532 = 0; SOURCE(33186, 35) feature_v16532 = (word) FeatureFromAnchor_P840(anchor_v16460); SOURCE(33223, 31) (void) AddFeature_P4080(feature_v16532, triggerBag_v16488); SOURCE(33078, 176) return(feature_v16532); } static word AddSliceFeature_P3720(sliceD_v16592, triggerBag_v16620) word sliceD_v16592; word triggerBag_v16620; { register ptr gf_c80740 = (ptr) &globalframe; word newFeature_v16664; word oldD_v29224 = 0; word unionD_v29252 = 0; word oldFeature_v29280 = 0; /* AddSliceFeature: */ SOURCE(33260, 531) SOURCE(33260, 531) newFeature_v16664 = 0; SOURCE(33433, 66) { W2 var_c75748; (void) FindOldSlice_P4500((word) &var_c75748, (* (ptr) sliceD_v16592 ), (* (ptr) triggerBag_v16620 )); oldFeature_v29280 = var_c75748.f1; oldD_v29224 = var_c75748.f0; }; SOURCE(33501, 290) if ((oldD_v29224 == 0)) { SOURCE(33522, 57) newFeature_v16664 = (word) FeatureFromSlice_P780((* (ptr) sliceD_v16592 ), (* (( (ptr) sliceD_v16592)+1) )); SOURCE(33581, 44) (void) AppendFeature_P720(newFeature_v16664, (* (ptr) triggerBag_v16620 )); } else { SOURCE(33636, 44) { word pd261; pd261 = (* (( (ptr) (* (( (ptr) gf_c80740)+232)/* var_c71940 */ ))+30) ); unionD_v29252 = (word) ( *( (fPt) ((* (ptr) pd261 ))))(oldD_v29224, sliceD_v16592, pd261); }; SOURCE(33682, 57) newFeature_v16664 = (word) FeatureFromSlice_P780((* (ptr) sliceD_v16592 ), (* (( (ptr) unionD_v29252)+1) )); SOURCE(33741, 50) (void) ReplaceFeature_P600(triggerBag_v16620, oldFeature_v29280, newFeature_v16664); }; SOURCE(33260, 531) return(newFeature_v16664); } static word IncrementalFilterSlice_P3780(sliceD_v16724, formal_c01072, hideAlignments_v16780, formal_c01073) word sliceD_v16724; word formal_c01072; word hideAlignments_v16780; word formal_c01073; { W9 var_c80772; /* declaration of filterLists_v16752 skipped */ /* declaration of alignBag_v16808 skipped */ register ptr gf_c80804 = (ptr) &globalframe; /* declaration of alignObjects_v16852 skipped */ /* declaration of var_c75780 skipped */ (* (( (ptr) &var_c80772)+4)/* filterLists_v16752 */ ) = formal_c01072; (* (( (ptr) &var_c80772)+5)/* alignBag_v16808 */ ) = formal_c01073; /* IncrementalFilterSlice: */ SOURCE(33800, 941) { word tmpAddr262; tmpAddr262 = (word) (( (ptr) &var_c80772)+7)/* var_c75780 */ ; (* (ptr) tmpAddr262 ) = ( ((word) (fPt) SplineInPointFeatures_P7788) ); (* (( (ptr) tmpAddr262) + 1) ) = 1; }; SOURCE(33800, 941) (* (( (ptr) &var_c80772)+6)/* alignObjects_v16852 */ ) = 0; SOURCE(34189, 128) if (((* (ptr) (* (( (ptr) &var_c80772)+4)/* filterLists_v16752 */ ) ) != 0) || ((* (( (ptr) (* (( (ptr) &var_c80772)+4) /* filterLists_v16752 */ ))+1) ) != 0)) { SOURCE(34253, 64) { word pd263; pd263 = (* (( (ptr) (* (( (ptr) gf_c80804)+232)/* var_c71940 */ ))+37) ); (void) ( *( (fPt) ((* (ptr) pd263 ))))(sliceD_v16724, (word) (( (bPt) &var_c80772)+28)/* var_c75780 */ , pd263); }; }; SOURCE(34319, 422) if (((* (( (ptr) (* (( (ptr) &var_c80772)+4)/* filterLists_v16752 */ ))+2) ) != 0) || ((* (( (ptr) (* (( (ptr) &var_c80772)+4) /* filterLists_v16752 */ ))+3) ) != 0)) { SOURCE(34387, 365) { word pointPairGen_v29368; SOURCE(34389, 76) { word pd264; pd264 = (* (( (ptr) (* (( (ptr) gf_c80804)+232)/* var_c71940 */ ))+38) ); pointPairGen_v29368 = (word) ( *( (fPt) ((* (ptr) pd264 ))))(sliceD_v16724, pd264); }; SOURCE(34467, 274) { W5 next_v29412; { word pd265; pd265 = (* (( (ptr) (* (( (ptr) gf_c80804)+232)/* var_c71940 */ ))+42) ); (void) ( *( (fPt) ((* (ptr) pd265 ))))((word) &next_v29412, (* (ptr) sliceD_v16724 ), pointPairGen_v29368, pd265); }; lab_L100059: ; if ((0 == next_v29412.f4)) { } else { goto lab_L100056; }; SOURCE(34622, 119) { word var_c75812; var_c75812 = (word) SegmentFireRule_P4320(9999, (* (W2Pt) &next_v29412 ), (* (W2Pt) (( (ptr) &next_v29412)+2) ), (* (( (ptr) &var_c80772)+4) /* filterLists_v16752 */ ), (* (( (ptr) &var_c80772)+5)/* alignBag_v16808 */ )); { word pd266; pd266 = (* (( (ptr) (* (( (ptr) gf_c80804)+230)/* var_c71428 */ ))+9) ); (* (( (ptr) &var_c80772)+6)/* alignObjects_v16852 */ ) = (word) ( *( (fPt) ((* (ptr) pd266 ))))(var_c75812, (* (( (ptr) &var_c80772)+6) /* alignObjects_v16852 */ ), pd266); }; }; { word pd267; pd267 = (* (( (ptr) (* (( (ptr) gf_c80804)+232)/* var_c71940 */ ))+42) ); (void) ( *( (fPt) ((* (ptr) pd267 ))))((word) &next_v29412, (* (ptr) sliceD_v16724 ), pointPairGen_v29368, pd267); }; goto lab_L100059; lab_L100056: ; }; }; }; SOURCE(33800, 941) return((* (( (ptr) &var_c80772)+6)/* alignObjects_v16852 */ )); } static word SplineInPointFeatures_P7788(point_v63644, formal_c80868) W2 point_v63644; word formal_c80868; { register ptr gf_c80836 = (ptr) &globalframe; word done_v63688; formal_c80868 = (formal_c80868 - 28); /* SplineInPointFeatures: */ SOURCE(33971, 213) SOURCE(33971, 213) done_v63688 = 0; SOURCE(34084, 100) { word var_c75844; var_c75844 = (word) PointFireRule_P4260(point_v63644, (* (( (ptr) formal_c80868)+4) ), (* (( (ptr) formal_c80868)+5) )); { word pd268; pd268 = (* (( (ptr) (* (( (ptr) gf_c80836)+230)/* var_c71428 */ ))+9) ); (* (( (ptr) formal_c80868)+6) ) = (word) ( *( (fPt) ((* (ptr) pd268 ))))(var_c75844, (* (( (ptr) formal_c80868)+6) ), pd268) ; }; }; SOURCE(33971, 213) return(done_v63688); } static word IncrementalNewTrigger_P3840(trigger_v16996, filterLists_v17024, hideAlignments_v17052, alignBag_v17080) word trigger_v16996; word filterLists_v17024; word hideAlignments_v17052; word alignBag_v17080; { register ptr gf_c80900 = (ptr) &globalframe; word alignObjects_v17124; /* IncrementalNewTrigger: */ SOURCE(34759, 543) SOURCE(34759, 543) alignObjects_v17124 = 0; SOURCE(34933, 18) alignObjects_v17124 = 0; SOURCE(34953, 349) if ((0 != hideAlignments_v17052)) { SOURCE(34978, 23) (void) FlushAlignBag_P1440(alignBag_v17080); } else { SOURCE(35012, 290) { word var_c75876; word var_c75908; var_c75876 = (* (( (ptr) trigger_v16996)+1) ); if ((var_c75876 == 0)) { goto lab_L100060; }; var_c75908 = XR_GetReferentType(var_c75876); if (((* (( (ptr) gf_c80900)+15) ) == var_c75908)) { { word sliceD_v29604; sliceD_v29604 = var_c75876; SOURCE(35072, 84) alignObjects_v17124 = (word) IncrementalFilterSlice_P3780(sliceD_v29604, filterLists_v17024, hideAlignments_v17052, alignBag_v17080) ; }; } else { if (((* (( (ptr) gf_c80900)+27) ) == var_c75908)) { { word anchor_v29648; anchor_v29648 = var_c75876; SOURCE(35180, 122) { word pd269; pd269 = (* (( (ptr) (* (( (ptr) gf_c80900)+248)/* var_c75556 */ ))+7) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd269 ))))(anchor_v29648, pd269))) { SOURCE(35211, 93) { W2 point_v29692; SOURCE(35213, 39) { /*1*/ word pd270; /*1*/ pd270 = (* (( (ptr) (* (( (ptr) gf_c80900)+248)/* var_c75556 */ ))+15) ); /*1*/ (void) ( *( (fPt) ((* (ptr) pd270 ))))((word) &point_v29692, anchor_v29648, pd270); /*1*/ }; SOURCE(35254, 48) { /*1*/ word var_c75940; /*1*/ var_c75940 = (word) PointFireRule_P4260(point_v29692, filterLists_v17024, alignBag_v17080); /*1*/ }; }; }; }; }; } else { lab_L100060: ; SOURCE(35321, 5) (void) XR_RaiseUnnamedError(); }; }; }; }; SOURCE(34759, 543) return(alignObjects_v17124); } static word IncrementalNewFilter_P3900(value_v17268, formal_c01074, triggerBag_v17324, hideAlignments_v17352, formal_c01075) word value_v17268; word formal_c01074; word triggerBag_v17324; word hideAlignments_v17352; word formal_c01075; { W14 var_c80932; /* declaration of filterType_v17296 skipped */ /* declaration of alignBag_v17380 skipped */ register ptr gf_c80964 = (ptr) &globalframe; /* declaration of alignObjects_v17424 skipped */ /* declaration of var_c75972 skipped */ /* declaration of var_c76004 skipped */ /* declaration of filterLists_v29736 skipped */ /* declaration of sliceD_v29820 skipped */ /* declaration of pointPairGen_v29848 skipped */ word anchor_v29876 = 0; word anchorFeature_v29904 = 0; (* (( (ptr) &var_c80932)+4)/* filterType_v17296 */ ) = formal_c01074; (* (( (ptr) &var_c80932)+5)/* alignBag_v17380 */ ) = formal_c01075; /* IncrementalNewFilter: */ SOURCE(35334, 1427) { word tmpAddr271; tmpAddr271 = (word) (( (ptr) &var_c80932)+7)/* var_c75972 */ ; (* (ptr) tmpAddr271 ) = ( ((word) (fPt) DoForSlice_P8148) ); (* (( (ptr) tmpAddr271) + 1) ) = 1; }; { word tmpAddr272; tmpAddr272 = (word) (( (ptr) &var_c80932)+9)/* var_c76004 */ ; (* (ptr) tmpAddr272 ) = ( ((word) (fPt) DoPointFireRule_P8088) ); (* (( (ptr) tmpAddr272) + 1) ) = 1; }; SOURCE(35334, 1427) (* (( (ptr) &var_c80932)+6)/* alignObjects_v17424 */ ) = 0; SOURCE(35526, 67) (* (( (ptr) &var_c80932)+11)/* filterLists_v29736 */ ) = (word) FilterListsFromFilter_P3540(value_v17268, (* (( (ptr) &var_c80932)+4) /* filterType_v17296 */ )); SOURCE(36292, 23) (* (( (ptr) &var_c80932)+12)/* sliceD_v29820 */ ) = 0; SOURCE(36317, 32) (* (( (ptr) &var_c80932)+13)/* pointPairGen_v29848 */ ) = 0; SOURCE(36394, 29) if ((0 != hideAlignments_v17352)) { SOURCE(36417, 6) return((* (( (ptr) &var_c80932)+6)/* alignObjects_v17424 */ )); }; SOURCE(36425, 33) anchorFeature_v29904 = (* (( (ptr) triggerBag_v17324)+1) ); SOURCE(36460, 252) if ((anchorFeature_v29904 != 0)) { SOURCE(36490, 43) anchor_v29876 = XR_Narrow((* (( (ptr) anchorFeature_v29904)+1) ), (* (( (ptr) gf_c80964)+27) )); SOURCE(36535, 177) { word pd273; pd273 = (* (( (ptr) (* (( (ptr) gf_c80964)+248)/* var_c75556 */ ))+7) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd273 ))))(anchor_v29876, pd273))) { SOURCE(36568, 40) (void) AddAnchorObject_P4200(anchorFeature_v29904, (* (( (ptr) &var_c80932)+5)/* alignBag_v17380 */ )); SOURCE(36610, 102) { word var_c76036; var_c76036 = (word) AnchorFireRule_P4380(anchor_v29876, (* (( (ptr) &var_c80932)+11)/* filterLists_v29736 */ ), (* (( (ptr) &var_c80932)+5) /* alignBag_v17380 */ )); { word pd274; pd274 = (* (( (ptr) (* (( (ptr) gf_c80964)+230)/* var_c71428 */ ))+9) ); (* (( (ptr) &var_c80932)+6)/* alignObjects_v17424 */ ) = (word) ( *( (fPt) ((* (ptr) pd274 ))))(var_c76036, (* (( (ptr) &var_c80932)+6) /* alignObjects_v17424 */ ), pd274); }; }; }; }; }; SOURCE(36720, 41) (void) WalkSliceTriggers_P420(triggerBag_v17324, (word) (( (bPt) &var_c80932)+28)/* var_c75972 */ ); SOURCE(35334, 1427) return((* (( (ptr) &var_c80932)+6)/* alignObjects_v17424 */ )); } static word DoPointFireRule_P8088(point_v63916, formal_c81028) W2 point_v63916; word formal_c81028; { register ptr gf_c80996 = (ptr) &globalframe; word done_v63960; formal_c81028 = (formal_c81028 - 36); /* DoPointFireRule: */ SOURCE(35595, 135) SOURCE(35595, 135) done_v63960 = 0; SOURCE(35630, 100) { word var_c76068; var_c76068 = (word) PointFireRule_P4260(point_v63916, (* (( (ptr) formal_c81028)+11) ), (* (( (ptr) formal_c81028)+5) )); { word pd275; pd275 = (* (( (ptr) (* (( (ptr) gf_c80996)+230)/* var_c71428 */ ))+9) ); (* (( (ptr) formal_c81028)+6) ) = (word) ( *( (fPt) ((* (ptr) pd275 ))))(var_c76068, (* (( (ptr) formal_c81028)+6) ), pd275) ; }; }; SOURCE(35595, 135) return(done_v63960); } static word DoForSlice_P8148(feature_v64020, formal_c81092) word feature_v64020; word formal_c81092; { register ptr gf_c81060 = (ptr) &globalframe; word done_v64064; formal_c81092 = (formal_c81092 - 28); /* DoForSlice: */ SOURCE(35735, 522) SOURCE(35735, 522) done_v64064 = 0; SOURCE(35767, 30) (* (( (ptr) formal_c81092)+12) ) = XR_Narrow((* (( (ptr) feature_v64020)+1) ), (* (( (ptr) gf_c81060)+15) )); SOURCE(35799, 458) { word var_c76100; var_c76100 = (* (( (ptr) formal_c81092)+4) ); switch (var_c76100) { case 0: case 1: SOURCE(35841, 58) { word pd276; pd276 = (* (( (ptr) (* (( (ptr) gf_c81060)+232)/* var_c71940 */ ))+37) ); (void) ( *( (fPt) ((* (ptr) pd276 ))))((* (( (ptr) formal_c81092)+12) ), (word) (( (bPt) formal_c81092)+36), pd276); }; break; case 2: case 3: SOURCE(35925, 56) { word pd277; pd277 = (* (( (ptr) (* (( (ptr) gf_c81060)+232)/* var_c71940 */ ))+38) ); (* (( (ptr) formal_c81092)+13) ) = (word) ( *( (fPt) ((* (ptr) pd277 ))))((* ((( (ptr) formal_c81092)+12)) ), pd277); }; SOURCE(35983, 274) { W5 next_v29948; { word pd278; pd278 = (* (( (ptr) (* (( (ptr) gf_c81060)+232)/* var_c71940 */ ))+42) ); (void) ( *( (fPt) ((* (ptr) pd278 ))))((word) &next_v29948, (* (ptr) (* (( (ptr) formal_c81092)+12) ) ), (* (( (ptr) formal_c81092)+13) ), pd278); }; lab_L100064: ; if ((0 == next_v29948.f4)) { } else { goto lab_L100061; }; SOURCE(36138, 119) { word var_c76132; var_c76132 = (word) SegmentFireRule_P4320(9999, (* (W2Pt) &next_v29948 ), (* (W2Pt) (( (ptr) &next_v29948)+2) ), (* (( (ptr) formal_c81092)+11) ), (* (( (ptr) formal_c81092)+5) )); { word pd279; pd279 = (* (( (ptr) (* (( (ptr) gf_c81060)+230)/* var_c71428 */ ))+9) ); (* (( (ptr) formal_c81092)+6) ) = (word) ( *( (fPt) ((* (ptr) pd279 ))))(var_c76132, (* (( (ptr) formal_c81092)+6) ), pd279) ; }; }; { word pd280; pd280 = (* (( (ptr) (* (( (ptr) gf_c81060)+232)/* var_c71940 */ ))+42) ); (void) ( *( (fPt) ((* (ptr) pd280 ))))((word) &next_v29948, (* (ptr) (* (( (ptr) formal_c81092)+12) ) ), (* (( (ptr) formal_c81092)+13) ), pd280); }; goto lab_L100064; lab_L100061: ; }; break; default: SOURCE(36282, 5) (void) XR_RaiseUnnamedError(); break; }; }; SOURCE(35735, 522) return(done_v64064); } static void RemoveAnchorTrigger_P3960(triggerBag_v17568) word triggerBag_v17568; { /* RemoveAnchorTrigger: */ SOURCE(36768, 85) SOURCE(36830, 23) (* (( (ptr) triggerBag_v17568)+1) ) = 0; } static word RemoveEntireHotSlice_P4020(slice_v17628, triggerBag_v17656) word slice_v17628; word triggerBag_v17656; { word oldSliceD_v17700; word oldFeature_v29992 = 0; /* RemoveEntireHotSlice: */ SOURCE(36859, 265) SOURCE(36859, 265) oldSliceD_v17700 = 0; SOURCE(36997, 64) { W2 var_c76164; (void) FindOldSlice_P4500((word) &var_c76164, slice_v17628, (* (ptr) triggerBag_v17656 )); oldFeature_v29992 = var_c76164.f1; oldSliceD_v17700 = var_c76164.f0; }; SOURCE(37063, 61) if ((oldSliceD_v17700 != 0)) { SOURCE(37087, 37) (void) DeleteFeature_P660(triggerBag_v17656, oldFeature_v29992); }; SOURCE(36859, 265) return(oldSliceD_v17700); } static void AddFeature_P4080(featureData_v17760, triggerBag_v17788) word featureData_v17760; word triggerBag_v17788; { register ptr gf_c81124 = (ptr) &globalframe; /* AddFeature: */ SOURCE(37133, 603) SOURCE(37205, 23) { word pd281; pd281 = (* (( (ptr) (* (( (ptr) gf_c81124)+231)/* var_c71716 */ ))+18) ); (void) ( *( (fPt) ((* (ptr) pd281 ))))(pd281); }; SOURCE(37230, 506) { word var_c76196; var_c76196 = (* (ptr) featureData_v17760 ); if ((var_c76196 == 0)) { SOURCE(37268, 422) { word sliceD_v30036; word key_v30064; word val_v30092 = 0; word found_v30120 = 0; SOURCE(37270, 51) sliceD_v30036 = XR_Narrow((* (( (ptr) featureData_v17760)+1) ), (* (( (ptr) gf_c81124)+15) )); SOURCE(37323, 30) key_v30064 = (* (ptr) sliceD_v30036 ); SOURCE(37386, 51) { W2 var_c76228; { word pd282; pd282 = (* (( (ptr) (* (( (ptr) gf_c81124)+229)/* var_c71140 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd282 ))))((word) &var_c76228, (* (ptr) triggerBag_v17788 ), key_v30064, pd282); }; val_v30092 = var_c76228.f1; found_v30120 = var_c76228.f0; }; SOURCE(37439, 246) if ((0 == found_v30120)) { SOURCE(37457, 99) { word list_v30176; SOURCE(37459, 6) list_v30176 = XR_NewObject(8, (* (( (ptr) gf_c81124)+14) )); { word var_c76292; var_c76292 = list_v30176; (* (ptr) var_c76292 ) = featureData_v17760; }; SOURCE(37506, 48) { word var_c76324; word pd283; pd283 = (* (( (ptr) (* (( (ptr) gf_c81124)+229)/* var_c71140 */ ))+10) ); var_c76324 = (word) ( *( (fPt) ((* (ptr) pd283 ))))((* (ptr) triggerBag_v17788 ), key_v30064, list_v30176, pd283); }; }; } else { SOURCE(37563, 124) { word list_v30304; SOURCE(37565, 6) list_v30304 = XR_Narrow(val_v30092, (* (( (ptr) gf_c81124)+14) )); SOURCE(37606, 30) { word var_c76356; var_c76356 = XR_NewObject(8, (* (( (ptr) gf_c81124)+14) )); (* (ptr) var_c76356 ) = featureData_v17760; (* (( (ptr) var_c76356)+1) ) = list_v30304; list_v30304 = var_c76356; }; SOURCE(37638, 47) { word var_c76388; word pd284; pd284 = (* (( (ptr) (* (( (ptr) gf_c81124)+229)/* var_c71140 */ ))+9) ); var_c76388 = (word) ( *( (fPt) ((* (ptr) pd284 ))))((* (ptr) triggerBag_v17788 ), key_v30064, list_v30304, pd284); }; }; }; }; } else { if ((var_c76196 == 8)) { SOURCE(37705, 31) (* (( (ptr) triggerBag_v17788)+1) ) = featureData_v17760; } else { SOURCE(37752, 5) (void) XR_RaiseUnnamedError(); }; }; }; } static void AddAllSlices_P4140(scene_v17848, formal_c01076) word scene_v17848; word formal_c01076; { W8 var_c81156; /* declaration of triggerBag_v17876 skipped */ register ptr gf_c81188 = (ptr) &globalframe; /* declaration of var_c76420 skipped */ /* declaration of feature_v30432 skipped */ var_c81156.f4/* triggerBag_v17876 */ = formal_c01076; /* AddAllSlices: */ SOURCE(37763, 269) { word tmpAddr285; tmpAddr285 = (word) (( (ptr) &var_c81156)+5)/* var_c76420 */ ; (* (ptr) tmpAddr285 ) = ( ((word) (fPt) DoAddSlice_P8400) ); (* (( (ptr) tmpAddr285) + 1) ) = 1; }; SOURCE(37825, 20) var_c81156.f7/* feature_v30432 */ = 0; SOURCE(37983, 49) { word var_c76452; word pd286; pd286 = (* (( (ptr) (* (( (ptr) gf_c81188)+247)/* var_c74724 */ ))+31) ); var_c76452 = (word) ( *( (fPt) ((* (ptr) pd286 ))))(scene_v17848, 0, (word) (( (bPt) &var_c81156)+20)/* var_c76420 */ , 0, pd286) ; }; } static word DoAddSlice_P8400(slice_v30536, formal_c81220) word slice_v30536; word formal_c81220; { word done_v30580; formal_c81220 = (formal_c81220 - 20); /* DoAddSlice: */ SOURCE(37847, 131) SOURCE(37847, 131) done_v30580 = 0; SOURCE(37912, 33) (* (( (ptr) formal_c81220)+7) ) = (word) FeatureFromSlice_P780(slice_v30536, 0); SOURCE(37947, 31) (void) AddFeature_P4080((* (( (ptr) formal_c81220)+7) ), (* (( (ptr) formal_c81220)+4) )); SOURCE(37847, 131) return(done_v30580); } static void AddAnchorObject_P4200(anchorFeature_v17936, alignBag_v17964) word anchorFeature_v17936; word alignBag_v17964; { /* AddAnchorObject: */ SOURCE(38037, 106) SOURCE(38112, 31) (* (( (ptr) alignBag_v17964)+4) ) = anchorFeature_v17936; } static word PointFireRule_P4260(point_v18024, filterLists_v18052, alignBag_v18080) W2 point_v18024; word filterLists_v18052; word alignBag_v18080; { register ptr gf_c81252 = (ptr) &globalframe; word alignObjects_v18124; word feature_v30608 = 0; /* PointFireRule: */ SOURCE(38149, 653) SOURCE(38149, 653) alignObjects_v18124 = 0; SOURCE(38300, 18) alignObjects_v18124 = 0; SOURCE(38320, 227) { register word list_v30652; list_v30652 = (* (ptr) filterLists_v18052 ); lab_L100068: ; if ((list_v30652 != 0)) { } else { goto lab_L100065; }; SOURCE(38397, 84) feature_v30608 = (word) JointAddSlopeLine_P1860((* (ptr) list_v30652 ), point_v18024, alignBag_v18080); SOURCE(38483, 64) if ((feature_v30608 != 0)) { SOURCE(38505, 42) { word var_c76484; var_c76484 = XR_NewObject(8, (* (( (ptr) gf_c81252)+14) )); (* (ptr) var_c76484 ) = feature_v30608; (* (( (ptr) var_c76484)+1) ) = alignObjects_v18124; alignObjects_v18124 = var_c76484; }; }; list_v30652 = (* (( (ptr) list_v30652)+1) ); goto lab_L100068; lab_L100065: ; }; SOURCE(38558, 244) { register word list_v30780; list_v30780 = (* (( (ptr) filterLists_v18052)+1) ); lab_L100072: ; if ((list_v30780 != 0)) { } else { goto lab_L100069; }; SOURCE(38634, 102) { word x287; word x288; float tf289; feature_v30608 = (word) JointAddCircle_P2220(( tf289 = ( x287 = (* (ptr) list_v30780 ), *(float*)&x287 ) * ( x288 = (* (( (ptr) filterLists_v18052)+4) ), *(float*)&x288 ), *(word*)&tf289 ), point_v18024, alignBag_v18080); }; SOURCE(38738, 64) if ((feature_v30608 != 0)) { SOURCE(38760, 42) { word var_c76516; var_c76516 = XR_NewObject(8, (* (( (ptr) gf_c81252)+14) )); (* (ptr) var_c76516 ) = feature_v30608; (* (( (ptr) var_c76516)+1) ) = alignObjects_v18124; alignObjects_v18124 = var_c76516; }; }; list_v30780 = (* (( (ptr) list_v30780)+1) ); goto lab_L100072; lab_L100069: ; }; SOURCE(38149, 653) return(alignObjects_v18124); } static word SegmentFireRule_P4320(segNum_v18268, lo_v18296, hi_v18324, filterLists_v18352, alignBag_v18380) word segNum_v18268; W2 lo_v18296; W2 hi_v18324; word filterLists_v18352; word alignBag_v18380; { register ptr gf_c81284 = (ptr) &globalframe; word alignObjects_v18424; word line1_v30908 = 0; word line2_v30936 = 0; /* SegmentFireRule: */ SOURCE(38817, 857) SOURCE(38817, 857) alignObjects_v18424 = 0; SOURCE(38989, 18) alignObjects_v18424 = 0; SOURCE(39009, 340) { register word list_v30980; list_v30980 = (* (( (ptr) filterLists_v18352)+3) ); lab_L100076: ; if ((list_v30980 != 0)) { } else { goto lab_L100073; }; SOURCE(39089, 136) { W2 var_c76548; { word x290; word x291; float tf292; (void) SegmentAddDistanceLines_P2460((word) &var_c76548, ( tf292 = ( x290 = (* (ptr) list_v30980 ), *(float*)&x290 ) * ( x291 = (* (( (ptr) filterLists_v18352)+4) ), *(float*)&x291 ), *(word*)&tf292 ), segNum_v18268, lo_v18296, hi_v18324, alignBag_v18380); }; line2_v30936 = var_c76548.f1; line1_v30908 = var_c76548.f0; }; SOURCE(39227, 60) if ((line1_v30908 != 0)) { SOURCE(39247, 40) { word var_c76580; var_c76580 = XR_NewObject(8, (* (( (ptr) gf_c81284)+14) )); (* (ptr) var_c76580 ) = line1_v30908; (* (( (ptr) var_c76580)+1) ) = alignObjects_v18424; alignObjects_v18424 = var_c76580; }; }; SOURCE(39289, 60) if ((line2_v30936 != 0)) { SOURCE(39309, 40) { word var_c76612; var_c76612 = XR_NewObject(8, (* (( (ptr) gf_c81284)+14) )); (* (ptr) var_c76612 ) = line2_v30936; (* (( (ptr) var_c76612)+1) ) = alignObjects_v18424; alignObjects_v18424 = var_c76612; }; }; list_v30980 = (* (( (ptr) list_v30980)+1) ); goto lab_L100076; lab_L100073: ; }; SOURCE(39360, 314) { register word list_v31108; list_v31108 = (* (( (ptr) filterLists_v18352)+2) ); lab_L100080: ; if ((list_v31108 != 0)) { } else { goto lab_L100077; }; SOURCE(39437, 113) { W2 var_c76644; (void) SegmentAddTwoAngleLines_P2400((word) &var_c76644, (* (ptr) list_v31108 ), segNum_v18268, lo_v18296, hi_v18324, alignBag_v18380) ; line2_v30936 = var_c76644.f1; line1_v30908 = var_c76644.f0; }; SOURCE(39552, 60) if ((line1_v30908 != 0)) { SOURCE(39572, 40) { word var_c76676; var_c76676 = XR_NewObject(8, (* (( (ptr) gf_c81284)+14) )); (* (ptr) var_c76676 ) = line1_v30908; (* (( (ptr) var_c76676)+1) ) = alignObjects_v18424; alignObjects_v18424 = var_c76676; }; }; SOURCE(39614, 60) if ((line2_v30936 != 0)) { SOURCE(39634, 40) { word var_c76708; var_c76708 = XR_NewObject(8, (* (( (ptr) gf_c81284)+14) )); (* (ptr) var_c76708 ) = line2_v30936; (* (( (ptr) var_c76708)+1) ) = alignObjects_v18424; alignObjects_v18424 = var_c76708; }; }; list_v31108 = (* (( (ptr) list_v31108)+1) ); goto lab_L100080; lab_L100077: ; }; SOURCE(38817, 857) return(alignObjects_v18424); } static word AnchorFireRule_P4380(anchor_v18568, filterLists_v18596, alignBag_v18624) word anchor_v18568; word filterLists_v18596; word alignBag_v18624; { register ptr gf_c81316 = (ptr) &globalframe; word alignObjects_v18668; word line1_v31236 = 0; word line2_v31264 = 0; W2 point_v31292; W2 normal_v31320; W2 lo_v31348; W2 hi_v31376; /* AnchorFireRule: */ SOURCE(39689, 1238) SOURCE(39689, 1238) alignObjects_v18668 = 0; SOURCE(39847, 39) { word pd293; pd293 = (* (( (ptr) (* (( (ptr) gf_c81316)+248)/* var_c75556 */ ))+15) ); (void) ( *( (fPt) ((* (ptr) pd293 ))))((word) &point_v31292, anchor_v18568, pd293); }; SOURCE(39888, 42) { word pd294; pd294 = (* (( (ptr) (* (( (ptr) gf_c81316)+248)/* var_c75556 */ ))+16) ); (void) ( *( (fPt) ((* (ptr) pd294 ))))((word) &normal_v31320, anchor_v18568, pd294); }; SOURCE(39932, 48) { word x295; word x296; *(float*)&lo_v31348.f0 = ( x295 = point_v31292.f0, *(float*)&x295 ) + ( x296 = normal_v31320.f1, *(float*)&x296 ); }; { word x297; word x298; *(float*)&lo_v31348.f1 = ( x297 = point_v31292.f1, *(float*)&x297 ) - ( x298 = normal_v31320.f0, *(float*)&x298 ); }; SOURCE(39982, 48) { word x299; word x300; *(float*)&hi_v31376.f0 = ( x299 = point_v31292.f0, *(float*)&x299 ) - ( x300 = normal_v31320.f1, *(float*)&x300 ); }; { word x301; word x302; *(float*)&hi_v31376.f1 = ( x301 = point_v31292.f1, *(float*)&x301 ) + ( x302 = normal_v31320.f0, *(float*)&x302 ); }; SOURCE(40032, 58) alignObjects_v18668 = (word) PointFireRule_P4260(point_v31292, filterLists_v18596, alignBag_v18624); SOURCE(40092, 338) { register word list_v31420; list_v31420 = (* (( (ptr) filterLists_v18596)+3) ); lab_L100084: ; if ((list_v31420 != 0)) { } else { goto lab_L100081; }; SOURCE(40172, 134) { W2 var_c76804; { word x303; word x304; float tf305; (void) SegmentAddDistanceLines_P2460((word) &var_c76804, ( tf305 = ( x303 = (* (ptr) list_v31420 ), *(float*)&x303 ) * ( x304 = (* (( (ptr) filterLists_v18596)+4) ), *(float*)&x304 ), *(word*)&tf305 ), 9999, lo_v31348, hi_v31376, alignBag_v18624); }; line2_v31264 = var_c76804.f1; line1_v31236 = var_c76804.f0; }; SOURCE(40308, 60) if ((line1_v31236 != 0)) { SOURCE(40328, 40) { word var_c76836; var_c76836 = XR_NewObject(8, (* (( (ptr) gf_c81316)+14) )); (* (ptr) var_c76836 ) = line1_v31236; (* (( (ptr) var_c76836)+1) ) = alignObjects_v18668; alignObjects_v18668 = var_c76836; }; }; SOURCE(40370, 60) if ((line2_v31264 != 0)) { SOURCE(40390, 40) { word var_c76868; var_c76868 = XR_NewObject(8, (* (( (ptr) gf_c81316)+14) )); (* (ptr) var_c76868 ) = line2_v31264; (* (( (ptr) var_c76868)+1) ) = alignObjects_v18668; alignObjects_v18668 = var_c76868; }; }; list_v31420 = (* (( (ptr) list_v31420)+1) ); goto lab_L100084; lab_L100081: ; }; SOURCE(40441, 486) { register word list_v31548; list_v31548 = (* (( (ptr) filterLists_v18596)+2) ); lab_L100088: ; if ((list_v31548 != 0)) { } else { goto lab_L100085; }; { word degrees_v31676; word loLine_v31704; SOURCE(40518, 26) degrees_v31676 = (* (ptr) list_v31548 ); SOURCE(40546, 110) { word var_c76900; { word pd306; word x307; word x309; word x310; pd306 = (* (( (ptr) (* (( (ptr) gf_c81316)+239)/* var_c73540 */ ))+6) ); *(float*)&var_c76900 = (( x307 = (word) ( *( (fPt) ((* (ptr) pd306 ))))(normal_v31320, pd306), *(float*)&x307 ) + ( x309 = (* (ptr) &fc308 ), *(float*)&x309 )) + ( x310 = degrees_v31676, *(float*)&x310 ); }; { word pd311; pd311 = (* (( (ptr) (* (( (ptr) gf_c81316)+235)/* var_c72836 */ ))+11) ); loLine_v31704 = (word) ( *( (fPt) ((* (ptr) pd311 ))))(point_v31292, var_c76900, pd311); }; }; SOURCE(40691, 27) line1_v31236 = XR_NewObject(8, (* (( (ptr) gf_c81316)+16) )); SOURCE(40720, 22) (* (ptr) line1_v31236 ) = 3; SOURCE(40744, 90) { word var_c76964; var_c76964 = XR_NewObject(12, (* (( (ptr) gf_c81316)+21) )); (* (ptr) var_c76964 ) = loLine_v31704; (* (( (ptr) var_c76964)+1) ) = degrees_v31676; (* (( (ptr) line1_v31236)+1) ) = var_c76964; }; SOURCE(40836, 29) (void) AddAlignment_P1740(line1_v31236, alignBag_v18624); SOURCE(40867, 60) if ((line1_v31236 != 0)) { SOURCE(40887, 40) { word var_c76996; var_c76996 = XR_NewObject(8, (* (( (ptr) gf_c81316)+14) )); (* (ptr) var_c76996 ) = line1_v31236; (* (( (ptr) var_c76996)+1) ) = alignObjects_v18668; alignObjects_v18668 = var_c76996; }; }; }; list_v31548 = (* (( (ptr) list_v31548)+1) ); goto lab_L100088; lab_L100085: ; }; SOURCE(39689, 1238) return(alignObjects_v18668); } static word SomeSelectedIsHot_P4440(formal_c01077) word formal_c01077; { W8 var_c81348; /* declaration of scene_v18812 skipped */ register ptr gf_c81380 = (ptr) &globalframe; /* declaration of hotFound_v18856 skipped */ /* declaration of var_c77028 skipped */ var_c81348.f4/* scene_v18812 */ = formal_c01077; /* SomeSelectedIsHot: */ SOURCE(40942, 309) { word tmpAddr312; tmpAddr312 = (word) (( (ptr) &var_c81348)+6)/* var_c77028 */ ; (* (ptr) tmpAddr312 ) = ( ((word) (fPt) FindHot_P8796) ); (* (( (ptr) tmpAddr312) + 1) ) = 1; }; SOURCE(40942, 309) var_c81348.f5/* hotFound_v18856 */ = 0; SOURCE(41189, 62) { word var_c77060; word pd313; pd313 = (* (( (ptr) (* (( (ptr) gf_c81380)+247)/* var_c74724 */ ))+32) ); var_c77060 = (word) ( *( (fPt) ((* (ptr) pd313 ))))(var_c81348.f4/* scene_v18812 */ , 0, (word) (( (bPt) &var_c81348)+24) /* var_c77028 */ , 0, 0, pd313); }; SOURCE(40942, 309) return(var_c81348.f5/* hotFound_v18856 */ ); } static word FindHot_P8796(sliceD_v31824, formal_c81444) word sliceD_v31824; word formal_c81444; { register ptr gf_c81412 = (ptr) &globalframe; word done_v31868; formal_c81444 = (formal_c81444 - 24); /* FindHot: */ SOURCE(41018, 163) SOURCE(41018, 163) done_v31868 = 0; SOURCE(41091, 90) { word pd314; pd314 = (* (( (ptr) (* (( (ptr) gf_c81412)+243)/* var_c74084 */ ))+18) ); if ((0 != (word) ( *( (fPt) ((* (ptr) pd314 ))))((* (ptr) sliceD_v31824 ), (* (( (ptr) formal_c81444)+4) ), 1, pd314))) { SOURCE(41153, 15) (* (( (ptr) formal_c81444)+5) ) = 1; SOURCE(41170, 11) done_v31868 = 1; }; }; SOURCE(41018, 163) return(done_v31868); } static void FindOldSlice_P4500(formal_c0802, slice_v18916, sliceTriggers_v18944) word formal_c0802; word slice_v18916; word sliceTriggers_v18944; { register ptr gf_c81476 = (ptr) &globalframe; word oldSliceD_v18988; word oldFeature_v19016; word key_v31896; word val_v31924 = 0; word found_v31952 = 0; /* FindOldSlice: */ SOURCE(41257, 478) SOURCE(41257, 478) oldSliceD_v18988 = 0; SOURCE(41257, 478) oldFeature_v19016 = 0; SOURCE(41384, 16) key_v31896 = slice_v18916; SOURCE(41433, 47) { W2 var_c77092; { word pd315; pd315 = (* (( (ptr) (* (( (ptr) gf_c81476)+229)/* var_c71140 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd315 ))))((word) &var_c77092, sliceTriggers_v18944, key_v31896, pd315); }; val_v31924 = var_c77092.f1; found_v31952 = var_c77092.f0; }; SOURCE(41482, 47) if ((0 == found_v31952) || (val_v31924 == 0)) { SOURCE(41513, 16) oldSliceD_v18988 = 0; oldFeature_v19016 = 0; goto lab_L100089; }; SOURCE(41531, 176) { register word list_v32020; list_v32020 = XR_Narrow(val_v31924, (* (( (ptr) gf_c81476)+14) )); lab_L100093: ; if ((list_v32020 != 0)) { } else { goto lab_L100090; }; SOURCE(41606, 23) oldFeature_v19016 = (* (ptr) list_v32020 ); SOURCE(41631, 36) oldSliceD_v18988 = XR_Narrow((* (( (ptr) oldFeature_v19016)+1) ), (* (( (ptr) gf_c81476)+15) )); SOURCE(41669, 38) if (((* (ptr) oldSliceD_v18988 ) == slice_v18916)) { SOURCE(41701, 6) goto lab_L100089; }; list_v32020 = (* (( (ptr) list_v32020)+1) ); goto lab_L100093; lab_L100090: ; }; SOURCE(41718, 17) oldSliceD_v18988 = 0; oldFeature_v19016 = 0; /* removed tail goto */ lab_L100089: ; (* (ptr) formal_c0802 ) = oldSliceD_v18988; (* (( (ptr) formal_c0802)+1) ) = oldFeature_v19016; return; } static word RemoveFeatureFromList_P4560(ref_v19076, list_v19104) word ref_v19076; word list_v19104; { register ptr gf_c81508 = (ptr) &globalframe; word val_v19232; word z_v32148 = 0; /* RemoveFeatureFromList: */ SOURCE(41741, 329) SOURCE(41741, 329) val_v19232 = 0; SOURCE(41898, 172) lab_L100096: ; if ((list_v19104 != 0)) { } else { goto lab_L100094; }; SOURCE(41918, 132) if (((* (ptr) list_v19104 ) != ref_v19076)) { SOURCE(41942, 108) if ((val_v19232 == 0)) { SOURCE(41961, 27) { word var_c77124; var_c77124 = XR_NewObject(8, (* (( (ptr) gf_c81508)+14) )); (* (ptr) var_c77124 ) = (* (ptr) list_v19104 ); val_v19232 = var_c77124; }; SOURCE(41990, 7) z_v32148 = val_v19232; } else { SOURCE(42005, 33) { word var_c77156; var_c77156 = XR_NewObject(8, (* (( (ptr) gf_c81508)+14) )); (* (ptr) var_c77156 ) = (* (ptr) list_v19104 ); (* (( (ptr) var_c77156)+1) ) = (* (( (ptr) z_v32148)+1) ); (* (( (ptr) z_v32148)+1) ) = var_c77156; }; SOURCE(42040, 10) z_v32148 = (* (( (ptr) z_v32148)+1) ); }; }; SOURCE(42054, 16) list_v19104 = (* (( (ptr) list_v19104)+1) ); goto lab_L100096; lab_L100094: ; SOURCE(41741, 329) return(val_v19232); } static void CreateLineTable_P4620(ggData_v19376) word ggData_v19376; { register ptr gf_c81540 = (ptr) &globalframe; /* CreateLineTable: */ SOURCE(42274, 159) SOURCE(42324, 51) { word pd316; pd316 = (* (( (ptr) (* (( (ptr) gf_c81540)+234)/* var_c72196 */ ))+5) ); (* (( (ptr) (* (( (ptr) ggData_v19376)+17) ))+6) ) = (word) ( *( (fPt) ((* (ptr) pd316 ))))(211, pd316); }; SOURCE(42377, 56) { word pd317; pd317 = (* (( (ptr) (* (( (ptr) gf_c81540)+234)/* var_c72196 */ ))+5) ); (* (( (ptr) (* (( (ptr) ggData_v19376)+17) ))+7) ) = (word) ( *( (fPt) ((* (ptr) pd317 ))))(211, pd317); }; } static word LineIsPresent_P4680(ggData_v19436, line_v19464) word ggData_v19436; word line_v19464; { register ptr gf_c81572 = (ptr) &globalframe; word present_v19508; word key_v32276; word found_v32304 = 0; word val_v32332 = 0; word list_v32360 = 0; /* LineIsPresent: */ SOURCE(42439, 430) SOURCE(42439, 430) present_v19508 = 0; SOURCE(42524, 30) key_v32276 = (word) CardFromLine_P5040(line_v19464); SOURCE(42607, 59) { W2 var_c77188; { word pd318; pd318 = (* (( (ptr) (* (( (ptr) gf_c81572)+234)/* var_c72196 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd318 ))))((word) &var_c77188, (* (( (ptr) (* (( (ptr) ggData_v19436)+17) ))+6) ), key_v32276, pd318) ; }; val_v32332 = var_c77188.f1; found_v32304 = var_c77188.f0; }; SOURCE(42668, 31) if ((0 == found_v32304)) { SOURCE(42686, 13) return(0); }; SOURCE(42701, 18) list_v32360 = XR_Narrow(val_v32332, (* (( (ptr) gf_c81572)+24) )); SOURCE(42721, 122) { register word l_v32500; l_v32500 = list_v32360; lab_L100100: ; if ((l_v32500 != 0)) { } else { goto lab_L100097; }; SOURCE(42773, 70) { word x319; word x320; word x321; word x322; if ( ( (( x319 = (* (( (ptr) (* (ptr) l_v32500 ))+1) ), *(float*)&x319 ) == ( x320 = (* (( (ptr) line_v19464)+1) ), *(float*)&x320 )) ? (( x321 = (* (ptr) (* (ptr) l_v32500 ) ), *(float*)&x321 ) == ( x322 = (* (ptr) line_v19464 ), *(float*)&x322 )) : 0 ) ) { SOURCE(42831, 12) return(1); }; }; l_v32500 = (* (( (ptr) l_v32500)+1) ); goto lab_L100100; lab_L100097: ; }; SOURCE(42854, 15) present_v19508 = 0; SOURCE(42439, 430) return(present_v19508); } static void TableStatistics_P4740(formal_c0828, table_v19568) word formal_c0828; word table_v19568; { W10 var_c81604; register ptr gf_c81636 = (ptr) &globalframe; /* declaration of count_v19612 skipped */ /* declaration of min_v19640 skipped */ /* declaration of max_v19668 skipped */ word avg_v19696; /* declaration of var_c77220 skipped */ /* declaration of total_v32656 skipped */ /* TableStatistics: */ SOURCE(42875, 502) { word tmpAddr323; tmpAddr323 = (word) (( (ptr) &var_c81604)+7)/* var_c77220 */ ; (* (ptr) tmpAddr323 ) = ( ((word) (fPt) Count_P8952) ); (* (( (ptr) tmpAddr323) + 1) ) = 1; }; SOURCE(43269, 17) (* (( (ptr) &var_c81604)+9)/* total_v32656 */ ) = (* (ptr) &fc115 ); SOURCE(43288, 9) (* (( (ptr) &var_c81604)+4)/* count_v19612 */ ) = 0; SOURCE(43299, 16) (* (( (ptr) &var_c81604)+5)/* min_v19640 */ ) = (word) -1; SOURCE(43317, 7) (* (( (ptr) &var_c81604)+6)/* max_v19668 */ ) = 0; SOURCE(43326, 32) { word var_c77252; word pd324; pd324 = (* (( (ptr) (* (( (ptr) gf_c81636)+234)/* var_c72196 */ ))+13) ); var_c77252 = (word) ( *( (fPt) ((* (ptr) pd324 ))))(table_v19568, (word) (( (bPt) &var_c81604)+28)/* var_c77220 */ , pd324) ; }; SOURCE(43360, 17) { word x325; *(float*)&avg_v19696 = ( x325 = (* (( (ptr) &var_c81604)+9)/* total_v32656 */ ), *(float*)&x325 ) / (float)(unsigned)(* (( (ptr) &var_c81604)+4)/* count_v19612 */ ); }; /* removed tail goto */ (* (ptr) formal_c0828 ) = (* (( (ptr) &var_c81604)+4)/* count_v19612 */ ); (* (( (ptr) formal_c0828)+1) ) = (* (( (ptr) &var_c81604)+5)/* min_v19640 */ ); (* (( (ptr) formal_c0828)+2) ) = (* (( (ptr) &var_c81604)+6)/* max_v19668 */ ); (* (( (ptr) formal_c0828)+3) ) = avg_v19696; return; } static word Count_P8952(key_v65088, val_v65116, formal_c81700) word key_v65088; word val_v65116; word formal_c81700; { register ptr gf_c81668 = (ptr) &globalframe; word quit_v65160; word list_v32700; word itemsInBucket_v32728 = 0; formal_c81700 = (formal_c81700 - 28); /* Count: */ SOURCE(42965, 299) SOURCE(42965, 299) quit_v65160 = 0; SOURCE(42999, 6) list_v32700 = XR_Narrow(val_v65116, (* (( (ptr) gf_c81668)+24) )); SOURCE(43058, 17) (* (( (ptr) formal_c81700)+4) ) = ((* (( (ptr) formal_c81700)+4) ) + 1); SOURCE(43077, 85) { register word l_v32856; l_v32856 = list_v32700; lab_L100105: ; if ((l_v32856 != 0)) { } else { goto lab_L100102; }; SOURCE(43129, 33) itemsInBucket_v32728 = (itemsInBucket_v32728 + 1); l_v32856 = (* (( (ptr) l_v32856)+1) ); goto lab_L100105; lab_L100102: ; }; SOURCE(43173, 29) { word x326; (* (( (ptr) formal_c81700)+5) ) = (x326 = (* (( (ptr) formal_c81700)+5) ), MIN( (unsigned) , x326, itemsInBucket_v32728)); }; SOURCE(43204, 29) { word x327; (* (( (ptr) formal_c81700)+6) ) = (x327 = (* (( (ptr) formal_c81700)+6) ), MAX( (unsigned) , x327, itemsInBucket_v32728)); }; SOURCE(43235, 29) { word x328; *(float*)(( (ptr) formal_c81700)+9) = ( x328 = (* (( (ptr) formal_c81700)+9) ), *(float*)&x328 ) + (float)(unsigned)itemsInBucket_v32728; }; SOURCE(42965, 299) return(quit_v65160); } static word CopyLineList_P4800(l_v19756) word l_v19756; { register ptr gf_c81732 = (ptr) &globalframe; word copyList_v19884; word z_v32984 = 0; /* CopyLineList: */ SOURCE(43383, 245) SOURCE(43383, 245) copyList_v19884 = 0; SOURCE(43487, 27) if ((l_v19756 == 0)) { SOURCE(43503, 11) return(0); }; SOURCE(43516, 29) { word var_c77284; var_c77284 = XR_NewObject(8, (* (( (ptr) gf_c81732)+24) )); (* (ptr) var_c77284 ) = (* (ptr) l_v19756 ); copyList_v19884 = var_c77284; }; SOURCE(43547, 12) z_v32984 = copyList_v19884; SOURCE(43561, 67) lab_L100108: ; l_v19756 = (* (( (ptr) l_v19756)+1) ); if ((l_v19756 != 0)) { } else { goto lab_L100106; }; SOURCE(43589, 27) { word var_c77316; var_c77316 = XR_NewObject(8, (* (( (ptr) gf_c81732)+24) )); (* (ptr) var_c77316 ) = (* (ptr) l_v19756 ); (* (( (ptr) z_v32984)+1) ) = var_c77316; }; SOURCE(43618, 10) z_v32984 = (* (( (ptr) z_v32984)+1) ); goto lab_L100108; lab_L100106: ; SOURCE(43383, 245) return(copyList_v19884); } static void SaveLineTable_P4860(formal_c01078) word formal_c01078; { W7 var_c81764; /* declaration of ggData_v20028 skipped */ register ptr gf_c81796 = (ptr) &globalframe; /* declaration of var_c77348 skipped */ var_c81764.f4/* ggData_v20028 */ = formal_c01078; /* SaveLineTable: */ SOURCE(43643, 285) { word tmpAddr329; tmpAddr329 = (word) (( (ptr) &var_c81764)+5)/* var_c77348 */ ; (* (ptr) tmpAddr329 ) = ( ((word) (fPt) CopyLines_P9060) ); (* (( (ptr) tmpAddr329) + 1) ) = 1; }; SOURCE(43827, 44) { word pd330; pd330 = (* (( (ptr) (* (( (ptr) gf_c81796)+234)/* var_c72196 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd330 ))))((* ((( (ptr) (* (( (ptr) var_c81764.f4/* ggData_v20028 */ )+17) ))+7)) ), pd330); }; SOURCE(43873, 55) { word var_c77380; word pd331; pd331 = (* (( (ptr) (* (( (ptr) gf_c81796)+234)/* var_c72196 */ ))+13) ); var_c77380 = (word) ( *( (fPt) ((* (ptr) pd331 ))))((* (( (ptr) (* (( (ptr) var_c81764.f4/* ggData_v20028 */ )+17) ))+6) ), (word) (( (bPt) &var_c81764)+20)/* var_c77348 */ , pd331); }; } static word CopyLines_P9060(key_v65220, val_v65248, formal_c81860) word key_v65220; word val_v65248; word formal_c81860; { register ptr gf_c81828 = (ptr) &globalframe; word quit_v65292; word inserted_v33156; formal_c81860 = (formal_c81860 - 20); /* CopyLines: */ SOURCE(43684, 133) SOURCE(43684, 133) quit_v65292 = 0; SOURCE(43722, 72) { word pd332; pd332 = (* (( (ptr) (* (( (ptr) gf_c81828)+234)/* var_c72196 */ ))+10) ); inserted_v33156 = (word) ( *( (fPt) ((* (ptr) pd332 ))))((* (( (ptr) (* (( (ptr) (* (( (ptr) formal_c81860)+4) ))+17) ))+7) ), key_v65220, val_v65248, pd332); }; SOURCE(43796, 21) if ((0 == inserted_v33156)) { SOURCE(43817, 5) (void) XR_RaiseUnnamedError(); }; SOURCE(43684, 133) return(quit_v65292); } static void RestoreLineTable_P4920(ggData_v20088) word ggData_v20088; { word temp_v33200; /* RestoreLineTable: */ SOURCE(43934, 184) SOURCE(43978, 49) temp_v33200 = (* (( (ptr) (* (( (ptr) ggData_v20088)+17) ))+7) ); SOURCE(44029, 56) (* (( (ptr) (* (( (ptr) ggData_v20088)+17) ))+7) ) = (* (( (ptr) (* (( (ptr) ggData_v20088)+17) ))+6) ); SOURCE(44087, 31) (* (( (ptr) (* (( (ptr) ggData_v20088)+17) ))+6) ) = temp_v33200; } static void FlushLineTable_P4980(ggData_v20148) word ggData_v20148; { register ptr gf_c81892 = (ptr) &globalframe; /* FlushLineTable: */ SOURCE(44124, 88) SOURCE(44173, 39) { word pd333; pd333 = (* (( (ptr) (* (( (ptr) gf_c81892)+234)/* var_c72196 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd333 ))))((* ((( (ptr) (* (( (ptr) ggData_v20148)+17) ))+6)) ), pd333); }; } static word CardFromLine_P5040(line_v20208) word line_v20208; { word key_v20252; /* CardFromLine: */ SOURCE(44218, 78) SOURCE(44274, 22) key_v20252 = (* (( (ptr) line_v20208)+1) ); SOURCE(44218, 78) return(key_v20252); } static void AddLineToTable_P5100(ggData_v20312, line_v20340) word ggData_v20312; word line_v20340; { register ptr gf_c81924 = (ptr) &globalframe; word key_v33244; word found_v33272 = 0; word newValue_v33300 = 0; word val_v33328 = 0; word list_v33356 = 0; /* AddLineToTable: */ SOURCE(44302, 516) SOURCE(44356, 30) key_v33244 = (word) CardFromLine_P5040(line_v20340); SOURCE(44449, 59) { W2 var_c77412; { word pd334; pd334 = (* (( (ptr) (* (( (ptr) gf_c81924)+234)/* var_c72196 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd334 ))))((word) &var_c77412, (* (( (ptr) (* (( (ptr) ggData_v20312)+17) ))+6) ), key_v33244, pd334) ; }; val_v33328 = var_c77412.f1; found_v33272 = var_c77412.f0; }; SOURCE(44510, 308) if ((0 == found_v33272)) { SOURCE(44546, 17) { word var_c77444; word var_c77476; var_c77444 = XR_NewObject(8, (* (( (ptr) gf_c81924)+24) )); var_c77476 = var_c77444; (* (ptr) var_c77476 ) = line_v20340; list_v33356 = var_c77444; }; SOURCE(44565, 61) { word pd335; pd335 = (* (( (ptr) (* (( (ptr) gf_c81924)+234)/* var_c72196 */ ))+9) ); newValue_v33300 = (word) ( *( (fPt) ((* (ptr) pd335 ))))((* (( (ptr) (* (( (ptr) ggData_v20312)+17) ))+6) ), key_v33244, list_v33356, pd335) ; }; SOURCE(44628, 21) if ((0 == newValue_v33300)) { SOURCE(44649, 5) (void) XR_RaiseUnnamedError(); }; } else { SOURCE(44693, 18) list_v33356 = XR_Narrow(val_v33328, (* (( (ptr) gf_c81924)+24) )); SOURCE(44713, 23) { word var_c77508; var_c77508 = XR_NewObject(8, (* (( (ptr) gf_c81924)+24) )); (* (ptr) var_c77508 ) = line_v20340; (* (( (ptr) var_c77508)+1) ) = list_v33356; list_v33356 = var_c77508; }; SOURCE(44738, 61) { word pd336; pd336 = (* (( (ptr) (* (( (ptr) gf_c81924)+234)/* var_c72196 */ ))+9) ); newValue_v33300 = (word) ( *( (fPt) ((* (ptr) pd336 ))))((* (( (ptr) (* (( (ptr) ggData_v20312)+17) ))+6) ), key_v33244, list_v33356, pd336) ; }; SOURCE(44801, 17) if ((0 != newValue_v33300)) { SOURCE(44818, 5) (void) XR_RaiseUnnamedError(); }; }; } static void DrawFeatureList_P5160(formal_c01079, alignObjects_v20428, formal_c01080) word formal_c01079; word alignObjects_v20428; word formal_c01080; { W15 var_c81956; /* declaration of dc_v20400 skipped */ /* declaration of ggData_v20456 skipped */ register ptr gf_c81988 = (ptr) &globalframe; /* declaration of var_c77540 skipped */ /* declaration of var_c77572 skipped */ /* declaration of zip_v33552 skipped */ /* declaration of rect_v33580 skipped */ word viewerToClient_v33608; W2 var_c0873; (* (( (ptr) &var_c81956)+4)/* dc_v20400 */ ) = formal_c01079; (* (( (ptr) &var_c81956)+5)/* ggData_v20456 */ ) = formal_c01080; /* DrawFeatureList: */ SOURCE(44832, 2151) { word tmpAddr337; tmpAddr337 = (word) (( (ptr) &var_c81956)+6)/* var_c77540 */ ; (* (ptr) tmpAddr337 ) = ( ((word) (fPt) DrawCircleAux_P9180) ); (* (( (ptr) tmpAddr337) + 1) ) = 1; }; { word tmpAddr338; tmpAddr338 = (word) (( (ptr) &var_c81956)+8)/* var_c77572 */ ; (* (ptr) tmpAddr338 ) = ( ((word) (fPt) DrawLineAux_P9120) ); (* (( (ptr) tmpAddr338) + 1) ) = 1; }; SOURCE(46028, 15) (* (( (ptr) &var_c81956)+10)/* zip_v33552 */ ) = 0; SOURCE(46045, 52) { word pd339; pd339 = (* (( (ptr) (* (( (ptr) gf_c81988)+240)/* var_c73828 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd339 ))))((word) (( (bPt) &var_c81956)+44)/* rect_v33580 */ , (* (( (ptr) &var_c81956)+5)/* ggData_v20456 */ ), pd339) ; }; SOURCE(46141, 109) { word pd340; pd340 = (* (( (ptr) (* (( (ptr) gf_c81988)+240)/* var_c73828 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd340 ))))((word) &var_c0873, (* (( (ptr) &var_c81956)+5)/* ggData_v20456 */ ), pd340); }; viewerToClient_v33608 = var_c0873.f1; SOURCE(46252, 68) { word pd341; pd341 = (* (( (ptr) (* (( (ptr) gf_c81988)+249)/* var_c77604 */ ))+46) ); (void) ( *( (fPt) ((* (ptr) pd341 ))))((word) (( (bPt) &var_c81956)+44)/* rect_v33580 */ , viewerToClient_v33608, (* (W4Pt) ( ( (ptr) &var_c81956)+11)/* rect_v33580 */ ), pd341); }; SOURCE(46350, 30) { word pd342; pd342 = (* (( (ptr) (* (( (ptr) gf_c81988)+250)/* var_c77636 */ ))+68) ); (void) ( *( (fPt) ((* (ptr) pd342 ))))((* (( (ptr) &var_c81956)+4)/* dc_v20400 */ ), (* (ptr) &fc115 ), pd342); }; SOURCE(46433, 23) { word pd343; pd343 = (* (( (ptr) (* (( (ptr) gf_c81988)+251)/* var_c77668 */ ))+11) ); (* (( (ptr) &var_c81956)+10)/* zip_v33552 */ ) = (word) ( *( (fPt) ((* (ptr) pd343 ))))((* (( (ptr) &var_c81956)+4)/* dc_v20400 */ ), 0, pd343) ; }; SOURCE(46458, 30) { word pd344; pd344 = (* (( (ptr) (* (( (ptr) gf_c81988)+250)/* var_c77636 */ ))+68) ); (void) ( *( (fPt) ((* (ptr) pd344 ))))((* (( (ptr) &var_c81956)+4)/* dc_v20400 */ ), (* (ptr) &fc345 ), pd344); }; SOURCE(46490, 35) { word pd346; pd346 = (* (( (ptr) (* (( (ptr) gf_c81988)+250)/* var_c77636 */ ))+52) ); (void) ( *( (fPt) ((* (ptr) pd346 ))))((* (( (ptr) &var_c81956)+4)/* dc_v20400 */ ), (* (( (ptr) gf_c81988)+7)/* alignmentColor_v8040 */ ), pd346) ; }; SOURCE(46527, 405) { register word list_v33772; list_v33772 = alignObjects_v20428; lab_L100112: ; if ((list_v33772 != 0)) { } else { goto lab_L100109; }; SOURCE(46603, 329) { word var_c77700; word var_c77732; var_c77700 = (* (( (ptr) (* (ptr) list_v33772 ))+1) ); if ((var_c77700 == 0)) { goto lab_L100113; }; var_c77732 = XR_GetReferentType(var_c77700); { word var_c77796; var_c77796 = (* (( (ptr) gf_c81988)+21) ); if ((var_c77796 == var_c77732)) { { word slopeLine_v33900; slopeLine_v33900 = var_c77700; SOURCE(46665, 27) (void) DrawLineAux_P9120((* (ptr) slopeLine_v33900 ), (word) (( (bPt) &var_c81956)+32)/* var_c77572 */ ); }; goto endif0347; }; if ((var_c77796 == var_c77732)) { { word angleLine_v33944; angleLine_v33944 = var_c77700; SOURCE(46722, 27) (void) DrawLineAux_P9120((* (ptr) angleLine_v33944 ), (word) (( (bPt) &var_c81956)+32)/* var_c77572 */ ); }; goto endif0347; }; if (((* (( (ptr) gf_c81988)+26) ) == var_c77732)) { { word circle_v33988; circle_v33988 = var_c77700; SOURCE(46778, 89) if ((0 != (* (( (ptr) gf_c81988)+9)/* useCache_v8096 */ ))) { SOURCE(46795, 34) (void) DrawCircleAux_P9180((* (ptr) circle_v33988 ), (word) (( (bPt) &var_c81956)+24)/* var_c77540 */ ); } else { SOURCE(46829, 38) { word pd348; pd348 = (* (( (ptr) (* (( (ptr) gf_c81988)+252)/* var_c77764 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd348 ))))((* (( (ptr) &var_c81956)+4)/* dc_v20400 */ ), (* (ptr) circle_v33988 ), pd348); }; }; }; goto endif0347; }; if (((* (( (ptr) gf_c81988)+18) ) == var_c77732)) { { word distanceLine_v34032; distanceLine_v34032 = var_c77700; SOURCE(46891, 41) { word pd349; pd349 = (* (( (ptr) (* (( (ptr) gf_c81988)+252)/* var_c77764 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd349 ))))((* (( (ptr) &var_c81956)+4)/* dc_v20400 */ ), distanceLine_v34032, (* (W4Pt) (( (ptr) &var_c81956)+11) /* rect_v33580 */ ), (* (ptr) &fc345 ), 0, pd349); }; }; goto endif0347; }; lab_L100113: ; SOURCE(46945, 5) (void) XR_RaiseUnnamedError(); goto endif0347; endif0347: ; }; }; list_v33772 = (* (( (ptr) list_v33772)+1) ); goto lab_L100112; lab_L100109: ; }; SOURCE(46961, 22) { word pd350; pd350 = (* (( (ptr) (* (( (ptr) gf_c81988)+251)/* var_c77668 */ ))+12) ); (void) ( *( (fPt) ((* (ptr) pd350 ))))((* ((( (ptr) &var_c81956)+10)/* zip_v33552 */ ) ), pd350); }; } static void DrawLineAux_P9120(line_v33684, formal_c82052) word line_v33684; word formal_c82052; { register ptr gf_c82020 = (ptr) &globalframe; formal_c82052 = (formal_c82052 - 32); /* DrawLineAux: */ SOURCE(44937, 438) SOURCE(45015, 76) if ((0 != (word) LineIsPresent_P4680((* (( (ptr) formal_c82052)+5) ), line_v33684))) { SOURCE(45051, 12) return; } else { SOURCE(45063, 28) (void) AddLineToTable_P5100((* (( (ptr) formal_c82052)+5) ), line_v33684); }; SOURCE(45093, 282) { float tf351; word x352; word x353; float tf355; word x356; word x357; word x358; if ((FABS(( x352 = (* (ptr) line_v33684 ), *(float*)&x352 ), tf351) < ( x353 = (* (ptr) &fc345 ), *(float*)&x353 ))) { goto then0354;}; if ((FABS((( x356 = (* (ptr) line_v33684 ), *(float*)&x356 ) - ( x357 = (* (ptr) &fc308 ), *(float*)&x357 )), tf355) < ( x358 = (* (ptr) &fc345 ), *(float*)&x358 ))) { then0354: ; SOURCE(45183, 33) { word pd359; pd359 = (* (( (ptr) (* (( (ptr) gf_c82020)+250)/* var_c77636 */ ))+52) ); (void) ( *( (fPt) ((* (ptr) pd359 ))))((* (( (ptr) formal_c82052)+4) ), (* (( (ptr) gf_c82020)+8)/* checkerColor_v8068 */ ), pd359) ; }; SOURCE(45218, 43) { word pd360; pd360 = (* (( (ptr) (* (( (ptr) gf_c82020)+252)/* var_c77764 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd360 ))))((* (( (ptr) formal_c82052)+4) ), line_v33684, (* (W4Pt) (( (ptr) formal_c82052)+11) ), (* (ptr) &fc115 ), (* (( (ptr) formal_c82052)+10) ), pd360); }; SOURCE(45288, 35) { word pd361; pd361 = (* (( (ptr) (* (( (ptr) gf_c82020)+250)/* var_c77636 */ ))+52) ); (void) ( *( (fPt) ((* (ptr) pd361 ))))((* (( (ptr) formal_c82052)+4) ), (* (( (ptr) gf_c82020)+7)/* alignmentColor_v8040 */ ), pd361) ; }; } else { SOURCE(45332, 43) { word pd362; pd362 = (* (( (ptr) (* (( (ptr) gf_c82020)+252)/* var_c77764 */ ))+11) ); (void) ( *( (fPt) ((* (ptr) pd362 ))))((* (( (ptr) formal_c82052)+4) ), line_v33684, (* (W4Pt) (( (ptr) formal_c82052)+11) ), (* (ptr) &fc115 ), (* (( (ptr) formal_c82052)+10) ), pd362); }; }; }; } static void DrawCircleAux_P9180(circle_v33744, formal_c82116) word circle_v33744; word formal_c82116; { register ptr gf_c82084 = (ptr) &globalframe; word cachedCircle_v34076 = 0; word circleCache_v34104; formal_c82116 = (formal_c82116 - 24); /* DrawCircleAux: */ SOURCE(45405, 615) SOURCE(45510, 71) { word pd363; pd363 = (* (( (ptr) (* (( (ptr) gf_c82084)+240)/* var_c73828 */ ))+47) ); circleCache_v34104 = (word) ( *( (fPt) ((* (ptr) pd363 ))))((* ((( (ptr) formal_c82116)+5)) ), pd363); }; SOURCE(45583, 437) { word pd364; pd364 = (* (( (ptr) (* (( (ptr) gf_c82084)+253)/* var_c77828 */ ))+6) ); cachedCircle_v34076 = (word) ( *( (fPt) ((* (ptr) pd364 ))))(circleCache_v34104, (* (( (ptr) circle_v33744)+2) ), pd364) ; }; if ((cachedCircle_v34076 != 0)) { SOURCE(45661, 82) { word pd365; pd365 = (* (( (ptr) (* (( (ptr) gf_c82084)+253)/* var_c77828 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd365 ))))((* (( (ptr) formal_c82116)+4) ), (* (W2Pt) circle_v33744 ), cachedCircle_v34076, pd365) ; }; } else { SOURCE(45792, 48) { word pd366; pd366 = (* (( (ptr) (* (( (ptr) gf_c82084)+253)/* var_c77828 */ ))+5) ); (void) ( *( (fPt) ((* (ptr) pd366 ))))(circleCache_v34104, (* (( (ptr) circle_v33744)+2) ), pd366); }; SOURCE(45842, 178) { word pd367; pd367 = (* (( (ptr) (* (( (ptr) gf_c82084)+253)/* var_c77828 */ ))+6) ); cachedCircle_v34076 = (word) ( *( (fPt) ((* (ptr) pd367 ))))(circleCache_v34104, (* (( (ptr) circle_v33744)+2) ), pd367) ; }; if ((cachedCircle_v34076 != 0)) { SOURCE(45920, 69) { word pd368; pd368 = (* (( (ptr) (* (( (ptr) gf_c82084)+253)/* var_c77828 */ ))+9) ); (void) ( *( (fPt) ((* (ptr) pd368 ))))((* (( (ptr) formal_c82116)+4) ), (* (W2Pt) circle_v33744 ), cachedCircle_v34076, pd368) ; }; } else { SOURCE(45989, 31) { word pd369; pd369 = (* (( (ptr) (* (( (ptr) gf_c82084)+252)/* var_c77764 */ ))+13) ); (void) ( *( (fPt) ((* (ptr) pd369 ))))((* (( (ptr) formal_c82116)+4) ), circle_v33744, pd369); }; }; }; } static word HasVisibleObjects_P5220(alignBag_v20600) word alignBag_v20600; { word var_c20644; /* HasVisibleObjects: */ SOURCE(46989, 206) SOURCE(47060, 135) { word tc370; if (((0 == (word) EmptySlopeLines_P1380(alignBag_v20600)) || ((* (( (ptr) alignBag_v20600)+1) ) != 0)) || ((* (( (ptr) alignBag_v20600)+2) ) != 0)) { tc370 = (word) (unsigned) 1; } else { tc370 = (word) (unsigned) ((* (( (ptr) alignBag_v20600)+3) ) != 0); }; return(tc370); }; } static void DrawAlignBagRegardless_P5280(dc_v20704, alignBag_v20732, ggData_v20760) word dc_v20704; word alignBag_v20732; word ggData_v20760; { word slopeLines_v34148 = 0; /* DrawAlignBagRegardless: */ SOURCE(47201, 396) SOURCE(47331, 29) if ((alignBag_v20732 == 0)) { SOURCE(47354, 6) return; }; SOURCE(47362, 39) slopeLines_v34148 = (word) ListOfSlopeLines_P1980(alignBag_v20732); SOURCE(47403, 39) (void) DrawFeatureList_P5160(dc_v20704, slopeLines_v34148, ggData_v20760); SOURCE(47444, 48) (void) DrawFeatureList_P5160(dc_v20704, (* (( (ptr) alignBag_v20732)+1) ), ggData_v20760); SOURCE(47494, 50) (void) DrawFeatureList_P5160(dc_v20704, (* (( (ptr) alignBag_v20732)+2) ), ggData_v20760); SOURCE(47546, 51) (void) DrawFeatureList_P5160(dc_v20704, (* (( (ptr) alignBag_v20732)+3) ), ggData_v20760); } static void MakeFiltersGarbage_P5340(filters_v20820) word filters_v20820; { W6 var_c82148; /* declaration of var_c77892 skipped */ /* MakeFiltersGarbage: */ SOURCE(47603, 448) { word tmpAddr371; tmpAddr371 = (word) (( (ptr) &var_c82148)+4)/* var_c77892 */ ; (* (ptr) tmpAddr371 ) = ( ((word) (fPt) UnlinkBag_P9480) ); (* (( (ptr) tmpAddr371) + 1) ) = 1; }; SOURCE(47927, 29) (void) UnlinkBag_P9480((* (( (ptr) filters_v20820)+1) ), (word) (( (bPt) &var_c82148)+16)/* var_c77892 */ ); SOURCE(47958, 32) (void) UnlinkBag_P9480((* (( (ptr) filters_v20820)+2) ), (word) (( (bPt) &var_c82148)+16)/* var_c77892 */ ); SOURCE(47992, 27) (void) UnlinkBag_P9480((* (( (ptr) filters_v20820)+8) ), (word) (( (bPt) &var_c82148)+16)/* var_c77892 */ ); SOURCE(48021, 30) (void) UnlinkBag_P9480((* (( (ptr) filters_v20820)+9) ), (word) (( (bPt) &var_c82148)+16)/* var_c77892 */ ); } static void UnlinkBag_P9480(bag_v34352, formal_c82212) word bag_v34352; word formal_c82212; { W6 var_c82180; /* declaration of var_c77924 skipped */ formal_c82212 = (formal_c82212 - 16); var_c82180.f0 = formal_c82212; /* UnlinkBag: */ SOURCE(47658, 263) { word tmpAddr372; tmpAddr372 = (word) (( (ptr) &var_c82180)+4)/* var_c77924 */ ; (* (ptr) tmpAddr372 ) = ( ((word) (fPt) DoUnLink_P9540) ); (* (( (ptr) tmpAddr372) + 1) ) = 1; }; SOURCE(47865, 22) if ((bag_v34352 == 0)) { SOURCE(47881, 6) return; }; SOURCE(47889, 32) (void) WalkSliceTriggers_P420(bag_v34352, (word) (( (bPt) &var_c82180)+16)/* var_c77924 */ ); } static word DoUnLink_P9540(feature_v67784, formal_c82276) word feature_v67784; word formal_c82276; { register ptr gf_c82244 = (ptr) &globalframe; word done_v67828; formal_c82276 = (formal_c82276 - 16); /* DoUnLink: */ SOURCE(47696, 152) SOURCE(47696, 152) done_v67828 = 0; SOURCE(47726, 122) { word var_c77956; var_c77956 = (* (( (ptr) feature_v67784)+1) ); if ((var_c77956 == 0)) { goto lab_L100114; }; if (((* (( (ptr) gf_c82244)+15) ) == XR_GetReferentType(var_c77956))) { { word sd_v34424; sd_v34424 = var_c77956; SOURCE(47780, 68) if (((* (ptr) sd_v34424 ) != 0)) { SOURCE(47803, 29) { word pd373; pd373 = (* (( (ptr) (* (( (ptr) gf_c82244)+233)/* var_c71972 */ ))+71) ); (void) ( *( (fPt) ((* (ptr) pd373 ))))((* (ptr) (sd_v34424) ), pd373); }; SOURCE(47834, 14) (* (ptr) sd_v34424 ) = 0; }; }; } else { lab_L100114: ; }; }; SOURCE(47696, 152) return(done_v67828); } static void Init_P5400() { register ptr gf_c82308 = (ptr) &globalframe; /* Init: */ SOURCE(48057, 88) SOURCE(48075, 36) (* (( (ptr) gf_c82308)+5)/* emptyTriggerBag_v5800 */ ) = (word) CreateTriggerBag_P60(); SOURCE(48113, 32) (* (( (ptr) gf_c82308)+6)/* emptyAlignBag_v6332 */ ) = (word) CreateAlignBag_P1140(); } /* file: GGAlignImpl, module: GGAlignImpl, compiled at: July 13, 1993 1:25:54 pm PDT */ extern void XR_install_GGAlignImpl() { NoName_Q9648(); } extern void XR_run_GGAlignImpl() { XR_Start(&globalframe); }