A large commit.
[pdp8.git] / sw / os8 / v3d / sources / fortran / all / pause.ra
diff --git a/sw/os8/v3d/sources/fortran/all/pause.ra b/sw/os8/v3d/sources/fortran/all/pause.ra
new file mode 100644 (file)
index 0000000..76419a4
--- /dev/null
@@ -0,0 +1,43 @@
+/
+/ VERSION 5A 4-26-77 MH
+/
+       SECT8   #PAUSE  /FORTRAN PAUSE HANDLER
+       EXTERN  #WRITO
+       EXTERN  #RSVO
+       EXTERN  #RENDO
+       BASE    0
+       FSTA    PNUM    /SAVE ARGUMENT
+       STARTD
+       FLDA    0       /GET RETURN ADDRESS
+       FSTA    PAURET
+       STARTF
+       TRAP3   #WRITO
+       JA      ZERO
+       JA      PAUFMT
+       FLDA    PNUM    /PRINT A MESSAGE "PAUSE N"
+       TRAP3   #RSVO
+       TRAP3   #RENDO
+       TRAP4   OPAUSE  /DO ACTUAL PAUSE
+PAURET,        JA      .       /RETURN
+
+OPAUSE,        0
+       AND%    0
+       AND%    0       /WASTE SOME TIME SO THAT THE LAST
+       AND%    0       /TWO CHARS OF THE MESSAGE WILL PRINT.
+       AND%    0
+       AND%    0
+       ISZ     ZERO
+       JMP     OPAUSE+1
+DPAUSE,        IOF
+       KSF
+       JMP     .-1
+       KRB
+       CLA
+       ION
+       CDF CIF 0
+       JMP%    OPAUSE
+
+PNUM,  F       0.0
+ZERO,  F       0.0
+PAUFMT,        TEXT    %(' PAUSE'I6/)%
+       END