;	SYSTEM EQUATES
;the WDT in this bank is the original one. It is used for various sequencing
;chores.  The WDTimeout reg is a hardware constraing.
;Bank 0 Registers
	IN0		=	00	; INPUT BYTE 2
	IN1		=	01	; INPUT BYTE 1, where zap status is
	EC		=	02	; E CNTR
	LFC		=	03	; LF CNTR
	CopyCnt		=	04	; Copy CNTR
	TEMP		=	05	; TEMP REG
	SC		=	06	; STATE CNTR
	FLG1		=	07	; FLAG REG 1
	MSC		=	08	; MOTION SENSE CNTR
	FLG2		=	09	; FLAG REG 2
	XC		=	0A	; EXTENDER CNTR
	WDT		=	0B	; WATCH DOG CNTR
	FC		=	0C	; FUSER CNTR
	Temp1		=	0D	;Background Temp reg
	MCL		=	0E	; M CNTR LOW BYTE
	MCH		=	0F	; M CNTR HIGH BYTE
	MCEnable	=	00;	M Cntr Enable: active High

;Contents of Bank 0 registers
;FLG1
	ECEnable	=	01;	E counter enable
	MotCounter	=	05;
	MotSenseDelayFlag =	06;
;FLG2
	FCEnable	=	01;	Fuser counter enable
;Bank 1 Registers
	uartcom	=	00	; uart command register
	UFLAG	=	01	; uart  status flags register
	uflag2	=	02
	IN2		=	03;	right now we get 50/60~ strap info
						;from here.
	UartTemp	=	04;	;used for masking Display Status commands
	MoreFlags	=	05;	Currently holds "LargeDocMadeIt"

	testcounter	=	08
	uartstat	=	09	; uart status register
	ROUT2		=	0B;	output holding registers
	ROUT3		=	0C

;Contents of Bank 1 registers
;IN2
	TrailEdge		=	05;  Switch that is low when paper on it.
	SixtyHertzBit		=	06;  If on, we're thumping at 60 hertz.
	LargeDoc			=	07;  If on,  have large doc tray in.


;MoreFlags:
	NoPaper		=	01;  This is set when we run out of paper and
					;	zero'd when "paper refilled" is sensed.
	FuserToggle		=	02;	This bit is used to cycle the fuser to
					;	1/2 power.

;Bank 2 Registers
	ROW		=	00
	COL		=	01
	DSP		=	02
	KBDREG		=	03
	CPYSEL		=	04;
	DSPTENS		=	05;
	DSPONES		=	06;
	TEMP4		=	07;
	TEMP5		=	08;
	TEMP6		=	09;
	ZEROFLG		=	0A;
	ROUT0		=	0B;
	ROUT1		=	0C;	MUST BE IN[8..F]
	WDTtimeout		=	0D;
	Buttons		=	0f;	an assortment of keys from kbd

;Bank 3 registers
	SAVET		=	048.;
	SavetRel		=	00;
	SR		=	049.;
	SaverRel	=	01;
;Bits
	TENENT		=	01;
	ONEENT		=	00;
	BLANK		=	00;
	ZCROSSING	=	05;
	EXTF		=	0C;	External interrupt mask
	NTestSW	=	00;	the test switch has been set. ACTIVE LOW!!
					;(see Buttons)

;Some Locations
	INPUT0		=	00;	zap status
	INPUT1		=	01;INTERRUPT STATUS
	INPUT2		=	02;	50/60~ information
	OUT0		=	03;
	OUT1		=	04;
	OUT2		=	05;
	OUT3		=	06;

;how about some constants, too?
	Bit0		=	00
	Bit1		=	01
	Bit2		=	02
	Bit3		=	03
	Bit4		=	04
	Bit5		=	05
	Bit6		=	06
	Bit7		=	07
	AllOnes		=	0FF;
	ZERO		=	00;

;Names of register banks
	Bank0	=	00;
	Bank1	=	01;
	Bank2	=	02;
	Bank3	=	03;

;I/O constants
;OUTPUTS:
;OUT0
	OFFLINE		=	02;
	ONLINE		=	03
	Diagnostics	=	04;
;OUT1
	LEDRTN		=	0	
	LEDONE		=	1
	LEDTEN 		=	2
	Nchargeon	=	05;	this is active low in the Gnat
;OUT2
	laserBeam		=	00;ACTIVE LOW. when set, generating test pattern, if not serving
				;This OR's with live video when a server.
	devbias		=	01
	ROShold		=	05
	ROSpullin	=	06

;OUT3
	WatchDT		=	Bit7;
	maindrve	=	01
	vacuum		=	02
	fuser		=	03
	devclutch	=	04
	scansol		=	05
	Billing		=	06

;Inputs
;Input0
	AddPaper			=	04;	active low

;Trace Outs for debugging
	Trace0	=	07	; location to dump interesting data
	Trace1	=	17
	Trace2	=	27
	Trace3	=	37
	Trace4	=	47
	Trace5	=	57
	Trace6	=	67
	Trace7	=	77
;	Trace8	=	87
;	Trace9	=	97
;	TraceA	=	A7
;	TraceB	=	B7

;	Input Bits:
	zaptherm	=	05
	OutOfPaper	=	04
	MotionSense	=	04
	KbdRow1		=	00
	KbdRow2		=	01
	KbdRow3		=	02
	KbdRow4		=	03

; uart constants
	cmdUart		=	09	; uart control addr
	dataUart	=	08	; uart send and receive data addr
	intflags	=	10	; interupting device polling addr
	combit		=	00	; command received from server
	statbit		=	01	; status needs to be sent to server
	prntbit		=	02	;print request from server i.e. make 1 print
	multibit	=	03	; delay cycle down more prints coming
	DontTransmit	=	04; Don't send character to host if set
	PSBIT		=	05	;Flag that is set when print is started
	PARBIT		=	06	;parity status holding bit
	BADCMDBIT	=	07
	RXReady		=	01; receiver ready with data

;uflag2 assignment
	pagedelbit	=	00
	patternbit	=	01	;true when generating test patterns.
;random constants
	rosconstant	=	12.	; Number of 8ms ticks to leave ros on
					;for test; determines stripe width for test

;STATUS RESPONSES TO SERVER
	warmup		=	40	;machine is warming up
	ready		=	41	;ready to feed (not running)
	jamb		=	44	;machine is jammed
	fusercold	=	49	;fuser has gotten cold while printing
	rntredy		=	4a	;printing not ready for new feed command
	ReadyToFeed	=	4b	;printing ready to feed
	StatDisplayed	=	4c	;"status displayed" response
	comrejp		=	4d	;command rejected bad parity
	comrejun	=	4e	; don't recognize command
	comrejil	=	4f	; illegal command sequence
	pgsync		=	52	;page sync
	pgdel		=	53	;page delivered to output tray
	OffLineStat		=	56;

	ClearKey	=	03A;  value sent to host when ClearKey hit and Online
	EnterKey	=	03B;	value sent to host when EnterKey hit and Online

; COMMANDS TO PRINTER
	FEEDBOT		=	40	;PRINT COMMAND
	READSTAT	=	20	;READ STATUS COMMAND
	DisplayF	=	2F	;display an F on the display
	DisplayBlank	=	3F	;display a blank on the display
	FEEDTOP		=	50
	ISTACK		=	21
	FEEDTOPSK	=	51
	FEEDBOTSK	=	41
;UART constants
	PARITY	=      03.
;intflags bit assignments
;	d0 - uart interupt flag (active high)
;	d1 - 120hz interupt (active low)