https://gitlab.synchro.net/main/sbbs/-/commit/7504df3af17865306afe58a1
Modified Files:
src/doors/syncmoo1/hw_sbbs.c syncmoo1.h syncmoo1_input.c syncmoo1_io.c Log Message:
syncmoo1: wire SFX audio into the 1oom hw backend
hw_audio_sfx_* forward to syncmoo1_audio, the way hw_video_* forward to syncmoo1_io. The audio manager is created and probed at terminal enter, inbound bytes are fed to it from the input pump so it can resolve the capability reply, and hw_event_handle() drains the pending-store queue
once the tier is known -- inside the engine's own "Preparing sounds"
pause.
Samples are Stored under moo1/sfx/s_<fnv1a8>, once each per session.
A terminal without the audio APC (foot, xterm) never reaches tier 1, so
nothing is uploaded and nothing plays: silent, not broken.
Verified on the wire (harness2.py augmented to answer the audio
capability probe, which it otherwise never does): every Store name is moo1/sfx/s_<hex>, no sample is Stored twice, and no Store precedes the capability reply. A DA1-only terminal (harness2.py's "foot" mode)
receives zero Store/Load/Queue APCs. Live SyncTERM audibility (task
Step 11) is a pending manual check.
---
þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net