Google
 

Trailing-Edge - PDP-10 Archives - BB-H348C-RM_1982 - swskit-v21/listings/mcb/snice.list
There are no other files named snice.list in the archive.
SNICE - NICE PROCESS FOR 11S	MACRO M1110  13-OCT-79 13:05
TABLE OF CONTENTS

     4-   54	LOCAL DATA
     6-  156	SNICE - MAIN LINE OF CODE
     7-  185	OPEN - CREATE MAILBOX FOR SNICE
     8-  212	NDAST - NETWORK DATA AST ROUTINE
     9-  240	CONN - PROCESS CONNECT REQUEST
    10-  261	RECAST - RECEIVE AST ROUTINE
    11-  313	TIME - GET AND FORMAT CURRENT TIME
    12-  339	MEMDEP - MEMORY DEPOSIT                                         ;SMM001
    13-  361	MEMEXM - MEMORY EXAMINE                                         ;SMM001
SNICE - NICE PROCESS FOR 11S	MACRO M1110  13-OCT-79 13:05  PAGE 3


      1						.TITLE	SNICE - NICE PROCESS FOR 11S
      2						.IDENT	/X01.04/
      3					;
      4					; COPYRIGHT (C) 1977
      5					; DIGITAL EQUIPMENT CORPORATION, MAYNARD, MASS. 01754
      6					;
      7					; THIS SOFTWARE IS FURNISHED UNDER A LICENSE AND MAY BE USED
      8					; AND COPIED ONLY IN ACCORDANCE WITH THE TERMS OF SUCH LICENSE
      9					; AND WITH THE INCLUSION OF THE ABOVE COPYRIGHT NOTICE. THIS
     10					; SOFTWARE OR ANY OTHER COPIES THEREOF MAY NOT BE PROVIDED
     11					; OR OTHERWISE MADE AVAILABLE TO ANY OTHER PERSON. NO TITLE TO
     12					; AND OWNERSHIP OF THE SOFTWARE IS HEREBY TRANSFERRED.
     13					;
     14					; THE INFORMATION IN THIS SOFTWARE IS SUBJECT TO CHANGE WITHOUT
     15					; NOTICE AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY
     16					; DIGITAL EQUIPMENT CORPORATION.
     17					;
     18					; DIGITAL ASSUMES NO RESPONSIBILITY FOR THE USE OR RELIABILITY
     19					; OF ITS SOFTWARE ON EQUIPMENT WHICH IS NOT SUPPLIED BY DIGITAL.
     20					;
     21					; VERSION X01
     22					;
     23					; AUTHOR:
     24					;	J.A. SCHRIESHEIM	27-OCT-77
     25					;
     26					; MODIFIED BY:
     27					;	S.M. MEIDELL		5-MAY-78
     28					;		ADD EXAMINE CODING
     29					;	A.D. PECKHAM		8-JUL-78
     30					;		CORRECT PARAMETER CHECKING FOR EXAMINE
     31					;	A.D. PECKHAM		27-JUL-78
     32					;		ADD DEPOSIT CODING
     33					;	SCOTT G. ROBINSON	13-MAR-79
     34					;		MODIFY FOR USE IN A TOPS-20 RELEASE 4 DN20
     35					;		 ENVIRONMENT.
     36					;
     37
     38					;
     39					; SNICE IS A NICE-SPEAKING PROCESS WHICH RUNS UNDER RSX-11M/11S
     40					; IN PROCESSES THE FOLLOWING REQUESTS:
     41					;	SHOW STATE LOCAL
     42					;	SHOW STATE LINE <LINE-ID>
     43					;	SHOW COUNTS LOCAL
     44					;	SHOW COUNTS LINE <LINE-ID>
     45					;	ZERO LOCAL
     46					;	ZERO LINE <LINE-ID>
     47					;	DEPOSIT MEMORY <ADDR><LENGTH><DATA>                                     ;AP0003
     48					;	EXAMINE MEMORY <ADDR><LENGTH>                                           ;AP0003
     49					;
     50					; ALL OTHER REQUESTS ARE REJECTED WITH THE "INVALID FUNCTION OR OPTION"
     51					; REASON CODE.
     52					;
SNICE - NICE PROCESS FOR 11S	MACRO M1110  13-OCT-79 13:05  PAGE 4
LOCAL DATA

     54						.SBTTL	LOCAL DATA
     55					;
     56					; MACRO LIBRARY CALLS:
     57					;
     58						.MCALL	OPNW$,SPAW$,GNDW$,REC$,SNDW$,SNDW$E,CLSW$,ACCW$,NSSYM$,CNBDF$
     59						.MCALL	ALUN$,DSAR$S,ENAR$S,DIR$,WTSE$S,ASTX$S,EXIT$S,CLEF$S,SETF$S
     60						.MCALL	GTIM$
     61						.MCALL	ALUN$S,QIOW$S                                                   ;SMM001
     62						.MCALL	DLXDF                                                           ;SR0004
     63
     64	000000					NSSYM$				; DEFINE NETWORK SYMBOLICS
     65	000000					CNBDF$				; DEFINE CONNECT BLOCK OFFSETS
     66	000000					DLXDF				; DEFINE DLX OFFSETS                    ;SR0004
     67
     68					;
     69					; LOCAL DEFINITIONS:
     70					;
     71		000001 				MBLUN=1				; MAILBOX LUN
     72		000002 				NXLUN=2				;LUN FOR NX: DEVICE                     ;SR0004
     73		000003 				NSLUN=3				; LUN FOR LOGICAL LINK                  ;SR0004
     74		000001 				WTEFN=1				; EVENT FLAG TO SIGNAL EXIT             ;**-1
     75		000002 				NXFLG=2				;NX: DEVICE EVENT FLAG                  ;SR0004
     76		000074 				BUFFL=60.			; BUFFER LENGTH                         ;**-1
     77		000003 				NSEFN=3				; EVENT FLAG FOR NETWORK                ;AP0002
     78		000314'				TIMBUF=BUFF+20.			; GTIM$ BUFFER IS WITHIN BUFF
     79
     80					;
     81					; STATUS WORD BIT DEFINITIONS:
     82					;
     83		000001 				NS.SHO=1			; IF SET, SHOW FUNCTION
     84										; IF CLEAR, ZERO FUNCTION
     85		000002 				NS.COU=2			; IF SET, COUNTS
     86										; IF CLEAR, STATE
     87		000004 				NS.LIN=4			; IF SET, LINE
     88										; IF CLEAR, LOCAL
     89		000010 				NS.EXM=10			; MEM EXAMINE FUNCTION                  ;AP0003
     90		000011 				NS.DEP=11			; MEM DEPOSIT FUNCTION                  ;SR0004
     91					;
     92					; DIRECTIVE PARAMETER BLOCKS:
     93					;
     94	000000				ALUN:	ALUN$	0,NS,0
     95
     96	000010				GTIM:	GTIM$	TIMBUF			; GET TIME DPB
     97
     98	000014				OPN:	OPNW$	MBLUN,NSEFN,IOSB,,<1>	; OPEN WITH MAX OF 1 LOGICAL LINK
     99
    100	000044				CLS:	CLSW$	MBLUN,NSEFN
    101
    102	000074				SPA:	SPAW$	MBLUN,NSEFN,,,<NDAST>
    103
    104	000124				GND:	GNDW$	MBLUN,NSEFN,IOSB,,<BUFF,BUFFL>
    105
    106	000154				ACC:	ACCW$	NSLUN,NSEFN,IOSB,,<BUFF,N.CBL>
    107
    108	000204				REC:	REC$	NSLUN,,IOSB,RECAST,<BUFF,BUFFL>
    109
    110	000234				SND:	SNDW$	NSLUN,NSEFN,IOSB,,<0,0>
SNICE - NICE PROCESS FOR 11S	MACRO M1110  13-OCT-79 13:05  PAGE 4-1
LOCAL DATA

    111
SNICE - NICE PROCESS FOR 11S	MACRO M1110  13-OCT-79 13:05  PAGE 5
LOCAL DATA

    113					;
    114					; BUFFERS AND I/O STATUS BLOCKS:
    115					;
    116	000264				IOSB:	.BLKW	2			; GENERAL PURPOSE I/O STATUS
    117
    118	000270				BUFF::	.BLKB	BUFFL			; MULTI-FUNCTION BUFFER
    119		000314'			BUFF1==BUFF+20.				; SECOND BUFFER
    120
    121	000364				HMSG::	.BLKB	2			; NICE HEADER MESSAGE
    122	000366	   000 				.BYTE	0			; (THIRD BYTE IS ALWAYS 0)
    123						.EVEN
    124	000370				MSGL::	.BLKW	1			; LENGTH OF NICE DATA MESSAGE
    125
    126	000372				CURTIM::.BLKW	1			; CURRENT TIME SINCE MIDNIGHT (SECS/2)
    127
    128					;
    129					; FUNCTION REQUEST MAPPING TABLE:
    130					;
    131	000374	   010 	   000 		REQTBL:	.BYTE	8.,0			; SHOW COUNTS LOCAL
    132	000376	000003 				.WORD	<NS.SHO!NS.COU>
    133	000400	   010 	   001 			.BYTE	8.,1			; SHOW STATE LOCAL
    134	000402	000001 				.WORD	<NS.SHO>
    135	000404	   010 	   004 			.BYTE	8.,4			; SHOW COUNTS LINE
    136	000406	000007 				.WORD	<NS.SHO!NS.COU!NS.LIN>
    137	000410	   010 	   005 			.BYTE	8.,5			; SHOW STATE LINE
    138	000412	000005 				.WORD	<NS.SHO!NS.LIN>
    139	000414	   011 	   000 			.BYTE	9.,0			; ZERO LOCAL
    140	000416	000002 				.WORD	<NS.COU>
    141	000420	   011 	   002 			.BYTE	9.,2			; ZERO LINE
    142	000422	000006 				.WORD	<NS.COU!NS.LIN>
    143	000424	   014 	   000 			.BYTE	12.,0			; DEPOSIT MEMORY                        ;AP0003
    144	000426	000011 				.WORD	<NS.DEP>                                                        ;AP0003
    145	000430	   015 	   000 			.BYTE	13.,0			; EXAMINE MEMORY                        ;AP0003
    146	000432	000010 				.WORD	<NS.EXM>                                                        ;AP0003
    147	000434	000000 				.WORD	0			; END OF TABLE
    148
    149					;
    150					; DISPATCH TABLE:
    151					;
    152	000436	000000G	000000G	000000G	DSPTBL:	.WORD	INVALD,LOCSTA,LOCCOU,LOCCOU,0,LINSTA,LINCOU,LINCOU
	000444	000000G	000000 	000000G
	000452	000000G	000000G
    153	000456	001336'	001234'			.WORD	MEMEXM,MEMDEP                                                   ;AP0003
    154
SNICE - NICE PROCESS FOR 11S	MACRO M1110  13-OCT-79 13:05  PAGE 6
SNICE - MAIN LINE OF CODE

    156						.SBTTL	SNICE - MAIN LINE OF CODE
    157					;+
    158					; **-SNICE-MINI NICE PROCESS FOR RSX-11S
    159					;
    160					; SNICE IS REQUESTED TO PERFORM A FUNCTION ON BEHALF OF A REMOTE NCU PROCESS.
    161					; FUNCTIONS SUPPORTED ARE:
    162					;	SHOWING AND ZEROING LOCAL AND LINE COUNTERS.
    163					;	SHOWING LOCAL AND LINE STATES.
    164					;
    165					; ONCE REQUESTED, SNICE ACCEPTS IT'S AWAITING CONNECT REQUEST, LOOKS THROUGH
    166					; THE REQUEST MAPPING TABLE TO FIND A FUNCTION WORD ($NSTAT), AND USES THAT
    167					; WORD TO INDEX INTO A DISPATCH TABLE (DSPTBL).
    168					;-
    169
    170	000462				SNICE::
    171
    172	000462					CALL	OPEN			; OPEN MAILBOX, ETC.
    173	000466	103424 				BCS	20$			; IF CS, JUST EXIT
    174
    175	000470					DSAR$S				; NO INTERUPTIONS PLEASE
    176	000476					DIR$	#SPA			; SPECIFY NETWORD DATA AST ROUTINE
    177	000504	103412 				BCS	10$			; IF CS, CLOSE AND EXIT
    178	000506					CALL	NDAST			; ELSE, GET NETWORK DATA WAITING FOR US
    179	000512					ENAR$S				; WAIT FOR REQUEST (RECEIVE)
    180	000520					WTSE$S	#WTEFN			; SIT HERE TILL FINISHED
    181
    182	000532				10$:	DIR$	#CLS			; CLOSE UP SHOP
    183	000540				20$:	EXIT$S				; AND GO HOME
SNICE - NICE PROCESS FOR 11S	MACRO M1110  13-OCT-79 13:05  PAGE 7
OPEN - CREATE MAILBOX FOR SNICE

    185						.SBTTL	OPEN - CREATE MAILBOX FOR SNICE
    186					;+
    187					; **-OPEN-CREATE MAILBOX AND ASSIGN LUNS
    188					;
    189					; ASSIGN MAILBOX LUN AND LOGICAL LINK LUN TO NS:,THEN OPEN ACCESS TO NETWORK.
    190					;
    191					; INPUTS:
    192					;	NONE
    193					;
    194					; OUTPUTS:
    195					;	LUNS ASSIGNED AND MAILBOX CREATED.
    196					;-
    197
    198	000546				OPEN:
    199
    200	000546	012767 	000001 	177226 		MOV	#MBLUN,ALUN+A.LULU	; SET UP DPB FOR MAILBOX LUN
    201	000554					DIR$	#ALUN			; ASSIGN LUN
    202	000562	103422 				BCS	10$			; IF CS, RETURN WITH ERROR
    203	000564					ALUN$S	#NXLUN,#"NX,#0                                                  ;SR0004
    204	000604	012767 	000003 	177170 		MOV	#NSLUN,ALUN+A.LULU	; SET UP FOR LINK LUN
    205	000612					DIR$	#ALUN			; ASSIGN LUN
    206	000620	103403 				BCS	10$			; IF CS, RETURN
    207
    208	000622					DIR$	#OPN			; CREATE MAILBOX
    209
    210	000630				10$:	RETURN
SNICE - NICE PROCESS FOR 11S	MACRO M1110  13-OCT-79 13:05  PAGE 8
NDAST - NETWORK DATA AST ROUTINE

    212						.SBTTL	NDAST - NETWORK DATA AST ROUTINE
    213					;+
    214					; **-NDAST-NETWORK DATA AST ROUTINE
    215					;
    216					; GET NETWORK DATA, IF CONNECT REQUEST, ACCEPT AND HANG A RECEIVE.
    217					; ELSE, ASSUME DISCONNECT OF SOME SORT, SET FLAG TO EXIT.
    218					;
    219					; INPUTS:
    220					;	NETWORK DATA ON MAILBOX QUEUE.
    221					;
    222					; OUTPUTS:
    223					;	RECEIVE HUNG FOR CONNECT, EVENT FLAG SET FOR ALL OTHERS.
    224					;-
    225
    226	000632				NDAST:
    227
    228	000632					DIR$	#GND			; GET NETWORK DATA
    229	000640	103407 				BCS	10$			; IF CS, COULDN'T - EXIT
    230	000642	126727 	177417 	000001 		CMPB	IOSB+1,#NT.CON		; CONNECT REQUEST ?
    231	000650	001003 				BNE	10$			; IF NE, NO - ASSUME TIME TO EXIT
    232	000652					CALL	CONN			; ELSE PROCESS CONNECT REQUEST
    233	000656	103010 				BCC	20$			; IF CC, RETURN
    234
    235	000660				10$:	DSAR$S				; AVOID INTERRUPTIONS ON WAY OUT
    236	000666					SETF$S	#WTEFN			; SET COMPLETION FLAG
    237	000700				20$:	ASTX$S				; IF AT AST LEVEL RETURN
    238	000706					RETURN				; RETURN FOR SUBROUTINE CALL
SNICE - NICE PROCESS FOR 11S	MACRO M1110  13-OCT-79 13:05  PAGE 9
CONN - PROCESS CONNECT REQUEST

    240						.SBTTL	CONN - PROCESS CONNECT REQUEST
    241					;+
    242					; **-CONN-PROCESS CONNECT REQUEST
    243					;
    244					; ALWAYS ACCEPT CONNECTION, CLEAR COMPLETION EVENT FLAG AND HANG A RECEIVE.
    245					;
    246					; INPUTS:
    247					;	CONNECT REQUEST PENDING.
    248					;
    249					; OUTPUTS:
    250					;	CONNECTION ACCEPTED, RECEIVE HUNG.
    251					;-
    252
    253	000710				CONN:
    254
    255	000710					DIR$	#ACC			; ACCEPT CONNECTION
    256	000716	103410 				BCS	10$			; IF CS, NOTHING WE CAN DO
    257	000720					CLEF$S	#WTEFN			; MAKE SURE FLAG IS CLEARED
    258	000732					DIR$	#REC			; HANG FIRST RECEIVE
    259	000740				10$:	RETURN				; RETURN
SNICE - NICE PROCESS FOR 11S	MACRO M1110  13-OCT-79 13:05  PAGE 10
RECAST - RECEIVE AST ROUTINE

    261						.SBTTL	RECAST - RECEIVE AST ROUTINE
    262					;+
    263					;
    264					; **-RECAST-RECEIVE COMPLETION ROUTINE
    265					;
    266					; IF SUCCESSFUL, MAP REQUEST RECEIVED INTO FUNCION CODE, AND USE THE
    267					; FUNCTION CODE TO INDEX OFF OF A DISPATCH TABLE TO THE APPROPRIATE ROUTINE.
    268					;
    269					; INPUTS:
    270					;	REQUEST RECEIVED IN BUFFER.
    271					;
    272					; OUTPUTS:
    273					;	STATUS MESSAGE ALWAYS SENT. FOR "SHOW" REQUESTS, SECOND MESSAGE
    274					;	CONTAINS REQUESTED DATA.
    275					;-
    276
    277	000742				RECAST:
    278
    279	000742	005726 				TST	(SP)+			; CLEAN OFF I/O STATUS BLOCK ADDRESS
    280	000744	105767 	177316 			TSTB	IOSB+2			; SUCCESSFUL COMPLETION ?
    281	000750	003500 				BLE	40$			; IF LE, NO
    282
    283	000752					CALL	TIME			; GET AND FORMAT CURRENT TIME OF DAY
    284	000756	012700 	000270'			MOV	#BUFF,R0		; POINT TO REQUEST FUNCTION
    285	000762	012701 	000374'			MOV	#REQTBL,R1		; POINT TO REQUEST MAPPING TABLE
    286	000766	021021 			10$:	CMP	(R0),(R1)+		; DOES THIS ENTRY MATCH REQUEST ?
    287	000770	001403 				BEQ	20$			; IF EQ, YES
    288	000772	005721 				TST	(R1)+			; ELSE, SKIP OVER SECOND WORD
    289	000774	005711 				TST	(R1)			; ARE WE AT END OF TABLE YET?
    290	000776	001373 				BNE	10$			; IF NE, NO - KEEP LOOKING
    291	001000	005720 			20$:	TST	(R0)+			; POINT TO REST OF BUFFER
    292	001002	011105 				MOV	(R1),R5			; LOAD STATUS WORD WITH FUNCTION
    293	001004	111101 				MOVB	(R1),R1			; USE LOW BYTE AS INDEX
    294	001006	006301 				ASL	R1			; MAKE INTO WORD OFFSET
    295	001010					CALL	@DSPTBL(R1)		; AND DISPATCH
    296
    297	001014	005767 	177344 			TST	HMSG			;IS THERE A HEADER MESSAGE?             ;SMM001
    298	001020	001451 				BEQ	30$			;IF NOT, NO MORE PROCESSING NEEDED      ;SMM001
    299	001022	012700 	000003 			MOV	#3,R0			; ASSUME 3 BYTE HEADER MESSAGE
    300	001026	122767 	000010 	177234 		CMPB	#8.,BUFF		; IS THIS A SHOW REQUEST?
    301	001034	001402 				BEQ	25$			; IF EQ, YES - OKAY
    302	001036	012700 	000001 			MOV	#1,R0			; ELSE ONLY ONE BYTE TO SEND
    303	001042				25$:	SNDW$E	SND,,,,,<#HMSG,R0>	; SEND AT LEAST HEADER MESSAGE
    304	001076	103425 				BCS	40$			; IF CS, RETURN
    305	001100	105767 	177261 			TSTB	HMSG+1			; CHECK IF ANOTHER MESSAGE TO SEND
    306	001104	001417 				BEQ	30$			; IF EQ, NO - JUST HANG RECEIVE
    307
    308	001106					SNDW$E	SND,,,,,<#BUFF+1,MSGL>	; ELSE SEND BUFFER CONTENTS
    309	001144				30$:	DIR$	#REC			; HANG ANOTHER RECEIVE
    310
    311	001152				40$:	ASTX$S
SNICE - NICE PROCESS FOR 11S	MACRO M1110  13-OCT-79 13:05  PAGE 11
TIME - GET AND FORMAT CURRENT TIME

    313						.SBTTL	TIME - GET AND FORMAT CURRENT TIME
    314					;+
    315					; **-TIME-GET AND FORMAT CURRENT TIME
    316					;
    317					; INPUTS:
    318					;	NONE.
    319					;
    320					; OUTPUTS:
    321					;	CURTIM = CURRENT TIME IN SECONDS SINCE MIDNIGHT DIVIDED BY 2.
    322					;-
    323
    324	001160				TIME:
    325
    326	001160					DIR$	#GTIM			; GET TIME
    327	001166	016701 	177130 			MOV	G.TIHR+TIMBUF,R1	; GET CURRENT HOUR
    328	001172	012700 	000074 			MOV	#60.,R0			; TURN INTO MINUTES SINCE MIDNIGHT
    329	001176					CALL	$MUL			; ...
    330	001202	066701 	177116 			ADD	G.TIMI+TIMBUF,R1	; ADD IN CURRENT MINUTES
    331	001206	012700 	000036 			MOV	#30.,R0			; CONVERT TO 2 SECOND INTERVALS
    332	001212					CALL	$MUL			; ...
    333	001216	006267 	177104 			ASR	G.TISC+TIMBUF		; DIVIDE SECONDS BY 2
    334	001222	066701 	177100 			ADD	G.TISC+TIMBUF,R1	; AND ADD IN FOR TOTAL
    335	001226	010167 	177140 			MOV	R1,CURTIM		; SET AS CURRENT TIME
    336	001232					RETURN
SNICE - NICE PROCESS FOR 11S	MACRO M1110  13-OCT-79 13:05  PAGE 12
TIME - GET AND FORMAT CURRENT TIME

    338					                                                                                ;SMM001
    339						.SBTTL	MEMDEP - MEMORY DEPOSIT                                         ;SMM001
    340					;+                                                                              ;SMM001
    341					; **-MEMDEP - DEPOSIT GIVEN DATA INTO SPECIFIED PHYSICAL MEMORY LOCATIONS       ;SMM001
    342					;                                                                               ;SMM001
    343					; INPUTS:                                                                       ;SMM001
    344					;	R0 = POINTER TO DATA BUFFER                                             ;SMM001
    345					;                                                                               ;SMM001
    346					; OUTPUTS:                                                                      ;SMM001
    347					;	RETURN CODE IN HMSG                                                     ;SMM001
    348					;                                                                               ;SMM001
    349					;-                                                                              ;SMM001
    350	001234	012767 	000001 	177122 	MEMDEP:	MOV	#1.,HMSG	;ASSUME SUCCESS                                 ;SMM001
    351	001242					QIOW$S	#NX.NIC,#NXLUN,#NXFLG,,#IOSB,,<R0,#BUFFL,#NX$DEP>               ;SR0004
    352	001314	103404 				BCS	20$		;ERROR?                                         ;SMM001
    353	001316	106167 	176742 			ROLB	IOSB		;CHECK STATUS                                   ;SMM001
    354	001322	103401 				BCS	20$		;ERROR?                                         ;SMM001
    355	001324					RETURN			;YEA US                                         ;SMM001
    356					;                                                                               ;SMM001
    357	001326	112767 	177756 	177030 	20$:	MOVB	#-18.,HMSG	;FILE I/O ERROR STATUS                          ;SMM001
    358	001334					RETURN                                                                  ;SMM001
SNICE - NICE PROCESS FOR 11S	MACRO M1110  13-OCT-79 13:05  PAGE 13
MEMDEP - MEMORY DEPOSIT

    360					                                                                                ;SMM001
    361						.SBTTL	MEMEXM - MEMORY EXAMINE                                         ;SMM001
    362					;+                                                                              ;SMM001
    363					; **-MEMEXM - EXAMINE SPECIFIED PHYSICAL MEMORY LOCATIONS                       ;SMM001
    364					;                                                                               ;SMM001
    365					; INPUTS:                                                                       ;SMM001
    366					;	R0 = POINTER TO DATA BUFFER                                             ;SMM001
    367					;                                                                               ;SMM001
    368					; OUTPUTS:                                                                      ;SMM001
    369					;	SPECIFIED NUMBER OF BYTES OF MEMORY STARTING AT REQUESTED               ;SMM001
    370					;	ADDRESS IN DATA BUFFER                                                  ;SMM001
    371					;                                                                               ;SMM001
    372					;-                                                                              ;SMM001
    373	001336	005067 	177022 		MEMEXM:	CLR	HMSG		;SET UP                                         ;SMM001
    374	001342					QIOW$S	#NX.NIC,#NXLUN,#NXFLG,,#IOSB,,<R0,#BUFFL,#NX$EXM,R0,#BUFFL>     ;SR0004
    375	001416	103430 				BCS	20$		;ERROR?                                         ;SMM001
    376	001420	106167 	176640 			ROLB	IOSB		;CHECK STATUS                                   ;SMM001
    377	001424	103425 				BCS	20$		;ERROR?                                         ;SMM001
    378	001426	016701 	176634 			MOV	IOSB+2,R1	;GET LENGTH OF MESSAGE                          ;SR0004
    379	001432	110140 				MOVB	R1,-(R0)	;STORE IN MESSAGE                               ;SR0004
    380	001434	112740 	000001 			MOVB	#1,-(R0)	;SIGNAL SUCCESSFUL COMPLETION                   ;SMM001
    381	001440	062701 	000002 			ADD	#2,R1		;SET UP NUMBER OF BYTES TO SEND FOR QIO         ;SMM001
    382	001444					SNDW$E	SND,,,,,<R0,R1>	;SEND DATA MESSAGE                              ;SMM001
    383	001476					RETURN			;YEA US                                         ;SMM001
    384					;                                                                               ;SMM001
    385	001500	112767 	177756 	176656 	20$:	MOVB	#-18.,HMSG	;FILE I/O ERROR STATUS                          ;SMM001
    386	001506					RETURN                                                                  ;SMM001
    387
    388
    389		000462'				.END	SNICE
SNICE - NICE PROCESS FOR 11S	MACRO M1110  13-OCT-79 13:05  PAGE 13-1
SYMBOL TABLE

ACC     000154R  	IE.URJ= 177667   	NE$SSS= 000045   	NX$SNH= 000024   	N.SFM   000036
ALUN    000000R  	INVALD= ****** GX	NE$STA= 000051   	NX$SNM= 000036   	N.SGP   000040
A$$CHK= 000000   	IOSB    000264R  	NE$TCN= 000040   	NX$SNO= 000034   	N.SND   000030
A$$CPS= 000000   	IS.DAO= 000002   	NE$TCO= 000041   	NX$SNS= 000010   	N.SNM   000046
A$$PRI= 000000   	I$$RAR= 000000   	NE$TPA= 000010   	NX$XMT= 000030   	N.SNMC  000044
A$$TRP= 000000   	I$$RDN= 000000   	NE$UOB= 000004   	NX$ZLC= 000020   	N.SOT   000037
A.LULU= 000002   	K$$CNT= 177546   	NO.DTR= 000077   	NX$ZNC= 000006   	N.SUS   000042
A.LUNA= 000004   	K$$CSR= 177546   	NO.FAL= 000021   	NX.NIC= 017050   	OPEN    000546R
A.LUNU= 000006   	K$$LDC= 000000   	NO.FA1= 000001   	N$XADJ= 000002   	OPN     000014R
BUFF    000270RG 	K$$TPS= 000074   	NO.NCU= 000023   	N$XINT= 000003   	P$$P45= 000000
BUFFL = 000074   	LD$LP = 000000   	NO.RTL= 000022   	N$XLCL= 000001   	P$$WRD= 000000
BUFF1 = 000314RG 	LINCOU= ****** GX	NO.TAS= 000000   	N$XRMT= 000004   	Q$$OPT= 000010
CLS     000044R  	LINSTA= ****** GX	NO.TCL= 000017   	N$$LDV= 000001   	Q.IOAE= 000012
CONN    000710R  	LOCCOU= ****** GX	NO.TC1= 000005   	N$$MOV= 000010   	Q.IOEF= 000006
CURTIM  000372RG 	LOCSTA= ****** GX	NO.TLK= 000020   	N$$SYS= 000001   	Q.IOFN= 000002
C$$CKP= 000000   	L$$ASG= 000000   	NR$IFC= 000030   	N$$USR= 000001   	Q.IOLU= 000004
C$$ORE= 000400   	L$$DRV= 000000   	NSEFN = 000003   	N.CAC   000120   	Q.IOPL= 000014
C$$RSH= 177564   	L$$P11= 000001   	NSLUN = 000003   	N.CACC  000116   	Q.IOPR= 000007
DSPTBL  000436R  	L$$11R= 000000   	NS.COU= 000002   	N.CBL = 000142   	Q.IOSB= 000010
D$$BUG= 177514   	MBLUN = 000001   	NS.DEP= 000011   	N.CDA   000142   	REC     000204R
D$$ISK= 000000   	MEMDEP  001234R  	NS.EXM= 000010   	N.CDAC  000140   	RECAST  000742R
D$$L11= 000001   	MEMEXM  001336R  	NS.LIN= 000004   	N.CID   000064   	REQTBL  000374R
D$$YNC= 000000   	MSGL    000370RG 	NS.SHO= 000001   	N.CIDC  000062   	R$$DER= 000000
D$$YNM= 000000   	M$$CRB= 000124   	NT.ABO= 000005   	N.CPS   000106   	R$$K11= 000001
E$$XPR= 000000   	M$$CRX= 000000   	NT.ABT= 000004   	N.CPSC  000104   	R$$SND= 000000
F$$LVL= 000001   	M$$FCS= 000000   	NT.CON= 000001   	N.CTL   000000   	R$$11M= 000000
GND     000124R  	M$$MGE= 000000   	NT.DSC= 000003   	N.DDE   000010   	SND     000234R
GTIM    000010R  	M$$OVR= 000000   	NT.INT= 000002   	N.DDEC  000006   	SNICE   000462RG
G$$TPP= 000000   	NDAST   000632R  	NT.LOG= 000011   	N.DFM   000004   	SPA     000074R
G$$TSS= 000000   	NE$ABO= 000046   	NT.MOP= 000010   	N.DGP   000006   	S$$WRG= 000000
G$$TTK= 000000   	NE$ABT= 000011   	NXFLG = 000002   	N.DNM   000014   	S$$YSZ= 007600
G$$WRD= 000000   	NE$ACC= 000042   	NXLUN = 000002   	N.DNMC  000012   	TIMBUF= 000314R
G.TIBA= 000002   	NE$ACT= 000044   	NX$DEP= 000046   	N.DOT   000005   	TIME    001160R
G.TICP= 000016   	NE$CDI= 000052   	NX$EXM= 000050   	N.DUS   000010   	T$$KMG= 000000
G.TICT= 000014   	NE$COM= 000047   	NX$RCV= 000032   	N.IOAE= 000012   	T$$MIN= 000000
G.TIDA= 000004   	NE$FCF= 000050   	NX$RLC= 000016   	N.IOEF= 000006   	V$$CTR= 001000
G.TIHR= 000006   	NE$FMT= 000005   	NX$RLN= 000012   	N.IOFN= 000002   	WTEFN = 000001
G.TIMI= 000010   	NE$GEN= 000007   	NX$RLS= 000014   	N.IOLU= 000004   	X$$DBT= 000000
G.TIMO= 000002   	NE$ILS= 000043   	NX$RNC= 000004   	N.IOPL= 000014   	$MUL  = ****** GX
G.TISC= 000012   	NE$IMG= 000053   	NX$RNN= 000000   	N.IOPR= 000007   	$$$ARG= 000020
G.TIYR= 000000   	NE$MLB= 000006   	NX$RNS= 000002   	N.IOSB= 000010   	$$$FLG= 016630
HMSG    000364RG 	NE$NOD= 000002   	NX$SLH= 000026   	N.SDE   000042   	$$$OST= 000014
IE.NDA= 177662   	NE$NSD= 000003   	NX$SLM= 000042   	N.SDEC  000040   	$$$T1 = 000002
IE.NNT= 177660   	NE$RES= 000001   	NX$SLO= 000040   	N.SEGZ  000002   	$$$T2 = 000004R
IE.NRJ= 177666   	NE$SSR= 000000   	NX$SLS= 000022

. ABS.	000142	   000
      	001510	   001
ERRORS DETECTED:  0

VIRTUAL MEMORY USED:  6225 WORDS  ( 25 PAGES)
DYNAMIC MEMORY:  6892 WORDS  ( 26 PAGES)
ELAPSED TIME:  00:00:52
SNICE,[135,34]SNICE/CR/-SP=[130,10]NETLIB/ML,RSXMC4/PA:1,[135,10]SNICE
SNICE      CREATED BY  MACRO  ON 13-OCT-79 AT 13:05	PAGE 1

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

ACC   	  000154 R	#4-106      9-255     
ALUN  	  000000 R	#4-94      *7-200      7-201     *7-204      7-205     
A.LULU	= 000002	 4-94      *7-200     *7-204     
BUFF  	  000270 RG	 4-78       4-104      4-106      4-108     #5-118      5-119      10-284     10-300     10-308    
BUFFL 	= 000074	#4-76       4-104      4-108      5-118      12-351     13-374     13-374    
BUFF1 	= 000314 RG	#5-119     
CLS   	  000044 R	#4-100      6-182     
CONN  	  000710 R	 8-232     #9-253     
CURTIM	  000372 RG	#5-126     *11-335    
DSPTBL	  000436 R	#5-152      10-295    
GND   	  000124 R	#4-104      8-228     
GTIM  	  000010 R	#4-96       11-326    
G.TIBA	= 000002	 4-96      
G.TIHR	= 000006	 11-327    
G.TIMI	= 000010	 11-330    
G.TISC	= 000012	*11-333     11-334    
HMSG  	  000364 RG	#5-121      10-297     10-303     10-305    *12-350    *12-357    *13-373    *13-385    
INVALD	= ******  GX	 5-152     
IOSB  	  000264 R	 4-98       4-104      4-106      4-108      4-110     #5-116      8-230      10-280     12-351    
                        *12-353     13-374    *13-376     13-378    
LINCOU	= ******  GX	 5-152      5-152     
LINSTA	= ******  GX	 5-152     
LOCCOU	= ******  GX	 5-152      5-152     
LOCSTA	= ******  GX	 5-152     
MBLUN 	= 000001	#4-71       4-98       4-100      4-102      4-104      7-200     
MEMDEP	  001234 R	 5-153     #12-350    
MEMEXM	  001336 R	 5-153     #13-373    
MSGL  	  000370 RG	#5-124      10-308    
NDAST 	  000632 R	 4-102      6-178     #8-226     
NSEFN 	= 000003	#4-77       4-98       4-100      4-102      4-104      4-106      4-110     
NSLUN 	= 000003	#4-73       4-106      4-108      4-110      7-204     
NS.COU	= 000002	#4-85       5-132      5-136      5-140      5-142     
NS.DEP	= 000011	#4-90       5-144     
NS.EXM	= 000010	#4-89       5-146     
NS.LIN	= 000004	#4-87       5-136      5-138      5-142     
NS.SHO	= 000001	#4-83       5-132      5-134      5-136      5-138     
NT.CON	= 000001	 8-230     
NXFLG 	= 000002	#4-75       12-351     13-374    
NXLUN 	= 000002	#4-72       7-203      12-351     13-374    
NX$DEP	= 000046	 12-351    
NX$EXM	= 000050	 13-374    
NX.NIC	= 017050	 12-351     13-374    
N.CBL 	= 000142	 4-106     
N.IOFN	= 000002	 10-303    *10-303     10-308    *10-308     13-382    *13-382    
N.IOPL	= 000014	 10-303     10-308     13-382    
OPEN  	  000546 R	 6-172     #7-198     
OPN   	  000014 R	#4-98       7-208     
Q.IOFN	= 000002	 4-98       4-100      4-102      4-104      4-106      4-108      4-110     
REC   	  000204 R	#4-108      9-258      10-309    
RECAST	  000742 R	 4-108     #10-277    
REQTBL	  000374 R	#5-131      10-285    
SND   	  000234 R	#4-110     *10-303    *10-303    *10-303    *10-303     10-303    *10-308    *10-308    *10-308    
SNICE      CREATED BY  MACRO  ON 13-OCT-79 AT 13:05	PAGE 2

SYMBOL CROSS REFERENCE                                  CREF         

SYMBOL	VALUE		REFERENCES

                        *10-308     10-308    *13-382    *13-382    *13-382    *13-382     13-382    
SNICE 	  000462 RG	#6-170      13-389    
SPA   	  000074 R	#4-102      6-176     
TIMBUF	= 000314 R	#4-78       4-96       11-327     11-330    *11-333     11-334    
TIME  	  001160 R	 10-283    #11-324    
WTEFN 	= 000001	#4-74       6-180      8-236      9-257     
$MUL  	= ******  GX	 11-329     11-332    
$$$ARG	= 000020	#4-98       4-98      #4-98       4-98       4-98      #4-100      4-100      4-100     #4-102     
                         4-102     #4-102      4-102      4-102     #4-104      4-104     #4-104      4-104     #4-104     
                         4-104      4-104     #4-106      4-106     #4-106      4-106     #4-106      4-106     #4-106     
                         4-106     #4-106      4-106     #4-106      4-106     #4-106      4-106     #4-108      4-108     
                        #4-108      4-108     #4-108      4-108      4-108     #4-110      4-110     #4-110      4-110     
                        #4-110      4-110      4-110     #10-303    *10-303     10-303    #10-303    *10-303     10-303    
                        #10-303    #10-308    *10-308     10-308    #10-308    *10-308     10-308    #10-308    #12-351    
                         12-351    #12-351     12-351    #12-351     12-351    #12-351     12-351     12-351    #12-351    
                         12-351     12-351     12-351     12-351     12-351     12-351     12-351     12-351     12-351    
                         12-351    #12-351     12-351     12-351     12-351     12-351     12-351     12-351     12-351    
                         12-351     12-351     12-351    #12-351     12-351     12-351     12-351     12-351     12-351    
                         12-351     12-351     12-351     12-351     12-351    #13-374     13-374    #13-374     13-374    
                        #13-374     13-374    #13-374     13-374    #13-374     13-374    #13-374     13-374     13-374    
                        #13-374     13-374     13-374     13-374     13-374     13-374     13-374     13-374     13-374    
                         13-374     13-374    #13-374     13-374     13-374     13-374     13-374     13-374     13-374    
                         13-374     13-374     13-374     13-374    #13-374     13-374     13-374     13-374     13-374    
                         13-374     13-374     13-374     13-374     13-374     13-374    #13-382    *13-382     13-382    
                        #13-382    *13-382     13-382    #13-382    
$$$FLG	= 016630	#4-104      4-104     
$$$GLB	= ******	 4-94       4-96       4-98       4-100      4-102      4-104      4-106      4-108      4-110     
$$$T1 	= 000002	#4-94      
$$$T2 	= 000004 R	#4-94       4-94      
SNICE      CREATED BY  MACRO  ON 13-OCT-79 AT 13:05	PAGE 3

MACRO CROSS REFERENCE                                   CREF         

MACRO NAME	REFERENCES

ACCW$ 		#4-58      #4-106     
ALUN$ 		#4-59      #4-94      
ALUN$S		#4-61      #7-203     
ASTX$S		#4-59       8-237      10-311    
CALL  		 6-172      6-178      8-232      10-283     10-295     11-329     11-332    
CLEF$S		#4-59      #9-257     
CLSW$ 		#4-58       4-100     
CNBDF$		#4-58       4-65      
DIR$  		#4-59      #6-175     #6-175     #6-176     #6-179     #6-179     #6-180     #6-180     #6-182     #6-183     
                #6-183     #7-201     #7-203     #7-203     #7-205     #7-208     #8-228     #8-235     #8-235     #8-236     
                #8-236     #8-237     #8-237     #9-255     #9-257     #9-257     #9-258     #10-303    #10-303    #10-308    
                #10-308    #10-309    #10-311    #10-311    #11-326    #12-351    #12-351    #13-374    #13-374    #13-382    
                #13-382    
DLXDF 		#4-62      #4-66      
DSAR$S		#4-59       6-175      8-235     
ENAR$S		#4-59       6-179     
EXIT$S		#4-59       6-183     
GNDW$ 		#4-58      #4-104     
GTIM$ 		#4-60      #4-96      
MOV$  		#6-180     #6-180     #7-203     #7-203     #7-203     #7-203     #8-236     #8-236     #9-257     #9-257     
                #12-351    #12-351    #12-351    #12-351    #12-351    #12-351    #12-351    #12-351    #12-351    #12-351    
                #13-374    #13-374    #13-374    #13-374    #13-374    #13-374    #13-374    #13-374    #13-374    #13-374    
                #13-374    #13-374    
MVB$  		#12-351     12-351    #13-374     13-374    
NSSYM$		#4-58       4-64      
OFF$  		#4-94      #4-96      #4-98      #4-100     #4-102     #4-104     #4-106     #4-108     #4-110     #10-303    
                #10-308    #13-382    
OPNW$ 		#4-58       4-98      
QDPB$ 		#4-98      #4-98      #4-100     #4-100     #4-102     #4-102     #4-104     #4-104     #4-106     #4-106     
                #4-108     #4-108     #4-110     #4-110     
QDPB$E		#10-303    #10-303    #10-308    #10-308    #13-382    #13-382    
QDPB$S		#12-351     12-351    #13-374     13-374    
QIOW$S		#4-61      #12-351    #13-374    
REC$  		#4-58      #4-108     
RETURN		 7-210      8-238      9-259      11-336     12-355     12-358     13-383     13-386    
RVP$  		#12-351     12-351     12-351     12-351    #13-374     13-374     13-374     13-374    
SETF$S		#4-59      #8-236     
SNDW$ 		#4-58      #4-110     
SNDW$E		#4-58       10-303     10-308     13-382    
SPAW$ 		#4-58       4-102     
WTSE$S		#4-59      #6-180     
$CON$ 		#4-106      4-106     
$GNDF$		#4-104     #4-104