John_S:
I've been using the digitalWriteFast, which somehow is faster, smaller, and easier than port manipulation.
http://arduino.cc/forum/index.php/topic,93737.0.html
It's faster and smaller only if your pin numbers are compile-time constants. If your pin number is a variable then it will be the same speed as a regular digitalWrite().