PC DOS/RE: the open-source resurrection of PC DOS

About a month ago, Microsoft and IBM opened up the source to MS-DOS/PC DOS 4 (the code drop contained the unique utilities from both).  Lacking were HIMEM.SYS, DOSSHELL and GWBASIC.  Otherwise it was complete and with only limited effort on my part I quickly had a working build.

I have started to work toward trying to get this - it's just close enough to DOS 5 and 6 to drive me up a wall - closer to what I had already been trying to do for years with a project called DOSLITE (and before that, the failed experiment I called RMF-DOS).  But now - we've not only got actual source code to DOS (Microsoft released 2.11 a few years back), but it's not that far behind what we need.  (Not a lot of changes made to the utilities present in 4, between then and the release of 6.22 about five years later.  It was mostly the kernel, shell and new utilities that didn't exist in 4.)

So this is my goal - and I know I'm in over my head, because even 25 years of experience in C, and a lot of familiarity with MS-DOS/PC DOS at the user level, isn't going to be enough for me to do it all by myself.

  1. I would like to try to migrate the code off Microsoft C 5.1 and MASM 5.1, even though they are included as binaries in the source tree.  Ideally, they should build with a completely open-source environment that can also host on the OS itself (OpenWatcom 1.9 is my current best choice), but that will require a significant amount of code refactoring.  I've actually rewritten a couple of the in-house tools used to roll the system.
  2. I would like to simplify some of the code - especially the weird parser and message server stuff that IBM added to 4.
  3. I would like to recreate utilities that are currently not available, either because the most recent available source predates them, or because they were not originally created by either Microsoft or IBM.  This would mean everything from simpler tools like CHOICE (which I have already added to PC DOS/RE), to more complex tools like DEFRAG and SCANDISK.  Additionally, I would like to update the existing utilities to the same functionality as MS-DOS 6.21 or PC DOS 7, and bring in standalone versions of MS-DOS 6's EDIT and HELP (loading a whole IDE for these is excessive).
  4. I want to keep the base system, as far as possible, running on an XT (as was the case for the final versions of both MS-DOS and PC DOS).
  5. I would like to ultimately add FAT32 support (like in PC DOS 7.1, but better fleshed-out) to the system.  This is because drives small enough for FAT16 are growing difficult to find even for use with older computers (I don't intend to actively support 64-bit machines or such; this is mainly to keep older PCs and retro clones like the Book8086/386 alive).
  6. I would like to produce a "packaged" product, ultimately, i.e., a set of disk images and PDF manual available for free download, or other means of installation.
  7. Ultimately the base system should be available under the same license terms (the so-called "MIT License") as the original code.
All right, here goes.

Comments

Popular posts from this blog

Assuming nothing else is opened up, what is our roadmap?

Why is this project called "PC DOS/RE" ?