Google
 

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


;This file contains the TM78 specific macro definitions for RDREG
;to interpret the TM78 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.


	TM7VER==1		;Major version
	TM7MIN==0		;Minor version
	TM7EDT==0		;Edit number
	TM7WHO==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 TU78'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	101,TU78		;;TU78s have a DT of 101
>
	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,DTIR		;;Data Transfer Interrupt register
	XX	2,TR		;;Tape control register
	XX	4,AS		;;Attention summary register
	XX	6,DT		;;Drive type register
	XX	7,TUS		;;Tape unit status register
	XX	13,MIR		;;Motion Interrupt code register
	XX	14,MR0		;;Motion Command register 1
	XX	15,MR1		;;Motion Command register 2
	XX	16,MR2		;;Motion Command register 3
	XX	17,MR3		;;Motion Command register 4
	XX	21,HR		;;Hardware control 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
>

DEFINE DTIR,<
	FIELDS	77B35,<DT intrpt>,VAL,ALL
	FIELDS	1B27,<Drive pres>,BIT,ALL
	FIELDS	77B25,<DT fail>,VAL,ALL
>

DEFINE TR,<
	FIELDS	3B35,<Cmd addr>,VAL,ALL
	FIELDS	77B33,<Record cnt>,VAL,ALL
	FIELDS	17B27,<Skip cnt>,VAL,ALL
	FIELDS	7B23,<Format>,VAL,ALL
	FIELDS	1B20,<Suppress err repos>,BIT,ALL
>

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


DEFINE DT,<
	FIELDS	777B35,<Drive type>,VAL,ALL
	FIELDS	1B26,<Wr cont store>,BIT,ALL
	FIELDS	1B24,<Single or dual>,BIT,ALL
	FIELDS	1B23,<7 Channel>,BIT,ALL
	FIELDS	1B22,<Moving Head>,BIT,ALL
	FIELDS	1B21,<Tape drive>,BIT,ALL
	FIELDS	1B20,<Nosector Adresses>,BIT,ALL
>

DEFINE TUS,<
	FIELDS	1B31,<Data sec erase>,BIT,ALL
	FIELDS	1B30,<Maint mode>,BIT,ALL
	FIELDS	1B29,<Shared ports>,BIT,ALL
	FIELDS	1B28,<TU avail>,BIT,ALL
	FIELDS	1B27,<TU file prot>,BIT,ALL
	FIELDS	1B26,<EOT>,BIT,ALL
	FIELDS	1B25,<BOT>,BIT,ALL
	FIELDS	1B24,<PE or GCR mode>,BIT,ALL
	FIELDS	1B23,<TU rewind>,BIT,ALL
	FIELDS	1B22,<TU on-line>,BIT,ALL
	FIELDS	1B21,<TU pres>,BIT,ALL
	FIELDS	1B20,<TU ready>,BIT,ALL
>

DEFINE MIR,<
	FIELDS	77B35,<Non-data xfer int>,VAL,ALL
	FIELDS	3B27,<Attn addr>,VAL,ALL
	FIELDS	77B25,<Non-data xfer fail>,VAL,ALL
>

DEFINE MR0,<
	FIELDS	1B35,<Go>,BIT,ALL
	FIELDS	37B34,<Non-data xfer func>,VAL,ALL
	FIELDS	377B27,<Command cnt>,VAL,ALL
>

DEFINE MR1,<
	FIELDS	1B35,<Go>,BIT,ALL
	FIELDS	37B34,<Non-data xfer func>,VAL,ALL
	FIELDS	377B27,<Command cnt>,VAL,ALL
>

DEFINE MR2,<
	FIELDS	1B35,<Go>,BIT,ALL
	FIELDS	37B34,<Non-data xfer func>,VAL,ALL
	FIELDS	377B27,<Command cnt>,VAL,ALL
>

DEFINE MR3,<
	FIELDS	1B35,<Go>,BIT,ALL
	FIELDS	37B34,<Non-data xfer func>,VAL,ALL
	FIELDS	377B27,<Command cnt>,VAL,ALL
>

DEFINE HR,<
	FIELDS	377B35,<Internal data>,VAL,ALL
	FIELDS	1B27,<Hold>,BIT,ALL
	FIELDS	1B26,<Hold ack>,BIT,ALL
	FIELDS	1B25,<Wrong mbus par>,BIT,ALL
	FIELDS	1B24,<Cont bus par>,BIT,ALL
	FIELDS	1B23,<Illeg mbus reg>,BIT,ALL
	FIELDS	1B22,<ROM par err>,BIT,ALL
	FIELDS	1B21,<TM clear>,BIT,ALL
	FIELDS	1B20,<TM ready>,BIT,ALL
>

DEFINE SBAR,<
	FIELDS	177777B35,<Addr or frame cnt>,VAL,ALL
>

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

DEFINE PBAR,<
	FIELDS	177777B35,<Addr or frame cnt>,VAL,ALL
>

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

DEFINE IVIR,<
	FIELDS	777B35,<EPT rel intrpt offset>,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