From 4c33bdb880980476ccb0a59901abcdbaba342025 Mon Sep 17 00:00:00 2001 From: Jurjen Ladenius Date: Sat, 4 Jul 2026 23:36:09 +0200 Subject: [PATCH] Document special keys and ayFX in CLAUDE.md Game flow now lists all movement-loop keys (M/joy-A minimap, S cat sense, C cheat landing one move short of the exit), and the MSXgl configuration section covers the full audio stack including ayFX. Co-Authored-By: Claude Fable 5 --- projects/mazegame/CLAUDE.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/projects/mazegame/CLAUDE.md b/projects/mazegame/CLAUDE.md index 14205af..2f70066 100644 --- a/projects/mazegame/CLAUDE.md +++ b/projects/mazegame/CLAUDE.md @@ -199,15 +199,18 @@ tiles) implemented as a **VRAM torus** (see "Scrolling model" above) — VDP reg plus edge-strip rendering, with no per-move blank/flash. Input (keyboard + joystick, sampled at the last animation frame) chains directly into the next move if a direction is still held. The player is a 24×24 **software** sprite (`DrawSpriteAt`) drawn into VRAM — hardware -sprites are disabled. Hold **M** for the minimap overlay. +sprites are disabled. Special keys in the movement loop: hold **M** (or joystick button A) +for the minimap overlay; hold **S** for the cat-sense arrow pointing toward the exit; +**C** (cheat) teleports to an open neighbour of the exit — one move short, so the final +step (and the win) is still the player's. ### MSXgl configuration `msxgl_config.h` is the per-project feature switch for the dynamically-compiled library: SCREEN 5 (G4) and SCREEN 8 (G7) modes, VDP commands, 16×16 sprites, keyboard+joystick -input, and the lVGM/PSG/MSX-Music replayer (see "Music"). Enabling a library feature the -game starts using generally requires flipping the matching `*_USE_*` define here **and** -adding the module to `LibModules` in `project_config.js`. +input, and the audio stack (lVGM/PSG/MSX-Music replayer + ayFX — see "Music & sound"). +Enabling a library feature the game starts using generally requires flipping the matching +`*_USE_*` define here **and** adding the module to `LibModules` in `project_config.js`. ## Conventions in this codebase