ftp.nice.ch/pub/next/developer/languages/c/gcc.2.7.2.2.N.b.tar.gz#/lib/gcc-lib/m68k-next-nextstep3/2.7.2.2.f.2/include/architecture/m68k/intr.h

This is intr.h in view mode; [Download] [Up]

/*	@(#)intr.h	1.0	10/16/91	(c) 1991 NeXT Computer Inc.	*/

/* 
 * HISTORY
 * 16-Oct-91  John Seamons (jks) at NeXT
 *	Split out from cpu.h.
 */
 
#ifndef	_M68K_INTR_
#define	_M68K_INTR_

/*
 * Interrupt structure.
 * BASE and BITS define the origin and length of the bit field in the
 * interrupt status/mask register for the particular interrupt level.
 * The first component of the interrupt device name indicates the bit
 * position in the interrupt status and mask registers; the second is the
 * interrupt level; the third is the bit index relative to the start of the
 * bit field.
 */
#define	I(l,i,b)	(((b) << 8) | ((l) << 4) | (i))
#define	I_INDEX(i)	((i) & 0xf)
#define	I_IPL(i)	(((i) >> 4) & 7)
#define	I_BIT(i)	( 1 << (((i) >> 8) & 0x1f))

#define	I_IPL7_BASE	0
#define	I_IPL7_BITS	2
#define	I_NMI		I(7,0,31)
#define	I_PARITY_ADBNMI	I(7,1,30)

#define	I_IPL6_BASE	2
#define	I_IPL6_BITS	12
#define	I_TIMER		I(6,0,29)
#define	I_ENETX_DMA	I(6,1,28)
#define	I_ENETR_DMA	I(6,2,27)
#define	I_SCSI_DMA	I(6,3,26)
#define	I_OPTICAL_DMA	I(6,4,25)	/* dma 313 chip */
#define	I_PRINTER_DMA	I(6,5,24)
#define	I_SOUND_OUT_DMA	I(6,6,23)
#define	I_SOUND_IN_DMA	I(6,7,22)
#define	I_SCC_DMA	I(6,8,21)	/* dma 313 chip */
#define	I_DSP_DMA	I(6,9,20)

#define	I_IPL5_BASE	14
#define	I_IPL5_BITS	3
#define	I_SCC		I(5,0,17)
#define	I_REMOTE	I(5,1,16)
#define	I_BUS		I(5,2,15)

#define	I_IPL4_BASE	17
#define	I_IPL4_BITS	1
#define	I_DSP		I(4,0,14)

#define	I_IPL3_BASE	18
#define	I_IPL3_BITS	12
#define	I_VIDEO		((dma_chip != 313)? I(3,0,13) : I(3,8,5))
#define	I_C16_VIDEO	I(3,0,13)	/* Warp 9C */
#define	I_OPTICAL	I(3,0,13)	/* dma 313 chip */
#define	I_SCSI		I(3,1,12)
#define	I_PRINTER	I(3,2,11)
#define	I_ENETX		I(3,3,10)
#define	I_ENETR		I(3,4,9)
#define	I_SOUND_OVRUN	I(3,5,8)
#define	I_FLOPPY	I(3,6,7)
#define	I_SPARE_3	I(3,7,6)
#define	I_VIDEO_IN	I(3,8,5)
#define	I_MONITOR	I(3,9,4)
#define	I_KYBD_MOUSE	I(3,10,3)
#define	I_RTC		I(3,11,2)

#define	I_IPL2_BASE	30
#define	I_IPL2_BITS	1
#define	I_SOFTINT1	I(2,0,1)

#define	I_IPL1_BASE	31
#define	I_IPL1_BITS	1
#define	I_SOFTINT0	I(1,0,0)

#endif

These are the contents of the former NiCE NeXT User Group NeXTSTEP/OpenStep software archive, currently hosted by Netfuture.ch.