if (!options.c1mode)
{
- sprintf (scratchFileName, srcFileName);
+ /* -o option overrides default name? */
+ if (noAssemble && fullDstFileName)
+ {
+ strcpy (scratchFileName, fullDstFileName);
+ }
+ else
+ {
+ strcpy (scratchFileName, dstFileName);
strcat (scratchFileName, port->assembler.file_ext);
+ }
}
else
{
}
/* initialise the stack pointer. JCF: aslink takes care of the location */
- fprintf (asmFile, "\tmov\tsp,#__start__stack\n"); /* MOF */
+ fprintf (asmFile, "\tmov\tsp,#__start__stack - 1\n"); /* MOF */
fprintf (asmFile, "\tlcall\t__sdcc_external_startup\n");
fprintf (asmFile, "\tmov\ta,dpl\n");