/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1992 by Xerox Corporation. All rights reserved. */ /* time: February 22, 1992 0:02:58 am PST */ /* C2C version: October 16, 1990 (native) */ /* ref-counting: off */ /* file: ChecksumImpl, module: ChecksumImpl */ /* switches: bcfhklnouw */ #include <cedar/InstallationSupport.h> #include <cedar/CedarExtra.h> static char versionStamp[] = "@(#)mob←version [1147330776,1533280433] ChecksumImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; #define SOURCE(p, l) /* source p, l */ static void NoName←Q216(); static void ChecksumImpl←P0(); static word ComputeChecksum←P60(); static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\104\142\340\330\300\133\144\000\261\100\150\000\000"}; static struct {unsigned f; char r[16];} string2 = {851984, "\257\300\122\171\164\025\300\243\020\252\320\100\164\000\000"}; static struct { word f0[4]; word f4; word f5; word f6; word f7[2]; } globalframe = { {0}, (word) ComputeChecksum←P60, 0, (word) ChecksumImpl←P0, {0} }; static void NoName←Q216() { register ptr gf←c016 = (ptr) &globalframe; word var←c4052; (void) XR←DeclareGlobalFrame((word) "ChecksumImpl", &globalframe, (word) XR←GetTypeIndexS((word) (&string1)), (word) (( (bPt) gf←c016)+24) /* var←c3924 */ ); var←c4052 = (word) XR←ExportInterface((word) "Checksum", (word) XR←GetTypeIndexS((word) (&string2)), 3); (* (( (ptr) gf←c016)+8)/* var←c4020 */ ) = var←c4052; (void) XR←ExportProcS(var←c4052, (word) (( (bPt) gf←c016)+16)/* var←c3892 */ , 68157444); } static void ChecksumImpl←P0(formal←c06, formal←c05) word formal←c06; word formal←c05; { /* ChecksumImpl: */ } static word ComputeChecksum←P60(cs←v2516, nHalfWords←v2544, p←v2572, offset←v2600) word cs←v2516; word nHalfWords←v2544; word p←v2572; word offset←v2600; { word checksum←v2656; word phw←v2712; /* ComputeChecksum: */ SOURCE(118, 462) SOURCE(336, 42) phw←v2712 = p←v2572; SOURCE(380, 145) { register word i←v2860; register word noName←c3956; i←v2860 = offset←v2600; noName←c3956 = (nHalfWords←v2544 + offset←v2600); if ((i←v2860 >= noName←c3956)) { goto lab←L100000; }; lab←L100003: ; { word t←v2904; SOURCE(430, 40) t←v2904 = (cs←v2516 + (word) (* (( (hPt) phw←v2712)+i←v2860) )); SOURCE(472, 22) t←v2904 = ((( (((unsigned)t←v2904 << 16) >> 16) ) + ((unsigned)t←v2904 >> 16)) << 1); SOURCE(496, 18) t←v2904 = (( (((unsigned)t←v2904 << 16) >> 16) ) + ((unsigned)t←v2904 >> 16)); SOURCE(516, 9) cs←v2516 = ( (((unsigned)t←v2904 << 16) >> 16) ); }; i←v2860 = (i←v2860 + 1); if ((i←v2860 < noName←c3956)) { goto lab←L100003; }; lab←L100000: ; }; SOURCE(536, 31) if ((cs←v2516 == 65535)) { SOURCE(561, 6) cs←v2516 = 0; }; SOURCE(569, 11) return(cs←v2516); } /* file: ChecksumImpl, module: ChecksumImpl, compiled at: February 22, 1992 0:02:58 am PST */ extern void XR←install←ChecksumImpl() { NoName←Q216(); } extern void XR←run←ChecksumImpl() { XR←Start(&globalframe); }