.TITLE TSTTBL .IDENT /V01.00/ .ENABL LC .MCALL RDBBK$,WDBBK$,DIR$,SDAT$,VSDA$,ASTX$S,ELVT$S,CLEF$S,WTSE$S .MCALL ABRT$C,ALTP$C,ALUN$C,ATRG$C,CINT$C,CLEF$C,CMKT$C,CNCT$C .MCALL CRAW$C,CRGF$C,CRRG$C,CSRQ$C,DECL$C,DSAR$C,DSCP$C,DTRG$C .MCALL ELAW$C,ELGF$C,EMST$C,ENAR$C,ENCP$C,EXIF$C,EXIT$C,EXST$C .MCALL EXTK$C,FEAT$C,GCCI$C,GCII$C,GLUN$C,GMCR$C,GMCX$C,GPRT$C .MCALL GREG$C,GSSW$C,GTIM$C,GTSK$C,MAP$C ,MRKT$C,QIO$C ,QIOW$C .MCALL RCST$C,RCVD$C,RCVX$C,RDAF$C,RDXF$C,RPOI$C,RQST$C,RREF$C .MCALL RSUM$C,RUN$C ,SCAA$C,SCLI$C,SDAT$C,SDRP$C,SDRC$C,SETF$C .MCALL SFPA$C,SMSG$C,SPND$C,SPRA$C,SPWN$C,SRDA$C,SREA$C,SREF$C .MCALL SRRA$C,STIM$C,STLO$C,STOP$C,STSE$C,SVDB$C,SVTK$C,TFEA$C .MCALL ULGF$C,UMAP$C,USTP$C,WSIG$C,WTLO$C,WTSE$C .MCALL ACHN$C,CLON$C,CPCR$C,CRVT$C,DLON$C,ELVT$C,FSS$C ,GDIR$C .MCALL MSDS$C,MVTS$C,PFCS$C,PRMS$C,RDEF$C,RLON$C,SDIR$C,SNXC$C .MCALL SPEA$C,TLON$C,VRCD$C,VRCS$C,VRCX$C,VSDA$C,VSRC$C .PSECT TBL$RO,RO,D ; ; Define various data fields used in the test directives. ; .NLIST BEX LNS: .ASCII #TST$LOG# ;Logical string LNSSZ = .-LNS ;Logical string size ENS: .ASCII #NL:[200,200]FILE.FOO# ;Equivalent string ENSSZ = .-ENS ;Equivalent string size DIR: .ASCII #[200,200]# ;Default string DIRSZ = .-DIR .LIST BEX .EVEN ; ; SST table ; SST: .WORD XINT ;Odd address .WORD XINT ;Memory protect .WORD XINT ;IOT .WORD XINT ;Reserved .WORD XINT ;EMT .WORD XINT ;TRAP .WORD XINT ;FPP SSTSZ = <.-SST>/2 .PSECT TBL$RW,RW,D ; ; Define PLAS blocks. ; RO = RS.DEL!RS.RED ;Region read/delete access RDB: RDBBK$ 400,TSTREG,,<> ;Test RDB (8K) TWO: RDBBK$ 400,SECOND,,<> ;Test RDB (8K) WDB: WDBBK$ 7,200,0,0,200, ;Test WDB (4K) ; ; Define send data directives. ; SEND: SDAT$ XXXXXX,BUF VSND: VSDA$ XXXXXX,BUF,256. PRS: .BLKW 20. ;Parse block PRSSZ = .-PRS RSIZE: .WORD 0 ;Return size STS: .WORD 0 ;Return status MOD: .WORD 0 ;Return modifier IOS: .BLKW 2 ;I/O status BUF: .BLKB 512. ;General purpose buffer .MACRO TSTINI .PSECT TBL$TB,RO,D ;Test table section TSTTBL:: ;Table name $$txt = 0 ;Preset no text $$ini = 0 ;Preset no initialization $$don = 0 ;Preset no completion $$cod = 0 ;Preset no test code .ENDM TSTINI .MACRO TSTDEF nam ; ; Generate table entry for previous test. ; .PSECT TBL$TB,RO,D ;Test table section .WORD $$txt ;Test name .WORD $$ini ;Test initialization (0 = none) .WORD $$cod ;Test code loop (0 = none) .WORD $$don ;Test completion (0 = none) ; ; Declare test name as ASCIZ string. ; .PSECT TBL$TX,RO,D $$txt = . .ASCIZ #nam# ; ; Return to code section and set pointers. ; .PSECT RETURN ;Generate final return $$ini = 0 ;Preset no initialization $$don = 0 ;Preset no completion $$cod = . ;Preset test code .ENDM TSTDEF ; ; Declare initialization, test, and completion code sections. ; .MACRO INIT $$ini = . ;Set initialization .ENDM INIT .MACRO TEST RETURN ;Generate final return $$cod = . ;Set test code .ENDM TEST .MACRO DONE RETURN ;Generate final return $$don = . ;Set done code .ENDM DONE ; ; Define macro to declare end of table. Generate last return and mark ; end of table. ; .MACRO TSTEOT .PSECT TBL$TB,RO,D ;Test table section .WORD $$txt ;Test name .WORD $$ini ;Test initialization (0 = none) .WORD $$cod ;Test code loop (0 = none) .WORD $$don ;Test completion (0 = none) .WORD 0 ;End of table .PSECT RETURN ;Generate final return .ENDM TSTEOT ; ; Define macro to use when we cannot test the directive. ; .MACRO NONE $$ini = 0 ;Set no initialization $$don = 0 ;Set no completion $$cod = 0 ;Set no test code .ENDM NONE ; ; Define task startup macro. ; .MACRO START task,?adr CLEF$S #EF.TSK ;Reset the flag RQST$C task ;Request task BCS adr ; If CS - error WTSE$S #EF.TSK ;Wait till started adr: .ENDM START .NLIST BIN TSTINI ; ; *** NULL *** ; TSTDEF ; ; *** MOVE *** ; TSTDEF MOV #BUF,R2 ; get buffer address MOV #BUF,R3 ; get buffer address MOV #8.,R4 ; get the loop count 1000$: .REPT 32. ; start block move MOV (R2)+,(R3)+ ; move a word .ENDR ; end block move DEC R4 ; count move BNE 1000$ ; if ne - loop ; ; *** GSSW *** ; TSTDEF GSSW$C ; get sense switch ; ; *** CLEF *** ; TSTDEF CLEF$C EF.LCL ; clear event flag (local) TSTDEF CLEF$C EF.GBL ; clear event flag (global) TSTDEF INIT ; Test init CRGF$C ; create group flags TEST ; Test code CLEF$C EF.GRP ; clear event flag (group) DONE ; Test done ELGF$C ; delete group flags ; ; *** RDEF *** ; TSTDEF RDEF$C EF.LCL ; read local flag TSTDEF RDEF$C EF.GBL ; read global flag TSTDEF INIT ; Test init CRGF$C ; create group flags TEST ; Test code RDEF$C EF.GRP ; read group flag DONE ; Test done ELGF$C ; . delete group flags ; ; *** SETF *** ; TSTDEF SETF$C EF.LCL ; set local flag TSTDEF SETF$C EF.GBL ; set global flag TSTDEF INIT ; Test init CRGF$C ; create group flags TEST ; Test code SETF$C EF.GRP ; set group flag DONE ; Test done ELGF$C ; . delete group flags ; ; *** WTLO *** ; TSTDEF INIT ; Test init SETF$C EF.LCL ; set local flag TEST ; Test code WTLO$C 0,000001 ; wait on flag TSTDEF INIT ; Test init SETF$C EF.GBL ; set global flag TEST ; Test code WTLO$C 2,000001 ; wait on flag TSTDEF INIT ; Test init CRGF$C ; create group flags SETF$C EF.GRP ; set group flag TEST ; Test code WTLO$C 4,000001 ; wait on flag DONE ; Test done ELGF$C ; delete group flags ; ; *** STLO *** ; TSTDEF INIT ; Test init SETF$C EF.LCL ; set local flag TEST ; Test code STLO$C 0,000001 ; wait on flag ; ; *** WTSE *** ; TSTDEF INIT ; Test init SETF$C EF.LCL ; set local flag TEST ; Test code WTSE$C EF.LCL ; wait on flag TSTDEF INIT ; Test init SETF$C EF.GBL ; set global flag TEST ; Test code WTSE$C EF.GBL ; wait on flag TSTDEF INIT ; Test init CRGF$C ; create group flags SETF$C EF.GRP ; set group flag TEST ; Test code WTSE$C EF.GRP ; wait on flag DONE ; Test done ELGF$C ; delete group flags ; ; *** STSE *** ; TSTDEF INIT ; Test init SETF$C EF.LCL ; set local flag TEST ; Test code STSE$C EF.LCL ; wait on flag ; ; *** RDAF *** ; TSTDEF RDAF$C BUF ; read all event flags ; ; *** RDXF *** ; TSTDEF INIT ; Test init CRGF$C ; create group flags TEST ; Test code RDXF$C BUF ; read extended flag DONE ; Test done ELGF$C ; . delete group flags ; ; *** CRGF/ELGF *** ; TSTDEF CRGF$C ; create group flags ELGF$C ; delete group flags ; ; *** GCII *** ; TSTDEF GCII$C BUF,32. ; get our CLI information ; ; *** GLUN *** ; TSTDEF GLUN$C XX.LUN,BUF ; get LUN information ; ; *** GMCX *** ; TSTDEF GMCX$C BUF ; get mapping context ; ; *** GPRT *** ; TSTDEF GPRT$C ,BUF ; get partition parameters ; ; *** GREG *** ; TSTDEF GREG$C ,BUF ; get region parameters ; ; *** GTIM *** ; TSTDEF GTIM$C BUF ; get time parameters ; ; *** GTSK *** ; TSTDEF GTSK$C BUF ; get task parameters ; ; *** FEAT *** ; TSTDEF FEAT$C FE$EXT ; test for 22-bit system ; ; *** TFEA *** ; TSTDEF TFEA$C T4$FMP ; test for fast mapping ; ; *** ALTP *** ; TSTDEF ALTP$C ,50. ; alter priority ; ; *** CRVT/ELVT *** ; TSTDEF CRVT$C ; create virtual terminal ELVT$S $DSW ; delete virtual terminal ; ; *** DECL *** ; TSTDEF DECL$C ; declare significant event ; ; *** DSAR/ENAR *** ; TSTDEF DSAR$C ; disable AST's ENAR$C ; enable AST's ; ; *** DSCP/ENCP *** ; TSTDEF DSCP$C ; disable checkpointing ENCP$C ; enable checkpointing ; ; *** EXTK *** ; TSTDEF EXTK$C 1 ; extend task up EXTK$C -1 ; extend task down ; ; *** SFPA *** ; TSTDEF SFPA$C AST0 ; specify AST SFPA$C ; specify no AST ; ; *** SPEA *** ; TSTDEF SPEA$C AST0 ; specify AST SPEA$C ; specify no AST ; ; *** SPRA *** ; TSTDEF SPRA$C AST0 ; specify AST SPRA$C ; specify no AST ; ; *** SRDA *** ; TSTDEF SRDA$C AST0 ; specify AST SRDA$C ; specify no AST ; ; *** SREA *** ; TSTDEF SREA$C AST0 ; specify AST SREA$C ; specify no AST ; ; *** SRRA *** ; TSTDEF SRRA$C AST0 ; specify AST SRRA$C ; specify no AST ; ; *** SVDB *** ; TSTDEF SVDB$C SST,SSTSZ ; specify SST table SVDB$C ; specify no table ; ; *** SVTK *** ; TSTDEF SVDB$C SST,SSTSZ ; specify SST table SVDB$C ; specify no table ; ; *** CMKT *** ; TSTDEF CMKT$C ; cancel mark time TSTDEF CMKT$C EF.LCL,AST1 ; cancel mark time ; ; *** MRKT *** ; TSTDEF MRKT$C ,1,3 ; issue one minute timer CMKT$C ; cancel mark time TSTDEF MRKT$C EF.LCL,1,3 ; issue one minute timer CMKT$C ; cancel mark time TSTDEF MRKT$C ,1,3,AST1 ; issue one minute timer CMKT$C ; cancel mark time TSTDEF MRKT$C EF.LCL,1,3,AST1 ; issue one minute timer CMKT$C ; cancel mark time ; ; *** ALUN *** ; TSTDEF ALUN$C XX.LUN,NL,0 ; assign logical unit ; ; *** QIO *** ; TSTDEF INIT ; Test init ALUN$C XX.LUN,NL,0 ; assign logical unit TEST ; Test code QIO$C IO.RVB,XX.LUN,EF.LCL,,,,;issue QIO WTSE$C EF.LCL ; wait till done ; ; *** QIOW *** ; TSTDEF INIT ; Test init ALUN$C XX.LUN,NL,0 ; assign logical unit TEST ; Test code QIOW$C IO.RVB,XX.LUN,EF.LCL,,,,;issue QIO TSTDEF INIT ; Test init ALUN$C XX.LUN,NL,0 ; assign logical unit TEST ; Test code QIOW$C IO.RVB,XX.LUN,EF.LCL,,IOS,,;issue QIO TSTDEF INIT ; Test init ALUN$C XX.LUN,NL,0 ; assign logical unit TEST ; Test code QIOW$C IO.RVB,XX.LUN,EF.LCL,,,AST1,;issue QIO TSTDEF INIT ; Test init ALUN$C XX.LUN,NL,0 ; assign logical unit TEST ; Test code QIOW$C IO.RVB,XX.LUN,EF.LCL,,IOS,AST1,;issue QIO ; ; *** CRRG/DTRG *** ; TSTDEF MOV #RS.MDL!RS.ATT!RO,RDB+R.GSTS ; set region status CRRG$C RDB ; create new region DTRG$C RDB ; delete new region ; ; *** ATRG/DTRG *** ; TSTDEF INIT ; Test init MOV #RS.NDL!RS.RED,RDB+R.GSTS ; set region status CRRG$C RDB ; create region TEST ; Test code ATRG$C RDB ; attach region DTRG$C RDB ; detach region DONE ; Test done MOV #RS.DEL,RDB+R.GSTS ; set region status ATRG$C RDB ; attach region MOV #RS.MDL,RDB+R.GSTS ; set region status DTRG$C RDB ; delete region ; ; *** CRAW/ELAW *** ; TSTDEF TEST ; Test code MOV #WS.64B,WDB+W.NSTS ; set window status CRAW$C WDB ; create new window ELAW$C WDB ; delete new window TSTDEF INIT ; Test init MOV #RS.MDL!RS.ATT!RO,RDB+R.GSTS ; set region status CRRG$C RDB ; create new region MOV RDB+R.GID,WDB+W.NRID ; copy region ID TEST ; Test code MOV #WS.MAP!WS.64B,WDB+W.NSTS ; set window status CRAW$C WDB ; create new window ELAW$C WDB ; delete new window DONE ; Test done DTRG$C RDB ; delete new region ; ; *** MAP *** ; TSTDEF INIT ; Test init MOV #RS.MDL!RS.ATT!RO,RDB+R.GSTS ; set region status CRRG$C RDB ; create new region MOV #WS.64B,WDB+W.NSTS ; set window status CRAW$C WDB ; create new window TEST ; Test code MOV RDB+R.GID,WDB+W.NRID ; copy region ID MOV #10,WDB+W.NOFF ; set map offset MAP$C WDB ; map window MOV RDB+R.GID,WDB+W.NRID ; copy region ID MOV #10,WDB+W.NOFF ; set map offset MAP$C WDB ; map window DONE ; Test done ELAW$C WDB ; delete new window DTRG$C RDB ; delete new region TSTDEF INIT ; Test init MOV #RS.MDL!RS.ATT!RO,RDB+R.GSTS ; set region status CRRG$C RDB ; create new region MOV #WS.64B,WDB+W.NSTS ; set window status CRAW$C WDB ; create new window TEST ; Test code MOV RDB+R.GID,WDB+W.NRID ; copy region ID MOV #10,WDB+W.NOFF ; set map offset MAP$C WDB ; map window MOV RDB+R.GID,WDB+W.NRID ; copy region ID MOV #20,WDB+W.NOFF ; set map offset MAP$C WDB ; map window DONE ; Test done ELAW$C WDB ; delete new window DTRG$C RDB ; delete new region TSTDEF INIT ; Test init MOV #RS.MDL!RS.ATT!RO,RDB+R.GSTS ; set region status CRRG$C RDB ; create new region MOV #RS.MDL!RS.ATT!RO,TWO+R.GSTS ; set region status CRRG$C TWO ; create new region MOV #WS.64B,WDB+W.NSTS ; set window status CRAW$C WDB ; create new window TEST ; Test code MOV RDB+R.GID,WDB+W.NRID ; copy region ID MOV #10,WDB+W.NOFF ; set map offset MAP$C WDB ; map window MOV TWO+R.GID,WDB+W.NRID ; copy region ID MOV #10,WDB+W.NOFF ; set map offset MAP$C WDB ; map window DONE ; Test done ELAW$C WDB ; delete new window DTRG$C RDB ; delete new region DTRG$C TWO ; delete new region TSTDEF INIT ; Test init MOV #RS.MDL!RS.ATT!RO,RDB+R.GSTS ; set region status CRRG$C RDB ; create new region MOV #WS.64B!WS.MAP,WDB+W.NSTS ; set window status CRAW$C WDB ; create new window TEST ; Test code MOV R0,-(SP) ; save R0 MOV R1,-(SP) ; save R1 MOV R2,-(SP) ; save R2 MOV R3,-(SP) ; save R3 MOV #000070,R0 ; set APR7 ID MOV #10,R1 ; set offset IOT ; issue fast map MOV (SP)+,R3 ; restore R3 MOV (SP)+,R2 ; restore R2 MOV (SP)+,R1 ; restore R1 MOV (SP)+,R0 ; restore R0 DONE ; Test done ELAW$C WDB ; delete new window DTRG$C RDB ; delete new region TSTDEF INIT ; Test init MOV #RS.MDL!RS.ATT!RO,RDB+R.GSTS ; set region status CRRG$C RDB ; create new region MOV #WS.64B!WS.MAP,WDB+W.NSTS ; set window status CRAW$C WDB ; create new window TEST ; Test code MOV R0,-(SP) ; save R0 MOV R1,-(SP) ; save R1 MOV R2,-(SP) ; save R2 MOV R3,-(SP) ; save R3 MOV #100070,R0 ; set APR7 ID MOV #10,R1 ; set offset MOV #100,R2 ; set length IOT ; issue fast map MOV (SP)+,R3 ; restore R3 MOV (SP)+,R2 ; restore R2 MOV (SP)+,R1 ; restore R1 MOV (SP)+,R0 ; restore R0 DONE ; Test done ELAW$C WDB ; delete new window DTRG$C RDB ; delete new region ; ; *** MAP/UMAP *** ; TSTDEF INIT ; Test init MOV #RS.MDL!RS.ATT!RO,RDB+R.GSTS ; set region status CRRG$C RDB ; create new region MOV #WS.64B,WDB+W.NSTS ; set window status CRAW$C WDB ; create new window TEST ; Test code MOV RDB+R.GID,WDB+W.NRID ; copy region ID MOV #10,WDB+W.NOFF ; set map offset MAP$C WDB ; map window UMAP$C WDB ; unmap window DONE ; Test done ELAW$C WDB ; delete new window DTRG$C RDB ; delete new region ; ; *** SDAT/RCVD *** ; TSTDEF INIT ; Test init GTSK$C BUF ; get task parameters MOV BUF+0,SEND+S.DATN+0 ; set task name MOV BUF+2,SEND+S.DATN+2 ; set task name TEST ; Test code DIR$ #SEND ; send data RCVD$C ,BUF ; receive data TSTDEF INIT ; Test init SRDA$C RAST1 ; specify receive AST GTSK$C BUF ; get task parameters MOV BUF+0,SEND+S.DATN+0 ; set task name MOV BUF+2,SEND+S.DATN+2 ; set task name TEST ; Test code DIR$ #SEND ; send data DONE ; Test done SRDA$C ; remove receive AST TSTDEF INIT ; Test init SRDA$C RAST2 ; specify receive AST GTSK$C BUF ; get task parameters MOV BUF+0,SEND+S.DATN+0 ; set task name MOV BUF+2,SEND+S.DATN+2 ; set task name TEST ; Test code DIR$ #SEND ; send data DONE ; Test done SRDA$C ; remove receive AST TSTDEF INIT ; Test init START RCVDE ; start target task TEST ; Test code SDAT$C RCVDE,BUF,EF.GBL ; send data DONE ; Test done ABRT$C RCVDE ; abort target task TSTDEF INIT ; Test init START RCVDA ; start target task TEST ; Test code SDAT$C RCVDA,BUF ; send data DONE ; Test done ABRT$C RCVDA ; abort target task ; ; *** SDAT/RCST *** ; TSTDEF INIT ; Test init START RCVDS ; start target task TEST ; Test code SDAT$C RCVDS,BUF ; send data USTP$C RCVDS ; unstop task DONE ; Test done ABRT$C RCVDS ; abort target task ; ; *** SDRC/RCVX *** ; TSTDEF SDRC$C RCVDX,BUF ; send data, request, connect ; ; *** VSDA/VRCD *** ; TSTDEF INIT ; Test init GTSK$C BUF ; get task parameters MOV BUF+0,VSND+S.DATN+0 ; set task name MOV BUF+2,VSND+S.DATN+2 ; set task name TEST ; Test code DIR$ #VSND ; send data VRCD$C ,BUF,256. ; receive data TSTDEF INIT ; Test init SRDA$C VAST1 ; specify receive AST GTSK$C BUF ; get task parameters MOV BUF+0,VSND+S.DATN+0 ; set task name MOV BUF+2,VSND+S.DATN+2 ; set task name TEST ; Test code DIR$ #VSND ; send data DONE ; Test done SRDA$C ; remove receive AST TSTDEF INIT ; Test init SRDA$C VAST2 ; specify receive AST GTSK$C BUF ; get task parameters MOV BUF+0,VSND+S.DATN+0 ; set task name MOV BUF+2,VSND+S.DATN+2 ; set task name TEST ; Test code DIR$ #VSND ; send data DONE ; Test done SRDA$C ; remove receive AST TSTDEF INIT ; Test init START VRCDE ; start target task TEST ; Test code VSDA$C VRCDE,BUF,256.,EF.GBL ; send data DONE ; Test done ABRT$C VRCDE ; abort target task TSTDEF INIT ; Test init START VRCDA ; start target task TEST ; Test code VSDA$C VRCDA,BUF,256. ; send data DONE ; Test done ABRT$C VRCDA ; abort target task ; ; *** VSDA/VRCS ; TSTDEF INIT ; Test init START VRCDS ; start target task TEST ; Test code VSDA$C VRCDS,BUF,256. ; send data USTP$C VRCDS ; unstop task DONE ; Test done ABRT$C VRCDS ; abort target task ; ; *** VSRC/VRCS *** ; TSTDEF VSRC$C VRCDX,BUF,256. ; send data, request, connect ; ; *** SREF/RREF *** ; TSTDEF INIT ; Test init MOV #RS.MDL!RS.ATT!RO,RDB+R.GSTS ; set region status CRRG$C RDB ; create new region MOV #WS.64B,WDB+W.NSTS ; set window status CRAW$C WDB ; create new window START RREFR ; start target TEST ; Test code MOV RDB+R.GID,WDB+W.NRID ; copy region ID MOV #10,WDB+W.NOFF ; set map offset SREF$C RREFR,WDB,EF.GBL ; send reference DONE ; Test done ELAW$C WDB ; delete new window DTRG$C RDB ; delete new region ABRT$C RREFR ; abort target TSTDEF INIT ; Test init MOV #WS.64B,WDB+W.NSTS ; set window status CRAW$C WDB ; create new window START RREFR ; start target TEST ; Test code MOV #RS.MDL!RS.ATT!RO,RDB+R.GSTS ; set region status CRRG$C RDB ; create new region MOV RDB+R.GID,WDB+W.NRID ; copy region ID MOV #10,WDB+W.NOFF ; set map offset SREF$C RREFR,WDB,EF.GBL ; send reference DTRG$C RDB ; detach new region DONE ; Test done ELAW$C WDB ; delete new window ABRT$C RREFR ; abort target TSTDEF INIT ; Test init MOV #RS.MDL!RS.ATT!RO,RDB+R.GSTS ; set region status CRRG$C RDB ; create new region MOV #WS.64B,WDB+W.NSTS ; set window status CRAW$C WDB ; create new window START RRSTR ; start target TEST ; Test code MOV RDB+R.GID,WDB+W.NRID ; copy region ID MOV #10,WDB+W.NOFF ; set map offset SREF$C RRSTR,WDB ; send reference USTP$C RRSTR ; unstop targer DONE ; Test done ELAW$C WDB ; delete new window DTRG$C RDB ; delete new region ABRT$C RRSTR ; abort targer ; ; *** RQST/ABRT *** ; TSTDEF RQST$C WSIGR ; start target ABRT$C WSIGR ; abort target ; ; *** RQST/EXIT *** ; TSTDEF RQST$C EXITR ; request null task ; ; *** SPWN/EXIT *** ; TSTDEF SPWN$C EXITR,,,,,EF.LCL,,LNS,LNSSZ,, ; spawn null task ; ; *** DECL/WSIG *** ; TSTDEF INIT ; Test init START WSIGR ; start target TEST ; Test code DECL$C ; declare significant event DONE ; Test done ABRT$C WSIGR ; abort target ; ; *** RSUM/SPND *** ; TSTDEF INIT ; Test init START SPNDR ; start target task TEST ; Test code RSUM$C SPNDR ; resume target task DONE ; Test done ABRT$C SPNDR ; abort target task ; ; *** USTP/STOP *** ; TSTDEF INIT ; Test init START STOPR ; start target task TEST ; Test code USTP$C STOPR ; unstop target task DONE ; Test done ABRT$C STOPR ; abort target task ; ; *** CNCT/EMST *** ; TSTDEF INIT ; Test init SDAT$C EMSTR,BUF ; tell target our name START EMSTR ; start target task TEST ; Test code CNCT$C EMSTR,EF.LCL ; connect to target task WTSE$C EF.LCL ; wait on flag DONE ; Test done ABRT$C EMSTR ; abort target task ; ; *** CSRQ *** ; TSTDEF CSRQ$C WSIGR ; cancel all request ; ; *** CLON/DLON *** ; TSTDEF CLON$C 0,LT.SES,LNS,LNSSZ,ENS,ENSSZ ; create logical DLON$C 0,LT.SES,LNS,LNSSZ ; delete logical ; ; *** RLON *** ; TSTDEF INIT ; Test init CLON$C 0,LT.SES,LNS,LNSSZ,ENS,ENSSZ ; create logical TEST ; Test code RLON$C 0,0,STS,LNS,LNSSZ,BUF,254.,RSIZE,MOD DONE ; Test done DLON$C 0,LT.SES,LNS,LNSSZ ; delete logical ; ; *** TLON *** ; TSTDEF INIT ; Test init CLON$C 0,LT.SES,LNS,LNSSZ,ENS,ENSSZ ; create logical TEST ; Test code TLON$C 0,0,STS,LNS,LNSSZ,BUF,254.,RSIZE,MOD DONE ; Test done DLON$C 0,LT.SES,LNS,LNSSZ ; delete logical ; ; *** GDIR *** ; TSTDEF GDIR$C 0,BUF,254.,RSIZE ; get our default directory ; ; *** SDIR *** ; TSTDEF SDIR$C 0,DIR,DIRSZ ; set default directory ; ; *** ACHN *** ; TSTDEF INIT ; Test init CLON$C 0,LT.SES,LNS,LNSSZ,ENS,ENSSZ ; create logical TEST ; Test code ACHN$C 0,0,XX.LUN,LNS,LNSSZ ; assign channel DONE ; Test done DLON$C 0,LT.SES,LNS,LNSSZ ; delete logical ; ; *** FSS *** ; TSTDEF INIT ; Test init CLON$C 0,LT.SES,LNS,LNSSZ,ENS,ENSSZ ; create logical TEST ; Test code FSS$C LNS,LNSSZ,BUF,40. ; parse specification DONE ; Test done DLON$C 0,LT.SES,LNS,LNSSZ ; delete logical ; ; *** PFCS *** ; TSTDEF INIT ; Test init CLON$C 0,LT.SES,LNS,LNSSZ,ENS,ENSSZ ; create logical TEST ; Test code PFCS$C 0,0,XX.LUN,LNS,LNSSZ,BUF,40.,RSIZE,PRS,PRSSZ,0,0,0 DONE ; Test done DLON$C 0,LT.SES,LNS,LNSSZ ; delete logical ; ; *** PRMS *** ; TSTDEF INIT ; Test init CLON$C 0,LT.SES,LNS,LNSSZ,ENS,ENSSZ ; create logical TEST ; Test code PRMS$C 0,0,XX.LUN,LNS,LNSSZ,BUF,40.,RSIZE,PRS,PRSSZ,0,0,0 DONE ; Test done DLON$C 0,LT.SES,LNS,LNSSZ ; delete logical ; ; *** ASTX *** ; TSTDEF NONE ; no test ; ; *** CINT *** ; TSTDEF NONE ; no test ; ; *** CPCR *** ; TSTDEF NONE ; no test ; ; *** EXIF *** ; TSTDEF NONE ; no test ; ; *** EXIT *** ; TSTDEF NONE ; no test ; ; *** EXST *** ; TSTDEF NONE ; no test ; ; *** GCCI *** ; TSTDEF NONE ; no test ; ; *** GMCR *** ; TSTDEF NONE ; no test ; ; *** MSDS *** ; TSTDEF NONE ; no test ; ; *** MVTS *** ; TSTDEF NONE ; no test ; ; *** RPOI *** ; TSTDEF NONE ; no test ; ; *** RUN *** ; TSTDEF NONE ; no test ; ; *** SCAA *** ; TSTDEF NONE ; no test ; ; *** SCLI *** ; TSTDEF NONE ; no test ; ; *** SDRP *** ; TSTDEF NONE ; no test ; ; *** SMSG *** ; TSTDEF NONE ; no test ; ; *** SNXC *** ; TSTDEF NONE ; no test ; ; *** STIM *** ; TSTDEF NONE ; no test ; ; *** SWST *** ; TSTDEF NONE ; no test ; ; *** ULGF *** ; TSTDEF NONE ; no test TSTEOT ;End-of-table ; ; Test code sequences. ; .PSECT RAST1: RCVD$C ,BUF ;Receive message ASTX$S ;Exit AST RAST2: RCVD$C ,BUF ;Receive message BCC RAST2 ; If CC - try again ASTX$S ;Exit AST VAST1: VRCD$C ,BUF,256. ;Receive message ASTX$S ;Exit AST VAST2: VRCD$C ,BUF,256. ;Receive message BCC VAST2 ; If CC - try again ASTX$S ;Exit AST AST1: TST (SP)+ ;Clean the stack AST0: ASTX$S ;Null AST XINT: RTI ;Exit STT .END