.TITLE USRPMA .IDENT /061083/ ; ; FILE:[22,310]USRPMA.MAC ; AUTHOR: JIM BOSTWICK 6-OCT-83 ; HISTORY: ; ; .REM | PROCEDURE USRPMA(VAR INP, OUT:TEXT);EXTERNAL; {*USER* This procedure will produce an error walkback by calling the OMSI PMA routine. If the program has been built with /NOWALKBACK, this routine does nothing. } | PROC USRPMA PARAM IN, ADDRESS ; INPUT FILE PARAM OU, ADDRESS ; OUTPUT FILE SAVE BEGIN mov sp, r1 ; save entry sp mov @#$vext, r4 ; get addrs of vector save area mov v$usrpc(r4), V$pmpc(r4) ; save user PC for PMA mov @v$dynl(r4), v$pmdl(r4) ; save dynamic link for PMA mov r4, -(sp) ; add #v$pmdl, @sp ; point to PMA entry point mov ou(r1), -(sp) ; mov in(r1), -(sp) ; push file variables mov v$dynl(r4), r0 ; pick up dynamic link mov 2(r0), r0 ; beq 1$ ; br if no walkback jsr pc, @r0 ; call pma 1$: endpr .end