Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

As part of some sort of legal record-keeping thing, my father's business lawyers has requested a copy of the database of customers from a work computer. The core issue is that this work computer is a circa 1988 AOpen...thing, running what looks to be a modified version of DOS 5.0.

I'm very weak with actual MS-DOS, and older hardware in general, but after some fuddling around I finally found the file that the lawyer needed. The issue comes that the customer "database" (read: space delimited text file) is ~3MB big. This is too big for one floppy, and the data is in one single file, which, to my very limited knowledge of actual DOS, would preclude me splitting it with the built-in programs on the computer.

Checking the back of the computer, I noted 1 built-in serial port, a parallel port in an expansion slot, and somewhat inexplicably, a NIC with a jack in it too big to be RJ-11. I didn't test if it was actually a RJ-45 as I didn't have an ethernet cable handy at the time. However, the two program files that I would have used (according to my research) to use the serial are nowhere to be found on the computer. Furthermore, I haven't the slightest idea what I would do to leverage the NIC.

Furthermore complicating issues, just pulling the HDD has to be relegated to a last resort, as the computer (which is older than I am) is used for daily business operations and would have to be taken offline for around 1 day due to the distance between the computer and me, which the "client" does not particularly want.

So the crux of my question is, with my almost none existent skill in DOS (I accidentally corrupted one of the "databases", and would have been in bad shape if I didn't make a backup beforehand), is there a simple way I can leverage the above-mentioned assets (or something else I don't know about DOS) to get this 3 meg file off of the computer without pulling the HDD?

share|improve this question

We're looking for long answers that provide some explanation and context. Don't just give a one-line answer; explain why your answer is right, ideally with citations. Answers that don't include explanations may be removed.

+1 for using DOS – Canadian Luke Jul 19 '13 at 15:22
The easiest solution would be to just grab the latest full backup. Don't tell me tis mission critical file is not being backed up and lives on a machine that belongs in a retirement home. – emory Jul 19 '13 at 17:18
+1 for using a dos tag properly! – Michael Kjörling Jul 19 '13 at 17:49
tbh this should be a wakeup call. If they can't spare the computer for a short time because it is in daily use what are they going to do when it keels over and loses all their data? The longer they leave it, the more likely this is to occur. Take the opportunity to push them to upgrade and make regular backups (which then can be easily copied and sent to the lawyer) – JamesRyan Jul 20 '13 at 0:41
I just feel bad for the poor guy using a 1980's dosbox as his daily workstation – crasic Jul 20 '13 at 2:40

10 Answers 10

up vote 53 down vote accepted

Try using PKZip. It's an old DOS utility that provided some of the earliest zip file capability. You should be able to download it at If the database is a text file, then PKZip should let you compress enough to get onto a floppy disk, or if not, then it should allow spanning of multiple disks. At that point, your main issue is getting from the floppy onto a more modern computer. I don't remember the syntax for PKZip, but I do remember that it does have very good help built in to show you exactly how to zip up and unzip files. I recommend version 2.04g from the downloads as that was universally regarded as the best version for many years.

share|improve this answer
Even if you can't compress it enough to fit on a single floppy, you should be able to create a spanned volume set of zip files. – daxlerod Jul 19 '13 at 15:22
if its pure text, it should compress fairly well – Keltari Jul 19 '13 at 15:28
@Tarkenfire: Everything on DOS is not plain-text! How would programs exist, not to mention virtually every binary file format? – Karan Jul 19 '13 at 16:08
Getting the data off the floppy shouldn't be too hard; USB floppy drives are pretty cheap. – Aaron Miller Jul 19 '13 at 19:24
Just to update, pkzip worked like a charm; it compressed a ~3000kb file to around 300kb, probably because it was a space-delineated text file with 2700kb of whitespace... – Tarkenfire Jul 25 '13 at 0:38

Does the computer have QBasic installed? If so, you might be able to write a simple file splitter in it, something like this:

OPEN "database.dat" FOR BINARY AS #1

LET disk% = 1
LET todo& = LOF(1)

DO UNTIL todo& <= 0
    PRINT "Insert disk"; disk%; "into drive A: and press enter.";
    LINE INPUT ""; foo$

    LET file$ = "A:\chunk" + LTRIM$(RTRIM$(STR$(disk%))) + ".dat"
    OPEN file$ FOR BINARY AS #2

    LET done& = 0
    DO UNTIL done& >= 1300000 OR todo& <= 0
        LET buf$ = SPACE$(4096)
        IF todo& < LEN(buf$) THEN LET buf$ = SPACE$(todo&)
        GET #1, , buf$
        PUT #2, , buf$
        LET done& = done& + LEN(buf$)
        LET todo& = todo& - LEN(buf$)

    CLOSE #2
    LET disk% = disk% + 1

This will split your database into chunks of 1.3 MB, which should fit comfortably on a 1.44 MB floppy even after accounting for FAT overhead.

Edit: Here's an updated version using binary I/O, which runs a lot faster, doesn't have issues with Ctrl-Z characters and correctly handles input files whose size is not a multiple of the buffer size. I've tested it under DOSBox, and it correctly split a 3 MB file of random bytes into chunks.

share|improve this answer
IIRC, the chunks can be reassembled using the binary flag and dos copy e.g. copy /b foo_1.chunk + /b foo_2.chunk {...}. I cannot recall whether or not the Dos 5 version of copy has the binary flag ... – horatio Jul 19 '13 at 21:05
also, if you open for binary and read/write using get and put, you have no "magic character issues" – horatio Jul 19 '13 at 21:07
@horatio: Thanks for the tip. It also turns out to be a lot faster (although I suspect that the difference may be negligible when writing to real floppies). – Ilmari Karonen Jul 19 '13 at 21:34

It's only 3 megs, so using a PKZIP with spanning would be the easiest solution, as others have said. However

If you had such a problem and the floppy drive did NOT work, using the serial port would be pretty easy.

To use a serial port, you need a DOS terminal program, and you would run it then use a protocol like ZMODEM, to transfer the file at 115kbps, which should take you less than 5 minutes at 115200 kbps.

On your laptop, or any other modern PC, you would need a USB-to-serial adaptor, and a null modem cable, and a terminal program that supports the same file transfer protocol. These cables should set you back about $5 each at most decent computer stores.

The best MS-DOS terminal program I ever used was called Telix version 3.12.

share|improve this answer
Telix was a really nice program, and I also remember using Terminate. Wonder if you ever used that? I miss my favourite BBSes and USR modem sometimes. Remember being obsessed with creating animated ASCII art once upon a time! – Karan Jul 19 '13 at 19:51

PKZIP does support spanning multiple floppies, and Lenovo has a DOS compatible app called CHOPPER that will also accomplish this.

The pkzip switch for disk spanning (from docs):

-&[f|l|u Span disks [Format|format Low density|Unconditional format| ul|w|v] Unconditional Low density|Wipe disk|enable dos Verify| [s[drive]] Back up entire disk w/ subdirs (-rp) [drive to back up]]

share|improve this answer

Did the attorney explicitly specify that the database be provided in electronic format?
If not, and if this mission critical system has a functional (dot matrix) printer attached you could print the text file using the DOS print command.
For example:

print c:\file.txt /c /d:lpt1

Assuming printer speed of 100 lpm (~2.5 ppm) and 750 pages of text (estimated amount in 3Mb text file according to this calculator), then you should be able to produce a complete copy in about 5 hours.

share|improve this answer

Perhaps you could split the text file manually using tools already present in DOS, and recombine them in the target computer? Because it's all ASCII, it should be a lot easier to do this than to try to split a binary file.

share|improve this answer
I tried the two editors I could find on the system, but they both threw "ran out of memory" errors at me, I assume because they attempted to load the 3MB file all into memory at the same time. – Tarkenfire Jul 19 '13 at 16:45
I wouldn't use an editor, but i think some arguments to XCOPY, MORE or maybe even TYPE could allow you to crudely split the file. (of course, PKZIP is much easier and almost guaranteed to work, but this could be a fun try) – Javier Jul 19 '13 at 19:08

I found

edit: to download it, google SPLITV10.ZIP


Maybe you can split the file in 2-3 parts and copy it one piece at a time.

share|improve this answer

Before the vaunted days of ubiquitous USB chips and a NIC in every computer I remember fondly hooking up two computers with serial and parallel cables for large-scale data transfers.

I had to google the most convenient method in the current age, but it looks kind of similar to what I remember.

File Maven is a file tranfer utility that enables you to do transfers via serial or parallel cable. You probably don't have anything else with a serial port around anymore, so a serial-to-usb adapter will give you a connection to modern technology.

This cable might need a sex change adapter, I forget which part a PC had.

I want to stand up and give a big round of applause to whichever manufacturer was responsible for the hard drive. 25 year old HDD still running. Can you imagine today's SATA drives still running in 2038?

share|improve this answer

You can always find an 25 pin Zip/Jaz drive on craigslist or ebay. However, there are better methods than this. :)

share|improve this answer

How about trying to find an old version of Laplink, with the client being a new version running on the PC that you want that data on. Software available here:

share|improve this answer
Modern PCs wouldn't even have a serial port, let alone a parallel port, but I guess with a USB-to-serial adaptor, laplink would be a good idea. A lot easier way to transfer a whole hard disk's content or a whole folder's content, than the Telix+ZMODEM idea, but is this approach technically LEGAL? "LapLink" the brand is still around, and maybe they don't like people downloading their DOS stuff. – Warren P Jul 25 '13 at 16:52

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .