HOME

TheInfoList



OR:

Text mode is a
computer display A computer monitor is an output device that displays information in pictorial or textual form. A discrete monitor comprises a visual display, support electronics, power supply, housing, electrical connectors, and external user controls. The ...
mode in which content is internally represented on a computer screen in terms of
character Character or Characters 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 The ...
s rather than individual
pixel In digital imaging, a pixel (abbreviated px), pel, or picture element is the smallest addressable element in a raster image, or the smallest point in an all points addressable display device. In most digital display devices, pixels are the ...
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 graphical characters, especially the written characters of human language, allowing them to be stored, transmitted, and transformed using digital computers. The numerical values tha ...
; at the same time, contrasted to all points addressable (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 de ...
modes. Text mode applications communicate with the user by using
command-line interface A command-line interpreter or command-line processor uses a command-line interface (CLI) to receive commands from a user in the form of lines of text. This provides a means of setting parameters for the environment, invoking executables and pro ...
s and text user interfaces. 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 The GUI ( "UI" by itself is still usually pronounced . or ), graphical user interface, is a form of user interface that allows users to interact with electronic devices through graphical icons and audio indicator such as primary notation, inste ...
programs. A typical example is the IBM
code page 437 Code page 437 ( CCSID 437) is the character set of the original IBM PC (personal computer). It is also known as CP437, OEM-US, OEM 437, PC-8, or DOS Latin US. The set includes all printable ASCII characters as well as some accented letters ( d ...
character set. An important characteristic of text mode programs is that they assume
monospace font A monospaced font, also called a fixed-pitch, fixed-width, or non-proportional font, is a font whose letters and characters each occupy the same amount of horizontal space. This contrasts with variable-width fonts, where the letters and spaci ...
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 can be directly addressable. Programs that display output on remote video terminals must issue special
control sequence In computer science, an escape sequence is a combination of 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 and ma ...
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 that oversees the development of voluntary consensus standards for products, services, processes, systems, and personnel in the United States. The organi ...
and
VT100 The VT100 is a video terminal, introduced in August 1978 by Digital Equipment Corporation (DEC). It was one of the first terminals to support ANSI escape codes for cursor control and other tasks, and added a number of extended codes for special ...
. 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
Ctrl In computing, a Control key is a modifier key which, when pressed in conjunction with another key, performs a special operation (for example, ); similar to the Shift key, the Control key rarely performs any function when pressed by itself. ...
-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 electromechanical hardware device that can be used for entering data into, and transcribing data from, a computer or a computing system. The teletype was an example of an early-day hard-copy terminal and ...
s started to replace
teleprinter A teleprinter (teletypewriter, teletype or TTY) is an electromechanical device that can be used to send and receive typed messages through various communications channels, in both point-to-point and point-to-multipoint configurations. Init ...
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 Random-access memory (RAM; ) is a form of computer memory that can be read and changed in any order, typically used to store working data and machine code. A random-access memory device allows data items to be read or written in almost the ...
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 (RAM) containing a bitmap that drives a video display. It is a memory buffer containing data representing all the pixels in a complete video frame. Mode ...
. Early framebuffers were standalone devices which cost tens of thousands of dollars, in addition to the expense of the advanced high-resolution displays to which they were connected. In this book, Smith recalls that his first framebuffer at the New York Institute of Technology Computer Graphics Lab cost $80,000 in the mid-1970s. It could store a 512 x 512 array of pixels at 256 colors per pixel (that is, 8-bit
color depth Color depth or colour depth (see spelling differences), also known as bit depth, is either the number of bits used to indicate the color of a single pixel, or the number of bits used for each color component of a single pixel. When referring ...
). Alexander Schure soon bought five more framebuffers for the Lab for $60,000 each. The Lab quickly combined its six framebuffers together, in two groups of three each, to create the first two true 24-bit RGB color framebuffers. Thus, the first had cost $200,000 and the second had cost $180,000; as Smith points out, adjusting for inflation, these numbers add up to roughly $1.7 million in 2021 dollars, which explains why the Lab's researchers were "thrilled" with Schure's generosity.
For applications that required simple line graphics but for which the expense of a framebuffer could not be justified, vector displays 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, which emit electron beams that are manipulated to display images on a phosphorescent screen. The images may represent electrical waveforms ( oscilloscope), ...
. 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 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). 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 ) is an 8-bit home computer and one of the world's first highly successful mass-produced microcomputer products. It was designed primarily by Steve Wozniak; Jerry Manock developed the design of Apple II's foam-m ...
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 A business case captures the reasoning for initiating a project or task. It is often presented in a well-structured written document, but may also come in the form of a short verbal agreement or presentation. The logic of the business case is that ...
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 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 coded as if it were a normal ...
s that may require the transmission and rendering of entire
bitmap In computing, a bitmap is a mapping from some domain (for example, a range of integers) to bits. It is also called a bit array or bitmap index. As a noun, the term "bitmap" is very often used to refer to a particular bitmapping application: t ...
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 and accompanying de facto graphics standard, first introduced with the IBM PS/2 line of computers in 1987, which became ubiquitous in the PC industry within three years. The term can now ...
hardware, because many later text mode programs tried to push the model to the extreme by playing with the video controller. 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 magazine, published in its original form between 1981 and 2004. Its offshoot website w ...
because the game screen can be manipulated much faster than with pixel-oriented rendering.


Technical basis

A video controller implementing a text mode usually uses two distinct areas of
memory Memory is the faculty of the mind by which data or information is encoded, stored, and retrieved when needed. It is the retention of information over time for the purpose of influencing future action. If past events could not be remember ...
. ''Character memory'' or a ''pattern table'' contains a raster font in use, where each character is represented by a
dot matrix A dot matrix is a 2-dimensional patterned array, used to represent characters, symbols and images. Most types of modern technology use dot matrices for display of information, including mobile phones, televisions, and printers. The system is al ...
(a
matrix Matrix most commonly refers to: * ''The Matrix'' (franchise), an American media franchise ** '' The Matrix'', a 1999 science-fiction action film ** "The Matrix", a fictional setting, a virtual reality environment, within ''The Matrix'' (franchi ...
of bits), so the character memory could be considered as a three-dimensional bit array. ''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 terminology, a code point, codepoint or code position is a numerical value that maps to a specific character. Code points usually represent a single grapheme—usually a letter, digit, punctuation mark, or whitespace—but ...
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, the pattern of image storage and transmission used in most computer bitmap image ...
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, the remainder is the amount "left over" after performing some computation. In arithmetic, the remainder is the integer "left over" after dividing one integer by another to produce an integer quotient ( integer division). In algeb ...
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 ...
in some systems. Other systems allow the use of
RAM Ram, ram, or RAM may refer to: Animals * A male sheep * Ram cichlid, a freshwater tropical fish People * Ram (given name) * Ram (surname) * Ram (director) (Ramsubramaniam), an Indian Tamil film director * RAM (musician) (born 1974), Dutch * ...
for this purpose, making it possible to redefine the
typeface A typeface (or font family) is the design of lettering that can include variations in size, weight (e.g. bold), slope (e.g. italic), width (e.g. condensed), and so on. Each of these variations of the typeface is a font. There are thousands o ...
and even the
character set Character encoding is the process of assigning numbers to graphical characters, especially the written characters of human language, allowing them to be stored, transmitted, and transformed using digital computers. The numerical values tha ...
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, in manuals referenced as 'Video Display Processor' (VDP) and introduced in 1979. The TMS9918 and its variants were used ...
, 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 VIC-20 home computer from Commodore ...
, and the
Game Boy The is an 8-bit fourth generation handheld game console developed and manufactured by Nintendo. It was first released in Japan on April 21, 1989, in North America later the same year, and in Europe in late 1990. It was designed by the same t ...
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 (DEC). It was one of the first terminals to support ANSI escape codes for cursor control and other tasks, and added a number of extended codes for special ...
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 knife, an implement for painting * Palette (company) ...
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, XT, and AT, all from computer giant IBM, that are able to use the same software and expansion cards. Such computers were referred to as PC clones, IBM clones or IBM PC clones ...
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 and compatible personal computers. Several programs, such as
terminal emulator A terminal emulator, or terminal application, is a computer program that emulates a video terminal within some other display architecture. Though typically synonymous with a shell or text terminal, the term ''terminal'' covers all remote term ...
s, used only 80×24 for the main display and reserved the bottom row for a status bar. 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 standards. The organization was incorporated in California in July 1989To retrieve the information, searc ...
-compatible Super VGA 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 Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, whi ...
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 multiplexers.


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 performing a particular computation (or more generally, accomplishing a specific computing result), usually by designing and building an executable computer program. Programming involves tasks such as anal ...
. There exist also software components to emulate text mode, such as
terminal emulator A terminal emulator, or terminal application, is a computer program that emulates a video terminal within some other display architecture. Though typically synonymous with a shell or text terminal, the term ''terminal'' covers all remote term ...
s or command line
console Console may refer to: Computing and video games * System console, a physical device to operate a computer ** Virtual console, a user interface for multiple computer consoles on one device ** Command-line interface, a method of interacting with ...
s. In
Microsoft Windows Windows is a group of several proprietary graphical operating system families developed and marketed by Microsoft. Each family caters to a certain sector of the computing industry. For example, Windows NT for consumers, Windows Server for ...
, the
Win32 console Windows Console is the infrastructure for console applications in Microsoft Windows. An instance of a Windows Console has a screen buffer and an input buffer. It allows console apps to run inside a window or in hardware text mode (so as to oc ...
usually opens in emulated, graphical window mode. It can be switched to full screen, true text mode and vice versa by pressing the
Alt Alt or ALT may refer to: Abbreviations for words * Alt account, an alternative online identity also known as a sock puppet account * Alternate character, in online gaming * Alternate route, type of highway designation * Alternating group, mathema ...
and
Enter Enter or ENTER may refer to: * Enter key, on computer keyboards * Enter, Netherlands, a village * ''Enter'' (magazine), an American technology magazine for children 1983–1985 * ''Enter'' (Finnish magazine), a Finnish computer magazine * Enter ...
keys together. This is no longer supported by the WDDM display drivers introduced with Windows Vista.
Linux Linux ( or ) is a family of open-source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged as a Linux distribution, whi ...
virtual console A virtual console (VC) – also known as a virtual terminal (VT) – is a conceptual combination of the keyboard and display for a computer user interface. It is a feature of some Unix-like operating systems such as Linux, BSD, illumos, U ...
operates in text mode. Most Linux distributions support several virtual console screens, accessed by pressing
Ctrl In computing, a Control key is a modifier key which, when pressed in conjunction with another key, performs a special operation (for example, ); similar to the Shift key, the Control key rarely performs any function when pressed by itself. ...
, Alt and a
function key A function key is a key on a computer or terminal keyboard that can be programmed so as to cause an operating system command interpreter or application program to perform certain actions, a form of soft key. On some keyboards/computers, function ...
together. The AAlib
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. The open-source model is a decentralized so ...
library provides programs and routines that specialize in translating standard image and video files, such as PNG and
WMV Windows Media Video (WMV) is a series of video codecs and their corresponding video coding formats developed by Microsoft. It is part of the Windows Media framework. WMV consists of three distinct codecs: The original video compression technology ...
, and displaying them as a collection of
ASCII ASCII ( ), abbreviated from American Standard Code for Information Interchange, is a character encoding standard for electronic communication. ASCII codes represent text in computers, telecommunications equipment, and other devices. Because ...
characters. This enables a rudimentary viewing of graphics files on text mode systems, and on text mode web browsers such as
Lynx A lynx is a type of wild cat. Lynx may also refer to: Astronomy * Lynx (constellation) * Lynx (Chinese astronomy) * Lynx X-ray Observatory, a NASA-funded mission concept for a next-generation X-ray space observatory Places Canada * Lynx, ...
.


See also

* Text-based user interface *
Teletext A British Ceefax football index page from October 2009, showing the three-digit page numbers for a variety of football news stories Teletext, or broadcast teletext, is a standard for displaying text and rudimentary graphics on suitably equipp ...
*
Text semigraphics Text-based semigraphics or pseudographics is a primitive method used in early text mode video hardware to emulate raster graphics without having to implement the logic for such a display mode. There are two different ways to accomplish the emu ...
*
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) characters defined by the ASCII Standard from 1963 and ASCII compliant char ...
*
Twin Twins are two offspring produced by the same pregnancy.MedicineNet > Definition of TwinLast Editorial Review: 19 June 2000 Twins can be either ''monozygotic'' ('identical'), meaning that they develop from one zygote, which splits and forms two em ...
*
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. The glyphs to present the characters are stored in the alphanumeric character generator's resident read ...
*
VGA text mode VGA text mode was introduced in 1987 by IBM as part of the VGA standard for its IBM PS/2 computers. Its use on IBM PC compatibles was widespread through the 1990s and persists today for some applications on modern computers. The main features of V ...
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 Signetics Corporation was an American electronics manufacturer specifically established to make integrated circuits. Founded in 1961, they went on to develop a number of early microprocessors and support chips, as well as the widely used 555 time ...
, 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