This code was originally used to mark deleted characters on
punched tape, since any character could be changed to all 1s by punching holes everywhere. If a character was punched erroneously, punching out all seven bits caused this position to be ignored or deleted. In
hexadecimal, this is 7F to rub out 7 bits (
FF to rubout 8 bits was used for 8-bit codes). This character could also be used as
padding to slow down printing after newlines, though the all-zero
NUL was more often used. The
Teletype Model 33 provided a key labelled to punch this character (after the user backed up the tape using another button), and did not provide a key that produced the
backspace character (BS). Therefore, a number of less expensive computer systems that used Teletypes used this key (and thus the delete code) to ignore the previous mis-typed character. Video terminals designed to replace the teletype then had to place a key that produced this code where backspace would be expected, in particular in products from
Digital Equipment Corporation. On
VT100 compatible terminals, this is the character generated by the key labeled . On later terminals, such as the
VT510, the key is labeled (called backarrow in the manual) and by default sent DEL, but could be set up to send BS. Other terminals designed for systems that did not have a history of using Teletypes would usually make a key at this position send BS, leading to much confusion. Unix, in particular, had a problem in that it could only be programmed to erase the previous character for
one of these (not both), thus requiring the user to reconfigure the terminal driver for each brand of terminal. Depending on the type of terminal the designer used, software would sometimes make the shortcuts or do something, even though these sent the same code as BS and DEL, assuming the backspace key was sending the other code. A key marked that sends BS is by far the most common on modern terminals and emulators. To ensure text is not deleted backwards, the key marked "Delete" on many terminals does not send DEL and instead sends an
escape sequence such as ^3~. == Current use ==