# Level pushing

Level pushing is a term used to describe the ability to
interrupt a process, invoke a new TCL prompt, and execute any valid
TCL command.

The execution of any command or program can be interrupted by pressing the BREAK key. When a
 command or program is interrupted, the system stops execution and saves all parameters so that
 execution can be resumed exactly where it was interrupted.

 The system prompts with `::` when a process is interrupted at the normal system
 level. At this point, the command or program is said to be *pushed* one level. Up to 16
 levels can be pushed. The number of colons in the prompt indicates the number of levels pushed.
 The normal system level is 1.

If ENTER is pressed at the new level TCL
prompt, control returns to the previous level, exactly where it left
off.

It is possible to logto another account while at a pushed
level. When a carriage return is entered at the TCL prompt, the process
automatically returns to the original account.

Any tape or peripheral storage device attached to the process when logging to another account at
 another level remains attached in the new account.

To return
to the previous level and continue execution of the process at that
level, press CTRL+M. To abort the process at the next lower level,
use the end command.

## See also

- [break statement](https://d3codex.com/pickbasic-flashbasic/break-statement/)
- [brk-debug command](https://d3codex.com/tcl/brk-debug-command/)
- [brk-level command](https://d3codex.com/tcl/brk-level-command/)
- [end command (TCL commands)](https://d3codex.com/tcl/end-command-tcl-commands/)
- [esc-data command](https://d3codex.com/tcl/esc-data-command/)
- [esc-level command](https://d3codex.com/tcl/esc-level-command/)
- [Levels](https://d3codex.com/definitions/levels/)
- [Prompt characters](https://d3codex.com/definitions/prompt-characters/)

---
Source: https://d3codex.com/tcl/level-pushing/ - part of the D3Codex reference.
