28c2e6af189bd8467f59a79727354901bbeb1a33
La bocina pertenecía al app enfocado (Fase 12), pero el kernel necesita hablar también. Ahora tiene voz propia, prioritaria. - `altavoz`: cola `SECUENCIA: Mutex<VecDeque<(u32,u32)>>` (freq, ms) + reloj `FIN_NOTA: AtomicU64`. `agendar(&[...])` encola; `atender()` (tarea del compositor cada fotograma) avanza la secuencia y silencia al acabar; `kernel_sonando()` gatea a los apps — mientras el kernel suena, `sys_tono` no-op. - Catálogo: VOZ_BIENVENIDA (Do5-Mi5-Sol5, 500 ms), VOZ_LANZAR (700→1050 Hz), VOZ_CERRAR (900→520 Hz), VOZ_DESALOJO (180 Hz). - Hitos: `kernel_main` agenda el acorde antes de `ejecutor.run`; `nacer_ventana` (Alt+N), `cerrar` (Alt+Q), `desalojar` (falla) agendan al hacer su trabajo. - De paso: las pestañas de la barra de tareas calculan su tinta por brillo del fondo (ITU-R BT.601); la pestaña crema del desalojo por memoria, que llevaba texto blanco invisible, ahora luce su nombre en tinta oscura. Verificado en QEMU con `-audiodev wav -machine pcspk-audiodev=spk`: el PCM crudo trae, en orden, el acorde de bienvenida (~520, 630, 760 Hz), un brevísimo 180 Hz (las balizas de discola/glotona desalojadas) y después la escala de Do mayor de tonada. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Description
No description provided
Languages
Rust
96.7%
JavaScript
0.8%
Shell
0.8%
Python
0.8%
HTML
0.3%
Other
0.6%