boot3/Interfaces/CIncludes/M68K.h
Elliot Nunn 5b0f0cc134 Bring in CubeE sources
Resource forks are included only for .rsrc files. These are DeRezzed into their data fork. 'ckid' resources, from the Projector VCS, are not included.

The Tools directory, containing mostly junk, is also excluded.
2017-12-26 10:02:57 +08:00

66 lines
1.2 KiB
C

/*
File: M68K.h
Contains: M680x0 macros and inline functions
Written by: Craig Prouse
Copyright: © 1993 by Apple Computer, Inc., all rights reserved.
Change History (most recent first):
<1> 11/10/93 fau first checked in
<SMG2> 10/26/93 chp Added an inline NOP function. This corresponds to a PowerPC
EIEIO under 68K emulation.
<1> 8/30/93 chp first checked in
*/
#ifndef __M68K__
#define __M68K__
#ifdef m68k
// WARNING: Items defined in this file are not portable. Inclusion of this file has no
// effect unless compiling with the MPW 68K C compiler, which predefines the m68k flag.
typedef unsigned short StatusRegister;
typedef void *AddressRegister;
#pragma parameter __D0 GetA0
AddressRegister GetA0 (void) =
{
0x2008 // MOVE.L A0,D0
};
#pragma parameter __D0 GetA1
AddressRegister GetA1 (void) =
{
0x2009 // MOVE.L A1,D0
};
#pragma parameter __D0 DisableInterrupts
StatusRegister DisableInterrupts (void) =
{
0x40C0, // MOVE SR,D0
0x007C, 0x0700 // ORI #$0700,SR
};
#pragma parameter RestoreStatusRegister (__D0)
void RestoreStatusRegister (StatusRegister) =
{
0x46C0 // MOVE D0,SR
};
void NOP (void) =
{
0x4E71 // NOP
};
#endif m68k
#endif __M68K__