Notes from
https://joelrees-novels.blogspot.com/2020/04/33209-headwinds-license.html.
Chapter 11.6: Headwinds -- Project
Chapter 11.8: Headwinds -- License
Parts, Radio Shack selling out of the composite video converter
boxes? Check if that's on-board!, and the electronics supply shop that
Julia's dad does business with.
IBM management: Megan Bight, James
Goldwater, Karel Wells
IBM Liaison: Robin
Turner
Motorola legal: Carrie Philips
Motorola Liaison: Stephanie Steward
TI: Dave Whetton, jayne Burdock
Microsoft's sins, lead to computers ampliphy ability to do things, including making big mistakes huge.
Path to conclusions leads through 2801ans 3801, maybe 9s?
License, just the need to be able to share, need to not share
Walk-through of disks, finding the bug,
Shift to interview
Presage IBM's interest.
Motorola point blank asks opinions about processors
Discuss complexity of 68000
Discuss directions for 6801, 2801 with direct mode unaries, 3801 with
Discuss internal competition,
Just,
what, two or three actual opcodes, one fixed case in status flag
generation, and the 6801 is much more nimble in data movement and a
couple of other common bottlenecks. If they had simply had the foresight
to completely repeat the addressing modes of the binary ranks into the
unary ranks in the original 6800, the 6801 could have included separate
address spaces."
And from here to the 2801, spreading
the missing direct page in the existing map and adding spaces, to the
3801, with 24 bit addressing and cached direct page and stack, and
separate return stack.
And the 6809 as a true step up, 32 bit address and 16 bit instructions.
Internal competition is a bad argument that perpetuates mistakes.
I
grimaced. "I have a hard time with the term 'intellectual property'.
But this is one of the reasons we all want to do our own work. To the
extent that we share, the parts shared should be owned jointly. And I
think we should all be free to use the parts we share in class in
commercial projects, too. I'm not sure how that will work."
**** (Mention 1985 for GNU and mid 1970s for others.)
Ms. Steward asked, "What are you planning to use for the monitor programs?"
"That,
I think, is part of the reason several of the students are wanting to
build the Micro Chroma 68. The monitor is already there."
Ms. Philips nodded. "Of course. Can I get your contact info?"
Ms. Philips and Dave traded business cards.
Dr. Brown caught my attention. "I think you should let me join the party."
*****
"Xerox
is talking about paperless offices. That takes a lot more processor
power than current microprocessors deliver, but we know about Moore's
rule of thumb describing progress in circuit density. Maybe the software won't be all there in ten years,
but the hardware will be getting there. Serial communications connecting
all the computers in a company, and you'll be able to send draft
documents across the country instead of trying to work it all in a phone
call."
Mr. Wells leaned back in his chair to think about that.
(The real me was having a really hard time seeing the epiphany that this alternate reality me sees at this point.)
I turned back to the students. "So don't expect the first computer you
build to be your last."
I had everyone's attention now.
Mike leaned back. "I'm not buying it."
"The
pace of development over the next ten or twenty years will be so fast
that people will be throwing computers away after using them for two or
three years, to make room on the desk for a new model powerful enough to
keep them competitive."
Giselle looked at me incredulously. "That's insane."
"It is now. It will become common sense."
Jennifer
chimed in, "I'm not complaining, but it seems hard to believe. How can
we even be sure our computers will keep working if they change that fast?"
"That's
an important question, and it's actually a good reason for us to be
building our own. Simply stated, a if you build a simple
computer yourself, it's easier to make sure it's running right that a
more powerful computer. In addition, the simpler computer gives you more
tools to make sure a more powerful computer is working right. Other
people can throw their computers away, but I'm going to keep mine
around, as a steppingstone to get me safely to the next
level."
George said, "If that's true, I guess starting small makes sense.
Dr.
Brown decided to speak up. "Well, Joe, I think you've run a bit far
down that road. Are you suggesting that you'll be able to use an old
computer to make sure there are no bugs in a new computer?"
"No. Especially not
by myself. Shoot, the Micro Chroma 68 over there is more complicated
than I'd be able to test by myself in a year of working full-time at it.
"We'll have to help each other,
but we'll definitely need to use the older computers to check the new
ones, or we'll be unable to prevent friends, enemies, corporate spies,
organized crime, salescrew, and government agents from having access to the
computers we put on the communications networks.
"Helping each other is part of the reason we are here now."
"Well,
that's all well and good," Mike spoke up again, "but what I really want
to know is who's going to own the intellectual property?"
I
grimaced. "I have a hard time with the term 'intellectual property'.
But this is one of the reasons we all want to do our own work. To the
extent that we share, the parts shared should be owned jointly. And I
think we should all be free to use the parts we share in class in
commercial projects, too. I'm not sure how that will work."
**** (Mention 1985 for GNU and mid 1970s for others.)
"To
the extent that it's your own work, you will own it. If you use bits
and pieces of reference designs and application notes, we'll need to
clear some things with the companies whose work you borrow from. Ms.
Pilips, do you have anything to add?"
"That's correct, but I'm also interested in your ideas about the shared work that will be going on."
"I'm
planning to use a different controller, the 6845, to display better
graphics. For the same resolution, 256 by 192, at four colors, that's
two bits per pixel, or 12 kilobytes. For sixteen colors, at four bits
per pixel, that's 25 Kilobytes.
"Dr. Flyer?"
President Flyer raised both hands. "Go for it. I can clarify if necessary."
"As
I understand it, Dr. Brown and others are working out an idea where our
little project could become a class for credit. If so, part of what
they want us to do is define what we want to build ourselves. Designing
at it yourself will be part of what gets you credit. They aren't going
to expect the next Apple II, but they want to see how well you can apply
the electronics you know. So, if you've been thinking you just want to
build what I'm building, you might want to decide know whether you want
the computer or the credit more."
This produced a bit of a buzz.
I
took a deep breath. "I think we could arrange a little agreement to
share our ideas, and to not use them in commercial work without each
other's permission."
Dave spoke up. "I was told I could promise TI's cooperation in clarifying any use of patents and copyrights TI owns."
Ms.
Philips nodded in agreement. "Motorola has the same attitude. The
hardware you build as students will be yours, but if you want to use
your designs commercially, we'll be glad to help you figure out what you
need to focus on."
Ms. Bight looked at her bosses in
amusement. "IBM will not be able to do that, not that we expect anyone
to be making use of IBM's intellectual property."
Mr.
Goldwater tilted his head and looked at Mr. Wells. "I think we need to
take that up with upper-level management. We don't want to put walls
up."
Mr. Wells nodded, and Ms. Bight raised her eyebrows in mild surprise and approval.
"Okay.
So I'd like us to share ideas and help each other test our work. I'd
rather just punt on the so-called intellectual property concepts, but it
looks like our society has passed that point. Maybe the college can
help us come up with a mutual license, for whatever we share here."
"The OC board and the UTPB board have been discussing that question, and we think we can help."
"Thanks.
Anyway, anything we don't want to share, we don't bring with us, we
don't share, we don't ask the class for help with. Let's think that over
for a week, unless someone has something they really want to share
today."
Winston spoke up. "What is intellectual property, anyway?"
I looked at Dr. Brown, who raised his eyebrows and didn't offer anything. So I looked over at Ms. Philips.
She gave me a slightly evil grin. "I want to hear your answer."
I looked around at Julia and Giselle, who both shrugged. My parents also gave me no sign of help.
"Well,
the US Constitution gives Congress power to ensure that authors and
inventors have rights to their inventions for a limited time, to promote
the arts and sciences. The arts here includes crafts and technology.
"The
Constitution also forbids certain trappings of royalty. Titles of
nobility are one of them. One of the ways a noble supported himself in
kingdoms was through something called a patent. It could be a patent on
the use of a bridge, such that a certain title of nobility included the
responsibility of upkeep of the bridge and the privilege of taking a
toll."
"I hope," Winston said, "You are not going to go off on one of your famous tangents."
I waited for the laughter to die down, chagrined.
"Okay.
We'll have to just note that I have many reservations about the current
practices of copyrights and patents, especially since the Berne
Convention on copyrights. I also take exception to the term
'intellectual property'. Ms. Philips used the term 'intellectual
capital' a few minutes ago, and I think I prefer that term."
Mike called out, "Get on with it."
I chuckled. "Okay. Trademarks." I found some space on the chalkboard and wrote it down, with a bullet.
"Trademarks
are long-term capital. They basically don't expire unless the owner
lets them. But they are only the rights to use a trademarked name or
logo for a specific product or service in a specific market. We have to
be careful about how we use trademarks in public, so that we don't
appear to be claiming we represent Motorola or IBM or TI, or any other
company. That's fairly straightforward, right?"
I didn't see any signs of disagreement.
"Okay, Copyrights." I wrote that on the chalkboard, as well, with its own bullet.
"Copyrights
are the rights to publish a literary or artistic work. If you can show
independent creation of the work, you can make your own claims to the
work, even if it is close to the same as something else that has already
been published, but if it is too close, it gets hard to prove
independent creation. But copyright is for publication.
"Respecting
copyright is basically the same as avoiding plagiarism. We don't just
straight-out copy from the application notes and claim or use the result
as our own. WE can all handle that, right?"
At this point there were signs of discomfit, but no questions.
"Patents." And I wrote that, with its bullet.
"I
suppose I have poisoned the well, but patents are the right to
manufacture an invention. Some say the right to control the use of an
invention, and they may even argue that successfully in court. I can't
accept that, but you need to know that there are some who will use that
legal philosophy as an excuse to waste your time and money in court.
"Independent
creation doesn't count at all with patents. It's not at all a defense.
There are limits to what can be claimed. You aren't supposed to be able
to patent something that has been patented before, but such things have
been done when no one noticed. And, again, people will waste your money
and time in courts over bad claims."
I could tell I'd lost about half of the class with my polemic. All the non-students were watching in amusement.
"I'm poisoning the well further."
Ms. Philips chuckled.
"Anyway,
our friends with Motorola and TI have said they will kind of wink at
our student projects, but, if we start making and selling stuff, or even
make something to use in something other than our own education, we
need to talk to lawyers who understand patents. And then have our
lawyers talk to their lawyers.
"The school boards have
expressed willingness to help, but we should remember that their
lawyers can't work for free, and will have some responsibility to the
colleges. If we plan to build a computer for the class and use it in
some oilfield operation, we should probably talk to a patent lawyer
about it first.
"Beyond that, I'm not going to make any recommendations."
Nobody was happy with hearing that.
Mr. Wells spoke up again. "I think there won't be any problems, as long as you use common sense about what you do."
Ms
Philips grinned. "Warnings are good, but I'm with Karel on this.
Discuss such questions with Dr. Brown, other teachers, your parents,
school counsellors, friends, use a bit of caution and common sense, but
lets not get too tangled up in what can go wrong relative to
intellectual property or capital."
There was a general feeling of relief in the room.
"Thanks. I sometimes get too negative when I talk about this."
I looked over at the lab table, where Jeff and Mark were waiting patiently. Or impatiently.
"Ah. Well, let's move on to the trainers. Mark and Jeff have volunteered to demonstrate theirs. Which of you wants to start?"
They
looked at each other, and Jeff held his up. "Well, at least these are
not complicated enough that I'm worried about rights to my intellectual
property."
Mark held his up, too. "Jeff's and mine are a
little different. Joe and Julia helped us get these designed and built
over the last two days. As Joe says, we need monitor programs in the
ROMs, but for now, we've burned a little program in to flash the LEDs
when we press a key."
Both demonstrated the display segments flashing in sequence.
Ms. Steward asked, "What are you planning to use for the monitor programs?"
"That,
I think, is part of the reason several of the students are wanting to
build the Micro Chroma 68. The monitor is already there."
There was a general nodding of heads.
"You
mentioned to Denny the possibility of building a daughterboard to plug a
6803 into the Micro Chroma's mainboard. Do you think you can handle the
design on that?"
"Well, I hadn't thought of the 6803,
but several of the students were enthusiastic when I mentioned the
possibility of doing that with a '701. I'm pretty sure I can show them
how to do that."
"We can make 6803s available to
students who want to do that, if you're willing to commit to helping
them. Denny can help if you run into problems. Are you planning on
building your own trainer?"
"Yeah, I put a design together. Julia has the schematic, I think."
"Uhm," Julia looked at me a little hesitantly.
Mr. Cisneros spoke up. "She and I put that together last night."
I looked over at Mr. Cisneros.
He nodded. "I didn't think you'd mind."
Julia yawned. "It was fun. We didn't have anything at home to burn the ROM, though. Did you bring it, Dad?"
He pulled out his briefcase and opened it up, and I looked it over.
"Okay,
let's see if it runs." I popped the 68701 out of its socket and plugged
it into the EPROM burner and booted the computer. Mark gave me the
cassette with his program saved on it, and I loaded it into the editor,
adjusted it for my circuit, and burned the EPROM. When the EPROM passed
verification, I shut down power to the EPROM burner and popped the 68701
back into the trainer, and let Julia power it up. She pressed a key,
and the LEDs sequenced like on Jeff and Marks.
"And this is your own circuit?" Mr. Goldwater asked.
"I sure don't know enough to have designed it," Julia responded.
"Yeah, it's mine."
"So what monitor are you planning to use?" Ms. Steward asked.
"I'm planning on writing my own, just as soon as I can get these disk drives fully working."
"Ah. The disk drives." Ms. Bight turned towards Mr. Goldwater.
"We'd like to see those."
I
quickly demonstrated the most recent work from the night before, and
let the groups from IBM, Motorola, and TI examine the circuit boards and
my rough diagrams.
Dave took his time looking over the
wiring and the diagrams. "Man, I get why you want to fly on your own,
but would you be willing to walk me and a couple of engineers I work
with through what you did here? There would be consulting fees."
Ms. Philips cleared her throat. "How much of that is from Motorola application notes?"
"It's completely different from the app notes I have."
"I think we'd like Motorola engineers to be present, if you do consulting with TI based on this."
I looked back to Dave.
"It'd
be okay with us. No, I think it would be best that way. But we'd want
to be sure Motorola pays fare money for what they get out of it."
Ms. Philips nodded. "Of course. Can I get your contact info?"
Ms. Philips and Dave traded business cards.
Dr. Brown caught my attention. "I think you should let me join the party."
I raised my hands. "The more the merrier. How about you, Ms. Bight?"
"I'm invited? Of course I'd like to come if I can fit it in my schedule."
Several
of the students had questions, and we brainstormed for about a quarter
hour. Among the questions, several students wanted to know if they could
use other processors and still work with us. I said I thought no one
would mind, and Dr. Brown assured them that, if no one else could help,
he would, and there were no complaints.
When that began
to wind down, I demonstrated the parts of the controller I had working,
showing how the controller and drive were able to address track and
sector, and how the floppies produced with the 68701 controller on the
Micro Chroma 68 were not yet compatible with those the Color Computer
produced.
We got out a scope and used some test data written by each to get a look at the timing between sectors.
"Ah.
See that? My calculations for the timing to reach each sector is a bit
quicker than the timing for the Western Digital controller." I let the
students look at it the patterns on the scope, then showed them the
source code for the section that set the timing up.
There were complaints and doubts, so I showed more measurements.
"Can you fix it?"
I checked the clock, and Mom noticed.
"Oh. I have something I need to go take care of."
"Sorry Mom. Thanks."
"Sure."
"And I'll help her." Dad left with her.
I
rewrote the code, burned a new 68701 to save time and keep the old
version around, plugged the new 68701 in, and formatted a disk on the
Micro Chroma 68. Then I used the newly formatted disk to save and load
files on the Color Computer, and some of the students cheered.
Bob asked, "That floppy disk controller is the 68701?"
"Right.
The same one that we can use as a simple replacement in a repeat design
of the Micro Chroma 68. Ms. Philips, what will Motorola have to say
about reusing Micro Chroma 68 design?"
"As long as it's
student projects using our regular application notes, we probably won't
have anything to say. But if someone wants to make a product of some
sort based on our designs, that definitely will need to be cleared with
us first. If there's something you're worried about, we'll leave our
contact information with Dr. Brown."
After all the
students were gone except Julia, I met with the IBM group and the
Motorola group together, showed my earlier work with raw I/O again, and
let them look over the schematic diagrams I had. They thanked me, and I
gathered up my stuff and Giselle's with Giselle and Julia's help, and
left while the board members and Dr. Brown met with them.
Julia followed me home again in her car.
"Well, are there any papers left for me to deliver?" I asked as we brought stuff in from the Colt.
"Nope. Sorry, we done it all by ourselves." Mom grinned at me.
"Sorry. Thanks."
"How did it go?"
"I guess I'll know soon enough. I did fix a bug in the controller code."
*****
And the 6809 as a true step up, 32 bit address and 16 bit instructions.
Internal competition is a bad argument that perpetuates mistakes.
*****
Ms. Steward asked, "What are you planning to use for the monitor programs?"
"That,
I think, is part of the reason several of the students are wanting to
build the Micro Chroma 68. The monitor is already there."
There was a general nodding of heads.
"You
mentioned to Denny the possibility of building a daughterboard to plug a
6803 into the Micro Chroma's mainboard. Do you think you can handle the
design on that?"
"Well, I hadn't thought of the 6803,
but several of the students were enthusiastic when I mentioned the
possibility of doing that with a '701. I'm pretty sure I can show them
how to do that."
"We can make 6803s available to
students who want to do that, if you're willing to commit to helping
them. Denny can help if you run into problems. Are you planning on
building your own trainer?"
"Yeah, I put a design together. Julia has the schematic, I think."
"Uhm," Julia looked at me a little hesitantly.
Mr. Cisneros spoke up. "She and I put that together last night."
I looked over at Mr. Cisneros.
He nodded. "I didn't think you'd mind."
Julia yawned. "It was fun. We didn't have anything at home to burn the ROM, though. Did you bring it, Dad?"
He pulled out his briefcase and opened it up, and I looked it over.
"Okay,
let's see if it runs." I popped the 68701 out of its socket and plugged
it into the EPROM burner and booted the computer. Mark gave me the
cassette with his program saved on it, and I loaded it into the editor,
adjusted it for my circuit, and burned the EPROM. When the EPROM passed
verification, I shut down power to the EPROM burner and popped the 68701
back into the trainer, and let Julia power it up. She pressed a key,
and the LEDs sequenced like on Jeff and Marks.
"And this is your own circuit?" Mr. Goldwater asked.
"I sure don't know enough to have designed it," Julia responded.
"Yeah, it's mine."
"So what monitor are you planning to use?" Ms. Steward asked.
"I'm planning on writing my own, just as soon as I can get these disk drives fully working."
"Ah. The disk drives." Ms. Bight turned towards Mr. Goldwater.
"We'd like to see those."
I
quickly demonstrated the most recent work from the night before, and
let the groups from IBM, Motorola, and TI examine the circuit boards and
my rough diagrams.
Dave took his time looking over the
wiring and the diagrams. "Man, I get why you want to fly on your own,
but would you be willing to walk me and a couple of engineers I work
with through what you did here? There would be consulting fees."
Ms. Philips cleared her throat. "How much of that is from Motorola application notes?"
"It's completely different from the app notes I have."
"I think we'd like Motorola engineers to be present, if you do consulting with TI based on this."
I looked back to Dave.
"It'd
be okay with us. No, I think it would be best that way. But we'd want
to be sure Motorola pays fare money for what they get out of it."
Ms. Philips nodded. "Of course. Can I get your contact info?"
Ms. Philips and Dave traded business cards.
Dr. Brown caught my attention. "I think you should let me join the party."
I raised my hands. "The more the merrier. How about you, Ms. Bight?"
"I'm invited? Of course I'd like to come if I can fit it in my schedule."
Several
of the students had questions, and we brainstormed for about a quarter
hour. Among the questions, several students wanted to know if they could
use other processors and still work with us. I said I thought no one
would mind, and Dr. Brown assured them that, if no one else could help,
he would, and there were no complaints.
When that began
to wind down, I demonstrated the parts of the controller I had working,
showing how the controller and drive were able to address track and
sector, and how the floppies produced with the 68701 controller on the
Micro Chroma 68 were not yet compatible with those the Color Computer
produced.
We got out a scope and used some test data written by each to get a look at the timing between sectors.
"Ah.
See that? My calculations for the timing to reach each sector is a bit
quicker than the timing for the Western Digital controller." I let the
students look at it the patterns on the scope, then showed them the
source code for the section that set the timing up.
There were complaints and doubts, so I showed more measurements.
"Can you fix it?"
I checked the clock, and Mom noticed.
"Oh. I have something I need to go take care of."
"Sorry Mom. Thanks."
"Sure."
"And I'll help her." Dad left with her.
I
rewrote the code, burned a new 68701 to save time and keep the old
version around, plugged the new 68701 in, and formatted a disk on the
Micro Chroma 68. Then I used the newly formatted disk to save and load
files on the Color Computer, and some of the students cheered.
Bob asked, "That floppy disk controller is the 68701?"
"Right.
The same one that we can use as a simple replacement in a repeat design
of the Micro Chroma 68. Ms. Philips, what will Motorola have to say
about reusing Micro Chroma 68 design?"
"As long as it's
student projects using our regular application notes, we probably won't
have anything to say. But if someone wants to make a product of some
sort based on our designs, that definitely will need to be cleared with
us first. If there's something you're worried about, we'll leave our
contact information with Dr. Brown."
After all the
students were gone except Julia, I met with the IBM group and the
Motorola group together, showed my earlier work with raw I/O again, and
let them look over the schematic diagrams I had. They thanked me, and I
gathered up my stuff and Giselle's with Giselle and Julia's help, and
left while the board members and Dr. Brown met with them.
Julia followed me home again in her car.
"Well, are there any papers left for me to deliver?" I asked as we brought stuff in from the Colt.
"Nope. Sorry, we done it all by ourselves." Mom grinned at me.
"Sorry. Thanks."
"How did it go?"
"I guess I'll know soon enough. I did fix a bug in the controller code."
Chapter 11.8: Headwinds -- Interviews
[Actual text backed up at https://joel-rees-economics.blogspot.com/2020/04/bk-33209-headwinds-license.html.]
[JMR 20200425: Earlier notes, from early March and before]
Chapter 11: Headwinds
Chapter 12:
"Hello, Mr. Cisneros."
"Hola, José. Que tal?"
"Bien, gracias. Y usted?"
"Bien, bien. ¿Será divertido la iglesia?"
I chuckled wryly. "Perdóname. No hablo español."
"Mrs. Bight. I wasn't expecting you until Thursday."
"Hi, Joe. This is my boss, Geoff Hollowell. Dr. Brown mentioned you had a project organized."
"Not yet."
Professors Bright and Crane joined as well,
I considered putting a 68701 on each drive, so that reads and writes
to each drive could proceed independently and concurrently, and I spent a
little time thinking out a circuit which used eight kilobytes of RAM to
store an entire track's waveform, converting the data to the waveform
in RAM and writing the RAM directly to the disk head instead of using a
state machine to convert. I decided that would be a project for a
universal disk drive, and shelved it for the time being.
For compatibility, I
I decided to put a 68701 in each drive, with a kilobyte of static RAM for a buffer.
went home and focused on the controller that would bridge between the read/write logic on the drives and the CPU.
,
but my lab partners and others asked me if we could get together and do
more design work. Dr. Brown suggested it would be a good idea to have
another project meeting, so I agreed.
After classes, I
went back to the lab. My lab partners and several other classmates were
already there, and I sketched a diagram on the chalkboard while I waited
for the rest.
By
the time Ms. Bight was able to come check my work the next Thursday, I
had my first version of the MFM read state machine put together, and was
able to extract data from floppies written by Giselle's computer. She
was impressed by that, and just as impressed by the test rigs that I had
used to do the raw I/O.
"That's seeing how to start
simple. It's a really important skill. Most people try to start with
things that are too complicated."
(The real me did that
a lot -- starting with things that were too complicated. Succeeded too
much at it, too, and never got broken of the bad habit.)
Before
she left, she discussed my work with Dr. Brown for several minutes.
Then she thanked me with a grin, promised she'd go to bat for me, and
left.
"Dang, you've impressed her. And I'm not sure she's not sweet on you, either."
"She's ten years older than me."
"Older women can be interesting."
I gave him a dirty look.
"She's helping you because she's impressed with your work and she should be. But I'm not sure --"
"Yeah, yeah, put a bag on it."
"You've got a few of the young-uns sweet on you, too."
I
shook my head. "Maybe I should have Julia stick around when I'm deep in
the math. She should see me at my best. I don't think she can handle
it. Pat, I'm not sure, but I don't think she's into the hard math,
either."
"More'n them two."
"Really?"
"Yeah." He didn't elaborate.
"Thanks for the lab time today. Got to get home and throw those papers."
"Throw 'em good."
I
tried to think about what he said while driving home, but pretty soon
the state machines were crowding other thoughts out of my mind.
When I got home, I had a package from TSC in the mail -- cassettes, floppies, and manuals.
*****
I
built three more versions of the state machines for MFM over the
weekend, before I had the drive electronics working reliably, but the
third version was rock-stable. I wired up a second board for the
double-sided drive, and tried both on Giselle's computer, as second and
third drives. Worked like a charm.
Giselle was
impressed. "With just one drive, it's a little hard to use, but with
another, so I have the programs on one drive and the data on the other,
I'm beginning to be motivated enough to remember the commands."
I sent Denny the schematic for the electronics, and he shared them with his friends.
*****
Monday,
I started working on defining the functions performed by the Western
Digital floppy drive controllers Radio Shack was using.
Tuesday, I discussed my progress with Prof. Crane and Prof. Bright.
"Are you sure you haven't had enough, just getting the drive electronics working?"
"Well, Professor Crane, no, I haven't. This just gets more interesting."
Prof. Bright laughed.
Pat smiled wistfully. "I wisht I could follow what you're doing, too."
"You aren't interested in watching me work on this one, either?"
"When you're ready to get the OS installed, then I'll be interested. The electronics side is too deep for me."
After
classes, I borrowed the electronics lab and worked out test routines
for the more basic definitions, interfacing the drive electronics
more-or-less directly Micro Chroma 68, through latches and shift
registers.
Tuesday afternoon, Ms. Bight
called and asked if I could do another demonstration for her bosses on
Friday, and I agreed to take my computers to the IBM office in Midland.
That evening, I sketched out the diagram of circuits to test my initial definitions, and started wiring them up.
Wednesday,
I coded up the routines I had been using on the Micro Chroma 68 and
burned them to a 68701, and plugged it into the controller. I couldn't
get it to do anything beyond prove that the 68701 itself was operating
that night.
On Thursday, I borrowed the lab at school
again, using a scope to figure out where things were going on the 68701.
I was able to get it to seek to a track and to load and unload the
heads before I headed home. After the newspapers, I managed to get it to
read a track and put part of it out to the Micro Chroma 68, but the
computer got behind trying to read the data.
Friday
after classes, I rewrote the read function to use a 32 byte buffer
defined in the 68701's internal RAM, and succeeded in reading a whole
track. And that was what I took to my meeting with Ms. Bight's bosses in
the evening, after throwing the newspapers.
*****
Non-disclosure.
Mr.
Goldsmith sat silently while I ran through the raw read and write
demonstration. His boss, Mr. Wells, asked me quite a few questions about
my choices of technique, to which I often had to answer that I really
didn't know why. I could claim to be working by step-wise refinement,
but that was about the only thing organized about what I was doing.
Then
I demonstrated using the 68701 to read a track, and Mr. Goldsmith
finally broke silence. "Why on earth do you use the 6801?"
"It's what I have access to."
Discussion of scientific computer, 68000's infelicitous design choices, etc.
Disparaging of the motorola cpus, inviting to Boca Raton
HInts of what work is going on in Boca Raton, also in Massachusetts.
Ends with indicators in all directions.
, but the arrivals included more than students.
"Mr. Flyer. Hello. I suppose you're here to talk with Dr. Brown." Mr. Flyer was the college president.
"Nope." Mr. Flyer looked at me solemnly. "I'm here to see what's brewing on my campus."
Dr. Brown looked up at me from his desk with his usual grin. "I didn't figure you'd mind."
I turned to Mr. Flyer. "I hope we won't be wasting your time."
"Oh, no, I don't expect you will be."
Several
members of the college board came and introduced themselves to me
before sitting down. Some students from the microprocessors class were
also present.
Julia, Giselle, Dad, Pat, Mike, and
George were among those who came early, and I listened to them chatter
while I thought about what I had gotten myself into, and prayed for help
making the meeting useful to those who came.
"Are all the students who were here Friday here?"
Fifteen students raised their hands.
Winston counted hands. "Yep. This is everyone I remember."
"Okay,
I'm going to be winging this, so I don't have any notes of my own.
Everyone take notes if you want to take anything with you."
I stood up to the board and sketched.
FIG stuff shows up about here? Or after I get Flex running?
*****
Julia
expressed no further interest in watching me work, but Pat and some of
the other data processing students, and several of the electronics
students, regularly dropped by to check my progress.
It
took three versions, but I was able to reliably exchange data between
Giselle's computer and mine using floppies after working on it for
another week. I was also able to use my drives with Giselle's computer.
I got the serial ports talking to each other reliably in the process, as a second means of transferring data.
I
put the schematics in the mail to Denny, with the source of the serial
port software, and he passed them on to his friends. One of his
coworkers wanted to have a circuit board made, and then their boss got
Motorola involved. I didn't find out about that until later.
The
TSC order had come in, and I wanted to get the OS up. So I was busy
replicating the function of the Western Digital FD17xx series floppy
disk controllers using the 6801.
I wanted to use the 6805, but I didn't have an assembler for that processor yet.
The
newer version of TSC's assembler for the 6800 recognized the added 6801
op-codes and generated code for them, so I didn't have to resort to
manually inserting the machine code for them.
With the
the 6801's internal RAM, I experimented with a buffers of up to 64
bytes. The buffers helped improve the reliability of the HALT-mode
busy-wait controller operation which Radio Shack had built their
controllers around -- essentially ignoring all the useful features of
the 6809.
I built the controller for the Color Computer
essentially to prove to myself that what I was doing would work.
Giselle commandeered it and set the controller from Radio Shack aside.
And I sent that to Denny, too, so I could see what I had done.
By
that time, his boss had told him to hold off passing things I sent him
on to his friends until after Motorola's legal department reviewed it.
So I got a call from Denny the evening the schematic arrived, and he
explained, and asked what he should do.
I decided to
pray about it, and asked him to do so, as well. I also asked Dad and Mom
and Giselle to pray with us, and Denny asked Denise to join him. We
decided to fast that Sunday.
In the meantime, I had the controller for the Micro Chroma 68 worked into shape.
Answer to prayer, listen to Motorola, but don't sell them rights.
Got the OS running.
Demonstrating the controllers to Ms. bight and her boss's boss.
Schematic and program sent to Denny. Denny passes them on to Motorola.
Meeting
with Motorola, discussion of internships and such. Motorola asks
permission to discuss my internship with IBM. Agreement to patent
certain parts that certain courts might think non-obvious, just for
safety, and include free license in the patents and mention in the app
notes. I get to write first draft of app notes. Inquiry to Radio
Electronics.
Got to insert observation of results of improper reset somewhere before here.
Programming 6801s and 6805s.
Electronics for the drives, and the controllers.
One
week of research, Dad buys floppy and controller for Giselle and him
and for me to check against. I spend time in lab comparing inputs and
outputs. I get electronics working so that the drives can be swapped out
on the RS controller, and the controller can control the RS drive and
the two drives I bought. I send Denny the schematic at end of first
week, he sends me corrections by end of third.
at end of first week, Ms. Bight calls about bosses' negative reaction to Motorola CPUs.
Second week gets a 68701 imitating the WD controller, again exchanging notes with Denny.
In second week, Ms. Bight calls about bosses' boss's positive reaction.
Flex, etc., comes.
Third week, flex running.
Forth comes.
Fourth
week, Motorola wants to use circuits in application notes, wants me to
do article for Radio Electronics (back up to check and add in with pop
el.)
Fifth week, Motorola will check my article,
Spring
break, analyzing Forth, ROMming the figRorth high. Rewriting as
subroutine calls for 6800, not virtual machine, return stack is CPU
stack, parameter stack is DP variable.
Internship, IBM gets CCs on article to "check for IBM stuff".
Teaching myself Pascal, C, and Forth, article query for BYTE comparing the languages.
1K Buffered interface?
By
mid-August, first article appears in Radio El., my rewrite of Forth
complete, with debugger and assembler as part of the Forth, and
rudimentary shell.
Engaging with IBM to clear IP claims, with Motorola's help. Schedule to write up for Kilobaud.
Japan trip, Chikako eavesdrops on train, goes to missionary English class. Pen pal arrangement.
Tochigi/Oyama, Tedachi family, plus others I taught.
Somewhere in Japan trip people recognizing my name from Radio El., make connections with Fujitsu employees and others.
Radio/TV class in fall, pushing all projects forward.
Micro Chroma 6801 during fall. 6847/6845. Shinkō/6801 OS. 64/80 column smart-ish terminal with 6801/6845 combo.
Does IBM pick up Micro Chroma 6801 as an entertainment product?
Micro
Chroma 6809 during winter/spring 1982, with MMU and option between 6847
and 6845, runs OS-9. Shinkō/6809 OS. IBM? Tandy and others pick up and
extend Micro Chroma 6809 as product, competing with PC.
Demonstrate bootstrapping as an exercise in security, without auto-validation.
AAS
at end of summer 1982. Money coming in from publications. Year in Japan
at Kobe-Dai. Developing Shinkō/68000, learning Japanese for real.
1983 BYU for no good reason (Japanese language classes?). Start physics, butt heads with physics professor, etc.
Return to UTPB for bachelor's?
Somewhere in here the OS is known for resilience by means of split stack and firewalls.
Begin process of making it verifiable with bootstrapping and auto-verification.
Independently demonstrate Ken Thompson's trusting trust conundrum.
EE/CS major, Japanese minor. Graduate in one year with transfer credits from Kōbe Dai and OC, start double MS in CS/EE.
WordPerfect developed on Micro Chroma 68K before IBM PC?
Target
-- Realizing that a perfect PC with no vulnerabilities under control of
government would be worse than the vulnerability-ridden stuff we have?
No, because control of government means vulnerability-ridden.
....
Find trust violation trojans in some tools.
Trace to nascent NSA.
*****
Floppy drives take two weeks to get working. Order Flex. Forth comes. Get Forth self-hosted, ROM high/RAM low running.
Mid-march,
Megabyte tells me her superiors are not interested in Motorola PC, and
indicate I should not be, either. Point me to 8088. I report on Forth.
Some talk about gender discrimination and sexual harassment.
Consider buying Pascal compiler. (?)
Easter/spring break, half in Austin, get Flex running smoothly.
Start writing Forth-as-library, including disassembler, register display, single-stepping.
Denny's friends using my circuit modifications and Forth.
Begin
design of Micro Chroma 68701, monitor+headers in 2 KB internal ROM, use
only internal RAM, keypad on external PIA, 7-seg LEDs, cassette
interface. Cassette can do Kansas City and high-speed MFM with ordinary
cassette. Add-on board, use headers, jumpers, add PIA for keyboard, and
add shuffled dRAM, VDG, and keyboard. Add serial ports for terminals and
printers and floppies.
Later Motorola will help me
publish articles in magazines.]
By
Easter break, I was able to add the fast cassette interface and get it
working reliably, wire the second version RAM expansion board with it's
own refresh controller in the back half of the duty cycle where it
wouldn't interfere with the CPU, put extra ROM sockets on the same
perfboard with the RAM, wire the EPROM burner and 68701 programmer on
another perfboard, undo the original RAM expansion board and wire more
serial and parallel ports on it, and add the DMA controller to the
mainboard kludge area, to take some of the I/O burden off the CPU and
give it fast block moves.
I ended up postponing deciding where to mount the breadboard pads.
When I came back, I ordered a copy of the Flex operating system from TSC.
We
decided to use the same controllers that Radio Shack was using in the
Color Computer, for interoperability with floppies written on other
computers.
I kept Ms. Bight posted on my progress.
As things came together, Denny's managers began expressing interest, as well.
Over
Easter break, Denny brought their family up again. Dr. Brown was
interested enough in what we were doing to arrange a couple of days we
could go in and use the school lab, and we were able to get the 6802
talking to the floppy controller which we had added to the same card
with the extra serial and parallel ports.
The copy of Flex made it
in time for us to get the drivers written, and get it operating with
the floppies and talking to Dad's printer.
All of that was done
Wire ram one week.
Fast cassette one week.
Rewire ram plus rom sockets, including fast cassette, one week.
March
Wire DMA on mainboard one week.
Wire ports one week.
Wire rom burner one week
Get disk drive running over spring break, including drivers for Flex.
*****
Since I could use it, I went ahead and sent TSC a check and an order for my own official copies.
For the RAM circuit, I set up the address select so that one bank of 32K RAM followed the 8K of user RAM in
the bottom half of memory, running from $2000 up to $9FFF, so that Tiny BASIC would have a total of 40K of contiguous RAM to
work with. This would give us room for very large arrays and such.
To
refresh the dynamic RAM, I ignored the refresh circuit described in the
manual and reversed the lower and upper addresses of the RAM. This hack
allowed me to borrow the video display scan signals for refresh. I used
an extra port bit for a 32K bank switch.
From Tuesday
to Thursday, after classes and delivering the papers, I worked on wiring
the first version of the RAM circuit. Lots of little wires that had to
go to the right places, but I took the time to get them right.
Both
banks worked as long as they were not switched out. This was good
enough for the time being, so I took a Xerox of the diagram and sent it
to Denny in the mail, with the warning about the banks not being stable
when switched out.
Giselle continued borrowing the computer while I was working on other things.
Friday, Dad came home with a printer.
"Seven hundred dollars, Dad."
"You can let Giselle and me use the computer sometimes?"
"Uhm,
sure. But I need to wire up another parallel port." I did that quickly
on the second perfboard, and we had the printer working. Dad sat down to
compose a test, adding the diacritical marks by hand for the time
being.
I focused on working out a way to add the DMA controller
redesigning
the dynamic RAM circuit, adding a counter for the refresh cycle,
keeping the refresh strobe in the back side of the clock so that it
would not interfere with the CPU. I also added some ROM sockets to the
design.
Saturday was the Valentines Day dance at the ward, and I took my stereo in and played disk jockey in the evening.
Denny
looked for Exorciser card-edge connectors, but couldn't find any that
weren't expensive. He did find some lists of software, and sent the
lists to me, with the friend's schematic for the fast cassette
interface, and a ROM to control it.
I worked out some
circuit designs for adding ROM and RAM, and for serial and parallel
interfaces, and for the EPROM burner, using vertical headers instead of
the mo.
I continued to work on it, getting a daughter card with four ROM sockets and the dynamic RAM put together, conne
No,
not going to be too ambitious about the thing. I'll add ROM sockets as I
need them. The RAM is going to just use the hack, and it'll only use
half the RAM.
I need the EPROM programmer and the fast
cassette interface, and I need the FORTH source on cassette. Don't want
to waste the time typing it in. Want to use the time analyzing it and
working out a library with symbol table that I can assemble calls to.
I finished out the semester okay,
carrying the Micro Chroma to school wrapped in aluminum foil on
occasion. I showed it to Jack, and he said I could use it in the
microprocessors class, but only if I took the BASIC ROM out to pass
things off. I also took it in a couple of times to use as it was for a
couple of projects in the BASIC class. Rusty was enthusiastic about it.
Thom was less enthusiastic, but still impressed.
The
letter from Satomi turned my world a little upside-down.
Have to have the tape
drive and assembler in time for the end of the semester, to do the song
on the 6800 in 1 bit and with the Y thing from RS.
Musical acoustics, singer's diction
The transistors and amplifiers class was good background, and I began
to understand why amplifiers are used in digital circuits -- not to
change the voltage, but to control current output, and therefore the power
out, to allow more devices to be driven from the output. Also, by using hysteresis, making sure 0s were 0s
and 1s were 1s. It was a lot of review, but that also gave me extra
time.
And the microprocessors class. Again, I had the introduction from
high school. But I always felt frustrated with the 8080, finding myself
with results in wrong registers and stuff on the stack in the wrong
order. Learning how to index the stack felt like a chore.
Milestones:
IBM internship, need the Microchroma functioning, with Forth and EPROM
programmer, by the start. Also need switching power supply to take to
Japan.
MicroChroma gets attention from IBM or no?
IBM PC announced in August. I'm unimpressed specifically because it is neither the 68000 nor the 6809.
Two weeks in Japan, congratulate Satomi and Fukumasa. Meet some people, teach English, discuss coming back.
Meet Chika, arrange to be pen pals.
Meet somebody in Fujitsu, look at Fujitsu's 6809 units. Satomi's husband? Sanyo? (Why do I think Sanyo had 680X stuff?)
More
coursework at OC, in fall. Design 6801 and 6809 learners kits for 8080
learner kit option. 6809 kit is expandable to PC with 6845 and DMA, gets
published.
Finish electronics course in winter 1982,
head to japan for a year, 1982 to 1983. Teaching English, playing with
computer, designing 68000.
BYU with hardware, argument
with Physics prof. Engineering/CS double major, but focused on
OS/library/subroutine compiled Forth with Pascal interpreter, etc.
Forth by subroutine, C front end, tightening
verifiable systems
NSA eavesropping
wake up? carry w3M
Danielle?
Chapter 13:
[Backed up at https://joel-rees-economics.blogspot.com/2020/03/bk-33209-.html.]