This is what ive made so fare. don't think it could ever work though.

};

void loop ()

{

for (int Sec=59; Sec>=0; Sec--)

{

digitalWrite(latchpin, LOW);

shiftOut(datapin, clockpin, LSBFIRST, 0); // clears the right display

shiftOut(datapin, clockpin, LSBFIRST, 0); // clears the left display

digitalWrite(latchpin, HIGH);

if (Sec<10)

{

digitalWrite(latchpin, LOW);

shiftOut(datapin, clockpin, LSBFIRST, segdisp[Sec]); // sends the digit down the serial path

shiftOut(datapin, clockpin, LSBFIRST, 255); // sends a blank down the serial path to push the digit to the right

digitalWrite(latchpin, HIGH);

}

else if (Sec>=10)

{

d=Sec%10; // find the remainder of dividing z by 10, this will be the right-hand digit

c=int(d); // make it an integer, c is the right hand digit

b=Sec/10; // divide z by 10 - the whole number value will be the left-hand digit

e = int(b); // e is the left hand digit

digitalWrite(latchpin, LOW); // send the digits down to the shift registers!

shiftOut(datapin, clockpin, LSBFIRST, segdisp[c]);

shiftOut(datapin, clockpin, LSBFIRST, segdisp[e]);

digitalWrite(latchpin, HIGH);

}

delay(speed);

}

for (int Min=99; Min>=0; Min--)

{

digitalWrite(latchpin, LOW);

shiftOut(datapin, clockpin, LSBFIRST, 0); // clears the right display

shiftOut(datapin, clockpin, LSBFIRST, 0); // clears the left display

digitalWrite(latchpin, HIGH);

if (Min<10)

{

digitalWrite(latchpin, LOW);

shiftOut(datapin, clockpin, LSBFIRST, segdisp[Min]); // sends the digit down the serial path

shiftOut(datapin, clockpin, LSBFIRST, 255); // sends a blank down the serial path to push the digit to the right

digitalWrite(latchpin, HIGH);

}

else if (Min>=10)

{

z=Min%10; // find the remainder of dividing z by 10, this will be the right-hand digit

q=int(z); // make it an integer, c is the right hand digit

p=Min/10; // divide z by 10 - the whole number value will be the left-hand digit

f = int(p); // e is the left hand digit

digitalWrite(latchpin, LOW); // send the digits down to the shift registers!

shiftOut(datapin, clockpin, LSBFIRST, segdisp[q]);

shiftOut(datapin, clockpin, LSBFIRST, segdisp[f]);

digitalWrite(latchpin, HIGH);

}

delay(speed);

}

//////////// button_start//////////