/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1993 by Xerox Corporation. All rights reserved. */ /* time: October 19, 1993 1:00:31 pm PDT */ /* C2C version: April 20, 1993 (sun4) */ /* ref-counting: off */ /* file: TJaMScannerImpl, module: TJaMScannerImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> static char versionStamp[] = "@(#)mob←version [3076896921,1138195635] TJaMScannerImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; typedef struct {word f0, f1, f2, f3, f4, f5, f6, f7;} W8; typedef struct {word f0, f1, f2, f3, f4, f5;} W6; typedef struct {W8 f; W6 r;} W14; typedef struct {word f0, f1;} W2; typedef word (*fPt)(); typedef struct {W8 f; word r;} W9; typedef struct {word f0, f1, f2, f3, f4, f5, f6;} W7; typedef W2 *W2Pt; typedef struct {word f0, f1, f2;} W3; typedef struct {W8 f; W3 r;} W11; #define SOURCE(p, l) /* source p, l */ #define BCK(idx, lim) ( ((unsigned) idx) >= ((unsigned) lim) ? (XR←RaiseBoundsFault()) : (idx) ) static void NoName←Q2136(); static void TJaMScannerImpl←P0(); static word InitClassArray←P60(); static word MapTokens←P120(); static word NoName←Q2196(); static word NoName←Q2256(); static void Cleanup←P1008(); static void DoWithScratchText←P180(); static word NoName←Q2316(); static void PString←P240(); static void QString←P300(); static word RopeFromString←P360(); static void action←P1212(); static void put←P1272(); static void SkipString←P420(); static void put←P1332(); static void SkipJaMComment←P480(); static word NoName←Q2376(); static void SkipCedarComment←P540(); static word NoName←Q2436(); static word IntFromText←P600(); static word RealFromText←P660(); static void NumFromText←P720(); static word NoName←Q2496(); static void ExecuteStream←P780(); static word tokenAction←P1488(); static void bufferAction←P1548(); static word NoName←Q2556(); static void ExecuteRope←P840(); static word LineComplete←P900(); static word tokenAction←P1704(); static void bufferAction←P1764(); static word NoName←Q2616(); static void NoName←Q2676(); static void NoName←Q2736(); static void NoName←Q2796(); static void NoName←Q2856(); static void NoName←Q2916(); static void NoName←Q2976(); static void NoName←Q3036(); static void NoName←Q3096(); static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\243\004\305\073\300\011\303\367\103\101\034\000\000"}; static struct {unsigned f; char r[16];} string2 = {983056, "\205\243\257\300\267\145\270\231\300\103\327\174\263\100\200"}; static struct {unsigned f; char r[16];} string3 = {851984, "\257\300\267\145\270\231\300\103\327\174\263\100\164\000\000"}; static struct {unsigned f; char r[4];} string4 = {131074, "\0040\000"}; static struct {unsigned f; char r[16];} string5 = {851984, "\257\300\055\153\222\376\300\327\164\352\142\100\150\000\000"}; static struct {unsigned f; char r[16];} string6 = {851984, "\257\300\255\053\300\023\300\142\135\315\105\100\150\000\000"}; static struct {unsigned f; char r[16];} string7 = {851984, "\257\300\015\277\004\146\300\034\367\146\045\100\164\000\000"}; static struct {unsigned f; char r[16];} string8 = {851984, "\257\300\332\223\177\020\300\304\076\102\260\100\164\000\000"}; static struct {unsigned f; char r[16];} string9 = {851984, "\257\300\363\223\326\161\300\017\164\046\072\100\150\000\000"}; static struct {unsigned f; char r[4];} string10 = {1414160717, "\000"}; static struct {unsigned f; char r[16];} string11 = {851984, "\257\300\243\004\305\073\300\011\303\367\103\100\150\000\000"}; static struct { word f0[10]; word f10; word f11; word f12; word f13; word f14; word f15; word f16; word f17; word f18; word f19; word f20; word f21; word f22; word f23; word f24; word f25; word f26; word f27; word f28; word f29; word f30; word f31; word f32; word f33; word f34; word f35; word f36; word f37; word f38; word f39; word f40; word f41[8]; } globalframe = { {0}, (word) LineComplete←P900, 0, (word) ExecuteRope←P840, 0, (word) ExecuteStream←P780, 0, (word) NumFromText←P720, 0, (word) RealFromText←P660, 0, (word) IntFromText←P600, 0, (word) SkipCedarComment←P540, 0, (word) SkipJaMComment←P480, 0, (word) SkipString←P420, 0, (word) RopeFromString←P360, 0, (word) QString←P300, 0, (word) PString←P240, 0, (word) DoWithScratchText←P180, 0, (word) MapTokens←P120, 0, (word) InitClassArray←P60, 0, (word) TJaMScannerImpl←P0, {0} }; static void NoName←Q2136() { register ptr gf←c0225 = (ptr) &globalframe; word var←c17684; (* (( (ptr) gf←c0225)+6) ) = (word) XR←GetTypeIndexS((word) (&string1)); (* (( (ptr) gf←c0225)+8) ) = (word) XR←GetTypeIndexS((word) (&string2)); (void) XR←DeclareGlobalFrame((word) "TJaMScannerImpl", &globalframe, (word) XR←GetTypeIndex((word) &string3, 0, (word) &string4) , (word) (( (bPt) gf←c0225)+160)/* var←c15412 */ ); var←c17684 = (word) XR←ImportInterface((word) "Atom", (word) XR←GetTypeIndexS((word) (&string5)), 16); (* (( (ptr) gf←c0225)+47)/* var←c17396 */ ) = var←c17684; (void) XR←ImportProcS(var←c17684, 67372033); var←c17684 = (word) XR←ImportInterface((word) "Convert", (word) XR←GetTypeIndexS((word) (&string6)), 73); (* (( (ptr) gf←c0225)+45)/* var←c16756 */ ) = var←c17684; (void) XR←ImportProcS(var←c17684, 67373057); (void) XR←ImportProcS(var←c17684, 67634690); var←c17684 = (word) XR←ImportInterface((word) "IO", (word) XR←GetTypeIndexS((word) (&string7)), 103); (* (( (ptr) gf←c0225)+42)/* var←c15572 */ ) = var←c17684; (void) XR←ImportProcS(var←c17684, 67640578); (void) XR←ImportProcS(var←c17684, 530434); (void) XR←ImportProcS(var←c17684, 527874); (void) XR←ImportProcS(var←c17684, 67372801); var←c17684 = (word) XR←ImportInterface((word) "RefText", (word) XR←GetTypeIndexS((word) (&string8)), 26); (* (( (ptr) gf←c0225)+43)/* var←c16052 */ ) = var←c17684; (void) XR←ImportProcS(var←c17684, 262913); (void) XR←ImportProcS(var←c17684, 67371521); (void) XR←ImportProcS(var←c17684, 67634946); var←c17684 = (word) XR←ImportInterface((word) "Rope", (word) XR←GetTypeIndexS((word) (&string9)), 43); (* (( (ptr) gf←c0225)+44)/* var←c16372 */ ) = var←c17684; (void) XR←ImportProcS(var←c17684, 67903235); (void) XR←ImportProcS(var←c17684, 67633666); var←c17684 = (word) XR←ImportInterface((word) &string10, (word) XR←GetTypeIndexS((word) (&string11)), 101); (* (( (ptr) gf←c0225)+46)/* var←c17172 */ ) = var←c17684; (void) XR←ImportProcS(var←c17684, 548866); (void) XR←ImportProcS(var←c17684, 530946); (void) XR←ImportProcS(var←c17684, 530434); (void) XR←ImportProcS(var←c17684, 530178); (void) XR←ImportProcS(var←c17684, 792834); (void) XR←ImportProcS(var←c17684, 531970); (void) XR←ImportProcS(var←c17684, 285441); (void) XR←ImportProcS(var←c17684, 67382273); (void) XR←ImportProcS(var←c17684, 540930); (void) XR←ImportProcS(var←c17684, 67385601); (void) XR←ImportProcS(var←c17684, 67385089); (void) XR←ImportProcS(var←c17684, 532482); (void) XR←ImportProcS(var←c17684, 531202); var←c17684 = (word) XR←ExportInterface((word) &string10, (word) XR←GetTypeIndexS((word) (&string11)), 101); (* (( (ptr) gf←c0225)+48)/* var←c17716 */ ) = var←c17684; (void) XR←ExportProcS(var←c17684, (word) (( (bPt) gf←c0225)+56)/* var←c14996 */ , 809987, (word) "ExecuteStream"); (void) XR←ExportProcS(var←c17684, (word) (( (bPt) gf←c0225)+48)/* var←c14964 */ , 548098, (word) "ExecuteRope"); (void) XR←ExportProcS(var←c17684, (word) (( (bPt) gf←c0225)+40)/* var←c14932 */ , 67395073, (word) "LineComplete"); } static void TJaMScannerImpl←P0(formal←c046, formal←c045) word formal←c046; word formal←c045; { register ptr gf←c17748 = (ptr) &globalframe; /* TJaMScannerImpl: */ SOURCE(468, 8775) SOURCE(1408, 48) (* (( (ptr) gf←c17748)+4)/* classFromChar←v2860 */ ) = (word) InitClassArray←P60(); SOURCE(6696, 30) (* (( (ptr) gf←c17748)+5)/* arrayMark←v3308 */ ) = XR←NewObject(4, (* (( (ptr) gf←c17748)+6) )); } static word InitClassArray←P60() { register ptr gf←c17780 = (ptr) &globalframe; word var←c3756; word class←v5880; /* InitClassArray: */ SOURCE(750, 652) SOURCE(799, 52) class←v5880 = XR←NewObject(1024, (* (( (ptr) gf←c17780)+8) )); SOURCE(853, 493) { register word char←v5936 = 0; lab←L100003: ; SOURCE(879, 467) { word var←c15508; var←c15508 = char←v5936; if ((((((var←c15508 == 123) || (var←c15508 == 125)) || (var←c15508 == 40)) || (var←c15508 == 41)) || (var←c15508 == 34)) || (var←c15508 == 37)) { SOURCE(922, 19) (* (( (ptr) class←v5880)+char←v5936) ) = 0; goto endif012; }; if (((((var←c15508 == 13) || (var←c15508 == 10)) || (var←c15508 == 9)) || (var←c15508 == 32)) || (var←c15508 == 44)) { SOURCE(993, 19) (* (( (ptr) class←v5880)+char←v5936) ) = 1; goto endif012; }; if ((var←c15508 == 43)) { SOURCE(1035, 18) (* (( (ptr) class←v5880)+char←v5936) ) = 2; goto endif012; }; if ((var←c15508 == 45)) { SOURCE(1074, 19) (* (( (ptr) class←v5880)+char←v5936) ) = 3; goto endif012; }; if ((var←c15508 == 46)) { SOURCE(1115, 17) (* (( (ptr) class←v5880)+char←v5936) ) = 4; goto endif012; }; if (((var←c15508 - 48) <= 9)) { SOURCE(1165, 19) (* (( (ptr) class←v5880)+char←v5936) ) = 5; goto endif012; }; if ((var←c15508 == 98) || (var←c15508 == 66)) { SOURCE(1206, 21) (* (( (ptr) class←v5880)+char←v5936) ) = 6; goto endif012; }; if ((var←c15508 == 101) || (var←c15508 == 69)) { SOURCE(1262, 21) (* (( (ptr) class←v5880)+char←v5936) ) = 7; goto endif012; }; if (((var←c15508 - 33) <= 93)) { SOURCE(1328, 18) (* (( (ptr) class←v5880)+char←v5936) ) = 8; goto endif012; }; endif012: ; }; if ((char←v5936 >= 255)) { goto lab←L100000; }; char←v5936 = (char←v5936 + 1); goto lab←L100003; lab←L100000: ; }; SOURCE(1389, 13) return(class←v5880); } static word MapTokens←P120(formal←c0300, buffer←v4448, formal←c0301) word formal←c0300; word buffer←v4448; word formal←c0301; { W14 var←c17812; /* declaration of stream←v4420 skipped */ /* declaration of action←v4476 skipped */ register ptr gf←c17844 = (ptr) &globalframe; word quit←v4532; /* declaration of var←c15540 skipped */ /* declaration of text←v5980 skipped */ /* declaration of char←v6008 skipped */ word class←v6036; /* declaration of peeked←v6064 skipped */ (* (( (ptr) &var←c17812)+4)/* stream←v4420 */ ) = formal←c0300; (* (( (ptr) &var←c17812)+5)/* action←v4476 */ ) = formal←c0301; /* MapTokens: */ SOURCE(1702, 2137) { word tmpAddr13; tmpAddr13 = (word) (( (ptr) &var←c17812)+6)/* var←c15540 */ ; (* (ptr) tmpAddr13 ) = ( ((word) (fPt) Cleanup←P1008) ); (* (( (ptr) tmpAddr13) + 1) ) = 1; }; SOURCE(1702, 2137) quit←v4532 = 0; SOURCE(1805, 23) (* (( (ptr) &var←c17812)+8)/* text←v5980 */ ) = buffer←v4448; SOURCE(1856, 20) (* (( (ptr) &var←c17812)+10)/* peeked←v6064 */ ) = 0; SOURCE(1958, 1846) lab←L100006: ; if ((0 == quit←v4532)) { } else { goto lab←L100004; }; { /* declaration of state←v6164 skipped */ SOURCE(1990, 19) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 0; SOURCE(2011, 15) (* (hPt) (* (( (ptr) &var←c17812)+8)/* text←v5980 */ ) ) = 0; SOURCE(2028, 1641) lab←L100009: ; if (((* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) < 12)) { } else { goto lab←L100007; }; SOURCE(2067, 116) if ((0 != (* (( (ptr) &var←c17812)+10)/* peeked←v6064 */ ))) { SOURCE(2082, 20) (* (( (ptr) &var←c17812)+10)/* peeked←v6064 */ ) = 0; } else { SOURCE(2104, 45) { /* declaration of var←c01 skipped */ (* (( (ptr) &var←c17812)+12)/* var←c01 */ ) = (* (( (ptr) (* (( (ptr) gf←c17844)+42)/* var←c15572 */ ))+11) ); { /* declaration of var←c02 skipped */ { word var←c03; { word var←c0268; var←c0268 = (word) &var←c17812; var←c03 = (word) XR←Enable(( ((word) (fPt) NoName←Q2256) ), ( ((word) (fPt) NoName←Q3096) ), var←c0268); }; if ((var←c03 == 2)) { goto lab←L100008; }; }; (* (( (ptr) &var←c17812)+9)/* char←v6008 */ ) = (* (( (ptr) &var←c17812)+13)/* var←c02 */ ); }; }; SOURCE(2156, 27) class←v6036 = (* (( (ptr) (* (( (ptr) gf←c17844)+4)/* classFromChar←v2860 */ ))+(* (( (ptr) &var←c17812)+9)/* char←v6008 */ )) ); }; SOURCE(2188, 1425) SOURCE(2215, 1029) { word var←c15604; var←c15604 = (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ); switch (var←c15604) { case 0: SOURCE(2241, 174) { word var←c15636; var←c15636 = class←v6036; switch (var←c15636) { case 0: SOURCE(2268, 14) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 12; break; case 1: SOURCE(2293, 9) goto lab←L100012; case 5: SOURCE(2313, 11) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 4; break; case 2: SOURCE(2334, 12) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 2; break; case 3: SOURCE(2357, 13) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 3; break; case 4: SOURCE(2379, 11) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 6; break; default: SOURCE(2403, 12) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 1; break; }; }; break; case 1: SOURCE(2425, 9) goto lab←L100013; case 2: SOURCE(2444, 60) { word var←c15668; var←c15668 = class←v6036; if ((var←c15668 == 5)) { SOURCE(2471, 11) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 4; } else { if ((var←c15668 == 4)) { SOURCE(2491, 13) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 7; } else { SOURCE(2517, 9) goto lab←L100013; }; }; }; break; case 3: SOURCE(2537, 85) { word var←c15700; var←c15700 = class←v6036; switch (var←c15700) { case 5: SOURCE(2564, 11) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 4; break; case 3: SOURCE(2586, 14) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 13; break; case 4: SOURCE(2609, 13) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 7; break; default: SOURCE(2635, 9) goto lab←L100013; }; }; break; case 4: SOURCE(2653, 103) { word var←c15732; var←c15732 = class←v6036; switch (var←c15732) { case 5: break; case 4: SOURCE(2693, 13) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 8; break; case 7: SOURCE(2719, 13) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 9; break; case 6: SOURCE(2745, 11) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 5; break; default: SOURCE(2769, 9) goto lab←L100013; }; }; break; case 5: SOURCE(2787, 9) goto lab←L100013; case 6: SOURCE(2805, 40) { word var←c15764; var←c15764 = class←v6036; if ((var←c15764 == 5)) { SOURCE(2832, 13) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 8; } else { SOURCE(2858, 9) goto lab←L100013; }; }; break; case 7: SOURCE(2878, 40) { word var←c15796; var←c15796 = class←v6036; if ((var←c15796 == 5)) { SOURCE(2905, 13) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 8; } else { SOURCE(2931, 9) goto lab←L100013; }; }; break; case 8: SOURCE(2951, 57) { word var←c15828; var←c15828 = class←v6036; if ((var←c15828 == 5)) { } else { if ((var←c15828 == 7)) { SOURCE(2995, 13) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 9; } else { SOURCE(3021, 9) goto lab←L100013; }; }; }; break; case 9: SOURCE(3041, 70) { word var←c15860; var←c15860 = class←v6036; switch (var←c15860) { case 5: SOURCE(3068, 13) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 11; break; case 2: case 3: SOURCE(3098, 13) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 10; break; default: SOURCE(3124, 9) goto lab←L100013; }; }; break; case 10: SOURCE(3144, 40) { word var←c15892; var←c15892 = class←v6036; if ((var←c15892 == 5)) { SOURCE(3171, 13) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 11; } else { SOURCE(3197, 9) goto lab←L100013; }; }; break; case 11: SOURCE(3217, 27) { word var←c15924; var←c15924 = class←v6036; if ((var←c15924 == 5)) { } else { SOURCE(3261, 9) goto lab←L100013; }; }; break; }; }; goto lab←L100014; lab←L100012: ; SOURCE(3295, 4) goto lab←L100009; /* c2c skipped dead code */ lab←L100013: ; SOURCE(3351, 216) { word var←c15956; var←c15956 = class←v6036; if ((var←c15956 == 0)) { SOURCE(3405, 13) (* (( (ptr) &var←c17812)+10)/* peeked←v6064 */ ) = 1; SOURCE(3420, 5) goto lab←L100008; } else { if ((var←c15956 == 1)) { SOURCE(3479, 4) goto lab←L100008; } else { SOURCE(3555, 12) (* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) = 1; }; }; }; lab←L100014: ; SOURCE(3616, 53) { word var←c15988; word to←v14824; word from←v14852; to←v14824 = (* (( (ptr) &var←c17812)+8)/* text←v5980 */ ); from←v14852 = (* (( (ptr) &var←c17812)+9)/* char←v6008 */ ); if (( (unsigned) (* (hPt) to←v14824 ) >= (unsigned) (* (( (hPt) to←v14824)+1) ))) { { word pd14; pd14 = (* (( (ptr) (* (( (ptr) gf←c17844)+43)/* var←c16052 */ ))+11) ); var←c15988 = (word) ( *( (fPt) ((* (ptr) pd14 ))))(to←v14824, from←v14852, pd14); }; goto lab←L100015; }; { word idx15; word limit16; (* ((( (bPt) to←v14824)+4)+( idx15 = (word) (unsigned) (* (hPt) to←v14824 ), limit16 = (word) (unsigned) (* (( (hPt) to←v14824)+1) ), BCK(idx15, limit16) )) ) = from←v14852; }; { word idx17; (* (hPt) to←v14824 ) = ( idx17 = (word) ( (unsigned) (* (hPt) to←v14824 ) + 1), BCK(idx17, 32768) ); }; var←c15988 = to←v14824; lab←L100015: ; (* (( (ptr) &var←c17812)+8)/* text←v5980 */ ) = var←c15988; }; goto lab←L100009; lab←L100007: ; lab←L100008: ; SOURCE(3680, 19) if (((* (( (ptr) &var←c17812)+11)/* state←v6164 */ ) == 0)) { SOURCE(3699, 4) goto lab←L100005; }; SOURCE(3727, 77) { /* declaration of var←c04 skipped */ { word var←c0269; var←c0269 = (word) &var←c17812; (void) (word) XR←Enable(( ((word) (fPt) NoName←Q2196) ), ( ((word) (fPt) NoName←Q3036) ), var←c0269); }; quit←v4532 = (* (( (ptr) &var←c17812)+12)/* var←c04 */ ); }; }; goto lab←L100006; lab←L100004: ; lab←L100005: ; SOURCE(3815, 24) if ((0 != (* (( (ptr) &var←c17812)+10)/* peeked←v6064 */ ))) { SOURCE(3830, 9) (void) Cleanup←P1008((word) ((( (bPt) &var←c17812)+24)/* var←c15540 */ )); }; SOURCE(1702, 2137) return(quit←v4532); } static word NoName←Q2196(formal←c0229) word formal←c0229; { SOURCE(3727, 77) { word pd18; pd18 = (* (( (ptr) formal←c0229)+5) ); (* (( (ptr) formal←c0229)+12) ) = (word) ( *( (fPt) ((* (ptr) pd18 ))))((* (( (ptr) formal←c0229)+11) ), (* (( (ptr) formal←c0229)+8) ), (* (( (ptr) formal←c0229)+4) ), pd18); }; return(0); } static word NoName←Q2256(formal←c0230) word formal←c0230; { SOURCE(2104, 45) { word pd19; pd19 = (* (( (ptr) formal←c0230)+12) ); (* (( (ptr) formal←c0230)+13) ) = (word) ( *( (fPt) ((* (ptr) pd19 ))))((* ((( (ptr) formal←c0230)+4)) ), pd19); }; return(0); } static void Cleanup←P1008(formal←c17908) word formal←c17908; { register ptr gf←c17876 = (ptr) &globalframe; formal←c17908 = (formal←c17908 - 24); /* Cleanup: */ SOURCE(1878, 75) SOURCE(1896, 57) if ((0 != (* (( (ptr) formal←c17908)+10) ))) { SOURCE(1913, 23) { word pd20; pd20 = (* (( (ptr) (* (( (ptr) gf←c17876)+42)/* var←c15572 */ ))+18) ); (void) ( *( (fPt) ((* (ptr) pd20 ))))((* (( (ptr) formal←c17908)+4) ), (* (( (ptr) formal←c17908)+9) ), pd20); }; SOURCE(1938, 15) (* (( (ptr) formal←c17908)+10) ) = 0; }; } static void DoWithScratchText←P180(formal←c0302, len←v4620) word formal←c0302; word len←v4620; { W6 var←c17940; /* declaration of action←v4592 skipped */ register ptr gf←c17972 = (ptr) &globalframe; /* declaration of scratch←v6208 skipped */ var←c17940.f4/* action←v4592 */ = formal←c0302; /* DoWithScratchText: */ SOURCE(3846, 208) SOURCE(3914, 46) { word pd21; pd21 = (* (( (ptr) (* (( (ptr) gf←c17972)+43)/* var←c16052 */ ))+6) ); var←c17940.f5/* scratch←v6208 */ = (word) ( *( (fPt) ((* (ptr) pd21 ))))(BCK(len←v4620, 32768), pd21); }; SOURCE(3962, 59) { word var←c0270; var←c0270 = (word) &var←c17940; (void) (word) XR←Enable(( ((word) (fPt) NoName←Q2316) ), ( ((word) (fPt) NoName←Q2976) ), var←c0270); }; SOURCE(4023, 31) { word pd22; pd22 = (* (( (ptr) (* (( (ptr) gf←c17972)+43)/* var←c16052 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd22 ))))(var←c17940.f5/* scratch←v6208 */ , pd22); }; } static word NoName←Q2316(formal←c0234) word formal←c0234; { SOURCE(3962, 59) { word pd23; pd23 = (* (( (ptr) formal←c0234)+4) ); (void) ( *( (fPt) ((* (ptr) pd23 ))))((* ((( (ptr) formal←c0234)+5)) ), pd23); }; return(0); } static void PString←P240(stream←v13172, put←v13200) word stream←v13172; word put←v13200; { register ptr gf←c18004 = (ptr) &globalframe; /* PString: */ SOURCE(4148, 209) SOURCE(4172, 185) lab←L100022: ; SOURCE(4172, 185) { word char←v6264; SOURCE(4175, 31) { word pd24; pd24 = (* (( (ptr) (* (( (ptr) gf←c18004)+42)/* var←c15572 */ ))+11) ); char←v6264 = (word) ( *( (fPt) ((* (ptr) pd24 ))))(stream←v13172, pd24); }; SOURCE(4208, 149) { word var←c16084; var←c16084 = char←v6264; switch (var←c16084) { case 41: SOURCE(4231, 4) goto lab←L100021; case 40: SOURCE(4245, 7) (void) ( *( (fPt) ((* (ptr) put←v13200 ))))(40, put←v13200); SOURCE(4254, 20) (void) PString←P240(stream←v13172, put←v13200); SOURCE(4276, 8) (void) ( *( (fPt) ((* (ptr) put←v13200 ))))(41, put←v13200); break; case 34: SOURCE(4295, 7) (void) ( *( (fPt) ((* (ptr) put←v13200 ))))(34, put←v13200); SOURCE(4304, 20) (void) QString←P300(stream←v13172, put←v13200); SOURCE(4326, 8) (void) ( *( (fPt) ((* (ptr) put←v13200 ))))(34, put←v13200); break; default: SOURCE(4348, 9) (void) ( *( (fPt) ((* (ptr) put←v13200 ))))(char←v6264, put←v13200); break; }; }; }; goto lab←L100022; lab←L100021: ; } static void QString←P300(stream←v13260, put←v13288) word stream←v13260; word put←v13288; { register ptr gf←c18036 = (ptr) &globalframe; word state←v6308 = 0; word code←v6336; /* QString: */ SOURCE(4372, 832) SOURCE(4453, 751) lab←L100025: ; SOURCE(4453, 751) { word char←v6528; SOURCE(4456, 31) { word pd25; pd25 = (* (( (ptr) (* (( (ptr) gf←c18036)+42)/* var←c15572 */ ))+11) ); char←v6528 = (word) ( *( (fPt) ((* (ptr) pd25 ))))(stream←v13260, pd25); }; SOURCE(4489, 715) { word var←c16116; var←c16116 = state←v6308; switch (var←c16116) { case 0: SOURCE(4515, 70) { word var←c16148; var←c16148 = char←v6528; if ((var←c16148 == 34)) { SOURCE(4538, 4) goto lab←L100024; } else { if ((var←c16148 == 92)) { SOURCE(4551, 12) state←v6308 = 1; } else { SOURCE(4576, 9) (void) ( *( (fPt) ((* (ptr) put←v13288 ))))(char←v6528, put←v13288); }; }; }; break; case 1: SOURCE(4595, 365) { word var←c16180; var←c16180 = char←v6528; if ((var←c16180 == 110) || (var←c16180 == 78)) { SOURCE(4624, 8) (void) ( *( (fPt) ((* (ptr) put←v13288 ))))(10, put←v13288); SOURCE(4634, 13) state←v6308 = 0; goto endif026; }; if ((var←c16180 == 114) || (var←c16180 == 82)) { SOURCE(4662, 8) (void) ( *( (fPt) ((* (ptr) put←v13288 ))))(13, put←v13288); SOURCE(4672, 13) state←v6308 = 0; goto endif026; }; if ((var←c16180 == 108) || (var←c16180 == 76)) { SOURCE(4700, 8) (void) ( *( (fPt) ((* (ptr) put←v13288 ))))(10, put←v13288); SOURCE(4710, 13) state←v6308 = 0; goto endif026; }; if ((var←c16180 == 116) || (var←c16180 == 84)) { SOURCE(4738, 8) (void) ( *( (fPt) ((* (ptr) put←v13288 ))))(9, put←v13288); SOURCE(4748, 13) state←v6308 = 0; goto endif026; }; if ((var←c16180 == 98) || (var←c16180 == 66)) { SOURCE(4776, 8) (void) ( *( (fPt) ((* (ptr) put←v13288 ))))(8, put←v13288); SOURCE(4786, 13) state←v6308 = 0; goto endif026; }; if ((var←c16180 == 102) || (var←c16180 == 70)) { SOURCE(4814, 8) (void) ( *( (fPt) ((* (ptr) put←v13288 ))))(12, put←v13288); SOURCE(4824, 13) state←v6308 = 0; goto endif026; }; if (((var←c16180 == 39) || (var←c16180 == 34)) || (var←c16180 == 92)) { SOURCE(4857, 9) (void) ( *( (fPt) ((* (ptr) put←v13288 ))))(char←v6528, put←v13288); SOURCE(4868, 13) state←v6308 = 0; goto endif026; }; if (((var←c16180 - 48) <= 3)) { SOURCE(4900, 14) code←v6336 = BCK((char←v6528 - 48), 256); SOURCE(4916, 13) state←v6308 = 2; goto endif026; }; SOURCE(4943, 17) (void) XR←RaiseError((word) (( (bPt) gf←c18036)+36)/* var←c14900 */ , 0); goto endif026; endif026: ; }; break; case 2: SOURCE(4970, 104) { word var←c16212; var←c16212 = char←v6528; if (((var←c16212 - 48) <= 7)) { SOURCE(5003, 25) { word idx27; code←v6336 = ( idx27 = (word) (((word) code←v6336 << 3) + (char←v6528 - 48)), BCK(idx27, 256) ); }; SOURCE(5030, 13) state←v6308 = 3; } else { SOURCE(5057, 17) (void) XR←RaiseError((word) (( (bPt) gf←c18036)+36)/* var←c14900 */ , 0); }; }; break; case 3: SOURCE(5084, 120) { word var←c16244; var←c16244 = char←v6528; if (((var←c16244 - 48) <= 7)) { SOURCE(5117, 25) { word idx28; code←v6336 = ( idx28 = (word) (((word) code←v6336 << 3) + (char←v6528 - 48)), BCK(idx28, 256) ); }; SOURCE(5144, 14) (void) ( *( (fPt) ((* (ptr) put←v13288 ))))(code←v6336, put←v13288); SOURCE(5160, 13) state←v6308 = 0; } else { SOURCE(5187, 17) (void) XR←RaiseError((word) (( (bPt) gf←c18036)+36)/* var←c14900 */ , 0); }; }; break; default: SOURCE(5217, 5) (void) XR←RaiseUnnamedError(); break; }; }; }; goto lab←L100025; lab←L100024: ; } static word RopeFromString←P360(formal←c0303, formal←c0304) word formal←c0303; word formal←c0304; { W9 var←c18068; /* declaration of stream←v4916 skipped */ /* declaration of string←v4944 skipped */ /* declaration of rope←v4988 skipped */ /* declaration of var←c16276 skipped */ (* (( (ptr) &var←c18068)+4)/* stream←v4916 */ ) = formal←c0303; (* (( (ptr) &var←c18068)+5)/* string←v4944 */ ) = formal←c0304; /* RopeFromString: */ SOURCE(5238, 422) { word tmpAddr29; tmpAddr29 = (word) (( (ptr) &var←c18068)+7)/* var←c16276 */ ; (* (ptr) tmpAddr29 ) = ( ((word) (fPt) action←P1212) ); (* (( (ptr) tmpAddr29) + 1) ) = 1; }; SOURCE(5238, 422) (* (( (ptr) &var←c18068)+6)/* rope←v4988 */ ) = 0; SOURCE(5635, 25) (void) DoWithScratchText←P180((word) (( (bPt) &var←c18068)+28)/* var←c16276 */ , 100); SOURCE(5238, 422) return((* (( (ptr) &var←c18068)+6)/* rope←v4988 */ )); } static void action←P1212(formal←c0305, formal←c18164) word formal←c0305; word formal←c18164; { W7 var←c18100; /* declaration of text←v6648 skipped */ register ptr gf←c18132 = (ptr) &globalframe; /* declaration of var←c16308 skipped */ formal←c18164 = (formal←c18164 - 28); var←c18100.f4/* text←v6648 */ = formal←c0305; var←c18100.f0 = formal←c18164; /* action: */ SOURCE(5325, 305) { word tmpAddr30; tmpAddr30 = (word) (( (ptr) &var←c18100)+5)/* var←c16308 */ ; (* (ptr) tmpAddr30 ) = ( ((word) (fPt) put←P1272) ); (* (( (ptr) tmpAddr30) + 1) ) = 1; }; SOURCE(5539, 19) { word pd31; pd31 = (* (( (ptr) formal←c18164)+5) ); (void) ( *( (fPt) ((* (ptr) pd31 ))))((* (( (ptr) formal←c18164)+4) ), (word) (( (bPt) &var←c18100)+20)/* var←c16308 */ , pd31) ; }; SOURCE(5560, 70) if (( (unsigned) (* (hPt) var←c18100.f4/* text←v6648 */ ) != 0)) { SOURCE(5582, 48) { word var←c16340; { word pd32; pd32 = (* (( (ptr) (* (( (ptr) gf←c18132)+44)/* var←c16372 */ ))+35) ); var←c16340 = (word) ( *( (fPt) ((* (ptr) pd32 ))))(var←c18100.f4/* text←v6648 */ , 0, 32767, pd32); }; { word pd33; pd33 = (* (( (ptr) (* (( (ptr) gf←c18132)+44)/* var←c16372 */ ))+6) ); (* (( (ptr) formal←c18164)+6) ) = (word) ( *( (fPt) ((* (ptr) pd33 ))))((* (( (ptr) formal←c18164)+6) ), var←c16340, pd33) ; }; }; }; } static void put←P1272(char←v6764, formal←c18228) word char←v6764; word formal←c18228; { register ptr gf←c18196 = (ptr) &globalframe; formal←c18228 = (formal←c18228 - 20); /* put: */ SOURCE(5358, 176) SOURCE(5384, 102) if (( (unsigned) (* (hPt) (* (( (ptr) formal←c18228)+4) ) ) >= 32767)) { SOURCE(5421, 48) { word var←c16404; { word pd34; pd34 = (* (( (ptr) (* (( (ptr) gf←c18196)+44)/* var←c16372 */ ))+35) ); var←c16404 = (word) ( *( (fPt) ((* (ptr) pd34 ))))((* (( (ptr) formal←c18228)+4) ), 0, 32767, pd34); }; { word pd35; pd35 = (* (( (ptr) (* (( (ptr) gf←c18196)+44)/* var←c16372 */ ))+6) ); (* (( (ptr) (* (ptr) formal←c18228 ))+6) ) = (word) ( *( (fPt) ((* (ptr) pd35 ))))((* (( (ptr) (* (ptr) formal←c18228 ))+6) ), var←c16404, pd35); }; }; SOURCE(5471, 15) (* (hPt) (* (( (ptr) formal←c18228)+4) ) ) = 0; }; SOURCE(5491, 43) { word var←c16436; word to←v14748; word from←v14776; to←v14748 = (* (( (ptr) formal←c18228)+4) ); from←v14776 = char←v6764; if (( (unsigned) (* (hPt) to←v14748 ) >= (unsigned) (* (( (hPt) to←v14748)+1) ))) { { word pd36; pd36 = (* (( (ptr) (* (( (ptr) gf←c18196)+43)/* var←c16052 */ ))+11) ); var←c16436 = (word) ( *( (fPt) ((* (ptr) pd36 ))))(to←v14748, from←v14776, pd36); }; goto lab←L100026; }; { word idx37; word limit38; (* ((( (bPt) to←v14748)+4)+( idx37 = (word) (unsigned) (* (hPt) to←v14748 ), limit38 = (word) (unsigned) (* (( (hPt) to←v14748)+1) ), BCK(idx37, limit38) )) ) = from←v14776; }; { word idx39; (* (hPt) to←v14748 ) = ( idx39 = (word) ( (unsigned) (* (hPt) to←v14748 ) + 1), BCK(idx39, 32768) ); }; var←c16436 = to←v14748; lab←L100026: ; (* (( (ptr) formal←c18228)+4) ) = var←c16436; }; } static void SkipString←P420(stream←v5048, string←v5076) word stream←v5048; word string←v5076; { W6 var←c18260; /* declaration of var←c16500 skipped */ /* SkipString: */ SOURCE(5666, 105) { word tmpAddr40; tmpAddr40 = (word) (( (ptr) &var←c18260)+4)/* var←c16500 */ ; (* (ptr) tmpAddr40 ) = ( ((word) (fPt) put←P1332) ); (* (( (ptr) tmpAddr40) + 1) ) = 1; }; SOURCE(5752, 19) (void) ( *( (fPt) ((* (ptr) string←v5076 ))))(stream←v5048, (word) (( (bPt) &var←c18260)+16)/* var←c16500 */ , string←v5076) ; } static void put←P1332(char←v6868, formal←c18292) word char←v6868; word formal←c18292; { formal←c18292 = (formal←c18292 - 16); /* put: */ } static void SkipJaMComment←P480(formal←c0306) word formal←c0306; { W7 var←c18324; /* declaration of stream←v5136 skipped */ register ptr gf←c18356 = (ptr) &globalframe; var←c18324.f4/* stream←v5136 */ = formal←c0306; /* SkipJaMComment: */ SOURCE(5777, 131) SOURCE(5818, 90) lab←L100029: ; SOURCE(5818, 90) { word char←v6896; SOURCE(5821, 51) { /* declaration of var←c05 skipped */ var←c18324.f5/* var←c05 */ = (* (( (ptr) (* (( (ptr) gf←c18356)+42)/* var←c15572 */ ))+11) ); { /* declaration of var←c06 skipped */ { word var←c07; { word var←c0271; var←c0271 = (word) &var←c18324; var←c07 = (word) XR←Enable(( ((word) (fPt) NoName←Q2376) ), ( ((word) (fPt) NoName←Q2916) ), var←c0271); }; if ((var←c07 == 3)) { goto lab←L100028; }; }; char←v6896 = var←c18324.f6/* var←c06 */ ; }; }; SOURCE(5879, 29) { word var←c16532; var←c16532 = char←v6896; if ((var←c16532 == 13) || (var←c16532 == 10)) { SOURCE(5908, 4) goto lab←L100028; }; }; }; goto lab←L100029; lab←L100028: ; } static word NoName←Q2376(formal←c0243) word formal←c0243; { SOURCE(5821, 51) { word pd41; pd41 = (* (( (ptr) formal←c0243)+5) ); (* (( (ptr) formal←c0243)+6) ) = (word) ( *( (fPt) ((* (ptr) pd41 ))))((* ((( (ptr) formal←c0243)+4)) ), pd41); }; return(0); } static void SkipCedarComment←P540(formal←c0307) word formal←c0307; { W7 var←c18388; /* declaration of stream←v5196 skipped */ register ptr gf←c18420 = (ptr) &globalframe; word state←v6940 = 0; var←c18388.f4/* stream←v5196 */ = formal←c0307; /* SkipCedarComment: */ SOURCE(5936, 292) SOURCE(6007, 221) lab←L100034: ; SOURCE(6007, 221) { word char←v7056; SOURCE(6010, 51) { /* declaration of var←c08 skipped */ var←c18388.f5/* var←c08 */ = (* (( (ptr) (* (( (ptr) gf←c18420)+42)/* var←c15572 */ ))+11) ); { /* declaration of var←c09 skipped */ { word var←c010; { word var←c0272; var←c0272 = (word) &var←c18388; var←c010 = (word) XR←Enable(( ((word) (fPt) NoName←Q2436) ), ( ((word) (fPt) NoName←Q2856) ), var←c0272); }; if ((var←c010 == 4)) { goto lab←L100033; }; }; char←v7056 = var←c18388.f6/* var←c09 */ ; }; }; SOURCE(6068, 160) { word var←c16564; var←c16564 = state←v6940; if ((var←c16564 == 0)) { SOURCE(6094, 53) { word var←c16596; var←c16596 = char←v7056; switch (var←c16596) { case 13: case 10: SOURCE(6123, 4) goto lab←L100033; case 45: SOURCE(6135, 12) state←v6940 = 1; break; }; }; } else { if ((var←c16564 == 1)) { SOURCE(6166, 62) { word var←c16628; var←c16628 = char←v7056; switch (var←c16628) { case 13: case 10: case 45: SOURCE(6199, 4) goto lab←L100033; default: SOURCE(6216, 12) state←v6940 = 0; break; }; }; }; }; }; }; goto lab←L100034; lab←L100033: ; } static word NoName←Q2436(formal←c0245) word formal←c0245; { SOURCE(6010, 51) { word pd42; pd42 = (* (( (ptr) formal←c0245)+5) ); (* (( (ptr) formal←c0245)+6) ) = (word) ( *( (fPt) ((* (ptr) pd42 ))))((* ((( (ptr) formal←c0245)+4)) ), pd42); }; return(0); } static word IntFromText←P600(text←v5256) word text←v5256; { register ptr gf←c18452 = (ptr) &globalframe; word var←c5312; /* IntFromText: */ SOURCE(6252, 118) SOURCE(6312, 58) { word var←c16692; { word text←v14700; text←v14700 = text←v5256; var←c16692 = text←v14700; }; { word pd43; pd43 = (* (( (ptr) (* (( (ptr) gf←c18452)+45)/* var←c16756 */ ))+10) ); return((word) ( *( (fPt) ((* (ptr) pd43 ))))(var←c16692, 8, pd43)); }; }; } static word RealFromText←P660(text←v5372) word text←v5372; { register ptr gf←c18484 = (ptr) &globalframe; word var←c5428; /* RealFromText: */ SOURCE(6376, 121) SOURCE(6438, 59) { word var←c16820; { word text←v14652; text←v14652 = text←v5372; var←c16820 = text←v14652; }; { word pd44; pd44 = (* (( (ptr) (* (( (ptr) gf←c18484)+45)/* var←c16756 */ ))+12) ); return((word) ( *( (fPt) ((* (ptr) pd44 ))))(var←c16820, pd44)); }; }; } static void NumFromText←P720(formal←c0132, formal←c0308) word formal←c0132; word formal←c0308; { W6 var←c18516; /* declaration of text←v5488 skipped */ W2 var←c5544; var←c18516.f4/* text←v5488 */ = formal←c0308; /* NumFromText: */ SOURCE(6503, 186) SOURCE(6569, 72) SOURCE(6569, 72) { W2 var←c16916; { W2 var←c16884; var←c16884.f0 = 0; { /* declaration of var←c011 skipped */ { word var←c012; { word var←c0273; var←c0273 = (word) &var←c18516; var←c012 = (word) XR←Enable(( ((word) (fPt) NoName←Q2496) ), ( ((word) (fPt) NoName←Q2796) ), var←c0273); }; if ((var←c012 == 5)) { goto lab←L100041; }; }; var←c16884.f1 = var←c18516.f5/* var←c011 */ ; }; var←c16916 = var←c16884; }; var←c5544 = var←c16916; goto lab←L100039; }; lab←L100041: ; SOURCE(6655, 34) { W2 var←c16980; { W2 var←c16948; var←c16948.f0 = 1; var←c16948.f1 = (word) RealFromText←P660(var←c18516.f4/* text←v5488 */ ); var←c16980 = var←c16948; }; var←c5544 = var←c16980; /* removed tail goto */ }; lab←L100039: ; (* (W2Pt) formal←c0132 ) = var←c5544; return; } static word NoName←Q2496(formal←c0248) word formal←c0248; { SOURCE(6569, 72) (* (( (ptr) formal←c0248)+5) ) = (word) IntFromText←P600((* ((( (ptr) formal←c0248)+4)) )); return(0); } static void ExecuteStream←P780(formal←c0309, formal←c0310, closeAtEnd←v5660) word formal←c0309; word formal←c0310; word closeAtEnd←v5660; { W11 var←c18548; /* declaration of frame←v5604 skipped */ /* declaration of stream←v5632 skipped */ register ptr gf←c18580 = (ptr) &globalframe; /* declaration of var←c17012 skipped */ /* declaration of var←c17044 skipped */ /* declaration of arrayNest←v7100 skipped */ (* (( (ptr) &var←c18548)+4)/* frame←v5604 */ ) = formal←c0309; (* (( (ptr) &var←c18548)+5)/* stream←v5632 */ ) = formal←c0310; /* ExecuteStream: */ SOURCE(6729, 1478) { word tmpAddr45; tmpAddr45 = (word) (( (ptr) &var←c18548)+6)/* var←c17012 */ ; (* (ptr) tmpAddr45 ) = ( ((word) (fPt) bufferAction←P1548) ); (* (( (ptr) tmpAddr45) + 1) ) = 1; }; { word tmpAddr46; tmpAddr46 = (word) (( (ptr) &var←c18548)+8)/* var←c17044 */ ; (* (ptr) tmpAddr46 ) = ( ((word) (fPt) tokenAction←P1488) ); (* (( (ptr) tmpAddr46) + 1) ) = 1; }; SOURCE(6815, 18) (* (( (ptr) &var←c18548)+10)/* arrayNest←v7100 */ ) = 0; SOURCE(8139, 31) (void) DoWithScratchText←P180((word) (( (bPt) &var←c18548)+24)/* var←c17012 */ , 100); SOURCE(8172, 35) if ((0 != closeAtEnd←v5660)) { SOURCE(8191, 16) { word pd47; pd47 = (* (( (ptr) (* (( (ptr) gf←c18580)+42)/* var←c15572 */ ))+28) ); (void) ( *( (fPt) ((* (ptr) pd47 ))))((* (( (ptr) &var←c18548)+5)/* stream←v5632 */ ), 0, pd47); }; }; } static word tokenAction←P1488(state←v14032, text←v14060, stream←v14088, formal←c18644) word state←v14032; word text←v14060; word stream←v14088; word formal←c18644; { register ptr gf←c18612 = (ptr) &globalframe; word quit←v14132; formal←c18644 = (formal←c18644 - 32); /* tokenAction: */ SOURCE(6835, 963) SOURCE(6835, 963) quit←v14132 = 0; SOURCE(6861, 937) SOURCE(6863, 774) { word var←c17076; var←c17076 = state←v14032; switch (var←c17076) { case 12: SOURCE(6891, 455) { word var←c17108; { word limit48; var←c17108 = (unsigned) (word) (* ((( (bPt) text←v14060)+4)+( limit48 = (word) (unsigned) (* (( (hPt) text←v14060)+1) ), BCK(0, limit48) )) ); }; switch (var←c17108) { case 40: SOURCE(6917, 48) { word var←c17140; var←c17140 = (word) RopeFromString←P360(stream←v14088, (word) (( (bPt) gf←c18612)+128)/* var←c15284 */ ); { word pd49; pd49 = (* (( (ptr) (* (( (ptr) gf←c18612)+46)/* var←c17172 */ ))+31) ); (void) ( *( (fPt) ((* (ptr) pd49 ))))((* (( (ptr) formal←c18644)+4) ), var←c17140, pd49); }; }; break; case 34: SOURCE(6973, 48) { word var←c17204; var←c17204 = (word) RopeFromString←P360(stream←v14088, (word) (( (bPt) gf←c18612)+120)/* var←c15252 */ ); { word pd50; pd50 = (* (( (ptr) (* (( (ptr) gf←c18612)+46)/* var←c17172 */ ))+31) ); (void) ( *( (fPt) ((* (ptr) pd50 ))))((* (( (ptr) formal←c18644)+4) ), var←c17204, pd50); }; }; break; case 123: SOURCE(7031, 23) (* (( (ptr) formal←c18644)+10) ) = ((* (( (ptr) formal←c18644)+10) ) + 1); SOURCE(7056, 26) { word pd51; pd51 = (* (( (ptr) (* (( (ptr) gf←c18612)+46)/* var←c17172 */ ))+36) ); (void) ( *( (fPt) ((* (ptr) pd51 ))))((* (( (ptr) formal←c18644)+4) ), (* (( (ptr) gf←c18612)+5)/* arrayMark←v3308 */ ), pd51) ; }; break; case 125: SOURCE(7093, 220) if (( (int)(* (( (ptr) formal←c18644)+10) ) == (int)0)) { SOURCE(7113, 15) goto lab←L100044; } else { SOURCE(7128, 187) { word len←v7272; word array←v7300; SOURCE(7130, 29) { /*1*/ word pd52; /*1*/ pd52 = (* (( (ptr) (* (( (ptr) gf←c18612)+46)/* var←c17172 */ ))+59) ); /*1*/ len←v7272 = (word) ( *( (fPt) ((* (ptr) pd52 ))))((* ((( (ptr) formal←c18644)+4)) ), pd52); /*1*/ }; SOURCE(7161, 28) { /*1*/ word pd53; /*1*/ pd53 = (* (( (ptr) (* (( (ptr) gf←c18612)+46)/* var←c17172 */ ))+61) ); /*1*/ array←v7300 = (word) ( *( (fPt) ((* (ptr) pd53 ))))(len←v7272, pd53); /*1*/ }; SOURCE(7191, 20) { /*1*/ word pd54; /*1*/ pd54 = (* (( (ptr) (* (( (ptr) gf←c18612)+46)/* var←c17172 */ ))+69) ); /*1*/ (void) ( *( (fPt) ((* (ptr) pd54 ))))((* (( (ptr) formal←c18644)+4) ), array←v7300, pd54); /*1*/ }; SOURCE(7213, 50) { /*1*/ word pd55; /*1*/ pd55 = (* (( (ptr) (* (( (ptr) gf←c18612)+46)/* var←c17172 */ ))+48) ); /*1*/ if (((word) ( *( (fPt) ((* (ptr) pd55 ))))((* ((( (ptr) formal←c18644)+4)) ), pd55) != (* (( (ptr) gf←c18612)+5)/* arrayMark←v3308 */ ))) { SOURCE(7246, 17) /*1*/ { /*1*/ word pd56; /*1*/ pd56 = (* (( (ptr) (* (( (ptr) gf←c18612)+46)/* var←c17172 */ ))+95) ); /*1*/ (void) ( *( (fPt) ((* (ptr) pd56 ))))(14, pd56); /*1*/ }; /*1*/ }; /*1*/ }; SOURCE(7265, 23) { /*1*/ word pd57; /*1*/ pd57 = (* (( (ptr) (* (( (ptr) gf←c18612)+46)/* var←c17172 */ ))+34) ); /*1*/ (void) ( *( (fPt) ((* (ptr) pd57 ))))((* (( (ptr) formal←c18644)+4) ), array←v7300, pd57); /*1*/ }; SOURCE(7290, 23) (* (( (ptr) formal←c18644)+10) ) = ((* (( (ptr) formal←c18644)+10) ) - 1); }; }; break; case 37: SOURCE(7324, 22) (void) SkipJaMComment←P480(stream←v14088); break; default: SOURCE(7359, 9) goto lab←L100044; }; }; break; case 13: SOURCE(7380, 76) { word var←c17236; { word limit58; var←c17236 = (unsigned) (word) (* ((( (bPt) text←v14060)+4)+( limit58 = (word) (unsigned) (* (( (hPt) text←v14060)+1) ), BCK(0, limit58) )) ); }; if ((var←c17236 == 45)) { SOURCE(7406, 50) { word var←c17268; { word limit59; var←c17268 = (unsigned) (word) (* ((( (bPt) text←v14060)+4)+( /*1*/ limit59 = (word) (unsigned) (* (( (hPt) text←v14060)+1) ), /*1*/ BCK(1, limit59) /*1*/ )) ); }; if ((var←c17268 == 45)) { SOURCE(7432, 24) (void) SkipCedarComment←P540(stream←v14088); } else { SOURCE(7469, 9) goto lab←L100044; }; }; } else { SOURCE(7491, 9) goto lab←L100044; }; }; break; case 4: SOURCE(7509, 33) { W2 var←c17300; (void) NumFromText←P720((word) &var←c17300, text←v14060); { word pd60; pd60 = (* (( (ptr) (* (( (ptr) gf←c18612)+46)/* var←c17172 */ ))+29) ); (void) ( *( (fPt) ((* (ptr) pd60 ))))((* (( (ptr) formal←c18644)+4) ), var←c17300, pd60); }; }; break; case 5: SOURCE(7551, 33) { word var←c17332; var←c17332 = (word) IntFromText←P600(text←v14060); { word pd61; pd61 = (* (( (ptr) (* (( (ptr) gf←c18612)+46)/* var←c17172 */ ))+27) ); (void) ( *( (fPt) ((* (ptr) pd61 ))))((* (( (ptr) formal←c18644)+4) ), var←c17332, pd61); }; }; break; case 8: case 11: SOURCE(7602, 35) { word var←c17364; var←c17364 = (word) RealFromText←P660(text←v14060); { word pd62; pd62 = (* (( (ptr) (* (( (ptr) gf←c18612)+46)/* var←c17172 */ ))+28) ); (void) ( *( (fPt) ((* (ptr) pd62 ))))((* (( (ptr) formal←c18644)+4) ), var←c17364, pd62); }; }; break; default: SOURCE(7650, 9) goto lab←L100044; }; }; goto lab←L100045; lab←L100044: ; SOURCE(7675, 120) { word atom←v7344; SOURCE(7677, 43) { word pd63; pd63 = (* (( (ptr) (* (( (ptr) gf←c18612)+47)/* var←c17396 */ ))+8) ); atom←v7344 = (word) ( *( (fPt) ((* (ptr) pd63 ))))(text←v14060, pd63); }; SOURCE(7722, 71) if (( (int)(* (( (ptr) formal←c18644)+10) ) > (int)0)) { SOURCE(7742, 27) { word pd64; pd64 = (* (( (ptr) (* (( (ptr) gf←c18612)+46)/* var←c17172 */ ))+30) ); (void) ( *( (fPt) ((* (ptr) pd64 ))))((* (( (ptr) formal←c18644)+4) ), atom←v7344, pd64); }; } else { SOURCE(7769, 24) { word pd65; pd65 = (* (( (ptr) (* (( (ptr) gf←c18612)+46)/* var←c17172 */ ))+100) ); (void) ( *( (fPt) ((* (ptr) pd65 ))))((* (( (ptr) formal←c18644)+4) ), atom←v7344, pd65); }; }; }; lab←L100045: ; SOURCE(6835, 963) return(quit←v14132); } static void bufferAction←P1548(formal←c0311, formal←c18740) word formal←c0311; word formal←c18740; { W6 var←c18676; /* declaration of buffer←v7232 skipped */ register ptr gf←c18708 = (ptr) &globalframe; formal←c18740 = (formal←c18740 - 24); var←c18676.f4/* buffer←v7232 */ = formal←c0311; var←c18676.f0 = formal←c18740; /* bufferAction: */ SOURCE(7801, 335) SOURCE(7840, 296) SOURCE(7842, 87) { word var←c17428; { /* declaration of var←c013 skipped */ { word var←c014; { word var←c0274; var←c0274 = (word) &var←c18676; var←c014 = (word) XR←Enable(( ((word) (fPt) NoName←Q2556) ), ( ((word) (fPt) NoName←Q2736) ), var←c0274); }; if ((var←c014 == 7)) { goto lab←L100047; } else { if ((var←c014 == 6)) { goto lab←L100046; }; }; }; var←c17428 = var←c18676.f5/* var←c013 */ ; }; }; SOURCE(7991, 45) if (( (int)(* (( (ptr) formal←c18740)+10) ) > (int)0)) { SOURCE(8011, 25) { word pd66; pd66 = (* (( (ptr) (* (( (ptr) gf←c18708)+46)/* var←c17172 */ ))+95) ); (void) ( *( (fPt) ((* (ptr) pd66 ))))(13, pd66); }; }; goto lab←L100050; lab←L100046: ; SOURCE(8063, 25) { word pd67; pd67 = (* (( (ptr) (* (( (ptr) gf←c18708)+46)/* var←c17172 */ ))+95) ); (void) ( *( (fPt) ((* (ptr) pd67 ))))(13, pd67); }; goto lab←L100050; lab←L100047: ; SOURCE(8109, 25) { word pd68; pd68 = (* (( (ptr) (* (( (ptr) gf←c18708)+46)/* var←c17172 */ ))+95) ); (void) ( *( (fPt) ((* (ptr) pd68 ))))(12, pd68); }; lab←L100050: ; } static word NoName←Q2556(formal←c0254) word formal←c0254; { SOURCE(7842, 87) (* (( (ptr) formal←c0254)+5) ) = (word) MapTokens←P120((* (( (ptr) (* (ptr) formal←c0254 ))+5) ), (* (( (ptr) formal←c0254)+4) ), (word) (( (bPt) (* (ptr) formal←c0254 ))+32)); return(0); } static void ExecuteRope←P840(frame←v5720, rope←v5748) word frame←v5720; word rope←v5748; { register ptr gf←c18772 = (ptr) &globalframe; word stream←v7388; /* ExecuteRope: */ SOURCE(8213, 114) SOURCE(8268, 29) { word pd69; pd69 = (* (( (ptr) (* (( (ptr) gf←c18772)+42)/* var←c15572 */ ))+33) ); stream←v7388 = (word) ( *( (fPt) ((* (ptr) pd69 ))))(rope←v5748, 0, pd69); }; SOURCE(8299, 28) (void) ExecuteStream←P780(frame←v5720, stream←v7388, 1); } static word LineComplete←P900(rope←v5808) word rope←v5808; { W11 var←c18804; register ptr gf←c18836 = (ptr) &globalframe; word var←c5852; /* declaration of var←c17460 skipped */ /* declaration of var←c17492 skipped */ /* declaration of stream←v7432 skipped */ /* declaration of arrayNest←v7460 skipped */ /* declaration of endOfStream←v7488 skipped */ /* LineComplete: */ SOURCE(8333, 910) { word tmpAddr70; tmpAddr70 = (word) (( (ptr) &var←c18804)+4)/* var←c17460 */ ; (* (ptr) tmpAddr70 ) = ( ((word) (fPt) bufferAction←P1764) ); (* (( (ptr) tmpAddr70) + 1) ) = 1; }; { word tmpAddr71; tmpAddr71 = (word) (( (ptr) &var←c18804)+6)/* var←c17492 */ ; (* (ptr) tmpAddr71 ) = ( ((word) (fPt) tokenAction←P1704) ); (* (( (ptr) tmpAddr71) + 1) ) = 1; }; SOURCE(8389, 29) { word pd72; pd72 = (* (( (ptr) (* (( (ptr) gf←c18836)+42)/* var←c15572 */ ))+33) ); (* (( (ptr) &var←c18804)+8)/* stream←v7432 */ ) = (word) ( *( (fPt) ((* (ptr) pd72 ))))(rope←v5808, 0, pd72); }; SOURCE(8420, 18) (* (( (ptr) &var←c18804)+9)/* arrayNest←v7460 */ ) = 0; SOURCE(8440, 25) (* (( (ptr) &var←c18804)+10)/* endOfStream←v7488 */ ) = 0; SOURCE(9187, 31) (void) DoWithScratchText←P180((word) (( (bPt) &var←c18804)+16)/* var←c17460 */ , 100); SOURCE(9220, 23) return( (unsigned) (0 == (* (( (ptr) &var←c18804)+10)/* endOfStream←v7488 */ ))); } static word tokenAction←P1704(state←v14364, text←v14392, stream←v14420, formal←c18900) word state←v14364; word text←v14392; word stream←v14420; word formal←c18900; { register ptr gf←c18868 = (ptr) &globalframe; word quit←v14464; formal←c18900 = (formal←c18900 - 24); /* tokenAction: */ SOURCE(8467, 361) SOURCE(8467, 361) quit←v14464 = 0; SOURCE(8495, 333) { word var←c17524; var←c17524 = state←v14364; if ((var←c17524 == 12)) { SOURCE(8523, 200) { word var←c17556; { word limit73; var←c17556 = (unsigned) (word) (* ((( (bPt) text←v14392)+4)+( limit73 = (word) (unsigned) (* (( (hPt) text←v14392)+1) ), BCK(0, limit73) )) ); }; switch (var←c17556) { case 40: SOURCE(8549, 27) (void) SkipString←P420(stream←v14420, (word) (( (bPt) gf←c18868)+128)/* var←c15284 */ ); break; case 34: SOURCE(8584, 27) (void) SkipString←P420(stream←v14420, (word) (( (bPt) gf←c18868)+120)/* var←c15252 */ ); break; case 123: SOURCE(8619, 23) (* (( (ptr) formal←c18900)+9) ) = ((* (( (ptr) formal←c18900)+9) ) + 1); break; case 125: SOURCE(8650, 43) if (( (int)(* (( (ptr) formal←c18900)+9) ) > (int)0)) { SOURCE(8670, 23) (* (( (ptr) formal←c18900)+9) ) = ((* (( (ptr) formal←c18900)+9) ) - 1); }; break; case 37: SOURCE(8701, 22) (void) SkipJaMComment←P480(stream←v14420); break; default: break; }; }; } else { if ((var←c17524 == 13)) { SOURCE(8752, 76) { word var←c17588; { word limit74; var←c17588 = (unsigned) (word) (* ((( (bPt) text←v14392)+4)+( limit74 = (word) (unsigned) (* (( (hPt) text←v14392)+1) ), BCK(0, limit74) )) ); }; if ((var←c17588 == 45)) { SOURCE(8778, 50) { word var←c17620; { word limit75; var←c17620 = (unsigned) (word) (* ((( (bPt) text←v14392)+4)+( /*1*/ limit75 = (word) (unsigned) (* (( (hPt) text←v14392)+1) ), /*1*/ BCK(1, limit75) /*1*/ )) ); }; if ((var←c17620 == 45)) { SOURCE(8804, 24) (void) SkipCedarComment←P540(stream←v14420); } else { }; }; } else { }; }; } else { }; }; }; SOURCE(8467, 361) return(quit←v14464); } static void bufferAction←P1764(formal←c0312, formal←c18964) word formal←c0312; word formal←c18964; { W6 var←c18932; /* declaration of buffer←v7620 skipped */ formal←c18964 = (formal←c18964 - 16); var←c18932.f4/* buffer←v7620 */ = formal←c0312; var←c18932.f0 = formal←c18964; /* bufferAction: */ SOURCE(8884, 300) SOURCE(8923, 261) SOURCE(8925, 87) { word var←c17652; { /* declaration of var←c015 skipped */ { word var←c016; { word var←c0275; var←c0275 = (word) &var←c18932; var←c016 = (word) XR←Enable(( ((word) (fPt) NoName←Q2616) ), ( ((word) (fPt) NoName←Q2676) ), var←c0275); }; if ((var←c016 == 9)) { goto lab←L100052; } else { if ((var←c016 == 8)) { goto lab←L100051; }; }; }; var←c17652 = var←c18932.f5/* var←c015 */ ; }; }; SOURCE(9074, 38) if (( (int)(* (( (ptr) formal←c18964)+9) ) > (int)0)) { SOURCE(9094, 18) (* (( (ptr) formal←c18964)+10) ) = 1; }; goto lab←L100055; lab←L100051: ; SOURCE(9139, 18) (* (( (ptr) formal←c18964)+10) ) = 1; goto lab←L100055; lab←L100052: ; lab←L100055: ; } static word NoName←Q2616(formal←c0260) word formal←c0260; { SOURCE(8925, 87) (* (( (ptr) formal←c0260)+5) ) = (word) MapTokens←P120((* (( (ptr) (* (ptr) formal←c0260 ))+8) ), (* (( (ptr) formal←c0260)+4) ), (word) (( (bPt) (* (ptr) formal←c0260 ))+24)); return(0); } static void NoName←Q2676(formal←c0183, formal←c200028, formal←c200029, formal←c200030, formal←c200031) word formal←c0183; word formal←c200028; word formal←c200029; word formal←c200030; word formal←c200031; { register ptr gf←c0261 = (ptr) &globalframe; if ((formal←c200029 == (* (( (ptr) (* (( (ptr) gf←c0261)+42)/* var←c15572 */ ))+4) ))) { { word stream←v14524; stream←v14524 = (* (ptr) formal←c200031 ); SOURCE(9012, 20) (* (ptr) formal←c0183 ) = 2; (* (( (ptr) formal←c0183)+1) ) = 8; return; }; } else { if ((formal←c200029 == (word) (( (bPt) gf←c0261)+36)/* var←c14900 */ )) { SOURCE(9049, 20) (* (ptr) formal←c0183 ) = 2; (* (( (ptr) formal←c0183)+1) ) = 9; return; }; }; (* (ptr) formal←c0183 ) = 0; (* (( (ptr) formal←c0183)+1) ) = 0; return; } static void NoName←Q2736(formal←c0189, formal←c200024, formal←c200025, formal←c200026, formal←c200027) word formal←c0189; word formal←c200024; word formal←c200025; word formal←c200026; word formal←c200027; { register ptr gf←c0262 = (ptr) &globalframe; if ((formal←c200025 == (* (( (ptr) (* (( (ptr) gf←c0262)+42)/* var←c15572 */ ))+4) ))) { { word stream←v14224; stream←v14224 = (* (ptr) formal←c200027 ); SOURCE(7929, 20) (* (ptr) formal←c0189 ) = 2; (* (( (ptr) formal←c0189)+1) ) = 6; return; }; } else { if ((formal←c200025 == (word) (( (bPt) gf←c0262)+36)/* var←c14900 */ )) { SOURCE(7966, 20) (* (ptr) formal←c0189 ) = 2; (* (( (ptr) formal←c0189)+1) ) = 7; return; }; }; (* (ptr) formal←c0189 ) = 0; (* (( (ptr) formal←c0189)+1) ) = 0; return; } static void NoName←Q2796(formal←c0196, formal←c200020, formal←c200021, formal←c200022, formal←c200023) word formal←c0196; word formal←c200020; word formal←c200021; word formal←c200022; word formal←c200023; { register ptr gf←c0263 = (ptr) &globalframe; if ((formal←c200021 == (* (( (ptr) (* (( (ptr) gf←c0263)+45)/* var←c16756 */ ))+7) ))) { { word reason←v13828; word index←v13856; reason←v13828 = (* (ptr) formal←c200023 ); index←v13856 = (* (( (ptr) formal←c200023)+1) ); SOURCE(6617, 24) if ((reason←v13828 == 1)) { SOURCE(6641, 12) (* (ptr) formal←c0196 ) = 2; (* (( (ptr) formal←c0196)+1) ) = 5; return; }; }; }; (* (ptr) formal←c0196 ) = 0; (* (( (ptr) formal←c0196)+1) ) = 0; return; } static void NoName←Q2856(formal←c0202, formal←c200016, formal←c200017, formal←c200018, formal←c200019) word formal←c0202; word formal←c200016; word formal←c200017; word formal←c200018; word formal←c200019; { register ptr gf←c0264 = (ptr) &globalframe; if ((formal←c200017 == (* (( (ptr) (* (( (ptr) gf←c0264)+42)/* var←c15572 */ ))+4) ))) { { word stream←v13684; stream←v13684 = (* (ptr) formal←c200019 ); SOURCE(6061, 5) (* (ptr) formal←c0202 ) = 2; (* (( (ptr) formal←c0202)+1) ) = 4; return; }; }; (* (ptr) formal←c0202 ) = 0; (* (( (ptr) formal←c0202)+1) ) = 0; return; } static void NoName←Q2916(formal←c0208, formal←c200012, formal←c200013, formal←c200014, formal←c200015) word formal←c0208; word formal←c200012; word formal←c200013; word formal←c200014; word formal←c200015; { register ptr gf←c0265 = (ptr) &globalframe; if ((formal←c200013 == (* (( (ptr) (* (( (ptr) gf←c0265)+42)/* var←c15572 */ ))+4) ))) { { word stream←v13624; stream←v13624 = (* (ptr) formal←c200015 ); SOURCE(5872, 5) (* (ptr) formal←c0208 ) = 2; (* (( (ptr) formal←c0208)+1) ) = 3; return; }; }; (* (ptr) formal←c0208 ) = 0; (* (( (ptr) formal←c0208)+1) ) = 0; return; } static void NoName←Q2976(formal←c0213, formal←c200008, formal←c200009, formal←c200010, formal←c200011) word formal←c0213; word formal←c200008; word formal←c200009; word formal←c200010; word formal←c200011; { register ptr gf←c0266 = (ptr) &globalframe; if ((formal←c200009 == XR←Unwind)) { SOURCE(3989, 32) { word pd76; pd76 = (* (( (ptr) (* (( (ptr) gf←c0266)+43)/* var←c16052 */ ))+7) ); (void) ( *( (fPt) ((* (ptr) pd76 ))))((* ((( (ptr) formal←c200008)+5)) ), pd76); }; }; (* (ptr) formal←c0213 ) = 0; (* (( (ptr) formal←c0213)+1) ) = 0; return; } static void NoName←Q3036(formal←c0218, formal←c200004, formal←c200005, formal←c200006, formal←c200007) word formal←c0218; word formal←c200004; word formal←c200005; word formal←c200006; word formal←c200007; { if ((formal←c200005 == XR←Unwind)) { SOURCE(3794, 10) (void) Cleanup←P1008((word) ((( (bPt) formal←c200004)+24))); }; (* (ptr) formal←c0218 ) = 0; (* (( (ptr) formal←c0218)+1) ) = 0; return; } static void NoName←Q3096(formal←c0224, formal←c200000, formal←c200001, formal←c200002, formal←c200003) word formal←c0224; word formal←c200000; word formal←c200001; word formal←c200002; word formal←c200003; { register ptr gf←c0267 = (ptr) &globalframe; if ((formal←c200001 == (* (( (ptr) (* (( (ptr) gf←c0267)+42)/* var←c15572 */ ))+4) ))) { { word stream←v13532; stream←v13532 = (* (ptr) formal←c200003 ); SOURCE(2149, 5) (* (ptr) formal←c0224 ) = 2; (* (( (ptr) formal←c0224)+1) ) = 2; return; }; }; (* (ptr) formal←c0224 ) = 0; (* (( (ptr) formal←c0224)+1) ) = 0; return; } /* file: TJaMScannerImpl, module: TJaMScannerImpl, compiled at: October 19, 1993 1:00:30 pm PDT */ extern void XR←install←TJaMScannerImpl() { NoName←Q2136(); } extern void XR←run←TJaMScannerImpl() { XR←Start(&globalframe); }