Google
 

Trailing-Edge - PDP-10 Archives - 704rmsf2 - 10,7/rms10/rmssrc/rmsglb.mac
There are 6 other files named rmsglb.mac in the archive. Click here to see a list.

TITLE	GLOBLS
SEARCH	RMSMAC

;FUNCTION:	THIS MODULE CONTAINS ALL GLOBAL VARIABLES WHICH
;		ARE USED BY EACH RMS-20 USER.
;		HOWEVER IT DEFINES THEM AS SYMBOLS RATHER THAN DATA.
;		ON THE 20, THE UNDERLYING PAGES ARE CREATED AUTOMATICALLY.
;		ON THE 10, THE CREATE-PAGE FUNCTION OF PAGE. UUO IS USED
;		TO CREATE THE UNDERLYING PAGES.
;
;
;THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY ONLY BE USED
;  OR COPIED IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE.
;
;!COPYRIGHT (C) 1977, 1979 BY DIGITAL EQUIPMENT CORPORATION
;
;
;AUTHOR:	S. BLOUNT
;
;
;**********	TABLE OF CONTENTS	**************
;
;
;
;
;	ROUTINE			FUNCTION
;	=======			========
;
;	GLOBALS			GLOBAL DECLARATIONS
;
;
;
;
;REVISION HISTORY:
;
;EDIT	DATE		WHO		PURPOSE
;====	====		===		=========
;
;1	28-JUL-76	SB		ADD DEXTR1
;2	1-NOV-76	SB		ADD FDBWORD1
;3	28-NOV-76	SB		ADD CBD
;4	1-APR-77	SB		ADD SAVEDCF
;5	8-OCT-79	AU		ADD 'RMSTACK' FOR INTERNAL USE
;
;*************************************************
;*						*
;*		NEW REVISION HISTORY		*
;*						*
;*************************************************
;
;PRODUCT	MODULE	 SPR
; EDIT	 EDIT	 QAR		DESCRIPTION
;======	======	=====		===========
;
;
;	***** END OF REVISION HISTORY *****
;

SUBTTL	GLOBAL DATA DCLS

; DCL$GL - DEFINE GLOBAL AS SYMBOL AND UPDATE CURR OFFSET INTO GLOBS AREA
;
DEFINE DCL$GL(NAME$,SIZE$)<
	NAME$=:RMS$$G + G$OFFS		;;DEFINE LOCATION OF SYMBOL
	G$OFFS==G$OFFS+SIZE$		;;HOP OVER THE BLOCK SO DEFINED
>

EXTERN	RMS$$G				;STARTING ADDR OF GLOBALS SET IN LINK CMD LIST
G$OFFS==0				;INIT OFFSET

PDLNG=:^D750				;SIZE OF RMS'S STACK
					;SET IT SUCH THAT GLOBS AREA LT 2 PAGES

MAXLEV==^D15				;KLUDGE: REAL DEF IN RMSLIB.REQ
MAXKSZW==^D64				;KLUDGE: REAL DEF IN RMSLIB.REQ

DCL$GL	(    RMSTACK, PDLNG)		;ONLY RMS STACK ON 1ST PAGE OF GLOB AREA
					; RMS INIT CODE (IN RMSOSM) NEEDS THIS

DCL$GL	(    BUGFLG,1)			; VERBOSITY LEVEL OF DEBUGGING
DCL$GL	(    BUGCOD,	1)		; ADDRESS OF ERROR STRING FOR LAST BUG MESSAGE
DCL$GL	(    ROUTINENAME,1)		; NAME OF CURRENT ROUTINE IN USE
DCL$GL	(    SAVEDCF,1)		; SAVE THE OLD CF HERE IN CARGS
DCL$GL	(    ERRORROUTINE,1)		; ADDRESS OF ERROR ROUTINE ON I/O ERROR
DCL$GL	(    INTFLG,	1)		; FLAG FOR 1ST CALL
DCL$GL	(    NUMFREEPAGES, 1)		; CONTAINS # OF FREE CORE PAGES
DCL$GL	(    FRECOR,	1)		; FIRST PAGE OF FREE CORE
						;ADDRESS ABSOLUTELY BECAUSE SIZE
						;OF SYMTAB UNKN EXCEPT BY INSPEC
DCL$GL	(    PAGTAB,	760-640)	; FSM PAGE-TAB (ALLOC MORE THAN ENUF P)
DCL$GL	(    PLOGPAGE,	1)		; FREE PAGE # USED DURING OPEN FOR PROLOGUE
DCL$GL	(    USERAC,	20)	; STORE USER AC'S HERE
DCL$GL	(    UJSYS,	1)		; STORE USER JSYS HERE
DCL$GL	(    RETPC,	1)		; STORE USER RETURN PC HERE
DCL$GL	(    USRSTS,	1)		; CONTAINS USER ERROR CODE
DCL$GL	(    USTOSF,	1)		;USER STAT TO USE IF OS FAILURE
DCL$GL	(    RMSSTS,	1)		; CONTAINS RMS STATUS WORD
DCL$GL	(    USRSTV,	1)		; ADDITIONAL STATUS INDORMATION
DCL$GL	(    ACC$1,	1)		; STORAGE FOR REGISTER 1 ON AN IO ERROR
DCL$GL	(    ACC$2,	1)		; SAME FOR REGISTER 2
DCL$GL	(    ACC$3,	1)		; SAME FOR REGISTER 3
DCL$GL	(    DVFLGS,	1)		; FLAGS FROM DEVCHR JSYS
DCL$GL	(    FDBWORD1,	1)		; FIRST WORD OF FILE'S FDB
DCL$GL	(    USERJFN,	1)		; TEMP STORAGE FOR JFN DURING $OPEN/$CREATE
DCL$GL	(    ERRADR,	1)		; ADDRESS OF USER ERROR ROUTINE
DCL$GL	(    OAFLAGS,	1)		; NON-ZERO IF $CRE/$OP FAILED AFTER FILE OPENED
DCL$GL	(    PB,	1)		; ADDRESS OF USER RAB/FAB
DCL$GL	(    FAB,	1)		; POINTER TO USER FAB
DCL$GL	(    RAB,	1)		; POINTER TO USER RAB
DCL$GL	(    RABUTL,	1)		; POINTER TO USER RAB CURR FOR $UTLINT
DCL$GL	(    FPT,	1)		; POINTER TO FILE PROLOGUE
DCL$GL	(    FST,	1)		; POINTER TO USER FST
DCL$GL	(    RST,	1)		; POINTER TO USER RST
DCL$GL	(    CBD,	1)		; POINTER TO CURRENT BUCKET DESCRIPTOR
DCL$GL	(    ADB,	1)		; POINTER TO AREA DESCRIPTOR BLOCK
DCL$GL	(    KDB,	1)		; POINTER TO CURRENT KEY DESCRIPTOR BLOCK
DCL$GL	(    DEXTR1,	1)		; DUMMY EXTERNAL USED TO PASS AC VALUES
DCL$GL	(    BUFACC,	1)		; COUNT OF BUFFER ACCESSES ( CALLS TO 'GETBUF')
DCL$GL	(    BFOUND,	1)		; COUNT OF BUFFERS FOUND BY GETBUF
DCL$GL	(    BFAULT,	1)		; COUNT OF BUFFERS NOT FOUND
DCL$GL	(    BFCORE,	1)		; COUNT OF FREE CORE BUFFERS

DCL$GL	(    PATH, MAXLEVELS)		; REMEMBERS INDEX PATH FOR UPDATING
DCL$GL	(    LOOP1,	1)		; SPECIAL LOOP LOCATIONS CALLED
DCL$GL	(    LOOP2,	1)		; ..BY INSRTUDR. THEY MUST BE HERE
DCL$GL	(    LOOP3,	1)		; ..'CAUSE THE INSTRUCTIONS ARE BUILT
DCL$GL	(    TBUFFER,MAXKSZW)	; BUFFER USED TO HOLD USER KEY
;
DC$MES					; DCLS FOR RMSMES, DESC OF FIELDS THERE
;
;%([***THE FOLLOWING DECLARATIONS ARE TEMPORARY. THEY ARE USED ***])%
;%([***BY ROUTINES IN THE MODULE 'RMSOTS.MAC'. ONCE THE MEMORY ***])%
;%([***MANAGER JSYS IS AVAILABLE THESE DECLARATIONS CAN BE     ***])%
;%([***TAKEN OUT.					      ***])%
;
DCL$GL	(RMSAC,	20)		; SAVE RMS'S REGISTERS
DCL$GL	(FUNC,	1)
DCL$GL	(ERRCOD,	1)
DCL$GL	(STAT,	1)
DCL$GL	(ARG1,	1)
DCL$GL	(ARG2,	1)
;
;%([***		END OF TEMPORARY DECLARATIONS		***])%
;
DCL$GL	(    RMSEND, 0 )		; THE LAST LOCATION OF RMS

FREEPAGES=:757-<RMSEND_-9>		; # OF PAGES USED BY FSM
					;CAN BE RESET AT LINK TIME WITH /DEFINE
					;DOES NOT APPLY FOR RMSCOB

END