fixblk: mov 2(r3), r3 ; My_Read Entries ; bpt mov r5, tmp ; HIGH sub r3, tmp bpl 10$ iot 10$: cmp r3, r5 bhis 400$ clr r2 div #30., r2 beq 20$ clr r4 div #60., r4 cmp r2, r4 blos 20$ inc r1 inc r1 20$: gos getrec <#1, 32(r1), #FB4, #UnLock> tst r2 beq 50$ cmp r2, r4 bhi 40$ 30$: gos tryrec <#1, 2(R1), #FB4, #UnLock> sob r2, 30$ br 50$ 40$: asl r4 sub r2, r4 beq 50$ 45$: gos tryrec <#1, 4(R1), #FB4, #UnLock> sob r4, 45$ 50$: mov r3, r2 ash #2, r3 add #10, r3 mov r1, r4 add r3, r4 400$: rts pc ftcgrp: push mov r0, tmp+4 mov #thisg, r3 gos getrec <#1, MyRec, #FB2, #UnLock> mov 24(r1), tmp ; # of memberships mov 26(r1), r4 ; Pointer to first block of memberships 20$: gos tryrec <#1, R4, #FB2, #UnLock> mov r1, r2 mov r1, tmp+2 add #10, r2 mov #20., r5 mov tmp+4, r1 cmp r5, tmp blos 30$ mov tmp, r5 30$: sub r5, tmp 40$: cmp (r2)+, r1 bne 50$ mov -2(r2), (r3)+ mov (r2)+, (r3)+ mov r4, (r3)+ mov tmp+2, r0 sub r2, r0 mov r0, (r3)+ br 80$ 50$: tst (r2)+ 60$: tst (r2)+ sob r5, 40$ tst tmp bne 20$ br 999$ 80$: tst (pc)+ 999$: sec pop rts pc sekgrp: push mov thisgp, r3 cmp (r3), r0 beq 70$ add #10, r3 10$: tst (r3) beq 50$ cmp (r3)+, r0 beq 100$ add #6, r3 br 10$ 50$: br 999$ 70$: mov r3, r2 mov #thisg+2, r1 mov (r2)+, (r1)+ mov (r2)+, (r1)+ mov (r2), (r1) br 998$ 100$: mov r3, r2 mov #thisg+2, r1 mov (r2)+, (r1)+ mov (r2)+, (r1)+ mov (r2), (r1) 110$: mov (r2)+, -12(r2) ; OBS!! May not work on all PDP's. mov (r2)+, -12(r2) ; -12 for PDP/11-70 mov (r2)+, -12(r2) mov (r2)+, -12(r2) tst (r2) bne 110$ clr -10(r2) 998$: tst (pc)+ 999$: sec pop rts pc