A large commit.
[pdp8.git] / sw / os8 / v3d / sources / fortran / all / ifix.ra
diff --git a/sw/os8/v3d/sources/fortran/all/ifix.ra b/sw/os8/v3d/sources/fortran/all/ifix.ra
new file mode 100644 (file)
index 0000000..f283f82
--- /dev/null
@@ -0,0 +1,30 @@
+/
+/ VERSION 5A 4-27-77  PT
+/
+       SECT    IFIX
+       ENTRY   AINT
+       ENTRY   INT
+       BASE    0
+AINT,
+INT,   FLDA    0               /ADDRESS OF CALL
+       STARTD
+       FSTA    RETRN           /SAVE RERN
+       FADD    TWO             /INCR BY TWO
+       FSTA    3               /GIVES ADDRESS OF ARG POINTER
+       FLDA%   3               /GET ADDR OF ARG
+       FSTA    3
+       STARTF
+       FLDA%   3               /GET ARG
+       JAL     RETRN   /LEAVE BIGGIES ALONE
+       JLT     NEGFIX          /NEGATIVE ARG
+       ALN     0               /FIX POSITIVE ARG
+       FNORM
+       JA      RETRN           /RETURN
+NEGFIX,        FNEG                    /FIRST MAKE POSITIVE
+       ALN     0               /THEN FIX
+       FNORM
+       FNEG                    /THEN RE-NEGATE
+RETRN, JA .
+TWO,   0;2
+       END
+\f