A method for transferring data between a host and peripheral storage under the control of a state machine, said host including a central processing unit (CPU), memory means and a direct memory access (DMA) channel coupled to said memory means, said method comprising the steps of:
- receiving data from said host via said DMA channel, said data being received by a state machine;
- determining whether escape is enabled and whether said data includes a predetermined escape code using sequential digital logic of said state machine and with minimal assistance from said CPU of said host;
- determining that an escape command is present in said data using sequential digital logic of said state machine when escape is enabled and when said data includes a predetermined escape code, and determining that an escape command is not present in said data when escape is disabled;
- writing said data to a peripheral storage medium if an escape command is not present in said data under the control of said state machine;
- and
- performing at least one command relative to said peripheral storage if an escape command is present in said data under the control of said state machine.