Hi Hugh,
>> I believe what he's trying to do is patch the binary included with
>> PUTBIN with the assembler itself.
> Exactly! Thanks for boiling that down to one succinct sentence for me.
The ld65 linker supports 'overwrite' segments for that very purpose.
https://cc65.github.io/doc/ld65.html#ss5.4 says:
Perhaps you are modifying an OS ROM that has its public subroutines at
fixed, well-known addresses, and you want to prevent them from shifting to
other locations in memory if your changed code takes less space. Or you are
updating a block of code available in binary-only form with fixes that are
scattered in various places. Generally, whenever you want to minimize
disturbance to an existing code brought on by your updates, OVERWRITE
segments are worth considering.
Regards,
Oliver