Frantisek Hanzlik | 8 Apr 07:39 2014

VESA mode 0x10B - 132 columns × 50 rows - is it possible?

Hello all DOSEMU enthusiasts,

first, thanks for developing and evolving this powerfull SW piece!
And now my current research (so far in vain): I want my DOS text app
run in text mode with resolution 132 columns × 50 rows - which should
be VESA 2.0 (maybe as early as VESA 1.2) mode 0x10B, according e.g.:

but so far I'm unsuccessfull (except in the case when I run DOSEMU in
console mode in console/X window with this resolution, but this is
perhaps obvious).
Nevertheless, modes 0x10A (132 x 43) and 0x010C 132 x 60 are working
fine under xdosemu. Problem I have only with this 132 x 50 mode.

I'm using DOSEMU + FreeDOS 1.0, and thus potentially may be problem
in FreeDOS, but I suspect rather DOSEMU, as:

1) when I run commands 'mode con cols=132 lines=43', resp. 'mode con
cols=132 lines=60', I will get responses:

VESA 2.0 'DOSEMU VGA/VBE 2.0 Emulator', mode 0x0003, 4096k for BIOS, 57 modes.
VESA mode 0x010A: 132 x 43 with 8 x 11 font.


VESA 2.0 'DOSEMU VGA/VBE 2.0 Emulator', mode 0x0003, 4096k for BIOS, 57 modes.
VESA mode 0x010C: 132 x 60 with 8 x 8 font.

and right mode is set.
(Continue reading)

Andrew Bird | 30 Mar 12:03 2014

Some patches against the devel branch

Hi Stas, Bart,
     Firstly, sorry if you already saw this on linux-msdos list, I 
didn't realise this list existed but I'll only post here from now on.
     Here are some patches I made against today's devel branch. I had no 
specific bug to fix, but just wanted to fix some minor bounds checks and 
initialisation issues. If you appreciate what I am trying to do I'll 
spend some more time looking for others.

	All compile successfully, but I have very few DOS programs to exercise 
Dosemu properly. Any standalone memory exerciser programs for XMS, EMS 
or DPMI would be helpful?

Hope it helps,

Dosemu-devel mailing list
(Continue reading)

Stas Sergeev | 30 Dec 19:33 2013

vde networking

Hi, I've created a "vde" branch in git and added
some basic vde support there.
With slirpvde it does mostly the same that the
current "slirp" branch does. Except:
- pings are not supported (there are _fake_ pings in "slirp" branch)
- automatically starting vde_switch is not yet implemented

And it is not packaged by fedora, just the same way
slirp is not.

Whoever is interested, please test, send patches. :)

How to test:
$ vde_switch -s /tmp/switch1 2>/dev/null </dev/null &
$ slirpvde -s /tmp/switch1 --dhcp
In dosemu.conf:
$_vdeswitch = "/tmp/switch1"
... and run dosemu.

Rapidly troubleshoot problems before they affect your business. Most IT 
organizations don't have a clear picture of how application performance 
affects their revenue. With AppDynamics, you get 100% visibility into your 
Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro!
Bart Oldeman | 28 Jul 20:03 2013

Re: Merging master/devel (was DOSEMU Version 2 has been Released)

On 10 July 2013 12:27, Stas Sergeev wrote:
> But, out of sudden, "devel" happened to have so many
> big or untrivial changes, that no one seems to be willing
> to spend the time on sorting them out and merge to master.
> I think I'll just end up merging it to master as-is eventually,
> but Bart promised to take a look at a few things, so it is
> all upside down for now.

As you could see I finally started merging pieces of devel back to
master, mostly using "git cherry-pick". I am now at the point where
plain cherry-picks no longer work and some patches need backporting,
but it's not very hard (e.g. commit 15863b65).

Where it breaks for me (for console graphics vc switching) is patch

commit 0932e960ee46d151ef6e96f78bc0427f41305b10
Author: Stas Sergeev <stsp@...>
Date:   Mon Jan 28 15:48:29 2013 +0400

    lowmem: add api for rm stack switching, and use it for vbe int10 callback

the api itself is harmless of course, but there is also this change in
the same patch:

   *p = 1;
-  pic_cli();
+  clear_IF();
-  pic_sti();
   *p = 0;
(Continue reading)

Stas Sergeev | 22 Jul 12:43 2013

Fwd: Mail delivery failed: returning message to sender

Eric, again mail bounces...

-------- Исходное сообщение --------
Тема: 	Mail delivery failed: returning message to sender
Дата: 	Mon, 22 Jul 2013 14:41:33 +0400
От: 	mailer-daemon@...
Кому: 	stsp@...

This message was created automatically by mail delivery software.

A message that you sent could not be delivered to one or more of its
recipients. This is a permanent error. The following address(es) failed:

     SMTP error from remote mail server after RCPT TO:<ebiederm@...>:
     host []: 550-XM-RJCT22:
     [] is prohibited from connecting to XMission mail
     550-servers due to high spam volume. See the following for more information:

------ This is a copy of the message, including all the headers. ------

Return-path: <stsp@...>
Received: from [] (port=35108)
	by with esmtpa (envelope-from <stsp@...>)
	id 1V1DYI-0000wn-G0; Mon, 22 Jul 2013 14:41:14 +0400
Message-ID: <51ED0C5C.9010305@...>
Date: Mon, 22 Jul 2013 14:41:32 +0400
From: Stas Sergeev <stsp@...>
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130625 Thunderbird/17.0.7
(Continue reading)

Stas Sergeev | 10 Jul 18:27 2013

Re: Revisit COPYING.DOSEMU (Re: DOSEMU Version 2 has been Released)

10.07.2013 19:58, solarflow99 пишет:
> oh ok, I thought it was more of them taking 1.4.0 and not allowed to 
> take from git.
No, I think everyone moved to git, even debian.
That's good, at least better than to abandon completely. :)
It would be a shame if someone takes a "very buggy"
git by chance, but, if it was taken from "master", the
"coloured cap" cannot happen; its just better to fix the bug
instead and ask to re-package.

>   I've also been making RPM releases from the latest git which may 
> have had some bugs but was better than using the very old 1.4.0 :)
Maybe the master had fewer problems by that date, I
am not sure. Right now I wouldn't package out of it.

>    And like you mention we just didn't have the resources to maintain 
> different branches and stable releases, I guess now there is more of a 
> stable/devel branch in git right?
Yes, that should be the case.
But, out of sudden, "devel" happened to have so many
big or untrivial changes, that no one seems to be willing
to spend the time on sorting them out and merge to master.
I think I'll just end up merging it to master as-is eventually,
but Bart promised to take a look at a few things, so it is
all upside down for now.

> Thanks for cc'ing this to the list, I keep getting rejected with my 
> gmail account.

(Continue reading)

Stas Sergeev | 10 Jul 17:47 2013

Re: Revisit COPYING.DOSEMU (Re: DOSEMU Version 2 has been Released)

10.07.2013 19:22, solarflow99 пишет:
> link #2 is a lot more straight forward, that one was always confusing.
while #1 is lot lot more harmful IMHO. :)

> How about the part that mentions not repackaging development releases 
> because they might complain why their coloured cap RPM doesn't work. I 
> remember you even posted a link from a ML showing how it caused some 
> confusion for packagers about that.
I don't think that's fine.
Currently the poor guys have to package the raw git!
They'll be much safer packaging the developer releases,
but there are none.
I think there will be no more developer releases at all.
In the past, dosemu development was very closed
(private MLs, private repositories, almost no patch review),
so the only way to keep developers in sync were the developer
releases. This have changed, and even if the developer releases
will still appear, their purpose will be entirely different;
certainly not to keep the developers in sync, as this is
perfectly done now with git.
So the "coloured cap" story was just a result of a
closed-source development model (IMHO!); and
it will never re-appear (AFAICT).

(hope you don't mind me adding the ML back to CC -
this may be interesting for other people as well)

See everything from the browser to the database with AppDynamics
Get end-to-end visibility with application monitoring from AppDynamics
(Continue reading)

Julius Schwartzenberg | 30 Jun 16:12 2013

dosemu.bin using 100% CPU during Windows 98 setup


In my messing around with DOSEMU I tried to see how far I would get with 
the Windows 98 installation.

After getting through the first part, the installer wants to reboot. 
After the reboot, dosemu.bin gets stuck using around 100% of my CPU once 
Windows tries to load the graphical environment. See below for some 
output of strace.

My question is now: I know that Windows 98 is known to not work in 
DOSEMU. Are reports on what it does do still interesting?

Best regards,

Some strace output from dosemu.bin:
--- SIGPROF (Profiling timer expired)  <at>  0 (0) ---
rt_sigreturn(0x7facbe351c68)            = 1189152
--- SIGALRM (Alarm clock)  <at>  0 (0) ---
rt_sigreturn(0x7facbe351c68)            = 144
--- SIGPROF (Profiling timer expired)  <at>  0 (0) ---
rt_sigreturn(0x7facbe351c68)            = 7
--- SIGALRM (Alarm clock)  <at>  0 (0) ---
rt_sigreturn(0x7facbe351c68)            = 0
--- SIGPROF (Profiling timer expired)  <at>  0 (0) ---
rt_sigreturn(0x7facbe351c68)            = 0
--- SIGALRM (Alarm clock)  <at>  0 (0) ---
rt_sigreturn(0x7facbe351c68)            = 144
--- SIGPROF (Profiling timer expired)  <at>  0 (0) ---
(Continue reading)

Mateusz Viste | 27 Jun 14:20 2013

DOSemu with 'user networking' support


I managed to implement my taprouter software into DOSemu.

It means that it's possible for users to get an internet connectivity 
inside DOSemu that 'just works', without needing to play with bridges, 
routing, nat, etc etc etc, and without having to run anything with root 

The only required actions are:

  - having the slirp binary installed somewhere in the system
  - changing the dosemu configuration file

The DOSemu configuration file would need to be changed as follows:

$_vnet = "slirp"
$_netdev = "/usr/bin/slirp"

*** How does it work? ***

when the $_vnet="slirp" backend is used, DOSemu calls my 
librouter_init() function, that creates a unix socket pair, and forks 
itself. Since then, DOSemu uses a 'normal' dgram socket to tunnel 
ethernet-level communications, thus from the DOSemu point of view, it's 
almost identical to using a tun interface.
the librouter code handles all the ARP-level connectivity, DHCP requests 
interception, SLIP encapsulation and DNS forwarding on its own, routing 
all traffic for non-local destinations to the slirp executable 
configured in $_netdev.
(Continue reading)

Mateusz Viste | 26 Jun 18:31 2013

How can I test dosemu?


This is probably a stupid question, but it quite unclear to me how 
dosemu works.

I downloaded the source files of DOSemu 1.3.5, compiled it, but was 
unable to run it:

 > mateusz <at> mateusz:~/Downloads/dosemu-1.3.5/bin> ./dosemu
 >    You do not have the DOSEMU vga font installed and are running
 >    remote X. You need to install the vga font on your _local_ Xserver.
 >    Look at the readme for details. For now we start with an fixed font,
 >    which does not display all national characters correctly.
 >    ... be warned
 > ./dosemu: line 237: /usr/local/bin/dosemu.bin: No such file or directory
 > mateusz <at> mateusz:~/Downloads/dosemu-1.3.5/bin> ./dosemu.bin
 > LOWRAM mmap: Invalid argument
 > Segmentation fault
 > mateusz <at> mateusz:~/Downloads/dosemu-1.3.5/bin>

What's the difference between 'dosemu' and 'dosemu.bin' ?

I know that I should install it, but the thing is I already have a 
DOSemu installed on my system (via packages of my distro), and I'd 
really like to avoid messing it up, and keep a parallel version for 
devel stuff... is it possible somehow?

Also, I am quite confused about the fact that the 'stable' release 
(Continue reading)

Julius Schwartzenberg | 9 Apr 21:29 2013

Switching floppy disk images


Maybe I missed it, but I haven't been able to find out how to switch 
floppy images while DOSEMU is running.

Since most computers nowadays ship without floppy drives, I guess using 
floppy images with DOSEMU is more common practice now than it was 
originally. If this feature doesn't exist yet, would it be doable to add it?

Is it already possible to switch floppy images while DOSEMU is running 
or could I open a feature request?


Precog is a next-generation analytics platform capable of advanced
analytics on semi-structured data. The platform includes APIs for building
apps and a phenomenal toolset for data science. Developers can use
our toolset for easy data analysis & visualization. Get a free account!