Coherent4.2.10/i386/as.inc

	.globl	__cinit
	.globl	mchinit
	.globl	i8086
	.globl	main
	.globl	gpfault
	.globl	stackfault

	.globl	_canl
	.globl	aicode		/ Position of code.
	.globl	aicode_end	/ Size of code.
	.globl	boot
	.globl	conrest
	.globl	consave
	.globl	cs_sel
	.globl	dev0
	.globl	dev1
	.globl	dev10
	.globl	dev11
	.globl	dev12
	.globl	dev13
	.globl	dev14
	.globl	dev15
	.globl	dev3
	.globl	dev4
	.globl	dev5
	.globl	dev6
	.globl	dev7
	.globl	dev8
	.globl	dev9
	.globl	envrest
	.globl	envsave
	.globl	getubd
	.globl	getupd
	.globl	getusd
	.globl	getuwd
	.globl	halt
	.globl	idt
	.globl	idtend
	.globl	int11
	.globl	kucopy
	.globl	ldt
	.globl	ldtend
	.globl	mmuupd
	.globl	mmuupdfR0
	.globl	mmuupdnR0
	.globl	putubd
	.globl	putusd
	.globl	putuwd
	.globl	putuwi
	.globl	read_cmos
	.globl	sdata
	.globl	setEmfR0
	.globl	setspace
	.globl	signal_386
	.globl	sphi
	.globl	spl
	.globl	splo
	.globl	stext
	.globl	syscall_286
	.globl	syscall_386
	.globl	trap0
	.globl	trap1_ker
	.globl	trap1_usr
	.globl	trap10
	.globl	trap11
/	.globl	trap12
/	.globl	trap13
	.globl	trap14
	.globl	trap16
	.globl	trap2
	.globl	trap3
	.globl	trap4
	.globl	trap5
	.globl	trap6
	.globl	trap7
	.globl	trap8
	.globl	trap9
	.globl	u
	.globl	ukcopy
	.globl	write_cmos

	.set	BPC1SHIFT,	10	/ BPCSHIFT - log2(sizeof(long))
	.set	BPCSHIFT,	12
	.set	BSY_ST,		0x80
	.set	CMOSA,		0x70	/ Real-time Clock/CMOS addr I/O port.
	.set	CMOSD,		0x71	/ Real-time Clock/CMOS data I/O port.
	.set	DRQ_ST,		0x08
	.set	EFAULT,		14	/ Bad argument
	.set	IBMNBSY,	0x80
	.set	JMPF,		0xEA	/ Jump far, direct.
	.set	KBCTRL,		0x64	/ 8042 keyboard mpu ctrl I/O port.
	.set	KBDATA,		0x60	/ 8042 keyboard mpu data I/O port.
	.set	LPDATA,		0x378
	.set	NBPC,		4096
	.set	NCPCL,		124	/ # of characters in a clist block
	.set	NIDT,		256
	.set	NINIT,		0x04
	.set	PBASE,		0x00002
	.set	PIC,		0x20	/ 8259 CSR  I/O port.
	.set	PICM,		0x21	/ 8259 IMR  I/O port.
	.set	PIT,		0x40	/ 8253 base I/O port.
	.set	PTABLE0_P,	0x00001
	.set	PTABLE1_V,	0xFF800
	.set	PX_ADDR,	0x67	/ displacements
	.set	PX_OPND,	0x66	/ register values & immediates
	.set	R_USR,		3	/ user level ring number
	.set	SBASE,		0xFFC00
	.set	TSS_IOMAP_LEN,	0x1000	/ number of port addresses mapped
	.set	TSS_IOMAP_OFF,	0x68	/ byte offset of io bitmap in tss
	.set	VIDEO,		0x10	/ Video BIOS interrupt for early debugging.

	.set	LPSTAT,		LPDATA+1
	.set	LPCSR,		LPDATA+2

////
/
/ Selector index values.
/
////
	.set	SEG_386_UI,	0x08	/ 32 bit code segment descriptor (user)
	.set	SEG_386_UD,	0x10 	/ 32 bit data segment descriptor (user)
	.set	SEG_386_KI,	0x18	/ 32 bit code segment descriptor (kernel)
	.set	SEG_RNG0_TXT,	0x18	/ synonym for SEG_386_KI
	.set	SEG_386_KD,	0x21	/ 32 bit data segment descriptor (kernel)
	.set	SEG_286_UI,	0x28 	/ 16 bit code segment descriptor (user)
	.set	SEG_286_UD,	0x30 	/ 16 bit data segment descriptor (user)
	.set	SEG_TSS,	0x38 	/ task segment descriptor (386 mode)
	.set	SEG_ROM,	0x40	/ ROM descriptor
	.set	SEG_VIDEOa,	0x48	/ 0x48: video descriptor @ B0000
	.set	SEG_VIDEOb,	0x50	/ 0x50: video descriptor @ B8000
	.set	SEG_386_II,	0x58	/ 32 bit code segment (kernel init)
	.set	SEG_386_ID,	0x60	/ 32 bit data segment (kernel init)
	.set	SEG_286_UII,	0x68 	/ 16 bit code, sep I/D (user)
	.set	SEG_LDT,	0x70	/ local descriptor table index in GDT
	.set	SEG_RNG0_STK,	0x78	/ Stack for ring 0 CPL
	.set	SEG_RNG1_TXT,	0x81	/ Text for ring 1
	.set	SEG_RNG1_STK,	0x89	/ Stack for ring 1 CPL
	.set	SEG_MMUUPD,	0x91	/ call gate into ring 0
	.set	SEG_SET_EM,	0x99	/ call gate into ring 0

	.set	SEG_SRW,	0x03

	.set	SEL,	0x08
	.set	SPIC,		0xA0	/ Slave 8259 CSR I/O port.
	.set	SPICM,		0xA1	/ Slave 8259 IMR I/O port.
	.set	STROBE,	0x01
	.set	UADDR,		0x3FFFFC
	.set	U_ERROR,	0	/ Offset into u for u_error