problema con codigo mikroc pro

#1
la cuestion es que no puedo hacer que al principio de la sentencia saltarme los 500 ms
para que a la hora de que se cumpla el falso o verdadero nos e vea en el display
no se vea que avanza un numero mas sino que al momento de precionar el boton
aga el cambio al sitanet
gracias



codigo:


short dato [ 10 ] = {63, 6, 91, 79, 102, 109, 125, 71,127,103};
short apunta;
void main() {
trisc=0b10000000;
apunta=0;
while (1)
p:
{

if(portc.f7==1)
{
goto decrementar;
}
else
{
goto incrementar;
}
}
decrementar:

while(1)
{
portc=dato[apunta];
delay_ms(500);
apunta --;
if (apunta<=-1)
apunta=9;

goto p;
}
incrementar:




while (1)
{
portc=dato[apunta];
delay_ms(500);
apunta ++;
if (apunta>=10)
apunta=0;
goto p;
}
}
 
Arriba