break;
case 'F':
// Source file name.
- pInto = _appendAt (pInto, newFormat, srcFileName);
+ pInto = _appendAt (pInto, newFormat, fullSrcFileName);
sz++;
break;
case 'N':
static FILE *inFile=NULL;
static char inLineString[1024];
static int inLineNo=0;
+static char lastSrcFile[PATH_MAX];
int rewinds=0;
char *printCLine (char *srcFile, int lineno) {
char *ilsP=inLineString;
+
+ if (inFile) {
+ if (strcmp (lastSrcFile, srcFile) != 0) {
+ fclose (inFile);
+ inFile = NULL;
+ inLineNo = 0;
+ }
+ }
if (!inFile) {
inFile=fopen(srcFile, "r");
if (!inFile) {
perror ("printCLine");
exit (1);
}
+ strcpy (lastSrcFile, srcFile);
}
if (lineno<inLineNo) {
fseek (inFile, 0, SEEK_SET);
{"dbs", ".db \"%s\""},
{"dw", ".dw"},
{"dws", ".dw %s"},
- {"constbyte", "0%02xh"},
- {"constword", "0%04xh"},
- {"immedword", "#0%04Xh"},
- {"immedbyte", "#0%02Xh"},
+ {"constbyte", "0x%02x"},
+ {"constword", "0x%04x"},
+ {"immedword", "0x%04x"},
+ {"immedbyte", "0x%02x"},
{"hashedstr", "#%s"},
{"lsbimmeds", "#<%s"},
{"msbimmeds", "#>%s"},
- {"module", ".module %s"},
+ {"module", "; .module %s"},
{"global", ".globl %s"},
{"fileprelude", ""},
{"functionheader",