On Tue, 11 Mar 2003 21:58:24 -0500, David Hamilton
<dhamilto@ANGEL.HOMEIP.NET> wrote:
>I've run into the exact same problem with CircleMUD 3.1 and the autoansi
>patch from the ftp site. I have learned in addition that if I hit enter
>while it's detecting ansi (via the telnet window), it does detect ansi.
>So the problem lies in getting the escape sequence pushed into game_loop
>without user intervention.
>
More information would probably be in order
void init_detansi(struct descriptor_data *d) {
write_to_output(d, "\r\nDetecting ANSI compliance... \x1b[6n");
STATE(d) = CON_DETANSI;
}
This function works, and does return a good code (in telnet, not tintin,
which is probably a tintin problem anyway). Which is read into:
void detansi(struct descriptor_data *d, char *input) {
/* Received a square bracket, that's probably the ANSI code being
* returned. Call it a detection :)
*/
if (strchr(input, '['))
end_ansi(d, TRUE);
d->has_prompt = 0;
}
only if enter is pressed by the user.
game_loop calls:
if (STATE(d) == CON_DETANSI)
detansi(d, comm);
and new_descriptor calls init_detansi
It appears that all would be solved if the \x1b[6n response could be
automatically inserted into char comm; we would be set. I don't know if
the move from SEND_TO_Q had anything to do with this or not.
Thanks for any help that can be offered.
David
--
+---------------------------------------------------------------+
| FAQ: http://qsilver.queensu.ca/~fletchra/Circle/list-faq.html |
| Archives: http://post.queensu.ca/listserv/wwwarch/circle.html |
| Newbie List: http://groups.yahoo.com/group/circle-newbies/ |
+---------------------------------------------------------------+
This archive was generated by hypermail 2b30 : 06/26/03 PDT