VOGONS


First post, by Brad

User metadata
Rank Newbie
Rank
Newbie

I think there's a slight oversight in the modem emulation in DosBox 0.61: it looks like spaces after "ATDT" are presumed to be part of the hostname. If I use a (DOS) terminal program and sent "ATDT10.0.3.1:1234", I can connect to port 1234 on my box. But if I send "ATDT 10.0.3.1:1234", it parses the port properly, but tries to resolve " 10.0.3.1", which, of course, fails. The strange part is that is says "accept() failed". I think that's a logging bug since I doubt it's calling accept() on an outbound connection 😀

Anyway, Jagged Alliance: Deadly Games (which works in 0.61 now) can't make "calls" because it puts a space after "DT".

I found the sourceforge pages for dosbox (not an easy task from the dosbox.sourceforge.net pages) and took a look at the code. I've quickly re-written the command parser to deal better with whitespace and not get confused by command sequences that might live within a domain name. I checked some of the other dosbox code and noticed it has no problem using std::string, so I went that route.

I also cleaned up the function a _little_ by removing a bunch of unused variables. I tried to keep the style of the existing code.

This patch is no masterpiece, and I haven't properly tested everything, but it seems to work and should deal with much more variation in modem commands. Hopefully, it will end up attached to this posting.

Thanks for dosbox. It's really cool 😀

Attachments

  • Filename
    dosbox.diff.txt
    File size
    9.34 KiB
    Downloads
    194 downloads
    File comment
    Patch to CVS
    File license
    Fair use/fair dealing exception