- Oct 25, 2018
-
-
rswindell authored
don't use the stored user terminal type. This allows the same user (e.g. the sysop) to be logged onto multiple nodes concurrently with different terminal types without effecting the other node/session. Guest sessions were already immune to this problem.
-
rswindell authored
RIP/ANSI/PETSCII, if the files exist.
-
rswindell authored
Newly supported files: text/menu/*.msg (higher priority than .asc when the terminal supports IBM extened ASCII, aka CP437). These are the same format as .asc files (and supported more readily by PabloDraw). Newly supported files: text/menu/*.seq - native PETSCII files for PETSCII terminals only. Support in the underlying putmsg() function is still pending. Also, the text/*.msg files now supports alternative file formats for RIP/ANSI/PETSCII, if the files exist. WIP menu support removal. The new menu/display file selection priority will be detailed on wiki.synchro.net, but rest assured, it's backwards compatible with the previous/old priority with the exception of the removal of WIP support and HTML support.
-
rswindell authored
telnet_input_thread() is started before cterm_init() is called, so the global "cterm" pointer was (sometimes) NULL at the time that the input thread received a "do termina-type" request, and telnet_interpret would dereference cterm (to get the emulation type) and thus crash. This is an inelegant solution which halts the telnet_input_thread() until the cterm pointer has been initialized. Also, be sure to reset cterm to NULL after calling cterm_end() which free's it. This fixes the problem of the telnet_input_thread() potentially using a stale (free'd) copy of cterm for the terminal-type response on subsequent connects.
-
rswindell authored
you run uedit and don't have access to the user.dat file, it will report an error rather than displaying a user with uninitialized values.
-
- Oct 24, 2018
-
-
echicken authored
that may be holding down their privates at any given time.
-
- Oct 23, 2018
-
-
rswindell authored
-
rswindell authored
functionality.
-
rswindell authored
This mode flag is only for use with ufic.showbuf(). Previously (before revision 1.226 of uifc32.c), this would result in a NOOP, but when I added "Cut" (to clipboard) support, I introduced WIN_CUT and used the same bit value as WIN_HLP (since it wasn't used in uifc.list). I noticed a new "Shift-DEL Cut" menu option appeared in SyncTERM (with no corresponding way to paste) and this reuse of the WIN_HLP flag was the reason why.
-
rswindell authored
-
- Oct 22, 2018
-
-
rswindell authored
Telegram (user@hostname): Digital Man@undefined
-
rswindell authored
-
rswindell authored
the string (which starts with the event internal code).
-
rswindell authored
to warning - this is normal/expected (e.g. when mail base is being backed-up).
-
rswindell authored
-
rswindell authored
-
rswindell authored
to hit it twice - not sure why just yet.
-
rswindell authored
Added a send to "All" (inter-BBS broadcast) option.
-
rswindell authored
protocol is repeated (e.g. Telnet). When adding/inserting in arrays of items, break the loop if they enter an empty string. Cancel the add item if the first field is blank.
-
rswindell authored
Using new bbs.menu_exists() method.
-
rswindell authored
-
rswindell authored
Also, insert a blank line when there's no auto.msg file.
-
rswindell authored
Also, allow the inactivity timeout value for connections without an auto-detected terminal to be set explicitly via modopts.ini [login] inactive_hangup = 30 (seconds) rather than deriving from the configured inactivity hangup value in SCFG->Nodes.
-
rswindell authored
-
rswindell authored
-
rswindell authored
-
rswindell authored
Also replaced all embedded Ctrl-A chars with \1 to make editing easier.
-
rswindell authored
-
rswindell authored
support Commodore/PETSCII terminals.
-
rswindell authored
a message header file.
-
rswindell authored
e.g. Commodore 64, using the new Ctrl-A\ code (conditional newline/cont) a lot. 5 New strings at the end.
-
rswindell authored
-
rswindell authored
So Omegix recently asked in the Synchronet Discussion group whether or not a PETSCII (Commodore) terminal could be used to access his Synchronet BBS. Now, the answer is "Yes". :-) The major issues addressed: - detecting a PETSCII terminal, solved by assigning specific (configurable): TCP ports to be used for incoming PETSCII connections, by default: port 64 is for 40-column PETSCII and port 128 is for 80-column PETSCII, but if the terminal sends a Telnet Window Size reply (e.g. SyncTERM), then either size terminal should fine on either port. The port numbers are configurable in the [BBS] section of your sbbs.ini file using the new keys: PET40Port (default value: 64) and PET80Port (default value: 128). Having these keys set doesn't make make the terminal server listen on that additional port - you'll need to add more IP:port combinations to one of Interfaces values, example: TelnetInterface=71.95.196.34,71.95.196.34:64,71.95.196.34:128 And you don't have to use Telnet for the PETSCII connections - you could use RLogin or SSH instead (or in addition). - support for terminal widths < 80 columns: This was achieved through a combination of text.dat changes (numerous), new Ctrl-A and @-codes and new optional terminal-width-specific menu files (e.g. text/menu/main.40col.asc) A side effect of these changes is actually better support for terminals *wider* than 80 columns as well! - support for terminals that don't expand tabs to spaces (e.g. PETSCII): The terminal server now handles tab expansion with a run-time settable tab-size (default size: 8) - conditional access based on PETSCII (or small) terminal use (or not): + New PETSCII ARS keyword (boolean) + New COLS and ROWS ARS keywords (for terminal width and height requirements) + New TERM (string) ARS keyword New @-codes: - WORDWRAP, when placed at the top of a file, enables auto-wordwrap for lines longer than the terminal width - CENTER, the text following before an end of line will be displayed centered on the terminal (whatever the width, in columns) - CLEAR, like CLS, except it ignores (doesn't display) a CRLF that follows - COLS, current number of terminal columns (width) - ROWS, current number of terminal rows (height) - TERM, the auto-detected or reported terminal type (e.g. ANSI, TTY, etc.) - SYSONLY, toggles "echo" (display) off/back-on for non-sysops similar to the Ctrl-A( and ) codes, but more convenient to use (and PabloDraw won't strip the @-code from the file like it does with Ctrl-A codes it doesn't support) New Ctrl-A codes: - \ conditional new-line/continuation when the terminal width is < 80 cols prints the new text.dat string LongLineContinuationPrefix yesno() will now return true if passed a blank string. noyes() will now return false if passed a blank string. getstr()'s input length limiting based on terminal width is more broadly applied now (not just when using the K_LINE mode flag). New JS bbs object method: menu_exists(<base_filename>) returns Boolean New JS console object property: tabstop (Number) New JS console object methods: getbyte() and putbyte() to recv/send raw byte value with (very little) interpretation/intervention by the terminal server New JS console object method: creturn() - performs a carriage return (or equivalent) New JS (and C) printfile() mode flag: P_TRUNCATE, causes long lines to be truncated, rather than displaying causing a line-wrap. New text.dat strings: - NoAccessTerminal (for ARS check failures) - LongLineContinuationPrefix (for breaking long lines for 40col terminals) - Scanning (replaces a previously hard-coded "Scanning" string) - Done (replaces a previusly hard-coded "Done") - Scanned (when finished scannning, clears the progress bar)
-
rswindell authored
and then hit 'Q', it would kick you out of multi-node chat (because the abort flag was set).
-
- Oct 21, 2018
-
-
rswindell authored
-
rswindell authored
keyboard). PETSCII BBSes include prompts like "Hit Ctrl-X to abort", so they expect the terminal to be able to send control-key combinations. Both CGTerm and CBMTerm are able to send all the relevant control-key combinations (and their single-key equivalents, like ESC and TAB) as well.
-
rswindell authored
Should this also be done for 141 (shift-CR)? I'd love to know where you found the document which inspired the comment ("disabled reverse") - but the code just wasn't doing it and it was apparent when viewing PETSCII art and comparing the behavior with other emulators.
-
deuce authored
-
deuce authored
This may mess up colour hacks in other places, but should fix C128 colours in the terminal.
-
rswindell authored
(if the server supported the option), as "ANSI". Now, if the current cterm emualation is PETASCII [sic], or ATASCII, send "PETSCII" or "ATASCII" instead. Now this brings up a couple of discussion points: 1. Should that default Telnet term-type be "ANSI-BBS" (or "ansi-bbs") instead? 2. Similarlly, RLogin connections *always* send the term-type as "ansi-bbs" - I think a similar change is needed in rlogin.c to be technically correct, but we should probably be consistent about how SyncTERM in ANSI-BBS emulation mode identifies itself ("ANSI", "ANSI-BBS", or "ansi-bbs"). 3. If there is terminal type advertised via SSH, that probably needs addressing as well.
-