English Amiga Board

English Amiga Board (https://eab.abime.net/index.php)
-   support.Demos (https://eab.abime.net/forumdisplay.php?f=7)
-   -   Combine split .dms files? (https://eab.abime.net/showthread.php?t=26620)

Photon 21 November 2006 14:57

Combine split .dms files?
 
Downloaded some megademos from ftp and most of them are split in half (to fit on PC floppys I guess). Stupid question maybe, but how do I combine them to one .dms to run in WinUAE? Mounting each half in DF0: and DF1: in WinUAE and copy tracks with X-Copy or something would take too much time I think ;)

thor 21 November 2006 15:02

Does this work: copy /b first.dms+second.dms final.dms?

Belgarath 21 November 2006 15:03

copy /b is the method I always use for joining split .dms files.

Adderly 21 November 2006 17:16

Strange that this works for you. :shocked
I always depack the two dms parts to adf-images and then join the adf files.
If you join two dms files you have the header of the second dms-file added in the middle of the joined file and at least the popular XDMS cannot depack those files!
Just tested: original amiga DMS can depack those joined dms files, seems it ignores the second header information. Dunno about Winuae's dms handling....

Photon 21 November 2006 18:53

Did the copy /b, got a file of the right size, WinUAE guru'd when I opened it.

Anyone have a link to a clear and concise description of the .dms format? Might do a quick PC utility... ;)

Photon 21 November 2006 19:17

Found a description here:

http://lclevy.club.fr/amiga/DMS.txt

If I do a utility I will limit it to two .dms files, only use track info to see if they are contiguous and don't overlap, and I won't interpret the track data at all, just form a new file with a (modified) single header.

I'll see if I can do it tonight... meanwhile, anyone see a problem with that method?

Photon 21 November 2006 19:38

Hmm, might get trouble with unpacked/packed CRC, especially unpacked CRC since I don't want to unpack it... Is it a simple 16-bit sum, so I can add the words from the respective .dms files to join? But it's probably a "proper" CRC though, is it the 16-bit IBM CRC, or what flavor. Argh. :(

Codetapper 21 November 2006 19:39

Why not just insert a blank disk, unpack the first DMS to it (using DMS of course), then unpack the second DMS and now you have the complete ADF? It won't matter if tracks overlap or anything.

Adderly 21 November 2006 22:50

Codetapper is right. It's very easy, no tool coding needed. You can also use xdms to unpack both splitted dms files and then a simple copy /b later you have what you want...
Dms used the x^16+x^15+x^2+1 polynom as CRC-16 for the headers and for all tracks.

Photon 25 November 2006 01:09

CodeTapper, Adderly, sure - but then I have to do that for every megademo I've downloaded from scene.org... As a programmer I like niftier solutions, if possible ;) I mean, there are tons of split archives out there...
Quote:

Originally Posted by Adderly
Dms used the x^16+x^15+x^2+1 polynom as CRC-16 for the headers and for all tracks.

Right, so it's not possible to combine the checksums without interpreting the compressed or uncompressed data. Gah. :)

thor 25 November 2006 02:28

You could make a batch file for using xdms:
Code:

xdms.exe u %1.dms
xdms.exe u %2.dms
copy /b %1.adf+%2.adf %3.adf

Then you can write
Code:

xdms.bat part1 part2 final
(without endings!) for joining part1.dms and part2.dms to final.adf.

Or you can replace
Code:

fo = fopen(oname,"wb");
with
Code:

fo = fopen(oname,"ab");
in pfile.c of the xdms sources and then you can use the batch file

Code:

if exist %3 goto error
xdms.exe u %1 +%3
xdms.exe u %2 +%3
goto end
:error
echo Output file %3 exists already
:end

This way you can use it with endings or without.

Phiber 25 November 2006 11:00

I remember asking this question a few years back.. AFAIR never really got a decent answer back then.. maybe this time..?

Photon 25 November 2006 18:09

Thor: Sweet. Might do a simple shell for it that does a search for split archives in the directory of choice and turns them all into .adfs. :)

andreas 30 November 2006 22:29

@Phiber: well Heikki aka "shd" has taken over xDMS development from Andre.
=> http://zakalwe.fi/~shd/foss/xdms/

He's been absent for ages now, but if anyone is interested in adding this, it's him - Andre doesn't have time for that stuff anymore.

Paul 01 December 2006 11:07

Also see this thread
http://eab.abime.net/showthread.php?t=25018

chip 14 September 2017 21:39

You can use ADF Workshop

There's a command called "Merge some files..." which can be used to put together the splitted .dms


All times are GMT +2. The time now is 06:58.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.

Page generated in 0.04601 seconds with 11 queries