I've played a little bit more with this.
I noticed that (as Coding Badly said) the floating input is very flaky, turning on/off just about anything changes the nature of the bit stream and it's very easy to get looooong strings of 0s and 1s, however the transitions are still pretty random and David's whitening algorithm (with "limit" upped to 1000) seems to sort it out (largely, see below), it can however get very slow if the transitions are few and far apart.
For my purposes this doesn't matter as I only want a single number, but when you are trying to collect 10,000 samples it gets a bit tedious.
I mostly worked with 8-bit results because it's easier to get a feel for what's going on, although I did a few 32-bit runs. The results however are much the same.
Still got some banding, while watching the numbers roll by I noticed a vert high proportion of values in the 170 and 85 area.
170, 85? Quick what are these magic numbers? 0xAA and 0x55, or put another way, values with alternate bits set. Other, less prominent bands are in areas like 0x42 etc, once again with many alternate bits set.
Conversely the sparse areas have values like 128 with large runs of 0s or 1s.
Conclusion, the whitening favors alternate bit levels.
I did look at other bits (well bit 3) but that was quite stable by comparison with bit 0.
how about masking the lower 7 bits as the lower half seems quite random (to be checked)
Unfortunately I haven't been able to reproduce that skewed pattern.
If you're willing to add a capacitor and a resistor this may work...
Not worth adding components for me I don't think.
Anyway I'm a bit sick of looking at graphs for the time being. It's probably worth looking into the whitening though.
(Still can't figure out how to display the frequency of each value in Excel)