Sweet! Thanks guys! Bring them on...
Regarding numerical radii: Despite there being 5 displayed formats, there are really only 3 encoding schemes: BCD, real, and integer. Meaning...octal, decimal, and hexadecimal are all encoded identically...despite being displayed as radix 8, 10, and 16. At times each has its purpose, but doesn't effect the way the hardware sees the number. The values 012, 10, and 0xA are all the same in hardware...the 4 bit binary value 1010.
While octal numbering is frowned on by many folks, many consider it easier to use when the underlying I/O is grouped by 8s. Is it easier to have X0-7, X10-17, and X20-27...or...X0-7, X8-15, X16-23? It's a matter of preference and there are folks on both sides of that argument. Octal does cause confusion at times though.
Now hex is another issue. As a programmer, having a number system that makes it easy to directly see specific bit or byte values is invaluable. In the code that I write, I routinely use both decimal and hex...specifically because I need to visualize bits. A value of 0x12345678 allows me to see the bit values in each nibble of a 32 bit integer. At times, that is hugely beneficial...say when trying to isolate individual bytes due to each byte having its own meaning. That same number expressed as decimal is 305419896, and clearly each byte's effect on the total number is completely obscured.
BCD on the other hand, is a holdover from a bygone era and has no practical purpose in a modern controller.
I think the real answer is a more flexible system that allows you to choose base 8 or 10 for I/O numbering...since both have value...and constants that are user selectable. In "C", we can specify base 8, 10, and 16, as well as floating point, simply by the way we enter the value. An octal value has a leading 0...04000, a decimal value is just the number...2048, a hex value has a leading 0x...0x800, and a floating point value has a decimal point....2048.0. All 4 of those values are 2048. The octal, decimal, and hex versions encode to an integer, and the floating point is a 32 bit "float" in "C" parlance.
With a system like that, you can basically do what you want. No more K1, or R1.0....just 4095 or 0xFFF or whatever...your choice. Any problems with that approach?
You never know....stuff like this may be coming to a DirectLogic PLC sooner than you think.

We are certainly listening....