Yep. Like Ski said, that's how it works.

Here's another flavor.
Code:
Main:
  IF Push1=0 THEN
     GOSUB ChkState
  ENDIF
  GOTO Main    
  
ChkState:
  WHILE Push1=0       ' wait for button release
  WEND
  TRISC.2=TRISC.2 ^ 1 ' toggle TRISC.2 on button release
  RETURN
Endless simple possibilities.