The dosemu HOWTO
by Mike Deisher.
Updated by Uwe Bonnes for dosemu-0.64.4, 15 March 1997
Updated by David Hodges, ddaavviiddhhooddggeess@@aallttaavviissttaa..nneett
______________________________________________________________________
Table of Contents
1. The preliminaries
1.1 What is dosemu, anyway?
1.2 What operating systems does dosemu work under ?
1.3 What processors does dosemu work on ?
1.4 What if I have an Alpha/Sparc/Motorola/other non-Intel CPU ?
1.5 Do I need MS-DOS to use dosemu ?
1.6 Can I run Microsoft Windows programs under dosemu ?
1.7 I want to run something that won't run under DOSemu or Wine
1.8 Names and numbers
1.9 What version of Dosemu should I use?
1.10 What's the newest version of dosemu and where can I get it?
1.11 Where can I ask questions?
1.12 Where can I report bugs and ask questions?
1.13 What documentation is available for dosemu?
1.14 I have a program that fails, not listed in EMUfailure.txt
1.15 How do I submit changes or additions to the HOWTO?
1.16 Message from Greg...
2. Compiling and installing dosemu
2.1 Where are the installation instructions?
2.2 Top ten problems while compiling and installing dosemu.
2.3 How do I make aout binaries?
2.4 How do I compile dosemu on a machine with low memory?
2.5 Compilation fails with some strange error regarding "slang"
2.6 What configurable options are available ?
2.7 Do I need to run dosemu as root?
2.8 How do I patch dosemu ?
2.9 What versions of DOS are known to run with dosemu ?
3. Hard disk setup
3.1 How do I use my hard disk with dosemu?
3.2 How can I access the hdimage from Linux?
3.3 Can I use my stacked/double-spaced/super-stored disk?
3.4 Creating your own hdimage file.
4. Parallel ports, serial ports and mice
4.1 Port access worked with older version, but doesn't work now!
4.2 Port access was faster with older versions!
4.3 Where are the (microsoft compatible) mouse drivers?
4.4 Why doesn't the mouse driver work?
4.5 Why does dosemu clobber COM4?
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?
4.8 How can I get the parallel ports to work?
5. Multiple users and Non-interactive sessions
5.1 Can I use dosemu on a multi-user system?
5.2 How can I run dos commands non-interactively?
6. dosemu and Netware
6.1 How do I get Netware access from dosemu?
7. dosemu and X-windows(97/2/9).
7.1 Can I run dosemu in console mode while running X?
7.2 Is it possible to run dosemu in a window in X-windows?
7.3 Xdos dosen't work on a remote X-display!
7.4 Xdos dosen't find the VGA font
7.5 The vga font is very small on my high resolution display
7.6 Dosemu compilation fails with some strange error regarding X!
7.7 Does ansi emulation work properly?
8. dosemu and MS-Windows 3.1
8.1 Is it possible to run MS-Windows 3.1 under dosemu?
8.2 Can I run 32bit stuff with winemu
8.3 Errormessage: Cannot find the vdtapi.386 file when starting dosemu
8.4 Windows 3.x in xdos:
8.5 Can I install windows from within dosemu?
8.6 Notes for the mouse under win31-in-xdos:
8.7 Why did my Icon disappear from the Program manager?
9. Video and sound
9.1 Can I run 32-bit video games under dosemu?
9.2 Exiting from dosemu gives me a screen full of garbage.
9.3 Why doesn't my soundcard software work with dosemu?
10. Games
10.1 Duke3d dosen't work
11. Problems and fixes
11.1 Security issues
11.2 dosemu says "ERROR: general protection" and terminates when I run some program
11.3 Dosemu dies when booting. I have Win95 installed.
11.4 Dosemu hangs! How can I kill it?
11.5 Dosemu crashed and now I can't type anything.
11.6 I've enabled EMS memory in dosemu.conf but it does not help.
11.7 How do I get rid of all those annoying "disk change" messages?
11.8 Why won't dosemu run a second time after exiting in console mode?
11.9 Why will dosemu run in a term but not in the console?
11.10 How can I speed up dosemu?
11.11 My CDROM drive has problems reading some files under dosemu.
11.12 How do I see debugging output?
11.13 Why are my keystrokes echoed ttwwiiccee??
11.14 Dosemu scrambles my screen?
11.15 MS FoxPro 2.6 won't run
12. Contributing to the dosemu project
12.1 Who is responsible for dosemu?
12.2 I want to help. Who should I contact?
______________________________________________________________________
11.. TThhee pprreelliimmiinnaarriieess
11..11.. WWhhaatt iiss ddoosseemmuu,, aannyywwaayy??
To quote the manual, "dosemu" is a user-level program which uses
certain special features of the Linux kernel and the 80386 processor
to run MS-DOS/FreeDOS/DR-DOS in what we in the biz call a `DOS box.'
The DOS box, a combination of hardware and software trickery, has
these capabilities:
o the ability to virtualize all input/output and processor control
instructions
o the ability to support the word size and addressing modes of the
iAPX86 processor family's "real mode," while still running within the
full protected mode environment
o the ability to trap all DOS and BIOS system calls and emulate such
calls as are necessary for proper operation and good performance
o the ability to simulate a hardware environment over which DOS
programs are accustomed to having control.
o the ability to provide DOS services through native Linux services;
for example, dosemu can provide a virtual hard disk drive which is
actually a Linux directory hierarchy."
11..22.. WWhhaatt ooppeerraattiinngg ssyysstteemmss ddooeess ddoosseemmuu wwoorrkk uunnddeerr ??
Dosemu is primarily written for Linux. It also works on NetBSD and
possibly FreeBSD, however the graphics emulation is unlikely to work
on NetBSD, which means that all DOS programs that use graphics mode
(most DOS programs) will not work under NetBSD.
11..33.. WWhhaatt pprroocceessssoorrss ddooeess ddoosseemmuu wwoorrkk oonn ??
Dosemu only works on Intel 80x86 processors, e.g. 80386, 80486,
Pentium etc.
11..44.. WWhhaatt iiff II hhaavvee aann AAllpphhaa//SSppaarrcc//MMoottoorroollaa//ootthheerr nnoonn--IInntteell CCPPUU ??
Dosemu only works on Intel 80x86 processors but there are
alternatives: Bochs (hhttttpp::////wwwwww..bboocchhss..ccoomm) is an open source shareware
PC emulator that runs on most Unixes (as well as MS-Windows), and
there are other (non-free) alternatives - see the comp.emulators.misc
FAQ, available via usenet or ffttpp::////rrttffmm..mmiitt..eedduu//ppuubb//uusseenneett--bbyy--
hhiieerraarrcchhyy//ccoommpp//eemmuullaattoorrss//mmiisscc//
11..55.. DDoo II nneeeedd MMSS--DDOOSS ttoo uussee ddoosseemmuu ??
No. You need some version of DOS but not necessarily MS-DOS. See the
section "What versions of DOS are known to run with dosemu ?"
11..66.. CCaann II rruunn MMiiccrroossoofftt WWiinnddoowwss pprrooggrraammss uunnddeerr ddoosseemmuu ??
Not reliably. You would be better to use the Windows emulator Wine
(hhttttpp::////wwwwww..wwiinneehhqq..ccoomm). If you insist on running Windows under
dosemu, see section 8 - dosemu and MS-Windows 3.1.
11..77.. II wwaanntt ttoo rruunn ssoommeetthhiinngg tthhaatt wwoonn''tt rruunn uunnddeerr DDOOSSeemmuu oorr WWiinnee
See section 1.4.
11..88.. NNaammeess aanndd nnuummbbeerrss
(xx/yy/zz) means day zz in month yy in year xx.
winemu mean WinOS/2 running in dosemu.
11..99.. WWhhaatt vveerrssiioonn ooff DDoosseemmuu sshhoouulldd II uussee??
Dosemu uses the same numbering scheme as the kernel. Uneven second
numbers are for possible unstable developer releases, even second
numbers are for releases considered stable. At the time of writing,
00..9988..88 is the latest stable release, while 00..9999..1100 is the latest
developer's release. So if you want to use dosemu, get the latest
ssttaabbllee release.
11..1100.. WWhhaatt''ss tthhee nneewweesstt vveerrssiioonn ooff ddoosseemmuu aanndd wwhheerree ccaann II ggeett iitt??
The newest version of dosemu as of 99/04/09 is ddoosseemmuu00..9988..88 and can be
ftp'ed from:
ftp://ftp.dosemu.org/pub/dosemu/
Remember that this is ALPHA code, however: there may be serious bugs
and very little documentation for new features. The development
version is particularly likely to have bugs. Please use it only if you
like to do active development. Don't report bugs in the development
version, fix them instead.
11..1111.. WWhheerree ccaann II aasskk qquueessttiioonnss??
If you have problems regarding installing and running dosemu after
reading the documentation, first try to help yourself: Your question
has probably been asked and perhaps answered before. Try some search
engine on the internet to retrieve that information. E.g. you can ask
http://www.dejanews.com
to find all newsnet articles containing the keywords of your question.
Helping yourself will probably be faster than asking a well known
question. It also frees up the time of developers from answering
trivial question and so helps the further development of dosemu.
11..1122.. WWhheerree ccaann II rreeppoorrtt bbuuggss aanndd aasskk qquueessttiioonnss??
If you want to ask questions and report bugs regarding dosemu, you
should consider subscribing to the linux-msdos mailing list. To
subscribe, send mail to MMaajjoorrddoommoo@@vvggeerr..rruuttggeerrss..eedduu with the following
command in the body of your email message:
subscribe linux-msdos
[email protected]
If you ever want to remove yourself from the mailing list, you can
send mail to MMaajjoorrddoommoo@@vvggeerr..rruuttggeerrss..eedduu with the following command in
the body of your email message:
unsubscribe linux-msdos
[email protected]
(95/8/11). When you are subscribed to linux-msdos, you can send your
report as mail to
[email protected]. There is a gate that
send mails to
[email protected] as postings to the news-
group named lliinnuuxx..ddeevv..mmssddooss. If your News provider doesn't carry that
group, ask her(him) to add that group. Before you ask a question, you
should carefully read all of the documentation, including this HOWTO
and check one of the mailing list archives listed at
hhttttpp::////wwwwww..ddoosseemmuu..oorrgg//mmaaiilliinngglliisstt..hhttmmll to see whether your question
has already been asked and answered.
11..1133.. WWhhaatt ddooccuummeennttaattiioonn iiss aavvaaiillaabbllee ffoorr ddoosseemmuu??
Dosemu comes with documentation. The main documentation files
README.txt and README-tech.txt cover virtually all aspects of dosemu
and may be more up-to-date than this HOWTO.
The "dosemu Novice's Altering Guide" or DANG is a road map to the
inner workings of dosemu. It is designed for the adventurous, those
who wish to modify the source code themselves. The DANG is maintained
by Alistair MacDonald (aalliissttaaiirr@@sslliitteessyyss..ddeemmoonn..ccoo..uukk) and is found in
the doc directory of the dosemu source tree.
The EMU failure list (EMUfailure.txt) is a partial list of programs
known nnoott to work under dosemu.
And then, of course, there is the dosemu FAQ/HOWTO. But you already
know about that, don't you. It is also posted once in a while to the
mailing list and found in the doc-directory. The most recent version
can be found at hhttttpp::////wwwwww..ddoosseemmuu..oorrgg.
11..1144.. II hhaavvee aa pprrooggrraamm tthhaatt ffaaiillss,, nnoott lliisstteedd iinn EEMMUUffaaiilluurree..ttxxtt
First check, if the failure of your program is not caused by some of
the fundamental incapabilities of dosemu, listed in EMUfailure.txt. If
you think you have something new, please report to linux-
[email protected]. Perhaps it can be made going with the help
others. Give detailed information about your setup, tell the version
of kernel, dosemu etc and name the observed errors. You can use xdos
to cut and paste the error message into your report. But keep your
report in a readable form. We know the content of ../etc/config.dist.
So only send the active lines from your dosemu.conf. Try running
dosemu with some or all debug output turned on and scan through your
debug output and at first only send those parts you think are
relevant. Few people are willing to decode some long attachment to a
mail, to do debugging for others. But keep your logs at hand, in case
others ask detailed questions.
11..1155.. HHooww ddoo II ssuubbmmiitt cchhaannggeess oorr aaddddiittiioonnss ttoo tthhee HHOOWWTTOO??
The preferred method is to edit the file ddoosseemmuu--HHOOWWTTOO--xxxx..xx..ssggmmll to
incorporate the changes, create a diff file by typing something like
diff -uw original-file new-file
and send it to ddaavviiddhhooddggeess@@aallttaavviissttaa..nneett. If you do not know SGML,
that's ok. Changes or new information in any form will be accepted.
Creating the diff file just makes it easier on the HOWTO maintainer.
:-)
11..1166.. MMeessssaaggee ffrroomm GGrreegg......
Unless otherwise stated, Linux HOWTO documents are copyrighted by
their respective authors. Linux HOWTO documents may be reproduced and
distributed in whole or in part, in any medium physical or electronic,
as long as this copyright notice is retained on all copies. Commercial
redistribution is allowed and encouraged; however, the author would
like to be notified of any such distributions.
All translations, derivative works, or aggregate works incorporating
any Linux HOWTO documents must be covered under this copyright notice.
That is, you may not produce a derivative work from a HOWTO and impose
additional restrictions on its distribution. Exceptions to these rules
may be granted under certain conditions; please contact the Linux
HOWTO coordinator at the address given below.
In short, we wish to promote dissemination of this information through
as many channels as possible. However, we do wish to retain copyright
on the HOWTO documents, and would like to be notified of any plans to
redistribute the HOWTOs.
If you have questions, please contact Greg Hankins, the Linux HOWTO
coordinator, at
[email protected](95/8/11).
22.. CCoommppiilliinngg aanndd iinnssttaalllliinngg ddoosseemmuu
22..11.. WWhheerree aarree tthhee iinnssttaallllaattiioonn iinnssttrruuccttiioonnss??
The installation instructions are in the file, "QuickStart", included
in the distribution.
22..22.. TToopp tteenn pprroobblleemmss wwhhiillee ccoommppiilliinngg aanndd iinnssttaalllliinngg ddoosseemmuu..
1. Forgetting to read the QQuuiicckkSSttaarrtt Guide.
2. Try to compile some old version of dosemu.
3. Try to compile with a kernel older than 2.0.28 or 2.1.15.
4. Having the wrong linux kernel source sitting in //uussrr//ssrrcc//lliinnuuxx or
missing //uussrr//ssrrcc//lliinnuuxx//iinncclluuddee//vveerrssiioonn..hh
5. Use dosemu with a kernel that does not have IIPPCC compiled in.
6. Compile with gcc older than 2.7.2 or libc older than 5.x.x.
7. Forget to edit your //eettcc//ddoosseemmuu..ccoonnff, //eettcc//ddoosseemmuu..uusseerrss and
//vvaarr//lliibb//ddoosseemmuu//gglloobbaall..ccoonnff files
8. Run DOSEMU with partition access while they are already mounted.
9. Don't install dosemu with sufficient privileges (i.e., root).
10. Try to run programs that use DPMI without enabling dpmi in
/etc/dosemu.conf
22..33.. HHooww ddoo II mmaakkee aaoouutt bbiinnaarriieess??
Starting with version 0.64.4 there is no a.out support any more. If
you absolutely need it, you must use version 0.64.3.1. The configure
script then should take care for this, if you setup is a standard
setup.
22..44.. HHooww ddoo II ccoommppiillee ddoosseemmuu oonn aa mmaacchhiinnee wwiitthh llooww mmeemmoorryy??
Marty Leisner (lleeiissnneerr@@ssddsspp..mmcc..xxeerrooxx..ccoomm) reported (95/4/8) that
If you have problems with running out of swap space you may want to
add CFLAGS+=-fno-inline after CFLAGS is defined in ddppmmii//MMaakkeeffiillee. Be
careful before you do this and check for the existence of swap space.
I found Linux crashes at times when it has no swap space.
22..55.. CCoommppiillaattiioonn ffaaiillss wwiitthh ssoommee ssttrraannggee eerrrroorr rreeggaarrddiinngg ""ssllaanngg""
You probably have
slangforce off
in your compiletime-settings file. You need to change it to
slangforce on
and recompile.
22..66.. WWhhaatt ccoonnffiigguurraabbllee ooppttiioonnss aarree aavvaaiillaabbllee ??
The compiletime-settings.help file describes the options you can
change at compile time. The README.txt file describes the options you
can change at run time.
22..77.. DDoo II nneeeedd ttoo rruunn ddoosseemmuu aass rroooott??
No. Although dosemu drops root privilege wherever possible, it is
still safer to not run dosemu as root, especially if you run DPMI
programs under dosemu. Most normal DOS applications don't need dosemu
to run as root, especially if you run dosemu under X. Thus you should
not allow users to run a suid root copy of dosemu, wherever possible,
but only a non-suid copy. You can configure this on a per-user basis
using the /etc/dosemu.users file.
Programs that require direct access to hardware ports (e.g. if the
program needs to talk to some unusual hardware that is not supported
by Linux and dosemu) require dosemu to run as root but printers,
serial ports, mice and video cards (and to a small extent sound -
hopefully more soon) are emulated by dosemu so you don't need direct
hardware access and don't need to run as root to use these.
22..88.. HHooww ddoo II ppaattcchh ddoosseemmuu ??
If you do patch dosemu from one version to another, do "make
pristine;./configure; make". If you don't make pristine, at least the
version of the new executable will be wrong, if the whole thing
compiles at all(97/2/9).
22..99.. WWhhaatt vveerrssiioonnss ooff DDOOSS aarree kknnoowwnn ttoo rruunn wwiitthh ddoosseemmuu ??
All versions of DOS should work with dosemu, with the following
caveats:
FreeDOS (hhttttpp::////wwwwww..ffrreeeeddooss..oorrgg) does not (yet) have a working
redirector so you will not be able to access your Linux filesystem or
Novell networking under FreeDOS. Note also that FreeDOS is unreliable
beta software and may crash unexpectedly, trash its filesystem, etc.
etc.
DOS 4.01 had problems by itself, so it won't work reliably with dosemu
either.
With MMssDDooss--77 aka WWiinn9955 you must not start the graphic shell at bootup.
If you make the hdimage bootable with the so called "Rescue Disk" you
are offered to make during the Windows installation, you get the right
settings. If you use your normal Win95 installation to transfer the
system files, have a look at the msdos.sys written on the hdimage and
change the settings under the section [Options] to have entries like
[Options] Logo=0 BootGUI=0
33.. HHaarrdd ddiisskk sseettuupp
33..11.. HHooww ddoo II uussee mmyy hhaarrdd ddiisskk wwiitthh ddoosseemmuu??
First, mount your dos hard disk partition as a Linux subdirectory.
For example, you could create a directory in Linux such as /dos (mkdir
-m 755 /dos) and add a line like
/dev/hda1 /dos msdos umask=022
to your /etc/fstab. (In this example, the partition is mounted read-
only. You may want to mount it read/write by replacing "022" with
"000" and using the -m 777 option with mkdir). Now mmoouunntt //ddooss. The
README.txt says:
you just can have a Linux directory containing all what you
want to have under your DOS C:. Copy your IO.SYS, MSDOS.SYS or what
ever to that directory (e.g. /var/lib/dosemu/bootdir), put
$_hdimage = "bootdir"
into your /etc/dosemu.conf, and up it goes. DOSEMU makes a lredir'ed
drive out of it and can boot from it. You can edit the config.sys and
the autoexec.bat within this directory before you start dosemu. Fur-
ther more, you may have a more sohisticated setup. Given you want to
run the same DOS drive as you normal have when booting into native
DOS, then you just mount you DOS partition under Linux (say to /dos)
and put links to its subdirectories into the boot dir. This way you
can decide which files/directories have to be visible under DOSEMU and
which have to be different. Here's a small and incomplete example
bootdir setup:
config.sys
autoexec.bat
command.com -> /dos/command.com
io.sys -> /dos/io.sys
msdos.sys -> /dos/msdos.sys
dos -> /dos/dos
bc -> /dos/bc
windows -> /dos/windows
There is, however, one drawback, you can't use the DosC kernel
(FreeDos) for it, because it hasn't yet a working redirector (will
hopefully be available some time in the future).
33..22.. HHooww ccaann II aacccceessss tthhee hhddiimmaaggee ffrroomm LLiinnuuxx??
Use mtools. With a line in //eettcc//mmttoooollss..ccoonnff like
drive n: file="/var/lib/dosemu/hdimage" MTOOLS_SKIP_CHECK=1 \
MTOOLS_LOWER_CASE=1 MTOOLS_NO_VFAT=1 partition=1 offset=128
you can use the mtools on the hdimage, like "mdir n:". "mcopy n:/con-
fig.emu /tmp" copies the config.emu file from the hdimage to /tmp/con-
fig.emu. You can edit it there and copy it back. Use a drive letter
you find sensible. "N:" is only an example.
33..33.. CCaann II uussee mmyy ssttaacckkeedd//ddoouubbllee--ssppaacceedd//ssuuppeerr--ssttoorreedd ddiisskk??
At this time, compressed drives cannot be accessed via the redirector
(lredir or emufs) on a standard kernel. There is a patch for the
kernel to mount compressed files under the name "dmsdosfs". Find it
on sunsite.unc.edu and its mirrors
http://sunsite.unc.edu:/pub/Linux/system/filesystems/dosfs/
A good idea is also to look in
http://sun-
site.unc.edu:/pub/Linux/Incoming for a newer version. The "wholedisk"
option in older versions of dosemu is no longer allowed in recent ver-
sions, however, a line like
$_hdimage = "/dev/hda1"
may work, at the risk that you could lose all data in that partition
on a dosemu crash.
If your dos partition is already mounted with write access and you try
to run dosemu with partition access, dosemu will print a warning
message and abort. This prevents DOS and Linux from making
independent writes to your disk and trashing the data on your dos
partition(95/8/11).
---------------------
If LILO is installed, the above will not work. However...
Thomas Mockridge (tthhoommaass@@aazztteecc..ccoo..zzaa) reported (94/8/5) that
To boot dosemu with LILO and Stacker 4.0 I did a little work around...
1. dddd the MBR to a file. (or norton utility, etc., first 512 bytes)
2. Boot dos (from full boot not emu), do a fdisk /mbr, make your dos
partition active with (dos) fdisk.
3. Copy the new MBR to a file.
4. Replace the original MBR
5. Copy the second MBR to /var/lib/dosemu/partition.hda? (Whichever is
your dos partition)
6. Set dosemu.conf
disk {partition "/dev/hda? ?"}
7. Start dosemu and and voila! No LILO.
For recent versions of dosemu you need to change the
disk {partition "/dev/hda? ?"}
line to something like
$_hdimage = "/dev/hda1"
---------------------
Holger Schemel (qq9999449922@@ppbbhhrrzzxx..uunnii--ppaaddeerrbboorrnn..ddee) reported (94/2/10)
that
Works even fine under dosemu with MS-DOS 6.0. If you have problems,
then you have to edit the file 'DBLSPACE.INI' manually and change the
disk letter to the letter your drive gets under dosemu.
---------------------
Darren J Moffat (mmooffffaattdd@@ddccss..ggllaa..aacc..uukk) also reported (94/3/27)
"...use 6.2 if you can get it!! Just make sure you have a LILO boot
disk on hand since dos 6{.2} will change the MBR of the boot HZ."
33..44.. CCrreeaattiinngg yyoouurr oowwnn hhddiimmaaggee ffiillee..
The easy way is to use mkdexe - see README.txt for details. The old-
fashioned way (I don't know why anyone would want to do it that way
any more but here it is, just in case) is as follows:
There is an extra util program called mkfatimage16 which allows for
creating a hdimage file headers. The full information is in the
manpage (man/mkfatimage16.1) included in your distribution.
To create a hard disk image file with a geometry corresponding to that
of a real hard disk of 32 megabytes run:
mkfatimage16 -k 32768 > hdimage
This is probably too large for most needs; if you need this much
space, consider using the disk redirector."
Usually it is a good idea to format the drive after it.
44.. PPaarraalllleell ppoorrttss,, sseerriiaall ppoorrttss aanndd mmiiccee
44..11.. PPoorrtt aacccceessss wwoorrkkeedd wwiitthh oollddeerr vveerrssiioonn,, bbuutt ddooeessnn''tt wwoorrkk nnooww!!
Read ..//ddoocc//RREEAADDMMEE..ttxxtt and the port-section in ..//eettcc//ccoonnffiigg..ddiisstt
44..22.. PPoorrtt aacccceessss wwaass ffaasstteerr wwiitthh oollddeerr vveerrssiioonnss!!
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 ""ffaasstt"" in the
appropriate port statement.
44..33.. WWhheerree aarree tthhee ((mmiiccrroossoofftt ccoommppaattiibbllee)) mmoouussee ddrriivveerrss??
Tom Kimball (ttkk@@ppssssppaarrcc22..oocc..ccoomm) 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).
44..44.. WWhhyy ddooeessnn''tt tthhee mmoouussee ddrriivveerr wwoorrkk??
Mark Rejhon (mmddrreejjhhoonn@@mmaaggii..ccoomm) 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.
44..55.. WWhhyy ddooeess ddoosseemmuu cclloobbbbeerr CCOOMM44??
Rob Janssen (rroobb@@ppee11cchhll..aammpprr..oorrgg) reported (94/3/24) that
According to jjmmoorrrriissoo@@bbooggoommiippss..eeee..uubbcc..ccaa, "dosemu still clobbers COM4
(0x2e8, IRQ 5). 0x2e8 isn't in ports{} in config. I have to run
setserial /dev/cua3 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 the "allowvideoportaccess on" line 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).
44..66.. HHooww ddoo II uussee ddoosseemmuu oovveerr tthhee sseerriiaall ppoorrttss??
44..77.. HHooww ccaann II sswwiittcchh bbeettwweeeenn ddoosseemmuu aanndd aa sshheellll oovveerr tthhee sseerriiaall
lliinnee??
John Taylor (ttaayylloorr@@ppoolllluuxx..ccss..uuggaa..eedduu) 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 dos -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.
44..88.. HHooww ccaann II ggeett tthhee ppaarraalllleell ppoorrttss ttoo wwoorrkk??
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 (
[email protected]) 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
55.. MMuullttiippllee uusseerrss aanndd NNoonn--iinntteerraaccttiivvee sseessssiioonnss
55..11.. CCaann II uussee ddoosseemmuu oonn aa mmuullttii--uusseerr ssyysstteemm??
Yes, you can configure dosemu on a per-user basis. See README.txt for
details.
55..22.. HHooww ccaann II rruunn ddooss ccoommmmaannddss nnoonn--iinntteerraaccttiivveellyy??
You can do any of the following: 1. redirect a file to dosemu standard
input 2. use the keystroke configuration option and the -I command
line option as described in the README.txt file to specify keystrokes
on the command line that will act exactly as if you had typed them
within dosemu 3. use the mkdexe program to create a DEXE file - a
small DOS filesystem image containing just the program you want to run
- see the README.txt file for details.
Here are some additional alternatives:
Daniel T. Schwager (ddaannnnyy@@ddrraaggoonn..ss..bbaawwuuee..ddee) reported (94/7/2) that
You can use different dosemu.conf files (and different hd-boot-images
with different autoexec.bat's) and call dosemu like
$ dos -F my_quicken_q_exe_dosemu.conf
---------------------
Dietmar Braun (bbrraauunn@@mmaatthh2200..mmaatthheemmaattiikk..uunnii--bbiieelleeffeelldd..ddee) reported
(94/7/4) that
This is no problem at all when you use the redirector of dosemu. It
is possible to redirect a drive letter to a linux path given by an
environment variable.
So I have a shell script named "DDOOSS" which does something like
mkdir /tmp/dos.$$
DOSTMP=/tmp/dos.$$; export DOSTMP
and then a little trick to get "eecchhoo $$** >> $$DDOOSSTTMMPP//ssttaarrttuupp..bbaatt" really
working (actually a small C Program which turns '/' in '\\' and termi-
nates lines correctly for messy dos with cr/lf pairs and adds ^^ZZ at
the end of the file), creates startup files, links and so on in this
directory, and then starts dosemu. Within "aauuttooeexxeecc..bbaatt" drive c: is
redirected from hdimage to this tmp-directory, which has links for
$$HHOOMMEE and $$PPWWDD.
So if I want to see my filenames shortened to 8.3 I can type "DDOOSS ddiirr"
and I get my current directory listing. So I have full DOS multi user
(I don't have any DOS partition and redirecting to Linux preserves
user permissions) and multi tasking. (dosemu sessions are completely
independent). I did this once to be able to use a dos driver for my
printer. My printcap df is actually a DOS program. So you can even
make DOS executables act as lpr filters.
66.. ddoosseemmuu aanndd NNeettwwaarree
66..11.. HHooww ddoo II ggeett NNeettwwaarree aacccceessss ffrroomm ddoosseemmuu??
As always, access through the Linux filesystem is preferred. Mount
your Netware drives with Caldera's Netware utilities or Volker
Lendecke's free ncpfs utility
(ffttpp::////ffttpp..ggwwddgg..ddee:://ppuubb//lliinnuuxx//mmiisscc//nnccppffss). If you need real IPX
access, e.g. to run Novell's "syscon", read ..//ddoocc//NNOOVVEELLLL--HHOOWWTTOO..ttxxtt.
You probably can not currently access Netware from FreeDOS.
77.. ddoosseemmuu aanndd XX--wwiinnddoowwss((9977//22//99))..
77..11.. CCaann II rruunn ddoosseemmuu iinn ccoonnssoollee mmooddee wwhhiillee rruunnnniinngg XX??
Ronald Schalk (RR..SScchhaallkk@@uuccii..kkuunn..nnll) reported (94/1/17) that
Yes, no problem. Just remember to use ctrl-alt-<Fn> to go to a
Virtual Console (VC), and you can run any Linux application (dosemu is
a linux-application). I've got almost always WP5.1 in a dos session.
[Note: Use ctrl-alt-F7 to switch back to X from dosemu, if X runs on
VC7.]
77..22.. IIss iitt ppoossssiibbllee ttoo rruunn ddoosseemmuu iinn aa wwiinnddooww iinn XX--wwiinnddoowwss??
If you have X installed and you have successfully compiled dosemu and
run it successfully outside X-windows, you should be able to run
"xdos" or "dos -X" right away to bring up a dosemu window. If this
does not work, make sure:
1. Dosemu has X support compiled in. This is default, however
if you you have compiled dosemu with "x off" in the
compiletime-settings file you don't have X support. So changing
"x off" to "x on" in the compiletime-settings file, followed by
"make pristine; make; make install" should build
you a dosemu-executable with X support, if you have the
X-libraries installed in /usr/X11R6.
2. Set up your X key-mappings. In an xterm, type
xmodmap -e "keycode 22 = 0xff08"
xmodmap -e "keycode 107 = 0xffff"
These lines fix the backspace and delete keys respectively.
3. Configure the X-related configuration options in your
/etc/dosemu.conf file.
Alternatively, you can run dosemu inside a color xterm, which is not
recommended because many color xterms have buggy support for the
complex text display capabilities of dosemu. This does not require
X_SUPPORT to be compiled into dosemu. However, if you really want to
do this, do the following steps:
1. Install ansi_xterm. The recommended package is available as:
tsx-11.mit.edu:/pub/linux/ALPHA/dosemu/Development/ansi-xterm-R6.tar.gz
2. Set up your X key-mappings. In an xterm, type
xmodmap -e "keycode 22 = 0xff08"
xmodmap -e "keycode 107 = 0xffff"
These lines fix the backspace and delete keys, respectively.
3. Configure the terminal-related (not X-related) settings in
/etc/dosemu.conf
Marty Leisner (lleeiissnneerr@@ssddsspp..mmcc..xxeerrooxx..ccoomm) reported (95/3/31) that
I have xrdb log the following resources
dosxterm*Font: vga dosxterm*geometry: 80x25 dosxterm*saveLines:
25
or I alias "dosxterm" to "term -fn vga -title dosxterm -geometry 80x25
-sl 25"
If you use the xrdb method, all you have to do is run "xterm -name
dosxterm"
77..33.. XXddooss ddoosseenn''tt wwoorrkk oonn aa rreemmoottee XX--ddiissppllaayy!!
At present, dosemu is set up to use the MIT shared memory extensions.
This extension only works on a local display. If you want to run xdos
on a remote display, compile dosemu with "mitshm off" in the
compiletime-settings file after a ""mmaakkee pprriissttiinnee"" or on the clean
source tree(97/2/9).
77..44.. XXddooss ddoosseenn''tt ffiinndd tthhee VVGGAA ffoonntt
Check that the vga fonts you installed are listed in the font.dir of
the directory you installed the fonts in:
hertz:~> grep misc /usr/X11R6/lib/X11/XF86Config
FontPath "/usr/X11R6/lib/X11/fonts/misc/"
hertz:~> grep vga /usr/X11R6/lib/X11/fonts/misc/fonts.dir
vga.pcf vga
vga11x19.pcf vga11x19
hertz:~> ls /usr/X11R6/lib/X11/fonts/misc/vga*
/usr/X11R6/lib/X11/fonts/misc/vga.pcf
/usr/X11R6/lib/X11/fonts/misc/vga11x19.bdf
/usr/X11R6/lib/X11/fonts/misc/vga11x19.pcf
If you installed some X-fonts, like you did when you installed dosemu
with X-Support for the first time, "mkfontdir" and then "xset fp
rehash" needs to be run. The dosemu install should take care for
"mkfontdir" and tells you about "xset fp rehash". Tell us if it
doesn't work for you. (97/2/13)
77..55.. TThhee vvggaa ffoonntt iiss vveerryy ssmmaallll oonn mmyy hhiigghh rreessoolluuttiioonn ddiissppllaayy
Look for the vga11x19 font. (97/2/13)
77..66.. DDoosseemmuu ccoommppiillaattiioonn ffaaiillss wwiitthh ssoommee ssttrraannggee eerrrroorr rreeggaarrddiinngg XX!!
As stated above, dosemu uses the MIT shared memory extensions by
default. Under XFree86 they are only available with Version 3.1.2 and
above. If you have an older version, consider to upgrade, or configure
dosemu to not use this extension (see last section)(97/2/9).
77..77.. DDooeess aannssii eemmuullaattiioonn wwoorrkk pprrooppeerrllyy??
Marty Leisner (lleeiissnneerr@@ssddsspp..mmcc..xxeerrooxx..ccoomm) reported (95/3/31) that
Yes. I use nnansi.com under X windows. I find 25, 43 and 50 line
mode work properly, however 50 line mode is difficult to use on a
1024x768 screen (unless smaller fonts are used or you use a bigger
screen. 43 line mode will resize the xterm window to use 43 lines.
88.. ddoosseemmuu aanndd MMSS--WWiinnddoowwss 33..11
88..11.. IIss iitt ppoossssiibbllee ttoo rruunn MMSS--WWiinnddoowwss 33..11 uunnddeerr ddoosseemmuu??
The ..//ddoocc//RREEAADDMMEE..WWiinnddoowwss file says:
***************************************************************
* WARNING!!! WARNING!!! WARNING!!! WARNING!!! WARNING!!! *
* *
* Danger Will Robinson!!! This is not yet fully supported *
* and there are many known bugs! Large programs will almost *
* certainly NOT WORK!!! BE PREPARED FOR SYSTEM CRASHES IF *
* YOU TRY THIS!!! *
* *
* WARNING!!! WARNING!!! WARNING!!! WARNING!!! WARNING!!! *
***************************************************************
Okay, it is possible to boot WINOS2 (the modified version of Windows
3.1 that OS/2 uses) under DOSEMU. Many kudos to Lutz & Dong!
However, YOU NEED BOTH LICENSES, for WINDOWS-3.1 as well OS/2 !!!
There are many known problems. Windows is prone to crash, could take
data with it, large programs will not load, etc. etc. etc. In other
words, it is NOT ready for daily use. Many video cards are known to
have problems (you may see a nice white screen, however, look below
for win31-in-xdos). Your program groups are all likely to disappear.
... Basically, it's a pain.
for more details see the README.txt file.
88..22.. CCaann II rruunn 3322bbiitt ssttuuffff wwiitthh wwiinneemmuu
Sorry, no you can't. Win32s needs stuff running in ring 0. That's a
"nono" with linux. (97/04/27)
88..33.. EErrrroorrmmeessssaaggee:: CCaannnnoott ffiinndd tthhee vvddttaappii..338866 ffiillee wwhheenn ssttaarrttiinngg
ddoosseemmuu
As explained above, winemu can't handle 32 bit stuff. All drivers
ending in 386 are 32bit. So to run winemu, you have to delete all
references to .386 drivers in your win.ini. (97/04/27)
88..44.. WWiinnddoowwss 33..xx iinn xxddooss::
As of version 0.64.3 DOSEMU is able to run Windows in xdos. Of course,
this is not recommended at all, but if you really want to try, it is
safer then starting windows-31 on the console, because _when_ it
crashes, it doesn't block your keyboard or freeze your screen.
Hints:
1. Get Dosemu & Linux source.
2. Unpack dosemu.
3. Run "./configure" to configure Dosemu (it will enable vm86plus as a
default).
4. Type "make" to compile.
5. Get a Trident SVGA drivers for Windows. The files are tvgaw31a.zip
and/or tvgaw31b.zip. They are available at garbo.uwasa.fi in
/windows/drivers (any mirrors?).
6. Unpack the Trident drivers.
7. In Windows setup, install the Trident "800x600 256 color for 512K
boards" driver.
8. Do the things described above to get and install OS2WIN31.
10. Start xdos.
11. In Dosemu, go to windows directory and start winemu.
12. Cross your fingers.
88..55.. CCaann II iinnssttaallll wwiinnddoowwss ffrroomm wwiitthhiinn ddoosseemmuu??
NNoo you can't. Dos will tell you something like
The XMS driver you have on your system is not compatible with Win-
dows...
You need to install windows from Dos. You can copy the windows tree to
somewhere on your Linux Filesystem and use lredir to mount it on the
same place as it is in dos. Example:
You have windows in d:\windows You have d:\ mounted as /dosc in Linux
You copy the windows tree to Linux, e.g. "cp -a /dosd/windows
/usr/share Inside dosemu you redirect the copied tree like lredir d:
linux\fs\dosd
Now dosemu can't mess around in you windows directory, but changes in
the windows directory aren't seen by dosemu too. If you want to do the
same with windows on drive c:> look in this FAQ how to redirect c:.
But you can use "setup" from inside the windows directory to install
drivers and change some settings. (97/2/1497)
88..66.. NNootteess ffoorr tthhee mmoouussee uunnddeerr wwiinn3311--iinn--xxddooss::
1. Use the mouse driver "mouse.drv" from WinOS2
2. In order to let the mouse properly work you need the following in
your win.ini file:
[windows]
MouseThreshold1=0
MouseThreshold2=0
MouseSpeed=0
3. The mouse cursor gets not painted by X, but by windows itself, so
it depends on the refresh rate how often it gets updated, though the
mouse coordinates movement itself will not get delayed. ( In fact you
have 2 cursors, but the X-cursor is given an 'invisible' cursor shape
while within the DOS-Box. )
4. Because the coordinates passed to windows are interpreted
relatively, we need to calibrate the cursor. This is done
automatically whenever you enter the DOS-Box window: The cursor gets
forced to 0,0 and then back to its right coordinates. Hence, if you
want to re-calibrate the cursor, just move the cursor outside and then
inside the DOS-Box again. (97/2/10)
88..77.. WWhhyy ddiidd mmyy IIccoonn ddiissaappppeeaarr ffrroomm tthhee PPrrooggrraamm mmaannaaggeerr??
MS-Windows and WinOS2 handle the program manager group differently.
While MS-Win store the setup in progman.ini, WinOS2 wants the contents
of progman.ini in system.ini. Here's a tip from ((ffrriieesstt@@aaccmm..oorrgg ((TToodddd
TT.. FFrriieess)))):
cat progman.ini >> system.ini
Be sure to use >> :-)
99.. VViiddeeoo aanndd ssoouunndd
99..11.. CCaann II rruunn 3322--bbiitt vviiddeeoo ggaammeess uunnddeerr ddoosseemmuu??
Mark Rejhon (mmddrreejjhhoonn@@mmaaggii..ccoomm) reported (95/4/8) that
With the recent DPMI improvements that has gone into 0.60, you can now
run some 32-bit video games in dosemu. If the game is compatible in
an OS/2 DOS box, there are chances that it will work in dosemu.
(Example 32-bit games include Descent, Dark Forces, Mortal Kombat 2,
Rise of The Triad, which have all successfully been tested in recent
dosemu releases).
Before you attempt to run a video game, you must have the keyboard
configured in raw keyboard mode and enabled VGA graphics modes, in the
//eettcc//ddoosseemmuu..ccoonnff file.
Note, however, you will have to turn off the sound in the game.
(Someone will have to program in sound board emulation before we can
avoid this). Note that game timers can be a little bit slow, due to
Linux multitasking and lack of high-frequency timer support. So the
games may run from anywhere from 5 to 100 percent speed. Typically,
the speed is approximately 50 percent in recent dosemu releases and is
expected to improve eventually.
Who knows, it might even work. If you can't get it to work, check
EMUfailure.txt if the program is listed there, or falls in a category
of programs that at present don't or probably never work with dosemu.
If you think, it should be listed in EMUfailure.txt, report to lliinnuuxx--
mmssddooss@@vvggeerr..rruuttggeerrss..eedduu
There is a security hole when having enabled DPMI and having dosemu
suid root (especially when using dos4gw-based games), the client is
able to access the whole user space, hence also can modify the dosemu
code itself. Use of the 'secure' option in /etc/dosemu.conf, e.g.
$_secure = "ngd" # secure for: n (normal users), g (guest), d (dexe)
disables this. It is better to run dosemu as a normal user under X
rather than root anyway.
99..22.. EExxiittiinngg ffrroomm ddoosseemmuu ggiivveess mmee aa ssccrreeeenn ffuullll ooff ggaarrbbaaggee..
(95/4/8)
The problem is that the font information for the VGA text screen is
not being saved. Get a copy of the svgalib package. The current
source is in
sunsite.unc.edu:/pub/Linux/libs/graphics/svgalib-1.3.1.tar.gz
It may also be available as a pre-compiled package in your favorite
Linux distribution (e.g., Slackware, etc.). Use savetextmode to save
the current text mode and font to a file in //ttmmpp before running
dosemu. Then run textmode upon exiting dosemu to restore it.
Addition from (lleerrmmeenn@@eellsseerrvv..ffffmm..ffggaann..ddee(97/2/11)):
Have a look also at src/arch/linux/debugger/README.recover and
README.dosdebug, dosdebug can aid you recovering.
99..33.. WWhhyy ddooeessnn''tt mmyy ssoouunnddccaarrdd ssooffttwwaarree wwoorrkk wwiitthh ddoosseemmuu??
Dosemu includes a rudimentary soundblaster emulator called SBemu - the
documentation for it is currently at
http://www.slitesys.demon.co.uk/a.macdonald/dosemu/sound/ This is a
work in progress, not completed yet so much or most DOS software that
uses sound will not work correctly with it yet.
1100.. GGaammeess
1100..11.. DDuukkee33dd ddoosseenn''tt wwoorrkk
Hans Lermen <<lleerrmmeenn@@eellsseerrvv..ffffmm..ffggaann..ddee>> said (97/2/16): duke3d must be
'configured' via a setup, within this setup you have to choose
1111.. PPrroobblleemmss aanndd ffiixxeess
1111..11.. SSeeccuurriittyy iissssuueess
A full featured Dosemu needs to be suid root, e.g to access ports.
Most dos programs don't need this however so when running under X you
usually do not need to run dosemu as root. Dosemu runs as suid "root"
only where it is needed, and releases this right thereafter. But with
DPMI, the Dos client programm can access the whole user space, hence
also can modify the dosemu code itself. Use of the 'secure' option in
/etc/dosemu.conf disables this. There are several other important
security considerations discussed in the Security section of the
README.txt file.
1111..22.. ddoosseemmuu ssaayyss ""EERRRROORR:: ggeenneerraall pprrootteeccttiioonn"" aanndd tteerrmmiinnaatteess wwhheenn II
rruunn ssoommee pprrooggrraamm
This will happen if your program uses DPMI and you do not have DPMI
enabled. Try changing the line
$_dpmi = (off)
in /etc/dosemu.conf to
$_dpmi = (nnnn)
where nnnn is the number of kilobytes of memory you wish to give to
the DOS program (e.g. Doom requires about 4000 kilobytes). If you do
this, you should not run dosemu as root (see the Security Issues sec-
tion) - it is better not to run dosemu as root whenever possible, in
any case.
Another likely cause is that your program uses VCPI (see
EMUfailure.txt for more details) or some other means of switching to
protected mode (other than DPMI), in which case it will never work
under dosemu.
If none of these is the case, see section 1.14 I have a program that
fails, not listed in EMUfailure.txt.
1111..33.. DDoosseemmuu ddiieess wwhheenn bboooottiinngg.. II hhaavvee WWiinn9955 iinnssttaalllleedd..
Dosemu relies that the Dos-Version on the hdimage and the Drive you
map to contain command.com are the same. If not, dosemu will crash
sooner or later. With the dual boot option Win95 offers when pressing
the F4,F5 and F8 Keys with the "Starting Win95" text, versions on the
Win95 drive may swap. Take special care for command.com. Let your
shell variable in config.emu point to the correct static version of
command.com, e.g.: shell=c:\win95\command.com c:\ /P /E:1024
(97/02/28)
1111..44.. DDoosseemmuu hhaannggss!! HHooww ccaann II kkiillll iitt??
Switch to another console and type dosdebug, then type kill (it may
take a while but will work eventually).
1111..55.. DDoosseemmuu ccrraasshheedd aanndd nnooww II ccaann''tt ttyyppee aannyytthhiinngg..
Daniel Barlow(
[email protected]) reported (95/4/8) that
If you have no terminal or network access that you can use to log in,
you may have to press the reset button. If you can still get a usable
shell somehow, run "kbd_mode -a" to switch the keyboard out of raw
mode, and/or "stty sane" on the console so that you can see what
you're typing.
A useful thing to do is to use a script to run dosemu, and run
"kbd_mode -a" automatically right after dosemu. When dosemu crashes,
the script usually will resume running, and execute the "kbd_mode -a"
command.
1111..66.. II''vvee eennaabblleedd EEMMSS mmeemmoorryy iinn ddoosseemmuu..ccoonnff bbuutt iitt ddooeess nnoott hheellpp..
Rob Janssen (
[email protected]) reported (94/7/11)
Don't forget to load the provided ems.sys from the config.sys file.
1111..77.. HHooww ddoo II ggeett rriidd ooff aallll tthhoossee aannnnooyyiinngg ""ddiisskk cchhaannggee"" mmeessssaaggeess??
(94/8/11)
Grab and install klogd. Try
sunsite.unc.edu:/pub/Linux/system/Daemons/sysklogd1.2.tgz
1111..88.. WWhhyy wwoonn''tt ddoosseemmuu rruunn aa sseeccoonndd ttiimmee aafftteerr eexxiittiinngg iinn ccoonnssoollee
mmooddee??
Aldy Hernandez (aallddyy@@ssaauurroonn..cccc..aannddrreewwss..eedduu) reported (94/7/8) that
You should disable your video and/or BIOS caching.
1111..99.. WWhhyy wwiillll ddoosseemmuu rruunn iinn aa tteerrmm bbuutt nnoott iinn tthhee ccoonnssoollee??
JyiJiin Luo (jjjjlluuoo@@ccaassbbaahh..aaccnnss..nnwwuu..eedduu) reported (94/4/19) that
I experienced exactly the same problem before. I figured out all the
video shadow in my AMI BIOS must be disabled. Now dosemu runs fine on
my system.
1111..1100.. HHooww ccaann II ssppeeeedd uupp ddoosseemmuu??
In some cases it is useful to play with the value of the HogThreshold
variable in your dosemu.conf file.
Daniel Barlow(jjoo9955000044@@ssaabbllee..ooxx..aacc..uukk) reported (95/4/8) that
HogThreshold should now be set to approximately half of the BogoMips
value that the system reports on boot.
1111..1111.. MMyy CCDDRROOMM ddrriivvee hhaass pprroobblleemmss rreeaaddiinngg ssoommee ffiilleess uunnddeerr ddoosseemmuu..
Vinod G Kulkarni (vviinnoodd@@ccssee..iiiittbb..eerrnneett..iinn) reported (94/4/7) that
When a CDROM is mounted from linux and used from within dosemu (mapped
drive), there could be some problems. The CD-ROM driver (iso9660) in
the kernel tries to find out the type of the file (i.e. binary or
text). If it can't find, it tries to guess the type of the file using
a heuristic. This heuristic fails under some circumstances when a
(almost) text file is to be treated as binary. (I do not know if it
is a bug or feature.)
The result of this is that if you copy such a file from CD-ROM (from
linux itself, and not necessarily dosemu), the resulting file will be
usually bigger than original file. (Blanks get added before ^J,^M.)
So a program running in dosemu gives an error or hangs, which may be
mistaken as problem of dosemu.
Rob Janssen (ppee11cchhll@@rraabboo..nnll) reported (94/8/10) that
The way to solve this is to turn off conversion altogether. Pass the
option "--oo ccoonnvv==bbiinnaarryy" to the mount command mounting the CD-ROM, or
use the following in //eettcc//ffssttaabb:
/dev/cdrom /cdrom iso9660 conv=binary,ro
No patches to the kernel are necessary.
1111..1122.. HHooww ddoo II sseeee ddeebbuuggggiinngg oouuttppuutt??
Daniel Barlow(jjoo9955000044@@ssaabbllee..ooxx..aacc..uukk) reported (95/4/8) that
As of dosemu 0.60, debugging output is redirected to a file specified
on the command line. Use "ddooss --DD++aa --oo //ttmmpp//ddeebbuugg" to log all debug
output to //ttmmpp//ddeebbuugg. There should no longer be any need to redirect
stderr.
1111..1133.. WWhhyy aarree mmyy kkeeyyssttrrookkeess eecchhooeedd ttttwwwwiiiicccceeee????
Nick Holloway (aallffiiee@@ddccss..wwaarrwwiicckk..aacc..uukk) reported (94/2/22) that
After running dos after playing with some stty settings, I was getting
doubled key presses. I can now reveal what the reason is!
It only happens when dos is run on the console with 'istrip' set.
This is (I think) because the raw scancodes are mutilated by the
'istrip', so that key release events look like key press events.
So, the input processing needs to be turned off when using the scan
codes on a console (it wouldn't be a good idea to do it for tty
lines).
1111..1144.. DDoosseemmuu ssccrraammbblleess mmyy ssccrreeeenn??
For those graphics cards not fully supported in dosemu, with allowed
console graphics a dosemu crash may leave your console in a scrambles
and nearly unusable way. To prepare for that situation, Spudgun
<
[email protected]> posted the following solution. First save
your registers when running on the console ~> cat
/usr/bin/savetextmode ~> restoretextmode -w /etc/textregs ~>
restorefont -w /etc/fontdata Then, when a crash happened, run
following script: restoretextmode -r /etc/textregs restorefont -r
/etc/fontdata restorepalette
IIff iitt ddooeessnn''tt ffiixx iitt nnootthhiinngg wwiillll I also found having an X server
running sometimes put my Vid card's registers into a strange state
where this script made things worse I think since changing X servers
and/or running savetextmode on a vt while X was running helped.
(97/04/08)
1111..1155.. MMSS FFooxxPPrroo 22..66 wwoonn''tt rruunn
FoxPro 2.6 doesn't run on network drives. Alexey Naidyonov
<
[email protected]> states on that problem: And I guess your
FoxPro files are on lredir'ed disk, yeah? The matter is that FoxPro
doesn't run on such disk, but when I said disk { partition ... } in
/etc/dosemu/conf, it runs.
1122.. CCoonnttrriibbuuttiinngg ttoo tthhee ddoosseemmuu pprroojjeecctt
1122..11.. WWhhoo iiss rreessppoonnssiibbllee ffoorr ddoosseemmuu??
Dosemu is built upon the work of Matthias Lautner and Robert Sanders.
Hans Lermen (
[email protected]) is responsible for organizing the
latest releases of dosemu.
History of dosemu
Version Date Person
-------------------------------------------------
0.1 September 3, 1992 Matthias Lautner
0.2 September 13, 1992 Matthias Lautner
0.3 ??? Matthias Lautner
0.4 November 26, 1992 Matthias Lautner
0.47 January 27, 1993 Robert Sanders
0.47.7 February 5, 1993 Robert Sanders
0.48 February 16, 1993 Robert Sanders
0.48pl1 February 18, 1993 Robert Sanders
0.49 May 20, 1993 Robert Sanders
0.49pl2 November 18, 1993 James MacLean
0.49pl3 November 30, 1993 James MacLean
0.49pl3.3 December 3, 1993 James MacLean
0.50 March 4, 1994 James MacLean
0.50pl1 March 18, 1994 James MacLean
0.52 June 16, 1994 James MacLean
0.60 April 9, 1995 James MacLean
0.64.4 February 9,1997 Hans Lermen
0.66.3 April 20, 1997 Hans Lermen
0.98.1 December 9, 1998 Hans Lermen
0.98.6 March 21, 1999 Hans Lermen
1122..22.. II wwaanntt ttoo hheellpp.. WWhhoo sshhoouulldd II ccoonnttaacctt??
The dosemu project is a team effort. If you wish to contribute, see
the DPR (dosemu Project Registry). A current copy may be found in
ddoocc//DDAANNGG.