Don't move the pointer, but add offsets to it instead (1 char)
Use array indexing instead of pointer arithmetic
Use bitops
Move command pointer increment to top (1 char)
Move decrement to top
Use auto (1 char)
Cleanups