FreeBSD and DOS emulation

At one point in time, FreeBSD had DOS emulation included as a feature. I'm not sure exactly when that was lost. I think the doscmd port failed to compile beginning with FreeBSD 10. In any case, the loss of this functionality is really a terrible loss for FreeBSD. I know some will say that DOSBox works on FreeBSD. This is true, and it's fine if you just want to play games. Unfortunately it does lack some important features like file-locking support which is needed for any DOS software with multiuser support. And unfotunately Bhyve doesn't support DOS. If it did, that *might* be a viable option.

Personally, I'd like to run BBS software and run some old DOS door games on FreeBSD. I run FreeBSD on my server. I *could* run a Linux installation under Bhyve on FreeBSD and use DOSEmu or DOSEmu2 for DOS emulation of old door games. And I probably will end up doing that for the time being since that seems to be the only viable solution at this time. I used to run a BBS under Linux and used DOSEmu, so I could probably just migrate my setup to a Linux VM and get it up and running.

But that's not really what I *want*. I'd like a native solution. Perhaps the old doscmd functionality could be resurrected. But that's likely to be substandard since it's so old. The DOSEmu2 project ( https://github.com/stsp/dosemu2 ) is a really good prospect. It's currently Linux-focused, but from what I understand, it has been ported to MacOS X. If that has been accomplished, surely it could be accomplished for FreeBSD. The lead developer of DOSEmu2 is open to FreeBSD support but simply isn't skilled with FreeBSD development. I've tinkered with it myself, but my programming knowledge is limited. I simply don't know enough.
I'd like to ask any FreeBSD users with interest in DOS support to interact with the DOSEmu2 project. Please contribute and cooperate. Surely we can get this working on FreeBSD.
 
Yes, as mentioned DOSBox is possibly the most "native" we have since you can share the native filesystem. If you need locking, possibly mount a disk image (i.e as E:\).

Other than that; we have VirtualBox which has pretty good DOS support but again not native.

Finally, you might get away with our Linux compatibility layer (i.e in a Jail) and the DOSEmu2. Yes, it is a little inelegant going through two compatibility layers but it would yield something that feels native.
 
FreeBSD had DOS emulation included as a feature.
FreeBSD never had that feature. Ports are third party applications, not features. Semantics, I know, but it's an important distinction.

I think the doscmd port failed to compile beginning with FreeBSD 10. In any case, the loss of this functionality is really a terrible loss for FreeBSD.
Development on doscmd stopped almost 10 years ago, the project has been dead since. It's not a FreeBSD issue if the upstream project dies.
 
Tray dosbox

I used it under Linux and Windows 7 and it works great
 
Sorry for the necrobump, but I'm also missing doscmd.

In particular, it was really nice to be able to run text applications from the FreeBSD commandline (or, in my case, on a web server)

Is there any current equivalent that is similarly integrated, which doesn't require setting up virtual HDs, BIOS ROMs etc? Something simple that runs from a CLI.
 
Question...
Aren't these old ports archived somewhere in the files for all those historic FreeBSD versions, so people who don't care about the unmaintained status can download and build themselves?
 
I'll revive this again.

Dosbox varieties
For traditional or quick use, emulators/dosbox or emulatos/dosbox-x. Someone in the forums listed emulators/dosbox-staging as if it were a different alternative to these two. The problem with dosbox varieties, is I have to relearn how to mount and set the screen attributes when I use them.

On hardware emulation
I didn't understand doscmd at the time, when it was here to appreciate it. Now, I wish it were here, because I want to try out other DOS versions and clones than those. https://sourceforge.net/projects/doscmd/ is the webpage, and as already mentioned, development has halted for some time. doscmd was under the BSD license.

emulators/bochs as an X86 emulator will be a reasonable alternative. Bochs is under LGPL, which is suitable to try out with other DOS software. As for hardware emulation, most computers from the late 80's to mid 2010's were x86, so that's the way to go for retro computing, whether it's 8bit, 16bit or 32bit.

I want try running FreeDOS and PDOS (Public Doman OS or Public DOS) on Bochs, which I haven't gotten to work yet. These also run on emulators/qemu, but I prefer going with Bochs. It would be easier to emulate the hardware layer on FreeBSD, than dual boot or use another computer. The resources of those OS's don't require much anyway.

PDOS has a 32bit version which is special, as it's meant to run 32bit Windows binaries as DOS programs. It might even have a more recent 64bit version. Finding the right files for the relevant DOS OS's is difficult to navigate on that site.

DOS/32 was another 32bit DOS under a license similar to Apache 1.1: its final release was almost 2 decades ago. Other DOS's are up to 16bit.

Understanding differences and internals of DOS
To my understanding, DOS and clones used SDL for gaming and other multimedia. Today there's so many graphics and gaming libraries for X11, but SDL is standard. The controls on Allegro 4 on FreeBSD are lacking, and I haven't been able to play games built with Allegro 5, but these and other game libraries may be irrelevant to DOS varieties. SDL has been used to make professional games.

I haven't seen a movement for opensource retro games on DOS, the way they are on BSD and Linux. There's quite a few freeware and demo games on DOS, however.

Even though I used to use DOS, I still don't know the details of what it uses as opposed to a Window Manager on FreeBSD and Linux. It also uses .exe and doesn't have a way for ports like FreeBSD uses. I also wondered, why there isn't a DOS compatibility layer which can be used from the sh command line. I don't know what's under the hood of opensource DOS as I do with FreeBSD which has more similarities to Linux.
 
I also wondered, why there isn't a DOS compatibility layer which can be used from the sh command line. I don't know what's under the hood of opensource DOS as I do with FreeBSD which has more similarities to Linux.
The problem with DOS is that it (or rather the programs) are extremely tied to the hardware and BIOS. A compat layer would have to end up emulating so much of that underlying machinery that it would pretty much become an emulator.

DOSBox pretty much is that hybrid emulator in that it doesn't emulate everything. It emulates a CPU, BIOS calls and all that but then many of the underlying subsystems, i.e filesystem pass straight through to the host using a "fake" DOS. It does mean that this is lost when booting an actual DOS install but this is rarely needed.
 
Correct. Back in time, only programs that didn't do too much with hardware really worked with doscmd.

BTW, dosbox is under active development and well supported. Just go to their forum on vogons.org, there is probably all sort of information you want/need.
 
Back
Top