Speaker 1: Welcome to text Uff, 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 how the tech are you. I am currently on vacation,
Speaker 1: which means we're going to have a couple of reruns
Speaker 1: for the rest of this week, and today's episode is
Speaker 1: called what We're c g A, E G A and
Speaker 1: v G A, which originally published on April twenty twenty.
Speaker 1: Hope you enjoy. For today's episode, we're going to learn
Speaker 1: about old computer graphics standards. Don't run away. This is
Speaker 1: actually really interesting. We'll learn how they became standards in
Speaker 1: the first place, and what the company IBM had to
Speaker 1: do with all of this, and why some early decisions
Speaker 1: by IBM would lead to the company x trickating itself
Speaker 1: from the personal computer business altogether a couple of decades later. Now,
Speaker 1: when I was growing up, my family owned a couple
Speaker 1: of personal computers over the course of my childhood. We
Speaker 1: were in that rare small percentage of households with a
Speaker 1: personal computer back in the nineteen eighties, and our first
Speaker 1: computer was an Apple to E with a mono chromatic
Speaker 1: screen that could only display Matrix green style letters. I
Speaker 1: seem to recall that we eventually got a monitor one hundred,
Speaker 1: which is Apple's color monitor, and that was compatible with
Speaker 1: the two E, assuming that you had a to E
Speaker 1: with the appropriate interface card installed. But honestly, that memory
Speaker 1: might be conflated with the second personal computer that my
Speaker 1: dad would purchase. See. Dad got these computers in order
Speaker 1: to work on his novels. He wrote his first couple
Speaker 1: of books on the old Apple to E. I don't
Speaker 1: know if he still has them, but for years he
Speaker 1: had these novels stored on old five and a quarter
Speaker 1: inch floppy disc and those discs could hold about a
Speaker 1: hundred forty kilobytes worth of information each, so to be safe,
Speaker 1: Dad would typically store two to three chapters per disk,
Speaker 1: since his novels were too long to fit onto just
Speaker 1: one five and a quarter inch disc, and the Apple
Speaker 1: to E had no hard drive. Anyway, I digress, but
Speaker 1: I love thinking about those old times. I remember going
Speaker 1: through sleeves of discs and seeing Dad's old novels on there.
Speaker 1: Our second computer that we owned as a family was
Speaker 1: a two eight six. But what does that actually mean? Well,
Speaker 1: it was a personal computer that relied on the Intel
Speaker 1: eight two eight six central processing unit, and it also
Speaker 1: relied on MS DOSS as the operating system. So this
Speaker 1: computer fell into what we would call an IBM compatible
Speaker 1: computer back in the day. It used components and an
Speaker 1: operating system that allowed it to run any software designed
Speaker 1: for those IBM s ccific machines. I think of this
Speaker 1: as an interesting part of personal computer history, and it
Speaker 1: helps illustrate a sharp contrast between IBM S strategy and apples.
Speaker 1: So let's backtrack a little bit now, before there were
Speaker 1: personal computers, back when you needed to work for a
Speaker 1: special research facility or be enrolled in an engineering course
Speaker 1: in the university, or maybe one of a handful of
Speaker 1: folks who knows about computers and works for a big
Speaker 1: financial company, or maybe you're in the military. Back in
Speaker 1: those days, computers really didn't have monitors at all. Computer
Speaker 1: graphics weren't even a thing yet. The computer would typically
Speaker 1: print out the results of a computational process on some
Speaker 1: sort of paper or paper tape. Richard Garriott, who would
Speaker 1: go on to create the Ultimate Computer Game series before
Speaker 1: You would become one of seven private citizens to visit
Speaker 1: the space station, programmed his first games on a computer
Speaker 1: that would print out each move of his dungeon crawler.
Speaker 1: So imagine a top down view of a done gin crawler,
Speaker 1: except you're not looking at it on a screen. You
Speaker 1: actually have to print out each move. So you make
Speaker 1: a move in the game, the printer would print out
Speaker 1: a new display of what had happened, and all the
Speaker 1: figures were represented by the basic characters that the printer
Speaker 1: could replicate, so it was limited to whatever the printer
Speaker 1: could print, and that was typically stuff like your standard letters, numbers,
Speaker 1: and symbols on a keyboard. So making a move would
Speaker 1: require the whole system to print out a new picture
Speaker 1: showing the results of that move. So playing the game
Speaker 1: took a while. Obviously the refresh rate was terrible, but
Speaker 1: eventually engineers began to create a way for computers to
Speaker 1: display information over a screen. You might connect the computer
Speaker 1: to a regular old television system and you might have
Speaker 1: a little adapter to do that, or, as would later
Speaker 1: become the norm, you would build computer monitors specifically for
Speaker 1: the systems you were creating, and later we would call
Speaker 1: these displays, but I'm so old I still refer to
Speaker 1: the them as computer monitors because that's just how it
Speaker 1: cemented itself in my brain. Obviously, you've got to have
Speaker 1: some sort of bridge for a computer to be able
Speaker 1: to send meaningful information to a display, which will then
Speaker 1: follow the instructions sent by the computer to represent the
Speaker 1: information to the end user. There's got to be some
Speaker 1: sort of interface to make this happen on the computer side,
Speaker 1: as well as a port that allows a user to
Speaker 1: connect the computer to the display. There has to be
Speaker 1: some sort of physical connection between the two, and in
Speaker 1: the early days of personal computers there was no set,
Speaker 1: standardized way to do this. The technology used in one
Speaker 1: computer system wasn't compatible with another, so you couldn't mix
Speaker 1: and match monitors and cables and based systems together. These
Speaker 1: were the wild West days of computing, when making a
Speaker 1: choice as a consumer was complicated because you had no
Speaker 1: way of knowing if the computer you chose was going
Speaker 1: to stand the test of time. You could end up
Speaker 1: purchasing a system at rate cost and see the parent
Speaker 1: company 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: been 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, Commodo or in Texas Instruments were three
Speaker 1: of the big ones here in the United States, and
Speaker 1: they weren't alone, but they didn't have to contend with
Speaker 1: a really big name in computers for a few years,
Speaker 1: and that was I b M. And that's because initially
Speaker 1: IBM chose to concentrate on its traditional enterprise focused business
Speaker 1: and not really get into the consumer market. They were
Speaker 1: making products and services for other companies, not for end
Speaker 1: users like me and you now. That would change in
Speaker 1: nineteen one when IBM introduced the IBM Personal Computer or
Speaker 1: the 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. And you know, you you
Speaker 1: buy cheap and you sell high. IBM engineers built the
Speaker 1: PC using off the shelf components. The company didn't build
Speaker 1: a custom made microprocessor or anything. Instead, the original IBM
Speaker 1: PC used an Intel eight chip as the CPU. In
Speaker 1: a similar fashion, the engineers used other standard components to
Speaker 1: build out the PC, and they made an arrangement with
Speaker 1: Microsoft 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 sure is. 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 at the point when it was getting in. You see,
Speaker 1: 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 eight six I mentioned at the top of this
Speaker 1: episode was just such a machine. We didn't known an
Speaker 1: official IBM birstal computer, but rather a machine with the
Speaker 1: same sort of guts inside and running MS DOSS. It
Speaker 1: would take a long time for all of this to
Speaker 1: actually catch up to IBM. Mind you, it's not like
Speaker 1: they were shot and sunk as soon as they launched.
Speaker 1: The company would ultimately pull back from the PC business,
Speaker 1: but it would stick around long enough to make an
Speaker 1: enormous influence on computers and programming, and that includes graphics.
Speaker 1: When the IBM PC debut in 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 represent in the ways to
Speaker 1: add capabilities to a base computer model. Sometimes those abilities
Speaker 1: were fairly simple additional features. Sometimes, like in this case,
Speaker 1: they were required in order to send images to an
Speaker 1: external display. So without one of these two cards you
Speaker 1: wouldn't have any way of sending information to a computer monitor.
Speaker 1: The first of the two was called the Monochrome Display
Speaker 1: Adapter or m d A. This was a video card
Speaker 1: installed on the PC that would output monochromatic signals to
Speaker 1: the monitor. Furthermore, it didn't do so in a pixel
Speaker 1: addressable way. So wait, wait, wait, what does that mean
Speaker 1: All right. So let's remember that the images we see
Speaker 1: on displays and monitors and screens like on smartphones are
Speaker 1: made up a little points of light. By changing the
Speaker 1: brightness and color of those points of light, you can
Speaker 1: create full images. It's not that different from the technique
Speaker 1: used by the famous painter George Serat in his fame
Speaker 1: its work A Sunday Afternoon on the Island of Lagrange Jatt.
Speaker 1: In that painting, all the images consist of tiny dots
Speaker 1: of paint, but when you view it from a distance,
Speaker 1: they form the shapes of people spending a lovely day
Speaker 1: at a park along the Sin River. It's an example
Speaker 1: of a style called point to lists, and it's perhaps
Speaker 1: the most famous version of this of all time. But
Speaker 1: television's computer monitors and electronic displays like the one smartphones
Speaker 1: use have a similar technique, except they use points of
Speaker 1: 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,
Speaker 1: so in this case pixels. A pixel addressable approach allows
Speaker 1: the computer system to send specific instructions to each and
Speaker 1: every pixel, which, in turn, let's computers send full images
Speaker 1: and graphics to a connected monitor, but m d A
Speaker 1: didn't have that capability, so you couldn't send a black
Speaker 1: and white photo to display on a connected monitor. The
Speaker 1: m d A was dedicated purely to text mode. The
Speaker 1: screen consisted not of pixels so much as it did
Speaker 1: of character cells. So imagine a box that's large enough
Speaker 1: to hold the largest text character, like an uppercase G
Speaker 1: or W or something. Now imagine that the entire screen
Speaker 1: is a grid of those boxes. Each box is exactly
Speaker 1: the same shape, so it can a lot for the
Speaker 1: largest of characters inside of it, but that's all they
Speaker 1: can fit inside. Each box is one character. You couldn't
Speaker 1: create more complex images, only pictures that consisted of those
Speaker 1: basic characters, just like the old printers that I mentioned
Speaker 1: earlier that Richard Garriott had been playing with. Well, with
Speaker 1: these displays, you could get really good resolution on those characters,
Speaker 1: so the images were crisp and clear. The picture here's
Speaker 1: the text was incredibly clear to read. It was very
Speaker 1: simple too. With these displays. You could get really good
Speaker 1: resolution on those characters. The text is crisp and clear.
Speaker 1: And that was a big drop because a lot of
Speaker 1: these computers were meant to go towards small businesses, where
Speaker 1: presumably the applications you're running are mostly text based. There
Speaker 1: were some trade offs. Because the screen was made up
Speaker 1: of a grid of equal sized boxes, and each of
Speaker 1: those boxes could contain one character, every letter would use
Speaker 1: up the same amount of space on the screen. So
Speaker 1: an upper case W, which is about as wide as
Speaker 1: it gets, would take up the same amount of space
Speaker 1: as an upper case I. Now I don't mean that
Speaker 1: the upper case I would be wide, but rather it
Speaker 1: would occupy a spot that would be surrounded by an
Speaker 1: invisible box the same size as the invisible box that
Speaker 1: goes around the upper case W. So you get this
Speaker 1: weird spacing between letters in the same word. If you're
Speaker 1: using a collection of wide and narrow letters, it would
Speaker 1: just look off. H It's called monospace font. It's it's
Speaker 1: the same sort of thing that you would see with
Speaker 1: a lot of printers and typewriters because they were limited
Speaker 1: 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 colors,
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 age.
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 that mean, Well, these
Speaker 1: pixels were not perfect squares. They were actually taller than
Speaker 1: they were wide. With that ratio of one for width
Speaker 1: to one point two for height, this would mean that
Speaker 1: the visual resolution of the screen was more like three
Speaker 1: twenty by two forty. In actuality, it was three twenty
Speaker 1: by two hundred. So why the three two 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
Speaker 1: vertically and you could take advantage of things and make
Speaker 1: a picture that had that sort of look as if
Speaker 1: it 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 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 by twenty five. The pixel ratio that this would
Speaker 1: create for a visual representation of the resolution was six
Speaker 1: forty by four eighty. Now, in reality, those pixels again
Speaker 1: were taller than they were wide. In fact, they were
Speaker 1: notably taller than they were wide, so the real resolution,
Speaker 1: the true resolution was six forty by two hundred, but
Speaker 1: it looked like six forty eight. More programs were written
Speaker 1: in this mode because that you could fit way more
Speaker 1: text on a screen than you could with the forty
Speaker 1: twenty five mode. It was less chunky, but most text
Speaker 1: based programs relied on the eighty by twenty five approach.
Speaker 1: If you were using a word process or something, this
Speaker 1: was the style that you were most likely looking at.
Speaker 1: That being said, the resolution of text on a c
Speaker 1: g A machine was lower than what you would have
Speaker 1: found on the monochromatic m d A computers, so it
Speaker 1: was a tradeoff. You could have a c g A
Speaker 1: ibm PC running on this eight by twenty five text
Speaker 1: mode for a specific program and it'd be fine. It
Speaker 1: just wouldn't be as crisp and clear as the monochromatic
Speaker 1: m d A text specific machines. Onto the graphics modes, however,
Speaker 1: that's what we're really interested in, right, What actually made
Speaker 1: the images, not just the text on these computers. Well,
Speaker 1: the graphics mode for the c g A machine had,
Speaker 1: like I said, two different modes to it, two different
Speaker 1: official modes to it. One was a three twenty by
Speaker 1: two hundred resolution, but the pixel ratio was one to
Speaker 1: one point two, so again it looked more like three
Speaker 1: by two forty. This mode could just lay up to
Speaker 1: four colors at any one time using one of two
Speaker 1: pre selected palettes. This is why if you ever look
Speaker 1: at old c G A games, they all start to
Speaker 1: look really similar. They're all using the exact same colors.
Speaker 1: For colors, the programmers were working under some really tight restrictions.
Speaker 1: The first palette of colors included black, green, red, and yellow.
Speaker 1: This was palette zero. The second palette, a k A
Speaker 1: Palette one had black, cyan, magenta, and white. Now, as
Speaker 1: you can imagine, it's pretty tough to create good graphics
Speaker 1: with this limited color selection. Now, on top of that,
Speaker 1: programmers could use low intensity or brightness or high intensity
Speaker 1: or brightness. So that would add another variation. And I've
Speaker 1: seen the same screen presented in both palettes at both
Speaker 1: levels of intensity, and there are differences, like you can
Speaker 1: get a very different effect going from one to the other.
Speaker 1: So programs had a little bit of flexibility, but not
Speaker 1: by much. In both palettes, black is color zero, and
Speaker 1: color zero was actually customizable. You could swap it out.
Speaker 1: You could choose one of the other fifteen colors that
Speaker 1: c g A supported and use that as color zero.
Speaker 1: Black would no longer be used. The flip side of
Speaker 1: this is that the new color would replace color zero
Speaker 1: in all of the image. So if you wanted the
Speaker 1: image to have black in it, it would get replaced
Speaker 1: by whatever color you had now designated as color zero.
Speaker 1: If you wanted to have green included with your white, cyan,
Speaker 1: and magenta, then it would mean that if you had
Speaker 1: a scene with a night sky, that night sky is
Speaker 1: going to be green because it would normally be black,
Speaker 1: but you've designated that color to go to green instead
Speaker 1: of black. So yeah, very limited. However, another trick programmers
Speaker 1: could do is leverage the way see our T screens work.
Speaker 1: I'm gonna gloss over the details, but in CRT screens
Speaker 1: there is an electron gun and it paints the back
Speaker 1: of the screen with electrons. That causes phosphor to glow
Speaker 1: as the phosphor absorbs electrons. But the painting is the
Speaker 1: important part. It happens at the top line on the screen.
Speaker 1: It goes all the way across horizontally, then it moves
Speaker 1: down the line and it does this again, and it
Speaker 1: does this really fast. A slow CRT monitor would repaint
Speaker 1: the entire screen sixty times a second. But this means
Speaker 1: that if you're programming, you know precisely what parts of
Speaker 1: an image are going to be painted first, because it's
Speaker 1: going to go top to bottom. So if you're meticulous.
Speaker 1: You can swap from one pallette set to the other
Speaker 1: palette set in mid screen draw. That allows for slightly
Speaker 1: more colors to display on screen at one time, or
Speaker 1: at least what we perceive to be at one time,
Speaker 1: because our reception 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 palette. 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 pallette zero, and then at
Speaker 1: the bottom you swap out to pallet one and you
Speaker 1: get a little more variety that way. The second official
Speaker 1: graphics mode that the c g A chip supported was
Speaker 1: 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 E chips supported to be the foreground color.
Speaker 1: And the bonus of this was that it allowed for
Speaker 1: more fine detail. It is a greater resolution than what
Speaker 1: you would find in the their 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 could 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 inten city, which
Speaker 1: again is the brightness of a color. But you could
Speaker 1: also use a composite video monitor like a television set.
Speaker 1: You could use that as your computer monitor, and you
Speaker 1: could feed video to it through a composite cable that's
Speaker 1: the yellow r c A cables of old. That one
Speaker 1: cable 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
Speaker 1: know when it's going to be shown on a screen,
Speaker 1: they're going to bleed together a little bit, so you
Speaker 1: get a a more rich from a color perspective image. However,
Speaker 1: there was a drawback to this as well. It would
Speaker 1: mean that the image is a little more blurry and
Speaker 1: not as sharp, so it would almost be like you're
Speaker 1: ending up with a lower resolution image. However, you would
Speaker 1: get more colors. So it just depended on what was
Speaker 1: most 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 had been available
Speaker 1: since the seventies, and there's no reason why a monitor
Speaker 1: wouldn't be able to handle lots of different colors. The
Speaker 1: real 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 kill a
Speaker 1: bytes of RAM, so rather than eat up that memory
Speaker 1: by supporting more colorful graphics, IBM chose to give limited
Speaker 1: support to color representation and reserve that RAM for other stuff, like,
Speaker 1: you know, actually helping the computer execute programs. Other companies
Speaker 1: looked at IBM s c g A approach and they
Speaker 1: reverse engineered it. Soon they could also produce computers that
Speaker 1: supported a c g A graphics. Thus c g A
Speaker 1: approach became a standard, and originally you could just think
Speaker 1: of it as being proprietary. It was an IBM proprietary technology,
Speaker 1: but through reverse engineering it became a standard in computer graphics.
Speaker 1: And some of these third parties took this approach a
Speaker 1: step further. There was a company called Hercules Computer Technology
Speaker 1: that introduced the Hercules Graphics card in n two. The
Speaker 1: card came about as a matter of necessity. The developer
Speaker 1: needed a way to display Thai characters from from the
Speaker 1: language of Thailand, and that was his native language, was Thai,
Speaker 1: and in a resolution similar to I B M S
Speaker 1: M D A. That was the goal, like to have
Speaker 1: these very clear, crisp figures in the Thai language, but
Speaker 1: the M D A didn't support that alphabet. The Hercules
Speaker 1: Graphics card had a resolution of seven twenty by three fifty,
Speaker 1: but unlike the m D A, it was pixel addressable,
Speaker 1: so it could display both text and graphics at high resolution.
Speaker 1: It was a monochromatic technology, so you weren't going to
Speaker 1: get full color this way, but the resolution was superior
Speaker 1: to the c g A standard, So you could program
Speaker 1: a game in the c g A one bit mode,
Speaker 1: that monochromatic graphics mode of c g A, but at
Speaker 1: a much higher resolution than what you would do with
Speaker 1: the c g A computer. Now that being said, not
Speaker 1: many programmers actually took advantage of this, because it wasn't
Speaker 1: standard for developers to cater to a specific add in
Speaker 1: board like that, but man those times would change. However,
Speaker 1: a lack of BIOS support for this card meant not
Speaker 1: many programmers would actually take advantage of this and develop
Speaker 1: games specifically for computers with that type of card. Other
Speaker 1: companies would begin producing similar cards, and IBM was hard
Speaker 1: at work on the next generation of graphics capabilities. We'll
Speaker 1: talk about how they enhanced graphics in just a second,
Speaker 1: but first let's take another quick break in IBM boosted
Speaker 1: the graphical capabilities of its line and personal computers by
Speaker 1: a decent amount, though again by today's standards, still primitive.
Speaker 1: The company introduced e g A, or Enhanced Graphics Adapters.
Speaker 1: These add in boards, similar to c g A, included
Speaker 1: a bunch of chips that would show a marked improvement
Speaker 1: over the old c g A approach, e g A
Speaker 1: could 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 documentation on the e g A, and that documentation
Speaker 1: came in handy not just for people who wanted to
Speaker 1: program for systems with an e g A card, but
Speaker 1: for companies that wanted to produce their own version of
Speaker 1: the e g A card. It would go on to
Speaker 1: 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 Newcomb 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 red pixel, and column two
Speaker 1: row one is red pixel and column three in row
Speaker 1: one is red. 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 red, 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 fans. It wouldn't be long before IBM
Speaker 1: introduced another advance in graphics technology. E G A debut
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 added boards that you would slot
Speaker 1: onto the main frame circuit board of a computer. So
Speaker 1: you'd open up the computer case. There would be these
Speaker 1: little slots where you could slide in circuit boards. You'd
Speaker 1: slide the circuit board in and it would have a
Speaker 1: port in the back that would poke out the back
Speaker 1: of the computer case and you could plug stuff in
Speaker 1: that way. This was very typical VEXT still is to
Speaker 1: this day. There's still computers that do this with expansion slots.
Speaker 1: So v G A was different. V g A was
Speaker 1: hardwired onto the motherboard itself for the IBM computers. Later,
Speaker 1: third party companies would make v g A adapter cards
Speaker 1: to give computers that did not have the v GA
Speaker 1: installed directly on the motherboard the added capabilities of the
Speaker 1: new graphics standard. So while IBM took a different approach
Speaker 1: to this, other companies would replicate what IBM was doing
Speaker 1: on expansion cards that you could then plug into an
Speaker 1: existing machine. So what were those capabilities? Well, you could
Speaker 1: use lots of colors if you were also using lower resolutions.
Speaker 1: So at a resolution of three twenty by two hundred pixels,
Speaker 1: the array could support up to two hundred fifty six
Speaker 1: colors simultaneously. Wow, But if you want better resolution, then
Speaker 1: you had to reduce the number of colors. Higher resolution
Speaker 1: mode of six forty by four eighty supported just a
Speaker 1: modest sixteen colors. The palettes could draw from a global
Speaker 1: collection of more than two hundred sixty thousand colors. One
Speaker 1: other big difference between v G A and its predecessors
Speaker 1: is that v G A would send out data in
Speaker 1: an analog signal. E G A and c G A
Speaker 1: used digital signals. So what's the difference there, Well, an
Speaker 1: analog signal is continuous. It's unbroken, so you can plot
Speaker 1: that as a smooth wave. Uh, it doesn't have to
Speaker 1: be like a smooth, gentle repeating pattern. It can be
Speaker 1: all over the place, but it's unbroken. It's a continuous signal,
Speaker 1: so it can get really squiggly, but it's still one continuous,
Speaker 1: unbroken signal. So imagine playing a stringed instrument and you
Speaker 1: strum a string and it's playing a tone, but then
Speaker 1: you move your finger up the front board while the
Speaker 1: string is vibrating. That increases the frequency of the strings vibration,
Speaker 1: and thus we perceive that as the pitch of the
Speaker 1: note going up, and you can bend the note up.
Speaker 1: So if you've ever heard that kind of sound, you know, oh, well,
Speaker 1: that's like a continuous experience. It's not like I've 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 VESA, 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 eight hundred by
Speaker 1: six hundred pixels. Again, it's not one single standard, it's
Speaker 1: rather a collection of super sets 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 taken on a life
Speaker 1: 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 personal computer market completely by the mid
Speaker 1: two thousand's. The company sold off its PC division to
Speaker 1: Lenovo in a deal that was valued at one point
Speaker 1: seven five billion dollars a princely some IBM was just
Speaker 1: finding it impractical to compete in that space and instead
Speaker 1: would return a full focus on enterprise level products and services.
Speaker 1: But if it weren't for IBM, we wouldn't have seen
Speaker 1: this particular progression with computer graphics. I'm sure we would
Speaker 1: have arrived at some sort of place similar to where
Speaker 1: we are now without the IBM PC. But who knows
Speaker 1: what it would look like. You know, maybe there's a
Speaker 1: parallel universe out there, and which we see a world
Speaker 1: where IBM never gotten to the consumer market at all
Speaker 1: and someone else took on that role, and maybe computer
Speaker 1: graphics themselves would be very different from the way they
Speaker 1: are today. But I can't travel in parallel dimensions, so
Speaker 1: I'll just have to imagine it. That was what we're
Speaker 1: c G A, e G A and v G A
Speaker 1: from a couple of years ago. I will be back
Speaker 1: with all new episodes next week, so I look forward
Speaker 1: to chatting with you then. As always, if you have
Speaker 1: suggestions for topics for me to cover on tech stuff,
Speaker 1: or suggestions for people I should have on the show,
Speaker 1: anything like that, let me know on Twitter. The handle
Speaker 1: for the show is Text Stuff hs W and I'll
Speaker 1: talk to you again really soon. Text Stuff is an
Speaker 1: I heart Radio production. For more podcasts from my heart Radio,
Speaker 1: visit the i heart Radio app, Apple Podcasts, or wherever
Speaker 1: you listen to your favorite shows. Zero