Instructor Guide
Machine Lab is designed to be adopted as a course module, workshop, or semester lab track. Students get a generated workspace; instructors get handouts, reference tests, examples, and project rubrics.
Course Shape
| Phase | Material | Outcome |
|---|---|---|
| Week 1 | Lab 1 | bit reasoning and RTC reads |
| Week 2 | Lab 2 | PIT divisors and timer event loops |
| Weeks 3-4 | Labs 3-4 | keyboard and mouse packet handling |
| Weeks 5-6 | Lab 5 | framebuffer graphics and sprites |
| Weeks 7-8 | Labs 6-7 | audio buffers and UART protocols |
| Weeks 9-13 | Project studio | interactive C application |
What To Publish
- release binary or install instructions;
- generated workspace instructions;
- lab schedule;
- collaboration policy;
- grading rubric;
- final project milestones;
- expected artifacts.
What To Keep Private
| Path | Reason |
|---|---|
dev/lab-solutions/ | reference implementations |
dev/lab-tests/ | can reveal expected behavior |
| upstream CMake/runtime internals | not part of normal student work |
First Class Flow
- Show the 90-second demo.
- Generate a workspace live.
- Run
make. - Run a failing lab test.
- Implement one tiny bit helper together.
- Stop before solving the whole lab.