Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/18/84; site drivax.UUCP Path: utzoo!watmath!clyde!burl!ulysses!mhuxr!ihnp4!zehntel!hplabs!amdahl!drivax!steve From: steve@drivax.UUCP (Steve Williams) Newsgroups: net.micro.68k Subject: Re: 68010 replacing a 68000 Message-ID: <87@drivax.UUCP> Date: Wed, 30-Jan-85 01:49:39 EST Article-I.D.: drivax.87 Posted: Wed Jan 30 01:49:39 1985 Date-Received: Sat, 2-Feb-85 13:04:13 EST References: <301@oakhill.UUCP> Distribution: net Organization: Digital Research, Monterey, CA Lines: 21 > 3) The MC68000/008 user instruction MOVE SR, was made privileged to > allow for complete support for virtual machine systems. There are two > ways to provide for compatibility here: > A) change the user MOVE SR, code to use the new MC68010 > instruction MOVE CCR, which has the same functionality > but is not privileged. (It returns zeroes for the supervisor > portion of the Status Register.) > B) Include a small bit of code in the supervisor privileged exception > handler to simluate the MOVE SR,. This is available from > Motorola. or C) Put a small bit of code in the supervisor privileged exception handler to CHANGE the MOVE SR, to a MOVE CCR,. (Set bit 9 (200H)). This takes 10 extra lines of code. The Alcyon compiler (Regulus, CP/M-68K) generates code which uses MOVE from SR instructions to save the condition codes. We found option (a) impossible, and option (b) too slow. The performance degradation from option (c) is not noticeable. An "unlovely artiface", to be sure, but it works. -Steve