diff options
Diffstat (limited to 'lib/compilers/z88dk.ts')
-rw-r--r-- | lib/compilers/z88dk.ts | 26 |
1 files changed, 13 insertions, 13 deletions
diff --git a/lib/compilers/z88dk.ts b/lib/compilers/z88dk.ts index c7b0b7ecf..b5d73dd1a 100644 --- a/lib/compilers/z88dk.ts +++ b/lib/compilers/z88dk.ts @@ -83,10 +83,10 @@ export class z88dkCompiler extends BaseCompiler { } protected override optionsForFilter(filters: ParseFiltersAndOutputOptions, outputFilename: string): string[] { - if (!filters.binary) { - return ['-S']; - } else { + if (filters.binary) { return ['-o', outputFilename + '.s', '-create-app']; + } else { + return ['-S']; } } @@ -121,15 +121,15 @@ export class z88dkCompiler extends BaseCompiler { outputFilename = this.getObjdumpOutputFilename(outputFilename); // sometimes (with +z80 for example) the .bin file is written and the .s file is empty - if (!(await utils.fileExists(outputFilename + '.bin'))) { - if (!(await utils.fileExists(outputFilename + '.s'))) { + if (await utils.fileExists(outputFilename + '.bin')) { + outputFilename += '.bin'; + } else { + if (await utils.fileExists(outputFilename + '.s')) { + outputFilename += '.s'; + } else { result.asm = '<No output file ' + outputFilename + '.s>'; return result; - } else { - outputFilename += '.s'; } - } else { - outputFilename += '.bin'; } const args = [outputFilename]; @@ -149,12 +149,12 @@ export class z88dkCompiler extends BaseCompiler { }; const objResult = await this.exec(this.compiler.objdumper, args, execOptions); - if (objResult.code !== 0) { - logger.error(`Error executing objdump ${this.compiler.objdumper}`, objResult); - result.asm = `<No output: objdump returned ${objResult.code}>`; - } else { + if (objResult.code === 0) { result.objdumpTime = objResult.execTime; result.asm = this.postProcessObjdumpOutput(objResult.stdout); + } else { + logger.error(`Error executing objdump ${this.compiler.objdumper}`, objResult); + result.asm = `<No output: objdump returned ${objResult.code}>`; } } |