• sexpots: add ability to change stty settings

    From Rob Swindell@1:103/705 to GitLab note in main/sbbs on Sun Apr 14 18:15:46 2024
    https://gitlab.synchro.net/main/sbbs/-/issues/745#note_5270

    Are you referring to the POSIX `stty` utility program?

    The `stty` system call (the programmatic interface that another program would be expected to use to "print or change terminal characters") is not supported in Linux:

    NAME
    afs_syscall, break, fattach, fdetach, ftime, getmsg, getpmsg, gtty, isastream, lock, madvise1, mpx, prof, profil, putmsg, putpmsg, security, stty, tuxcall, ulimit, vserver - unimplemented system calls

    SYNOPSIS
    Unimplemented system calls.

    DESCRIPTION
    These system calls are not implemented in the Linux kernel.

    I'm not sure what exactly you want to *change* via stty, but check and see if those settings (whatever they are) are supported by the termios library functions (i.e. run 'man termios' and read up on them) and let me know which.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Nigel Reed@1:103/705 to GitLab note in main/sbbs on Sun Apr 14 21:22:03 2024
    https://gitlab.synchro.net/main/sbbs/-/issues/745#note_5271

    I'm looking at playing around with 7 and 8 data bits and even parity so things like CS7 CS8 PARENB and unsetting PARODD are what I would want to set so yes, if there's a way of passing parameters like those, that would work.

    The stty command shows evenp is a cobination of cs7 parenb and -parodd
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell@1:103/705 to GitLab note in main/sbbs on Sun Apr 14 21:41:21 2024
    https://gitlab.synchro.net/main/sbbs/-/issues/745#note_5272

    We already have the sexpots.ini settings:
    - Parity
    - ParityOdd
    - ByteSize
    - StopBits

    which result in the proper calls to `tcsetattr()` on Unix. Have you already tried these?
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Nigel Reed@1:103/705 to GitLab note in main/sbbs on Sun Apr 14 22:38:10 2024
    https://gitlab.synchro.net/main/sbbs/-/issues/745#note_5273

    This only applies to the [COM] section? There's nothing that says it will work in the [TCP] section.

    I want to change the settings after the user has selected from a prompt of which host/service to connect to.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell@1:103/705 to GitLab note in main/sbbs on Sun Apr 14 22:42:49 2024
    https://gitlab.synchro.net/main/sbbs/-/issues/745#note_5274

    The com-port related settings can be used in the `[COM]` section and `[COM:key]` sections of the `sexpots.ini` file.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Nigel Reed@1:103/705 to GitLab note in main/sbbs on Mon Apr 15 01:56:59 2024
    https://gitlab.synchro.net/main/sbbs/-/issues/745#note_5275

    Ok got it. Is there a way in JS to display whatever the term settings are? Doesn't need to be as a formatted string, as long as I can figure it out some how.
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Rob Swindell@1:103/705 to GitLab note in main/sbbs on Mon Apr 15 12:06:14 2024
    https://gitlab.synchro.net/main/sbbs/-/issues/745#note_5276

    In SBSS-JS on *nix, you could invoke `system.popen('stty')` and parse its output. Is that what you mean?
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
  • From Nigel Reed@1:103/705 to GitLab issue in main/sbbs on Fri Apr 19 09:56:28 2024
    close https://gitlab.synchro.net/main/sbbs/-/issues/745
    --- SBBSecho 3.20-Linux
    * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)