.TITLE GPRT Get Partition Parameters .IDENT "V1.2" .ENABL LC .PSECT C$CODE ;+ ; Index GPRT Get Partition Parameters ; ; Usage ; ; #include ; #include ; rad50 prtnam[]; /* RAD50 partition name */ ; struct pparbf pardat; /* Partition param's buffer */ ; word status; /* Returned DSW */ ; ; status = gprt(prtnam, &pardat); ; ; Notes ; ; If a NULL pointer to the partition name is passed, the parameters ; returned are those of the issuing task's unnamed subpartition. ; If the first word of the partition name is zero, this function ; returns a code of IE.PNS, rather than letting the exec try to ; interpret the call as a GREG$S. ; [end] ;- ; Edits: ; V1.0 12-Jun-80 RBD Initial Edit ; V1.1 18-Oct-82 RBD Fixed stack offsets so routine actually works. ; V1.2 20-Oct-82 RBD Change P-Section. Fix documentation. ; .mcall gprt$s gprt:: mov r1,-(sp) ;Save r1 mov sp,r1 ;Save arg frame pointer tst 4(r1) ;Ptr. to partition name NULL? ;01 beq 10$ ;NULL means omit 'prt' in macro call mov #IE.PNS,r0 ;assume bad partition name tst @4(r1) ;1st word of partition name = 0 ?? ;01 beq 30$ ;if so return the IE.PNS. gprt$s 4(r1),6(r1) ;Call for named partition parameters. ;01 br 20$ ;... or ... 10$: gprt$s ,6(r1) ;Call for task subpartition parameters. ;01 20$: mov $dsw,r0 ;return real dsw 30$: mov (sp)+,r1 ;restore r1 return .end