|
|
DataMuseum.dkPresents historical artifacts from the history of: Commodore CBM-900 |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about Commodore CBM-900 Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 1215 (0x4bf)
Types: TextFile
Notes: UNIX file
Names: »message.c«
└─⟦f27320a65⟧ Bits:30001972 Commodore 900 hard disk image with partial source code
└─⟦f4b8d8c84⟧ UNIX Filesystem
└─⟦this⟧ »cmd/ld/message.c«
/*
* ▶10◀Print messages of various origins
*/
void
message(args)
char *args;
{
printf("Ld: %r\n", &args);
}
/*
* Fatal error; print message and exit
*/
void
fatal(args)
char *args;
{
fprintf(stderr, "Ld: %r\n", &args);
exit(1);
}
/*
* message plus command prototype
*/
void
usage(args)
char *args;
{
fatal("%r\n\
Usage: ld [-d] [-e entry] [-k[sysnam]] [-i] [-l<name>] [-m] [-n] [-o file]\\\n\
\t[-R relocbase] [-L] [-r] [-s] [-u symbol] [-X|x] file ...",
&args);
}
/*
* message with filename
*/
void
filemsg(fname, args)
char *fname, *args;
{
message("file %s: %r", fname, &args);
}
/*
* Message with module and file name
*/
void
modmsg(fname, mname, args)
char *fname, mname[DIRSIZ], *args;
{
if (mname[0]==0)
filemsg(fname, "%r", &args);
else
filemsg(fname, "module %.*s: %r",
DIRSIZ, mname, &args);
}
/*
* Message for module passed by pointer
*/
void
mpmsg(mp, args)
mod_t *mp;
char *args;
{
modmsg(mp->fname, mp->mname, "%r", &args);
}
/*
* Message for symbol passed by pointer
*/
void
spmsg(sp, args)
sym_t *sp;
char *args;
{
if (sp->mod==NULL)
message("symbol %.*s: %r", NCPLN, sp->s.ls_id, &args);
else
mpmsg(sp->mod, "symbol %.*s: %r", NCPLN, sp->s.ls_id, &args);
}