From 0268776360973cfbd8fff9bc5d1683cd894fd61b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Deuc=D0=B5?= <shurd@sasktel.net>
Date: Mon, 30 Dec 2024 20:18:30 -0500
Subject: [PATCH] Convert ^G back to 7 when sent.

This technically fixes issue 137 which specifically asked for
"backslash", but backspace (^H) and tab (^I) along with CR (^M)
still do a different thing than they do on Atari keyboards.

Further, CTRL-Q and CTRL-S are used by SyncTERM for Quit and Menu
respectively, so someone expecting all the Atari "stuff" to work
will still be disappointed.

This is a general problem with non-PC emulation (ie: Prestel, Atari,
and Commodore) that really needs some kind of general solution.
---
 src/syncterm/term.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/syncterm/term.c b/src/syncterm/term.c
index e7a5d4abba..71884a7219 100644
--- a/src/syncterm/term.c
+++ b/src/syncterm/term.c
@@ -4696,6 +4696,10 @@ doterm(struct bbslist *bbs)
 			if (key && (cterm->emulation == CTERM_EMULATION_ATASCII)) {
                                 /* Translate keys to ATASCII */
 				switch (key) {
+					case 253: // Undo Unicode: Atascii beep -> ^G
+						ch[0] = 7;
+						conn_send(ch, 1, 0);
+						break;
 					case CIO_KEY_DOWN:
 						ch[0] = 29;
 						conn_send(ch, 1, 0);
-- 
GitLab