File: SEED.LS of Disk: V50/Source/Source-Listing-FORTRAN-2
(Source file text)
RALF V50A 24-JUL-20 PAGE 1 FIELD1 SETIDL /IDLE RANDOM NUMBER GENERATOR EXTERN #IDLE 00000 1030 JA #RET 00001 0047 00002 2305 TEXT +SETIDL+ 00003 2411 00004 0414 00005 1100 SXR, SETX XR 00006 0014 00007 1110 SETB BP 00010 0011 00011 0000 BP, F 0.0 00012 0000 00013 0000 XR, ORG .+3 00017 0000 EXP, 0 00020 0007 IDLAD, ADDR #IDLE-1 / Pointer to idle routine in FRTS 00021 7777 POINT, 00022 0000 JOB, ADDR DOIT / Address of routine to run 00023 0117 ORG XR+10 00024 0100 K0100, 100 00025 0003 K0003, 3 00026 0017 ROTWRD, 0017 #LBL=. COMMON NUMCOM NUMBER, ORG .+3 COMMON TXTCOM RTEXT, ORG .+1147 LINES, ORG .+0044 ASCVAR, ORG .+0003 TXTLOC, ORG .+0003 DATA, ORG .+0352 ORG #LBL 00027 0000 SEEDPT, ADDR NUMBER 00030 0000 00031 0000 0 00032 7777 DATHAK, 7777 00033 0000 ADDR ASCVAR 00034 1213 00035 1762 DATABL, 1763-1 / Address of Direct Access table entry 8 in FRTS 00036 0000 COUNT, 0 / Idle loop count 00037 7774 COUNT2, 7774 / Outer counter 00040 7774 RESET, 7774 / Outer counter value X4=14 / Autoindex reg ORG 10*3+BP 00041 0040 FNOP 00042 1030 JA SXR 00043 0005 00044 0000 0 00045 1030 RET, JA . 00046 0045 RALF V50A 24-JUL-20 PAGE 1-1 BASE 0 00047 0006 #RET, STARTD 00050 0210 FLDA 10*3 00051 6400 FSTA RET 00052 0045 00053 1110 SETB BP 00054 0011 BASE BP 00055 0005 STARTF 00056 4000 TRAP4 SET8 /GO TO 8 MODE STUFF. 00057 0062 00060 1030 JA RET /DONE. ON IDLE QUEUE. 00061 0045 00062 0000 SET8, 0 / / Horrible hackery. This sets up the FRTS direct access table / to allow us to open the ADVENT.DA file without having to / rebuild it each time. Open it using USR, and this lets us / go use it later. (DEFINE FILE always creates a new one.) 00063 1235 TAD DATABL 00064 3014 DCAZ X4 00065 6201 SCDF, CDF 0 00066 1232 TAD DATHAK 00067 3614 DCA% X4 00070 1233 TAD DATHAK+1 00071 3614 DCA% X4 00072 1234 TAD DATHAK+2 00073 3614 DCA% X4 00074 1304 TAD CDFIDL 00075 7640 SZA CLA 00076 5315 JMP SFIELD /ALREADY DONE 00077 1220 TAD IDLAD /FIELD OF IDLE ROUTINE 00100 4373 JMS MKCDF 00101 3304 DCA CDFIDL 00102 1221 TAD IDLAD+1 /ADDRESS OF #IDLE 00103 3014 DCAZ X4 00104 0000 CDFIDL, 0 /GETS CDF 00105 1317 TAD SKPINS /SKP INSTRUCTION 00106 3414 DCAZ% X4 /STORE AT #IDLE 00107 1223 TAD JOB+1 /ADDRESS OF IDLE ROUTINE 00110 3414 DCAZ% X4 /STORE AT #IDLE+1 00111 1222 TAD JOB 00112 4373 JMS MKCDF 00113 7001 IAC / CDF -> CIF CDF 00114 3414 DCAZ% X4 /STORE AT #IDLE+2 00115 6203 SFIELD, CIF CDF 00116 5662 JMP% SET8 / / Blinky lights / SKPINS, 00117 7410 DOIT, SKP / Entry point, one-time use constant 00120 1226 TAD ROTWRD /GET WORD TO DISPLAY RALF V50A 24-JUL-20 PAGE 1-2 00121 2236 STALL, ISZ COUNT 00122 5321 JMP STALL 00123 2237 ISZ COUNT2 00124 5321 JMP STALL 00125 7004 FLOP, RAL /Shift over 00126 3226 DCA ROTWRD /Save it 00127 1240 TAD RESET /Reset outer counter 00130 3237 DCA COUNT2 00131 7420 SNL 00132 5345 JMP DONE 00133 1226 TAD ROTWRD 00134 7010 FLIP, RAR /Rotate back 00135 3226 DCA ROTWRD 00136 1325 TAD FLOP 00137 3236 DCA COUNT /Save old rotate 00140 1334 TAD FLIP /And flip 'em around 00141 3325 DCA FLOP 00142 1236 TAD COUNT 00143 3334 DCA FLIP 00144 3236 DCA COUNT 00145 1227 DONE, TAD SEEDPT 00146 4373 JMS MKCDF 00147 3350 DCA .+1 00150 0000 0 00151 1230 TAD SEEDPT+1 00152 3217 DCA EXP 00153 7101 CLL IAC 00154 1217 TAD EXP 00155 3222 DCA POINT 00156 1622 TAD% POINT 00157 1224 TAD K0100 00160 7510 SPA 00161 5364 JMP OVRFLO 00162 3622 DCA% POINT 00163 5320 JMP DOIT+1 00164 7300 OVRFLO, CLA CLL 00165 3622 DCA% POINT 00166 1617 TAD% EXP 00167 7001 IAC 00170 0225 AND K0003 00171 3617 DCA% EXP 00172 5320 JMP DOIT+1 / Change field number into CDF instruction 00173 0000 MKCDF, 0 00174 7106 CLL RTL 00175 7004 RAL /INTO BITS 6-8 00176 1265 TAD SCDF /CDF TO #IDLE 00177 5773 JMP% MKCDF RALF V50A 24-JUL-20 PAGE 1-3 NO ERRORS 42 SYMBOLS, NO ABS REFS # C 00000 #IDLE X 00000 #LBL 00027 #MAIN S 00000 #RET 00047 ASCVAR 01213 BP 00011 CDFIDL 00104 COUNT 00036 COUNT2 00037 DATA 01221 DATABL 00035 DATHAK 00032 DOIT 00117 DONE 00145 EXP 00017 FLIP 00134 FLOP 00125 IDLAD 00020 JOB 00022 K0003 00025 K0100 00024 LINES 01147 MKCDF 00173 NUMBER 00000 NUMCOM C 00003 OVRFLO 00164 POINT 00022 RESET 00040 RET 00045 ROTWRD 00026 RTEXT 00000 SCDF 00065 SEEDPT 00027 SETIDL F 00200 SET8 00062 SFIELD 00115 SKPINS 00117 STALL 00121 SXR 00005 TXTCOM C 01573 TXTLOC 01216 XR 00014 X4 00014