asm-guru

Write and refactor 65816 SNES assembly routines with Oracle of Secrets conventions.

Updated Dec 30, 2025
One-click install
npx skills add https://github.com/scawful/afs_scawful --skill asm-guru
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: asm-guru
Source: https://github.com/scawful/afs_scawful/tree/main/skills/asm-guru
Command: npx skills add https://github.com/scawful/afs_scawful --skill asm-guru

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill helps developers improve reliability and performance of 65816 SNES assembly code by providing expert templates, conventions, and memory-map awareness to reduce debugging time.

Core Features & Use Cases

  • Enforces project conventions such as namespaces, local labels, and safe bank handling to prevent wrapping bugs.
  • Provides standard routine templates (subroutines, sprite handlers) to accelerate coding and ensure consistency.
  • Facilitates memory map awareness by referencing known WRAM and RAM regions and safe addressing practices.
  • Guides optimization decisions and safe usage of bank switching, DP, and instruction timing to improve performance and safety.
  • Workflow support: lookup, scaffold, implement, and verify routines against safety checks.

Quick Start

Ask ASM Guru to scaffold a new 65816 assembly subroutine following Oracle of Secrets conventions.

Frequently Asked Questions about asm-guru

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I prevent bank wrapping bugs in SNES 65816 assembly routines?

Prevent bank wrapping bugs in 65816 assembly by enforcing safe bank handling conventions and checking stack integrity during routine scaffolding. This ensures addresses stay within expected memory boundaries during execution.

What's the best way to structure SNES assembly subroutines for safety and performance?

Structure SNES assembly subroutines safely using standard routine templates that enforce namespaces, local labels, and safe addressing modes. This accelerates coding while maintaining consistency and optimizing instruction timing.

How does a memory-map aware workflow affect 65816 optimization patterns?

A memory-map aware workflow affects 65816 optimization by guiding safe usage of bank switching, direct page (DP), and instruction timing. It references known WRAM and RAM regions to improve routine performance and safety.

Can I scaffold sprite handlers and subroutines following specific project conventions in SNES assembly?

Yes, you can scaffold sprite handlers and subroutines following Oracle of Secrets conventions. The process generates standard templates that enforce local labels, namespaces, and safe bank handling automatically.

Why do my 65816 assembly routines fail during bank switching and direct page changes?

65816 assembly routines often fail during bank switching and direct page changes due to stack integrity issues and unsafe addressing modes. Validating routines against memory-map conventions and safe DP handling resolves these failures.