Reconstruction should support RAR for DOS.

Issue #152 new
Da Fox created an issue

The following release uses DOS RAR for rar sets (disks) 1 & 4: https://www.srrdb.com/release/details/Imperium_Galactica_II-FLT.

The version used appears to be v2.50 (1999-03-24), which seems to be different from WinRAR v2.50 (1999-03-24). It seems to generate slightly different RAR files and is missing some options. E.g. the -mdN (dictionary size) option is not supported.

To complicate matters, these versions of RAR no longer run under Windows 10 ("This app can’t run on your PC"). I tried using DOS Box with a wrapper script to run srr with this old version of RAR for DOS. Strangely, srr could not find a good rar version, even though manual reconstruction works fine with the above version of RAR.

Srr can't seem to find a good rar version because it always thinks that the data is being compressed too well (start > rs.length()). It always thinks that the compressed size is about equal to the volume size. Srr specifies the volume size as 9472467 bytes, and it thinks the compressed size is 9472403 bytes. The odd thing is that the rar sets use a volume size of 15000000 bytes. I don't know if srr sees the wrong compressed size because of a difference in the actual output of RAR, or if I've made a mistake in my wrapper script or in my changes to srr.

One more thing that will cause complications is that DOS only supports 8.3 filenames, but paths and filenames generally are longer nowadays. E.g. the data piece that srr uses is called "pyReScene_data_piece.bin", but this cannot be handled by RAR for DOS. Even after I did some trickery in my wrapper it would still fail when srr tries to determine the size of the compressed file, because the filename was different from what it expected (e.g. PYRESC~1.BIN).


Notes

An archive of old versions of RAR for DOS can be found here: http://old-dos.ru/files/file_696.html

I used DOSBox LFN for my tests. It doesn't help magically make RAR LFN aware, but it should at least use the same short filenames that Windows itself does (I've read that regular DOSBox will make up its own short filenames, which may be different).

Comments (0)

  1. Log in to comment