dale@amiga.UUCP (Dale Luck) (10/26/85)
The exec library supplies a function 'GetCC()' which returns the value of the condition codes in d0. This was done because the 68000 does not have such an instruction but does have the privileged instruction move from sr. This is guaranteed to work regardless of which processor you have. The Amiga 1000 currently assumes a 68000 stack frame during address/bus error processing. Of course you will never run into this problem if you only write and run perfect code. The only other time that the stack frame is important is during the call to Supervisor() if the task is already in supervisor mode then a 68000 style stack frame is created so the supervisor code will rte correctly. For more information you will have to read the ROM Kernel manual. This is again a problem that we have never seen surface since all user code and most of the system software runs in USER mode. None of the code that we have or used that runs in supervisor mode calls Supervisor().