# Build artifacts
build/
build-mac/
build-*/
# macOS/Linux runtime ROM-path cache + sibling-repo symlink
rom.cfg
*.obj
*.pdb
*.ilk
*.exe
*.dll
*.tlog
*.log
*.idb

# ROM files (copyrighted) — supply your own legally-dumped copy
*.smc
*.sfc
*.rom

# Save files
saves/
*.sav
*.srm

# Crash / boot diagnostics (generated at runtime)
last_run_report.json
logs/
replay-saves/
*.replay
*.replay.*
crash_report_*.json
crash_minidump_*.dmp
boot_trace*.txt
tier2_coverage.json

# IDE
.vs/
*.vcxproj.user

# External repos accessed via junction/symlink (tracked in their own repos)

# snesrev/sm decomp — local oracle reference (clone per BUILDING.md; the
# commit is pinned in refs/snesrev-sm.pin, which IS tracked). The clone
# itself is a full nested git repo, so it is not committed here.
/refs/snesrev-sm/

# Claude auto-memory + per-project session/goal state (per-developer)
memory/
.claude/

# Python caches
__pycache__/
*.pyc

# Local-only config overrides (per-developer, applied after config.ini)
config.local.ini

# Active recompiler output — generated locally per-developer (~93 MB of C)
src/gen/

# OS
Thumbs.db
.DS_Store

# Screenshots / scratch BMPs and PNGs
*.bmp
*.png
!android/app/src/main/res/mipmap-*/ic_launcher.png

# Per-session debugging / triage scratch (any underscore-prefixed file
# at the repo root is treated as scratch and not committed).
_*

# WRAM / oracle trace dumps (multi-MB scratch from differential diffing)
*.jsonl

# Release artifacts (built locally, uploaded via gh release upload)
SuperMetroidSNESRecomp-windows-*.zip
release-stage/

# Android build: pinned SDL2 source (android/fetch_sdl.sh) + gradle output
android/app/jni/SDL/
android/.gradle/
android/app/build/
android/app/.cxx/
android/local.properties

# --- SNES recomp (Studio) ---
/src/gen/
/recomp/funcs.h
/build/
/build-*/
/dist/
/saves/
/rom.cfg
/keybinds.ini
/config.ini
/input.ini
/analysis/
