SSPARCSS Assembly Extension for VS CodeA VS Code extension for writing and running SSPARCSS assembly code (.a files) with syntax highlighting, code analysis, and an integrated cheatsheet for RISC-V and ARM architectures.
✨ Features
🆕 New in v1.1.0📖 Built-in CheatsheetOpen a comprehensive reference guide right inside VS Code with tabs for:
Access it via: Command Palette → "SSPARCSS: Open Cheatsheet" or right-click menu 🔍 Code Analysis / LintingReal-time error detection for common mistakes:
🛠️ Setup WizardOn first launch, the extension will:
🚀 Quick Start1. Open a
|
| Shortcut | Action |
|---|---|
F5 |
Build & Run Simulator |
Ctrl+Shift+B |
Assemble Only |
| Click status bar | Toggle RISC-V / ARM |
📋 Commands
Press Ctrl+Shift+P and type "SSPARCSS" to see all commands:
| Command | Description |
|---|---|
| SSPARCSS: Run Simulator | Assemble and launch simulator |
| SSPARCSS: Assemble Only | Assemble without running |
| SSPARCSS: Open Cheatsheet | Open reference panel |
| SSPARCSS: Configure Paths | Set simulator/assembler location |
| SSPARCSS: Download SSPARCSS | Open download page |
| SSPARCSS: Set Architecture to RISC-V | Switch to RISC-V mode |
| SSPARCSS: Set Architecture to ARM | Switch to ARM mode |
⚙️ Configuration
Open Settings → search for "SSPARCSS"
| Setting | Default | Description |
|---|---|---|
ssparcss.simulatorPath |
C:\Program Files\SSPARCSS\simulator.exe |
Path to simulator |
ssparcss.assemblerPath |
C:\Program Files\SSPARCSS\assembler.exe |
Path to assembler |
ssparcss.defaultArchitecture |
RISCV |
Default architecture |
📁 Project Structure
When you build, the extension automatically creates these files in your source folder:
your-project/
├── program.a # Your assembly source
├── program.e # Compiled executable (generated)
├── RISC-V.system # System config (auto-generated)
├── RISC-V.assembler # Assembler config (auto-generated)
└── simulator.ini # Simulator settings (auto-generated)
🔧 Using the Extension (Development Mode)
Run Without Installing
- Open this folder in VS Code
- Press F5 to launch Extension Development Host
- In the new window, open any
.afile - The extension is now active!
Install Locally (VSIX)
Package the extension:
npm install -g @vscode/vsce vsce packageInstall the generated
.vsixfile:- In VS Code:
Ctrl+Shift+P→ "Extensions: Install from VSIX..." - Select the
.vsixfile
- In VS Code:
Or via command line:
code --install-extension ssparcss-1.0.0.vsix
📦 Publishing to VS Code Marketplace
First-Time Setup
Create a publisher account:
- Go to Azure DevOps
- Create an organization (if needed)
- Go to Visual Studio Marketplace Publisher
- Create a publisher (e.g., "your-name")
Create a Personal Access Token (PAT):
- In Azure DevOps → User Settings → Personal Access Tokens
- Create new token with "Marketplace (Manage)" scope
- Copy and save the token!
Update
package.json:"publisher": "your-publisher-name"
Publish
# Login (first time only)
vsce login your-publisher-name
# Publish
vsce publish
Your extension will be available at:
https://marketplace.visualstudio.com/items?itemName=your-publisher.ssparcss
🔄 Updating the Extension
Update Version
# Patch version (1.0.0 → 1.0.1)
vsce publish patch
# Minor version (1.0.0 → 1.1.0)
vsce publish minor
# Major version (1.0.0 → 2.0.0)
vsce publish major
# Specific version
vsce publish 1.2.3
Manual Update Workflow
- Make your code changes
- Update version in
package.json:"version": "1.0.1" - Update
CHANGELOG.md(create if needed) - Package and publish:
vsce publish
For Local VSIX Distribution
# Update version in package.json, then:
vsce package
# Share the new .vsix file with users
# They can update via:
code --install-extension ssparcss-1.0.1.vsix --force
📋 Changelog
1.0.0 (Initial Release)
- Syntax highlighting for RISC-V and ARM
- Architecture auto-detection
- Build & Run with F5
- Assemble-only with Ctrl+Shift+B
- Status bar architecture toggle
🐛 Troubleshooting
Simulator/Assembler not found
- Check Settings → SSPARCSS paths
- Ensure SSPARCSS is installed at
C:\Program Files\SSPARCSS\
Assembly fails but no error shown
- Errors appear in the assembler GUI window
- Check the assembler window before closing it
Wrong architecture detected
- Click the status bar (RISC-V / ARM) to toggle
- Or use Command Palette: "SSPARCSS: Set Architecture"
📄 License
MIT License - Free for educational and personal use.
🤝 Contributing
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
Made with ❤️ for assembly programming students