I used to do some of the stuff you talked about. I found assembly to be quite entertaining to write, I appreciated its efficiency, and also did a lot of C code. I would have loved your class, but I pretty much had to teach myself.
The PDP-11 was my favorite mini-computer while the 68000 series was my favorite microprocessor. Both were very assembler friendly instruction sets.
Computer Science was very new when I graduated. I had to teach myself most everything myself as well, particularly the digital logic. I did have powerful mentors along the way. The first was an IBM Customer Engineer who maintained the computers on campus. He taught me digital logic and the complete inter-workings of an IBM 1130 computer. The next mentor was a guy who retired from the Bell Telephone Laboratory. My final mentor was one of "Grace's Girls", and ancient lady who worked on the FORTRAN compiler project under the direction of Admiral Grace Hopper.
I kind of had a charmed existence. I'd still be teaching in school; however, I'm too old to get a teaching certificate.