Google
 

Trailing-Edge - PDP-10 Archives - k20v7d - unsupported/rp0x.mac
There are no other files named rp0x.mac in the archive.
	UNIVERSAL DEFS -- RP0X specific macro definitions for RDREG
	SUBTTL	N. B. Mahoney/NBM


;This file contains the RP04/5/6 specific macro definitions for RDREG
;to interpret the RP04/5/6 massbus registers.  The format of the macros
;is decribed when each macro is defined.


	.DIRECTIVE .XTABM,FLBLST,.NOBIN
	SALL


;Copyright (C) 1980,1981,1982,1983 by
;Digital Equipment Corporation, Maynard, Mass.
;
;
;This software is furnished under a license and may be used and copied
;only  in  accordance  with  the  terms  of  such license and with the
;inclusion of the above copyright notice.  This software or any  other
;copies thereof may not be provided or otherwise made available to any
;other person.  No title to and ownership of the  software  is  hereby
;transferred.
;
;The information in this software is subject to change without  notice
;and  should  not  be  construed  as a commitment by Digital Equipment
;Corporation.
;
;Digital assumes no responsibility for the use or reliability  of  its
;software on equipment which is not supplied by Digital.


	RPXVER==1		;Major version
	RPXMIN==0		;Minor version
	RPXEDT==0		;Edit number
	RPXWHO==0		;Who edited
	SUBTTL	Assembly parameters and drive type register definitions


;The following definition controls whether RDREG will ask for the
;DATAO/DATAI drive select field in addition to the RH20 device
;code.  For those devices that are always in massbus slot 0 (the
;DX20 for example), set FTDSEL to a 0 and RDREG will always use
;a drive select field of zero.  For those devices that do require
;a drive select code, set FTDSEL to -1 and RDREG will ask for and
;use the drive select value specified by the user.

FTDSEL==-1			;Need drive select for RP0X's




;The following macro defines the drive type register values for those
;devices that we can interpret.  The arguments to the DTRTYP macro
;are as follows:
;
;	1 - Octal value of drive type (right 9 bits)
;	2 - Corresponding mnemonic for this drive type (this mnemonic
;	    is used in the second level macro definitions below)

DEFINE DRVTYP,<
	DTRTYP	20,RP04		;;RP04s have a DT of 20
	DTRTYP	21,RP05		;;RP05s have a DT of 21
	DTRTYP	22,RP06		;;RP06s have a DT of 22
>
	SUBTTL	First level massbus register definitions


;The following macro defines the registers that we want to read and
;interpret in the device.  The arguments to the XX macro are as
;follows:
;
;	1 - Massbus register number (register select field)
;	2 - Mnemonic for the register
;
;Note that the CONI definition MUST be first.  RDREG depends on this
;and will work incorrectly if it is not.

DEFINE REGS,<
	XLIST
	XX	0,CONI		;;CONI - Must be first
	XX	0,CR		;;Control register
	XX	1,SR		;;Status register
	XX	2,ER		;;Error register
	XX	3,MR		;;Maintenance register
	XX	4,AS		;;Attention summary register
	XX	5,DTSA		;;Desired track/Sector address
	XX	6,DT		;;Drive type register
	XX	7,LAR		;;Look ahead register
	XX	11,OFR		;;Offset register
	XX	12,DCR		;;Desired cylinder register
	XX	13,CCR		;;Current cylinder register
	XX	14,ER2		;;Error register 2
	XX	15,ER3		;;Error register 3
	XX	16,EPO		;;ECC position register
	XX	17,EPA		;;ECC pattern register
	XX	70,SBAR		;;Secondary block address register
	XX	71,STCR		;;Secondary transfer control register
	XX	72,PBAR		;;Primary block address register
	XX	73,PTCR		;;Primary transfer control register
	XX	74,IVIR		;;Interrupt vector index register
	LIST
>
	SUBTTL	Second level massbus register definitions


;The following macros define the bits and fields in each of the
;massbus registers that we want to interpret.  For each massbus
;register mnemonic that we defined in the first level macro definition
;above, we define a macro with the same name here that gives the
;bit and field definitions for that register.  The arguments to
;the FIELDS macro are as follows:
;
;	1 - The bit mask of the bit or field in the 36 bit word
;	2 - The text associated with the bit or field
;	3 - One of BIT, VAL, or NVAL to indicate that this entity is a
;	    bit, a field containing a positive number, or a field containing
;	    a negative number, repectively.  RDREG only interprets BIT values
;	    if the bit is on.  VAL values are always printed as a field. NVAL
;	    values are first negated and then always printed as a field.
;	4 - Either ALL or one of the drive type mnemonics defined by
;	    the DRVTYP macro above.  ALL values are interpreted for
;	    all of the legal drive types. Values that are given with
;	    a specific drive type mnemonic are only interpreted if the
;	    device is of that drive type.


DEFINE CR,<
	FIELDS	1B35,<Go>,BIT,ALL
	FIELDS	37B34,<Fnc>,VAL,ALL
	FIELDS	1B24,<DVA>,BIT,ALL
>

DEFINE SR,<
	FIELDS	1B20,<Attention>,BIT,ALL
	FIELDS	1B21,<Composite err>,BIT,ALL
	FIELDS	1B22,<Pos in Progress>,BIT,ALL
	FIELDS	1B23,<On-line>,BIT,ALL
	FIELDS	1B24,<Write lock>,BIT,ALL
	FIELDS	1B25,<Last Sector>,BIT,ALL
	FIELDS	1B26,<Programmable>,BIT,ALL
	FIELDS	1B27,<Drive present>,BIT,ALL
	FIELDS	1B28,<Drive ready>,BIT,ALL
	FIELDS	1B29,<Valid Vol>,BIT,ALL
	FIELDS	1B30,<Diff eq one>,BIT,RP04
	FIELDS	1B31,<Diff lt sixfour>,BIT,RP04
	FIELDS	1B32,<Go Reverse>,BIT,RP04
	FIELDS	1B33,<Drv inner guard>,BIT,RP04
	FIELDS	1B34,<Drv fwrd twenty>,BIT,RP04
	FIELDS	1B35,<Drv fwrd five>,BIT,RP04
>

DEFINE ER,<
	FIELDS	1B35,<ILF>,BIT,ALL
	FIELDS	1B34,<ILR>,BIT,ALL
	FIELDS	1B33,<RMR>,BIT,ALL
	FIELDS	1B32,<Par err>,BIT,ALL
	FIELDS	1B31,<FMT err>,BIT,ALL
	FIELDS	1B30,<Wr clock fail>,BIT,ALL
	FIELDS	1B29,<ECC hard err>,BIT,ALL
	FIELDS	1B28,<Hdr compare err>,BIT,ALL
	FIELDS	1B27,<Hdr CRC err>,BIT,ALL
	FIELDS	1B26,<Addr overflow err>,BIT,ALL
	FIELDS	1B25,<Invalid addr err>,BIT,ALL
	FIELDS	1B24,<Wr lock err>,BIT,ALL
	FIELDS	1B23,<Drive Tim err>,BIT,ALL
	FIELDS	1B22,<Op Incomp>,BIT,ALL
	FIELDS	1B21,<Unsafe>,BIT,ALL
	FIELDS	1B20,<Data check>,BIT,ALL
>
DEFINE MR,<
	FIELDS	1B35,<Diag Mode>,BIT,ALL
	FIELDS	1B34,<Maint clock>,BIT,ALL
	FIELDS	1B33,<Maint Index>,BIT,ALL
	FIELDS	1B32,<Maint sector clock>,BIT,ALL
	FIELDS	1B31,<Maint read>,BIT,ALL
	FIELDS	1B30,<Maint write>,BIT,ALL
	FIELDS	1B29,<ECC env>,BIT,ALL
	FIELDS	1B28,<Data env>,BIT,ALL
	FIELDS	1B27,<Zero detect>,BIT,ALL
	FIELDS	1B26,<Sbyte detect>,BIT,ALL
	FIELDS	1B25,<Hi count detect>,BIT,ALL
>

DEFINE AS,<
	FIELDS	377B35,<Attentions>,VAL,ALL
>

DEFINE DTSA,<
	FIELDS	37B35,<Sector addr>,VAL,ALL
	FIELDS	37B27,<Track addr>,VAL,ALL
>

DEFINE DT,<
	FIELDS	777B35,<Drive type>,VAL,ALL
	FIELDS	1B24,<Drive Request>,BIT,ALL
	FIELDS	1B22,<Moving Head>,BIT,ALL
	FIELDS	1B21,<Tape drive>,BIT,ALL
	FIELDS	1B20,<No blk Adr>,BIT,ALL
>

DEFINE LAR,<
	FIELDS	3B31,<Exten field>,VAL,ALL
	FIELDS	37B29,<Sector count>,VAL,ALL
>

DEFINE OFR,<
	FIELDS	377B35,<Offset>,VAL,ALL
	FIELDS	1B25,<Hdr compare inh>,BIT,ALL
	FIELDS	1B24,<ECC inh>,BIT,ALL
	FIELDS	1B23,<Format>,BIT,ALL
	FIELDS	1B20,<Sign change>,BIT,ALL
>

DEFINE DCR,<
	FIELDS	777B35,<Des cyl addr>,VAL,RP04
	FIELDS	1777B35,<Des cyl addr>,VAL,RP06
>

DEFINE CCR,<
	FIELDS	777B35,<Curr cyl addr>,VAL,RP04
	FIELDS	1777B35,<Curr cyl addr>,VAL,RP06
>

DEFINE ER2,<
	FIELDS	1B35,<Wr curr unsafe>,BIT,ALL
	FIELDS	1B34,<Curr sink fail>,BIT,ALL
	FIELDS	1B33,<Wr sel unsafe>,BIT,ALL
	FIELDS	1B32,<Curr switch unsafe>,BIT,ALL
	FIELDS	1B31,<Motor seq err>,BIT,RP04
	FIELDS	1B31,<Read Write>,BIT,RP06
	FIELDS	1B30,<Trans detect fail>,BIT,ALL
	FIELDS	1B29,<Trans unsafe>,BIT,ALL
	FIELDS	1B28,<Failsafe ena>,BIT,RP04
	FIELDS	1B28,<Abnormal stop>,BIT,RP06
	FIELDS	1B27,<Write unsafe>,BIT,ALL
	FIELDS	1B26,<Mult head sel>,BIT,ALL
	FIELDS	1B25,<No head sel>,BIT,ALL
	FIELDS	1B24,<Index err>,BIT,ALL
	FIELDS	1B23,<Thirty V unsafe>,BIT,RP04
	FIELDS	1B22,<Phase lock oscl unsafe>,BIT,ALL
	FIELDS	1B20,<AC unsafe>,BIT,RP04
>

DEFINE	ER3,<
	FIELDS	1B35,<Pack spd unsafe>,BIT,RP04
	FIELDS	1B35,<DC volt unsafe>,BIT,RP06
	FIELDS	1B34,<Velocity unsafe>,BIT,RP04
	FIELDS	1B34,<Write offset>,BIT,RP06
	FIELDS	1B32,<Unsafe>,BIT,RP04
	FIELDS	1B31,<thirtyfive V unsafe>,BIT,RP06
	FIELDS	1B30,<DC V unsafe>,BIT,ALL
	FIELDS	1B29,<AC V unsafe>,BIT,ALL
	FIELDS	1B22,<Op plug err>,BIT,RP06
	FIELDS	1B21,<Seek incomp>,BIT,ALL
	FIELDS	1B20,<Off cyl>,BIT,ALL
>

DEFINE EPO,<
	FIELDS	17777B35,<ECC err loc>,VAL,ALL
>

DEFINE EPA,<
	FIELDS	3777B35,<ECC mask>,VAL,ALL
>

DEFINE SBAR,<
	FIELDS	177777B35,<Bl addr or Fr cnt>,VAL,ALL
>

DEFINE STCR,<
	FIELDS	1777B29,<Block cnt>,NVAL,ALL
	FIELDS	77B35,<Command>,VAL,ALL
>

DEFINE PBAR,<
	FIELDS	177777B35,<Bl addr or Fr cnt>,VAL,ALL
>

DEFINE PTCR,<
	FIELDS	1777B29,<Block cnt>,NVAL,ALL
	FIELDS	77B35,<Command>,VAL,ALL
>

DEFINE IVIR,<
	FIELDS	777B35,<Interrupt vector>,VAL,ALL
>
DEFINE	CONI,<
	FIELDS	1B18,<DB par err>,BIT,ALL
	FIELDS	1B19,<Drv exc>,BIT,ALL
	FIELDS	1B20,<Long WC>,BIT,ALL
	FIELDS	1B21,<Short WC>,BIT,ALL
	FIELDS	1B22,<Chan err>,BIT,ALL
	FIELDS	1B23,<Drive resp err>,BIT,ALL
	FIELDS	1B24,<Reg acc err>,BIT,ALL
	FIELDS	1B25,<Chan rdy>,BIT,ALL
	FIELDS	1B26,<Overrun>,BIT,ALL
	FIELDS	1B27,<MBE>,BIT,ALL
	FIELDS	1B28,<Attn>,BIT,ALL
	FIELDS	1B29,<STCR full>,BIT,ALL
	FIELDS	1B30,<AIE>,BIT,ALL
	FIELDS	1B31,<PTCR full>,BIT,ALL
	FIELDS	1B32,<Done>,BIT,ALL
	FIELDS	7B35,<PI>,VAL,ALL
>


	END