The Novels

Economics 101, a Novel (Rough Draft) -- My first sustained attempt at a novel, two-thirds finished in rough draft, and heading a little too far south.
What would you do if you and your study partner, with whom you had been seriously discussing marriage, suddenly found yourselves all alone together on a desert island? Study economics?
Sociology 500, a Romance (Second Draft) -- The first book in the Economics 101 Trilogy.(On hold.)
Karel and Dan, former American football teammates and now graduate students, meet fellow graduate students Kristie and Bobbie, and the four form a steady study group.

Featured Post

Sociology 500, a Romance, ch 1 pt 1 -- Introducing Bobbie

TOC Well, let's meet Roberta Whitmer. Bobbie entered the anthropology department office and looked around. Near the receptionis...

Monday, January 13, 2020

Backup01: 33209: School

Backup of https://joelrees-novels.blogspot.com/2020/01/33209-school.html.

Chapter 2: Christmas Present -- Micro Chroma 68

Chapter 3: School


During December, I had spent a lot of time trying to study Japanese from Tera he the wrong way, looking up and trying to memorize every character, every word, every phrase, and every grammar principle I found. In spite of spending six hours or more at time, very little of it stuck, and I kept starting over. In a month, I had not progressed beyond the second page.

I sort of enjoyed getting lost in my Japanese dictionaries, but, in the days before the Macintosh's Kotoeri software, looking characters up when you didn't recognize how the character might be read required counting strokes, guessing the bushu (the primary radical subcharacter) and searching through pages of entries. A single character could consume an hour, if you didn't have the list of radicals memorized.

So I spent a fair amount of time exploring the dictionary and memorizing the radicals, which I had a bit better success at.

As I prepared for school, I realized that I was getting nowhere with the novel, and I wasn't really understanding and enjoying it, either. The dictionary appeared to be more interesting when I used that approach.

So I decided to quit trying to memorize everything, and only look up things I really had no idea about. And I set a limit of half an hour max per day. After that I enjoyed the novel and finished fairly quickly, even though I missed out on a lot of nuance. (Well, it still took a few months, but that was much faster than looking up every word.)

And I remembered more of the Japanese. Mis-remembered a lot of it, as well, but I remembered more.

(The real me took six months to come to this conclusion, even though I theoretically understood the principle before I started the novel. That's an example of why experience excels knowledge.)

With permission from Rusty Crane and Thomas Bright, the teachers in the Electronic Data Processing (now Information Technology) Department, I added a BASIC programming class to my winter schedule, to help me prepare for when we got the keyboards and had the Micro Chroma all wired up and running.

I had gotten an introduction to BASIC previously, in my high school industrial electronics class. And I'd had more time to get more familiar with the language after high school when I was working for Radio Shack in Odessa, and then in Salt Lake, working on demo units of the original model 1 of the TRS-80 microcomputer. So I was familiar with the commands and syntax, including the GOTOs, and had a head start on all the programming projects. That would keep the class from eating up too much of my time while I practiced programming.

The school counselor consulted with the school administration and teachers, and one programming class would be accepted as a substitute class for my electronics coursework.

For the first few weeks in the BASIC course, we used punched cards for programs and data. Then the school made room for us on a hard disk drive somewhere, and we each got 4K of storage. I got a little spoiled, running BASIC on the mainframe. I may still have some of those punched card decks stored somewhere.

After some simple introduction coding in the first two weeks, Prof. Crane explained how to use GOTOs to synthesize structured flow elements, and explained loosely how a stack in memory could be used to synthesize local variables. This was part of the answer to the argument about BASIC's deficiencies. With a bit of discipline, one can write structured code in BASIC, but BASIC itself doesn't help very much.

Then he showed how the syntax of Pascal implements both structured flow and variable locality, to relieve programmers of a lot of the burden, as a teaser for the Pascal class. He didn't show the underlying mechanisms, but my reading in the monitor ROM and the spec sheets helped me figure out some ways it might work.

*****

For English coursework, they let me skip the freshman review of grammar because I had good grades from high school, and I substituted a literature class that was mostly reading and book reports.
That left me needing a freshman or sophomore-level writing component credit, so I took a research lab, to practice research and bibliography techniques.

"Konnichi wa."

"Eh? What?" The young woman looked up in surprise from the table in the writing lab where she was working on homework.

"Aren't you Atsuko? Ms. Howell said you were Japanese."

"Well, yeah, but I'm here to practice English."

"Ah. That's good. I'm taking a research and writing lab for practice. If you have any questions, maybe I can help. I'm pretty good with grammar and stuff."

"Thanks. But English only, okay?"

"You got it."

"'I got it?' What's that mean?"

"Heh." I had to think. Since answering in Japanese was already implicitly stated to be not helpful, I couldn't just say, "Ossharu tōri," or "Ryōkai." But the latter translated back to English seemed possible.

"Okay."

"Okay? What's okay?

"'You got it.' is close to 'Okay.' in meaning."

"Hmmm. You got it." She looked at me in puzzlement. "No. Not okay. It doesn't make sense."

"Oh. So you don't see it."

"No, I don't see it."

"You don't get it."

"No, I don't ... get ... it." She thought for a minute. "'I get it.' means I understand."

"True." I raised my eyebrows, because I was surprised that she saw that.

"So 'You get it.' means 'You understand.' Right?"

I nodded. "Right."

She nodded. "Except that I would never say, in Japanese, 'Anata ga wakatta, ne.' in this situation. It would be rude."

I bit my lip. She was right. "But, ... no Japanese?"

She shook her head.

"No fair."

"Oh, okay, just this once."

"Wakatta ja nai desu ka?"

"No. Definitely not that. Not used here."

"One more?"

She sighed. "Okay, if you insist."

"Nozomareru tōri ni shite ageru."

"That's not Japanese."

I raised my eyebrows, but she shook her head. "I would not say it."

"Okay. Anyway, I was trying to tell you I would give you what you want. That's what okay would mean, right?"

"Hmm." After a few moments of thought, she nodded. "Okay, I get what I asked for. Maybe I get it. It just feels like 'Zama miro!'"

I sighed and rubbed my forehead. "You've got a point there. But it's not rude in English."

She was cute, but during the winter term, at times when we were both finished with studies and just talking, she made it clear that she had a boyfriend already.

The first time she said that, I grinned and said he was lucky. When she repeated herself later, I just nodded and said I understood.

*****

I took an easy statistics class that didn't get into the calculus of statistics. Not much to say about it, except that we had a bunch of students who figured out how to have fun with the statistics experiments and a teacher who thought students learning while having fun was great.

Once I had the Micro Chroma 68 up and running, I programmed it to do some of the grunt work for the more difficult projects suggested in the book that would have otherwise been beyond the scope of the class. The teacher was happy to demonstrate the use and results to the other groups, and some of the other students decided to look into taking the BASIC class.

I wished I had a better computer language to introduce them to, however.

*****

The AC circuits and digital circuits classes both felt entirely like review and lab practice, but, with the prototyping board, I had plenty to do outside of classes, so I didn't mind having two classes that didn't take much time outside the labs. Also, I probably needed the practice, especially with complex circuit analysis. It gave me time to get familiar with node analysis and such. Gave me a chance to brush up on the DC analysis a bit, too.

(In the real world, my schedule was rather different. Skipping these two classes may have been one of the reasons I did not end up implementing the second revolution.)

*****

I took a class in singer's diction, choosing a Japanese pop song, Itsuwa Mayumi's "Koibito Yo" (transposed down to my range), and a church hymn, William W. Phelps's "O God, the Eternal Father" (to a tune adapted from Mendelssohn's Abschied), for my recitals.

Atsuko came to listen to my recitals. She laughed at my choice of pop song. Said it was interesting to hear a guy sing it.

(In the real world, this was in a different term from when Atsuko was there. And I didn't have sheet sheet music for any of my Japanese pop songs, so I couldn't sing those. But I have often been told my a capello rendition of "Koibito Yo" is interesting, for some value of interesting.)

*****

Early in the term, across several nights after school and after delivering newspapers and collecting the customers' subscription money, I wired the BASIC ROM socket pins into the circuit board. It was a 4 kilobyte ROM, assembled to start at address hexadecimal C000. I checked the wiring carefully, and then powered it up. The monitor prompt showed, so at least the ROM was not causing bus conflicts or such.

(Motorola chose the convention of indicating hexadecimal numbers with the dollar sign, so C000sixteen would be written $C000 in their documents and code, and that's the convention I'll use from here.)

(And, in the real world, I don't remember for sure which BASIC interpreter I had, nor do I remember where it was assembled to start. The computer is across the ocean as I write this, which makes it hard to check many of my facts. But this is a novel.)

I have found that there are many problems that look hard at first, but after I have some time to just let them sit in my head, when I come back to them I can work them out. Shorting the keyboard input was one of those. I just needed to short the ASCII code into the PIA port, 1s through a resistor to +5V power, and 0s direct to 0V ground, then hit the strobe input, once for each simulated keypress.

It would be electrically cleaner to have each pin separately tied high through 100 kilo-ohm resistors, then just short the 0s low, but that was a fair amount of work, and had the additional risk of longer stretches of wire in the temporary circuits to cause unwanted shorts. And if I were going that far, why not latch the lines? And then provide a full front-panel interface with toggle switches? I decided not to go down that path until I tried the easy approach, with one common resistor to +5V.

I wrote down the combinations of lows and highs for the monitor command to jump into the BASIC ROM at address $C000:
G: 1000000 (71 -- $47) bit 6 high, the rest low.
C: 1000011 (67 -- $43) bits 6, 1, and 0 high, the rest low.
0: 0110000 (51 -- $33) bits 6 and 5 high, the rest low.
0: 0110000 (same)
0: 0110000 (same)
enter: 0001100 (12 -- $0C) bits 3 and 2 high, the rest low.
I could set the seven code straps up on the socket, than momentarily hit the strobe with the eighth strap wire.

It took several tries, because the strobe wire tended to bounce electrically, as if typing the same character several times in a row. When that happened, I'd have to hit the reset button. But, after several tries, I succeeded in starting the BASIC interpreter:

TINY BASIC FOR MOTOROLA 6800
VERSION 4.2
COPYLEFT
OK
_

Tiny BASIC Boot Screen B/W


(In the real world, I didn't try this before we got the keyboards connected and working. But BASIC did come up immediately when we first entered the command, while testing the keyboard.)

I thought that was cool.

I called Denny, and he thought that was great, too.

*****

Fred Burns from the other ward stopped me to talk in the hall between meetings for wards. (We had two wards of the church in Odessa, both meeting in the old chapel that is now part of the Bowie Middle School campus.)

"So, Joe, how's school? Classes coming together?"

"It's coming together okay, eh, ..."

"Fred Burns. Get the classes you wanted?"

"Pretty much, Brother Burns. I'd thought I'd try to finish the associates' degree in a year, but my brother talked me into slowing down so I'd have time for other things."

"Call me Fred. Your father tells me you're building a microcomputer."

"Well, yeah. My brother got me a prototyping kit from Motorola, where he works."

"Motorola. That would have the 68000 in it, then?"

"The 68000 would be cool, but we're starting easy with the 6800."

"I see. What do you plan to do with it?"

"Use it in classes for now. It has BASIC in ROM, so I can use it for a programmable calculator, and I'll probably be doing lab work for some of my electronics classes with it. Are you interested in microcomputers, too?"

"Not as a hobby, I get enough of computers at work."

"Oh. You work in computers?"

"I'm a computer technician for the local IBM office. Have you heard about IBM's summer internships?"

"No, can't say that I have."

"You should apply, get some experience and money."

"How would I do that?"

He laughed. "You know, I should've asked about that before I mentioned it. I'll check."

We talked a bit more, and agreed to talk again soon.

*****

Dad kept nuts, granola, roasted soybeans, raisins, and such in his desk, and I often stopped in his office for a light lunch. Julia was grading homework for Dad again, and she would sometimes be there, and we'd talk a bit about school and such.


[Backed up at https://joel-rees-economics.blogspot.com/2020/01/bk01-33209-school.html.
Earlier backup at https://joel-rees-economics.blogspot.com/2020/01/bk-33209-school.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.