/* *********************************************************** ** 8080/8085 Assembler ** ** ** ** .CRL Output format for BDS CLINK ** *********************************************************** W. Lemiszki 9 Jan 1982 Filename: acrl.c BDS C v1.50 */ #define VER "2.0" /* version number */ #define DEFEXT ".CSM" /* default input file type */ #include "acrl.h" /* * M A I N * ------- */ main(argc,argv) int argc; char **argv; { int i; init(); printf("\n\n8080/8085 .CRL Assembler v%s\n\n", VER); if (argc == 1) fatal("Usage: acrl [-p -o -v]\n"); strcpy(iname, argv[1]); /* source name */ if (index(iname, '.') == NULL) strcat(iname, DEFEXT); /* add extention */ if (fopen(iname, infile) == ERROR) fatal("Can't open %s\n", iname); for (i=2; inext != NULL) funcwalk(id->next); /* (first is at end of list) */ nameout(id->nam); /* name to code buffer */ codew(faddr[id->val]); /* address */ } /* Put function name to code buffer */ nameout(name) char *name; { int i; for (i = strlen(name) - 1; i--; ) code(*name++); code(*name + 0x80); /* set parity bit */ } /*EOF*/