[Coco] How do SAVEM and CSAVEM files work?
Allen Huffman
alsplace at pobox.com
Thu Oct 30 20:53:19 EDT 2025
> On Oct 30, 2025, at 5:19 PM, Sean Conner via Coco <coco at maltedmedia.com> wrote:
>
> Yup. In my assembler [1], when outputing a Coco binary file, will only
> generate multiple segments if it ends up being smaller. So, for instance,
> the following (contrived) example:
…snip...
That’s a great example. When I noticed multiple segments in the lwasm .bas file, I was confused at first, then I looked at them and saw the pattern. I had places in my code where I reserved three bytes to save a RAM hook:
Savedrvec2 rmb 3
…and that was enough for it to split them up. I do not know what it does when generating a LOADM .bin file, but thanks to this…
> that hard. A Coco binary file has the following structure:
…snip…
I now know how to check. Very straight forward.
> [1] https://github.com/spc476/a09
Ah, I must have seen this before, as I have it starred. I have so much catching up to do.
I noticed your compiler has a way to generate (I assume) the 5-byte floating point format, rather than just integers. I was looking at your USR examples and realized I couldn’t do that with EDTASM (and likely not with lwasm, unless it’s a common thing people have been adding to compilers).
— ALlen
More information about the Coco
mailing list