• Re: Titan Update

    From Ozz Nixon@21:1/144 to Digital Man on Fri Jun 28 22:34:01 2019
    On 2019-06-27 00:52:53 +0000, Digital Man -> Ozz Nixon said:

    Re: Re: Titan Update
    By: Ozz Nixon to apam on Tue Jun 25 2019 03:26 am

    Take it further Andrew! In PCBoard 16, I send 3 UTF8 characters - then
    do the cursor position request. Non-UTF terminal returns cursor
    position 10;1, whereas UTF8 terminal returns position 4;1

    Thanks, I'm gonna borrow that idea! :-)

    Not a problem! I am trying to figure out how to detect terminal support
    font changes - possible?

    I know in VT mode some terminals will tell me their rows/cols, and can
    be set to send resize notification - which I want to implement this
    month, eg. ASAP if you can shed some light.

    * Still tinkering with Kitty Protocol, for pixel and png support. (an
    ANSI sequence).

    Ozz aka SqZ

    --- ExchangeBBS NNTP Server v3.1/Linux64
    * Origin: nntp://bbs.exchangebbs.com:119/ (21:1/144.0)
  • From Digital Man@21:1/183 to Ozz Nixon on Fri Jun 28 20:08:43 2019
    Re: Re: Titan Update
    By: Ozz Nixon to Digital Man on Fri Jun 28 2019 10:34 pm

    On 2019-06-27 00:52:53 +0000, Digital Man -> Ozz Nixon said:

    Re: Re: Titan Update
    By: Ozz Nixon to apam on Tue Jun 25 2019 03:26 am

    Take it further Andrew! In PCBoard 16, I send 3 UTF8 characters - then do the cursor position request. Non-UTF terminal returns cursor position 10;1, whereas UTF8 terminal returns position 4;1

    Thanks, I'm gonna borrow that idea! :-)

    Not a problem! I am trying to figure out how to detect terminal support
    font changes - possible?

    The SyncTERM/CTerm support for font changes can be queried using ANSI-like sequences http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/src/conio/cterm.txt

    More specifically, I send a: "\x1b[0c" and then check the response for a compatible version of the CTerm library:

    if(sscanf(p, "[=67;84;101;114;109;%u;%u", &x, &y) == 2 && *lastchar(p) == 'c') {
    lprintf(LOG_INFO,"received CTerm version report: %u.%u", x, y);
    cterm_version = (x*1000) + y;
    if(cterm_version >= 1061)
    autoterm |= CTERM_FONTS;
    }

    I know in VT mode some terminals will tell me their rows/cols, and can
    be set to send resize notification - which I want to implement this
    month, eg. ASAP if you can shed some light.

    I don't know of any BBS terminals that will send unsolicited terminal size information. The closest thing I can think of is the Telnet "NEGOTIATE_WINDOW_SIZE" option, but that still is queried by the server and only works over Telnet (e.g. not SSH).

    * Still tinkering with Kitty Protocol, for pixel and png support. (an
    ANSI sequence).

    Never heard of it. <shrug> I assume you're talking about this: https://sw.kovidgoyal.net/kitty/graphics-protocol.html

    Interesting.

    digital man

    This Is Spinal Tap quote #20:
    Well, I'm sure I'd feel much worse if I weren't under such heavy sedation. Norco, CA WX: 73.5°F, 55.0% humidity, 5 mph ENE wind, 0.00 inches rain/24hrs --- SBBSecho 3.07-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (21:1/183)
  • From Ozz Nixon@21:1/144 to Digital Man on Mon Jul 1 17:58:25 2019
    On 2019-06-28 20:08:43 +0000, Digital Man -> Ozz Nixon said:

    Not a problem! I am trying to figure out how to detect terminal support font changes - possible?

    The SyncTERM/CTerm support for font changes can be queried using ANSI-like sequences http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/src/conio/cterm.txt

    More specifically, I send a: "\x1b[0c" and then check the response for a compatible version of the CTerm library:

    if(sscanf(p, "[=67;84;101;114;109;%u;%u", &x, &y) == 2 && *lastchar(p) ==
    'c')
    {
    lprintf(LOG_INFO,"received CTerm version report: %u.%u", x, y);
    cterm_version = (x*1000) + y;
    if(cterm_version >= 1061)
    autoterm |= CTERM_FONTS;
    }

    Firstly, thank you for the share, and the code snippet. I am trying to
    be basic terminal compatible, if detected cterm/SyncTerm push it to its
    max, and if PCBTerm is detected put it to full GUI w/ Sound. PCB Team
    now consists of 4 programmers and 1 graphics artist - everyone else is parttime, I am full-time (you remember those days I am sure). I am
    going to Publish PCBTerm source - and whitepapers that explain each
    concept, the sequences, the theory (of what works) and notes on what
    didn't easily or does not work. I have seen an author of FP/BBS Corner
    - that is doing proprietary GUI and standard ANSI supprot for her
    games. I am trying my damndest to stay within an existing ANSI sequence
    - however, to do the layers for scroller games looks like I am going to
    go outside the lines :-(

    I don't know of any BBS terminals that will send unsolicited terminal size information. The closest thing I can think of is the Telnet "NEGOTIATE_WINDOW_SIZE" option, but that still is queried by the server and only works over Telnet (e.g. not SSH).

    I am planning to support "STARTTLS" like mail and certain FTP
    implementations do. No need to two ports, or existing accounts, you
    want security - just demand it from the terminal - but, I do not see an
    ANSI sequence for me to extend for this yet. Right now, I simply have
    in the setup - use TLS [_] - and when it connects, the socket layer
    sees the (for lack of correct terms) PKI/TLS negoation and turns on
    encryption at that socket on the fly. (I wrote my own socket suite in
    '95, and wrap OpenSSL - when I migrated from BBS world to ISP world).


    * Still tinkering with Kitty Protocol, for pixel and png support. (an
    ANSI sequence).

    Never heard of it. <shrug> I assume you're talking about this: https://sw.kovidgoyal.net/kitty/graphics-protocol.html

    Interesting.

    Yes. I have already made a VERY simple ANSI maze, the goes PNG
    graphical with PCBTerm (use GUI [_] enabled) - we have played it here -
    and the team is like "Wow, this is like a streamable Console"). I am
    just a n00b to game design - to thread, or events, etc. *** We even
    tested over dial-up! MNP/Arq error corrected session and it works great
    (slow, but, damn) ***

    --- ExchangeBBS NNTP Server v3.1/Linux64
    * Origin: nntp://bbs.exchangebbs.com:119/ (21:1/144.0)
  • From Ozz Nixon@21:1/144 to Digital Man on Sun Jul 7 02:15:14 2019
    On 2019-06-27 00:52:53 +0000, Digital Man -> Ozz Nixon said:

    Re: Re: Titan Update
    By: Ozz Nixon to apam on Tue Jun 25 2019 03:26 am

    Take it further Andrew! In PCBoard 16, I send 3 UTF8 characters - then
    do the cursor position request. Non-UTF terminal returns cursor
    position 10;1, whereas UTF8 terminal returns position 4;1

    Thanks, I'm gonna borrow that idea! :-)

    digital man

    I left an open question about SyncTerm's XModem Block Size(s)... but, I
    wanted to share this and see your thoughts.

    I came across a Github ANSI post in some project, that they do

    CSI 48;2;r;g;bm
    CSI P$qm
    ESC \

    All as one string. And supposedly, ESC [ P $q m - is a "Did you under
    stand the last 'm' sequence"... a reply containing

    ESC [ 1 P (or was P 1) = YES
    ESC [ 0 P (or was P 0) = NO
    no response = NO

    Have you see or implemented anything like that in SyncTerm? As we could
    use that to extend the UTF8 auto-detect, to also detect Client Side
    understood 256 Color Sequence, and then Client Side understood 24bit
    Color Sequence... and then later focus on Client Side undersood Kitty
    Graphics Sequences, and Sound Sequences. At which point a BBS author
    would know ANSI, ROWS/COLUMNS, CP437 or UTF8, ANSI Colors, and Graphics/Sounds... and of course for old school vector, RIP detection
    too.

    Later,
    Ozz aka SqZ

    --- ExchangeBBS NNTP Server v3.1/Linux64
    * Origin: nntp://bbs.exchangebbs.com:119/ (21:1/144.0)
  • From Ozz Nixon@21:1/144 to Digital Man on Sun Jul 7 22:10:06 2019
    Where does SyncTerm store it's configuration file(s) on a Mac?

    I switched from SDL to ANSI (to see what that does... it launches but I
    do not see anything)...

    O.

    --- ExchangeBBS NNTP Server v3.1/Linux64
    * Origin: nntp://bbs.exchangebbs.com:119/ (21:1/144.0)
  • From Digital Man@21:1/183 to Ozz Nixon on Sun Jul 7 21:48:10 2019
    Re: Re: Titan Update
    By: Ozz Nixon to Digital Man on Sun Jul 07 2019 02:15 am

    On 2019-06-27 00:52:53 +0000, Digital Man -> Ozz Nixon said:

    Re: Re: Titan Update
    By: Ozz Nixon to apam on Tue Jun 25 2019 03:26 am

    Take it further Andrew! In PCBoard 16, I send 3 UTF8 characters - then do the cursor position request. Non-UTF terminal returns cursor position 10;1, whereas UTF8 terminal returns position 4;1

    Thanks, I'm gonna borrow that idea! :-)

    digital man

    I left an open question about SyncTerm's XModem Block Size(s)... but, I wanted to share this and see your thoughts.

    I came across a Github ANSI post in some project, that they do

    CSI 48;2;r;g;bm
    CSI P$qm
    ESC \

    All as one string. And supposedly, ESC [ P $q m - is a "Did you under
    stand the last 'm' sequence"... a reply containing

    ESC [ 1 P (or was P 1) = YES
    ESC [ 0 P (or was P 0) = NO
    no response = NO

    Have you see or implemented anything like that in SyncTerm?

    I have not. The full list of sequences supported by SyncTERM is supposed to be in this document: http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/src/conio/cterm.txt

    Got a link to the project you're referencing?

    As we could
    use that to extend the UTF8 auto-detect, to also detect Client Side understood 256 Color Sequence, and then Client Side understood 24bit
    Color Sequence... and then later focus on Client Side undersood Kitty Graphics Sequences, and Sound Sequences. At which point a BBS author
    would know ANSI, ROWS/COLUMNS, CP437 or UTF8, ANSI Colors, and Graphics/Sounds... and of course for old school vector, RIP detection
    too.

    It's an interesting concept. We added other query-type operations in SyncTERM 1.1 (e.g. for font support).

    Deuce (deuce in #synchronet on irc.synchro.net) would be the one to really discuss escape sequences in detail.

    digital man

    Synchronet/BBS Terminology Definition #48:
    NAPLPS = North American Presentation Layer Protocol Syntax (ANSI X3.110)
    Norco, CA WX: 62.2°F, 85.0% humidity, 1 mph ESE wind, 0.00 inches rain/24hrs --- SBBSecho 3.07-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (21:1/183)
  • From Digital Man@21:1/183 to Ozz Nixon on Sun Jul 7 21:51:22 2019
    Re: Re: Titan Update
    By: Ozz Nixon to Digital Man on Sun Jul 07 2019 10:10 pm

    Where does SyncTerm store it's configuration file(s) on a Mac?

    On my MacBook, it's in ~/Library/Preferences/SyncTERM/SyncTERM.ini

    digital man

    Synchronet/BBS Terminology Definition #68:
    SSL = Secure Sockets Layer (precursor to TLS)
    Norco, CA WX: 62.2°F, 85.0% humidity, 1 mph ESE wind, 0.00 inches rain/24hrs --- SBBSecho 3.07-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (21:1/183)
  • From Ozz Nixon@21:1/144 to Digital Man on Mon Jul 8 18:05:49 2019
    On 2019-07-07 21:51:22 +0000, Digital Man -> Ozz Nixon said:

    Re: Re: Titan Update
    By: Ozz Nixon to Digital Man on Sun Jul 07 2019 10:10 pm

    Where does SyncTerm store it's configuration file(s) on a Mac?

    On my MacBook, it's in ~/Library/Preferences/SyncTERM/SyncTERM.ini


    YEAH! I stopped at ~/Library and in /Library ... didn't know what to
    grep for. Back to SDL and viola - I have SyncTerm to test with again ;-)

    Thank you!
    Ozz aka SqZ

    --- ExchangeBBS NNTP Server v3.1/Linux64
    * Origin: nntp://bbs.exchangebbs.com:119/ (21:1/144.0)
  • From Ozz Nixon@21:1/144 to Digital Man on Mon Jul 8 18:15:39 2019
    On 2019-07-07 21:48:10 +0000, Digital Man -> Ozz Nixon said:

    [Snipped]
    I have not. The full list of sequences supported by SyncTERM is supposed to
    be
    in this document: http://cvs.synchro.net/cgi-bin/viewcvs.cgi/*checkout*/src/conio/cterm.txt

    Will do - thanks!


    Got a link to the project you're referencing?

    Found it again: In "Querying the Terminal":
    https://gist.github.com/XVilka/8346728


    As we could
    use that to extend the UTF8 auto-detect, to also detect Client Side understood 256 Color Sequence, and then Client Side understood 24bit
    Color Sequence... and then later focus on Client Side undersood Kitty Graphics Sequences, and Sound Sequences. At which point a BBS author
    would know ANSI, ROWS/COLUMNS, CP437 or UTF8, ANSI Colors, and Graphics/Sounds... and of course for old school vector, RIP detection
    too.

    It's an interesting concept. We added other query-type operations in
    SyncTERM
    1.1 (e.g. for font support).

    Deuce (deuce in #synchronet on irc.synchro.net) would be the one to really discuss escape sequences in detail.


    Will do...

    Ozz aka SqZ

    --- ExchangeBBS NNTP Server v3.1/Linux64
    * Origin: nntp://bbs.exchangebbs.com:119/ (21:1/144.0)