Are you teaching with the Picocomputer? #149
Replies: 1 comment 6 replies
-
|
I taught the course last fall (August to December). It was the first offering, and a pilot - an elective "project course" for seniors (fourth-year students) in computer science and computer engineering. Students worked with me to develop two project ideas - the first was a text-mode game, and the second was a graphical game. My lectures covered some history of the microprocessor era, some elements of gae design principles (very practical) with examples, and some quick exposure to the Pico platform and the several APIs, with los of example code showing how to do various things. After those general lectures were done (about mid-semester), instruction was individualized - mandatory weekly meetings and office hours as needed to help students climb the learning curve, check on progress, and so on - but no group lectures. I'm teaching the course again (to a slightly larger group) this coming fall, using a different platform which has an emulator available. The class design will change a lot - I'll have lectures for the entire semester so i can cover topics in more depth and enlarge the scope a bit. There will be several programming assignments intended to build familiarity with the 65C02 and the platform (along with the quirks of small-machine C and the C/assembly interface), and just one large project due at the end of the semester. With regards to specific things that can be done with documentation to serve a student audience - my general feeling is that the documentation as it existed a year ago was just at the Nyquist rate for me. I could make sense of all of it after a very careful read, but the students were quite bewildered - they don't have enough of the terminology, and sometimes it's stacked intimidatingly ("what's a sprite? what's an affine transform? what does 'fix8.8' mean to specify the transform? why do I have to play tricks with the affine transform to rotate a sprite about its center rather than its corner?"). It's not necessarily @rumbledethumps 's job to make the documentation more accessible to students, it's the instructor's job to appreciate it and help the students understand, ideally via example. This involves some work - for example, the sprite API implementation made a ton more sense to me after I spent some time (a LOT of time) digging through Luke Wren's repo. I was VERY fortunate that I started developing samples and demos months in advance - because coding these things up cemented things in place conceptually for me so I could convey them to students. A huge thank-you to @rumbledethumps and Tony @vruumllc for the code they made available in the early days. I'm also glad I only soldered together my original five Picos before I decided to wise up and have the PCBWay populate the others so all I needed to do was snap in the ICs and Picos. If I were to use the Pico again this fall, I would probably remove some of the flexibility, and require all projects to use a specific graphics mode and resolution. XRAM management and budgeting was probably one of the bigger technical challenges for students, and the availability of different settings was a source of confusion. XRAM budgeting was much more of a challenge than 6502 RAM budgeting! More thoughts as they come up. |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
PJF on Discord is "teaching eight college students microprocessor application development using the RP6502."
Nichetronix on YouTube says, "I think I will teach this in one of the introductory Computer Engineering courses I teach."
I'd like to hear more about this. I designed the device for autodidacts, but knowing more about how folks use this in a classroom could help steer future documentation.
Beta Was this translation helpful? Give feedback.
All reactions