21

Prior to the 1981 release of the IBM PC, the VT105 (72x20 1971), VT52 (80x12 1974), and VT100 (80x25 1978) text terminals were used on many Unix machines and the PDP11 (probably the most widely used computer at the time). However, just as many other computers used widths of 60 (type writer), 132 (wide printer), or convenient memory page sizes of 32 or 64.

TV's became quite blurry approaching 132 (B&W@625px) char so that seems to be the hardware maximum width upper limit.

Where did the 80x25 text terminal size come from?

  • 2
    Typewriters usually had up to 80 chars per line. Up to, because the left margin was usually set to position 15 to have a margin for a binder. – Janka Feb 3 '18 at 2:05
  • 14
    The 80 columns almost certainly came from the IBM/industry standard 80 column punched card. – mannaggia Feb 3 '18 at 2:24
  • 1
    @Janka - I could be wrong, but I thought a typed page had 60-66 char (excluding the margin), depending on font? Dot Matrix were 66 normal and 132 condensed? Business wide printers were 132. – Barnstormer Feb 3 '18 at 2:31
  • 2
    The VT52 and VT100 were very popular. Not so much a standard but everyone copies what is popular so it eventually becomes a standard – cup Feb 3 '18 at 10:26
  • 2
    The VT-52 was actually 80x24, its predecessor the VT-50 was 80x12. See en.wikipedia.org/wiki/VT52 – Mark Ransom Feb 5 '18 at 19:44
13

A lot of early PCs and terminals were designed to use either TVs or monitors that were built around CRTs that were built to the same specifications as TVs. While (traditional standard definition) TVs don't have a well defined upper limit of horizontal resolution, in practice few of them were capable of handling a signal which varied faster than about 13 or so MHz; in the end, when resolutions of analogue TV were standardized in order to transition to digital a final upper limit of 13.5MHz was defined, but few TVs other than the very best were actually able to reach that, at least in the 70s and 80s; monitors were slightly better, but not much because in many cases they were using the same CRTs, and there was little incentive to produce a higher quality CRT if the rest of the circuitry couldn't use it.

Also, in order to display a reasonable number of lines at a reasonable frame rate, there was an upper limit to the length of time a single line could take to display, which realistically was in the region of 50us. 50us * 13.5MHz = 675 pixels.

Display hardware needs to have a pixel counter that reacts when a limit is reached. It is easier to detect that limit if the binary pattern of it consists of a small number of digits that need to be matched followed by a larger number of zeros. 640 is a good candidate that is close to 675: you only need to examine 3 bits to produce a counter that counts up to it.

Because of these reasons, 640 pixels became a very popular horizontal resolution.

Now, as you point out, 132 character displays can be implemented within the range of a typical TV CRT; you'd need to use 5 pixel wide characters and aim for a resolution of 660 pixels. But with 5 pixels width, and the need to have empty space between characters, that means you have a maximum of 4 pixels per character, and 4 pixel wide fonts are generally quite untidy-looking and can be hard to read.

With 5 pixels to play with things become a bit better, but a major improvement in legibility happens at 6 pixels; along with spacing this means you can fit about 91 characters in a display.

But there was little demand for this width; 132 characters is useful because along with reasonable margins and standard fixed-width fonts, it's about the most characters you can fit on common paper size (e.g. A4 landscape or A3 portrait with 0.4" margins and a 12CPI font, or 8"x11" with 0.5" margins and the same font), so was useful because (1) you could use it for word-processing and see an approximation of what you'd see on paper and (2) you could have a printer that would print the same thing you saw on screen. But there was no such threshold in the region of 91 characters.

80 characters is, as described in the comments, very close to the width you can fit on standard paper sizes in portrait orientation. Most typewriters and "letter quality" printers used either Courier Elite (12CPI) or Pica (10CPI). As long as you used reasonable margins you could fit a line of text of either of those onto an 80 character display, so it is particularly useful for word processing, and again you can easily get a printer that can print whatever you see on screen.

There were other reasons, too. As described in another comment, IBM's standard punched card format allowed 80 columns, and therefore even before switching to CRT-based terminals many computing activities were already optimized around data that would fit into 80 columns. Existing databases that were being transitioned to video display may well have had 80 column maximum lengths on fields, for example, and therefore product buyers purchasing terminals will have wanted to ensure they could display those fields. Programmers were used to programming with 80 column maximum per line.

With 640 pixels being a natural, easy-to-implement screen width for systems using bitmapped frame buffers, those systems had another good reason: it made the text display logic easier to have 8 pixel wide characters, because then to display a row of pixels for a string you could just copy a byte from the font memory into the framebuffer and increment your pointer to move on to the next character, which is much easier than any alternative font width.

As to why 25 rows dominated, it's simply a question of existing hardware and font preferences. CRTs manufactured for TVs had 4:3 aspect ratio, so along with 640 pixels width, 480 pixels height gives you square pixels, which are desirable. By far the most popular fixed-width font is and was Courier; Courier has an aspect ratio of 0.43; 8/0.43 = 18.6, so 19 pixels is probably the ideal height for each character on a square pixel screen. 25 rows * 19 pixels is the most you can fit in 480 pixels. 25*80 is also the most you can fit in a 2K buffer (for a monochrome display) or a 4K buffer (if you have a choice of 16 foreground/background colours).

  • 2
    Your explanation for 640 pixels horizontal resolution makes sense (and plays a part in the 80 character debate), but 480 pixels vertical resolution came later in the game (at least for micros); early systems had 24 or 25 lines of text with fewer vertical pixels (192 or 200 respectively). MDA on the PC used 720×350 pixels. – Stephen Kitt Feb 3 '18 at 11:03
  • 3
    Nixe explanation, but the basic assumption is off. CRT are not confined with TV specs. This includes CRT made for TV. The basic tube only defines the electron flow per time possible, the change of such and it's impact on the flourescent coating and finally the aspect ratio of usable screen space. The coating again defines the kind and duration of photons emited. Within the screen space any horizontal or vertical resolution can be used. This is soly defined by the capabilities of the electronics used to controll the CRT - which do not (and wehre not) defined by what TV made of the CRT. – Raffzahn Feb 3 '18 at 14:42
  • 3
    Back in the day, speaking about specific typefaces such as Courier on the screen was not really a relevant consideration for anyone. Once you knew (from other considerations) how many scan lines per line you had to work with, you would draw up little bitmaps for each character the terminal needed to display. If they ended up halfway legible you were happy, and asking whether the result looked more like, say, Courier or OCR-B would have sounded very strange. – Henning Makholm Feb 4 '18 at 13:30
  • 3
    @MarkRansom You're aware this is about terminals not home computers, right. Monitors do not include the same electronics as TV do. That would be wast of money. Go ahead and open a VT52, a 3270, a Wyse 100 or any other terminal, and you will find only custom boards. The only component shared with TV is the CRT (including coils) - which doesn't carry any TV restriction in terms described above. If you don't own one, feel free to stop by and I'll show you :) – Raffzahn Feb 5 '18 at 20:04
  • 2
    @Raffzahn Spot size on a given CRT is not infinitely small. Deflection coils fitting a given CRT might have specs that make them VERY hard to drive with economically viable power electronics above a certain horizontal speed - these are massive inductors electrically, and massive inductors really need to be persuaded to do anything fast. And shadow mask pitch on color monitors introduces still more resolution limits. – rackandboneman Feb 12 '18 at 9:48
19

Where did the 80x25 text terminal size come from?

Quick answer: It's one Punch Card Per Line

Resulting in 24/25 lines (cards) per screen when using a 4:3 tube and a reasonable font as dictated by proportions fostered since Roman times.

Detailed Answer:

Prior to the 1981 release of the IBM PC, the VT05 (72x20 1971), VT52 (80x12 1974), and VT100 (80x25 1978) text terminals were used on many Unix machines and the PDP11 (probably the most widely used computer at the time).

(Depends on the definition of widely, wouldn't it? *1)

You're maybe focusing a bit to much on the IBM PC and mini computers here. For one, there have been many terminal developments even before DEC started business, and even more when they did. And even more, common memory is defined by many parameters(*2).

However, just as many other computers used widths of 60 (type writer), 132 (wide printer), or convenient memory page sizes of 32 or 64.

It might be a good idea not to mix up different devices made for different usage. And I'm not sure what a memory page size does here (*3).

Type writers are meant to write letters, something no one realy thought about when doing computers in the 1950s, even less before. Then again, like with terminals, there is a whole class of typewriters, called tabulators, that did provide a carriage for 132 columns (*4). Like with mainframe terminals, they where usually only seen in back office.

In general, there where two sizes defined in in pre-electronic data processing: 80 characters per block for storage and processing (and sometimes printing) and 132 characters for printing.

The 80 character came from IBM's extended punch card design of ~1930. The 'original' Hoelerith card of 1890 had already evolved from 24 columns (characters) to 45 while keeping the basic structure. Still customers continued to ask for ever more storage capacity (*5). So one of the enginers Mr. Watson assigned the task came up with the idea of rectangular holes instead of the round one used up until then. Rectangular holes allowed (almost) doubling the density (*6) form 45 to 80 symbols while keeping the size of the card constant. This happened to be an important decision, as it only required modification on parts of the existing designs, while most of the production chain from paper manufacturing over card storage up to the mechanical parts of processing could be kept the same. Just punch thorn size and timing had to be modified (*7). Also around 1930 Remington doubled the capacity by keeping the round Hollerith holes, but storing two characters per column (90 characters per card). There where other formats as well. At the end of the 1940s (part due the war) IBM's 80 column card was the industy wide accepted standard.

In 1920 the Tabulating Machine Company (originally The Hollerith Electric Tabulating System, now part of the CTR Holding) introduced a new printer-lister system with 132 columns. While not the first to do so (*8), it became the defacto standard, thus seting the 132 characters for tabulating output - what later evolved into mainframe printers (and everything else ment to produce a ledger output).

For data processing on terminals it was a natural goal to display at least one basic data record - read, one punch card - in one display line, so data fields can be viewed as columns. The IBM 1050 Data Communications System is a typical example of an early (printing) terminal system. At the center with an adapted IBM Selectric typewriter, able to print 80 columns.

In fact, while the Selectric is usually seen as an office typewriter to hadle standard lettes, one major design goal was the capability of printing 80 characters, so it could also replace other data entry and print systems for IBM Mainframes. Mainly ofc, everything based arround the IBM Electric typewriter, used for the same role since the 1930s - unlike Selectric also available in 132 character width (*9)

That manufacturers of typewriters for simple home/office usage did go for design decision with a shorter carriage so only letter size paper (and thus less characters) can be used is unrelated here.

80 columns were therefore also the goal for CRT based terminals. There was some development needed before a 80x24 could be arcieved. Memory constrains being not the least (*10).

Next to every early manufacturer did first ship with terminals with less then 80 characters. Sometimes even in large numbers. Still, without 80 column support they where less than desirable for any serious usage beside specialized data entry. A general purpose terminal needs to support at least the most common data structure at once.

In fact, DEC's VT series does neatly show the struggle for 80 characters and might be used as an example of non printing terminals toward the 80/132 character per line goal:

  • The original VT05 of 1970 offered 72x20 characters in a 4:3 fashion.
  • The next iteration as the VT50 of 1974 with 80x12 already reached the 80 characters goal, but mostly due memory constrains only 12 lines where displayed. Since a 4:3 CRT was used, the resulting picture looked a bit like having every other line blanked out.
  • A bit more than a year later the VT52 of 1975 supported 80x24 characters. Literally 'filling the blank lines' and even more, as the greatly (for back then) expaded memory allowed to store a window of more than 24 lines, resulting in the ability to scroll up and down thru this buffer (*11).
  • In a 'last' step the VT100 of 1978 introduced a 132x24 display, so now every 'proessional' output could be shown.

Now the 25 lines is a different but related story.

Tecnically the gold standard of all CRT based terminals, the 3270, did not display 24 but 25 lines. Just this 25th line was (usually) not accessible to user programms, as it did hold status information about the connection, session status or terminal/keyboard mode. So on a user level every cometitor had to offer (at least) 80x24, which most did. The IBM PC text adaptors where designed with a terminal emulation in mind. Thus the hardware had to provide a 25th line. A line general available for any programm.

That's something not restricted to the IBM PC. Many microcomputers before did offer 25 lines because of that. Heck, even the DEC VT100 did when it was transformed as VT180 into a CP/M machine.

Conclusion: 80/132 character come from the age of punch cards, 24/25 lines due the 4:3 dimensions of common CRTs

TV's became quite blurry approaching 132 (B&W@625px) char so that seems to be the hardware maximum width upper limit.

The whole TV system is made to display continous greyscales/colours as they apear in real life pictures, not sharp contrast as needed for text display. That's why electronics, coild and tube coating for dedicated text displays differ from such made for TV purpose. A TV set, includingthe full path can barly produce 40 characters per line (6/7px per char) in acceptable quality.


*1 - If most used is by computing power, or amount of users, then a single /370 installation might outclass a hundret PDPs. It's much like baking a peanut cake takes man more peanuts than one with a coconut filling takes coconuts :)

*2 - And it's a strange thing anyway. DEC's mini computer terminals where outsold by a magnitude by mainframe terminals like IBM's 3270. While mainframe terminals where used in huge installations in companies and government where only seen by a rather small number of employees working them every day all day, DEC products gained a hold in universities where Joe Average was introduced to them for a short time and moved. In most cases to jobs with (back then) no contact with terminals for the rest of their life.

*3 - even less I can see where pages of 32 or 64 - at least not when amended with a unit of byte or KiB - could be anywhere conveniant.

*4 - Depending on the manufacturer there have been many differents sizes even way passt 200 columns. But 132 and 136 became somewhat a standard during the 1930/40s

*5 - The request for ever more storage capacity (and processing power) by users seam to be a constant during all history of data handling.

*6 - It's a bit like the move from FM to MFM for floppies, isn't it?

*7 - In the late 1960s IBM tried to introduce a 96 column card together with the Sytsem/3 series. Here not on density got improved but at the same time the size got almost halved. The Idea was quite like the 3.5" floppy: A card should well fit into a shirt pocket. It did prove unsucessful was noone else, not even within IBM adopted it. While the System/3 eventually evolved into the AS/400, the 96 column card was outlived by it's predecessor

*8 - Before CTR's printer tabulator there was the already quite successful Powers Printing Tabulator. Again not the first, as the Royden system of Peirce Patent Company already had one - not to mention custom developments like done at Prudential Insurance).

*9 - Since an IBM Electric was used as genuine terminal for the very first DEC machine (PDP-1), it could be argued that DEC's 80 column orientation is orginated here :))

*10 - Thats why Tectronix introduced storage tube based terminals. First the 600 series devices which later evolved into the 4000 terminal series and further into the well known 4010 family. No dedicated memory needed for screen refresh - but also no real way to do things like scrolling.

*11 - It also started the downward spiral of decadence by offering lower case letters. Something real programmers (and users therefore) never needed in the first place.

  • Could the 72-character width of the VT105 have been influenced by the commonality of Fortran that the time? Fortran only used columns 1-72 of a punched-card (the last 8 being designed to hold a "sequence number" so you could reassemble a deck when dropped!). – TripeHound Feb 5 '18 at 13:41
  • @TripeHound The same is true for next to any other language back then. Assembly used for example the first 8 columns and so on. Since this sequence number was (usually) handled manually, a not displaying it (and allowing modification) wouldn't have made much sense. – Raffzahn Feb 5 '18 at 13:46
  • "_ not displaying it (and allowing modification) wouldn't have made much sense_" Do you really mean not displaying it would not have made sense? I.e. only displaying the sequence numbers would have made sense? AFAICT, sequence numbers would only make sense on physical cards; once you're using a terminal, you don't need them. Since Fortran can only "use" 72 columns, I was just wondering if that might have been a factor in the VT105's design. – TripeHound Feb 5 '18 at 14:04
  • @TripeHound As I said, without the numbers it would not make sense. These numbers where handles manually. Just think of it, how do you insert a line between two others using an early terminal? By typing the new line with a number value between the ones you want it to go. Like 00011000 to be inserted between 0001000 and 00020000. Insert keys, or alike are decatent tools not invetned these days. Not to mention copy&past. – Raffzahn Feb 5 '18 at 14:16
  • @TripeHound Or more simple, if you have ever worked with classic home computer BASIC you know the drill about how to insert a line between line 10 and 20. Right? Type a new line 15. That's exactly the same way it worked in punch card times. Except line numbers where 8 characters (Not Numbers!).In fact, the combination of line numbers and labels into just line numbers and puting them in font is one of the simplifications over FORTRAN that BASIC got. – Raffzahn Feb 5 '18 at 14:21
11

The 80 columns comes via IBM terminals such as the 3270, which themselves got it from IBM punched cards. There was no particular reason to pick 80 over some other width for punched cards except that it is a nice round number and reflects the engineering limits of the day.

The 25 rows is due to the power-of-two nature of RAM chips. These were extremely expensive at the time and so the framebuffer size would be chosen to make efficient use of commonly-available chips. Assuming 80 character columns, 2^10 characters is 12.8 lines, 2^11 is 25.6 lines, and 2^12 is 51.2 lines. The first doesn't put enough text on screen to be useful. The latter has a lot going for it and some terminals did offer it, but the text is quite small and squashed. The intermediate size with 25 lines is just right.

  • 1
    I'm not sure whether the memory usage or the fact that using standard fonts (e.g. Courier) 80x25 is the closest approximation of the 4:3 aspect ratio that CRTs were available in was more important. I suspect both may have been involved in decisions; certainly the memory usage wasn't important for the decision in the case of the PC, as there was another 12KB of unused memory sitting on its display adapter when in text mode... – Jules Feb 3 '18 at 11:05
  • 4
    If I remember correctly, “back in the day”, 25 lines was not all that much of a standard on terminals. I used plenty that only had 24 lines. Some used the 25th line as a status line or message line. It was not really usable except through special escape codes. 25 lines became more common in the 80’s when the IBM PC became popular and it had 25 lines in its text mode. – mannaggia Feb 3 '18 at 12:48
  • @Jules the original MDA had 4KB according to internet sources. This makes for 80x25x2 - Mind that there is a character and an attribute byte! – rackandboneman Feb 5 '18 at 10:23
  • 1
    Before the IBM3270, the IBM2260 model 3 already offered 80 characters per line. – Raffzahn Feb 5 '18 at 23:17
  • 1
    @Raffzahn: I did a painfully large amount of my university programming on 2260 terminals. Ouch! – Steve Feb 7 '18 at 3:38

Your Answer

By clicking "Post Your Answer", you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.