Re: Suggestion for HxD:User templates for data inspector
Posted: 26 Feb 2021 16:28
no questions yet.
You clarify all.
(sorry ALL for my possible bad english)
You clarify all.
(sorry ALL for my possible bad english)
And a feature request:Simple example. Say I have C defs...If I then click on the first byte of the struct in the file, then the Data Inspector shows something like:Code: Select all
typedef enum { DEV_UART = 0, DEV_MODEM = 1, DEV_NFC = 2, DEV_BLE = 3, } typedef struct { uint32_t serial; devtype_e devtype; char desc[28]; } prod_t;
Code: Select all
| prod_t | serial:1020304, devtype:'DEV_MODEM', desc:"Telit LE910" |
...maybe have capability of reading a .h header file/s with custom definitions?
Code: Select all
<?xml version="1.0" encoding="UTF-8"?>
<ufwb version="1.23.4">
<grammar name="Windows Bitmaps" start="id:2" author="Andreas Pehnack" fileextension="bmp" uti="com.microsoft.bmp">
<description>Grammar for the Windows Bitmap file format</description>
<structure name="Defaults" id="3" encoding="ISO_8859-1:1987" endian="little" signed="no"/>
<structure name="Bitmap File" id="2" extends="id:3">
<structref name="Header" id="6" fillcolor="00F900" structure="id:5"/>
<structref name="BITMAPINFOHEADER" id="8" fillcolor="FF9200" structure="id:7"/>
<structref name="ColorPallete" id="33" structure="id:28"/>
</structure>
<structure name="Header" id="5" extends="id:3">
<number name="bfType" mustmatch="yes" id="10" type="integer" length="2" endian="big" display="hex">
<fixedvalues>
<fixedvalue value="0x424D"/>
</fixedvalues>
</number>
<number name="bfSize" id="11" type="integer" length="4"/>
<number name="bfReserved" id="12" type="integer" length="4">
<fixedvalues>
<fixedvalue value="0"/>
</fixedvalues>
</number>
<offset name="bfOffBits" id="14" length="4" references="id:13" follownullreference="yes"/>
</structure>
<structure name="Info" id="7" length="this.biSize" extends="id:3" fillcolor="929292">
<number name="biSize" id="16" fillcolor="FF2600" type="integer" length="4">
<fixedvalues>
<fixedvalue value="40"/>
<fixedvalue name="<unnamed>" value="108"/>
</fixedvalues>
</number>
<number name="biWidth" id="17" fillcolor="FEFB00" type="integer" length="4"/>
<number name="biHeight" id="18" fillcolor="FEFB00" type="integer" length="4" signed="yes"/>
<number name="biPlanes" id="19" fillcolor="797979" type="integer" length="2">
<fixedvalues>
<fixedvalue value="1"/>
</fixedvalues>
</number>
<number name="biBitCount" id="20" fillcolor="FF89D8" type="integer" length="2"/>
<number name="biCompression" id="21" fillcolor="72FA78" type="integer" length="4"/>
<number name="biSizeImage" id="22" fillcolor="FFD478" type="integer" length="4"/>
<number name="biXPelsPerMeter" id="23" type="integer" length="4"/>
<number name="biYPelsPerMeter" id="24" fillcolor="C0C0C0" type="integer" length="4"/>
<number name="biClrUsed" id="25" fillcolor="73FDFF" type="integer" length="4"/>
<number name="biClrImportant" id="26" fillcolor="7980FF" type="integer" length="4"/>
</structure>
<structure name="ColorPallete" id="28" extends="id:3" encoding="ISO_8859-1:1987" endian="little" signed="no">
<binary name="RBGPallet" id="29" fillcolor="D783FF" repeatmin="0" repeatmax="biClrUsed" length="32" lengthunit="bit"/>
</structure>
<structure name="ImageData" id="13" extends="id:3">
<binary name="ImageData" id="31" fillcolor="D5D5D5" length="remaining"/>
</structure>
</grammar>
</ufwb>
Code: Select all
u8 string[while(std::mem::read_unsigned($, 1) != 0xFF)] @ 0x00;
Code: Select all
string<encoding=utf8, termination=$FF>;
Code: Select all
string8<8, encoding = utf8, termination=none/zero, padding=none/space/zero>; Display=String;
Code: Select all
UInt8[]<termination=$FF>;
Code: Select all
UInt8[][[termination=$FF]]; // counter example, do NOT use
Correct. But donations are welcome to help me dedicate more time on this.WhiteNinja wrote: ↑27 Sep 2022 08:47 Any further progress on this since January? I couldn't find any of this functionality within HxD so I assume it has not been released yet?
With HSD I can also refer to other parts of HSD through qualified fields, and then define properties for those fields (datatypes, colors, formatting).CSS uses various selectors to apply properties to elements within HTML, a markup language