Jump to content
Excelsior Forums


  • Content count

  • Joined

  • Last visited


Community Reputation

0 Neutral

About happycat

  • Rank
  • Birthday 01/01/1
  1. happycat

    XDS-C and Fedora 10

    Thanks for the response. I was afraid the EXPORT QUALIFIED was out of the ISO standard but hoped it was in the Topspeed. I know that the ISO Modula-2ers may find the source I'm using as unusual. In case you are interested the source was originally used with the "Scenic" compiler for the "Stride" computer systems in the late 80s. This is a conversion process -- any deferences between that compiler and the ISO compiler is going to represent problems. But, that is part of the process. Thanks again.
  2. happycat

    XDS-C and Fedora 10

    Three issues. XM is released in the standard distribution with a different function. I changed the name of XDS-C xm and sample hello.mod translated OK. Is there anything else I need to change to remove the conflict? Compiler does not accept the "TOPSPEED" option although I unpacked the topspeed distro into /usr/local/xds. I get an error on the EXPORT QUALIFIED statement. Source of last try follows: (* $HASIMPMOD := FALSE; *) <* PUSH *> <*+ VERBOSE *> <*+ M2EXTENSIONS *> <*+ TOPSPEED *> <*+ NOHEADER *> <*+ GENCPP *> <*+ COMMENT *> <*+ M2ADDTYPES *> DEFINITION MODULE ArrayDef; FROM SYSTEM IMPORT ADDRESS; EXPORT QUALIFIED arTypes, arOperands, arOperations, arNext, arCommand; TYPE (* Vector/Matrix variable type are defined to reduce execution time in determining the types of the operands and the result. The letters replacing the periods(.) in the form "ar..." define the types of the first and second operands, and the result. The types defined are: I - INTEGER D - LONGINT R - REAL L - LONGREAL C - COMPLEX Z - LONGCOMPLEX For example: the arType "arILR" specifies that the first operand is an INTEGER, the second is LONGREAL, and the result is REAL. The declaration of an arType may also specify the number of operands. *) arTypes = ( (* singlets *) arI, arD, arR, arL, arC, arZ, (* doubles *) arII, arID, arIR, arIL, arIC, arIZ, arDI, arDD, arDR, arDL, arDC, arDZ, arRI, arRD, arRR, arRL, arRC, arRZ, arLI, arLD, arLR, arLL, arLC, arLZ, arCI, arCD, arCR, arCL, arCC, arCZ, arZI, arZD, arZR, zrZL, arZC, arZZ, (* Triples *) arIII, arIID, arIIR, arIIL, arIIC, arIIZ, arIDI, arIDD, arIDR, arIDL, arIDC, arIDZ, arIRI, arIRD, arIRR, arIRL, arIRC, arIRZ, arILI, arILD, arILR, arILL, arILC, arILZ, arICI, arICD, arICR, arICL, arICC, arICZ, arIZI, arIZD, arIZR, arIZL, arIZC, arIZZ, arDII, arDID, arDIR, arDIL, arDIC, arDIZ, arDDI, arDDD, arDDR, arDDL, arDDC, arDDZ, arDRI, arDRD, arDRR, arDRL, arDRC, arDRZ, arDLI, arDLD, arDLR, arDLL, arDLC, arDLZ, arDCI, arDCD, arDCR, arDCL, arDCC, arDCZ, arDZI, arDZD, arDZR, arDZL, arDZC, arDZZ, arRII, arRID, arRIR, arRIL, arRIC, arRIZ, arRDI, arRDD, arRDR, arRDL, arRDC, arRDZ, arRRI, arRRD, arRRR, arRRL, arRRC, arRRZ, arRLI, arRLD, arRLR, arRLL, arRLC, arRLZ, arRCI, arRCD, arRCR, arRCL, arRCC, arRCZ, arRZI, arRZD, arRZR, arRZL, arRZC, arRZZ, arLII, arLID, arLIR, arLIL, arLIC, arLIZ, arLDI, arLDD, arLDR, arLDL, arLDC, arLDZ, arLRI, arLRD, arLRR, arLRL, arLRC, arLRZ, arLLI, arLLD, arLLR, arLLL, arLLC, arLLZ, arLCI, arLCD, arLCR, arLCL, arLCC, arLCZ, arLZI, arLZD, arLZR, arLZL, arLZC, arLZZ, arCII, arCID, arCIR, arCIL, arCIC, arCIZ, arCDI, arCDD, arCDR, arCDL, arCDC, arCDZ, arCRI, arCRD, arCRR, arCRL, arCRC, arCRZ, arCLI, arCLD, arCLR, arCLL, arCLC, arCLZ, arCCI, arCCD, arCCR, arCCL, arCCC, arCCZ, arCZI, arCZD, arCZR, arCZL, arCZC, arCZZ, arZII, arZID, arZIR, arZIL, arZIC, arZIZ, arZDI, arZDD, arZDR, arZDL, arZDC, arZDZ, arZRI, arZRD, arZRR, arZRL, arZRC, arZRZ, arZLI, arZLD, arZLR, arZLL, arZLC, arZLZ, arZCI, arZCD, arZCR, arZCL, arZCC, arZCZ, arZZI, arZZD, arZZR, arZZL, arZZC, arZZZ ); arOperations = ( arFINIop, arMoveop, arZeroACCop, arADDop, arSUBop, arMULop, arDIVop, arFFTop, arIFFTop, arSQRop, arLNop, arABSop, arNEGop, arEXPop, arTANop, arCOSop, arSINop, arARCSINop, arARCCOSop, arARCTANop, arSUMop, arMMULop, arDOTop, arConvertop ); arOperands = RECORD Operand: ADDRESS; Step, Size: INTEGER; END; arCommand = RECORD Next: ADDRESS; Operation: arOperations; Types: arTypes; Operands: ARRAY[0..2] OF arOperands; END; arNext = POINTER TO arCommand; END ArrayDef. Thanks for you help in advance.