p2asm bug?
Peter Jakacki
Posts: 10,193
in Propeller 2
I've been making changes to the structure of TAQOZ prior to handling it as a compressed binary image for ROM. The idea is that I can use the same larger version I use for stand-alone testing independent of the ROM and the only code I need to compile for ROM itself is the decompress routine that writes the output to RAM.
However the latest changes have been crashing badly and I hadn't been able to find out why. I've added extra debug trace routines to see what is happening under the hood. To cut a long story short I decided to look at the binary output and compare this with the listing and they don't match. It's a subtle bug, but after an alignl I compile some code and it looks right, and all references to these addresses from elsewhere are right, but the binary that is loaded is not right.
Attn @"Dave Hein"
I'm sure I can work around this for the moment and maybe if I have some time I can check the p2asm source but I thought I'd share this little gotcha. PNut is a bit too spin-centric and doesn't like hub labels I give to code that it thinks will be referenced in cog mode, but I know what I'm doing in that department, I just want the assembler to assemble, and give me a proper listing (which PNut does not).
However the latest changes have been crashing badly and I hadn't been able to find out why. I've added extra debug trace routines to see what is happening under the hood. To cut a long story short I decided to look at the binary output and compare this with the listing and they don't match. It's a subtle bug, but after an alignl I compile some code and it looks right, and all references to these addresses from elsewhere are right, but the binary that is loaded is not right.
Attn @"Dave Hein"
I'm sure I can work around this for the moment and maybe if I have some time I can check the p2asm source but I thought I'd share this little gotcha. PNut is a bit too spin-centric and doesn't like hub labels I give to code that it thinks will be referenced in cog mode, but I know what I'm doing in that department, I just want the assembler to assemble, and give me a proper listing (which PNut does not).
Comments
There are lots of other things that p2asm allows that just make sense whereas PNut should really only throw a warning, not refuse to assemble.