Is there a way to get nibble arrays to obey endianness?

0 votes
asked Aug 4, 2021 in Grammars by dominickpastore (180 points)
I'm working on a grammar where there is an array of 4-bit bitfields. There are 1000 entries, where each entry has 4 single-bit flags. They are stored in a little-endian fashion: each byte stores a pair of entries, where the four least significant bits are the first entry and the most significant bits are the second.

Since it is an array, there are two structs involved: an inner struct representing a single 4-bit entry, and an outer struct containing the 1000 repetitions of the inner struct.

The problem is, even if I set both of these structs to little endian, each pair of nibbles is parsing out of order. That is, entries 0 and 1 are swapped, 2 and 3 are swapped, 4 and 5 are swapped, etc.

Is there a way to make Hexinator handle this properly?

1 Answer

0 votes
answered Feb 17, 2023 by guruadmin (680 points)

As this is currently not possible with the standard grammar means it could be done with a custom (scripted) data type. I you need support for such a script, please write a message to grammars@synalysis.com.

...