I recently downloaded MS-DOS 6 on my laptop and I want to be able to do all the commands on cmd but I need to go convert the .exe to .com I will download any software to do this.
Methinks you're confused slightly on the meaning of the .com and .exe extensions.
- .com is essentially an IMAGE of memory, restricted to less than 64K in size (actually more like 0xFF00 bytes, uh 65,280, technically since first 256 bytes for cmd line and stuff)
- .exe is a linked program, (possibly) made up of parts of libraries and code, resources and whatnot, size is essentially unlimited, although physical memory limits do exist)
BOTH function equally well as commands, in fact, look in your DOS subdirectory, you'll find a scattering of .com files and a bunch of .exe files. Don't confuse the issue by thinking only .com files are COMmands. Just a naming convention.
It does have something to do with the CP/M roots of MSDOS, since program sizes were limited to 64k, and larger programs had to page themselves into memory... those WERE considered COMmands. But thankfully we've grown past the limitations of CP/M... into a whole new set of limitations... but that's another story.
Hopefully this helps.
Different types of EXE files exist. Some can run on MS-DOS, while others require Windows. Those you can run on MS-DOS would not need any sort of conversion.
EXE files compiled for Windows, even if they accept command-line arguments and generate console output, will not run on DOS. They depend on Windows functionality and APIs (application programming interfaces) to work correctly.
If you try to run a Windows EXE file on DOS, you will get this message:
This program cannot be run in MS-DOS mode.
All other answers are good, to add to them would be to tell you that COM executables in the old times of DOS were loaded in L1 Cache, it was what was closest to multitasking in dos times.
Ex: Mouse.com , was loaded in Cache memory, then all other subsequent programs that you were running were able to use the mouse;
386 processor could support 16 to 64 KB of cache
486 processor, an 8 KB cache was integrated directly into the CPU die. This cache was termed Level 1 or L1 cache to differentiate it from the slower on-motherboard, or Level 2 (L2) cache. These on-motherboard caches were much larger, with the most common size being 256 KB.
During the turbulent time of 386 , 486 then x86, some dos games were not running correctly on 486 because not enough L1 cache was available to load all needed COMs from the 386 era, think about , Mouse, Sound, CDROM, MEMCACHE. After a few you had to choose to run the game without sound to be able to play with the mouse for example.