HOME

TheInfoList




Text mode is a
computer display A computer monitor is an output device that displays information in pictorial or text form. A monitor usually comprises a electronic visual display, visual display, electronic circuit, some circuitry, a casing, and a power supply. The display dev ...

computer display
mode in which content is internally represented on a computer screen in terms of
character Character(s) may refer to: Arts, entertainment, and media Literature * ''Character'' (novel), a 1936 Dutch novel by Ferdinand Bordewijk * ''Characters'' (Theophrastus), a classical Greek set of character sketches attributed to Theophrastus M ...
s rather than individual
pixel In digital imaging Digital imaging or digital image acquisition is the creation of a representation of the visual characteristics of an object, such as a physical scene or the interior structure of an object. The term is often assumed to imp ...

pixel
s. Typically, the screen consists of a uniform rectangular grid of ''character cells'', each of which contains one of the characters of a
character set Character encoding is the process of assigning numbers to Graphics, graphical character (computing), characters, especially the written characters of Language, human language, allowing them to be Data storage, stored, Data communication, transmit ...
; at the same time, contrasted to
all points addressable "Bling Bling": Dot matrix-style skywriting. A dot matrix is a 2-dimensional patterned array ARRAY, also known as ARRAY Now, is an independent distribution company launched by film maker and former publicist Ava DuVernay in 2010 under the nam ...
(APA) mode or other kinds of
computer graphics Computer graphics deals with generating images with the aid of computers. Today, computer graphics is a core technology in digital photography, film, video games, cell phone and computer displays, and many specialized applications. A great dea ...

computer graphics
modes. Text mode applications communicate with the user by using
command-line interface A command-line interface (CLI) processes command (computing), commands to a computer program in the form of lines of text. The program which handles the interface is called a command-line interpreter or command-line processor. Operating systems ...
s and
text user interface In computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes and development of both computer hardware , hardware and sof ...
s. Many character sets used in text mode applications also contain a limited set of predefined semi-graphical characters usable for drawing boxes and other rudimentary graphics, which can be used to highlight the content or to simulate widget or control interface objects found in
GUI#REDIRECT graphical user interface The graphical user interface (GUI "UI" by itself is still usually pronounced . or ) is a form of user interface that allows User (computing), users to Human–computer interaction, interact with electronic devic ...

GUI
programs. A typical example is the
IBM International Business Machines Corporation (IBM) is an American multinational technology company headquartered in Armonk, New York, with operations in over 170 countries. The company began in 1911, founded in Endicott, New York, as the C ...

IBM
code page 437 Code page 437 (CCSID A CCSID (coded character set identifier) is a 16-bit number that represents a particular encoding In communication Communication (from Latin ''communicare'', meaning "to share") is the act of developing Semantics, mea ...
character set. An important characteristic of text mode programs is that they assume
monospace font
monospace font
s, where every character has the same width on screen, which allows them to easily maintain the vertical alignment when displaying semi-graphical characters. This was an analogy of early mechanical printers which had fixed pitch. This way, the output seen on the screen could be sent directly to the printer maintaining the same format. Depending on the environment, the
screen buffer A framebuffer (frame buffer, or sometimes framestore) is a portion of random-access memory File:Random Access Memory HyperX.jpg, 8GB DDR3 RAM stick with a white Heat sink, heatsink Random-access memory (RAM; ) is a form of computer memory t ...
can be directly addressable. Programs that display output on remote
video terminal A computer terminal is an electronic or electromechanical hardware device that can be used for entering data into, and transcribing data from, a computer A computer is a machine that can be programmed to carry out sequences of arithmeti ...
s must issue special
control sequence An escape sequence is a combination of Character (computing), characters that has a meaning other than the literal characters contained therein; it is marked by one or more preceding (and possibly terminating) characters. Examples * In C (progra ...
s to manipulate the screen buffer. The most popular standards for such control sequences are
ANSI The American National Standards Institute (ANSI ) is a private non-profit organization A nonprofit organization (NPO), also known as a non-business entity, not-for-profit organization, or nonprofit institution, is a legal entity organiz ...
and
VT100 The VT100 is a video terminal, introduced in August 1978 by Digital Equipment Corporation Digital Equipment Corporation (DEC ), using the Digital, was a major American company in the from the 1960s to the 1990s. The company was co-founded ...
. Programs accessing the screen buffer through control sequences may lose synchronization with the actual display so that many text mode programs have a ''redisplay everything'' command, often associated with the
CtrlCTRL or Ctrl may refer to several things: * Channel Tunnel Rail Link, a high-speed railway line opened in the 2000s in Britain * Control key, an input button present on most computer keyboards * CTRL (gene), a gene that in humans encodes the enzyme ...

Ctrl
-L key combination.


History

Text mode video rendering came to prominence in the early 1970s, when video-oriented
text terminal A computer terminal is an electronic or device that can be used for entering data into, and transcribing data from, a or a system. The was an example of an early day hardcopy terminal, and predated the use of a computer screen by decades. ...
s started to replace
teleprinter A teleprinter (teletypewriter, teletype or TTY) is an device that can be used to send and receive typed messages through various communications channels, in both and configurations. Initially they were used in , which developed in the late ...
s in the interactive use of computers.


Benefits

The advantages of text modes as compared to graphics modes include lower memory consumption and faster screen manipulation. At the time text terminals were beginning to replace teleprinters in the 1970s, the extremely high cost of
random access memory 8GB DDR3 RAM stick with a white Heat sink">heatsink File:Laptop Heatsink.jpg, 330px, Typical heatsink-fan combination found on a consumer laptop. The heatpipes which contain a working fluid make direct contact with the CPU and GPU, conductin ...

random access memory
in that period made it exorbitantly expensive to install enough memory for a computer to simultaneously store the current value of ''every'' pixel on a screen, to form what would now be called a
framebuffer A framebuffer (frame buffer, or sometimes framestore) is a portion of random-access memory 8GB DDR3 RAM stick with a white Heat sink">heatsink File:Laptop Heatsink.jpg, 330px, Typical heatsink-fan combination found on a consumer laptop. T ...
. Early framebuffers were standalone devices which cost thousands of dollars, in addition to the expense of the advanced high-resolution displays to which they were connected. For applications that required simple line graphics but for which the expense of a framebuffer could not be justified,
vector display A vector monitor, vector display, or calligraphic display is a display device s, LED display and Vacuum fluorescent display, VF display, top to bottom. A display device is an output device for presentation of information in visual or Touch, tac ...
s were a popular workaround. But there were many computer applications (e.g., data entry into a database) for which all that was required was the ability to render ordinary text in a quick and cost-effective fashion to a
cathode ray tube A cathode-ray tube (CRT) is a vacuum tube containing one or more electron guns, the beams of which are manipulated to display images on a phosphorescent screen. The images may represent electrical waveforms (oscilloscope), pictures (televisi ...

cathode ray tube
. Text mode avoids the problem of expensive memory by having dedicated display hardware re-render each line of text from characters into pixels with ''each'' scan of the screen by the cathode ray. In turn, the display hardware needs only enough memory to store the pixels equivalent to one line of text (or even less) at a time. Thus, the computer's
screen buffer A framebuffer (frame buffer, or sometimes framestore) is a portion of random-access memory File:Random Access Memory HyperX.jpg, 8GB DDR3 RAM stick with a white Heat sink, heatsink Random-access memory (RAM; ) is a form of computer memory t ...
only stores and knows about the underlying text characters (hence the name "text mode") and the only location where the actual pixels representing those characters exist as a single unified image is the screen itself, as viewed by the user (thanks to the phenomenon of
persistence of vision Persistence of vision traditionally refers to the optical illusion that occurs when visual perception of an object does not cease for some time after the rays of light proceeding from it have ceased to enter the eye. The illusion has also been des ...
). For example, a screen buffer sufficient to hold a standard grid of 80 by 25 characters requires at least 2,000 bytes. Assuming a monochrome display, 8 bits per byte, and a standard size of 8 times 8 bits for each character, a framebuffer large enough to hold every pixel on the resulting screen would require at least 128,000 bits, 16,000 bytes, or just under 16 kilobytes. By the standards of modern computers, these may seem like trivial amounts of memory, but to put them in context, the original
Apple II The Apple II (stylized as apple ][) is an and one of the world's first highly successful mass-produced products. It was designed primarily by ; oversaw the development of Apple II's foam-molded plastic case and developed the . It was in ...

Apple II
was released in 1977 with only four kilobytes of memory and a price of $1,300 in U.S. dollars (at a time when the minimum wage in the United States was only $2.30 per hour). Furthermore, from a business perspective, the business case for text terminals made no sense unless they could be produced and operated more cheaply than the paper-hungry teleprinters they were supposed to replace. Another advantage of text mode is that it has relatively low bandwidth requirements in remote terminal use. Thus, a text mode remote terminal can necessarily update the screen much faster than a graphics mode remote terminal linked to the same amount of bandwidth (and in turn will seem more responsive), since the remote server may only need to transmit a few dozen bytes for each screen update in text mode, as opposed to complex raster graphics
remote procedure call#REDIRECT remote procedure call In distributed computing, a remote procedure call (RPC) is when a computer program causes a procedure ( subroutine) to execute in a different address space (commonly on another computer on a shared network), which is ...
s that may require the transmission and rendering of entire
bitmap In computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes and development of both computer hardware , hardware and softwar ...

bitmap
s.


User-defined characters

The border between text mode and graphical programs can sometimes be fuzzy, especially on the PC's
VGA Video Graphics Array (VGA) is a video display controller A video display controller or VDC (also regularly called display engine, display interface) is an integrated circuit An integrated circuit or monolithic integrated circuit (also ...

VGA
hardware, because many later text mode programs tried to push the model to the extreme by playing with the
video controller A video card (also called a graphics card, display card, graphics adapter, or display adapter) is an expansion card which generates a feed of output images to a display device (such as a computer monitor). Frequently, these are advertised as disc ...
. For example, they redefined the character set in order to create custom semi-graphical characters, or even created the appearance of a graphical mouse pointer by redefining the appearance of the characters over which the mouse pointer was shown at a given time. Text mode rendering with user-defined characters has also been useful for 2D
computer and video games ''Computer and Video Games'' (also known as ''CVG'', ''Computer & Video Games'', ''C&VG'', ''Computer + Video Games'', or ''C+VG'') was a UK-based video game#REDIRECT Video game A video game is an electronic game that involves interaction wi ...
because the game screen can be manipulated much faster than with pixel-oriented rendering.


Technical basis

A
video controller A video card (also called a graphics card, display card, graphics adapter, or display adapter) is an expansion card which generates a feed of output images to a display device (such as a computer monitor). Frequently, these are advertised as disc ...
implementing a text mode usually uses two distinct areas of
memory Memory is the faculty of the by which or is , stored, and retrieved when needed. It is the retention of information over time for the purpose of influencing future action. If s could not be remembered, it would be impossible for language, r ...
. ''Character memory'' or a ''pattern table'' contains a
raster font A computer font (or font) is implemented as a digital data file containing a set of graphically related glyphs, characters, or symbols such as dingbats. Although the term ''font'' first referred to a set of movable type, movable metal type piec ...
in use, where each character is represented by a
dot matrix "Bling Bling": Dot matrix-style skywriting. A dot matrix is a 2-dimensional patterned Array data structure, array, used to represent characters, symbols and images. Every type of modern technology uses dot matrices for display of information, in ...

dot matrix
(a
matrix Matrix or MATRIX may refer to: Science and mathematics * Matrix (mathematics), a rectangular array of numbers, symbols, or expressions * Matrix (logic), part of a formula in prenex normal form * Matrix (biology), the material in between a eukaryoti ...
of
bit The bit is a basic unit of information in computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithm of an algorithm (Euclid's algo ...
s), so the character memory could be considered as a three-dimensional
bit array A bit array (also known as bit map, bit set, bit string, or bit vector) is an array data structure In computer science, an array data structure, or simply an array, is a data structure consisting of a collection of ''elements'' (value (compute ...
. ''Display matrix'' (a ''text buffer'', ''screen buffer'', or ''nametable'') tracks which character is in each cell. In the simple case the display matrix can be just a matrix of
code point In character encoding In computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic processes and development of both computer hardw ...
s (so named ''character pointer table''), but it usually stores for each character position not only a code, but also ''attributes''. In the case of
raster scan A raster scan, or raster scanning, is the rectangular pattern of image capture and reconstruction in television. By analogy, the term is used for raster graphics upright=1, The Smiley, smiley face in the top left corner is a raster image. Wh ...
output, which is the most common for computer monitors, the corresponding video signal is made by the ''character generator'', a special electronic unit similar to devices with the same name used in video technology. The video controller has two registers: scan line counter and dot counter, serving as coordinates in the screen dot matrix. Each of them must be divided by corresponding glyph size to obtain an index in the display matrix; the
remainder In mathematics Mathematics (from Ancient Greek, Greek: ) includes the study of such topics as quantity (number theory), mathematical structure, structure (algebra), space (geometry), and calculus, change (mathematical analysis, analysis). It ...
is an index in glyph matrix. If glyph size equals to 2n, then it is possible just to use n low bits of a binary register as an index in glyph matrix, and the rest of bits as an index in the display matrix — see the scheme. The character memory resides in a
read-only memory Read-only memory (ROM) is a type of non-volatile memory used in computers and other electronic devices. Data stored in ROM cannot be electronically modified after the manufacture of the memory device. Read-only memory is useful for storing sof ...
in some systems. Other systems allow the use of
RAM Random-access memory (RAM; ) is a form of computer memory In computing Computing is any goal-oriented activity requiring, benefiting from, or creating computing machinery. It includes the study and experimentation of algorithmic proces ...

RAM
for this purpose, making it possible to redefine the
typeface A typeface is the design of lettering Lettering is an umbrella term In linguistics Linguistics is the science, scientific study of language. It encompasses the analysis of every aspect of language, as well as the methods for studying ...

typeface
and even the
character set Character encoding is the process of assigning numbers to Graphics, graphical character (computing), characters, especially the written characters of Language, human language, allowing them to be Data storage, stored, Data communication, transmit ...
for application-specific purposes. The use of RAM-based characters also facilitates some special techniques, such as the implementation of a pixel-graphics frame buffer by reserving some characters for a bitmap and writing pixels directly to their corresponding character memory. In some historical graphics chips, including the
TMS9918 VDP TMS9918A VDP TMS9918A VDP TMS9928A The TMS9918 is a video display controller (VDC) manufactured by Texas Instruments and introduced in 1979. The TMS9918 and its variants were used in the ColecoVision, CreatiVision, Memotech MTX, MSX, SG-10 ...
, the
MOS Technology VIC The VIC (Video Interface Chip), specifically known as the MOS Technology 6560 (NTSC version) / 6561 (PAL version), is the integrated circuit chip responsible for generating video graphics and sound in the Commodore VIC-20 home computer. It was o ...
, and the
Game Boy The is an 8-bit In computer architecture In computer engineering, computer architecture is a set of rules and methods that describe the functionality, organization, and implementation of computer systems. Some definitions of architectu ...

Game Boy
graphics hardware, this was actually the canonical way of doing pixel graphics. Text modes often assign ''attributes'' to the displayed characters. For example, the
VT100 The VT100 is a video terminal, introduced in August 1978 by Digital Equipment Corporation Digital Equipment Corporation (DEC ), using the Digital, was a major American company in the from the 1960s to the 1990s. The company was co-founded ...
terminal allows each character to be underlined, brightened, blinking or inverse. Color-supporting devices usually allow the color of each character, and often the background color as well, to be selected from a limited
palette Palette may refer to: * Cosmetic palette, an archaeological form * Palette, another name for a color scheme * Palette (painting), a wooden board used for mixing colors for a painting * Palette (company), a Japanese visual novel studio (video game c ...
of colors. These attributes can either coexist with the character indices or use a different memory area called ''color memory'' or ''attribute memory''. Some text mode implementations also have the concept of line attributes. For example, the VT100-compatible line of text terminals supports the doubling of the width and height of the characters on individual text lines.


PC common text modes

Depending on the graphics adapter used, a variety of text modes are available on
IBM PC compatible IBM PC compatible computers are similar to the original IBM PC The IBM Personal Computer (model 5150, commonly known as the IBM PC) is the first computer released in the IBM PC model line and the basis for the IBM PC compatible IBM PC c ...
computers. They are listed on the table below: MDA text could be emphasized with bright, underline, reverse and blinking attributes. Video cards in general are backward compatible, i.e. EGA supports all MDA and CGA modes, VGA supports MDA, CGA and EGA modes. By far the most common text mode used in DOS environments, and initial Windows consoles, is the default 80 columns by 25 rows, or 80×25, with 16 colors. This mode was available on practically all
IBM International Business Machines Corporation (IBM) is an American multinational technology company headquartered in Armonk, New York, with operations in over 170 countries. The company began in 1911, founded in Endicott, New York, as the C ...

IBM
and compatible personal computers. Several programs, such as
terminal emulator A terminal emulator, terminal application, or term, is a computer program In imperative programming, a computer program is a sequence of instructions in a programming language that a computer can execute or interpret. In declarative programmin ...
s, used only 80×24 for the main display and reserved the bottom row for a
status bar A status bar is a graphical control element ., 300px, right Image:GUI Frame.svg, upExample of enabled and disabled widgets; the frame (GUI), frame at the bottom is disabled, they are grayed out. A graphical widget (also graphical control elem ...
. Two other VGA text modes, 80×43 and 80×50, exist but were very rarely used. The 40-column text modes were never very popular outside games and other applications designed for compatibility with television monitors, and were used only for demonstration purposes or with very old hardware. Character sizes and graphical resolutions for the extended
VESA VESA (), formally known as Video Electronics Standards Association, is an American technical standards organization for computer display standard Computer display standards are a combination of aspect ratio, display size, display resoluti ...
-compatible
Super VGA Super VGA (SVGA) is a broad term that covers a wide range of computer display standard Computer display standards are a combination of aspect ratio The aspect ratio of a geometric Geometry (from the grc, γεωμετρία; '' geo-'' " ...
text modes are manufacturer-dependent. Also on these display adapters, available colors can be halved from 16 to 8 when a second customized character set is employed (giving a total repertoire of 512 —instead the common 256— different graphic characters simultaneously displayed on the screen). Some cards (e.g. S3) supported custom very large text modes, like 100×37 or even 160×120. In
Linux Linux ( or ) is a family of open-source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use the source code, design documents, or content of the product ...

Linux
systems, a program called SVGATextMode is often used with SVGA cards to set up very large console text modes, such as for use with split-screen
terminal multiplexer A terminal multiplexer is a software application that can be used to multiplexing, multiplex several separate pseudoterminal-based login sessions inside a single terminal display, terminal emulator window, PC/workstation system console, or remote lo ...
s.


Modern usage

Many modern programs with a graphical interface simulate the display style of text mode programs, notably when it is important to preserve the vertical alignment of text, e.g., during
computer programming Computer programming is the process of designing and building an executable computer program to accomplish a specific computing result or to perform a particular task. Programming involves tasks such as analysis, generating algorithms, Profilin ...
. There exist also software components to emulate text mode, such as
terminal emulator A terminal emulator, terminal application, or term, is a computer program In imperative programming, a computer program is a sequence of instructions in a programming language that a computer can execute or interpret. In declarative programmin ...
s or command line
console Console may to: Computing and video games * Video game console, a specific device for playing video games ** Handheld game console, a specific lightweight and portable device for playing video games * System console, a physical device to operat ...
s. In
Microsoft Windows Microsoft Windows, commonly referred to as Windows, is a group of several proprietary {{Short pages monitor *
Teletext Teletext, or broadcast teletext, is a videotex File:Minitel1.jpg, Minitel was perhaps the most successful videotex service worldwide, using this terminal, circa 1982. Videotex (or interactive videotex) was one of the earliest implementations o ...
* Text semigraphics *
ASCII art ASCII art is a graphic design technique that uses computers for presentation and consists of pictures pieced together from the 95 printable (from a total of 128) character (computing), characters defined by the ASCII Standard from 1963 and AS ...
*
Twin Twins are two offspring In biology, offspring are the young creation of living organisms, produced either by a Asexual reproduction, single organism or, in the case of sexual reproduction, two organisms. Collective offspring may be known as a ...
*
Hardware code page In computing, a hardware code page (HWCP) refers to a code page supported natively by a hardware device such as a display adapter or printer (computing), printer. The glyphs to present the characters are stored in the alphanumeric character gener ...
* VGA text mode VGA-compatible text mode details


References


External links


High-Resolution console on Linux


Further reading

*{{cite book , title=Signetics MOS Silicon Gate 2500 Series Metal Gate 2000/2400 Series Data Book , location=Sunnyvale, CA, USA , publisher= Signetics Corporation , date=1972 , pages=65–72 , url=http://bitsavers.trailing-edge.com/pdf/signetics/_dataBooks/1972_Signetics_MOS.pdf , access-date=2016-06-18 , url-status=live , archive-url=https://web.archive.org/web/20160618184245/http://bitsavers.trailing-edge.com/pdf/signetics/_dataBooks/1972_Signetics_MOS.pdf , archive-date=2016-06-18 (NB. For example: Signetics 2513 MOS ROM.) Display technology