Questions tagged [ms-dos]
MS-DOS, the Microsoft Disk Operating System, its OEM-branded versions, and x86 DOS clones in general.
69
questions
17
votes
5
answers
4k
views
What tools were used in late MS-DOS era for reverse engineering and patching binary executables?
In the late MS-DOS era, what were the state of the art software tools for reverse engineering and patching binaries, i.e. .exe and .com files?
A simple list of the tools that were "state of the art", ...
11
votes
4
answers
11k
views
How do I create a boot menu to select between Windows and DOS?
I was not a PC user before Windows 98. But I remember one of my friends was using a boot menu in his 486 machine to select between Windows/DOS.
The menu was like:
1. EMS
2. XMS
3. Windows
If we ...
33
votes
1
answer
3k
views
How does the command.com shell work with MS-DOS?
On my systems that are running MS-DOS, I change the default command.com to 4DOS for more features.
How was the shell system designed and how did it with the operating system in MS-DOS that it enabled ...
22
votes
1
answer
4k
views
How did large .COM files work?
An MS-DOS .com file is just raw code/data without header, thus no linking information, and was limited to be loaded into just one segment (64kB). That's the reason corrupted binaries would print "...
34
votes
2
answers
5k
views
How did MS-DOS assign drive letters in the case of more than two floppy disk drives?
The IBM PC BIOS had provisions for up to four floppy disk drives, by virtue of returning the number of floppy disk drives in a two-bit field plus a none/some flag (allowing for reporting values of 0, ...
19
votes
2
answers
6k
views
First commercial DOS game?
What was the first commercial game sold for use on IBM/MS/PC DOS after the IBM August 12, 1981 release.
15
votes
8
answers
7k
views
Why was the DOS kernel discarded?
I've read that the last DOS kernel based Windows was ME. Later versions use the NT kernel.
Why did Microsoft rewrite the whole kernel? Why was the DOS kernel discarded?
71
votes
3
answers
14k
views
Why did DOS use dollar-terminated strings?
According to a few tutorials I am seeing, DOS used dollar-terminated strings to write to the terminal. This seems to also be documented here on INT 21H.
AH = 09h - WRITE STRING TO STANDARD OUTPUT
...
49
votes
9
answers
12k
views
Why weren't bootable game disks ever common on the IBM PC?
While for other platforms of that era (primarily, Amiga), putting a game on a bootable disk was quite a normal practice, this approach never taken off on IBM PC. Why not?
I do remember people having ...
41
votes
2
answers
6k
views
How did Windows ME "cripple" DOS?
Windows ME includes the ability to create a bootable DOS floppy. This floppy contains versions of COMMAND.COM and IO.SYS that are "crippled" to remove real mode. This is done with only one changed ...
31
votes
3
answers
6k
views
Why was the DOS clock device renamed from CLOCK into CLOCK$?
From the Wikipedia article on reserved device names
... and the CLOCK$ (still named CLOCK in some issues of MS-DOS 2.11) clock device were introduced with DOS 2.0, ...
Why was is necessary to add a $...
28
votes
4
answers
4k
views
What's the relationship betweeen MS-DOS and XENIX?
Browsing MS-DOS sources on GitHub, I often see mentions of XENIX:
DOSSYM.ASM:
; XENIX calls all return error codes through AX. If an error occurred then the
; carry bit will be set and the ...
26
votes
3
answers
7k
views
Why does DOS ask for the current date and time upon booting?
In most versions of DOS, when they are started from a medium that lacks an AUTOEXEC.BAT file, the very first thing COMMAND.COM does is ask the user to confirm the current date and time:
Starting PC ...
25
votes
1
answer
3k
views
What is 'Adaptive Tile Refresh' in the context of Commander Keen?
The question Did John Carmack really invent "Adaptive Tile Refresh"? asks about the origins of the scrolling and drawing techniques used to allow an MS-DOS PC to provide a NES console-like ...
25
votes
12
answers
5k
views
Why did CP/M and MS-DOS use the BIOS instead of their own drivers to access hardware?
Modern versions of Windows (and other modern operating systems I suppose) have their own drivers to access hardware.
But as I have read, in the old days, if CP/M or MS-DOS wanted to access hardware, ...
19
votes
3
answers
2k
views
Why did MS-DOS choose the percent symbol to designate variables?
I couldn't find anything but is there any reason for choosing % over $ like in *nix shells?
16
votes
1
answer
6k
views
How to write directly to video memory using "debug.exe" in MS-DOS?
The base address for the video memory in MS-DOS is 0xB8000. I am trying to write to this address using debug.exe, but I am getting an error:
1165:0103 mov [b8000],ax
^ Error
15
votes
4
answers
4k
views
For fast scrolling DOS games, when was Mode13h preferred over Mode X?
Back in the DOS days of gaming (more specifically, 80286 - 80486 era), developers typically needed to choose between using the chunky and easier Mode 13h or the more complex "Mode X" that provided ...
14
votes
7
answers
6k
views
Transfer files to DOS over serial cable from Linux?
I have a modern Linux computer and a 286 computer running DOS. I would like to transfer files from the Linux computer to the DOS computer over a null modem serial cable. I know you can use INTERLINK....
12
votes
3
answers
3k
views
Disassembling Windows IO.SYS
Under the question How did Windows ME "cripple" DOS?, Ross Ridge's answer showed a section of his disassembly.
I would like to know, a) what disassembler was used and b) what adjustment or ...
11
votes
3
answers
4k
views
How can I create a pipe for stdin/stdout of command.com (or 4dos.com) in C or a batch file?
I'm working on a retro project and was trying to create a pipe of stdin/out/err in DOS, but I can't find any functions to to this.
For instance the pipe() function from unistd.h isn't present in ...
11
votes
1
answer
3k
views
Timing interrupts on MS-DOS
On the ZX Spectrum, you get an interrupt every frame. As I recall, the operating system uses this to periodically scan the keyboard and probably other things also, but you can have your own routine ...
8
votes
4
answers
8k
views
Set screen resolution in DOS-only PC
I replaced a failed CRT display with a LCD panel with a VGA controller board. There is no problem with the display when the PC boots up. However, if I switch the display off then I get an 'Out of ...
7
votes
2
answers
1k
views
How 3Dfx Voodoo 1 Emulator works
reading of this question brings up 3Dfx Voodoo 1 Emulator in my memories. I always wandered how did it work so good time as any to ask...
My memory is hazy on the details so I might miss remember ...
3
votes
2
answers
1k
views
Can HIMEM.SYS be disabled in Windows ME’s IO.SYS?
Windows ME's IO.SYS includes HIMEM.SYS, which it loads unconditionally. Since it is possible to decompress and disassemble IO.SYS, and hack it to enable full DOS mode, can we go a step further and ...
92
votes
3
answers
16k
views
How did Windows 3.1 implement multitasking?
Windows in its earliest days was simply a shell that ran on top of MS-DOS, which means that Windows 3.1 itself was actually just a standard MS-DOS application like any other.
Yet, MS-DOS is not a ...
69
votes
3
answers
15k
views
What character is the MS-DOS cursor?
The cursor used on my 486 (and Pentium 3) in MS-DOS 6/7 has a thick underlined character. I cannot find that in code page 437. The underscore character is the closest to it, but is thinner.
Where ...
46
votes
2
answers
8k
views
Did IBM encourage Bill Gates to retain the rights over PC-DOS?
As is well-known, Microsoft's negotiations with IBM to deliver PC-DOS 1.0 with the original IBM PC resulted in:
IBM licensing the OS from Microsoft, as opposed to purchasing it outright.
Microsoft ...
37
votes
2
answers
8k
views
Why does Windows 1.01 crash at the splash screen?
When Windows 1.01 is started under DOSBox, FreeDOS or one of the later versions of MS-DOS, garbage characters are printed on the screen right after displaying the Microsoft logo. Here’s an example in ...
31
votes
3
answers
8k
views
Were 9.2 file names possible in MS-DOS?
In MS-DOS (and FAT16), you could only have 8.3 file names (like QUESTION.TXT) with only single-case letters and numbers (and a few symbols). The MS-DOS Editor also defaulted to 8.3 - typing edit ...
28
votes
5
answers
7k
views
Why are Windows 95 installation disks not uniquely bound to a single product key?
I was installing the OEM version of Windows 95 on VirtualBox the other day for reminiscence sake, and for some reason I had two different product keys. I tested both of them to see which one mapped to ...
27
votes
9
answers
8k
views
What other tricks were there to get more data onto floppy disks?
I remember using a utility back in MS-DOS 3.3 days, called MAXI Disk, that somehow magically managed to get 420K on a 360K 5¼″ disk. I assume it managed it by destroying some redundancy like a backup ...
26
votes
3
answers
13k
views
Why was "C:" chosen for the first hard drive partition?
I was reading this answer, as the question came to my mind: why does C: indicate the first hard drive partition?
The usage dates back to CP/M (as noted in a comment), was embraced by MS-DOS, and ...
26
votes
3
answers
4k
views
Most modern C compilers targeting DOS 8086, running on DOS 8086 (16-bit)
I'm looking for the most recent versions of modern C compilers which were/are targeting DOS 8086, also running on DOS 8086 (16-bit). I'm mostly interested in production-ready C compilers, rather than ...
26
votes
3
answers
4k
views
What did Ctrl+NumLock do?
In my answer here I infer that the unusual scancode for the Pause/Break key emulates the user pressing and then releasing CtrlNumLock. Obviously that key combination did something specific, back when ...
26
votes
7
answers
6k
views
How did DOS games manage to have multiple background layers?
Seems like VGA only has one background layer, it appears to be a typical bitmap screen like most home computers of the 80s (Amstrad CPC, Commodore 64 etc.) where each pixel's color is stored in a ...
23
votes
1
answer
2k
views
When was QDOS changed to MS-DOS?
So a while back, I heard that MS-DOS was originally named QDOS (Quick and Dirty Operating System), and that it was later changed is MS-DOS (Microsoft Disk Operating System). This was probably a ...
23
votes
3
answers
3k
views
How do I connect a command prompt to a serial line in MS-DOS 6.22?
I am currently experimenting with DOS and am trying to run the command prompt on the serial terminal through QEMU. This is the command I have been using.
command >COM1 2>COM1 <COM1
This ...
22
votes
3
answers
6k
views
Why are these DOS console drivers wasting precious bytes?
While doing some research on DOS device drivers, I took a peek at the console drivers DISPLAY.SYS and ANSI.SYS that are part of the DOS 6.20 installation. Both have "Microsoft" stamped on, ...
22
votes
3
answers
3k
views
What were the actual memory model definitions in MS-DOS?
I've heard the phrase "memory model" used in relation to MS-DOS programming (and early Windows), with terms such as "small" and "compact".
But what were the actual ...
22
votes
6
answers
5k
views
Sound driver for DOS or Windows 3.x that used the PC speaker?
Long ago in a galaxy far far away, back in the early 90's, I worked for a crappy clone company as a phone technician. At the time, 386SX/25's were common for in-house technical support / customer ...
21
votes
1
answer
929
views
Logo of a bow tie guy with a spoon
I was in the Computer History Museum in Silicon Valley last week, and I saw this badge. I know I've seen that logo somewhere before, but I can't remember where! Does anyone know where it's from?
21
votes
1
answer
1k
views
Why can MS-DOS not read partitions starting at logical sector 0?
When creating a FAT file system, mtools and newer versions of mkfs.fat write a stub MBR partition table to the boot sector. This makes the file system accessible when written directly to media that ...
21
votes
2
answers
9k
views
What is the best way to obtain old versions of MS-DOS and Windows?
I'm wondering what the best way obtain old versions of Windows would be, specifically:
DOS
Windows 95
Windows 98/SE
Windows 2000/ME
Windows XP Professional
Windows 7 Professional
Microsoft Office for ...
17
votes
4
answers
3k
views
Document format for a DOS word processor where control commands begin with a dot
I successfully achieved the reading of several 5.25″ old floppies. They contain old documents from a retired lawyer.
For the memories, we want to read them correctly, nevertheless, I don't find which ...
16
votes
3
answers
3k
views
Who decides what is the memory address that the CGA video buffer will be mapped to?
In DOS, the memory mapped IO base address for the CGA video buffer is 0xB8000. So when you write to 0xB8000, you are actually writing to a buffer in the CGA card itself and not to RAM.
What I want to ...
16
votes
4
answers
5k
views
Is there any way today to recover/dump 2M disks?
2M disks where formatted using 2MGUI to increase 3"1/2 & 5"1/4 DD/HD/ED disks' capacity.
Is there any way today to recover/dump these disks to a file with modern hardware? Specially the 5"1/4 ...
15
votes
5
answers
2k
views
Commodore Mouse not recognized by a Commodore PC30-III 286 machine
I have Commodore PC 30-III 286 machine with a serial port at the back labelled "mouse". If I plug my Commodore mouse 1900 serial mouse then execute mouse.com at the DOS prompt then I get the ...
14
votes
5
answers
4k
views
Can I run Windows 98 and games from the same era on an AMD Duron CPU?
I have acquired an old motherboard with a socket 462 and a AMD Duron (I think its a "Spitfire" model 3).
The copyright on the CPU is from 1999 and it apparently doesn't require a dedicated CPU fan as ...
14
votes
7
answers
6k
views
Is there a reason why MS-DOS didn't use more English words for commands?
When using diskpart, I can list all the drives by typing LIST DISK or to select a specific drive I can type select disk 1.
Is there a reason why MS-DOS didn't use more English words to do tasks, for ...