Modified4 years, 7 months ago. As described in this question, I used WinSetupFromUSB to successfully create a multibootable USB that could boot into MS-DOS 6.22 - as well as installers for other version of Windows - but couldn't access any of the executables I needed on the root of the USB.
As a solution to this, I'm now attempting to package the executables I need with the original DOS 6.22 boot disk ISO found here to create a new ISO containing everything I need.
To do this, I extracted all 40 files from the original boot disk ISO using WinRAR. I then opened ImgBurn's Build mode, and then selected the 40 DOS files and my executables as the source, totalling 57 files. I downloaded the boot floppy/diskette image for DOS 6.22 (Dos6.22.img) from here, and selected it as the Boot Image in Advanced > Boot Manager, with the below settings:. I then added ISO9660 and UDF volume labels, and selected the Build button.
(Optional) Fixing the "Not Enough Memory" Error
The operation ran successfully, and I used WinSetupFromUSB to load the newly-created ISO onto a bootable flash drive. Inserting the flash drive booted into grub4DOS as it should have. Booting into MS-DOS 6.22 worked, but just as it had done when I used the unaltered boot ISO, displayed only the 40 files that came packaged with DOS 6.22 by default, completely ignoring the extra files I added to the new ISO.
What have I done wrong here? 2828 gold badges7979 silver badges137137 bronze badges.
137137 bronze badges. After a lot of work, research and guidance from @cybernard, I finally managed to accomplish the goal of packaging the legacy executables I needed into an ISO and successfully run them from within MS-DOS 6.22.
For whatever reason, this doesn't change the files available to you once booted into MS-DOS. Instead, the programs need to be "injected" directly into the boot disk, from which an ISO can then be made.
Below is a longer guide to the process, as well as the solution to the memory problem you may run into when trying to run the newly-visible programs in DOS.
Note that although I only tested this process using MS-DOS 6.22, the process outlined below should be identical for any version of MS-DOS so long as you download and use the boot disk for your intended version.
ImgBurn (or equivalent image-burning software). MS-DOS 6.22 boot floppy/diskette (or equivalent for your version of DOS). Open the DOS 6.22 boot floppy disk using WinImage.
Select Image >Change Format, and increase the size of the boot disk to 2.88 MB - this will give you the space you'll need to inject your programs into it.
Drag-and-drop all the programs that you want to use in DOS onto the WinImage interface, confirming any dialogues that appear.
Save the modified boot disk. If you use Save As, ensure you save it as an .img file, otherwise WinImage will default to saving it to an incompatible format.
What You'll Need
Open ImgBurn and select Create image file from files/folders (also known as Build mode). Don't select a source. Select the destination that you want to save the image to, along with a filename, ensuring that it's an .iso, or any other format compatible with the bootable media creator that you'll be using. Under Bootable Disc in the Advanced tab, check the Make Image Bootable option and set Emulation Type to 2.88 MB.
Building an ISO from the Boot Disk
Under Boot Image, browse to the DOS boot disk you modified earlier.
Select the Build button to create the image. Once done building, ImgBurn will output both the image file and an .mds file. In all honesty, I've never been entirely sure what purpose .mds files serve, but for ours at least, it can be discarded.
From here on, you can use your bootable media creator as normal to create your bootable USB or CD, using the image that we just created as a source. I prefer WinSetupFromUSB for this part of the process.
Once you're done, you should now be able to see and boot your programs in MS-DOS.
If, after the steps above, booting into MS-DOS now allows you to see your programs, but attempting to run them results in a Not Enough Memory error, follow the step below to solve it. This error occurs because the programs you're trying to run happen to require more than the 640KB of usable memory that MS-DOS has access to by default.