I'll pay $250 USD for a fix or workaround if you email
me ahead of time. If anyone does commercial support
please let me know.
I've installed dosemu 1.2.2 on a box with a Cyclades Z
series serial port expander. The DOS session cannot
communicate with the serial ports, either with a
special terminal emulator that we use, or pcplus. The
serial ports work fine from a Linux terminal emulator
-- minicom for example. The statserial command shows no
data activity when the dos terminal emulator is trying
to communicate. The setserial command shows the serial
port like this:
/dev/ttyC14, UART: undefined, Port: 0x000e, IRQ: 0
I've defined the serial port like this in
/etc/dosemu/dosemu.conf
$_com1 = "/dev/ttyC14 irq 4"
or just:
$_com1 = "/dev/ttyC14"
In the boot.log file, it shows this:
SERIAL $Header:
/cvsroot/dosemu/dosemu/src/base/serial/ser_init.c,v
1.1.2.5 2004/02/10 00:36:26 bartoldeman Exp $
registering /dev/ttyC14 for serial
The email for this problem is
dosemu_problem@selectcomm.com.
Thanks for any help. Brandon.
Logged In: YES
user_id=501371
dmesg.txt
Logged In: YES
user_id=1162667
I've attached the dmesg as dmesg.txt. I've compiled the
latest CVS version (1.3.1.1) as an rpm and installed it. No
luck with the Cyclades serial ports, however on another
machine I was able to access the standard serial ports just
fine. Before I run dosemu, the statserial command shows this:
Device: /dev/ttyC14
Signal Pin Pin Direction Status Full
Name (25) (9) (computer) Name
----- --- --- --------- ------ -----
FG 1 - - - Frame Ground
TxD 2 3 out - Transmit Data
RxD 3 2 in - Receive Data
RTS 4 7 out 1 Request To Send
CTS 5 8 in 1 Clear To Send
DSR 6 6 in 0 Data Set Ready
GND 7 5 - - Signal Ground
DCD 8 1 in 0 Data Carrier Detect
DTR 20 4 out 1 Data Terminal Ready
RI 22 9 in 0 Ring Indicator
Afterwards I run dosemu and before I run a DOS serial port
program, statserial shows this:
Device: /dev/ttyC14
Signal Pin Pin Direction Status Full
Name (25) (9) (computer) Name
----- --- --- --------- ------ -----
FG 1 - - - Frame Ground
TxD 2 3 out - Transmit Data
RxD 3 2 in - Receive Data
RTS 4 7 out 1 Request To Send
CTS 5 8 in 0 Clear To Send
DSR 6 6 in 0 Data Set Ready
GND 7 5 - - Signal Ground
DCD 8 1 in 0 Data Carrier Detect
DTR 20 4 out 0 Data Terminal Ready
RI 22 9 in 0 Ring Indicator
Nothing changes when I run the application inside of dosemu.
Logged In: YES
user_id=501371
You forgot the -D9+s log (which is start dosemu with -D9+s
option and attach your ~/.dosemu/boot.log)
Also please attach the "lspci -v" output.
boot.log
lspci.txt
Logged In: YES
user_id=1162667
OK, I've attached the boot.log file and lspci output.
Logged In: YES
user_id=501371
boot.log3.gz
Logged In: YES
user_id=1162667
OK, I patched the dosemu source files, recompiled and
installed. The terminal program that I am trying to get
working still isn't working, however the pcplus program now
shows that the serial port is ON-LINE, but that's the only
difference. Previously, pcplus showed OFF-LINE. The attached
boot.log3.gz file (249447 bytes uncompressed) is the
boot.log result when running dosemu -D9+s.
Logged In: YES
user_id=501371
Logged In: YES
user_id=1162667
The terminal emulator program (DLS) just doesn't work. It
has a standard error message that says "Logon / Logoff
Error." The terminal program is essentially a TVI925
terminal emulator running at 38400 bps, and I can also
emulate the same mode with the pcplus program.
My apologies -- that's not exactly what I did, and I didn't
specify exactly what I did before. On the other machine I
simply tested to make sure the dosemu program would work at
all. I tested against a different system (pcplus in VT102
mode, 9600 bps, ttyS0 port). I will attach that boot.log as
boot.log4.gz. I will have a chance to create a proper
boot.log file (running dosemu on the same TVI925 device
using standard serial ports) once I move some cables around
later tonight.
When I am testing pcplus on the Cyclades system, it displays
nothing except for the status line at the bottom of the screen.
Logged In: YES
user_id=1162667
OK, attached is the boot.log file for a session where dosemu
successfully runs the DLS terminal emulator program
successfully. It was setup on ttyS0.
Logged In: YES
user_id=1162667
boot.log file for dosemu session with successful running of
DLS terminal emulator program on ttyS0 is boot.log5.gz
boot.log5.gz
Logged In: YES
user_id=501371
What I can see from the logs, is the following:
Dosemu is sending the data in both cases. With the normal
serial port, it immediately receives the reply, with Cyclades
it receives nothing at all. Would be nice if you verify whether
or not your hardware gets what dosemu is trying to send.
Also Cyclades report CTS=0, while with the normal port it
is 1.
I think this is the bug of Cyclades. As you say it works
with minicom, I suppose it is only dosemu triggers that
bug. So some work-around might be possible, but in an
absense of the Cyclades board I can't try anything.
Try changing ser_init.c:283 from #if1 to #if0 and see
if it changes something.
I think you should report this problem to Cyclades team.
Given that dosemu works for you with the normal
serial ports, it is really something that Cyclades should
resolve themselves.
Logged In: YES
user_id=501371
I think I've found the bug with CTS. Not sure if it will fix the
entire problem, but please apply the attached patch and
re-do the log. (revert the previous patch of course)
this should fix CTS
boot.log6.gz
Logged In: YES
user_id=1162667
Thanks for the patch. I've tried it and it didn't work. The
boot.log6.gz file from the latest attempt is below. I
realize you need access to the system to fix this, so I will
free up a system with a Cyclades card in it for you to use.
I hope to do this shortly.
See if this is still the problem in current dosemu git.