File: DROP.LS of Disk: V50/Source/Source-Listing-FORTRAN-2
(Source file text)
RALF V50A 24-JUL-20 PAGE 1 SECT DROP / SUBROUTINE DROP(OBJECT,WHERE) / C / C PLACE AN OBJECT AT A GIVEN LOC, PREFIXING IT ONTO THE ATLOC LIST. / C DECR HOLDNG IF THE OBJECT WAS BEING TOTED. / C / IMPLICIT INTEGER (A-Z) / COMMON /PLACOM/ ATLOC,LINK,PLACE,FIXED,HOLDNG / DIMENSION ATLOC(150) / DIMENSION LINK(200) / DIMENSION PLACE(100) / DIMENSION FIXED(100) 00000 1030 JA #ST 00001 0063 #XR, ORG .+10 00012 0422 TEXT +DROP + 00013 1720 00014 4040 00015 1100 #RET, SETX #XR 00016 0002 00017 1110 SETB #BASE 00020 0023 00021 1030 JA .+3 00022 0024 #BASE, ORG .+6 OBJECT, ORG .+3 WHERE, ORG .+3 00037 0001 ONE, F 1.0 00040 2000 00041 0000 00042 0007 HUND, F 100.0 00043 3100 00044 0000 ORG #BASE+30 00053 0040 FNOP 00054 1030 JA #RET 00055 0015 00056 0040 FNOP 00057 0000 #GOBAK, 0;0 00060 0000 #LBL=. COMMON PLACOM ATLOC, ORG .+702 LINK, ORG .+1130 PLACE, ORG .+454 FIXED, ORG .+454 HOLDNG, ORG .+3 ORG #LBL #RTN, BASE #BASE 00061 1030 JA #GOBAK 00062 0057 00063 0006 #ST, STARTD 00064 0210 0210 00065 6400 FSTA #GOBAK,0 00066 0057 RALF V50A 24-JUL-20 PAGE 1-1 00067 0200 0200 00070 1100 SETX #XR 00071 0002 00072 1110 SETB #BASE 00073 0023 00074 0101 LDX 0,1 00075 0000 00076 6200 FSTA #BASE 00077 0710 FLDA% #BASE,1+ 00100 6202 FSTA OBJECT 00101 0710 FLDA% #BASE,1+ 00102 6203 FSTA WHERE 00103 0005 STARTF 00104 0603 FLDA% WHERE /Pre-load index regs 00105 0026 ATX 6 00106 0602 FLDA% OBJECT 00107 0027 ATX 7 / IF(OBJECT.GT.100)GOTO 1 00110 2205 FSUB HUND 00111 0025 ATX 5 /Save object-100 00112 1060 JGT #1 00113 0133 / IF(PLACE(OBJECT).EQ.-1)HOLDNG=HOLDNG-1 00114 0204 FLDA ONE 00115 1470 FADD PLACE-3,7 00116 2027 00117 1040 JNE #G1 00120 0126 00121 0400 FLDA HOLDNG 00122 3162 00123 2204 FSUB ONE 00124 6400 FSTA HOLDNG 00125 3162 / PLACE(OBJECT)=WHERE 00126 0603 #G1, FLDA% WHERE 00127 6470 FSTA PLACE-3,7 00130 2027 / GOTO 2 00131 1030 JA #2 00132 0136 / 1 FIXED(OBJECT-100)=WHERE 00133 0603 #1, FLDA% WHERE 00134 6450 FSTA FIXED-3,5 00135 2503 / 2 IF(WHERE.LE.0)RETURN 00136 1020 #2, JLE #RTN 00137 0061 / LINK(OBJECT)=ATLOC(WHERE) 00140 0467 #G2, FLDA ATLOC-3,6 00141 7775 00142 6470 FSTA LINK-3,7 00143 0677 / ATLOC(WHERE)=OBJECT 00144 0037 XTA 7 RALF V50A 24-JUL-20 PAGE 1-2 00145 6467 FSTA ATLOC-3,6 00146 7775 / RETURN / END 00147 1030 JA #RTN 00150 0061 RALF V50A 24-JUL-20 PAGE 1-3 NO ERRORS 22 SYMBOLS, NO ABS REFS # C 00000 #BASE 00023 #GOBAK 00057 #G1 00126 #G2 00140 #LBL 00061 #MAIN S 00000 #RET 00015 #RTN 00061 #ST 00063 #XR 00002 #1 00133 #2 00136 ATLOC 00000 DROP S 00151 FIXED 02506 HOLDNG 03162 HUND 00042 LINK 00702 OBJECT 00031 ONE 00037 PLACE 02032 PLACOM C 03165 WHERE 00034