How to build Enhanced DR-DOS from ecm repo

2023 by C. Masloch. Public Domain.

This document has been compiled on 2024-01-14.

  1. Set up dosemu2
    1. Make sure to use FreeCOM as the shell
    2. When redirecting a host directory to a DOS drive using -K, then the DOS drive I: still must be unused
    3. A recent FreeCOM build can be obtained from the build at https://pushbx.org/ecm/download/freecom.zip
    4. There is a blog post on how to set up dosemu2: https://pushbx.org/ecm/dokuwiki/blog:pushbx:setupdosemu2
  2. Set up WarpLink
    1. Build WarpLink (requires NASM, dosemu2, and warplink.exe itself) or obtain a build
    2. Place resulting executable in DOS PATH as warplink.exe
    3. A build can be obtained from https://pushbx.org/ecm/download/warplink.zip (rename wl.exe to use it as warplink.exe)
  3. Set up x2b2
    1. Build x2b2 (requires NASM and lmacros) and place in DOS PATH
    2. A build can be obtained from https://pushbx.org/ecm/download/x2b2.zip
  4. Set up JWasm
    1. Build DJGPP executable of JWasm and place as C:\BIN\JWASM.EXE
    2. A build can likely be obtained from https://github.com/Baron-von-Riedesel/JWasm/releases/
  5. Set up OpenWatcom
    1. Insure to have no files in DOS named C:\C0NFIG.SYS or C:\AUTOEXEC.BAT
    2. Download OpenWatcom 1.9 DOS installer from http://openwatcom.org/ftp/install/open-watcom-c-dos-1.9.exe
    3. Run installer in dosemu2
    4. Install to C:\WATCOM
    5. Choose the full installation
    6. Choose for the installer to ‘Make all the modifications for you’
    7. Rename the created file C:\AUTOEXEC.BAT to C:\AUTOWAT.BAT after the installer is done
    8. The created file C:\CONFIG.SYS should have just the line FILES=20 so make sure to configure at least that many SFT entries in FDCONFIG.SYS
  6. Set up IA16 gcc
    1. Use https://gitlab.com/tkchia/build-ia16
    2. Make ia16-elf-gcc available in the Linux path
  7. Set up the following repos as sister directories of the edrdos repo: (accesible as ../REPO/ from edrdos repo)
    1. lmacros
    2. ldosboot
    3. inicomp
    4. scanptab
  8. Make lzip available in the Linux path, from https://www.nongnu.org/lzip/
  9. Make NASM available in Linux path
  10. Run mak script from edrdos repo (repo root as host cwd), as ./mak.sh
  11. Alternatively, set up DOS drive I: to point to the repo's drdos/ subdirectory, call the C:\AUTOWAT.BAT file (only needed for building command.com), then run one of the make.bat scripts from one of the subdirectories (drbio/, drdos/, or command/ subdirectory as DOS cwd).
  12. Find files edrdos.sys, edrpack.sys, edrdos.com, or edrpack.com in repo root, and command.com in the subdirectory command/bin/
  13. To build this document, you need the Halibut document preparation system
    1. Grab sources from https://www.chiark.greenend.org.uk/~sgtatham/halibut/
    2. You may want to get a patch from https://github.com/ecm-pushbx/halibut/commit/1ccc3ac

The pack100 / pack101 EDR-DOS kernel packing using UPX is no longer supported in the lDOS EDR-DOS fork starting 2023 December. Use the build files edrpack.sys or edrpack.com instead.

Source Control Revision ID #

hg 33c6976eaa60+, from commit on at 2024-01-14 21:25:46 +0100

If this is in ecm's repository, you can find it at https://hg.pushbx.org/ecm/edrdos/rev/33c6976eaa60