pinMode(0, INPUT);
digitalWrite(0, HIGH);
You have to verify which pin is used when you use 0 i think it´s based on the core files you implement into the IDE (pins_arduino.h file).
If 0 would be PB0 then you are on AREF and i don´t think its a good idea to activate a pull up here (maybe this is your problem), which sheet are you using for your pin definition ?
Alternatively you can use direct port manipulation to be sure on what pin you activate the pull-up.
There are 2 registers that are important to know to do that, the DDRx (Data Direction Register - defines pins as in-[0] or output[1]) and the PORTx register (for activating pull ups and other things which are not relevant here).
On page 64 of the Attiny 85 datasheet you can see only Port B registers are listed if you look closer a few pages under you can see each of theese registers have only 6 bits that can be altered (PB0-6). Normally all pins are initialized as input pins you can either check that by printing out the register or writing DDRB = 0;
When a pin is defined as input a 1 on the respective bit of the PORTB register activates a pullup on this pin.
The code for activating the pull-up on PB0 could look like this:
DDRB = 0;
PORTB = B000001; // setting the DDB0 bit