User:MeatServo/Console ESM

Hex dumps on PC/Cygwin show console ESM data structures in reverse, unless/until little endiness is specified. This suggests that the PC is Big Endian by default.

Strangely, the raw binary data inside the data structures seems to be reversed on PC. The same may be true for the console files, leaving us in a state where traversing the file contents requires one endiness and reading out the data requires the other.

The major sticking point right now is byte counts of data. Each of the "top" structures appears to have a string of bytes after that denote the size of that structure. This allows one to subdivide data structures down to constituent elements without regard for the contents. When endiness is changed, the delineation of these bytes is not immediately apparent. Once I can solve that, I will effectively build a script that will replicate the deconstruction xEdit is performing to make the console data navigible and determine how it differs from the PC ESM.