I later did some 8086 assembler in my first job as well, mainly some routines for testing a QIC tape drive.
And yeah, there was C in that class too. Mostly enough to make sure you understood pointers so that you could get into the homework and shoot yourself in the foot repeatedly.
It was one of my favorite classes during my time there. I also had some 6502 experience which helped. But I think CS225 solidified the idea of "either you're going to understand this for the rest of your life, or you're not. Choose now."
The key was having some kind of terminal and modem back at the dorm so you could log into the system after the labs were closed. You literally had the entire machine to yourself all night long. =)
http://uranium.vaxpower.org/~isildur/vax/week.html
https://news.ycombinator.com/item?id=9841892
> The table address operand points to a table of polynomial coefficients. The coefficient of the highest-order term of the polynomial is pointed to by the table address operand. The table is specified with lower-order coefficients stored at increasing addresses. The data type of the coefficients is the same as the data type of the argument operand. The evaluation is carried out by Horner's method, and the contents of R0 (R1'R0 for POLYD and POLYG, R3'R2'R1'R0 for POLYH) are replaced by the result.
It wasn't a bad chip. The C language integration was really understated here. It's the only chip I've ever seen with a strcpy() opcode. Totally dangerous now, pretty wild back then.