You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
* Add telnet server with 60pps paced output
Add gambaterm-telnet server using telnetlib3, with a simplified
architecture compared to the previous NUL-padding approach. Frame
output is paced at 60 packets per second via an asyncio forwarding
task combined with TCP_NODELAY, producing smooth rendering without
complex bandwidth estimation.
- TelnetTerminal blessed subclass (mirrors SSHTerminal pattern)
- Kitty keyboard protocol required for both SSH and telnet
- Per-user save state directories (SHA-256 hashed usernames)
- NAWS terminal resize support
- Connection stats logging and idle timeout
- --max-players and --robot-check support via telnetlib3 guard shells
* Remove telnet_input module
* Remove paced_forward_output since the run function already produces entire frames
* Add ilde-timeout option to gambaterm-telnet and kick idle clients with a graceful shutdown
---------
Co-authored-by: Vincent Michel <vxgmichel@gmail.com>
Copy file name to clipboardExpand all lines: README.md
+20Lines changed: 20 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -125,6 +125,25 @@ $ ssh localhost -p 8022
125
125
```
126
126
127
127
128
+
Telnet server
129
+
-------------
130
+
131
+
The emulator can also be served over telnet, requiring no authentication or SSH keys:
132
+
133
+
```shell
134
+
$ gambaterm-telnet myrom.gbc
135
+
$ gambaterm-telnet --bind 0.0.0.0 --port 8023 myrom.gbc # listen on all interfaces
136
+
```
137
+
138
+
Connect with any telnet client:
139
+
140
+
```shell
141
+
$ telnet localhost 8023
142
+
```
143
+
144
+
Clients must use a terminal that supports the [kitty keyboard protocol](https://sw.kovidgoyal.net/kitty/keyboard-protocol/) -- connections without it are rejected. Use `--max-players N` to limit concurrent connections. 24-bit color is always assumed. Audio is not available over telnet.
145
+
146
+
128
147
Terminal support
129
148
----------------
130
149
@@ -247,6 +266,7 @@ Here is the list of the dependencies used in this project, all great open source
0 commit comments