I've programmed the 12F629 chip with this simple program to test the I/O for my larger program:

start:

high 0 : pause 2000
high 1 : pause 2000
high 2 : pause 2000
high 4 : pause 2000
high 5 : pause 2000
low 0 : pause 2000
low 1 : pause 2000
low 2 : pause 2000
low 4 : pause 2000
low 5 : pause 2000

goto start

end

Should be straight forward, but this is what happens.

Port 0 goes high and lights a LED.

Port 1 then goes high and lights a LED <em>BUT</em> port 0 then goes low at the exact same time and stays off.

Port 2 goes high and lights an LED, but at the same time port 1 goes low and stays off.

The rest of the results are as you would expect so it is port 0 and port 1 that are acting strange. They obviously are going high and low, but somehow are linked to each other??

Some advice would be appreciate. I'm happy that I have got something to light up, but with such a simple program I was not expecting these odd results.

Thanks.

Bart