Page 4 of 7

Re: Dungeon Master for Atari ST disk image produced by dtc.e

Posted: Mon Oct 31, 2011 3:55 pm
by DrCoolZic
Thanks excellent information. I thought you were talking about write splice between sectors.
Again I have not yet looked at the IPF but I would assume that the starting point should be the "first complete sector" positioned correctly after the index so that the sector containing data over the index is written as one block to avoid "junction problem". In the DC Cartridge you had to specify when a sector had "data over the index" and how many bytes were spanning over the index. I suspect this information was used to start after this sector...

Re: Dungeon Master for Atari ST disk image produced by dtc.e

Posted: Mon Oct 31, 2011 4:50 pm
by DrCoolZic
For information new and better version 1.1 of KFAnalyzer is available here viewtopic.php?f=7&t=235#p2365
KFPanzer Protection analyzer is now available here viewtopic.php?f=7&t=286. It allow to search for 29 different protection mechanisms on all track of all disks of a game in one shot ;)
New version of my protection document here http://info-coach.fr/atari/documents/my ... ection.pdf

Dungeon Master for Atari ST disk image produced by dtc.exe

Posted: Mon Oct 31, 2011 6:10 pm
by mr.vince
galibert wrote: The IPF format includes track splice information indirectly. Any preservation format should include that information in some way.
True. But how could STREAM contain this information in an interpreted way? It's all uninterpreted raw data and the information in an IPF file is derived from it via the analysation process.

So while STREAM contains all you need to know, it's not the final data to be derived from it.

Re: Dungeon Master for Atari ST disk image produced by dtc.e

Posted: Mon Oct 31, 2011 6:18 pm
by DrCoolZic
mr.vince wrote:
galibert wrote: The IPF format includes track splice information indirectly. Any preservation format should include that information in some way.
True. But how could STREAM contain this information in an interpreted way? It's all uninterpreted raw data and the information in an IPF file is derived from it via the analysation process.

So while STREAM contains all you need to know, it's not the final data to be derived from it.
YES

Re: Dungeon Master for Atari ST disk image produced by dtc.e

Posted: Tue Nov 01, 2011 11:17 am
by IFW
You should see a Trace script... write splice is always indirectly defined for the reasons you mentioned - you need to fill the track, and that is not an exact science, it depends on lots of factors. IPF does exactly the same to allow remastering onto any media.

Xelok used on Silent Service ST is a tricky protection btw. and is based on having two write splices - actually one is just simulated to fool copiers.

Re: Dungeon Master for Atari ST disk image produced by dtc.e

Posted: Tue Nov 01, 2011 12:59 pm
by galibert
IFW wrote:Xelok used on Silent Service ST is a tricky protection btw. and is based on having two write splices - actually one is just simulated to fool copiers.
Nice :-)

Looking at the read track output, I see that the gap between the under-the-index sector and the first sector is divided in multiple parts: something like 8 zeroes after the crc, then about 112 0x4e with a given sync, around 64 0x4e with a different sync and the normal 12 0x00 with same sync just before the sector header. So I guess the two write splices are between the 0 and 4e and between the two 4e blocks?

OG.

Re: Dungeon Master for Atari ST disk image produced by dtc.e

Posted: Tue Nov 01, 2011 1:55 pm
by DrCoolZic
IFW wrote:You should see a Trace script... write splice is always indirectly defined for the reasons you mentioned - you need to fill the track, and that is not an exact science, it depends on lots of factors. IPF does exactly the same to alllow remastering onto any media.

Xelok used on Silent Service ST is a tricky protection btw. and is based on having two write splices - actually one is just simulated to fool copiers.
Can you give more information about the Xelok protection. This seems interesting.

I understand that writing track that have data over the index is a bit tricky for duplication machine, like KryoFlux, because you have to start at the right position to avoid overlapping problem (i.e. splive between sectors).
However writing sector with data over the index should not be a problem with a standard FDC on an Atari. You just need to format the track with a layout that position the last ID field close to the end of the track (as well as an empty space at the beginning of the track). The data field will not be written completely because the WD1772 terminate the writing at the index. However you can use a standard write command later that will write the sector with data over index without problem (write and read commands are not terminated by the index).

Re: Dungeon Master for Atari ST disk image produced by dtc.e

Posted: Tue Nov 01, 2011 3:01 pm
by IFW
How normal programs detect write splice is to check common values, and when they break up, quite often looking for changes in say 00 and 4e values.
So if you artificially write data that looks like write splice you effectively fooled all the copy programs that try to be very smart :)
Additionally, if you can enure that data cross the index signal, copy programs that rely on the index signal instead of detecting write splice are fooled as well; when you check the sector it will be broken up into two parts.
Also if your code checks for two break ups in the data, you can ensure that a normal copy wouldn't work, as you will only have one place with a write splice in the copy of it was written at once. You can prevent writing in multiple passes as well, by checking data consistency on all blocks.
So effectively, you prevented smart copying as well as hardware based copying - unless the user gets very lucky, but that would need a lot of tries.

Re: Dungeon Master for Atari ST disk image produced by dtc.e

Posted: Tue Nov 01, 2011 3:08 pm
by IFW
Like many good protections, Xelok requires dedicated hardware to write, since it can check for writing a sector header and data block in two passes. Also see my previous post for the other neat tricks it does :)
Not sure, which version is used by Silent Service, there have been many revisions of it for both ST and Amiga.
KryoFlux can perfectly time track writing in nanoseconds starting from the index signal, so is not affected by things like that - keep in mind that you'd get more jitter on the index signal itself :lol:

Re: Dungeon Master for Atari ST disk image produced by dtc.e

Posted: Thu Nov 03, 2011 7:22 pm
by Gothmog
Back to the topic of Dungeon Master: how would you store information about the sector containing the fuzzy bits in an IPF file?
I know there are no IPF images yet for any Atari ST or Amiga versions (except Amiga v3.6 that is not copy protected).
And I know the answer is probably somewhere in the source code you released recently but I fear I'm not capable of understanding it enough to find the answer myself.
I wonder: do you store several versions of the sector containing the fuzzy bits and return randomly one of them? or do you store precise timings for each flux transition and then simulate small fluctuations in the floppy disk rotation speed to reproduce the effect?