Results 1 to 5 of 5

Thread: How to calculate angular distance between sectors?

  1. #1

    Question How to calculate angular distance between sectors?

    Hi
    First of all I should mention that I don't want to speak about getting backup from protected discs or defeating them. In fact I'm developing my own copy protection scheme and also my main issue isn't some concepts like protecting my protection against debugging, cracking, ...
    The problem I faced is extract some physical features from discs (Data Position Measurement or DPM). I think the best one of these features is angular distance between sectors. So for this I first calculate RPM or revolution period (in CAV mode) then calculate time of seeking to sector 2000 from sector 150 for example and finally calculate angular distance between these sectors. Up to now everything is good. but when I run the program on my laptop DVD drive I get a degree and when I do this on my PC with a different CD and DVD drive I get completely different degrees!

    What do you think? Why do I get different degrees with constant speed in different drives? How can I solve this problem?
    Thanks
    I promise that I have read the FAQ and tried to use the Search to answer my question.

  2. #2
    How do you know they are both running at the same speed ?

    Conjure up an ioctl to check them.

    Woodmann
    Learn Or Die.

  3. #3
    I think you're right. I sent scsi command to set speed but when I checked current read speed I figured out it's not the speed which I commanded (for one of my drive only). I don't know why but when I multiply sX by 177 instead of 150 everything is ok. I posted this on another forum too. As you know the correct and reference value is 150 KB/s for each X. Do you know why?
    I promise that I have read the FAQ and tried to use the Search to answer my question.

  4. #4
    Naides is Nobody
    Join Date
    Jan 2002
    Location
    Planet Earth
    Posts
    1,647
    The speed of a disk is dictated by the laws of physics. The time you read with your program depends on the potency of the motor spinning the disk, the settings on the circuit that decide when the speed is "not at par but good enough to read" plus some unpredictable interrupts that may happen while reading sectors: Previous sector check-sum did not check, lets spin and read again, before reading next sector. . . All that beautiful adaptability of a system that works in less than a perfect world.

    On the other hand, the RAW position of a sector (At least in hard drives) is determined by a finite, definite combination of 3-4 numbers, which are used at the very bare metal of the disk reading routine. The track, the sector number, . . those are constant regardless of the physics of the drive reader. . .

  5. #5
    <script>alert(0)</script> disavowed's Avatar
    Join Date
    Apr 2002
    Posts
    1,281
    People still release software on physical media??

Similar Threads

  1. C++ calculate size of method
    By b3n in forum The Newbie Forum
    Replies: 8
    Last Post: April 14th, 2007, 01:21
  2. How does Ollydbg calculate 32bit values of segment
    By 1bitshort in forum OllyDbg Support Forums
    Replies: 1
    Last Post: January 6th, 2004, 02:28
  3. How to calculate which jump I want to use...
    By Six Black Roses in forum Malware Analysis and Unpacking Forum
    Replies: 2
    Last Post: March 12th, 2002, 19:28
  4. How do I calculate target in vbox?
    By dec in forum Advanced Reversing and Programming
    Replies: 2
    Last Post: May 28th, 2001, 20:52

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •