command protocol class (tested only on x86)