Chapter 11.4: Headwinds -- Buggy Floppy Controller
Chapter 11.5: Headwinds -- Presentation
"Hey guys."
"Yo." Jeff raised his fist and I grinned and gave him a back-of-the-fist bump before setting my books on the lab table.
Mark raised his fist in solidarity. "Ya ready?"
I responded with a raised fist and a grin, but then lowered it and shook my head. "No idea. Thanks for helping me here."
"No idea." Jeff snickered. "What a sense of humor."
We all chuckled nervously.
"Let's get my stuff set up. You guys bring your trainers for show-n-tell?"
"Yep."
"Got 'em. How do you plan on starting?"
"I'm thinking we should show everyone what you guys built, then I want to lay out a road map so everyone can make their own plans."
"Road maps?" Jeff faked disgust. "Who wants to see where we're going?"
Mark chuckled. "Don't listen to this guy."
We continued to joke around while we set my computer up.
"Not using your sister's CoCo?"
"They were using it in my dad's office. She and Julia will be bringing it over pretty soon."
After we got the Micro Chroma 68 set up and connected to the big TV through the splitter, I started sketching a diagram on the chalkboard while other students filtered in.
Shortly, Julia, Giselle, and Dad came in with Giselle's computer, disk drive, and TV. Dad set the TV down. "I'll be back. Don't wait for me." He mugged a grin and left.
Julia took a look at my sketch and set the disk drive down. "I guess I already have work to do." She got her notebook out of her backpack, and started copying from the blackboard.
"Well, thanks, but I really want the other students to draw their own copies." I returned to the table to help Giselle set her computer up.
Julia didn't look up. "This is in case someone can't make it. And it's also for you."
I laughed and shook my head. "You already know some of my bad habits."
At that, she looked up and gave me an innocent smile, and I grinned back.
Jeff cleared his throat.
"And it's for me, too," she continued.
Jeff and Mark both said, "Uh, huh."
I raised my eyebrows in question, and she nodded. "Dad says he'll help me make one. If you can't spare a CPU for me, he can find one."
"Sure, I can get you one."
"He's going to try to come today, too."
"Enough butterflies in my stomach to fly me away yet?"
She laughed. "You'll do fine."
"This is in front of the board, you know."
She nodded. "Yep. And I know you'll do fine."
Mark gave me a shoulder bump and Mark gave me a knowing nod. I tilted my head and scratched my neck.
Just as I turned back to the chalkboard to finish the diagram, the students from the microprocessors class came in as a group.
One whose name I learned later was Terry asked, "Can we join this party?"
I looked over at Dr. Brown. He nodded. "Them's them."
"It's up to you," I replied with a shake and nod of the head.
"Great!" They found seats and joined in the chatter among the students.
Pat and George came in, slightly out of breath, and Julia looked up. "Is Mike coming?"
Pat shook her head. "He said he, uhm, changed his mind."
Julia's expression clouded and she bit her lip, and I thought I might be seeing part of the reason I had not felt like I should press my advantage with her.
"Well," I said, "if you don't see him before I do, tell him, if he changes his mind back, Julia's got notes for him."
Julia turned to me and give me an inquiring look. I couldn't do anything but shrug.
A group of school board members came in with President Flyer, and Dr. Brown showed them to some desks near the back of the room, staying there to talk with them. I went back to greet them, then returned to the chalkboard.
I still wasn't finished with the diagram when Dr. Brown said, "Hey, Joe," and I looked up to see Ms. Bight coming in with a group of people I hadn't met. Two of the women in the group were carrying rather large briefcases.
Dr. Brown moved to the door, and I put the chalk down and went to meet them, too.
"Joe, nice to see you again. This looks to be fun."
"Glad you could make it, Ms. Bight. I hope it'll be interesting."
"I'm sure it will, and welcome to our school." Dr. Brown was keeping his usual jocularity in check.
"Let me introduce James Goldwater, my boss, and Karel Wells, another of my bosses."
Mr. Goldwater continued, "Karel is my boss. And this is one of our school liaison agents, Robin Turner." He indicated one of the women with the briefcases. "We're looking forward to seeing what you're up to, here. Oh, and I'll let Steph introduce herself, even though Steph and I go back a ways." He indicated the other woman with a briefcase.
"Thank you James. I'm Stephanie Steward, a liaison agent at Motorola, and this is Carrie Philips, one of our legal staff with our intellectual capital management group. We're hoping you'll have some time to talk with us after your presentation."
I gave them a nod, or maybe it was full o-jigi, and shook their hands. "I'll try to keep the demonstration and stuff short. I have newspapers I need to deliver tonight."
"Oh. Joe," Giselle interrupted, "Mom said to tell you she'd walk your route today so you can take your time."
"Okay. Then, by all means, I'd love to talk with everyone!" I may have been a little dramatic, waving my hands in the air. "Erm, ...," I stiffened.
Both the group from IBM and the group from Motorola chuckled comfortably, and I relaxed a bit.
"And, by the way," Ms. Steward continued. "I'm hoping you'll let us videotape this for the people back in Austin."
I looked over at Dr. Brown.
"Well, I've cleared it with the school board, so it's up to you and the rest of the students."
"Well if it isn't Joe Reeves."
I looked over at the door. "Dave. Uhm, hi."
One of my former managers at TI wheeled himself in, followed by another manager, whose name I had forgotten.
Dave laughed. "We've been waiting for you to come talk to us, since you got back from Japan, but, when I heard about your project demonstration, I thought you wouldn't mind if I dropped by. Jayne agreed with me, so we got permission with upper-level management and came over to crash your party."
"Jayne." Jayne Burdock. I nodded and mentally thanked him for mentioning her name.
She raised a hand. "Hi. Long time no see. Tell us about Japan some time."
Dr. Brown explained, "I thought the folks at your old range might want to see what you're up to."
"By all means. Thanks for coming." I nodded again a little absently.
Several students moved quickly to make way and they came in, and I followed as Dr. Brown led the whole group to the back of the room.
"I'm glad Dr. Brown called you guys, Dave. Sorry I haven't been very newsy."
"No problem. But do come by and talk with us, okay?"
"Sure." I looked around the room. It looked like all the students I expected were there. "Okay, everybody, we have some guests I'd like to introduce."
The chattering quieted down.
"We'd like to welcome members of the school board and President Flyer."
President Flyer nodded, several members of the board raised their hands, and there were words of greeting from various students.
Then President Flyer added, "And I might mention that several members of the OC board are also members of the UTPB board, including UTPB school president, Steven Dwyer."
I did a mental double-take on that.
Just at this point, Professors Crane and Bright came in, with two others I didn't recognize.
Dr. Brown exclaimed, with a bit of dramatic warmth, "Well, if it isn't our friends from the EDP department, Doctors Crane and Bright. And Dr. Harry Botch, head of electronics, electrical, and instrumentation at UTPB, and Dr. Donna Blandwood, head of UTPB's information systems program."
I offered a "Welcome, Professors." And they raised hands in greeting, and quickly moved to join the group in the back.
Then I continued, "And, we have a contingent from IBM, Megan Bight, James Goldwater, and Karel Wells from their management group, and Robin Turner, school liaison. From Motorola, we have Carrie Philips from their legal group and Stephanie Steward, school liaison. And my former managers at TI, Dave Whetton and Jayne Burdock. I hope they'll have some time for some of you to get to know them."
I waited for the nods, and cheerful greetings to subside.
(The version of me in this novel is a lot better with names than I am in the real world. Have I mentioned that?)
"And Ms. Steward and Ms. Turner would like to know if it's okay to take a video of our meeting. Apparently there are managers back in their home offices who are interested in what we've been doing. Is that going to be okay?"
Nobody seemed to mind.
Ms. Steward explained. "As Joe has surmised, management wants an idea of what you've got going on here, to consider what level of relationship we want to set up with OC, and maybe UTPB.
Ms. Turner added, "Likewise, IBM."
Ms. Philips further explained, "We only plan to be showing these to the relevant managers, for internal oversight of our student programs, before we erase them. If we decide we want to use some of the video for any other purposes, we will get in contact with Dr. Brown, and he will get in contact with you first, to ask permission."
"I think, if anyone has any objections at all, we can excuse ourselves from being recorded today. Right?" I checked with Ms. Steward and Ms. Turner.
"Right." Ms. Steward nodded.
"Very much so." Ms. Turner agreed.
"Whaddaya-all think?"
"Yah, no prob."
"I say go for it."
And other such comments. No one seemed to mind.
"I guess we'll need to get you a list of names and contact information for everyone here, then?" I asked.
"Yes," Ms Philips responded. "That will be helpful."
"Anyone with objections to putting their names on the list?"
There were no objections.
While Ms. Steward and Ms. Turner set up the video cameras in the corners at the back of the room, Julia and Giselle started a list going around the room.
I suggested to all the students, "You might want to start copying the diagram on the board while the list goes around and while they set up the cameras."
I noticed that my parents and Julia's parents had slipped in during all of this, and some of the students had made room for them to sit down, so I went over to say hello.
Ms. Steward and Ms. Philips got their video gear set up quickly, and I returned to the chalkboard and began again.
"Most of you are familiar with the basic elements of a workstation, I think. I want to point out a few things. One is that there are many CPUs that can take the central role in such a system. Even with the slightly underpowered original 6800 --" There were scattered chuckles. "-- there's a lot you can done with such a system, at school, around the home, and even in business."
"Modems, keyboards, disk drives, displays, all of the peripheral devices here can benefit from dedicated microcontrollers. But the central CPU for a workstation will be waiting for the user a lot of the time, so it is also possible to trade money for hardware for money for software, and directly control at least some of the peripherals using the main processor. "
"Where's the printer?" Winston interrupted
I looked at my diagram. "Okay, I forgot the printer. Draw it in your notes anywhere it fits. The connection will be similar to the connection to the modem, anyway, unless you intend to pump out reams of paper all day long."
There was scattered laughter.
"Oh, and I've forgotten to include the general purpose bus, too. And an interface to control appliances around the house. Add them in your diagrams someplace, or just remember, the general purpose expansion bus is high-bandwidth, and the interface to control your light dimmers and other appliances will be low-bandwidth, probably serial, like the modem.
(You may wonder at the irony in my saying the modem bandwidth would be low. Now, in the age of the Internet, the equivalent to the modem interface is the highest-bandwidth interface next to the hard disks, and sometimes higher, but the idea of a high-bandwidth network interface becoming common in every household seemed a bit bizarre back then. Shoot, the concept of network interfaces with the bandwidth we now use without thinking would have been mind-boggling back then.)
"Uhm, Joe?" Julia raised her hand.
I turned to look at her and her expression told me what she wanted to say. "Oh, Yeah. I guess I could fit those in here, here, and here." I took the time to draw them, erasing some things and moving them over.
"So, in the other way of looking at things, we don't have to have the CPU directly controlling everything. We can make up for an under-powered CPU, somewhat, by adding adding microcontrollers to the peripherals, to off-load the work the CPU does."
Jennifer raised a hand. "I've heard some people say that 64K of RAM should be enough for anything. What do you think?"
I looked around for help, but Dr. Brown was giving me a don't-look-at-me expression. I laughed, and he broke into a grin.
"Well," I answered, "lemme tell you my impressions of several of Motorola's CPUs. If I say the 6800 feels like a Volkswagen Bug and the 6809 feels like a Mustang, or even a Porsche, maybe I could say the 68000 feels a bit like a pickup truck. Ford F series, maybe."
No laughter, no comments. Everyone nodded.
I shook my head. "I guess you had to be there. Let's get technical. As I understand it, there are three limiting factors on speed. One is the speed of the memory system. If you have two microcomputers, and they both access memory at the same rate, they'll show similar speed in a wide range of applications. That means a 1 MHz 6800 and a 4 MHz 8080 are likely to be rather similar in speed, because the 4 Mhz 8080 will likely have a memory access rate of about 1 MHz.
"Note also that the clock for the 6800 is usually produced by dividing a crystal oscillator by four."
I paused while Julia wrote.
"Another limiting factor is instruction bottlenecks. There are certain common instructions that take considerable time. Different CPUs have different bottlenecks. One common bottleneck would be multiply and divide instructions. The 6800, the 8080, the 6502, and the Z-80 all do multiplies and divides in software, one bit at a time, and that takes about a millisecond for the multiplies and two milliseconds for the divide. The 6809 has a built-in 8-bit multiply that can cut that down to about a fifth of a millisecond.
"So it has significant advantages when you have to do a lot of multiplies. But it doesn't have a built-in divide, which many 16-bit processors have. Instruction improvements can cut the time for the divide to about half of the 6800's times and to about two-thirds the 6801's times. The 68000 and the 8086 have both multiplies and divides built in. I don't remember about the 9900. Dave?"
"Yes, the 9900 has multiply and divide instructions."
Again, I paused for note-takers.
"Another instruction bottleneck is index handling. The 6800 has only one index, which you must constantly save and restore, although the direct page addressing eases that bottleneck slightly. The 6801 has some more instructions to help with that, but still only has one index register.
"Index registers specifically help a lot when moving large blocks of data around memory.
"The 6809 has four index registers, so it does not need to save and restore nearly as much, and block moves proceed much faster. The 8080 has one true index and another register that helps the index register, and has a small advantage over the 6800 there, but is similarly limited to effectively one index register. The Z-80 and 8086 have dedicated multiple index registers that help a lot, but can be awkward to work with. The 68000 has eight general purpose index registers. The 9900 has, as I recall, 16 general purpose registers that can be used as indexes."
I checked with Dave again.
"Right."
"The third big factor is what Jennifer just asked about, the size of memory. 64K feels big. It works well for many things. But when you start trying to keep all sorts of commonly used functions in that, it is not as big as it feels. It's no fun to have lots of pre-defined functionality, but no room for your program. And it's also no fun to have enough room for your program, but to have to write everything from scratch so it will all fit."
I paused for breath and thought. There were still some students who weren't writing.
"Among other problems where address space becomes a bottleneck, sixteen bits of address is moderately large when working with text in English and similar languages with less than a hundred characters. But if you want to work with Japanese, like I do, Japanese has about 2000 characters for daily use, compared to our fifty some-odd in standard English. And Chinese uses, on the average, about 9000 characters, just for ordinary living.
"Historic Japanese characters number in the tens of thousands, and the unabridged Chinese dictionary has somewhere in the range of a hundred thousand. When trying to display those languages on a terminal screen, sixteen bits of address won't cut through that chili."
All the students were scribbling now. There were murmurs of understanding, but no response to my attempts at jokes.
"Wait." Wallace was one of the students in the digital electronics class.
"Yeah, Wallace."
"What exactly are characters?"
"Well, the twenty-six letters, ten numeric digits, and various punctuation."
"How does the CPU work with those?"
I looked back at Dr. Brown, and he just kept grinning as he tossed the metaphorical ball back to me.
"We use numeric codes as proxies -- substitutes -- for the characters in text files, and we have some mapping from those codes to the glyphs -- character shapes -- for printing or displaying on screens --"
I moved to the TV showing the Micro Chroma 68 output.
"Which helps explain when I talk about working with displays, like the TV screen here. We'll talk about how the mapping works later on, but the 6847 video controller in the Micro Chroma only gives me 32 characters across the screen and sixteen down, and that's a tight window to type in."
(When I said "window" here, I was using a broader, more metaphorical sense than the "windows" of a graphical user interface. The interface widgit we now call a "window" without thinking about it was simply an instance of the broader metaphor.)
"But it only uses about 512 bytes of display space in memory, which is nice when you have less than 64K of RAM. In character mode, 64K of addressing still only takes about six kilobytes of RAM, so it's still workable, but 512 bytes is much less of a resource hog.
"Graphical display is a different problem.
"The Micro Chroma 68's graphics display can do 256 dots across and 192 down, but only in one color. That's about fifty thousand pixels, or exactly 6,144 bytes of memory in this monochrome display. Jeff, can you load the cassette labeled 'laser game', so we can get a look at what that looks like?"
He found the cassette, and we took a look at a game I had written in BASIC to experiment with graphics, and the students cheered when the beam of light shot upward across the screen, erasing the objects there. Several students wanted to play with it, so I let them do so for a few minutes.
While they were playing, Giselle loaded up some programs to show fancy math curves on her Color Computer. Even the students playing stopped to look at that.
"Now that's still monochrome, green and black, even though Giselle's TV does color. And I personally think those pixels are fat."
"But it's graphics," Winston enthused. "It's cool!"
"Be more cool to put your face on the screen and shoot at it," Jennifer joked.
"Hey!" Winston was also laughing.
"But it would take more dots to make it clear whether you were shooting at Winston or someone else."
"Yeah!" Winston exclaimed, and there was more laughter.
"Dots half this size would be a screen density of 512 by 384, and just monochrome would take up 25 kilobytes of display memory. We'll look at how that's calculated later, but that's almost half of the address space of the 6800 that it would take to make it fairly easy to see the difference between Winston's face and Jennifer's."
More laughter.
"Necessary function." Jennifer stifled a giggle. "Can the Micro Chroma 68 do that?"
"Not without major surgery and a lot more parts. And that's not even talking about color and shading. Three colors and black, without shades or hues, takes two bits per pixel, so that would be 50 K of RAM at that pixel resolution."
Chuck, also from the microprocessors class, understood. "Dang. On an 8080 that's not going to leave much room for the program."
"On the 6801, too. We can use something called bank switching to make more RAM available, but bank switching is clumsy and takes time and other resources away from the work you want to do. I guess that's my point. We're starting with 8-bit CPUs, but there's going to come a time when you're going to want more than the address spaces they provide.
"The idea that 64K should be enough does not take into account a lot of the applications that will become interesting in the near future, for instance, mixing text from two languages with images, for an on-screen dictionary or encyclopaedia.
"Now I'm pretty sure I personally don't want to start with the 68000. Jumping ahead to the 6809, yeah, I've kind of thought about that, but the 68000 is a complicated beast. There's more going on in it than I understand what or why, and I want to know more about it before I dig in.
"But we do want to be looking ahead."
Suzanne, yet another of the students from the microprocessors class, asked, "So does the 6809 have a bigger address space?"
"Not without help. There is a separate chip that does something like improved bank switching, but it's still rather awkward to work with."
"Then how complicated is the 68000?"
"I have spec sheets." I dug into my backpack, but Ms. Steward interrupted.
"I've brought a pile of those."
"Let's pass them around," Dr. Brown suggested.
I got mine out and put them on the table for those who were close, and Julia and Giselle looked at them curiously over Mark and Jeff's shoulders. Dr. Brown and Ms. Steward passed out what she had brought for the 68701 and 68000.
"Is there enough for everyone?"
"I was only expecting twenty."
"Then please share. And, since she's got spec sheets for the 68701, we can compare. Note that the data bus on the 68000 is twice as wide, which likely means you'll end up having to have twice the memory for a minimal design. There's not even an A0 line on the 68000.
"Yeah, the more memory the better, but it's a bigger piece of your pocket change up front. It's also twice the number of data lines to hook up. And then there are the memory space function code pins and bus grant acknowledge pins and such that I don't know what to do with yet. And you want to run the CPU clock at least twice the 6801's crystal, unless you want a big truck that only goes half the speed of the 8-bit CPUs."
There were some chuckles.
"If 68000s were cheap, we could ignore most of the extra functionality for what we want to do now, but then we would be wanting to plan ahead, if we don't want to end up re-wiring huge pieces of things when we got ready to add all the memory we need. There'll be plenty of re-wiring as we go anyway, so we want to avoid what we can avoid.
"And the 8-bit computers we build will be nice tools to help build the bigger ones."
Mike spoke from the doorway. "So that's why the 6801?"
"Yeah, pretty much and I'm glad you could join us. You haven't really missed much yet."
"I saw the cheap laser game, anyway."
"Note the video cameras over there." I nodded toward Ms. Steward and Ms. Philips.
"Noted." He came in and moved around to sit in the only chair left, which was my chair. I noticed, as he sat down, that many eyes were following him with varying degrees and kinds of interest.
I noted that Julia shifted her chair away, and was not looking very comfortable.
"So what about the 68008?" he asked.
[Backed up at https://joel-rees-economics.blogspot.com/2020/04/bk-33209-headwinds-presentation.html.]
No comments:
Post a Comment
Keep it on topic, and be patient with the moderator. I have other things to do, too, you know.