SGTBL	MACRO M1110  22-AUG-78 01:59  PAGE 1





      1		000000 			S$$GTB=0

SGTBL	MACRO M1110  22-AUG-78 01:59  PAGE 2





						.IIF NDF S$$GTB	.NLIST

      2						.IF	DF	S$$GTB

      3

      4						.TITLE	SGTBL

      5

      6						.IFF

      7

      8						.TITLE	SEGDF

      9

     10						.ENDC

     11

     12						.IDENT	/07/

     13					                                                                                ;**NEW**

     14					;                                                                               ;**NEW**

     15					; COPYRIGHT   1975, DIGITAL  EQUIPMENT  CORP.,  MAYNARD,   MASS.

     16					; COPYRIGHT   1976, DIGITAL  EQUIPMENT  CORP.,  MAYNARD,   MASS.

     17					; COPYRIGHT (C) 1977

     18					;                                                                               ;**NEW**

     19					; THIS SOFTWARE IS FURNISHED TO PURCHASER UNDER A LICENSE FOR USE               ;**NEW**

     20					; ON A  SINGLE COMPUTER SYSTEM AND CAN BE COPIED (WITH INCLUSION                ;**NEW**

     21					; OF DEC'S COPYRIGHT NOTICE) ONLY FOR USE IN SUCH SYSTEM, EXCEPT                ;**NEW**

     22					; AS MAY OTHERWISE BE PROVIDED IN WRITING BY DEC.                               ;**NEW**

     23					;                                                                               ;**NEW**

     24					; THE  INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT                ;**NEW**

     25					; NOTICE AND  SHOULD NOT BE CONSTRUED AS A COMMITMENT BY DIGITAL                ;**NEW**

     26					; EQUIPMENT CORPORATION.                                                        ;**NEW**

     27					;                                                                               ;**NEW**

     28					; DEC  ASSUMES NO  RESPONSIBILITY  FOR  THE  USE  OR RELIABILITY                ;**NEW**

     29					; OF ITS  SOFTWARE ON  EQUIPMENT WHICH  IS NOT SUPPLIED BY DEC.                 ;**NEW**

     30					;                                                                               ;**NEW**

     31					; VERSION 07

     32					;                                                                               ;**NEW**

     33					; D. N. CUTLER/C. MONIA 16-MAY-74                                               ;**NEW**

     34					;

     35					; MODIFICATIONS:

     36					;

     37					; NO.		DATE		PROGRAMMER

     38					; ---		----		----------

     39					;

     40					; 038		22-MAR-75	C. MONIA

     41					; 047		07-FEB-76	C. MONIA

     42					; 052		27-MAR-76	C. MONIA

     43					; JAK100	16-FEB-77	CHANGESS FOR MULTIUSER TASKS

     44					;

     45					;

     46					;+

     47					;

     48					; LOCAL MACROS

     49					;

     50					; DEFINE SEGMENT DESCRIPTOR OFFSETS, LENGTHS AND FLAGS

     51					;

     52					;SEGDF$ [DEF$G]

     53					;

     54					; WHERE:

     55					;

     56					;	DEF$G CAUSES SEGMENT DESCRIPTOR PARAMETERS TO BE

     57					;	DEFINED GLOBALLY.

SGTBL	MACRO M1110  22-AUG-78 01:59  PAGE 2-1





     58					;

     59					; THE FOLLOWING OFFSETS ARE SPECIFIED:

     60					;

     61					; TASK-BUILDER SEGMENT DESCRIPTOR OFFSETS:

     62					;

     63					;

     64					;	S$GSTS = SEGMENT STATUS (LOW BYTE). HIGH BYTE IS RESERVED.

     65					;										;JAK100

     66					;		*** NOTE ***							;JAK100

     67					;										;JAK100

     68					; THE FOLLOWING TWO LOCATIONS MUST BE ADJACENT AND IN THE SEQUENCE		;JAK100

     69					; SHOWN BELOW									;JAK100

     70					;										;JAK100

     71					;	S$GBLK = DISK BLOCK ADDRESS OF SEGMENT RELATIVE TO HEADER

     72					;	S$GBRO = R-O DISK BLOCK ADDRESS OF SEGMENT RELATIVE TO HEADER		;JAK100

     73					;	S$GLDA = VIRTUAL LOAD ADDRESS OF SEGMENT

     74					;	S$GLNG = LENGTH OF SEGMENT IN BYTES

     75					;	S$GUP  = LINK UP

     76					;	S$GDWN = LINK DOWN

     77					;	S$GNXT = LINK NEXT (LINK RIGHT)

     78					;	S$GPRV = LINK PREVIOUS (LINK LEFT)

     79					;	S$GNME = TWO WORDS CONTAINING RAD. 50 SEGMENT NAME

     80					;	S$GWDP = VIRTUAL ADDRESS OF WINDOW BLOCK DESCRIPTOR.

     81					;	S$GCST = CONTROL SECTION TABLE LIST. THE FIRST WORD CONTAINS

     82					;		 THE NUMBER OF SUB-LISTHEADS WHICH ARE IN THE FOLLOW-

     83					;		 ING WORDS.

     84					;

     85					;		*** NOTE ***

     86					;

     87					; THE FOLLOWING TWO LOCATIONS MUST BE ADJACENT AND IN THE SEQUENCE

     88					; SHOWN BELOW.

     89					;

     90					;	S$GRW = LENGTH OF READ/WRITE MEMORY ALLOCATION IN BYTES

     91					;	S$GRO = LENGTH OF READ/ONLY MEMORY ALLOCATION IN BYTES

     92					;	S$GNTB = NUMBER OF GLOBAL SYMBOL ENTRIES IN SEGMENT

     93					;	S$GSTB = SYMBOL TABLE LIST. THE FIRST WORD CONTAINS THE

     94					;		 NUMBER OF SUBLISTHEADS WHICH ARE IN THE FOLLOW-

     95					;		 ING WORDS.

     96					;	S$GUND = COUNT OF UNDEFINED SYMBOLS WITHIN THE SEGMENT

     97					;	S$GVAD = HIGHEST VIRTUAL ADDRESS IN THE SEGMENT

     98					;	S$GELT = TWO-WORD ELEMENT DESCRIPTOR LISTHEAD

     99					;	S$GATL = AUTOLOAD LISTHEAD (2 WORDS) AND COUNT OF AUTO-

    100					;		 LOAD ENTRIES (1 WORD)

    101					;	S$GMEM = HIGHEST PHYSICAL ADDRESS IN SEGMENT

    102					;	S$GROB = BASE VIRTUAL ADDRESS OF READ/ONLY ROOT

    103					;

    104					;		*** NOTE ***

    105					;

    106					; THE FOLLOWING 8 LOCATIONS MUST BE ADJACENT

    107					;

    108					;	S$GAUT = START OF SEGMENT AUTOLOAD VECTORS RELATIVE TO AUTOLOAD

    109					;		 SECTION.

    110					;	S$GAUT+2 = VIRTUAL ADDRESS OF AUTOLOAD SECTION

    111					;	S$GREG = START OF REGION DESCRIPTORS RELATIVE TO START OF REGION

    112					;		 DESCRIPTOR SECTION

    113					;	S$GREG+2 = VIRTUAL ADDRESS OF REGION DESCRIPTOR SECTION

    114					;	S$GSEG = START OF SEGMENT DESCRIPTORS RELATIVE TO START OF SEGMENT

SGTBL	MACRO M1110  22-AUG-78 01:59  PAGE 2-2





    115					;		 DESCRIPTOR SECTION

    116					;	S$GSEG+2 = VIRTUAL ADDRESS OF SEGMENT DESCRIPTOR SECTION

    117					;	S$GWND = START OF WINDOW DESCRIPTORS RELATIVE TO START OF WINDOW

    118					;		 DESCRIPTOR SECTION

    119					;	S$GWND+2 = VIRTUAL ADDRESS OF WINDOW DESCRIPTOR SECTION

    120					;

    121					;	S$GSEQ = TWO-WORD SEQUENCE ALLOCATION LISTHEAD

    122					;	S$GLGH = LENGTH OF SEGMENT DESCRIPTOR

    123					;

    124					; SEGMENT DESCRIPTOR FLAGS (IN S$GSTS):

    125					;

    126					;		*** NOTE ***

    127					;

    128					; THE POSITION OF THE FOLLOWING FOUR FLAGS MUST CORRESPOND TO THE LOCATION

    129					; OF THE TASK-RESIDENT FLAG BITS.

    130					;

    131					;

    132					;	SG$DES = SEGMENT DESCRIPTOR FLAG (ALWAYS SET)

    133					;	SG$MEM = SEGMENT IN MEMORY (1 = NO, 0=IN MEMORY)

    134					;	SG$DSK = SEGMENT HAS DISK ALLOCATION (1 = NO, 0 = YES)

    135					;	SG$RES = SEGMENT IS RESIDENT OVERLAY (1 = YES, 0 = NO)

    136					;

    137					;	SG$PHY = SEGMENT HAS PHYSICAL MEMORY ALLOCATION(1 = YES, 0=NO)

    138					;	SG$RO = SEGMENT IS READ-ONLY (1 = YES, 0 = NO)

    139					;	SG$GBL = SEGMENT NAME IS GLOBAL (1 = YES, 0 = NO)

    140					;

    141					;

    142					; TASK-RESIDENT SEGMENT DESCRIPTOR OFFSETS:

    143					;

    144					;	T$RBLK = DISK BLOCK ADDRESS(BITS 11 - 0)

    145					;	        SEGMENT FLAGS(BITS 15 - 12)

    146					;	T$RLDA = VIRTUAL LOAD ADDRESS OF SEGMENT

    147					;	T$RLNG = LENGTH OF SEGMENT IN BYTES

    148					;	T$RUP  = LINK UP

    149					;	T$RDWN = LINK DOWN

    150					;	T$RNXT = LINK NEXT

    151					;	T$RNME = SEGMENT NAME (2-WORD RADIX 50)

    152					;	T$RWDP = TASK-RESIDENT WINDOW BACKPOINTER

    153					;

    154					; SPACE FOR THE SEGMENT NAME IS ONLY ALLOCATED WHEN A REFERENCE

    155					; TO '$LOAD' IS PRESENT OR THE STRUCTURE CONTAINS RESIDENT SEGMENTS.

    156					; SPACE FOR T$RWND IS ONLY ALLOCATED WHEN THE STRUCTURE CONTAINS RESI-

    157					; DENT SEGMENTS.

    158					;

    159					;

    160					; TASK-RESIDENT SEGMENT DESCRIPTOR FLAGS (IN T$RBLK BITS 15 - 12):

    161					;

    162					;	TR$DES = TASK-RESIDENT DESCRIPTOR FLAG (ALWAYS SET)

    163					;	TR$MEM = SEGMENT IS IN MEMORY (1 = NO, 0 = YES)

    164					;	TR$DSK = SEGMENT HAS DISK ALLOCATION (1 = NO, 0 = YES)

    165					;	TR$LOD = SEGMENT IS LOADED INTO MEMORY (1 = YES, 0 = NO)

    166					;

    167					;-

    168					;

    169

    170						.MACRO	SEGDF$,$$$GBL

    171						.ASECT

SGTBL	MACRO M1110  22-AUG-78 01:59  PAGE 2-3





    172					.=0

    173					S$GSTS:	.BLKW	1

    174					S$GBLK:	.BLKW	1

    175					S$GBRO:	.BLKW	1								;JAK100

    176					S$GLDA:	.BLKW	1

    177					S$GLNG:	.BLKW	1

    178					S$GUP:	.BLKW	1

    179					S$GDWN:	.BLKW	1

    180					S$GNXT:	.BLKW	1

    181					S$GPRV:	.BLKW	1

    182					S$GNME:	.BLKW	2

    183					S$GWDP:	.BLKW	1

    184					S$GCST:	.BLKW	2.

    185					S$GRW:	.BLKW	1

    186					S$GRO:	.BLKW	1

    187					S$GNTB:	.BLKW	1

    188					S$GSTB:	.BLKW	33.

    189					S$GUND:	.BLKW	1

    190					S$GVAD:	.BLKW	2

    191					S$GELT:	.BLKW	2

    192					S$GATL:	.BLKW	3

    193					S$GMEM:	.BLKW	2

    194					S$GROB:	.BLKW	1

    195					S$GAUT:	.BLKW	2

    196					S$GREG:	.BLKW	2

    197					S$GSEG:	.BLKW	2

    198					S$GWND:	.BLKW	2

    199					S$GSEQ:	.BLKW	2

    200					S$GLGH:

    201					SG$DES=200

    202					SG$DSK=100

    203					SG$LOD=040

    204					SG$MEM=020

    205					SG$RO=010

    206					SG$RES=004

    207					SG$PHY=002

    208					SG$GBL=001

    209					.=0

    210					T$RBLK:	.BLKW	1

    211					T$RLDA:	.BLKW	1

    212					T$RLNG:	.BLKW	1

    213					T$RUP:	.BLKW	1

    214					T$RDWN:	.BLKW	1

    215					T$RNXT:	.BLKW	1

    216					T$RNME:	.BLKW	2

    217					S$ZSEG:

    218					T$RWDP:	.BLKW	1

    219					TR$DES=100000

    220					TR$MEM=010000

    221					TR$DSK=040000

    222					TR$LOD=020000

    223						.PSECT

    224						.IF	IDN	<$$$GBL>,<DEF$G>

    225						.GLOBL	SG$DES,SG$DSK,SG$GBL,SG$LOD,SG$MEM,SG$PHY,SG$RES,SG$RO

    226						.GLOBL	TR$DES,TR$DSK,TR$LOD,TR$MEM

    227						.GLOBL	S$GSTS,S$GBLK,S$GBRO,S$GLDA,S$GLNG,S$GUP,S$GDWN,S$GNXT		;JAK100

    228						.GLOBL	S$GPRV,S$GNME,S$GCST,S$GRO,S$GRW,S$GSTB,S$GUND			;**-1

SGTBL	MACRO M1110  22-AUG-78 01:59  PAGE 2-4





    229						.GLOBL	S$GVAD,S$GELT,S$GATL,S$GMEM,S$GROB,S$GSEG,S$GSEQ

    230						.GLOBL	S$GLGH,S$GREG,S$GWND,S$GAUT,S$GWDP,S$GNTB

    231						.GLOBL	S$ZSEG

    232						.ENDC

    233						.MACRO	SEGDF$,A

    234						.ENDM

    235						.ENDM

    236

    237						.IF	DF	S$$GTB

    238

    239	000000					SEGDF$	DEF$G

    240

    241						.IFF

    242

    243						SEGDF$

    244

    245						.ENDC

    246

    247		000001 				.IIF DF S$$GTB	.END

SGTBL	MACRO M1110  22-AUG-78 01:59  PAGE 2-5

SYMBOL TABLE



SG$DES= 000200 G 	S$GBLK  000002 G 	S$GNTB  000040 G 	S$GSTS  000000 G 	TR$LOD= 020000 G

SG$DSK= 000100 G 	S$GBRO  000004 G 	S$GNXT  000016 G 	S$GUND  000144 G 	TR$MEM= 010000 G

SG$GBL= 000001 G 	S$GCST  000030 G 	S$GPRV  000020 G 	S$GUP   000012 G 	T$RBLK  000000

SG$LOD= 000040 G 	S$GDWN  000014 G 	S$GREG  000176 G 	S$GVAD  000146 G 	T$RDWN  000010

SG$MEM= 000020 G 	S$GELT  000152 G 	S$GRO   000036 G 	S$GWDP  000026 G 	T$RLDA  000002

SG$PHY= 000002 G 	S$GLDA  000006 G 	S$GROB  000170 G 	S$GWND  000206 G 	T$RLNG  000004

SG$RES= 000004 G 	S$GLGH  000216 G 	S$GRW   000034 G 	S$ZSEG  000020 G 	T$RNME  000014

SG$RO = 000010 G 	S$GLNG  000010 G 	S$GSEG  000202 G 	S$$GTB= 000000   	T$RNXT  000012

S$GATL  000156 G 	S$GMEM  000164 G 	S$GSEQ  000212 G 	TR$DES= 100000 G 	T$RUP   000006

S$GAUT  000172 G 	S$GNME  000022 G 	S$GSTB  000042 G 	TR$DSK= 040000 G 	T$RWDP  000020



. ABS.	000216	   000

      	000000	   001

ERRORS DETECTED:  0



VIRTUAL MEMORY USED:  986 WORDS  ( 4 PAGES)

DYNAMIC MEMORY:  2772 WORDS  ( 10 PAGES)

ELAPSED TIME:  00:00:05

OBJ$:SGTBL,LIS$:SGTBL/-SP=SRC$:SGTBL,SEGDF

