Skip to content
Snippets Groups Projects
Commit d4da7257 authored by Rob Swindell's avatar Rob Swindell :speech_balloon:
Browse files

A couple of PETSCII fixes wrt saving/restoring line

e.g. when using Ctrl-K or when being prompted for key-press due to inactivity
parent 957a1d7f
No related branches found
No related tags found
1 merge request!463MRC mods by Codefenix (2024-10-20)
Pipeline #4226 passed
...@@ -404,7 +404,7 @@ int sbbs_t::rputs(const char *str, size_t len) ...@@ -404,7 +404,7 @@ int sbbs_t::rputs(const char *str, size_t len)
else if(lbuflen<LINE_BUFSIZE) { else if(lbuflen<LINE_BUFSIZE) {
if(lbuflen == 0) if(lbuflen == 0)
latr = curatr; latr = curatr;
lbuf[lbuflen++] = ch; lbuf[lbuflen++] = str[l]; // save non-translated char to line buffer
} }
} }
return(l); return(l);
...@@ -1466,6 +1466,8 @@ bool sbbs_t::restoreline(void) ...@@ -1466,6 +1466,8 @@ bool sbbs_t::restoreline(void)
lbuflen=0; lbuflen=0;
attr(line->beg_attr); attr(line->beg_attr);
rputs(line->buf); rputs(line->buf);
if(term_supports(PETSCII))
column = strlen(line->buf);
curatr = line->end_attr; curatr = line->end_attr;
carriage_return(); carriage_return();
cursor_right(line->column); cursor_right(line->column);
......
...@@ -156,7 +156,9 @@ char sbbs_t::getkey(int mode) ...@@ -156,7 +156,9 @@ char sbbs_t::getkey(int mode)
return(0); return(0);
} }
if(sys_status&SS_USERON) { if(sys_status&SS_USERON) {
bputs("\r\1n\1>"); attr(LIGHTGRAY);
carriage_return();
cleartoeol();
restoreline(); restoreline();
} }
getkey_last_activity=now; getkey_last_activity=now;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment