Good day!
A couple of wine-users have said Wine doesn't work RTS/CTS right any
more, so I did a +comm,+file trace of juno, and was rewarded with this:
trace:comm:SetCommState handle 224, ptr 0x403f0578
trace:comm:SetCommState bytesize 8 baudrate 115200 fParity 0 Parity 0 stopbits 1
trace:comm:SetCommState ~IXON ~IXOFF
trace:comm:SetCommState CRTSCTS
trace:comm:SetCommState ~CRTSCTS
Does something look wrong about that, or am I just seeing it crosseyed?
In GetCommState we have this:
if (port.c_cflag & CRTSCTS) {
lpdcb->fDtrControl = DTR_CONTROL_ENABLE;
lpdcb->fRtsControl = RTS_CONTROL_ENABLE;
lpdcb->fOutxCtsFlow = 1;
lpdcb->fOutxDsrFlow = 1;
} else
And in SetCommState this:
if ( lpdcb->fOutxCtsFlow ||
lpdcb->fRtsControl == RTS_CONTROL_ENABLE
)
{
port.c_cflag |= CRTSCTS;
TRACE("CRTSCTS\n");
}
if (lpdcb->fDtrControl == DTR_CONTROL_ENABLE)
{
port.c_cflag &= ~CRTSCTS;
TRACE("~CRTSCTS\n");
}
So I guess if you want to turn off CRTSCTS,
GetCommState(handle, lpdcb);
SetCommState(handle, lpdcb);
would about do it. I don't know what fDtrControl is 'spoze to do, but
shutting off flow control entirely seems a bit extreme. Juno apparently
asks for it by name, CRTSCTS was not on when it did GetCommState, but it
asked for flow control, too.
Lawson
panic: detected rogue system administrator!!
---cut here