Output: Character Processing

The device driver can be given a string of characters to process at once, so ther output code contains a loop to process all characters in the input buffer. For each of those characters, the following process is followed in a procedure invoked in the string-processing loop.

The output character is classified by using its value to select the correct nibble from the TC table addressed by the character value divided by two (left nibble for even-valued characters, right for odd-valued characters). The current state and token-class value are used to compute the matrix address of the correct state-table entry, the next state value is loaded and the action-procedure associated with this state and input character token-type is executed. Upon completion, control is returned to the invoking procedure.