diff options
| author | user <user@clank> | 2026-07-17 23:20:55 +0200 |
|---|---|---|
| committer | user <user@clank> | 2026-07-17 23:20:55 +0200 |
| commit | 15b4767b17f78a827fd221e941c7ac7aa987e02f (patch) | |
| tree | d9f7a414a1b9dd3d88bc940c60538c2f977423ff /docs | |
| parent | irc: strip mIRC formatting, drop 004/005 noise, fix a RAM-bank-swap landmine (diff) | |
| download | gbos-15b4767b17f78a827fd221e941c7ac7aa987e02f.tar.gz gbos-15b4767b17f78a827fd221e941c7ac7aa987e02f.tar.xz gbos-15b4767b17f78a827fd221e941c7ac7aa987e02f.zip | |
irc: keep the keyboard live during RX floods (poll input every pass)
'/join #sl0p right after connect' looked broken: the main loop only
polled input when net_recv_nb returned nothing, and 'continue'd on every
received segment. During a big MOTD (irc.sl0p.foo's is ~60 lines of
color art) that starved input for the whole ~20s flood - the OSK
wouldn't even open, and keystrokes were dropped. gbtype input fared a
bit better (buffered in the 64-byte console ring) but still wasn't
serviced until the flood ended.
Poll pollin()/pollcon() once every loop iteration regardless of RX, and
only idle-sleep when a pass both received nothing and read no key. The
protocol/join logic was already correct (verified: JOIN #sl0p is sent,
accepted, and the client switches to [#sl0p] with topic + names) - this
just makes typing responsive while messages are streaming.
Verified against the live server: injecting /join #sl0p *during* the
MOTD flood now joins immediately instead of waiting it out.
(Note: '#' is on the OSK - third row, second from the end:
10,8,":;,=+*_!?()[]<>@#~" - just not obvious.)
Diffstat (limited to 'docs')
0 files changed, 0 insertions, 0 deletions
