HexViewer icon indicating copy to clipboard operation
HexViewer copied to clipboard

Big small endian ghost in 8 bit mode

Open BacchusFLT opened this issue 4 years ago • 5 comments

I guess you can ghost the swap of big/little endian in the 8 bit view mode. It's not contextually relevant, is it?

BacchusFLT avatar Jul 30 '21 21:07 BacchusFLT

Can you clarify what you mean? I'm not particularly sure I understand what you mean by "ghost".

facelessuser avatar Jul 30 '21 21:07 facelessuser

Ghost is when you grey out an option. You can sort of see what the option is but it's not selectable. I'm sure it has other names as well.

BacchusFLT avatar Jul 31 '21 09:07 BacchusFLT

I guess I'm still not understanding what you mean. I get that big/little endian swapping of a single 8bit byte doesn't make sense. I understand that ghosting means to grey out an option, but can you provide context as to exactly what you are asking for? I don't remember all of the interactions of all the features, and I support a number of repos, so sometimes I need examples to refresh my memory.

facelessuser avatar Jul 31 '21 16:07 facelessuser

Please mind: This is TOTALLY minor, but just for perfection:

I am just suggesting greying out an option that doesn't make sense in a specific context.

If the user has selected 8 bit view, I am suggesting greying out the endian swap option as it doesn't make sense in that context.

/Pontus Berg Bergatrollet AB CEO & Owner Tel/SMS: +46 735 082860 www.bergatrollet.se

Den lör 31 juli 2021 kl 18:08 skrev Isaac Muse @.***>:

I guess I'm still not understanding what you mean. I get that big/little endian swapping of a single 8bit byte doesn't make sense. I understand that ghosting means to grey out an option, but can you provide context as to exactly what you are asking for? I don't remember all of the interactions of all the features, and I support a number of repos, so sometimes I need examples to refresh my memory.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/facelessuser/HexViewer/issues/88#issuecomment-890369691, or unsubscribe https://github.com/notifications/unsubscribe-auth/AGZWZSW2TFBWFYY7NKYXTMTT2QNYRANCNFSM5BJHY4GQ .

BacchusFLT avatar Jul 31 '21 17:07 BacchusFLT

I'm not sure this request makes sense as it is more about how the data is being parsed for the inspector, not how the data is displayed.

Visually, we just read the binary byte for byte and visually break them as the user requests. Endianness does not come into play when we are displaying the bytes. Endianness applies to how we parse the data for the inspector floats, integers, etc.

Essentially, when you place your cursor on a byte, regardless of how the bytes are displayed, the types are parsed as big endian or little endian for the inspector panel, depending on how the setting is configured. This should be set according to how data is stored in your binary file. So, the person evaluating the binary file needs to know the endianness, and where the address starts for a given unit type they are inspecting.

For instance, at my work, our binaries are usually little endian, so the binary stores the various unit types as little endian in our binaries. I usually place my cursor where I know the start address is for a particular value, and assuming the endian is set to "little", I should get the appropriate value, assuming I am referencing the appropriate unit type in the inspector panel.

Endianness only applies to how the unit types are parsed, not how they are visually broken up and displayed for the human eye to process the data.

So, even if you have everything broken up visually by 8 bytes, a 32bit integer, 16bit integer, etc. is going to be returned and parsed according to the endianness configured.

facelessuser avatar Jul 31 '21 22:07 facelessuser