Well isn't the important part NOT to have any delays?

Code:
loop:
	if portb.0 = 1 then	' Switch is OFF
		gosub sub2 
		else		' otherwise it's ON
		gosub sub1
		endif
	Goto Loop

sub1:
	low 11	 		' Turn Off SAW immediately
	low 10 			' Turn Off power feed
	low 9 			' Turn Off Light
	low 8 			' Turn Off Vacuum
	Return

sub2:
	high 8	 		' Turn On Vacuum
	high 9 			' Turn On Light
	high 10 		' Turn On Power Feed
	high 11 		' Turn On SAW
	Return

end
And if you want a blinky Light as well (which now introduces a maximum 10mS delay in this example)...

Code:
	counter=0
loop:
	if portb.0 = 1 then	' Switch is OFF
		gosub sub2 
		else		' otherwise it's ON
		gosub sub1
		endif
	counter=counter+1
	If Counter=>100 then
				' approx 1 second toggle
		toggle portb.5
		Counter=0
		endif
	Pause 10
Goto Loop

sub1:
	low 11	 		' Turn Off SAW immediately
	low 10 			' Turn Off power feed
	low 9 			' Turn Off Light
	low 8 			' Turn Off Vacuum
	Return

sub2:
	high 8	 		' Turn On Vacuum
	high 9 			' Turn On Light
	high 10 		' Turn On Power Feed
	high 11 		' Turn On SAW
	Return

end
Why not also ALIAS your Ports, so they're easier to program... at the start you declare your aliases...

LED var PortB.5

then in your program you can write Toggle LED instead of Toggle PortB.5

The bonus is, if you then decide to move the LED to a different port/pin, you make your change on ONE line of your program, and hey-presto, it doesn't matter how many times you've used LED, they all get reassigned.

Likewise alias, VACUUM, POWERFEED, LIGHT and SAW and you can then go...

Low SAW
Low POWERFEED
Low LIGHT
Low VACUUM

which makes fare more easier program understanding...