.TITLE VARSR Variable Send Recieve .IDENT /V01.02/ .ENABL LC .PSECT C$CODE ; ; The modules in this file support variable send/recieve data ; (RSX-11M-PLUS ONLY) under 'C ; .PAGE .SBTTL VSDA$ .MCALL VSDA$S ;+ ; Index VSDA$ Variable Send Data ; ; Usage ; ; #include ; rad50 tsknam[2]; /* 2 word RAD50 reciever task name */ ; char *buffer; /* buffer with wich to abuse the reciever */ ; unsigned buflen; /* how much to abuse the reciever */ ; unsigned efn; /* event flag number */ ; int status; /* returned DSW */ ; ; status = vsda$(tsknam, buffer, buflen, efn ); ; ; [end] ;- ; Edits: ; V1.0 13-MAY-1985 ...BRU Initial Edit ; V1.2 14-MAY-1985 ...BRU Cleaned up the mess I made ; VSDA$:: MOV SP,R0 ; R0 --> stack frame pointer VSDA$S 2(R0),4(R0),6(R0),10(R0) MOV $DSW,R0 ; reurn the directive status word RETURN .PAGE .SBTTL VRCD$ .MCALL VRCD$S ;+ ; Index VRCD$ Variable Recieve Data ; ; Usage ; ; #include ; rad50 tsknam[2]; /* 2 word RAD50 reciever task name */ ; char *buffer; /* buffer with wich to abuse the reciever */ ; unsigned buflen; /* how much to abuse the reciever */ ; unsigned efn; /* event flag number */ ; unsigned status; /* returned DSW */ ; ; status = vsda$(tsknam, buffer, buflen, efn ); ; ; [end] ;- ; Edits: ; V1.0 13-MAY-1985 ...BRU Initial Edit ; V1.2 14-MAY-1985 ...BRU Cleaned up the mess I made ; VRCD$:: MOV SP,R0 ; R0 --> stack frame pointer VRCD$S 2(R0),4(R0),6(R0) MOV $DSW,R0 ; reurn the directive status word RETURN ; .PAGE .SBTTL VRCS$ .MCALL VRCS$S ;+ ; Index VRCS$ Variable Recieve Data or Stop ; ; Usage ; ; #include ; rad50 tsknam[2]; /* 2 word RADIX-50 sender task name */ ; char buffer[n]; /* pointer to recieve buffer */ ; int buflen; /* length of reciever buffer */ ; ; [end] ;- ; Edits: ; V1.0 14-MAY-1985 ...BRU Initial edit ; VRCS$:: MOV SP,R0 ; R0 --> STACK FRAME VRCS$S 2(R0),4(R0),6(R0) MOV $DSW,R0 ; RETURN THE DIRECTIVE STATUS WORD ; RETRUN .PAGE .SBTTL VRCX$ .MCALL VRCX$S ;+ ; Index VRCX$ Variable Recieve Data or Exit ; ; Usage ; ; #include ; rad50 tsknam[2]; /* 2 word RADIX-50 sender task name */ ; char buffer[n]; /* pointer to recieve buffer */ ; int buflen; /* length of reciever buffer */ ; ; [end] ;- ; Edits: ; V1.0 14-MAY-1985 ...BRU Initial edit ; VRCX$:: MOV SP,R0 ; R0 --> STACK FRAME VRCX$S 2(R0),4(R0),6(R0) MOV $DSW,R0 ; RETURN THE DIRECTIVE STATUS WORD ; RETRUN .END