# Build outputs
/build/
/build-*/
# Optional local framework sources; builds fetch their pinned inputs under build-dependencies.
/psxrecomp/
/out/
/.happypath/

# Game code generated locally from the player's disc.
/generated/

# Local demo recordings
/media/

# Release packaging
/release-stage/
/dist/
*.zip

# Local PlayStation assets (never commit dumps / BIOS)
/bios/
/isos/
/saves/
/prepared_disc/
.settings/

# Include placement instructions, never local disc contents.
/disc/*
!/disc/README.md

# Disc / image / memcard formats
*.bin
*.cue
*.iso
*.img
*.sub
*.ccd
*.mcd
*.mcr
*.chd
*.car
SCPH*.BIN

# Local path/config stubs
bios.cfg
disc.cfg
rom.cfg
settings.toml

# Local analysis scratch — GPU frame captures / parity dumps (the default
# --out for tools/gpu_frame_*.py and gpu_parity.py) and asset rips pulled off
# the disc. Multi-hundred-MB binaries land here and are rejected by GitHub's
# 100 MB blob limit, and ripped disc content must never be committed at all.
/analysis/

# Ghidra / local analysis
/ghidra/projects/
*.gpr
*.rep/
*.lock
!/uv.lock
*.lock~

# Editor / cache
.vs/
.vscode/
*.user
*.log
.DS_Store
__pycache__/
CMakeCache.txt
CMakeFiles/
compile_commands.json

# Runtime artifacts from psx-runtime launches
psx_crash.txt
psx_last_run_report.json
psx_screenshot.bmp
psx_freeze_heartbeat.json
.psxrecomp_last_generate
.psxrecomp_write_probe
.build-ready
.build-ready.tmp
starvation_dump.jsonl

# Root-level diagnostic dumps; keep the catalog trackable.
/*.json
/*.bmp
/*.png
!/catalog_identity.json
