Hola Tempus, lo que yo hago es:
int1 flag=0;
if(input(pin_a0)){
while(input(pin_a0)){
delay_ms(20);
}
output_high(pin_rb0);
flag=1; // bandera de activación b0
}
quizá pueda servirte eso, la flag te indica que se ha entrado a la rutina, en si que se ha pulsado, para talvez tenerlo en cuenta con otras condiciones, como me ibas diciendo por chat
un saludo paisano, espero pueda servirte