English Amiga Board

English Amiga Board (https://eab.abime.net/index.php)
-   support.Apps (https://eab.abime.net/forumdisplay.php?f=8)
-   -   How can I force DMS to write a dms in spite of fatal errors? (https://eab.abime.net/showthread.php?t=11860)

andreas 10 November 2003 00:11

How can I force DMS to write a dms in spite of fatal errors?
 
Hi,

difficult one here. Here's a DMS image that's definitely broken in the middle, but apparently the root block only, so I may be able to restore that one.
But there's DMS! (Original ParCon, v2.20r)

Nothing to do with emulation or not: if there's a fatal error (CRC mismatch), DMS terminates in the middle of the writing process!

But I'd like to make it write the WHOLE disk to be able to fix some things! (note the blocks beyond aren't broken!)

The technique DMS uses for copying a certain track range is sub-optimal, too. It does that by skipping tracks outside that range, which will - tadaa! - again cause DMS to terminate when a SKIPPED (!) track has an error!

e. g.: you want to copy tracks 40-79, but you certainly know that track 29 is corrupt because of a CRC mismatch. DMS will now skip to track 40, and TERMINATE while still skipping, because of track 29! Haha! :cheese

Is there any way to stop DMS from doing that crap?
(newer version, maybe?)

RetroMan 10 November 2003 11:54

Maybe you can try converting it to ADF on PC first (with XDms) and then write it back to floppy disc again :confused

derSammler 10 November 2003 12:16

I'm only guessing but it's possible that DMS uses some kind of solid compression and has to decompress the file from the beginning. In this case, you cannot skip this error in any way...

Severin 10 November 2003 12:54

try the 'noval' option...

andreas 11 November 2003 17:23

not working ... also tried 'noval' plus all the others (nozero etc.) to no avail.

Severin 11 November 2003 23:12

bung it in the zone, I'll have a look at it...

andreas 12 November 2003 21:22

thanks! ... done.

RetroMan 12 November 2003 21:35

Just tested this dms with DMS 1.11 (Aminet) and I could write it back to floppy without a problem :confused

But it HAS some read/write error if I start it, but thats of course something you may fix :D

P.S : If I test the file (DMS TEST BROKEN.DMS) the archiv seems to be ok too :hoo

//update : Just for info usage, the following files are damaged -> DMSpell3.pic, View.lo and anim/title ;) Nice hint disk btw. :D

Severin 12 November 2003 23:14

Same here, I just extracted it with on UAE with no errors, didn't even need to fire up the real amiga ;)

Are you sure you sent the right dms file?

Codetapper 12 November 2003 23:19

DMS is a buggy piece of crap! You can simulate a broken DMS easily. Just make up a DMS file, and somewhere in it modify the bytes to something else (eg. write HOL RULES randomly into the hex).

Now DMS will test it and say it's OK (useless!) but if you try and write it back you will get the error.

andreas 13 November 2003 00:40

OK @Severin, you were right.
It was the WRONG adf; well as I have been in a hurry today afternoon, I was merely able to check my text file with the hand-noted infos.

This time, I had more time to retest: there's a new one now in the zone with CRC error *while* unpacking (real DMS -- Amiga).
xDMS (PC) will behave similarly to DMS on the Amiga, break and leave back an (unusable) ADF with less than 880k by far!

@Retroman: There's already a 100% version of that hint disk in TOSEC, if you're so keen on it :) [DOCS dat]

Severin 13 November 2003 22:31

Hmmm, yep, It's naffed alright, I even dug out the version it was written with (that has a few options later dropped), I can tell you it was created on an 040 based machine with no FPU, it took 14 seconds, created with V 2.03 evaluation version, etc :(

What is it? seems to be non-dos from the bit I managed to decompress...

andreas 14 November 2003 02:27

King's Quest 4 Disk 2. :)

Well, if I was in need of it, I'd request it.
But I was only interested in a way to force DMS to write this image to the end in spite of the error, simply to have a working example of this procedure. It's not about the actual game. :rolleyes

Most archivers (like the infamous ARJ and the unforgettable PKZIP) were and are still able to do this kind of thing. DMS apparently isn't. :( :scream

Quote:

Hmmm, yep, It's naffed alright, I even dug out the version it was written with (that has a few options later dropped), I can tell you it was created on an 040 based machine with no FPU
Cool findings! :D
Could be a nice thing to have that version as well.
Many guys here have several versions of WinUAE installed, why not have several versions of one archiver installed? :cheese

derSammler 14 November 2003 13:00

Quote:

Originally posted by andreas
Most archivers (like the infamous ARJ and the unforgettable PKZIP) were and are still able to do this kind of thing. DMS apparently isn't. :( :scream
As I said, if this DMS was created using solid compression, you cannot skip this error.

RAR also supports solid compression and you'll get the same problem with a damaged RAR archive, when solid compression was used...

Severin 14 November 2003 13:08

1 Attachment(s)
Here's DMS2.04 and DMSToy, have fun :)

andreas 17 November 2003 14:06

Thanks! :great

Quote:

Originally posted by WindowsKiller
As I said, if this DMS was created using solid compression, you cannot skip this error.
Urgh. :scream
I was almost fearing that.

shd 16 August 2006 16:28

Quote:

Originally Posted by andreas
Difficult one here. Here's a DMS image that's definitely broken in the middle, but apparently the root block only, so I may be able to restore that one.
But there's DMS! (Original ParCon, v2.20r)

Care to send me the image? The latest xdms has some support for writing broken tracks and not aborting on that condition. Also, send me a dms image that contains an ascii header that caused you problems (that you mentioned in a much newer thread). -> heikki.orsila@iki.fi

Adderly 17 August 2006 10:26

Some defect dms-images posted here: http://eab.abime.net/showpost.php?p=262947&postcount=18

andreas 18 August 2006 19:53

@shd I can.
But first please tackle that issue I mailed you privately about.

One after another. Thanks. :)
Rome wasn't built in a day [tm] :cheese

andreas 09 January 2007 21:49

As shd hasn't answered / mailed back for ages, I did it myself :D :evilgrin

Using DJGPP and the excellent RHIDE, I managed to compile a win32 version of xDMS 1.3.2 today! :)

If anyone wants it too, gimme a shout :D
The only major modification I had to make was to alias the types unknown from MSDOS/Win32 side (USHORT, ULONG ...) by their standard type names (unsigned short, unsigned long) using a handful of #ifdefs. The rest compiled fine OOTB! :)

A smashing "nice work!" also to the new maintainer therefore!


All times are GMT +2. The time now is 21:30.

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

Page generated in 0.05299 seconds with 11 queries