Semicolons are essential in C. They tell the compiler: "I'm done with this command, please move on to the next one".
Check out lines 1, 2 and 3. You have no semicolon after the printf. In your second while loop, you should not have the semi-colon there.
In fact, if I get your code properly, you want this to happen:
While it is the case that the button is not pressed
Continually print: "Push the button to shut it down"
Now, that while loop shouldn't have a semicolon (the semicolon says: "do nothing", and is only useful if you want the code to just wait before doing anything until the condition is met.)
In the second while loop, again no semicolon after it. It doesn't make much sense to have the !button_pressed() in it, since by that time the button will have been pressed (unless it's an event, I'm not sure how the axon works in this regard). Here is your code re-written:
int time=20;
while(!button_pressed())
printf("Push the button to shut it down");
while(!button_pressed()||time!=0)
{
delay_ms(time*1000);
led_on();
delay_ms(10);
led_off();
time--;
}
It's in C, so that should at least compile...
MIKE