home bbs files messages ]

Just a sample of the Echomail archive

<< oldest | < older | list | newer > | newest >> ]

 Message 48823 
 Rob Swindell (on Windows 11) to Git commit to main/sbbs/master 
 src/sbbs3/ansi_terminal.cpp js_console.c 
 26 Jan 26 19:07:06 
 
TZUTC: -0800
MSGID: 54257.syncprog@1:103/705 2dde35cb
PID: Synchronet 3.21b-Linux master/5c73d262c Jan 21 2026 GCC 12.2.0
TID: SBBSecho 3.35-Linux master/0958ba161 Jan 25 2026 GCC 12.2.0
BBSID: VERT
CHRS: ASCII 1
FORMAT: flowed
https://gitlab.synchro.net/main/sbbs/-/commit/c5d806d626b4aaa5afee53b1
Modified Files:
	src/sbbs3/ansi_terminal.cpp js_console.cpp terminal.h
Log Message:
Add a cursor position optimizer to the ANSI_Terminal class

(disabled by default, Deuce is pretty sure it'll break somethings)

The performance of some scripts (e.g. utopia.js) benefit from the filtering of
redundant cursor position changes and though we can (with v3.21) check the
console current_row/column properties in the script to avoid sending redundant
changes to cursor position, that is not backwards compatible with Synchronet
v3.20 since its console.gotoxy() method did *not* update the internal concept
of where the cursor position is currently. So any optimization in the script
itself would have to either:

a) be Synchronet-version specific or risk incorrectly filtering out cursor
position changes that were not actually redundant, or

b) track the cursor position itself after every call to console.putmsg, write,
print, etc.

I figured this simple optimization could be available to any script, if it
wanted it, but the script should be sure to set the setting back (e.g. by using
js.on_exit) to the value it had when the script was started.

The new JS 'console' property (and Terminal class member) is: optimize_gotoxy
(defaults to false/off).
--- SBBSecho 3.35-Linux
 * Origin: Vertrauen - [vert/cvs/bbs].synchro.net (1:103/705)
SEEN-BY: 103/705 105/81 106/201 124/5016 128/187 129/14 153/757 7715
SEEN-BY: 154/10 30 110 203/0 218/700 221/0 226/30 227/114 229/110
SEEN-BY: 229/134 206 317 400 426 428 470 700 705 240/1120 5832 263/1
SEEN-BY: 266/512 280/464 5003 5006 291/111 292/8125 301/1 320/219
SEEN-BY: 322/757 341/66 234 342/200 396/45 423/120 460/58 256 1124
SEEN-BY: 633/280 712/848 770/1 902/26 5020/400 8912 5054/30 5075/35
PATH: 103/705 280/464 460/58 229/426


<< oldest | < older | list | newer > | newest >> ]

(c) 1994,  bbs@darkrealms.ca