|
|
1.1 ! root 1: .TH DMDCC 1 "630 MTG" ! 2: .SH NAME ! 3: dmdcc \- 630 MTG C compiler ! 4: .SH SYNOPSIS ! 5: \f3dmdcc [\f1 options \f3]\f1 file ... ! 6: .SH DESCRIPTION ! 7: The ! 8: .I dmdcc ! 9: command is the 630 MTG C compiler. Any software to be downloaded ! 10: into the 630 MTG must be compiled using this command. ! 11: .PP ! 12: \fIDmdcc\fR works in a similar manner to ! 13: other compiler (cc) commands but is enhanced to call ! 14: \fImc68cpp\fR and \fImc68ld\fR ! 15: with special arguments for the 630 MTG development environment. ! 16: In particular, ! 17: the \fIdmdcc\fR command defines the variable \fBDMD630\fR, ! 18: it sets the include search path ! 19: to $DMD/include, it sets the library search path to $DMD/lib, ! 20: it includes the standard 630 MTG libraries, it links in the 630 ! 21: MTG C ! 22: run-time start-up routine crtm.o, and it tells \fImc68ld\fR ! 23: to retain relocation information so the ! 24: resulting executable file can be relocated before download into the ! 25: 630 MTG. ! 26: .PP ! 27: The exact arguments passed to \fImc68cpp\fR and \fImc68ld\fR ! 28: can be viewed by including the \fI-#\fR debugging argument on the ! 29: \fIdmdcc\fR command line. ! 30: .PP ! 31: The ! 32: \fIdmdcc\fR utility ! 33: accepts three types of arguments: ! 34: .RS 8 ! 35: .B .c ! 36: .br ! 37: .B .s ! 38: .br ! 39: .B .o ! 40: .RE ! 41: .PP ! 42: Arguments whose names end with ! 43: .B .c ! 44: are the C source programs, and those with ! 45: .B .s ! 46: are the assembly programs. ! 47: They are compiled/assembled, and ! 48: each object program ! 49: whose name is that of the source with ! 50: .B .o ! 51: substituted ! 52: .RB "for " .c " or " .s ! 53: is left in the file. ! 54: The ! 55: .B .o ! 56: file is normally deleted if a single ! 57: C program is compiled and link-edited all at one time. ! 58: .PP ! 59: The following flags are interpreted by ! 60: .I dmdcc\c ! 61: \&. ! 62: See ! 63: .IR mc68cpp (1), ! 64: .IR mc68as (1) ! 65: and ! 66: .IR mc68ld (1) ! 67: for other useful flags. ! 68: .PP ! 69: .TP 6 ! 70: \fB\-c\fR ! 71: Suppress the link-editing phase of the compilation, and force ! 72: an object file to be produced even if only one program is compiled. ! 73: .PP ! 74: .TP 6 ! 75: \fB\-g\fR ! 76: Flag to the compiler to produce additional information needed for the ! 77: use of ! 78: .IR dmdpi (1). ! 79: \} ! 80: .PP ! 81: .TP 6 ! 82: \fB\-O\fR ! 83: Invoke an object-code optimizer. ! 84: The optimizer will move, merge, and delete code; this option should not be ! 85: used if it is expected that compiled code may be debugged with \fIdmdpi\fR(1). ! 86: .PP ! 87: .TP 6 ! 88: \fB\-W\fIc\fB,\fRarg1[\fB,\fRarg2...] ! 89: Hand off the argument[s] ! 90: to pass ! 91: .I c ! 92: where ! 93: .I c ! 94: is one of ! 95: .RB [ p02al ] ! 96: indicating preprocessor, ! 97: compiler, ! 98: optimizer, ! 99: assembler, ! 100: or link editor, respectively. For example: ! 101: .RS 6 ! 102: .ce ! 103: .B \-Wa,\-m ! 104: .br ! 105: invokes the \f2m4\f1 macro preprocessor on the input to the assembler. ! 106: .RE ! 107: .PP ! 108: .TP 6 ! 109: \fB\-S\fR ! 110: Compile the named C programs, and leave the ! 111: assembler-language output on corresponding files suffixed ! 112: .BR .s . ! 113: .PP ! 114: .TP 6 ! 115: \fB\-P\fR ! 116: Run only the macro preprocessor ! 117: on the named C programs, and leave the output on corresponding ! 118: files suffixed ! 119: .BR .i . ! 120: .TP 6 ! 121: \fB\-E\fR ! 122: Same as the ! 123: .B \-P ! 124: option except the output is directed to the standard output. ! 125: This allows the preprocessor to be used as a filter for ! 126: any other compiler. ! 127: .PP ! 128: .TP 6 ! 129: \fB\-#\fR ! 130: Debug flag. Show the command lines passed to \fImc68cpp\fR, ! 131: \fImc68ccom\fR, \fImc68as\fR and \fImc68ld\fR. ! 132: .PP ! 133: .TP 6 ! 134: \fB\-x\fR ! 135: Turn off special processing for the 630 MTG environment. This argument should ! 136: not be used when compiling programs to be downloaded into the 630 ! 137: MTG. ! 138: .PP ! 139: .TP 6 ! 140: \f3\-Z\f1 \f2n\f1 ! 141: Allocate \f2n\f1 bytes of stack for process. If not specified the ! 142: default is 2048, Note that stack size can be overridden at ! 143: download time with the \f2dmdld -Z\f1 option. If \f2n\f1 is ! 144: specified smaller than 2048, it is defaulted to 2048. ! 145: .PP ! 146: .DT ! 147: .br ! 148: .DT ! 149: .PP ! 150: Other arguments ! 151: are taken ! 152: to be either C preprocessor or link-editor flag arguments, or C-compatible ! 153: object programs, typically produced by an earlier ! 154: .I dmdcc ! 155: run, ! 156: or perhaps libraries of C-compatible routines. ! 157: These programs, together with the results of any ! 158: compilations specified, are link-edited (in the order ! 159: given) to produce an executable program with name ! 160: .B dmda.out ! 161: unless the ! 162: .B \-o ! 163: option of the link-editor is used. ! 164: .PP ! 165: The ! 166: .I dmdcc ! 167: command expects the \fBDMD\fR shell variable to be set and exported in ! 168: the user's environment. ! 169: This variable must point to the "root" directory of the 630 MTG software ! 170: node. ! 171: .PP ! 172: \fIDmdcc\fR tags the downloadable ouput file with a ! 173: programming envirionment identification number (PEID) which is ! 174: used by \fIdmdld\fR prior to download to verify copatibility ! 175: with terminal firmware. The PEID is determined by \fIdmdcc\fR ! 176: from the firmware routine linkages included in the process. ! 177: Every firmware routine called by the process causes a linkage ! 178: to the routine to be retrieved from archive and included in ! 179: the load module. Each of these linkage routines is tagged with ! 180: a PEID related to the firmware version that supports the ! 181: called firmware routine. The PEID associated with the latest ! 182: level of firmware required to support those linkages retrieved ! 183: from archive is tagged to the load module. Compatibility with ! 184: earlier firmware releases is maintained as long as new ! 185: firmware functions not supported by older firmware are not used ! 186: in the program. ! 187: .SH FILES ! 188: .PD 0 ! 189: .TP 22 ! 190: file.c ! 191: input file ! 192: .TP 22 ! 193: file.o ! 194: object file ! 195: .TP 22 ! 196: file.s ! 197: assembly language file ! 198: .TP 22 ! 199: dmda.out ! 200: link-edited output ! 201: .TP 22 ! 202: /usr/tmp/mc68? ! 203: temporary file ! 204: .TP 22 ! 205: $DMD/lib/mc68cpp ! 206: preprocessor ! 207: .TP 22 ! 208: $DMD/lib/mc68ccom ! 209: compiler ! 210: .TP 22 ! 211: $DMD/lib/mc68optim ! 212: optimizer ! 213: .TP 22 ! 214: $DMD/bin/mc68as ! 215: assembler ! 216: .TP 22 ! 217: $DMD/bin/mc68ld ! 218: link loader ! 219: .DT ! 220: .PD ! 221: .br ! 222: .SH SEE ALSO ! 223: dmdpi(1), ! 224: mc68as(1), ! 225: mc68cpp(1), ! 226: mc68ld(1). ! 227: .br ! 228: m4(1) in the ! 229: \f2UNIX System V Programmer's Reference Manual\f1. ! 230: .br ! 231: .sp ! 232: .IR "The C Programming Language", ! 233: by Kernighan, B. W., and Ritchie, D. M., ! 234: Prentice-Hall, 1978. ! 235: .br ! 236: .I Programming in C\-A Tutorial ! 237: by Kernighan, B. W. ! 238: .br ! 239: .I C Reference Manual ! 240: by Ritchie, D. M. ! 241: .br ! 242: .br ! 243: .SH DIAGNOSTICS ! 244: The diagnostics produced by the C compiler are sometimes ! 245: cryptic. ! 246: Occasional messages may be produced by the assembler ! 247: or link-editor.
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.