Hi, LFN -> Long File Name. Supported by DOS 7.x, but needs a driver in plain DOS (not run on Windows 9x).
Opposite is SFN -> Short File Name (8.3), I think. Speaking under correction.
"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel
Testing the 7zip-24.09+3_dos version now, in pure MS-DOS 6.20...
The problem with finding only "*" files, instead of "*.*", seems gone indeed.
But I've found a problem with memory requirements...
There's 16 MB total:
1Memory Type Total = Used + Free 2---------------- ------- ------- ------- 3Conventional 640K 175K 465K 4Upper 0K 0K 0K 5Reserved 384K 384K 0K 6Extended (XMS) 15,360K 2,112K 13,248K 7---------------- ------- ------- ------- 8Total memory 16,384K 2,671K 13,713K 9 10Total under 1 MB 640K 175K 465K 11 12Largest executable program size 465K (475,744 bytes) 13Largest free upper memory block 0K (0 bytes) 14MS-DOS is resident in the high memory area.
Should be enough, right?
First, I try zero-compression:
7za a -mx0 e:\backup1
It finds 300+ directories, 6000+ files, 200+ MB - and happily completes the task.
Now, let it actually compress stuff:
7za a e:\backup2
It works hard for a long time, nearly to the very end - but then it aborts with "ERROR: Can't allocate required memory!", and the "BACKUP2.7Z" file gets deleted.
Kiełbasa smakuje najlepiej, gdy przysmażysz ją laserem!
No, 13 megabytes of memory is not always enough to create a large archive with 7za.exe, which can use up to 8 megabytes to get off the ground.
Run 7zr.exe and look at the top-right corner of the console. You should see something like this: LFN=0 SWITCHES=-md19
Subtract one or two from the automatic dictionary size and create the archive like this: 7zr a -md17 e:\backup1.7z
If this succeeds, then you were indeed running out of memory. Each file added to an archive uses a few hundred bytes of heap space during compression.
If this fails, then the stack is probably exhausted, which you can't easily fix. Add fewer files to backup1.7z and update it with more files in a second run.
You didn't mention what kind of DOS you are using, which matters.
Don't omit the .7z file extension. Implicit names sometimes cause problems in DOSBox and with LFN drivers.
Delete the 7z temp file in the working directory if it exists.
Very bad, even if I'm not supposed to use 7ZA with 16 MB of RAM.
The docs seriously need clarification:
- with aaa..bbb MB of RAM, use 7ZM
- with bbb..ccc MB of RAM, use 7ZR
- with ccc+ MB of RAM, use 7ZA
All three versions should check for available memory, and display a warning if it may be insufficient.
But even if it's really insufficient, it should exit with an error, rather than create a corrupt archive...
Kiełbasa smakuje najlepiej, gdy przysmażysz ją laserem!
I don't feel like registering at GitHub anytime soon.
Meanwhile, if you want me to report problems, I can only do it where I already have an account - on this forum.
Kiełbasa smakuje najlepiej, gdy przysmażysz ją laserem!
This list is very useful, however omissions include MS-DOS 7.1 (ie, the command.com included in Windows 95b, booted on bare metal machines), and the Himem.sys included in that version. As well, the CWSDPMI DOS extender is missing.
For completeness, I will check MS-DOS 7.1 when I get around to updating the test matrix for PMODE/W.
Using CWSDPMI with Open Watcom requires a linker bodge, which means that CWSDPMI is incompatible with Retro7zip for the purpose of coverage testing.