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