Path: utzoo!attcan!uunet!cs.utexas.edu!swrinde!zaphod.mps.ohio-state.edu!sdd.hp.com!ucsd!ucbvax!ucdavis!iris!zerkle From: zerkle@iris.ucdavis.edu (Dan Zerkle) Newsgroups: comp.sys.amiga Subject: Re: Populous for all Amigas! Message-ID: <7814@ucdavis.ucdavis.edu> Date: 11 Oct 90 19:58:49 GMT References: <32943@nigel.ee.udel.edu> Sender: usenet@ucdavis.ucdavis.edu Reply-To: zerkle@iris.ucdavis.edu (Dan Zerkle) Organization: U.C. Davis - Department of Electrical Engineering and Computer Science Lines: 51 In article <32943@nigel.ee.udel.edu> lawsonse@vttcf.cc.vt.edu (Shannon Lawson) writes: > >After talking with many Populous owners, it appears to me that the reason the >game will not run on any other processor but the 68000 is due to the copy >protection scheme encoded on the disk. To back up their claim, some of these >same folks have mentioned that if a backup is made with a copier which removes >protection, the game runs. In the beginning of the RKM Libraries and Devices, there is a note that says to never use self-modifying code. In order to make copy protection harder to remove, loaders often encrypt those parts of the code which deal with the copy protection, then decrypt it right before execution. This is practically an automatic lose for any CPU that has an instruction cache but no coherency scheme. The MC68020 and 030 both have instruction caches built-in. These caches are not written to when the memory to which they correspond is modified, so coherency is lost when modifying code in the instruction cache. Since whatever is remaining in the caches has not been decrypted, the CPU is basically executing garbage, and the machine crashes. This is different than the external caches you often see for Intel-based machines. Those architectures typically use a write-through protocol, in which any modifications are made to both the cache and the memory. Also, those external caches do not typically discriminate between code and data, but rather just consider them as memory references. The cache problem can be avoided on 68000 machines that have accellerators (A2500, GVP-enhanced, whatever) by using the 68000. Some systems let you turn off the cache in their accellerators. Unfortunately, neither of these is an option in the A3000, which has only a 68030, and no option for turning off the caching. In any case, turning off the cache results in reduced performance. Since it has been discussed at length, I won't say why, but I personally detest hardware-based copy protection. As one way to help alleviate the problem, I suggest you not only write to publishers, but also write to magazines that review software (especially games) and ask them to list the following with their reviews: 1. Is it hard drive installable? 2. Does it work on a 68020/68030/ A3000 system? 3. Does it work under 2.0? If magazines publish this information, software publishers may notice they don't look good when they make their software useless to a large segment of their potential market. Knowing their personality, I think .info might be a good place to start in getting them to add this to their reviews. Dan Zerkle zerkle@iris.ucdavis.edu (916) 754-0240 Amiga... Because life is too short for boring computers.