Trying to open a tzx with CSW recording blocks error with:
libspectrum: libspectrum_tzx_create: unknown block type 0x18
Reproduced with https://spectrumcomputing.co.uk/entry/36461/
CSW blocks seems to be rarely used but as libspectrum / Fuse already have CSW reading and writing support it's relatively easy to add and covers this known limitation.
Attached patch only adds lines to tzx_read.c. Adding an enum for the switch would be cleaner but requires more switch changes and an interface change.
Disclaimer: Code assisted, tests and test tzx files are generated. git apply needed to create from the test patch.
Thanks for the patch. I think I'd prefer to just bite the bullet and fully support the block type so it works for read and write and allow the libspectrum API to be extended to cover it. I think it was left out before as Phil had got frustrated with the complexity of the TZX format.