4. Parallel ports, serial ports and mice

4.1. Port access worked with older version, but doesn't work now!

Read README.txt and the port-section in dosemu.conf. Also, you must now you the -s dosemu command line switch.

4.2. Port access was faster with older versions!

To have a chance to log port access, by default every port access produces an exception out of vm86-mode. This takes some time. If you don't want to log port access, use the keyword fast in the appropriate port statement.

4.3. Where are the (microsoft compatible) mouse drivers?

Tom Kimball reported (93/11/24) that:

Several people said to use a different mouse driver and suggested some. I found a couple that seem to work fine.

    oak.oakland.edu:/pub/msdos/mouse/mouse701.zip   (mscmouse)
    oak.oakland.edu:/pub/msdos/mouse/gmous102.zip   (gmouse)

Normally you can use dosemu's internaldriver, so you don't need any additional mousedriver in dosemu outside winemu (97/2/10).

4.4. Why doesn't the mouse driver work?

Mark Rejhon reported (95/4/7) that:

If you start the mouse driver and it just hangs (it might actually take 30-60s), but if you are waiting longer than a minute for the mouse driver to start, try specifying the COM port that the mouse is on, at the mouse driver command line.

4.5. Why does dosemu clobber COM4?

Rob Janssen reported (94/3/24) that:

According to , "dosemu still clobbers COM4 (0x2e8, IRQ 5). 0x2e8 isn't in ports{} in config. I have to run setserial /dev/ttyS3 irq 5 on it after dosemu exits."

This is caused by your VGA BIOS. I have found that by enabling the IO port trace and seeing where it was clobbered.

Disable some ports in config and it will work fine. When you then have problems with the video, try to enable more selective ranges of IO addresses (e.g., 40-43).

4.6. How do I use dosemu over the serial ports?

4.7. How can I switch between dosemu and a shell over the serial line?

John Taylor reported (94/5/25) that:

I am running Linux 1.1.13 and want to point out a great feature that should be protected and not taken out (IMHO). With the 52 version, I can run the program, "screen." From screen, i can invoke dosemu -D-a. What is really great (IMHO) is the screen commands (the CTRL-A cmds) still work. This means I can do a CTRL-A C and add another unix shell, and switch between the two (DOS / UNIX). This allows me to use dosemu over the serial line really well, because switching is made easy.

You may also consider using dosemu -dumb. In this case the escape sequences from the DOS applications go directly to the terminal.

4.8. How can I get the parallel ports to work?

The dosemu.conf has lines at the end to redirect printers to either lpr or a file. If you want direct access to the bare metal, comment out these emulation lines, and add the line:

    $_ports = "device /dev/lp0 fast range 0x3bc 0x3bf" # lpt0

for the "monitor card" printer port (corresponds to /dev/lp0), or:

    $_ports = "device /dev/lp1 fast range 0x378 0x37f" # lpt1

or:

    $_ports = "device /dev/lp1 fast range 0x278 0x27f" # lpt2

for LPT1 (/dev/lp1) or LPT2 (/dev/lp2) respectively(97/2/9).

Hans Lermen writes:

But NOTE: these lines should not be _added_ simply, the string should be concatenated such as:

    $_ports = "...."
    $_ports = $_ports, " device /dev/lp0 fast range 0x3bc 0x3bf"
    =
    This blank is important

Note: newer kernels don't have hardcoded dependencies between /dev/lp* and ioports. Check /proc/ioports for lines such as 0378-037a : parport0.