menga.net

dvd+r dl discs are the best thing for long term data storage?

Making super-ultra compatible CDs that will work with MS-DOS

In this scenario, you're using CD and not DVD, and the instructions below is my best guess on how to make the most super-ultra compatible CD for use on a vintage PC. Why just a best guess? I don't have an actual vintage MS-DOS PC to test with. But I do remember enough about MS-DOS to where this will most likely work.

ISO 9660 is understood by MS-DOS, so as far as I'm aware, the only real thing to look out for are directory and file name considerations.

Any file or directory follows 8.3 rules, which means 8 case-insensitive characters and optionally one dot followed by 3 case-insensitive characters. The allowed characters are A through Z and 0 through 9.

Allowed special characters are all these _^$~!#%&-{}@`'() and if DOSBox is to be believed, that actually works:

image

...but to avoid complications, I wouldn't bother with that and just stick with A-Z and 0-9.

One of the easier ways to get a bunch of files to CD for MS-DOS use other than just copying them over is using a ZIP. Other archive types exist, but ZIP is by far the easiest.

In Linux, zip gives you the optional -k flag, which in man zip is described as:

Attempt to convert the names and paths to conform to MSDOS, store only the MSDOS attribute (just the user write attribute from Unix), and mark the entry as made under MSDOS (even though it was not); for compatibility with PKUNZIP under MSDOS which cannot handle certain names such as those with two dots.

This means all you have to do in Linux is put all your files in a folder (and you can include subdirectories, also with files in them), navigate to that folder in Terminal, and run this:

cd /path/to/files
zip -r -k archive.zip *

All files and folders in the ZIP will be converted over to 8.3 that DOS can understand.

If the archive is too big, use the split utility in Linux to break it up, then CHUNK in DOS (search for "dos chunk file splitter" in your search engine of choice) to combine the files.

Splitting for DOS CHUNK use in Linux using 700k pieces (you can specify any size you want in b for byte, k for kilobyte, m for megabyte, whatever):

split -a 3 -b 700k -d archive.zip archive.

Yes, the dot has to be at the end. This will create archive.000, archive.001, archive.002 and so on.

This should go without saying, but I'll mention it anyway. Any utilities I mention below should be in PATH. If you don't know what that is.. um.. learn to DOS.

In DOS, put all the files in a folder and run CHUNK to combine and get the ZIP. If you put everything in C:\SPLIT, it would look like this:

C:
CD\SPLIT
CHUNK /C ARCHIVE ARCHIVE.ZIP

Preview the ZIP using PKZIP for DOS:

PKZIP -VM ARCHIVE.ZIP

Once satisfied with what you see, delete the old split files afterward:

DEL *.00*

Make a folder, go to it, use PKZIP for DOS to unzip that extracts folders along with any subdirectories and files within:

MD \EXTRACT
CD\EXTRACT
PKUNZIP -D \SPLIT\ARCHIVE.ZIP

Ultimately, whether you choose to write files as-is outright to CD, use ZIPs or split ZIPs, everything has to be to 8.3 spec if the intent is to use those files in MS-DOS. If all the data is "8.3'd" and the CD is written as Yellow Book data mode 1, DOS should be able to read and understand that without issue. I believe even an ancient MPC compliant PC like the Tandy Sensation:

Tandy Sensation!

...should be able to read the disc.

Published 2025 Feb 25