Template:Short description Template:Redirect

File:Key break.jpg
Break/Pause key on PC keyboard

The Break key (or the symbol <ref name=":2">Template:Cite book</ref>) of a computer keyboard refers to breaking a telegraph circuit and originated with 19th century practice. In modern usage, the key has no well-defined purpose, but while this is the case, it can be used by software for miscellaneous tasks, such as to switch between multiple login sessions, to terminate a program, or to interrupt a modem connection.

Because the break function is usually combined with the pause function on one key since the introduction of the IBM Model M 101-key keyboard in 1985, the Break key is also called the Pause key. It can be used to pause some computer games.

HistoryEdit

A standard telegraph circuit connects all the keys, sounders and batteries in a single series loop. Thus the sounders actuate only when both keys are down (closed, also known as "marking" — after the ink marks made on paper tape by early printing telegraphs). So the receiving operator has to hold their key down or close a built-in shorting switch in order to let the other operator send. As a consequence, the receiving operator could interrupt the sending operator by opening their key, breaking the circuit and forcing it into a "spacing" condition. Both sounders stop responding to the sender's keying, alerting the sender (a physical break in the telegraph line would have the same effect).

The teleprinter operated in a very similar fashion except that the sending station kept the loop closed (logic 1, or "marking") even during short pauses between characters. Holding down a special "break" key opened the loop, forcing it into a continuous logic 0, or "spacing", condition.<ref>Template:Cite book</ref><ref name=":1">Template:Cite book</ref> When this occurred, the teleprinter mechanisms continually actuated without printing anything,<ref name=":1" /> as the all-0s character is the non-printing NUL in both Baudot and ASCII. The resulting noise got the sending operator's attention.

This practice carried over to teleprinter use as a terminal on time-sharing computers. A continuous spacing (logical 0) condition violates the rule that every valid character has to end with one or more logic 1 (marking) "stop" bits. The computer (specifically the UART) recognized this as a special "break" condition and generated an interrupt that typically stopped a running program<ref>Template:Cite book</ref> or forced the operating system to prompt for a login. Similarly to teleprinters, video terminals kept the Template:Keypress key<ref>Template:Cite book</ref><ref>Template:Cite book</ref> which put transmission line to zero state.<ref>Template:Cite book</ref>

With its function of interrupting terminal communication, the Template:Keypress key was adopted by software terminal emulators and in applications which use serial protocols such as RS-232. This concept of interruption also extends to the boot process of computers, network devices and to halting operations in computer applications like command-line interfaces, debuggers and spreadsheets.<ref>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref>

SinclairEdit

On the ZX80 and ZX81 computers, the Break is accessed by pressing Template:Keypress. On the ZX Spectrum it is accessed by Template:Keypress. The Spectrum+ and later computers have a dedicated Template:Keypress key. It does not trigger an interrupt but will halt any running BASIC program, or terminate the loading or saving of data to cassette tape. An interrupted BASIC program can usually be resumed with the CONTINUE command. The Sinclair QL computer, without a Template:Keypress key, maps the function to Template:Keypress.

BBC MicroEdit

On a BBC Micro computer, the Template:Keypress key generates a hardware reset which would normally cause a warm restart of the computer. A cold restart is triggered by pressing Template:Keypress. If a filing system is installed, Template:Keypress will cause the computer to search for and load or run a file called !Boot on the filing system's default device (e.g. floppy disk 0, network user BOOT). The latter two behaviours were inherited by the successor to Acorn MOS, RISC OS. These behaviours could be changed or exchanged in software, and were often used in rudimentary anti-piracy techniques.

Because of the BBC Micro's near universal usage in British schools, later versions of the machine incorporated a physical lock on the Break key to stop children from intentionally resetting the computer.

Modern keyboardsEdit

On many modern PCs, Template:Keypress interrupts screen output by BIOS until another key is pressed. This is effective during boot in text mode and in a DOS box in Windows safe mode with 50 lines. On early keyboards without a Template:Keypress key (before the introduction of 101/102-key keyboards) the Pause function was assigned to Template:Keypress, and the Break function to Template:Keypress; these key-combinations still work with most programs, even on modern PCs with modern keyboards. Pressing the dedicated Template:Keypress key on 101/102-key keyboards sends the same scancodes as pressing Template:Keypress, then Template:Keypress, then releasing them in the reverse order would do; additionally, an E1hex prefix is sent, which enables 101/102-key-aware software to discern the two situations, while older software usually just ignores the prefix. The Template:Keypress key is different from all other keys in that it sends no scancodes at all on release in PS/2 modes 1 or 2, so it is impossible to determine whether this key is being held down with older devices. Also, it's not "typematic", that is, unlike the other keys, it doesn't send repeat scancodes while being held. In PS/2 mode 3 or USB HID mode, there is a release scancode, so it is possible to determine whether this key is being held down on modern computers.<ref>Template:Cite book</ref>

On modern keyboards, the Template:Keypress key is usually labeled Pause with Break below, sometimes separated by a line: Template:Keypress, or Pause on the top of the keycap and Break on the front, or only Pause without Break at all. Keyboards with ISO/IEC 9995-7 markings including Canadian CSA keyboard use symbol for Break and for Pause.<ref name=":2" /> In most Windows environments, the key combination Template:Keypress brings up the system properties.

Keyboards without Break keyEdit

Compact and notebook keyboards often do not have a dedicated Template:Keypress key.

Substitutes for Template:Keypress:

|CitationClass=web }}</ref><ref>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref><ref name="thinkpads1">{{#invoke:citation/CS1|citation |CitationClass=web }}</ref>

|CitationClass=web }}</ref><ref name=":0">{{#invoke:citation/CS1|citation |CitationClass=web }}</ref>

|CitationClass=web }}</ref><ref name=":0" />

Substitutes for Template:Keypress:

For someTemplate:Clarify Dell laptops, without a Template:Keypress key, press the Template:Keypress and select "Interrupt".<ref name="DELL">{{#invoke:citation/CS1|citation |CitationClass=web }}</ref><ref name=":0" />

Usage for breaking the program's executionEdit

While both Template:Keypress and Template:Keypress combination are commonly implemented as a way of breaking the execution of a console application, they are also used for similar effect in integrated development environments.<ref>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref><ref>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref> Although these two are often considered interchangeable,<ref>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref> compilers and execution environments usually assign different signals to these.<ref>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref> Additionally, in some kernels (e.g. miscellaneous DOS variants) Template:Keypress is detected only at the time OS tries reading from a keyboard buffer and only if it's the only key sequence in the buffer,<ref>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref><ref>{{#invoke:citation/CS1|citation |CitationClass=web }}</ref> while Template:Keypress is often translated instantly (e.g. by INT 1Bh under DOS). Because of this, Template:Keypress is usually a more effective choice under these operating systems; sensitivity for these two combinations can be enhanced by the BREAK=ON CONFIG.SYS statement.

See alsoEdit

ReferencesEdit

Template:Reflist

External linksEdit

Template:Keyboard Template:Keyboard keys