[comp.sys.amiga] Copy Protection on Amiga format disks

geoffk@belfry.sandiego.NCR.COM (Geoffrey Kim) (03/05/87)

In previous articles dealing with disk format questions it was  
mentioned that the Amiga does not use sectors on its tracks, but
writes out entire tracks at a time.  I am new to the Amiga 
scene and was wondering how various copy protection schemes were
implemented.  I know most of the popular methods on the IBM PC
software (e.g. short sectors, 1 sector per track, half-tracking,
spiral tracking, synchronized inter-sector gaps, CRC and parity
errors.)  However, almost all these schemes are based upon sector
orientation.  Does the Amiga employ the same techniques, but on
a track basis?  Enquiring minds want to know!
 

dillon@CORY.BERKELEY.EDU (Matt Dillon) (03/06/87)

	The copyprotection designer can basically do anything, since you have
direct control overthe flux transitions (the Amiga does the MFM encoding then
DMA's the track buffer to the disk).  Thus, theoretically, you can do even
more then you could through a 'full' disk controller.

	More and more people are refusing to buy copyprotected software mainly
because it ties up a disk drive, masters and even copies can get trashed, and
such software is not easily placed on other storage media (hard disk, etc...).
Thus, the general industry trend is away from copyprotection and towards
large manuals.

				-Matt

cmcmanis@sun.uucp (Chuck McManis) (03/06/87)

In article <121@belfry.sandiego.NCR.COM>, Geoffrey Kim writes:
> In previous articles dealing with disk format questions it was  
> mentioned that the Amiga does not use sectors on its tracks, but
> writes out entire tracks at a time.  I am new to the Amiga 
> scene and was wondering how various copy protection schemes were
> implemented.  I know most of the popular methods on the IBM PC
> software (e.g. short sectors, 1 sector per track, half-tracking,
> spiral tracking, synchronized inter-sector gaps, CRC and parity
> errors.)  However, almost all these schemes are based upon sector
> orientation.  Does the Amiga employ the same techniques, but on
> a track basis?  Enquiring minds want to know!
>  

The Amiga does read and write full tracks however it divides those 
tracks into sectors of 512 bytes each. Programatically the disk 
appears as a series of blocks from (0+Reserved) to (Max) where 
the number of reserved blocks and the Max blocks are specified by
the device. 

When reading and writing tracks the user program can call the trackdisk
device directly and put anything it wants to in the track buffer. That
means it can put is bogus data, or even a bad track. Unfortunately if
AmigaDOS ever trys to validate the disk it fails (because of the bad
area) and the disk is marked as unreadable. The way to prevent AmigaDOS
from attempting to read the bad block or track is not have it present 
in any file, unfortunately if you write to the disk there is a measurable
chance that AmigaDOS will use that area for the new file and that too will
blow up the CP. The answer is of course not to copy protect the program,
however for those applications where it is not possible to sell it 
unprotected the best bet is a cleverly selfmodifing program that converts
itself from a demo to working program after checking that it hadn't been
copied. 
-- 
--Chuck McManis
uucp: {anywhere}!sun!cmcmanis   BIX: cmcmanis  ARPAnet: cmcmanis@sun.com
These opinions are my own and no one elses, but you knew that didn't you.