• src/doors/syncduke/syncduke_input.c src/doors/syncduke/tests/test_evde

    From Rob Swindell (on Debian Linux)@VERT to Git commit to main/sbbs/master on Thursday, July 09, 2026 01:55:11
    https://gitlab.synchro.net/main/sbbs/-/commit/52baec2f10cb82b503962bd5
    Modified Files:
    src/doors/syncduke/syncduke_input.c src/doors/syncduke/tests/test_evdev.c test_keymap.c test_kitty.c
    Log Message:
    syncduke: repair the three input tests, which had rotted unbuildable

    test_keymap.c, test_kitty.c and test_evdev.c could not be linked with the command lines in their own header comments: syncduke_input.c grew calls
    into syncduke_node.c's page-compose hooks, and test_keymap additionally
    needed the termgfx audio and RTT symbols the pump now touches. They also
    need an -s1 argument -- a bare launch hits syncduke_door.c's pre-main constructor, which prints usage and exits.

    This predates the termgfx keymode work (verified by building them at 474e8cf076); keymode.c is simply added to the link lines as the newest dependency, and the three tests then pass: 43 assertions in test_kitty,
    55 in test_evdev.

    One stale expectation fixed rather than papered over: test_keymap
    asserted plain R maps to CapsLock (AutoRun). AutoRun deliberately moved
    to Ctrl-R so that R reaches Duke's Steroids hotkey -- see handle_key()'s
    0x12 case -- so R now maps to its own scancode. The assertion is updated
    to Steroids, and the file-header comment in syncduke_input.c, which still documented the old binding, is corrected. Ctrl-R itself is handled in handle_key(), a layer above the map_ascii() these tests drive, so there
    is nothing to assert for it here.

    ---
    þ 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 Sunday, August 09, 2026 23:03:12
    https://gitlab.synchro.net/main/sbbs/-/commit/72b74ab5fbdae34a3bd04d44
    Modified Files:
    src/doors/syncduke/syncduke_input.c src/doors/syncduke/tests/test_evdev.c test_keymap.c test_kitty.c
    Log Message:
    syncduke: the numpad key test asserted the behavior it replaced

    91d049a9cf (2026-07-11) made the NumLock-off numpad Home/End/PgUp/PgDn Duke's Aim/Look controls rather than digits, since folding End to '1' holsters the pistol mid-fight. test_kitty.c kept the assertion written for the digit fold
    in d8cfa92431 (2026-07-01), so it has failed ever since, and the comment above the menu branch still described the fall-through that commit removed. Assert Aim up/down instead, and cover End, which was untested.

    The build recipes in all three input tests no longer linked either. syncduke_door.c has since grown into the door32/idle/config layers, which drag xpdev into a key test, and syncduke_input.c gained calls into termgfx/sixel.c. Drop syncduke_door.c for stubs beside the ones each test already carries, and add sixel.c.

    Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>

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