Description
The bug appears when build spectrum next "nex" type programs that aggressively use bankswitching. The nex creator in appmake locates all the bin files for memory banks as output by z80asm and creates an internal map. Bank X contains bytes from file A, etc.
With the --clean option provided, appmake adds the binary file contents to the output nex file and then deletes the binary file so that after completion, the user can see if any binaries did not make it into the output. Sometimes this is an error and sometimes this is deliberate.
One instance has been shown to me that results in appmake being unable to locate a binary file. Without the --clean option, the binary file is there and the build completes successfully.
What I believe is happening is that appmake has multiple references to the same file for different banks (a portion of the file may be used in each bank) and it is deleting the file after the first reference is used. The second reference can't find the file.