This project is to adapt an existing Open Source program called GHex. It will not be re-distributed so therefore there is no IP issue as far as I know. If you are concerned about this you may wish to let me know that you will re-write from scratch.
The adaption shall use the same software technologies as GHex and will be used on the Linux platform. The completed project will be installed just in the same manner as GHex.
My need is to be able to see and translate characters for an LCD driver called the SPLC780C. The full character set for this driver chip is needed to be seen on screen.
In the GHex software one can see a section that displays line numbers on the left, then a central portion that contains the hex and then, on the right, a section that has the ASCII symbol for the hex.
I want an interleaved design similar in concept as Wireshark. My design would have a minimum of 48 characters horizontally with the hex on one line and the text or ASCII on the next line. There is no need to have a program that has a variable window size. I would like 64 characters across one line but 48 will do. The hex lines would have a background colour different to that of the ASCII or text lines. The font will distinguish between all characters without doubt. A '1' ("one") is different to a capital letter 'I' ("eye") or a lower case 'l' ("el"). (Unlike the font used here ...!)
I will need to be able to mouse over portions of the information in the hex or ASCII sections of the program and copy to clipboard. When I copy to clipboard it will be in a comma-delimited fashion. The hex numbers will be preceded with '0x' in this manner: 0x43 which would represent the letter 'C'. So a line of hex in clipboard would be: 0x01,0x02,0x03,0x04,0x05 and so on.
The hex numbers on screen, as in the GHex program, would be spaced. Directly underneath each hex number would be the ASCII symbol for that hex number. The hex on screen does not have the preceding 0x but looks the same as the GHex program.
I need to be able to paste into this converter either a line of hex or a line of text/ASCII and it will go ahead and convert my newly pasted information. Perhaps a button to take the contents of the clipboard and paste them into the program ?? Perhaps two different panes on top of each other, one that has ASCII at the top and hex underneath and one that has hex on top and ASCII underneath ??
At this stage, there is no requirement to do multiple lines. Just the one line of at least 48 characters across the screen will be OK. Assume a 1920 screen with the program starting in the centre of the screen. It should not take up all the width of the screen - maybe up to 95% ?. Use a smaller font if needed.
Try to think about how the end-user will use this program to convert either hex or ASCII strings. If you have any suggestions or queries about how it will operate discuss then with me beforehand.
I would be presented with the full source code and the ability to install it as a final solution. There will be no time-outs or other impediments in the code. The project uses exactly the same software technologies as the GHex program for a reason. This tool should be thought of as a first-step in a larger suite of tools. I am not interested in a script.
This project needs to work on a Debian-based Linux OS that is at least a year old but also needs to work on a newly minted OS also. Perhaps the best platform to test on at this stage is the Mint platform. I am using 18.3 - you should test on Linux Mint 18.2.
You should present a video of your work showing how to install the program (if it isn't obvious) and how the program works. The project ends once the program has been successfully implemented at my end.
All the best.