.NLIST ; ;IBP.MAC ;PARAMETER DEFINITION FILE FOR IBV-11A ; ; COPYRIGHT (C) 1976 ; ; DIGITAL EQUIPMENT CORPORATION ; MAYNARD, MASSACHUSETTS 01754 ; ; THIS SOFTWARE IS FURNISHED UNDER A LICENSE FOR USE ONLY ; ON A SINGLE COMPUTER SYSTEM AND MAY BE COPIED ONLY 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 EXCEPT FOR USE ON SUCH SYSTEM AND TO ; ONE WHO AGREES TO THESE LICENSE TERMS. TITLE TO AND OWNERSHIP OF THE ; SOFTWARE SHALL AT ALL TIMES REMAIN IN DIGITAL. ; ; THE INFORMATION IN THIS DOCUMENT 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. ; ; ;AUTHOR: SRA ; JULY 1976 ; ; ;DEFINE VERSION NUMBER .MACRO VERSN X .GLOBL IB'X IB'X=0 .ENDM ; ;VERSION NAMED IN IB1.MAC ; ;*************************************************** ; ;SYSTEM VERSION PARAMETERS ; ;DEFINE =1 =0 TO GET ; ; $RT11 RT-11 STAND ALONE ; .IIF NDF $RT11, $RT11=1 ;DEFAULT TO RT11 VERSION ; ;INTERRUPT PRIORITY LEVEL (NO DIFFERENCE ON LSI-11) IB.PRI=4 .IF DF $RT11 IB.INT=340 .IFF IB.INT=IB.PRI*40 .ENDC ; .IF EQ $RT11 R0=%0 R1=%1 R2=%2 R3=%3 R4=%4 R5=%5 SP=%6 PC=%7 .IFF .MCALL ..V2..,.REGDEF ..V2.. .REGDEF .ENDC ;*************************************************** ; ;BIT DEFINITIONS IN STATUS REGISTER AND DATA REGISTER ; .MACRO BITS ARG .NLIST ..$$..=200 .IRP X, .IIF NB X, X=..$$.. ..$$..=..$$../2 .ENDM .LIST .ENDM ; ;IB STATUS REGISTER HIGH (IB.SRH) BITS ;IB STATUS REGISTER LOW (IB.SR) BITS ;IB DATA REGISTER HIGH (IB.DRH) BITS ;IB DATA REGISTER LOW (IB.DR) BITS ;*************************************************** ; ;MACROS OF SOME UTILITY ; .MACRO CALL ARG .NLIST JSR PC,ARG .LIST .ENDM ; RETURN=207 ; .MACRO PUSH ARG .NLIST .IRP X, MOV X,-(SP) .ENDM .LIST .ENDM ; .MACRO POP ARG .NLIST .IRP X, MOV (SP)+,X .ENDM .LIST .ENDM ;*************************************************** ; MACROS FOR NAMING CSECTS ; USED TO LINK DIFFERENT VERSIONS ; .MACRO NXTCST N .CSECT IB'N .ENDM ; .MACRO NXTSEC $$CSECT=$$CSECT+1 NXTCST \$$CSECT .ENDM ; ;*************************************************** ;ERROR HANDLING CODES ; HARD=377 SOFT=0 ;NON-FATAL ;ERROR CODES (IN LOW BYTE OF IB.STA) .ER0=1 .ER1=2 .ER2=4 LTN.F=10 ;LTN BUFFER OVERFLOWED TLK.F=20 ;TLK BUFFER OVERFLOWED ARG.F=40 ;ILL # OF ARGS TO ROUTINE RNG.F=100 ;ILL RANGE OF PARAMETER SEQ.F=140 ;IBINIT NOT YET CALLED PRO.F=200 ;VECTORS ALREADY PROTECTED OR INVALID VECTOR ;STATUS BITS (IN HIGH BYTE) DONE.F=1 SRQ.F=2 TCS.F=100 ;TCS FORCED BY SRQ ERR.F=200 ; ;MACROS FOR ARGUMENT CHECKING AND ERROR NOTIFICATION ; .MACRO IBOK.. .NLIST .GLOBL .IBERR,IB.OK TST IB.OK ;IBINIT BEEN CALLED? BNE .+10 ;YES JSR R0,.IBERR ;NO: ERROR IN SEQUENCE .BYTE HARD,SEQ.F .LIST .ENDM ; .MACRO IBARG. X,Y .NLIST .GLOBL .IBARG JSR R1,.IBARG .WORD X .IF NB Y .WORD Y-X .IFF .WORD 0 .ENDC .LIST .ENDM ; .MACRO IBERR. X,Y .NLIST .GLOBL .IBERR JSR R0,.IBERR .BYTE X,Y .LIST .ENDM ; ;*************************************************** ; ;LTN AND TLK BUFFER OFFSETS ; SIZE=0 COUNT=2 IN=4 OUT=6 END=10 START=12 ; ; END OF PARAMETER FILE ;*************************************************** .LIST