• exec/load/cterm_lib.js

    From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Sunday, June 07, 2026 18:41:23
    https://gitlab.synchro.net/main/sbbs/-/commit/1382b7287eae1528f5afe35b
    Modified Files:
    exec/load/cterm_lib.js
    Log Message:
    cterm_lib: add cterm_screen_geometry() resolver

    Wraps query_fontdims()/query_graphicsdim()/charheight() into one call
    returning { cols, rows, cellW, cellH, pxW, pxH } with fallbacks, for pixel-addressed protocols (Z-machine v6 door). Reusable by any door.

    Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Monday, July 06, 2026 00:00:17
    https://gitlab.synchro.net/main/sbbs/-/commit/c5ff74079092d6470409fbdd
    Modified Files:
    exec/load/cterm_lib.js
    Log Message:
    cterm_lib.js: SyncTERM audio APC helpers

    Add a general, capability-gated audio API (per cterm.adoc "Audio APCs") so any JS can play sound effects and music on SyncTERM. Capability: query_audio / supports_audio / supports_audio_files. Low-level emitters (one per verb): audio_store/load/queue/volume/volume_lr/synth/flush. Convenience layer: play_sound / play_tone / play_music over an upload-once cache + rotating-channel
    allocator (music reserved on channel 2). Files are whatever the client's libsndfile decodes (WAV/VOC/OGG/FLAC everywhere; MP3 only on libsndfile >= 1.1.0).
    SM1.8.5-compatible; matches the file's existing Allman style.

    Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net