C++20 development framework for 32-bit DOS applications
This library aims to be a complete development framework for DPMI (32-bit DOS)
applications, written in C++20.
It's still in the experimental stage. Anything may change at any time.
Current features include:
std::thread
.std::chrono
interface.std::iostream
interface.First, you need a toolchain compiled with --target=i386-pc-msdosdjgpp
, and
djgpp's libc
. An easy to use build script is available here:
https://github.com/jwt27/build-gcc
This library is meant to be integrated in your project, not installed system- wide. The only dependency is jwutil, and the most convenient way to install both is as submodules in your own project:
$ git submodule add https://github.com/jwt27/libjwutil.git ./lib/libjwutil
$ git submodule add https://github.com/jwt27/libjwdpmi.git ./lib/libjwdpmi
$ git submodule update --init --recursive
If you use jwbuild, simply add the
following to your configure
script, and you're all set:
add_submodule lib/libjwutil
add_submodule lib/libjwdpmi --with-jwutil=$(pwd)/lib/libjwutil
For other build systems, you need some way to call the configure
script, and
then the cxxflags
and ldflags
files in the build directory contain all
flags you need to compile and link.
See the wiki page, where I'm slowly
adding documentation.
Read the header files in include/
, most functions should be self-explanatory.
The detail
namespaces contain implementation details, you shouldn't need to
use anything in it (file a feature request if you do).
It's GPLv3, for now. I may decide to move to a different (less restrictive) license in the future. Therefore I am unable to accept code contributions at this time.