        .title  recall
        .link   "sys$system:sys.stb"/selective_search
        .link   "sys$system:dcldef.stb"/selective_search
PRC_C_CMDBUFSIZ=1025
        .psect  $LOCAL quad,pic,con,lcl,noshr,noexe,wrt
buf1:   .blkb   PRC_C_CMDBUFSIZ         ; first copy of recall-buffer
buf2:   .blkb   PRC_C_CMDBUFSIZ         ; second copy of recall-buffer
        .psect  $CODE quad,pic,con,lcl,shr,exe,nowrt
        .entry  recall,^m<r2,r3,r4,r5,r6,r7,r8,r9,r10,r11>
        movl    B^4(ap),r11
        cvtwl   (r11),r8
        movl    B^4(r11),r11
        movl    B^8(ap),r10
        movl    #0,r9
        movl    #CTL$AG_CLIDATA,r0
        movl    W^PPD$L_PRC(r0),r0
        movl    W^PRC_L_RECALLPTR(r0),r7
        moval   W^PRC_G_COMMANDS(r0),r0
        subl2   r0,r7
        moval   buf1,r1
        movc3   #PRC_C_CMDBUFSIZ,(r0),(r1)
        moval   buf1,r1
        moval   buf2,r2
        movc3   #PRC_C_CMDBUFSIZ,(r1),(r2)
        moval   buf2,r6
        addl2   r6,r7
        subl3   #PRC_C_CMDBUFSIZ,r7,r6
100$:   decl    r7
        cmpl    r7,r6
        blss    200$
        tstb    (r7)
        bleq    200$
        cvtbl   (r7),(r10)
        subl2   (r10),r7
        movc3   (r10),(r7),(r11)
        decl    r7
        decl    r7
        addl2   #4,r10
        addl2   r8,r11
        incl    r9
        brb     100$
200$:   movl    r9,@B^12(ap)
        ret
        .end
