• src/sbbs3/putmsg.cpp

    From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Mon Feb 3 11:11:09 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/0178043e56c04ef741cbb1cb
    Modified Files:
    src/sbbs3/putmsg.cpp
    Log Message:
    Correctly center lines of text that contain @-codes, after @center@

    @-codes weren't expanded before the text length calculation, so the centering logic (offset in the user's terminal screen) would usually be incorrect as pointed out by Nelgin in #synchronet when we were discussing the |C @-code modifier (which is to center an @-code value in a field, not the screen).

    This issue was a known limitation of the fix to issue #418 (commit 8987150bd) but now that we have the expand_atcodes() function (hooray!), this is an
    easily solvable problem.

    Note: we're now calling center() withOUT the 'msg' parameter set to true,
    which means the @center@ code goes back to the previous (to issue #418 fix) behavior of just using bputs() for the centered text (we don't need the recursive call to pustmsg() to support @-codes any longer). This was the only reason that center() grew the optional 'msg' parameter so we likely can remove that option/feature at some date.

    ---
    þ 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 Mon Mar 24 01:14:25 2025
    https://gitlab.synchro.net/main/sbbs/-/commit/1886c63776b7cfa454dfb9ca
    Modified Files:
    src/sbbs3/putmsg.cpp
    Log Message:
    Clean-up the hex and decimal value parsing of "extra attribute codes"

    Eliminate the unnecessary calls to snprintf() and atoi()/ahtoul() since these are simple fixed-length parses. No change in behavior, just a minor optimization.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Wed Jan 7 03:57:55 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/0848856a624e3eeb89eaaa00
    Modified Files:
    src/sbbs3/putmsg.cpp
    Log Message:
    Add support for Wildcat! @ codes: STOP, NOSTOP, and NOCODE

    The NOCODE one is potentially useful I think (disables @-code parsing from
    that point forward in the file).

    STOP and NOSTOP are just like PCBoard's QON and QOFF

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Fri Jan 9 02:24:03 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/c6212d580ce6aac69d730db4
    Modified Files:
    src/sbbs3/putmsg.cpp
    Log Message:
    PCBoard and Wildcat! color codes don't support lowercase hex digits

    From the documents and examples I could find, support for lower case hex
    digits ('a'-'f') was never "a thing" in their color codes. So let's not parse these codes as valid color codes for these platforms.

    Add support for PCBoard XON and XOFF @-codes (to enable/disable PCBoard-style color code interpretation).

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Sat Jan 10 20:48:55 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/73de34c503abde8b5312b6a6
    Modified Files:
    src/sbbs3/putmsg.cpp
    Log Message:
    CENTER @-code now abides by the P_TRUNCATE mode

    (passes current mode to Terminal::center())

    Stray WRAPOFF codes (not following a WORDWRAP code) are now ignored.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Mon Jan 19 23:49:20 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/0a2695696d52a45a1b8c6895
    Modified Files:
    src/sbbs3/putmsg.cpp
    Log Message:
    Fix the Extra Attribute clearing and lines_printed counting logic

    broken since commit 374282bf814d7 (New Terminal abstraction)

    The '\n' was skipped at the bottom of the loop, so lfisnl was never set to true and we never reset the attribute (back to lightgray) at the end of a line printed, like is expected of *some* extra attribute codes.

    The lines_printed counter was never incremented, so the logic that used it (detecting false-abort) would not work.

    ---
    þ Synchronet þ Vertrauen þ Home of Synchronet þ [vert/cvs/bbs].synchro.net
  • From Rob Swindell (on Windows 11)@VERT to Git commit to main/sbbs/master on Tue Jan 27 18:04:07 2026
    https://gitlab.synchro.net/main/sbbs/-/commit/ccf14ea502fa2007300b64d4
    Modified Files:
    src/sbbs3/putmsg.cpp
    Log Message:
    Add support for the WRAP @-code

    Useful with @80COLS@ to force ungraceful line wrapping (for Accession)

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