.TITLE PSCNUM .IDENT /01/ .PSECT CODE,RO ; ; VERSION 01 ; ; TOM GETZINGER 11-SEP-80 ; ; THIS ROUTINE CONVERTS A PSECT NAME TO NUMNBER ; ; INPUTS: ; R0 -> PSECT NAME ; ; OUTPUTS: ; R0 - PSECT # ; PSCNUM:: MOV R1,-(SP) ; SAVE R1 MOV PSCTBL,R1 10$: CMP (R0),(R1) ; IS THIS THE RIGHT PSECT? BNE 20$ ; NO CMP 2(R0),2(R1) ; MAYBE BEQ 30$ ; YES 20$: ADD #8.,R1 ; NO, SO SKIP TO THE NEXT ONE BR 10$ ; AND TRY IT 30$: MOV R1,R0 MOV (SP)+,R1 ; RESTORE R1 SUB PSCTBL,R0 ; GET OFFSET ASH #-3,R0 ; GET PSECT # RETURN ; AND WE'RE DONE .END