The following information is provided as is, and the authors take no responsibility for the correctness.
Diablo 630 emulation was originally used with daisywheel printers and typewriters. It supports only sequences for tabulation, line and character spacing, attribute selection (bold, double-strike, underline), horizontal movement in both directions, proportional spacing and automatic centering and justification among others. This emulation is sometimes used by other vendors as a base for their printer specific emulation.
Some information can be found in the “Brother Laser Printer HL-Series - Technical Reference Guide“:
The following conventions are used in this description of the Diablo 630 mode software commands:
Control codes are ASCII codes that instruct the printer to perform a particular operation, such as a line feed. Send a control code to the printer by sending the same type of instruction you would use to print a character using its ASCII code number. For example, the ASCII code for a form feed is 12, so to get the printer to perform a form feed use the following BASIC statement:
LPRINT CHR$(12);
The CHR$ operator is normally used to convert an ASCII code into its corresponding character.
Escape sequences tell the printer the Diablo 630 mode function to perform. An escape sequence consists of the Esc character followed by one or more characters which define the operation to be performed. Send an escape sequence to the printer by sending the same type of instruction you would use to print characters using their ASCII codes. Some escape sequences require parameter values or data following them, for example, commands which turn a particular feature on and off. Numerical parameter data, too, is sent to the printer as if it were a character code to be printed. For example, to move the print position to the third column position on the page the required escape sequence is Esc HT 3. In BASIC this would be:
LPRINT CHR$(27); CHR$(9); CHR$(3);
| <Esc> <EM> n | Paper input control |
| <Esc> <FF> n | Set page length |
| <HT> | Horizontal tab |
| <Esc> <HT> n | Absolute horizontal tab |
| <Esc> 1 | Set horizontal tab at current position |
| <Esc> 8 | Clear horizontal tab at current position |
| <VT> | Vertical tab |
| <Esc> - | Set vertical tab at current position |
| <Esc> 2 | Clear vertical Tab Stop at current position |
| <Esc> <VT> n | Absolute vertical tab |
| <Esc> T | Set top margin at current position |
| <Esc> L | Set bottom margin at current position |
| <Esc> C | Clear top and bottom margins |
| <Esc> 9 | Set left margin at current position |
| <Esc> 0 | Set right margin at current position |
| <Esc> <Ctrl+L> n | Set lines per page to n |
| <SP> | Space |
| <BS> | Backspace |
| <CR> | Carriage return |
| <Esc> ? | Enable auto Carriage Return |
| <Esc> ! | Disable auto Carriage Return |
| <Esc> <Ctrl+→n | Set horizontal motion index (HMI) n-1 |
| <Esc> S | Reset horizontal motion index (HMI) to spacing switch |
| <Esc> <Ctrl+I> n | Absolute horizontal Tab Stop to print column |
| <Esc> / | Auto backward printing mode |
| <Esc> \ | Cancel auto backward printing mode |
| <Esc> < | Enable reverse printing mode |
| <Esc> > | Disable reverse printing mode |
| <Esc> 5 | Set forward printing mode |
| <Esc> 6 | Set backward printing mode |
| <LF> | Line feed |
| <FF> | Form feed |
| <Esc> <Ctrl+⇒n | Set vertical motion index (VMI) n-1 |
| <Esc> <Ctrl+K> n | Absolute vertical to print line |
| <Esc> U | Half line feed |
| <Esc> <LF> <Esc> <Ctrl+J> | Reverse line feed |
| <Esc> D | Reverse half line feed |
| <Esc> " | Set automatic line feed |
| <Esc> # | Cancel automatic line feed |
| <Esc> 3 | Set graphics mode |
| <Esc> 4 | Cancel graphics mode |
| <Esc> A | Print in secondary color (Red) |
| <Esc> B | Print in primary color (Black) |
| <Esc> 7 | Enable print suppression |
| <Ctrl+N> | Enable ECS mode, print supplementary characters |
| <Ctrl+O> | Disable ECS mode, print primary characters |
| <Esc> P | Set proportional spacing |
| <Esc> Q | Cancel proportional spacing |
| <Esc> <Ctrl+Q> n | Set offset to (n) |
| <Esc> E | Set underline print mode |
| <Esc> R | Cancel underline print mode |
| <Esc> F | Set double-strike mode |
| <Esc> H | Set auto strike-out print mode |
| <Esc> I | Cancel auto strike-out print mode |
| <Esc> O | Set bold print mode |
| <Esc> W | Set shadow print mode |
| <Esc> & | Cancel bold and shadow print modes |
| <Esc> M | Enable auto justify |
| <Esc> = | Enable auto center |
| <Esc> <Ctrl+H> | Backspace 1/120” |
| <Esc> % | Increase Carriage settling time to 20 msec |
| <Esc> N | Restore normal Carriage settling time |
| <Esc> <Ctrl+N> M | Enable program mode |
| <Esc> X | Cancel all Word Processing modes except PS |
| <BEL> | Bell |
| <DC1> | Enable printer |
| <DC3> | Disable printer |
| <Esc> <Ctrl+M> P | Initiate remote Reset |
| <Esc> <CR> mode | Change emulation mode / reset printer |
| <Esc> <CR> ! # R | User reset |
| <Esc> @ | Set EPSON emulation mode |
| <Esc> G <Esc> V | Enable HyPLOT mode |
| <Esc> Y | Print character assigned to character code 32 |
| <Esc> Z | Print character assigned to character code 127 |
| <Esc> <Ctrl+N> <Ctrl+R> | Enable printwheel down-load mode |
| <Ctrl+T> | Exit printwheel down-load mode |
| <Esc> <Ctrl+Z> n | Enable remote diagnostics mode |
| <Esc> <Ctrl+Y> n | Enable auto sheet feeder operation |