A large commit.
[pdp8.git] / sw / adventure / work / JUGGLE.RA
diff --git a/sw/adventure/work/JUGGLE.RA b/sw/adventure/work/JUGGLE.RA
new file mode 100644 (file)
index 0000000..516cde4
--- /dev/null
@@ -0,0 +1,76 @@
+       SECT    JUGGLE\r
+/       SUBROUTINE JUGGLE(OBJECT)\r
+/       C\r
+/       C JUGGLE AN OBJECT BY PICKING IT UP AND PUTTING IT DOWN AGAIN, THE PURPOSE\r
+/       C BEING TO GET THE OBJECT TO THE FRONT OF THE CHAIN OF THINGS AT ITS LOC.\r
+/       C\r
+/       IMPLICIT INTEGER (A-Z)\r
+/       COMMON /PLACOM/ ATLOC,LINK,PLACE,FIXED,HOLDNG\r
+/       DIMENSION ATLOC(150),LINK(200),PLACE(100),FIXED(100)\r
+/       \r
+       EXTERN  MOVE\r
+       JA      #ST\r
+#XR,   ORG     .+10\r
+       TEXT    +JUGGLE+\r
+#RET,  SETX    #XR\r
+       SETB    #BASE\r
+       JA      .+3\r
+#BASE, ORG     .+6\r
+OBJECT,        ORG     .+3\r
+I,     ORG     .+3\r
+J,     ORG     .+3\r
+#TMP,  ORG     .+3\r
+HUND,  F 100.0\r
+       ORG     #BASE+30\r
+       FNOP\r
+       JA      #RET\r
+       FNOP\r
+#GOBAK,        0;0\r
+       #LBL=.\r
+       COMMON  PLACOM\r
+ATLOC, ORG     .+0702\r
+LINK,  ORG     .+1130\r
+PLACE, ORG     .+454\r
+FIXED, ORG     .+454\r
+HOLDNG,        ORG     .+3\r
+       ORG     #LBL\r
+#RTN,  BASE    #BASE\r
+       JA      #GOBAK\r
+#ST,   STARTD\r
+       0210\r
+       FSTA    #GOBAK,0\r
+       0200\r
+       SETX    #XR\r
+       SETB    #BASE\r
+       LDX     0,1\r
+       FSTA    #BASE\r
+       FLDA%   #BASE,1+\r
+       FSTA    OBJECT\r
+       STARTF\r
+       FLDA%   OBJECT\r
+       ATX     7\r
+/       I=PLACE(OBJECT)\r
+       FLDA    PLACE-3,7\r
+       FSTA    I\r
+/       J=FIXED(OBJECT)\r
+       FLDA    FIXED-3,7\r
+       FSTA    J\r
+       STARTD\r
+/       CALL MOVE(OBJECT,I)\r
+       FLDA    OBJECT\r
+       FSTA    #G1\r
+       STARTF\r
+       JSR     MOVE\r
+       JA      .+6\r
+#G1,   JA      .\r
+       JA      I\r
+/       CALL MOVE(OBJECT+100,J)\r
+/       RETURN\r
+/       END\r
+       FLDA%   OBJECT\r
+       FADD    HUND\r
+       FSTA    #TMP\r
+       JSR     MOVE\r
+       JA      #RTN\r
+       JA      #TMP\r
+       JA      J\r