Speaker 1: Welcome to Tech Stuff, a production from I Heart Radio.
Speaker 1: Hey there, and welcome to tech Stuff. I'm your host,
Speaker 1: Jonathan Strickland. I'm an executive producer with I Heart Radio
Speaker 1: and I love all things tech. And for today's episode,
Speaker 1: we're going to learn about old computer graphics standards. Don't
Speaker 1: run away. This is actually really interesting. We'll learn how
Speaker 1: they became standards in the first place, and what the
Speaker 1: company IBM had to do with all of this, and
Speaker 1: why some early decisions by IBM would lead to the
Speaker 1: company extricating itself from the personal computer business altogether a
Speaker 1: couple of decades later. Now, when I was growing up,
Speaker 1: my family owned a couple of personal computers over the
Speaker 1: course of my childhood. We were in that rare small
Speaker 1: percentage of households with a personal computer back in the
Speaker 1: nineteen eighties, and our first computer was an Apple to
Speaker 1: E with a mono chromatic screen that could only display
Speaker 1: Matrix green style letters. I seem to recall that we
Speaker 1: eventually got a monitor one hundred, which is Apple's color monitor,
Speaker 1: and that was compatible with the two E, assuming that
Speaker 1: you had a too E with the appropriate interface card installed.
Speaker 1: But honestly, that memory might be conflated with the second
Speaker 1: personal computer that my dad would purchase. See, Dad got
Speaker 1: these computers in order to work on his novels. He
Speaker 1: wrote his first couple of books on the old Apple
Speaker 1: to E. I don't know if he still has them,
Speaker 1: but for years he had these novels stored on old
Speaker 1: five and a quarter inch floppy disc and those discs
Speaker 1: could hold about a hundred forty kilobytes worth of information each,
Speaker 1: so to be safe, Dad would typically store two to
Speaker 1: three chapters per disk, since his novels were too long
Speaker 1: to fit onto just one five and a quarter inch disc,
Speaker 1: and the Apple to E had no hard drive. Anyway,
Speaker 1: I digress, So I love thinking about those old times.
Speaker 1: I remember going through sleeves of discs and seeing Dad's
Speaker 1: old novels on there. Our second computer that we owned
Speaker 1: as a family was a two eight six. But what
Speaker 1: does that actually mean. Well, it was a personal computer
Speaker 1: that relied on the Intel eight two eight six central
Speaker 1: processing unit, and it also relied on MS DOSS as
Speaker 1: the operating system. So this computer fell into what we
Speaker 1: would call an IBM compatible computer back in the day.
Speaker 1: It used components and an operating system that allowed it
Speaker 1: to run any software designed for those IBM specific machines.
Speaker 1: I think of this as an interesting part of personal
Speaker 1: computer history and it helps illustrate a shark contrast between
Speaker 1: IBM S strategy and apples. So let's backtrack a little
Speaker 1: bit now, before there were personal computers, Back when you
Speaker 1: needed to work for a special research facility or be
Speaker 1: enrolled in an engineering course in the universe s D,
Speaker 1: or maybe one of a handful of folks who knows
Speaker 1: about computers and works for a big financial company, or
Speaker 1: maybe you're in the military. Back in those days, computers
Speaker 1: really didn't have monitors at all. Computer graphics weren't even
Speaker 1: a thing yet. The computer would typically print out the
Speaker 1: results of a computational process on some sort of paper
Speaker 1: or paper tape. Richard Garriott, who would go on to
Speaker 1: create the Ultimate Computer Game series before You would become
Speaker 1: one of seven private citizens to visit the space Station,
Speaker 1: programmed his first games on a computer that would print
Speaker 1: out each move of his Dungeon Crawler. So imagine a
Speaker 1: top down view of a dungeon Crawler, except you're not
Speaker 1: looking at it on a screen. You actually have to
Speaker 1: print out each move. So you make a move in
Speaker 1: the game, the printer would print out a new display
Speaker 1: of what had happened, and all the figures were represented
Speaker 1: by the basic characters that the printer could replicate, so
Speaker 1: it was limited to whatever the printer could print, and
Speaker 1: that was typically stuff like your standard letters, numbers, and
Speaker 1: symbols on a keyboard. So making a move would require
Speaker 1: the whole system to print out a new picture showing
Speaker 1: the results of that move. So playing the game took
Speaker 1: a while. Obviously the refresh rate was terrible, but eventually
Speaker 1: engineers began to create a way for computers to display
Speaker 1: information over a screen. You might connect the computer to
Speaker 1: a regular old television system and you might have a
Speaker 1: little adapter to do that, or, as would later become
Speaker 1: the norm, you would build computer monitors specifically for the
Speaker 1: systems you were creating, and later we would call these displays.
Speaker 1: But I'm so old i still refer to them as
Speaker 1: computer monitors because that's just how it cemented itself in
Speaker 1: my brain. Obviously, you've got to have some sort of
Speaker 1: bridge for a computer to be able to send meaningful
Speaker 1: information to a display, which will then follow the instructions
Speaker 1: sent by the computer to represent the information to the
Speaker 1: end user. There's got to be some sort of in
Speaker 1: interface to make this happen. On the computer side. As
Speaker 1: well as a port that allows a user to connect
Speaker 1: the computer to the display, there has to be some
Speaker 1: sort of physical connection between the two, and in the
Speaker 1: early days of personal computers, there was no set, standardized
Speaker 1: way to do this. The technology used in one computer
Speaker 1: system wasn't compatible with another, so you couldn't mix and
Speaker 1: match monitors and cables and based systems together. These were
Speaker 1: the wild West days of computing, when making a choice
Speaker 1: as a consumer was complicated because you had no way
Speaker 1: of knowing if the computer you chose was going to
Speaker 1: stand the test of time. You could end up purchasing
Speaker 1: a system at great cost and see the parent company
Speaker 1: crumble and all support for that system would wither away.
Speaker 1: And software developers were affected by this too in a
Speaker 1: big way. Developing software can be an arduous process. Back
Speaker 1: in the early days, it was feasible and even common
Speaker 1: for a single programmer to produce a piece of software
Speaker 1: for a system, But developers had to make the same
Speaker 1: sort of bets that consumers were making. They had to
Speaker 1: choose which systems they would develop four and they would
Speaker 1: hope that they made the right bet and it often
Speaker 1: meant dedicating a lot of their time to learning how
Speaker 1: to program for that particular computers operating system. Since the
Speaker 1: OS of say, an Apple computer was different from that
Speaker 1: of the Texas Instruments trash a D system, which was
Speaker 1: different from the Commodore sixty four, et cetera. So in
Speaker 1: the early days of personal computers, there were many competing
Speaker 1: systems to choose from, both as a consumer and as
Speaker 1: a developer. Apple, Commodore, and Texas Instruments were three of
Speaker 1: the big ones here in the United States, and they
Speaker 1: weren't alone, but they didn't have to contend with a
Speaker 1: really big name in computers for a few years, and
Speaker 1: that was I b M. And that's because initially IBM
Speaker 1: chose to concentrate on its traditional enterprise focused business and
Speaker 1: not really get into the consumer market. They were making
Speaker 1: products and services for other companies, not for end users
Speaker 1: like me and you. Now that would change in nineteen
Speaker 1: one when IBM introduced the IBM Personal Computer or the
Speaker 1: fifty one fifty. IBM didn't invent the term personal computer,
Speaker 1: but the fact that this juggernaut had used the phrase
Speaker 1: for its own product would shape the terminology for computers
Speaker 1: in general, we all know that ultimately the two major
Speaker 1: systems to emerge from those early days were Windows based
Speaker 1: PCs and Mac computers from Apple. These would be the
Speaker 1: two big ones for consumers. There are obviously others out
Speaker 1: there there, Linux systems, for example, but for the majority
Speaker 1: of people out there, it's the Windows based PC and
Speaker 1: Apple's Mac. Well, we call the Windows based machines PCs.
Speaker 1: Because of IBM and its influence, a MAC is a
Speaker 1: personal computer. To a MAC is a PC in the
Speaker 1: sense it's a personal computer, but you wouldn't call it
Speaker 1: a PC typically because to us, PCs means a machine
Speaker 1: built upon ibm s approach, and that leads us into
Speaker 1: the choices IBM made that would ultimately contribute to the
Speaker 1: company getting out of the personal computer business. Further down
Speaker 1: the road. It all comes down to how they chose
Speaker 1: to get into it in the first place. You see,
Speaker 1: when IBM was making the personal computer, the company wasn't
Speaker 1: exactly putting its full support behind that effort in order
Speaker 1: to produce the system cheaply, which would mean the company
Speaker 1: could sell the manufactured systems at a premium and have
Speaker 1: a really sweet profit margin. You know, you you buy
Speaker 1: cheap and you sell high. IBM engineers built the PC
Speaker 1: using off the shelf components. The company didn't build a
Speaker 1: custom made microprocessor or anything. Instead, the original IBM PC
Speaker 1: used an Intel eight chip as the CPU. In a
Speaker 1: similar fashion, the engineers used other standard components to build
Speaker 1: out the PC, and they made an arrangement with Microsoft
Speaker 1: to supply the operating system for this new personal computer.
Speaker 1: And the story behind all of that operating system stuff
Speaker 1: gets really super juicy and bonkers. That has betrayal and backstabbing.
Speaker 1: It's like a Game of Thrones episode. For one thing,
Speaker 1: Microsoft was not the company to originally develop DOSS, but
Speaker 1: it's sure as heck profited from it. But that's another story.
Speaker 1: The operating system that IBM used was called PC DOSS,
Speaker 1: but IBM did not establish an exclusivity agreement with Microsoft,
Speaker 1: and so Microsoft would also develop another OS called MS DOSS,
Speaker 1: which was to all intents and purposes, identical to PC DOSS,
Speaker 1: and it would remain so for several versions. Now, all
Speaker 1: the pieces were in place for IBM's eventual decision to
Speaker 1: get out of the consumer PC market, and it was
Speaker 1: just to the point when it was getting in. You
Speaker 1: see the basic components for the computers were available to anyone,
Speaker 1: and the operating system was likewise available through licensing with Microsoft.
Speaker 1: So an enterprising computer company with much lower operating costs
Speaker 1: than a behemoth like IBM could conceivably swoop in, build
Speaker 1: a reasonable facsimile of an IBM PC machine using similar components,
Speaker 1: and include a licensed version of MS DOSS as the
Speaker 1: operating system. In presto, you have a computer that runs
Speaker 1: just like an IBM PC, including support for all software
Speaker 1: designed for the IBM system, and it's at a fraction
Speaker 1: of the cost. This gave birth to an entire subclass
Speaker 1: of computers called the IBM clones or IBM compatibles. The
Speaker 1: two six I mentioned at the top of this episode
Speaker 1: was just such a machine. We didn't known an official
Speaker 1: IBM Burstal computer, but rather a machine with the same
Speaker 1: sort of guts inside and running MS DOSS. It would
Speaker 1: take a long time for all of this to actually
Speaker 1: catch up to IBM, mind you, it's not like they
Speaker 1: were shot and sunk as soon as they launched. The
Speaker 1: company would ultimately pull back from the PC business, but
Speaker 1: it would stick around long enough to make an enormous
Speaker 1: influence on computers and programming and that includes graphics. When
Speaker 1: the IBM PC debut in nine, the company offered two
Speaker 1: options when it came to graphics. Each was a type
Speaker 1: of circuit board that could be plugged into the motherboard
Speaker 1: of the computer, the sort of an expansion slot. These
Speaker 1: types of cards were called add in boards or A
Speaker 1: I B s, and they represented ways to add capabilities
Speaker 1: to a base computer model. Sometimes those abilities were fairly
Speaker 1: simple additional features. Sometimes, like in this case, they were
Speaker 1: required in order to send images to an external display.
Speaker 1: So without one of these two cards you wouldn't have
Speaker 1: any way of sending information to a computer monitor. The
Speaker 1: first of the two was called the Monochrome Display Adapter
Speaker 1: or m d A. This was a video card installed
Speaker 1: on the PC that would output monochromatic signals to the monitor. Furthermore,
Speaker 1: it didn't do so in a pixel addressable way. So wait, wait, wait,
Speaker 1: what does that mean? All right, So let's remember that
Speaker 1: the images we see on displays and monitors and screens
Speaker 1: like on smartphones are made up of little points of light.
Speaker 1: By changing the brightness and color of those points of light,
Speaker 1: you can create full images. It's not that different from
Speaker 1: the technique used by the famous painter George Serat in
Speaker 1: his famous work A Sunday Afternoon on the Island of
Speaker 1: Lagrange Jatt. In that painting, all the images consist of
Speaker 1: tiny dots of paint, but when you view it from
Speaker 1: a distance, they form the shapes of people spending a
Speaker 1: lovely day at a park along the Sin River. It's
Speaker 1: an example of a style called point to list, and
Speaker 1: it's perhaps the most famous version of this of all time.
Speaker 1: But television's computer monitors and electronic displays like the one
Speaker 1: smartphones use have a similar technique, except they use points
Speaker 1: of light rather than points of paint. Now, as I mentioned,
Speaker 1: the m d A wasn't pixel addressable, and addressability refers
Speaker 1: to the capacity to separately access individual units of something, so,
Speaker 1: in this case pixels. A pixel addressable approach allows the
Speaker 1: computer system to send specific instructions to each and every pixel,
Speaker 1: which in turn lets computers send full images and graphics
Speaker 1: to a connected monitor. But m d A didn't have
Speaker 1: that capability, so you couldn't send a black and white
Speaker 1: photo to display on a connected monitor. The m d
Speaker 1: A was dedicated purely to text mode. The screen consisted
Speaker 1: not of pixels so much as it did of character cells.
Speaker 1: So imagine a box that's large enough to hold the
Speaker 1: large ist text character, like an uppercase G or W
Speaker 1: or something. Now imagine that the entire screen is a
Speaker 1: grid of those boxes. Each box is exactly the same shape,
Speaker 1: so it can a lot for the largest of characters
Speaker 1: inside of it. But that's all they can fit inside.
Speaker 1: Each box is one character. You couldn't create more complex images,
Speaker 1: only pictures that consisted of those basic characters, just like
Speaker 1: the old printers that I mentioned earlier that Richard Garriott
Speaker 1: had been playing with. Well, with these displays you could
Speaker 1: get really good resolution on those characters, so the images
Speaker 1: were crisp and clear. The pictures, the text was incredibly
Speaker 1: clear to read. It was very simple too. With these displays,
Speaker 1: you could get really good resolution on those characters. The
Speaker 1: text is crisp and clear. And that was a big
Speaker 1: drop because a lot of these computers were meant to
Speaker 1: go towards small businesses, where presumably the applications you're running
Speaker 1: are mostly text based. There were some tradeoffs because the
Speaker 1: screen was made up of a grid of equal sized boxes,
Speaker 1: and each of those boxes could contain one character. Every
Speaker 1: letter would use up the same amount of space on
Speaker 1: the screen. So an upper case W, which is about
Speaker 1: as wide as it gets, would take up the same
Speaker 1: amount of space as an upper case I. Now I
Speaker 1: don't mean that the upper case I would be wide,
Speaker 1: but rather it would occupy a spot that would be
Speaker 1: surrounded by an invisible box the same size as the
Speaker 1: invisible box that goes around the upper case W. So
Speaker 1: you get this weird spacing between letters in the same word,
Speaker 1: if you're using a collection of wide and narrow letters,
Speaker 1: it would just look off. It's called monospace font. It's
Speaker 1: it's the same sort of thing that you would see
Speaker 1: with a lot of printers and typewriters because they were
Speaker 1: limited to having all of their stamps at the same size,
Speaker 1: even if the letters were different sizes. In contrast, most
Speaker 1: fonts we use today are proportional fonts, which means individual
Speaker 1: characters are given space proportional to their own size, so
Speaker 1: you don't get these odd gaps between letters that should
Speaker 1: be right next to each other. But that was just
Speaker 1: one option for the IBM PC. The other option had
Speaker 1: direct addressability for pixels. It also had support for color,
Speaker 1: so you could have color graphics with this version, and
Speaker 1: it was called c g A and we'll talk about
Speaker 1: it more after the break. So c g A stands
Speaker 1: for Color Graphics Adapter, and describing this technology will also
Speaker 1: require us to examine a couple of other sets of
Speaker 1: standards that affected the graphics that displayed on old c
Speaker 1: g A systems. C g A had big limitations had
Speaker 1: compared to graphics cards today, they seem absolutely stone a.
Speaker 1: The c g A system could support four different modes officially,
Speaker 1: but clever programmers figured out ways to boost this. We'll
Speaker 1: get into that. There were two text modes and two
Speaker 1: graphic modes for the c g A card. The first
Speaker 1: text mode supported four bit color and could display up
Speaker 1: to forty characters per line, with twenty five lines making
Speaker 1: up the total screen space, so twenty five like you
Speaker 1: could stack twenty five vertically or you could stack forty
Speaker 1: horizontally across the screen. The pixel aspect ratio was one
Speaker 1: to one point two. But what does that mean. Well,
Speaker 1: these pixels were not perfect squares. They were actually taller
Speaker 1: than they were wide. With that ratio of one for
Speaker 1: width to one point two for height, this would mean
Speaker 1: that the visual resolution of the screen was more like
Speaker 1: three twenty by two forty In actuality, it was three
Speaker 1: twenty by two hundred. So why the three forty, Well,
Speaker 1: because the pixels were longer than they were wide. If
Speaker 1: you were clever with the way you create your computer graphics,
Speaker 1: it would seem almost like you had stacked more pixels vertically,
Speaker 1: and you could take advantage of things and make a
Speaker 1: picture that had that sort of look as if it
Speaker 1: was a resolution of three twenty by two forty. However,
Speaker 1: if you needed to cut things short and the ratio
Speaker 1: just wasn't working for you, it would become a detriment,
Speaker 1: not an asset. However, if you do the math, you'll
Speaker 1: see that this means every character on screen would have
Speaker 1: eight pixels dedicated to it. And here's how I did that.
Speaker 1: You just take the resolution with that's three twenty pixels.
Speaker 1: You divide that by the number of characters that could
Speaker 1: fit on one line. Remember it's forty characters across, so
Speaker 1: three twenty divided by forty you get eight. The same
Speaker 1: is true vertically. You can have twenty five characters stacked
Speaker 1: from top to bottom on the screen, and the vertical
Speaker 1: resolution is two hundred pixels top to bottom. Two hundred
Speaker 1: divided is eight. So each character and the adapter supported
Speaker 1: two fifty six different characters could use eight pixels for
Speaker 1: display purposes. The four bit color part also needs explaining.
Speaker 1: So a bit is a single unit of computer information,
Speaker 1: and we represent it as either a zero or a one,
Speaker 1: So that means a bit has one of two possible
Speaker 1: states at any given time. You can think of it
Speaker 1: as off or on, zero or one. We have four
Speaker 1: bits for four bit color, so that means we can
Speaker 1: think of having to the possible number of states per bit.
Speaker 1: Raised to the power of four, that's equal to sixteen.
Speaker 1: So four bit color could support sixteen different colors total,
Speaker 1: not all at once, but total, like, that's the number
Speaker 1: of colors this display could show. In text mode, programmers
Speaker 1: could choose a foreground and background color, choosing from those
Speaker 1: sixteen pre made colors. In addition, a bit for the
Speaker 1: foreground color could be dedicated to make the character blink,
Speaker 1: so you can have blinking text in the foreground the
Speaker 1: blinking bit the bit responsible for that blinking command, was
Speaker 1: repurposed for the background color, and it's served as an
Speaker 1: intensity bit instead. Intensity essentially means how dark or bright
Speaker 1: that particular color happens to appear. The second text mode
Speaker 1: was an eighty by twenty five four bit color mode,
Speaker 1: so that meant you could fit eighty letters across in
Speaker 1: a line twenty five lines per screen. These letters were
Speaker 1: half as wide as the forty by twenty five versions.
Speaker 1: Makes sense, right, you could fit twice as many across
Speaker 1: the screen, they must be half as wide as the
Speaker 1: forty five. The pixel ratio the this would create for
Speaker 1: a visual representation of the resolution was six forty by
Speaker 1: four eighty. Now, in reality, those pixels again were taller
Speaker 1: than they were wide. In fact, they were notably taller
Speaker 1: than they were wide, so the real resolution, the true
Speaker 1: resolution was six forty by two hundred, but it looked
Speaker 1: like six forty eight. More programs were written in this
Speaker 1: mode because that you could fit way more text on
Speaker 1: a screen than you could with the forty five mode.
Speaker 1: It was less chunky, but most text based programs relied
Speaker 1: on the eighty by twenty five approach. If you were
Speaker 1: using a word processor or something, this was the style
Speaker 1: that you were most likely looking at. That being said,
Speaker 1: the resolution of text on a C G A machine
Speaker 1: was lower than what you would have found on the
Speaker 1: monochromatic M D A computers, so it was a tradeoff
Speaker 1: You could have a c g A ibm PC running
Speaker 1: on this eighty by twenty five text mode for a
Speaker 1: specific program and it would be fine. It just wouldn't
Speaker 1: be as crisp and clear as the monochromatic m d
Speaker 1: A text specific machines onto the graphics modes. However, that's
Speaker 1: what we're really interested in, right, What actually made the images,
Speaker 1: not just the text on these computers. Well, the graphics
Speaker 1: mode for the c g A machine had, like I said,
Speaker 1: two different modes to it, two different official modes to it.
Speaker 1: One was a three twenty by two hundred resolution, but
Speaker 1: the pixel ratio was one to one point two, so
Speaker 1: again it looked more like three by two forty. This
Speaker 1: mode could display up to four colors at any one time,
Speaker 1: using one of two pre selected palettes. This is why
Speaker 1: if you ever look at old c g A games,
Speaker 1: they all start to look really similar. They're all using
Speaker 1: the exact same colors for colors. The programmers were working
Speaker 1: under some really tight restrictions. The first palette of colors
Speaker 1: include did black, green, red, and yellow. This was palette zero.
Speaker 1: The second palette, a k A Palette one had black, cyan, magenta,
Speaker 1: and white. Now, as you can imagine it's pretty tough
Speaker 1: to create good graphics with this limited color selection. Now
Speaker 1: on top of that, programmers could use low intensity or
Speaker 1: brightness or high intensity or brightness, So that would add
Speaker 1: another variation. And I've seen the same screen presented in
Speaker 1: both palettes at both levels of intensity, and there are differences,
Speaker 1: like you can get a very different effect going from
Speaker 1: one to the other. So programs had a little bit
Speaker 1: of flexibility, but not by much. In both palettes, black
Speaker 1: is color zero, and color zero was actually customizable. You
Speaker 1: could swap it out. You could choose one of the
Speaker 1: other fifteen colors that c g A supported and use
Speaker 1: that as color z Yerow. Black would no longer be used.
Speaker 1: The flip side of this is that the new color
Speaker 1: would replace color zero in all of the image, So
Speaker 1: if you wanted the image to have black in it,
Speaker 1: it would get replaced by whatever color you had now
Speaker 1: designated as color zero. If you wanted to have green
Speaker 1: included with your white, cyan, and magenta, then it would
Speaker 1: mean that if you had a scene with a night sky,
Speaker 1: that night sky is going to be green because it
Speaker 1: would normally be black, but you've designated that color to
Speaker 1: go to green. Instead of black. So yeah, very limited. However,
Speaker 1: another trick programmers could do is leverage the way CRT
Speaker 1: screens work. I'm gonna gloss over the details, but in
Speaker 1: CRT screens there is an electron gun and it paints
Speaker 1: the back of the screen with electrons. That causes phosphor
Speaker 1: the glow as the phosphor absorbs electrons. But the painting
Speaker 1: is the important part. It happens at the top line
Speaker 1: on the screen. It goes all the way across horizontally,
Speaker 1: then it moves down the line and it does this again,
Speaker 1: and it does this really fast. A slow CRT monitor
Speaker 1: would repaint the entire screen sixty times a second. But
Speaker 1: this means that if you're programming, you know precisely what
Speaker 1: parts of an image are going to be painted first,
Speaker 1: because it's going to go top to bottom. So if
Speaker 1: you're meticulous, you can swap from one pallette set to
Speaker 1: the other pallette set in mid screen draw. That allows
Speaker 1: for slightly more colors to display on screen at one time,
Speaker 1: or at least what we perceive to be at one time,
Speaker 1: because our perception lags behind this refresh rate. So in
Speaker 1: any given band of horizontal lines, you would be limited
Speaker 1: to four colors because you'd be limited to one pallette. However,
Speaker 1: you could swap from band to band, so you might
Speaker 1: have a screen with an image in it that has
Speaker 1: the four colors represented from palette zero, and then at
Speaker 1: the bottom you swap out to pal at one and
Speaker 1: you get a little more variety that way. The second
Speaker 1: official graphics mode that the c g A chip supported
Speaker 1: was a six forty by two hundred one bit color mode.
Speaker 1: Now this was a monochromatic approach, so you had black
Speaker 1: the background color, and then whatever the foreground color was,
Speaker 1: whether it's white or green or amber. With color monitors,
Speaker 1: you could technically choose any of the sixteen colors the
Speaker 1: c g A chip supported to be the foreground color.
Speaker 1: And the bonus of this was that it allowed for
Speaker 1: more fine detail. It was a greater resolution than what
Speaker 1: you would find in the other mode, but now you
Speaker 1: were reduced to just one color in addition to the background.
Speaker 1: This mode was primarily meant for users who had a
Speaker 1: monochromatic display but who wanted to have graphics support. They
Speaker 1: didn't want to just get the text based m d
Speaker 1: A approach. You could enable this mode on a color
Speaker 1: display and swap out that foreground color, like I said,
Speaker 1: but you were still limited by that one color on
Speaker 1: a screen at a time. There were a couple of
Speaker 1: other tricks programmers could use to to kind of fool
Speaker 1: the system to get more colors on screen. One involved
Speaker 1: using the text mode instead of the graphics mode. So
Speaker 1: the text mode actually supported more colors on screen at once.
Speaker 1: And if you could just make your game out of text,
Speaker 1: then you can have much more colorful games. However, there
Speaker 1: are games that are made up of text. So how
Speaker 1: do you adjust for that. Well, one of the two
Speaker 1: fifty six characters that you could choose from was a
Speaker 1: simple shape. It took up half of the character cell.
Speaker 1: So one half of the cell would be this color
Speaker 1: and the other half would be the background color. So
Speaker 1: you have a foreground color in the background color. However,
Speaker 1: what if you set both the foreground and the background
Speaker 1: to the exact same color, Well, you would get a
Speaker 1: solid block of that color, and using those blocks, you
Speaker 1: could create simple graphics. But it's kind of like using
Speaker 1: wooden blocks that you would have as a kid. Right,
Speaker 1: you can make stuff out of it, but it's gonna
Speaker 1: be chunky. You're not gonna get the fine graphic detail.
Speaker 1: You would down to the pixel level. Now, your pixels
Speaker 1: are much much bigger than they would have been otherwise,
Speaker 1: so the resolution was just one sixty by one hundred
Speaker 1: in this mode, but you'd be able to use a
Speaker 1: lot more colors. The last trick programmers could rely upon
Speaker 1: had to do with the monitors themselves, So there were
Speaker 1: two big categories at this time. The IBM PC had
Speaker 1: an R G B I monitor, and r G B
Speaker 1: I stands for red, green, blue, and intensity, which again
Speaker 1: is the brightness of a color. But you could also
Speaker 1: use a composite video monitor like a television set. You
Speaker 1: could use that as your computer monitor, and you could
Speaker 1: feed video to it through a composite cable. That's the
Speaker 1: yellow r c A cables of old. That one cable
Speaker 1: would carry out all the video information to the display. However,
Speaker 1: composite video monitors had an interesting tendency. Colors would bleed
Speaker 1: into each other a little bit, and that bleed that
Speaker 1: melding of colors would present other colors that you might
Speaker 1: not otherwise be able to create in c g A graphics,
Speaker 1: So you could kind of create through the process of transmission,
Speaker 1: brand new colors. So it's not like it's in the programming.
Speaker 1: It's literally impairing two different colors that could be represented
Speaker 1: in C G A next to each other, because you know,
Speaker 1: when it's going to be shown on a screen, they're
Speaker 1: going to bleed together a little bit, so you get
Speaker 1: a more rich from a color perspective image. However, there
Speaker 1: was a drawback to this as well. It would mean
Speaker 1: that the image is a little more blurry and not
Speaker 1: as sharp, so it would almost be like you're ending
Speaker 1: up with a lower resolution image. However you would get
Speaker 1: more colors. So it just depended on what was most
Speaker 1: important to you when you were putting these things together.
Speaker 1: But why was there such a limitation on colors in
Speaker 1: the first place, Like, what was the factor that was
Speaker 1: making this be so primitive. Well, it wasn't because of
Speaker 1: display technology. Like color televisions have been around since the seventies,
Speaker 1: really earlier technically, but definitely commercially. They've been available since
Speaker 1: the seventies, and there's no reason why a monitor wouldn't
Speaker 1: be able to handle lots of different colors. The real
Speaker 1: issue lay with computer memory. See, in the early days,
Speaker 1: computer memory was a pretty valuable and scarce resource. It
Speaker 1: was expensive, it was hard to implement. Most computers had
Speaker 1: a very limited amount of random access memory or RAM.
Speaker 1: Computers pulled data into RAM from some other storage source
Speaker 1: like a floppy disk or a hard drive, and then
Speaker 1: the computer response to input provided by the user or
Speaker 1: by some program and performs operation on the data in
Speaker 1: this memory, thus producing output. The more information the computer
Speaker 1: can hold in RAM, generally speaking, the better because it
Speaker 1: brings downloading times and speeds things up quite a bit.
Speaker 1: But RAM was pretty precious in the early days of computing.
Speaker 1: The IBM PC shipped standard with just sixteen kilobytes of RAM,
Speaker 1: so rather than eat up that memory by supporting more
Speaker 1: colorful graphics, IBM chose to give limited support to color
Speaker 1: representation and reserve that RAM for other stuff like, you know,
Speaker 1: actually helping the computer execute programs. Other companies looked at
Speaker 1: IBMS c g A approach and they reverse engineered it.
Speaker 1: Soon they could also produce computers that supported c g
Speaker 1: A graphics. Thus c g A approach became a standard,
Speaker 1: and originally you could just think of it as being proprietary.
Speaker 1: It was an IBM proprietary technology, but through reverse engineering
Speaker 1: it became a standard in computer graphics and some of
Speaker 1: these third parties took this approach a step further. There
Speaker 1: was a company called Hercules Computer Technology that introduced the
Speaker 1: Hercules Graphics Card in two. The card came about as
Speaker 1: a matter of necessity. The developer needed a way to
Speaker 1: display Thai characters from from the language of Thailand, and
Speaker 1: that was his native language was Thai, and in a
Speaker 1: resolution similar to I B M S M D A.
Speaker 1: That was the goal, like to have these very clear,
Speaker 1: crisp figures in the Thai language, but the m D
Speaker 1: A didn't support that alphabet. The Hercules Graphics card had
Speaker 1: a resolution of seven twenty by three fifty, but unlike
Speaker 1: the m D A, it was pixel addressable, so it
Speaker 1: could display both text and graphics at high resolution. It
Speaker 1: was a monochromatic technology, so you weren't going to get
Speaker 1: full color this way, but the resolution was superior to
Speaker 1: the c g A standard, so you could program a
Speaker 1: game in the c g A one bit mode that
Speaker 1: monochromatic graphics mode of c g A, but had a
Speaker 1: much higher resolution than what you would do with a
Speaker 1: c g A computer. Now that being said, not many
Speaker 1: programmers actually took advantage of this because it wasn't standard
Speaker 1: for developers to cater to a specific ad in board
Speaker 1: like that, but man those times would change. However, a
Speaker 1: lack of BIOS support for this card meant not many
Speaker 1: programmers would actually take advantage of this and develop games
Speaker 1: specifically for computers with that type of card. Other companies
Speaker 1: would begin producing similar cards, and IBM was hard at
Speaker 1: work on the next generation of graphics capabilities. We'll talk
Speaker 1: about how they enhanced graphics in just a second, but
Speaker 1: first let's take another quick break in. IBM boosted the
Speaker 1: graphical capabilities of its line of personal computers by a
Speaker 1: decent amount, though again by today's standards, still primitive. The
Speaker 1: company introduced e g A, or Enhanced Graphics Adapters. These
Speaker 1: add in boards, similar to c g A, included a
Speaker 1: bunch of chips that would show a marked improvement over
Speaker 1: the old c g A approach. E g A could
Speaker 1: support sixteen colors at the same time for some resolutions,
Speaker 1: so think of that four times the number of colors
Speaker 1: on screen at once. Wow, And it could pull colors
Speaker 1: from a palette of sixty four total options. No longer
Speaker 1: were you forced to decide between supporting dark yellow or
Speaker 1: having brown. C g A chose brown because it was
Speaker 1: decided that that was a color that would far more
Speaker 1: frequently be used than dark yellow. The resolution support for
Speaker 1: graphics had increased as well. E g A support resolutions
Speaker 1: of up to six forty by three fifty, though there
Speaker 1: are some caveats I'll get to in a second. The
Speaker 1: card itself included sixteen kilobytes of RAM. RAM is read
Speaker 1: only memory, and as the name suggests, read only memory
Speaker 1: cannot be written to or changed. Data stored in ROM
Speaker 1: typically includes sets of instructions that are necessary for doing
Speaker 1: stuff like booting up a program or running a critical process.
Speaker 1: In the case of e g A cards, the RAM
Speaker 1: included basic instructions for graphics applications that took some of
Speaker 1: the load off the host computer's own memory. In addition
Speaker 1: to those kilobytes of RAM, the card also had sixty
Speaker 1: four dedicated kilobytes of RAM, or random access memory. This
Speaker 1: is like the short term memory stuff, you know, the
Speaker 1: memory where a computer stuff's data in order to access
Speaker 1: that information rapidly while carrying out operations. The card also
Speaker 1: allowed for a secondary memory card to boost the capability
Speaker 1: of e g A another sixty four kilobytes, which is
Speaker 1: good because at the base level of sixty four kilobytes
Speaker 1: from the basic e G A card, you would only
Speaker 1: get four colors on screen at once if you were
Speaker 1: showing graphics at the full resolution of six forty by
Speaker 1: three fifty. The e g A card provided support for
Speaker 1: both the c G A and m d A modes
Speaker 1: of IBM's previous graphics adapters, in addition to the new
Speaker 1: capabilities of the e G A itself. And IBM provided
Speaker 1: extensive of documentation on the e G A, and that
Speaker 1: documentation came in handy not just for people who wanted
Speaker 1: to program for systems with a e g A card,
Speaker 1: but for companies that wanted to produce their own version
Speaker 1: of the e G A card. It would go on
Speaker 1: to become one of the most cloned cards in computer history,
Speaker 1: and only that companies were upping the anti by including
Speaker 1: more RAM on these cloned cards, providing greater graphical support
Speaker 1: than what IBM was offering out of the gate. So
Speaker 1: while a basic e G A card would support four
Speaker 1: colors at full resolution, these clones would allow for all
Speaker 1: sixteen colors simultaneously at that same resolution ouch. Just two
Speaker 1: years after IBM introduced e G A, we saw more
Speaker 1: than twenty companies offering up clones of that technology. Some
Speaker 1: iconic games that came out during the e g A
Speaker 1: era include Ultimate five Warriors of Destiny. I mentioned the
Speaker 1: Ultimate series earlier in this episode. The first several Ultimate
Speaker 1: games came out for the Apple platform primarily and then
Speaker 1: we're later reported to other computer systems. Ultimate five included
Speaker 1: e g A Support, and I remember this game fondly.
Speaker 1: In fact, it's my favorite of the Ultimate series. But
Speaker 1: other iconic e g A games included Cosmos, Cosmic Adventure,
Speaker 1: Commander Keene, and the original Nucom platforming game, and many more.
Speaker 1: One of the big advances in graphics found its way
Speaker 1: into e g A, which was the concept of bit mapping.
Speaker 1: So remember when I said that images on a screen
Speaker 1: are made up of individual points of light called pixels. Well,
Speaker 1: in the older version of interlaced graphics, you would include
Speaker 1: information about each pixel, so you might say pixel in
Speaker 1: column one, row one is read pixel, and column two
Speaker 1: row one is read pixel and column three in row
Speaker 1: one is read. That gets pretty tedious. Bit mapping allowed
Speaker 1: for a different approach. With bit mapping, you would only
Speaker 1: include data on a pixels color if the color was
Speaker 1: different from the pixel immediately before that one. So if
Speaker 1: pixels one, two, and three are all red, you would
Speaker 1: only have to define it for pixel one. The system
Speaker 1: would understand that if you didn't have any new information
Speaker 1: for pixel two, that it would also be read the
Speaker 1: same as for pixel three. It would only be when
Speaker 1: you had new information that would say, all right, now
Speaker 1: we have a new color like blue. This made displaying
Speaker 1: shapes that all were the same color throughout much more efficient.
Speaker 1: There's more to it than that, but it gets technical
Speaker 1: and we'd have to talk more about electron guns and stuff,
Speaker 1: so we'll just leave it off from here. But it
Speaker 1: was a big advance. It wouldn't be long before IBM
Speaker 1: introduced another advance in graphics technology. E g A debuted
Speaker 1: in nine four, and just three short years later, IBM
Speaker 1: introduced the video graphics Array or v g A. No
Speaker 1: longer were we talking about adapters, Nah, this here was
Speaker 1: an array. So what does that mean? Well, it actually
Speaker 1: matters in this case. The c g A and e
Speaker 1: g A adapters were add in boards that you would
Speaker 1: slot onto the main frame circuit board of a computer.
Speaker 1: So you'd open up the computer case. There would be
Speaker 1: these little slots where you could slide in circuit boards.
Speaker 1: You'd slide the circuit board in and it would have
Speaker 1: a port in the back that would poke out the
Speaker 1: back of the computer case and you could plug stuff
Speaker 1: in that way. This was very typical in fact still
Speaker 1: is to this day. There's still computers that do this
Speaker 1: with expansion slots. So v g A was different. V
Speaker 1: g A was hardwired onto the motherboard itself for the
Speaker 1: IBM computers. Later, third party companies would make v g
Speaker 1: A adapter cards to give computers that did not have
Speaker 1: the v GA installed directly on the motherboard the added
Speaker 1: capabilities of the new graphics standard. So, while IBM took
Speaker 1: a different approach to this, other companies would replicate what
Speaker 1: IBM was doing on expansion cards that you could and
Speaker 1: plug into an existing machine. So what were those capabilities? Well,
Speaker 1: you could use lots of colors if you were also
Speaker 1: using lower resolutions. So at a resolution of three twenty
Speaker 1: by two hundred pixels, the array could support up to
Speaker 1: two hundred fifty six colors simultaneously. Wow, But if you
Speaker 1: want better resolution then you had to reduce the number
Speaker 1: of colors. Higher resolution mode of six forty by four
Speaker 1: eighty supported just a modest sixteen colors. The palettes could
Speaker 1: draw from a global collection of more than two hundred
Speaker 1: sixty thousand colors. One other big difference between v G
Speaker 1: A and its predecessors is that v G A would
Speaker 1: send out data in an analog signal. E G A
Speaker 1: and c G A used digital signals. So what's the
Speaker 1: difference there, Well, an analog signal is continuous. It's unbroken,
Speaker 1: so you can plot that as a smooth wave. Uh,
Speaker 1: it doesn't have to be like a smooth gentle repeating pattern.
Speaker 1: It can be all over the place, but it's unbroken.
Speaker 1: It's a continuous signal, so it can get really squiggly,
Speaker 1: but it's still one continuous, unbroken signal. So imagine playing
Speaker 1: a stringed instrument and you strum a string and it's
Speaker 1: playing a tone, but then you move your finger up
Speaker 1: the fret board while the string is vibrating. That increases
Speaker 1: the frequency of the strings vibration, and thus we perceive
Speaker 1: that as the pitch of the note going up and
Speaker 1: you can bend the note up. So if you've ever
Speaker 1: heard that kind of sound, you know, oh, well, that's
Speaker 1: like a continuous experience. It's not like I I heard
Speaker 1: it play low and then play high. I heard it
Speaker 1: shift through all those different frequencies until it reached its
Speaker 1: its ending frequency. It was a very smooth transition. That's
Speaker 1: kind of like describing just an analog signal, this smoothness.
Speaker 1: Digital signals are done in a series of steps, so
Speaker 1: this is more about taking slices of time and applying
Speaker 1: a specific value to whatever signal you're sending out in
Speaker 1: that slice of time. The finer you slice the time,
Speaker 1: so the smaller or thinner the slices, the smoother you
Speaker 1: can make the signal. But in turn, it requires way
Speaker 1: more information to describe that signal, So rather than it
Speaker 1: being smooth and continuous and unbroken, if you were to
Speaker 1: zoom in on a digital signal, you would see these
Speaker 1: little edges of these steps of time as the signal
Speaker 1: goes up or down, depending on whatever it is you're
Speaker 1: measuring or indicating here. But it indicates a discrete amount
Speaker 1: of time and the data associated with that discrete amount
Speaker 1: of time. If you've got a lot of processing power,
Speaker 1: you can make those time slices very very very thin.
Speaker 1: And if you can do that thin enough, then it's
Speaker 1: almost as if you're listening to an unbroken signal, you
Speaker 1: get beyond the level of human perception. But there is
Speaker 1: a point where human perception definitely picks up on this stuff.
Speaker 1: So one downside of analog is that analog cables, if
Speaker 1: they're not properly shielded, can suffer from interference problems. Digital
Speaker 1: cables don't. You don't get interference with digital cables. But
Speaker 1: generally speaking, with an analog cable, the longer the cable,
Speaker 1: the more prone it is to interference issues. Uh. And
Speaker 1: the shielding, as I said, is a big factor. So
Speaker 1: if you think of a cable as having several wires
Speaker 1: inside of it, if the individual wires are not shielded properly,
Speaker 1: you could get interference between them and that would result
Speaker 1: in poor performance. From graphics perspectives. V g A really
Speaker 1: did set a new standard for computer graphics on the
Speaker 1: PC side of things, and it would also lead to
Speaker 1: IBM no longer being the entity that would define those standards.
Speaker 1: The rise of third party companies creating IBM clones by
Speaker 1: this time we pretty much just called them PCs would
Speaker 1: prompt anyc Home Electronics to announce the intention to form
Speaker 1: a new organization. This organization is called the Video Electronics
Speaker 1: Standards Association or VASA, and the purpose of VESAS to
Speaker 1: come up with technical standards for computer video displays and graphics.
Speaker 1: The group would build upon the v g A proprietary
Speaker 1: standard to create what has collectively been referred to as
Speaker 1: super v g A. So think of v g A,
Speaker 1: but with even more capabilities and no longer dictated by
Speaker 1: a single company, but rather by a consortium of companies
Speaker 1: that have decided what the standards should be. Super v
Speaker 1: g A could expand the resolution up to eight hundred
Speaker 1: by six hundred pixels. Again, it's not one single standard,
Speaker 1: it's rather a collection of supersets of the v g
Speaker 1: A standards, So it's a little tricky to talk about
Speaker 1: super v g A. It's not just one thing. IBM
Speaker 1: would continue to go on to create the Extended Graphics
Speaker 1: Array or x g A, but by that time super
Speaker 1: v g A had kind of take and on a
Speaker 1: life of its own as the new model for computer graphics.
Speaker 1: IBM would no longer be front and center when it
Speaker 1: came to defining how PCs would display graphics on a monitor.
Speaker 1: By this time, we're getting into the mid nineties, and
Speaker 1: the term IBM clone was pretty much dropped in favor
Speaker 1: of PC, and that would apply to any computer running MS,
Speaker 1: DOSS or later like after nine five or so Windows.
Speaker 1: IBM's decision to cut down costs by going with the
Speaker 1: off the shelf components, coupled with the failure to secure
Speaker 1: an exclusive license for DOSS from Microsoft, meant that IBM
Speaker 1: set the stage for its own competition in the consumer space. Ultimately,
Speaker 1: those competitors got big enough to create their own standards organizations,
Speaker 1: and so it became a group effort to come up
Speaker 1: with the way computers would continue to work. This in turn,
Speaker 1: made it easier for lots of companies to enter the space,
Speaker 1: offering up competing products at competitive prices. IBM, for its part,
Speaker 1: would exit the per stall computer market completely by the
Speaker 1: mid two thousand's. The company sold off its PC division
Speaker 1: to Lenovo in a deal that was valued at one
Speaker 1: point seven five billion dollars A princely some IBM was
Speaker 1: just finding it impractical to compete in that space and
Speaker 1: instead would return a full focus on enterprise level products
Speaker 1: and services. But if it weren't for IBM, we wouldn't
Speaker 1: have seen this particular progression with computer graphics. I'm sure
Speaker 1: we would have arrived at some sort of place similar
Speaker 1: to where we are now without the IBM PC. But
Speaker 1: who knows what it would look like. You know, maybe
Speaker 1: there's a parallel universe out there in which we see
Speaker 1: a world where IBM never gotten to the consumer market
Speaker 1: at all, and someone else took on that role, and
Speaker 1: maybe computer graphics themselves would be very different from the
Speaker 1: way they are today. But I can't travel in parallel dimensions,
Speaker 1: so I'll just have to imagine it. That's it for
Speaker 1: this episode. Hope you guys learned something of about the
Speaker 1: history of computer graphics in the PC world and why
Speaker 1: IBM was such an important part of that. If you
Speaker 1: have any suggestions for future topics of tech Stuff, whether
Speaker 1: it's a specific technology, a company, a trend in tech,
Speaker 1: anything like that, send me a message. You can reach
Speaker 1: out to me on Facebook or Twitter. The handle for
Speaker 1: both is tech Stuff hs W and I'll talk to
Speaker 1: you again really soon. Tech Stuff is an I Heart
Speaker 1: Radio production. For more podcasts from My Heart Radio, visit
Speaker 1: the I Heart Radio app, Apple Podcasts, or wherever you
Speaker 1: listen to your favorite shows.