/* Generated with C2C (Cedar To C)*/ /* Copyright (C) 1992 by Xerox Corporation. All rights reserved. */ /* time: October 12, 1992 2:03:26 pm PDT */ /* C2C version: October 16, 1990 (native) */ /* ref-counting: off */ /* file: MesaBasicsImpl, module: MesaBasicsImpl */ /* switches: bcfhklnouw */ #include #include static char versionStamp[] = "@(#)mob_version [2078331943,128915792] MesaBasicsImpl"; typedef unsigned word, *ptr; typedef unsigned char byte, *bPt; typedef unsigned short half, *hPt; #define SOURCE(p, l) /* source p, l */ #define SGNCK(i) ((int) (word) (i) < 0 ? XR_RaiseArithmeticFault(): i ) static void NoName_Q840(); static void MesaBasicsImpl_P0(); extern void XR_MoveWords(); extern void XR_MoveWordsDisjoint(); extern word XR_EqualWords(); extern void XR_MoveBytes(); extern void XR_MoveBytesDisjoint(); extern word XR_ExtractField(); extern void XR_DepositField(); extern void XR_MoveField(); extern word XR_EqualFields(); extern void XR_FillFields(); extern void XR_FillLongFields(); extern void XR_FillWords(); extern void XR_FillLongWords(); static struct {unsigned f; char r[16];} string1 = {851984, "\257\300\173\340\324\047\300\007\257\031\120\100\164\000\000"}; static struct {unsigned f; char r[16];} string2 = {851984, "\257\300\341\052\141\002\300\145\275\236\330\100\150\000\000"}; static struct { word f0[4]; word f4; word f5; word f6; word f7; word f8; word f9; 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[2]; } globalframe = { {0}, (word) XR_FillLongWords, 0, (word) XR_FillWords, 0, (word) XR_FillLongFields, 0, (word) XR_FillFields, 0, (word) XR_EqualFields, 0, (word) XR_MoveField, 0, (word) XR_DepositField, 0, (word) XR_ExtractField, 0, (word) XR_MoveBytesDisjoint, 0, (word) XR_MoveBytes, 0, (word) XR_EqualWords, 0, (word) XR_MoveWordsDisjoint, 0, (word) XR_MoveWords, 0, (word) MesaBasicsImpl_P0, {0} }; static void NoName_Q840() { register ptr gf_c082 = (ptr) &globalframe; word var_c7996; (void) XR_DeclareGlobalFrame((word) "MesaBasicsImpl", &globalframe, (word) XR_GetTypeIndexS((word) (&string1)), (word) (( (bPt) gf_c082)+120) /* var_c7900 */ ); var_c7996 = (word) XR_ExportInterface((word) "MesaBasics", (word) XR_GetTypeIndexS((word) (&string2)), 13); (* (( (ptr) gf_c082)+32)/* var_c7964 */ ) = var_c7996; (void) XR_ExportProcS(var_c7996, (word) (( (bPt) gf_c082)+112)/* var_c7868 */ , 786435); (void) XR_ExportProcS(var_c7996, (word) (( (bPt) gf_c082)+104)/* var_c7836 */ , 786691); (void) XR_ExportProcS(var_c7996, (word) (( (bPt) gf_c082)+96)/* var_c7804 */ , 67895811); (void) XR_ExportProcS(var_c7996, (word) (( (bPt) gf_c082)+88)/* var_c7772 */ , 787203); (void) XR_ExportProcS(var_c7996, (word) (( (bPt) gf_c082)+80)/* var_c7740 */ , 787459); (void) XR_ExportProcS(var_c7996, (word) (( (bPt) gf_c082)+72)/* var_c7708 */ , 67896579); (void) XR_ExportProcS(var_c7996, (word) (( (bPt) gf_c082)+64)/* var_c7676 */ , 1050116); (void) XR_ExportProcS(var_c7996, (word) (( (bPt) gf_c082)+56)/* var_c7644 */ , 1312517); (void) XR_ExportProcS(var_c7996, (word) (( (bPt) gf_c082)+48)/* var_c7612 */ , 68421637); (void) XR_ExportProcS(var_c7996, (word) (( (bPt) gf_c082)+40)/* var_c7580 */ , 1313029); (void) XR_ExportProcS(var_c7996, (word) (( (bPt) gf_c082)+32)/* var_c7548 */ , 1575430); (void) XR_ExportProcS(var_c7996, (word) (( (bPt) gf_c082)+24)/* var_c7516 */ , 789251); (void) XR_ExportProcS(var_c7996, (word) (( (bPt) gf_c082)+16)/* var_c7484 */ , 1051652); } static void MesaBasicsImpl_P0(formal_c018, formal_c017) word formal_c018; word formal_c017; { /* MesaBasicsImpl: */ } extern void XR_MoveWords(dst_v3040, src_v3068, len_v3096) word dst_v3040; word src_v3068; word len_v3096; { /* MoveWords: */ SOURCE(768, 130) SOURCE(830, 68) (void) Basics_MoveWords(dst_v3040, src_v3068, len_v3096); } extern void XR_MoveWordsDisjoint(dst_v3156, src_v3184, len_v3212) word dst_v3156; word src_v3184; word len_v3212; { /* MoveWordsDisjoint: */ SOURCE(903, 277) SOURCE(974, 206) if ((((dst_v3156 & 3) + (src_v3184 & 3)) == 0)) { SOURCE(1042, 68) (void) Basics_CopyWords(dst_v3156, src_v3184, len_v3212); } else { SOURCE(1121, 59) (void) XR_MoveBytes(dst_v3156, src_v3184, (len_v3212 << 2)); }; } extern word XR_EqualWords(src1_v3272, src2_v3300, len_v3328) word src1_v3272; word src2_v3300; word len_v3328; { word var_c3372; word c_v4956; /* EqualWords: */ SOURCE(1187, 239) SOURCE(1266, 136) c_v4956 = (word) Basics_CompareBits(src1_v3272, 0, src2_v3300, 0, (len_v3328 << 5)); SOURCE(1404, 22) return((c_v4956 == 1)); } extern void XR_MoveBytes(dest_v3432, src_v3460, len_v3488) word dest_v3432; word src_v3460; word len_v3488; { word dstStart_v5028; word srcStart_v5056; word destWP_v5084; word srcWP_v5112; /* MoveBytes: */ SOURCE(1430, 415) SOURCE(1522, 53) dstStart_v5028 = (dest_v3432 & 3); SOURCE(1577, 52) srcStart_v5056 = (src_v3460 & 3); SOURCE(1631, 44) destWP_v5084 = (dest_v3432 - dstStart_v5028); SOURCE(1677, 42) srcWP_v5112 = (src_v3460 - srcStart_v5056); SOURCE(1721, 124) (void) Basics_MoveBytes(destWP_v5084, dstStart_v5028, srcWP_v5112, srcStart_v5056, len_v3488); } extern void XR_MoveBytesDisjoint(dest_v3548, src_v3576, len_v3604) word dest_v3548; word src_v3576; word len_v3604; { word dstStart_v5204; word srcStart_v5232; word destWP_v5260; word srcWP_v5288; /* MoveBytesDisjoint: */ SOURCE(1849, 422) SOURCE(1949, 53) dstStart_v5204 = (dest_v3548 & 3); SOURCE(2004, 52) srcStart_v5232 = (src_v3576 & 3); SOURCE(2058, 44) destWP_v5260 = (dest_v3548 - dstStart_v5204); SOURCE(2104, 42) srcWP_v5288 = (src_v3576 - srcStart_v5232); SOURCE(2148, 123) (void) Basics_CopyBytes(destWP_v5260, dstStart_v5204, srcWP_v5288, srcStart_v5232, len_v3604); } extern word XR_ExtractField(base_v3664, offset_v3692, bits_v3720) word base_v3664; word offset_v3692; word bits_v3720; { word var_c3764; word w_v5352 = 0; /* ExtractField: */ SOURCE(2277, 318) SOURCE(2376, 74) lab_L100002: ; if (( (int)offset_v3692 < (int)0)) { } else { goto lab_L100000; }; SOURCE(2396, 28) offset_v3692 = (offset_v3692 + 32); SOURCE(2426, 24) base_v3664 = (base_v3664 - 4); goto lab_L100002; lab_L100000: ; SOURCE(2461, 123) (void) Basics_CopyBits((word) &w_v5352, (32 - bits_v3720), base_v3664, SGNCK(offset_v3692), bits_v3720); SOURCE(2586, 9) return(w_v5352); } extern void XR_DepositField(base_v3824, offset_v3852, bits_v3880, w_v3908) word base_v3824; word offset_v3852; word bits_v3880; word w_v3908; { /* DepositField: */ SOURCE(2601, 287) SOURCE(2680, 74) lab_L100005: ; if (( (int)offset_v3852 < (int)0)) { } else { goto lab_L100003; }; SOURCE(2700, 28) offset_v3852 = (offset_v3852 + 32); SOURCE(2730, 24) base_v3824 = (base_v3824 - 4); goto lab_L100005; lab_L100003: ; SOURCE(2765, 123) (void) Basics_CopyBits(base_v3824, SGNCK(offset_v3852), (word) &w_v3908, (32 - bits_v3880), bits_v3880); } extern void XR_MoveField(dst_v3968, dstOffset_v3996, src_v4024, srcOffset_v4052, bits_v4080) word dst_v3968; word dstOffset_v3996; word src_v4024; word srcOffset_v4052; word bits_v4080; { /* MoveField: */ SOURCE(2894, 404) SOURCE(2994, 81) lab_L100008: ; if (( (int)dstOffset_v3996 < (int)0)) { } else { goto lab_L100006; }; SOURCE(3017, 34) dstOffset_v3996 = (dstOffset_v3996 + 32); SOURCE(3053, 22) dst_v3968 = (dst_v3968 - 4); goto lab_L100008; lab_L100006: ; SOURCE(3086, 81) lab_L100011: ; if (( (int)srcOffset_v4052 < (int)0)) { } else { goto lab_L100009; }; SOURCE(3109, 34) srcOffset_v4052 = (srcOffset_v4052 + 32); SOURCE(3145, 22) src_v4024 = (src_v4024 - 4); goto lab_L100011; lab_L100009: ; SOURCE(3178, 120) (void) Basics_CopyBits(dst_v3968, SGNCK(dstOffset_v3996), src_v4024, SGNCK(srcOffset_v4052), bits_v4080); } extern word XR_EqualFields(x_v4140, xOffset_v4168, y_v4196, yOffset_v4224, bits_v4252) word x_v4140; word xOffset_v4168; word y_v4196; word yOffset_v4224; word bits_v4252; { word var_c4296; /* EqualFields: */ SOURCE(3304, 360) SOURCE(3411, 71) lab_L100014: ; if (( (int)xOffset_v4168 < (int)0)) { } else { goto lab_L100012; }; SOURCE(3432, 30) xOffset_v4168 = (xOffset_v4168 + 32); SOURCE(3464, 18) x_v4140 = (x_v4140 - 4); goto lab_L100014; lab_L100012: ; SOURCE(3493, 71) lab_L100017: ; if (( (int)yOffset_v4224 < (int)0)) { } else { goto lab_L100015; }; SOURCE(3514, 30) yOffset_v4224 = (yOffset_v4224 + 32); SOURCE(3546, 18) y_v4196 = (y_v4196 - 4); goto lab_L100017; lab_L100015: ; SOURCE(3575, 89) return(((word) Basics_CompareBits(x_v4140, SGNCK(xOffset_v4168), y_v4196, SGNCK(yOffset_v4224), bits_v4252) == 1)); } extern void XR_FillFields(dst_v4356, dstOffset_v4384, bits_v4412, times_v4440, value_v4468) word dst_v4356; word dstOffset_v4384; word bits_v4412; word times_v4440; word value_v4468; { /* FillFields: */ SOURCE(3668, 178) SOURCE(3765, 81) (void) XR_FillLongFields(dst_v4356, dstOffset_v4384, (word) &value_v4468, (32 - bits_v4412), bits_v4412, times_v4440); } extern void XR_FillLongFields(dst_v4528, dstOffset_v4556, src_v4584, srcOffset_v4612, bits_v4640, times_v4668) word dst_v4528; word dstOffset_v4556; word src_v4584; word srcOffset_v4612; word bits_v4640; word times_v4668; { /* FillLongFields: */ SOURCE(3852, 490) SOURCE(3970, 81) lab_L100020: ; if (( (int)dstOffset_v4556 < (int)0)) { } else { goto lab_L100018; }; SOURCE(3993, 34) dstOffset_v4556 = (dstOffset_v4556 + 32); SOURCE(4029, 22) dst_v4528 = (dst_v4528 - 4); goto lab_L100020; lab_L100018: ; SOURCE(4062, 81) lab_L100023: ; if (( (int)srcOffset_v4612 < (int)0)) { } else { goto lab_L100021; }; SOURCE(4085, 34) srcOffset_v4612 = (srcOffset_v4612 + 32); SOURCE(4121, 22) src_v4584 = (src_v4584 - 4); goto lab_L100023; lab_L100021: ; SOURCE(4154, 188) lab_L100026: ; if ((times_v4668 > 0)) { } else { goto lab_L100024; }; SOURCE(4173, 120) (void) Basics_CopyBits(dst_v4528, SGNCK(dstOffset_v4556), src_v4584, SGNCK(srcOffset_v4612), bits_v4640); SOURCE(4295, 28) dstOffset_v4556 = (dstOffset_v4556 + bits_v4640); SOURCE(4325, 17) times_v4668 = (times_v4668 - 1); goto lab_L100026; lab_L100024: ; } extern void XR_FillWords(dst_v4728, times_v4756, value_v4784) word dst_v4728; word times_v4756; word value_v4784; { /* FillWords: */ SOURCE(4357, 287) SOURCE(4424, 220) if (((dst_v4728 & 3) != 0)) { SOURCE(4464, 96) lab_L100029: ; if ((times_v4756 > 0)) { } else { goto lab_L100027; }; SOURCE(4484, 40) (void) XR_MoveWords(dst_v4728, (word) &value_v4784, 1); SOURCE(4526, 15) dst_v4728 = (dst_v4728 + 4); SOURCE(4543, 17) times_v4756 = (times_v4756 - 1); goto lab_L100029; lab_L100027: ; } else { SOURCE(4580, 64) (void) Basics_FillWords(dst_v4728, times_v4756, value_v4784); }; } extern void XR_FillLongWords(dst_v4844, src_v4872, nWords_v4900, times_v4928) word dst_v4844; word src_v4872; word nWords_v4900; word times_v4928; { /* FillLongWords: */ SOURCE(4653, 222) SOURCE(4724, 151) if ((nWords_v4900 == 1)) { SOURCE(4745, 35) (void) XR_FillWords(dst_v4844, times_v4928, (* (ptr) src_v4872 )); } else { SOURCE(4780, 95) lab_L100032: ; if ((times_v4928 > 0)) { } else { goto lab_L100030; }; SOURCE(4800, 32) (void) XR_MoveWords(dst_v4844, src_v4872, nWords_v4900); SOURCE(4834, 22) dst_v4844 = (dst_v4844 + (nWords_v4900 << 2)); SOURCE(4858, 17) times_v4928 = (times_v4928 - 1); goto lab_L100032; lab_L100030: ; }; } /* file: MesaBasicsImpl, module: MesaBasicsImpl, compiled at: October 12, 1992 2:03:24 pm PDT */ extern void XR_install_MesaBasicsImpl() { NoName_Q840(); } extern void XR_run_MesaBasicsImpl() { XR_Start(&globalframe); }