I attached the full source and my converted bitmap. My last hope is that
one of you will see what I'm doing wrong here...
What size is the binary you are getting? I'm asking because the source
code you posted starts with an "ORG $4F00" which would not result in
a proper 48K file. I'm not sure how gracefully the emulator or a78sign
would handle such a binary, but you also set the 7800 status bytes at
the end of the ROM in such a way that the signature key would be created
for the full ROM from $4000-$FF7F. Therefore some random data would be
inluded in the calculation, and the 7800 BIOS probably won't let your
ROM pass the singnature key check. Maybe setting the first ORG to $4000
would fix your problem?