Seems to be reading a bit off, but I can apply a correction factor to it as long as it's consistent.
This was still bothering me, so I gave it a shot. I get near perfect results with the code below. With the inputs tied to ground, three zeroes. Tied to Vcc, three 1023 readings. Connected to a voltage divider consisting of two 10K resistors from Vcc to ground, I get mostly 507 or 508, the three are all usually within one of each other. ATtiny85-20PU at 8MHz, Arduino-Tiny core.
#include <Streaming.h> //http://arduiniana.org/libraries/streaming/
int a1, a2, a3;
SoftwareSerial ser(1, 0);
a1 = analogRead(1); //dip pin 7
a2 = analogRead(2); //dip pin 3
a3 = analogRead(3); //dip pin 2
ser << _DEC(millis());
ser << ' ' << _DEC(a1) << ' ' << _DEC(a2) << ' ' << _DEC(a3) <<endl;