Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the forum
Board view  Mix view

Building MS-DOS 2.00's DEBUG (version 2.30) (Announce)

posted by Rugxulo(R) Homepage, Usono, 02.10.2018, 03:11
(edited by Rugxulo on 02.10.2018, 03:49)

> I went and tried building the MS-DOS 2.00 source's DEBUG.


> MASM 1.10 (albeit technically "free software" now, this is given as a binary only)

Did you try with later MASMs or MASM compatibles (e.g. JWasm)?

BTW, I had thought I heard that the first MASM was written in (MS?) Pascal by Marc McDonald.

Just to quote here:

> Tim Patterson, the original creator of DOS and the famous DEBUG.COM,
> wrote an 8086 assembler (ASM) to assemble 86-DOS, the predecessor to
> MS-DOS. Here is what he said:
>> MASM was written in Pascal by Marc McDonald (Microsoft employee #1,
>> after Bill & Paul). Microsoft had been doing all their development on
>> DEC computers, and the macro capability put in MASM was modeled after
>> DEC assemblers. Because MASM was such a large macro assembler, one of
>> the guys referred to it as "McDonald's big mac".
>> MASM does not have lineage back to M80. It was written specifically
>> for the 8086 and attempted some level of compatibility with Intel's
>> 8086 assembler. I remember it was different from what I was used to.
>> When MS bought DOS from SCP I was at MS. After finishing up DOS 1.0, I
>> translated DOS from SCP's assembler to MASM, and I needed Marc to
>> explain some of the syntax to me.


> After that a few more problems occurred, but I solved all of them and made
> scripts (one for building in DOS, which I run in dosemu2, and the other for
> packing the archive in bash on Linux) to build and package DEBUG version
> 2.30.

Did you only try building atop DOSEMU2? What DOS did you use, FreeDOS? Maybe these old tools have some unknown dependency on running atop actual MS-DOS 2.00 itself. (Dunno, try PCEM?) See here about running QuickPascal atop DR-DOS. And there was some weird bit about A20, EXEPACK, Pascal runtime, I dunno, see here.

Another article says this:

> Given that the compiler was designed to run on the original IBM PC
> and only required 128K memory, why is it failing on a system with
> a lot more? The real reason is of course not that there isnít enough
> memory, the problem is that thereís too much. Letís see how that works
> (or rather doesnít work) exactly.
> IBM Pascal 1.0 suffers from a problem that is common to a number of
> products built with the Pascal compiler, specifically programs using
> the Pascal run-time startup code. That notably includes early versions
> of MASM as well as the Pascal compiler itself.

So that's fun. :-P

> I uploaded my repository (based on Microsoft's) to
> and also put an archive with the binary
> (and object and listing files) to
> (Make sure to use
> though; debug.exe is only included here as an intermediate object file and
> doesn't work correctly when run directly.)

Please don't take this the wrong way, I know it's not your fault. It's just a minor nitpick.

But it seems very sloppy and almost inappropriate to put "binary only" files on Github (and/or BitBucket). I know that's somewhat unavoidable, but it blurs the lines. "bin/" shouldn't have .TXT, .DOC, .PAS, or .OBJ files! "source/" shouldn't have .TXT (maybe), linker scripts, .EXE, .HLP, or .OVL files!

EDIT: Typos, added one more quoted paragraph.


Complete thread:

Back to the forum
Board view  Mix view
15836 Postings in 1461 Threads, 268 registered users, 86 users online (0 registered, 86 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum