Well that was fast.
Dovoto discovered some quirks in the way names were used under shared data runs and had a nice suggestion to allow images to be added via grit files as well. There was also some other small niggly bits that needed straightening out. So yeah, grit v0.8.3.
Apparently, the GRF format didn't quite follow the official RIFF specs, so I had to fix it (thanks for pointing it out, Daniel). While I was at it, I also changed the names of the meta-tile arrays if a meta-map was asked for. In stead of the
-Map affix, it now uses the more logical
-MetaTiles. Yes, this probably will break something, but in the long run it's better this way and it's a compiler error, so it's easy to fix.
Usenti's been updated to match.
Grit 0.8.1 is out now. I've made three somewhat small changes here. First,
there was some trouble with shared palettes/tiles if there was no -O or
-S option. “Trouble”, as in segmentation fault. This should
now be fixed.
I've also reformatted the include guards from
GRIT_FOO_H. GCC uses that format for internal
#defines and it is very territorial about such matters. So, say, when you
have elf.png, GCC gets cranky because that would hide its
__ELF__, and guess who wins out there? Again,
thanks for pointing these things out, Quirky.
The last item is the addition of column-major tiling. This can be
useful for horizontal scrolling games, since the data or the columns are
all adjacent instead of a whole scanline apart. A second benefit of
this mode is that rendering to tiles is made considerably easier (and a
little bit faster too).
In case you hadn't noticed yet, I've also put the manual on-line.
This shows the basic options for grit and wingrit, and now there's a
description of how to use it in makefiles as well. This includes how the
building the grit-demo project works. This one's quite interesting, so
please check it out.
The quantizer for true-color to paletted wasn't properly prepared for the BGR order that big-endian systems use. This has been fixed. As this has no effect on little-endian systems (such as the binaries that you can find here), only the source archive has been updated.
Git is now fully at 0.7. Or, rather, grit is at 0.7. As mentioned before, a name-change was in order and this has now taken place.
Other than that, there is little difference. Dovoto pointed to a bug in the tileset directory code which made me finally deal with the way directories were being handled. Unless told otherwise, the output goes into the current working directory. This is how it should be anyway. Non-binary changes are: updated documentation (for grit itself too) and a modified Makefile because it was out of date with the code itself (thanks Richard).
What's not been added are palette reduction and a more general tileset reducer. I have functions that can do these things (inside cldib), but applying them in the grit code base is … icky. There are so many potential problems with options here that I prefer to wait and add them later. Or maybe make separate tools for them.
I've also added the new Wingrit exporter to Usenti, which is now at v1.7.7.