Skip to content
| Marketplace
Sign in
Visual Studio Code>Education>SystemStudio CIS 310New to Visual Studio Code? Get it now.
SystemStudio CIS 310

SystemStudio CIS 310

Probir Roy

|
1 install
| (0) | Free
Active Fall 2026 CIS 310 learning materials with accessible modules, Full Digital, and an integrated actual NASM/ELF32 workbench.
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

SystemStudio CIS 310 VS Code Extension

SystemStudio is the active Fall 2026 learning environment for CIS 310. It packages a primary accessible HTML syllabus (plus an optional print PDF), the calendar, primary accessible HTML lectures, optional visual PDF archives, assignment references, open-book/video preparation path, formative practice, guided labs, Assignment Mission Control, cumulative final-presentation planning, a Student Unit Test Center, a unified guarded Orbit course chat, and the Canvas question workflow.

The in-editor chat combines four routes in one accessible panel: an existing signed-in Codex account for instructor/testing use, the U-M course Codex configuration for students, a bring-your-own OpenAI-compatible API, and a deterministic private offline helper. Every online route uses the same local assignment/pre-test guard before a prompt can leave the extension. BYOB tokens use VS Code Secret Storage. Orbit shows its own monthly request/token use, lets students set local caps, and links to the provider's authoritative usage page; it does not claim that local estimates are an account-wide quota. Progress sharing is off by default and, when explicitly enabled, includes only a short aggregate—never grades, Canvas records, credentials, raw logs, or course files. Codex runs from an isolated read-only chat folder rather than the student's workspace. Orbit also restores up to 24 recent turns from private local VS Code storage; New chat deletes that saved transcript. A student may explicitly choose and confirm one local PNG/JPEG/WebP screenshot for a single online reply; Orbit never captures windows automatically, never saves an image in chat history, and removes its temporary copy afterward.

The Help and Feedback group adds two intentionally student-controlled routes. Report an issue or suggest an improvement asks for a short observation, prepares a copyable draft, and opens the configured Canvas Course Companion discussion; it never posts automatically. Import and reflect on my assessment feedback lets a student paste selected instructor/GSI comments or preview an instructor-provided .txt, .md, or .html feedback attachment before saving it in VS Code Secret Storage. Saving is local. Optional analysis asks for consent every time and is restricted to the approved U-M GPT Toolkit because the comments may be FERPA-protected education records; personal Codex and BYOB providers are not available for this workflow. Canvas remains the official record. See the assessment-feedback workflow.

Start with CIS 310: Start Guided Setup in the native Getting Started checklist. SystemStudio first detects Codex CLI and, if it is missing, asks permission to run OpenAI's official user-level standalone installer. It verifies the install, opens the U-M classroom-key page, accepts the key in a masked field, backs up existing Codex files, and writes the U-M Toolkit configuration without requiring administrator permission. Once Codex works, the student chooses Let Codex finish setup, Install automatically, or Show the manual checklist. The ordered setup is saved locally and resumes after a login, UAC prompt, Docker startup, reboot, cancellation, or failure. Automatic setup verifies Windows/architecture/WSL/virtualization, can offer the official Docker Desktop winget package, waits until the Docker server actually responds, and only then prepares Digital and the actual NASM/GDB environment.

Canvas course 552144 is authoritative for current requirements, deadlines, points, collaboration rules, required files, and submission.

Codex machine support

Operating system Machines U-M approach
Windows x64, ARM64 Official PowerShell installer and U-M Windows setup
macOS Intel, Apple Silicon Official shell installer and U-M Mac/Linux setup
Linux x64, ARM64 Official shell installer and U-M Mac/Linux setup

The extension links directly to the classroom API-key retrieval page. Other OS/CPU combinations are not modified automatically; the matching U-M guide is shown instead.

The novice flow uses native VS Code controls: an automatically available Getting Started checklist, one Start Guided Setup command, a persistent composite readiness item, titled and searchable choices, one explicit installer-consent dialog, masked key entry, staged progress, and a local SystemStudio: Codex Setup log for recovery. Startup notification chains were removed. See the repository's deep Codex setup usability audit for the VS Code, mature reference-extension, remote-host, and WCAG benchmark.

The Help, Staff, and Canvas section lists Dr. Probir Roy (probirr@umich.edu), instructor. No Graduate Student Instructor or grader is currently assigned or confirmed for CIS 310; Canvas and department announcements provide any future staffing update. CIS 310 section 001 meets Mondays and Wednesdays, 10:00–11:45 a.m., in ELB 1329. Instructor office hours are Mondays and Wednesdays, 9:30–10:00 a.m. and 12:00–1:00 p.m., in CIS Building Room 230, or by appointment.

Tool integrity: no reduced substitutes

Circuit design

Opening a .dig file uses Full Digital Simulator, which runs the unmodified upstream Digital v0.31 application.

  • On a supported headless Linux or Remote SSH extension host, SystemStudio starts the real Java Swing application on a private X11 display and transports that display into the VS Code editor with VNC/noVNC. The menus, component library, canvas, simulation controls, dialogs, file format, and save behavior are Digital’s own.
  • On a graphical Linux host, the in-editor toolbar also offers Native window as a one-click fallback; it stops the streamed session before opening the same file in upstream Digital on the host display.
  • On Windows and macOS, SystemStudio runs the same upstream application in an extension-managed Docker Desktop container and transports it into the VS Code tab. The one-time image build supplies Java, Xvfb, and x11vnc. A native window remains an explicit fallback when Docker Desktop is unavailable.
  • The separate Circuit Preview is read-only and generated by Digital’s official SVG exporter.
  • Digital’s official CLI runs embedded Testcase components and the extension’s public external preflight harnesses. Assignment Mission Control checks the published interfaces for the 4-bit register, program counter, 16×4 memory, 4×4 register file, and all 2,048 ALU input combinations without bundling a solution circuit.

The earlier eight-component SystemStudio renderer has been removed from the student path and from the default .dig editor. SystemStudio does not claim to reproduce Digital.

Digital is downloaded into VS Code global storage only after consent. The release archive and JAR are pinned and SHA-256 verified. Java 8 or newer is required; Java 17 or 21 is recommended. On Debian/Ubuntu headless Linux, the extension can download the distribution Xvfb and x11vnc packages into private extension storage without administrator access.

Assembly programming

Fall 2026 uses one student-facing x86 path: NASM 32-bit → GNU ELF32 link → executable tests → actual GDB debugging. The integrated workbench shows source location, EIP-aligned Intel disassembly, EAX–EDI/EBP/ESP/EIP, decoded EFLAGS, stack words, a validated memory watch, label/address breakpoints, single-instruction stepping, output, and exit status.

  • On x86 Linux, SystemStudio uses actual host NASM, GNU ld, and GDB. On Debian/Ubuntu, it can prepare NASM in private extension storage after explicit confirmation; it does not modify the system.
  • On Windows, macOS, or as a Linux fallback, it uses a locally built course container containing NASM, GNU ld, GDB, and QEMU-i386. Student execution has networking disabled, all capabilities dropped, a read-only container root, and only the private build directory writable. Docker Desktop is a prerequisite and is never installed silently.

The Instruction Trace Tutor remains a separate optional conceptual simulator. It does not emit machine code, drive GDB, or prove that NASM accepts a file.

Main student workflow

  1. Open SystemStudio CIS 310 → Start Here.
  2. Use the expanded Course Modules outline to see and navigate all 13 modules; the next unfinished module is highlighted, and expanding any module reveals its Accessible HTML lecture → Read → Practice 8 questions → guided activity sequence plus optional video enrichment and an optional visual PDF archive. Five distinct attempts complete the preparation checkpoint; all eight provide broader practice. Video viewing is not required while caption/transcript review is pending.
  3. Open Coursework and Final Presentation for the assignment roadmap, executable public circuit preflights, local file checks, final-presentation self-evaluation, opt-in Canvas-calendar import, missed-class recovery, diagnostics, and the manual grade estimate. These local indicators are not instructor grades.
  4. Check Canvas for live requirements, instructor evaluation, submission, and receipt.
  5. For circuits, create or open a .dig file in Full Digital Simulator. Predict first, build with Digital’s original controls, simulate, save, then use the official preview/tests when relevant.
  6. For assembly, use the Actual NASM Debug Workbench: predict, build/run, break at an inspect label, compare machine state, step, and explain. Use Instruction Trace Tutor only for optional conceptual practice.
  7. Select Orbit · CIS 310 at the lower right of VS Code—or use the SystemStudio tree—to open the familiar conversation-style course chat. Its course navigator opens Home, setup, learning, labs, coursework, or Canvas, and the student can choose Quiet, Guided, or Active-coach involvement. Students can also choose one of six gentle pet-style avatars; animation follows the operating system's reduced-motion preference. This local choice controls help while Orbit is open; it does not enable background monitoring or unsolicited pop-ups. The chat supports an existing Codex account, U-M course Codex, or the private offline helper. The structured Canvas Question Before Class remains available when instructor follow-up is needed.

Every standalone course page has one sticky ← SystemStudio Home route. Sequential experiences use Back and Next; dense lab/tutorial catalogs use one labeled native picker instead of a competing second navigation system.

If Digital's graphical canvas is not operable with a student's assistive technology, use CIS 310: Open Accessible Circuit Workflow and CIS 310: Create Accessible Circuit Evidence. The structured route is keyboard/screen-reader friendly, avoids public disability disclosure, and must be privately approved by the instructor for the specific graded activity.

Included learning features

  • an always-visible, sequential 13-module sidebar outline with direct navigation to a novice-facing accessible HTML lecture, focused open-textbook reading, official author video, preparation check, mapped guided lab, and optional visual PDF archive;
  • 13 evidence-bounded HTML lectures with objectives, definitions, explanations, worked examples, self-checks, presentation evidence, and attempt-first AI tutor prompts;
  • 104 evidence-mapped questions—eight per module—with a five-question preparation checkpoint, Bloom-level labels, quiz mode, confidence checks, explanation/justification, and spaced local review;
  • 13 packaged legacy presentation PDFs retained as optional visual archives, three homework references, three cumulative 4-bit processor-project milestones, and a final-presentation planning reference;
  • Assignment Mission Control with requirements-oriented checklists, actual selected-file inspection, independently validated public circuit preflights, a safe local planning ZIP, Canvas receipt confirmation, cumulative 4-bit final-presentation progression and self-evaluation, deterministic Digital diagnostics, structured private grading-review requests, and a course-staff release checklist;
  • a manual grade estimate using student-entered Canvas scores, published 15/65/20 weights, two-lowest participation-item drops, retained earned/possible point aggregation, and syllabus letter boundaries—visually separated from official instructor evaluation in Canvas;
  • opt-in local Canvas .ics import and a 27-meeting missed-class recovery route to the mapped accessible lesson;
  • 27-meeting Monday/Wednesday Fall 2026 calendar with confirmed 10:00–11:45 a.m., ELB 1329 .ics events;
  • seven guided circuit builds and seven actual NASM/GDB labs, each mapped to reading, video, lecture, prediction, executable evidence, and explanation;
  • seven retained self-checking NASM programs covering arithmetic, flags/branches, array loops, stack/calls, linear search, and iterative/recursive binary search;
  • a Student Unit Test Center backed by VS Code's Testing view: Digital files with upstream Testcase components are discovered automatically, NASM *.test.asm programs are assembled/linked/run as actual ELF32, and assignment public preflights remain available in Mission Control;
  • an original optional animated tutor companion with a text-equivalent interface, pause control, and automatic reduced-motion behavior;
  • a visible, self-paced, skippable, resumable, and rerunnable tutorial;
  • local FAQ routing, consented user-level Codex CLI installation, masked U-M Toolkit configuration, readiness checks with persistent attempt-first guardrails, and Canvas Questions Before Class support; and
  • no Google Drive dependency for the packaged syllabus, presentations, or assignments.

Installation

Search for the exact identifier ProbirRoy.systemstudio-cis310 in VS Code's Extensions view. Until that Marketplace listing is available, download the newest verified VSIX from the public binary-only release channel. The private development source is not needed for installation:

code --install-extension systemstudio-cis310.vsix

Reload VS Code and open the SystemStudio CIS 310 activity-bar view.

Important commands

Command Purpose
CIS 310: Start Guided Setup Prepares and verifies Docker, Digital, and the real NASM/GDB environment in sequence; optional assistance follows
CIS 310: Set Up or Repair My Course Environment Runs the same required-tools-first, resumable setup with automatic and manual paths
CIS 310: Open Full Digital Simulator Opens the selected .dig using the complete upstream application
CIS 310: Create a New Digital Circuit Creates a non-overwriting blank .dig and opens Full Digital
CIS 310: Preview Digital Circuit Generates a read-only view with Digital’s official exporter
CIS 310: Run Digital Circuit Tests Runs embedded Digital testcases with the official CLI
CIS 310: Open Student Unit Test Center Opens Digital Testcase discovery, NASM *.test.asm discovery, and assignment public preflight routes
CIS 310: Build and Run Actual NASM Assembles, links, and executes actual NASM ELF32 code
CIS 310: Open Actual NASM Debug Workbench Opens actual GDB registers, flags, stack, memory, disassembly, breakpoints, stepping, and output
CIS 310: Open Instruction Trace Tutor Opens the non-assembler learning visualization
CIS 310: Check NASM Workbench Environment Reports the native or portable NASM/GDB runtime
CIS 310: Create NASM Assembly Workspace Adds actual self-checking NASM sources, optional trace examples, and guides
CIS 310: Open Hands-on Circuit and Assembly Labs Opens lecture-mapped guided builds and traces
CIS 310: Open Learning and Practice Opens preparation, practice, quiz, confidence, and review tools
CIS 310: Open Coursework and Final Presentation Opens assignment checklists, circuit preflights, final-presentation progression, grade estimate, Canvas-calendar import, recovery, and diagnostics
CIS 310: Open U-M Codex Learning Coach Checks and opens the student-owned U-M Codex CLI in VS Code; offline Orbit remains a non-AI fallback
CIS 310: Report an Issue or Suggestion in Canvas Asks three short questions, copies a privacy-limited draft, and opens the configured Canvas Course Companion discussion; the student reviews and posts it
CIS 310: Open Fall 2026 Canvas Course Opens the authoritative course page
CIS 310: Start or Rerun Guided Tutorial Opens the self-paced tutorial
CIS 310: Open Setup and First-Task Guide Explains platform setup, Docker messages, the first circuit, the first NASM lab, tests, and submission checks

Assembly settings

  • systemstudioCis310.nasmPath
  • systemstudioCis310.nasmLinkerPath
  • systemstudioCis310.nasmGdbPath
  • systemstudioCis310.nasmDockerPath

See the generated assembly/README.md, assembly/COMPATIBILITY.md, and assembly/OPEN_BOOK.md guides.

Security and privacy

  • Digital downloads are pinned and checksum verified.
  • noVNC is only a display transport to a loopback VNC server protected by a random path token; the VNC port listens on localhost.
  • Workspace Trust is required before launching Digital or executing real assembly.
  • Child processes use argument arrays with shell: false.
  • Real assembly execution has time and output bounds.
  • The Instruction Trace Tutor has no filesystem, shell, process, or network instruction.
  • Learning history, coursework planning, imported calendar events, self-evaluation, and FAQ conversations stay in VS Code local storage; the extension sends no telemetry or student artifacts to an AI service.
  • U-M Codex opens only after student action, uses the student's own U-M configuration, and follows the permissions the student selects. The setup writes the masked student entry only to .codex/auth.json; it never logs, transmits, or retains the key in extension storage. After Codex is visibly ready, the student explicitly selects Send guarded course prompt.
  • Canvas opens only after student action and is governed by U-M service notices. Codex receives no automatic Canvas content, grades, or course records.
  • Feedback reporting reads no files, code, grades, credentials, Canvas data, or logs. It copies only the student's reviewed short answers, opens the configured Canvas Course Companion discussion, and never posts automatically.

Verification

Run:

npm ci
npm run check
npm run test:integration:vscode
npm run package
npm run audit:vsix

Release verification runs the extension inside a real VS Code Extension Host on Windows, macOS, and Ubuntu, audits an installable VSIX from each runner, tests minimum VS Code 1.100 on Ubuntu, starts an actual upstream Digital GUI through Xvfb/x11vnc/noVNC, runs npm run smoke:nasm, and builds and executes both course containers on Ubuntu's Docker engine. The NASM smoke assembles, links, and executes all seven retained programs plus the student unit-test template, then verifies an actual GDB breakpoint, registers, flags, stack, memory, disassembly, step, and output. Hosted Windows/macOS runners do not run Docker Desktop itself; the exact automated/manual boundary is maintained in the private instructor/developer verification record.

Remaining platform boundaries

  • Java is required for Full Digital on Linux and for native fallback/CLI tools. The Windows/macOS embedded container supplies its own pinned Java runtime.
  • Windows/macOS in-tab Digital requires Docker Desktop running for the one-time image build and later sessions. The container is non-root, capability-dropped, localhost-only at the VNC boundary, and mounts only the installed Digital directory plus the selected circuit directory.
  • Managed Xvfb/x11vnc installation targets Debian/Ubuntu x64. Other headless Linux distributions must provide those packages.
  • Native NASM/ELF32/GDB execution targets x86 Linux. Windows/macOS use the course container through an already-running Docker Desktop installation.
  • The in-editor Full Digital desktop is a graphical noVNC canvas. It forwards input but does not expose Digital’s component-level Swing semantics to VS Code screen readers; students who need a screen-reader-equivalent workflow should contact the instructor for an accessible alternative and evaluate native Digital with platform assistive technology.
  • Canvas remains authoritative, and the extension never submits coursework.

The learning design, source-alignment audit, and AI-tutor design are maintained with the private instructor/developer source record.

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft