1 /SPCWAR BY D.E. WREGE 2 VC8E=1 3 DK8EA=1 4 M1703=1 5 EAE=1 6 / 7 / VERSION 3 8 / 9 / 10 / 11 / 12 / 13 / 14 / 15 /COPYRIGHT (C) 1974 BY D.E. WREGE & ASSOC. 16 / 17 / 18 / 19 / 20 / 21 / 22 / 23 / 24 / 25 / 26 /THE INFORMATION IN THIS DOCUMENT IS SUBJECT TO CHANGE WITHOUT NOTICE 27 /AND SHOULD NOT BE CONSTRUED AS A COMMITMENT BY D.E. WREGE & ASSOCIATES. 28 /D.E. WREGE & ASSOCIATES ASSUME NO RESPONSIBILITY 29 /FOR ANY ERRORS THAT MAY APPEAR IN THIS DOCUMENT. 30 / 31 /THE SOFTWARE DESCRIBED IN THIS DOCUMENT IS FURNISHED TO GEORGIA TECH. 32 /UNDER A LICENSE FOR USE ON A SINGLE COMPUTER SYSTEM AND CAN BE COPIED 33 /(WITH INCLUSION OF THIS COPYRIGHT NOTICE) ONLY FOR USE IN SUCH 34 /SYSTEM, EXCEPT AS MAY OTHERWISE BE PROVIDED IN WRITING BY D.E. WREGE 35 /AND ASSOC. 36 / 37 /D.E. WREGE AND ASSOC. ASSUME NO RESPONSIBILITY FOR THE USE 38 /OR RELIABILITY OF ITS SOFTWARE ON EQUIPMENT THAT IS NOT SUPPLIED BY 39 /DIGITAL. 40 / 41 / 42 / 43 / 44 / 45 / 46 / 47 / 48 / 49 / 50 /SPACE WAR. V3 51 52 /D.E. WREGE 53 / ADDED VC8I SUPPORT - CHD 54 55 56 /CONDITIONAL ASSEMBLY PARAMETERS 57 IFNDEF EAE 58 59 /FOR AX08 TYPE DISPLAY DEFINE AX08=1 60 IFNDEF AX08 61 /FOR TYPE 30G DISPLAY DEFINE T30G=1 62 IFNDEF T30G 63 /FOR PDP-8/I OR POSIBUS VC8I DISPLAY VC8I=1 64 IFNDEF VC8I 65 /FOR PDP-8/E VC8E DISPLAY VC8E=1 66 IFNDEF VC8E 67 /PDP-12 - VR12 IS DEFAULT 68 IFZERO VC8E+VC8I+T30G+AX08 69 IFNDEF PDP12 70 71 /CONDITIONAL ASSEMBLIES FOR CLOCK 72 /FOR DK8-EA (60 CYCLE) DK8EA=1 73 IFNDEF DK8EA 74 /FOR DK8-EP PROGRAMABLE DK8EP=1 75 IFNDEF DK8EP 76 /FOR FRED DYER'S FUNNY CLOCK FCLOCK=1 77 IFNDEF FCLOCK 78 /DEFAULT IS PDP-12 KW12-A 79 IFNZRO PDP12 < 80 IFZERO DK8EA+AX08+DK8EP+FCLOCK < 81 IFNDEF KW12 >> 82 IFNDEF KW12 83 84 85 /DEFS 86 87 IFNZRO PDP12 < 88 DIS= 140 /DISPLAY A POINT LINC MODE 89 LINC= 6141 /GO TO LINC MODE 90 PDP= 0002 /GO TO 8-MODE> 91 92 IFNZRO EAE < 93 MUY= 7405 /EAE MULTIPLY 94 DVI= 7407 /EAE DIVIDE 95 NMI= 7411 /EAE NORMALIZE 96 SHL= 7413 /EAE SHIFT LEFT 97 ASR= 7415 /ARITHMETIC SHIFT RIGHT 98 LSR= 7417 /LOGICAL SHIFT RIGHT 99 MQL= 7421 /LOAD MQ;CLEAR AC 100 SCL= 7403 /STEP COUNTER LOAD FROM MEMORY 101 SCA= 7441 /STEP COUNTER TO ACCUMULATOR 102 MQA= 7501 /READ MQ 103 CAM= CLA MQL 104 > 105 106 107 D= 10 /DISPLAY BUFFER FIELD 108 DISBUF=4000 /ADDRESS OF DISPLAY BUFFER 109 110 111 /PAGE ZERO CONSTANTS AND VARIABLES 112 113 *1 114 00001 5402 JMP I .+1 115 00002 5402 INTRPT 116 117 *6 118 00006 0000 QBETA, 0 /FOR PDP-12 119 00007 0000 QALPHA, 0 /ALPHA REG USED FOR DISPLAY 120 121 00010 0000 QXR1, 0 /RESERVED XR'S 122 00011 0000 QXR2, 0 123 00012 0000 QDISXR, 0 /FOR DISPLAY ROUTINE ONLY 124 00013 0000 QXR3, 0 /MUST BE USED WITH IOF 125 126 *20 127 /VARIABLES RESERVED 128 129 00020 0000 QR, 0 /SHIP POSITION RADIAL 130 00021 0000 ALIVE, 0 /=0 WHEN SHIP BLOWN UP 131 /NON-ZERO OTHERWISE 132 00022 0000 QXPOS, 0 /X COORD. 133 00023 0000 QYPOS, 0 /Y COORD. 134 00024 0000 QVX, 0 /X COMPONENT VELOCITY 135 00025 0000 QVY, 0 /Y COMPONENT VELOCITY 136 00026 0000 QPH, 0 /SHIP ANGLE (NOT POSITION DEPENDENT) 137 00027 0000 QPHDOT, 0 /SHIP ANGULAR VELOCITY 138 00030 0000 QPHR, 0 /PRECISION QPH 139 140 00031 0000 SHIELD, 0 /NON-ZERO WHEN SHIELDS ARE UP. 141 /WHEN SHIELDS ARE UP NO MISSELS 142 /AND NO ACCELLERATION ALLOWED. 143 00032 0000 HYPERS, 0 /NON-ZERO WHEN IN HYPERSPACE 144 00033 0001 MISCNT, 1 /-# MISSLES LEFT 145 00034 0000 ARMED, 0 /INCREMENTS TO 0 BEFORE SHIP 146 /CAN FIRE 147 00035 0000 QSHIP, 0 /POINT TO SHIP PICTURE 148 00036 0000 QSHIPN, 0 /# POINTS TO BE DISPLAYED IN SHIP 149 00037 0000 QSINPH, 0 /SIN(QPH) 150 00040 0000 QCOSPH, 0 /COS(QPH) 151 SHIPSZ=.-QR /#ENTRIES/SHIP 152 153 154 00041 3777 QTIME, 3777 /TIME SCALING FACTOR 155 /TEMPS AND VARIABLES 156 157 00042 0000 QSINTH, 0 /SIN(QTH) 158 00043 0000 QCOSTH, 0 /COS(QTH) 159 00044 0000 BREAKU, 0 /NON-ZERO WHEN SHIP BREAKING UP. 160 00045 0000 DBUFP, 0 /POINTS TO NEXT POS IN DISP BUFF. 161 00046 0000 QTHR, 0 /NON-ZERO WHEN MAIN ROCKETS ON 162 00047 0000 QTHA, 0 /NON-ZERO WHEN ANGULAR THRUST ON 163 00050 0000 CONSER, 0 /NON-ZERO IF CONSERVING ANGULAR 164 /MOMENTUM 165 00051 0000 NUMMIS, 0 /# MISSELS IN MISTBL 166 00052 0000 NNUMMI, 0 /TEMPORORY FOR UPDATING MISSLES 167 168 00053 0001 MAXMIS, -7777 /NUMBER OF ALLOWABLE MISSELS 169 00054 0000 QTM1, 0 /GENERAL TEMPORARYS 170 00055 0000 QTM2, 0 171 00056 0000 QCNT1, 0 172 00057 0000 QCNT2, 0 173 00060 0000 QCNT3, 0 /MUST BE USED WITH IOF 174 175 /CONSTANTS 176 177 00061 0010 QTHRUS, 10 /THRUST 178 00062 1000 QGRAV, 1000 /GRAVITY 179 00063 0004 QRET, 4 /THRUST ANGULAR RETRO'S 180 00064 1000 QTHROC, 1000 /MUSSEL VELOCITY OF ROCKETS 181 182 183 /THE FOLLOWING ARE POINTERS & FLAGS 184 185 00065 2000 PSAUCP, SAUC /POINTER TO SAUCER SHIP GENERATOR 186 00066 3400 MISPNT, MISTBL /POINTS TO WHERE NEXT MISSEL SHOULD 187 /GO IN MISSEL TABLE 188 00067 1003 BOUNCX, NULL 189 00070 1003 BOUNCY, NULL 190 191 /NEW INSTRUCTIONS 192 193 MULT=JMS I . 194 00071 0202 XMULT 195 DIVIDE=JMS I . 196 00072 0234 XDIVID 197 DISPLAY=JMS I . 198 00073 0261 XDISPL 199 COS=JMS I . /COSINE LOOKUP 200 00074 0332 XCOSIN 201 SIN=JMS I . /SINE LOOKUP 202 00075 0313 XSINE 203 GGRAV=JMS I . 204 00076 2650 XGGRAV 205 RANDOM=JMS I . 206 00077 0336 XRANDOM 207 ONDECK=JMS I . 208 00100 1413 XONDECK 209 OFDECK=JMS I . 210 00101 1431 XOFDECK 211 DRAW=JMS I . 212 00102 1600 CALPNT 213 NXTPOS=JMS I . 214 00103 2400 NEWPOS 215 NXTANG=JMS I . 216 00104 2462 ANGLES 217 FLAME=JMS I . 218 00105 3142 DFLAME 219 DSTARS=JMS I . 220 00106 3200 SUN 221 DSUN=JMS I . 222 00107 3254 POLARS 223 FIRE=JMS I . 224 00110 3266 FIRONE 225 226 /THESE DEFS ARE ONLY FOR INTERMEDIATE 227 /STAGES OF DEVELOPMENT. 228 229 IFDEF XXXXXX < /OR IFPASS2 230 IFNDEF XONDECK 231 IFNDEF XOFDECK 232 IFNDEF CALPNT 233 IFNDEF NEWPOS 234 IFNDEF ANGLES 235 IFNDEF DFLAME 236 IFNDEF SUN 237 IFNDEF FIRONE 238 IFNDEF SAUC 239 IFNDEF XGGRAV 240 IFNDEF BOUNX 241 IFNDEF BOUNY 242 IFNDEF MISTBL 243 IFNDEF SPCWAR > 244 XXXXXX=. 245 00111 7402 HLT 246 247 PAGE 248 /SO WE HAVE START AT 200 249 250 00200 5601 JMP I .+1 251 00201 4600 SPCWAR 252 253 /SIGNED MULTIPLY ROUTINE. 254 /THIS ROUTINE DOES A INTEGER MULTIPLY OF 255 /TWO SIGNED NUMBERS (11 BITS OF SIGNIF). 256 /RESULT IS A SINGLE 12-BIT SIGNED NUMBER. 257 /CALL: TAD (MLTCAND 258 / JMS MULT 259 / MLTPLR 260 261 00202 0000 XMULT, 0 262 00203 7100 CLL /WILL SAVE IN LINK 263 00204 7510 SPA /MULTIPLICAND POSITIVE? 264 00205 7061 CMA CML IAC /NO: MAKE POS. REMEMBER SIGN IN LINK 265 00206 7421 MQL /LOAD MULTIPLICAND INTO MQ 266 00207 1602 TAD I XMULT /PICK UP MULTIPLIER 267 00210 2202 ISZ XMULT /POINT TO RETURN 268 00211 7510 SPA /POSITIVE?? 269 00212 7061 CMA CML IAC /NO: MAKE POS AND REMEMBER SIGN 270 00213 3217 DCA XMULT1 /FOR THE MULTIPLY 271 00214 7044 CMA RAL /AC=-1 IF NEG;-2 IF POS. 272 00215 3233 DCA XMULTS /SAVE IT FOR LATER 273 00216 7405 MUY /EAE MULTIPLY 274 00217 0000 XMULT1, 0 /MULTIPLYER GOES HERE 275 00220 7413 SHL /WANT CORRECT NORMALIZATION 276 00221 0000 0 /ONE SHIFT ONLY 277 00222 3217 DCA XMULT1 /REMEMBER HIGH ORDER 278 00223 7501 MQA /READ LOW ORDER 279 00224 7710 SPA CLA /SKIP IF NO ROUND UP 280 00225 7001 IAC /ROUND UP ONE 281 00226 1217 TAD XMULT1 /MAKE ROUNDED RESULT 282 00227 2233 ISZ XMULTS /WILL SKIP IF NEG SIGN 283 00230 5602 JMP I XMULT /DONE: AC=RESULT 284 00231 7041 CIA /NEGATE 285 00232 5602 JMP I XMULT /AND RETURN 286 287 00233 0000 XMULTS, 0 /SAVES SIGN OF RESULT 288 289 290 /DIVISION OF SIGNED DIVIDEND BY UNSIGNED DIVISOR. 291 /EXIT WITH 12-BIT SIGNED RESULT. 292 /DIVIDE OVERFLOW ONLY OCCURS WHEN DIVISOR=0 293 /CALL: TAD (DIVIDEND 294 / DIVIDE 295 / DIVISOR 296 / ERROR /DIVISION BY 0 297 / NORMAL RET. /AC=SIGNED RESULT 298 299 00234 0000 XDIVID, 0 300 00235 7100 CLL /FOR SIGN 301 00236 7510 SPA /IS IT POSITIVE? 302 00237 7061 CIA CML /NO:MAKE POS. 303 00240 7421 MQL /PUT IN LOW ORDER 304 00241 7044 CMA RAL /AC=-1 IF NEG. 305 00242 3233 DCA XMULTS /SAVE SIGN 306 00243 1634 TAD I XDIVID /GET DIVISOR 307 00244 2234 ISZ XDIVID /POINT TO ERROR EXIT 308 00245 7450 SNA /SKIP IF NOT ZERO 309 00246 5634 JMP I XDIVID /TAKE DIV BY 0 RETURN 310 00247 2234 ISZ XDIVID /POINT TO NORMAL RETURN 311 00250 3252 DCA .+2 /STORE DIVISOR 312 00251 7407 DVI /DO THE DIVISION 313 00252 0000 0 /HOLDS THE DIVISOR 314 00253 7200 CLA;MQA /GET RESULT 00254 7501 315 00255 2233 ISZ XMULTS /SKIP IF NEG 316 00256 5634 JMP I XDIVID /POS=RETURN 317 00257 7041 CIA /NEG=NEGATE 318 00260 5634 JMP I XDIVID /AND RETURN 319 320 321 /DISPLAY ROUTINE. REFRESHES OUT OF BUFFER IN FIELD D. 322 /THIS IS FOR PDP-12 DISPLAY. USES QALPHA FOR REGISTER. 323 /CALL: TAD (ADDR-1 /ADDR=ADDRESS OF BUFFER IN FIELD D 324 / DISPLA /OF X,Y PAIRS. 325 / -# POINTS 326 327 00261 0000 XDISPL, 0 328 00262 3012 DCA QDISXR /ADDRESS INTO XR 329 00263 1661 TAD I XDISPL /PICK UP # X,Y PAIRS 330 00264 2261 ISZ XDISPL /POINT TO RETURN 331 00265 7450 SNA /IF ZERO POINTS THEN EXIT 332 00266 5661 JMP I XDISPL 333 00267 7130 STL RAR //2 FOR POINT PAIRS 334 00270 3056 DCA QCNT1 /STASH FOR COUNT 335 00271 6211 CDF D /TO DISPLAY BUFFER FIELD 336 00272 6002 IOF /FOR LINK MODE 337 IFNZRO PDP12 < 338 XDISL, TAD I QDISXR /GET THE X 339 TAD (400 /0 IS CENTER OF SCREEN 340 DCA QALPHA /STICK IN ALPHA REGISTER 341 TAD I QDISXR /GET Y-POSITION 342 LINC 343 DIS QALPHA /DISPLAY THE POINT 344 PDP /BACK TO 8-MODE 345 CLA CLL /GET RID OF THE Y 346 > 347 IFNZRO T30G < 348 TAD (3 /MAX INTENSITY 349 6074 /SET MAX INTENSITY 350 CLA CLL 351 XDISL, TAD I QDISXR /GET X 352 CLL RAL /512 RESOLUTION 353 TAD (1000 /TO CENTER OF SCREEN 354 6053 /CLEAR AND LOAD X 355 CLA CLL 356 TAD I QDISXR /GET Y 357 CLL RAL /512 RESOLUTION 358 TAD (1000 /TO CENTER OF SCREEN 359 6067 /CLEAR AND LOAD Y;DISPLAY 360 CLA CLL 361 6161 /WAIT TILL DONE 362 JMP .-1> 363 364 IFNZRO VC8E < 365 00273 6050 6050 /CLEAR ALL FLAGS 366 00274 1412 XDISL, TAD I QDISXR /GET X 367 00275 7104 CLL RAL /512 RESOLUTION 368 00276 6053 6053 /CLEAR AND LOAD X 369 00277 7300 CLA CLL 370 00300 1412 TAD I QDISXR /GET Y 371 00301 7104 CLL RAL /512 RESOLUTION 372 00302 6054 6054 /CLEAR AND LOAD Y 373 00303 7300 CLA CLL 374 00304 6052 6052 /WAIT TILL DONE 375 00305 5304 JMP .-1 376 00306 6055 6055 /INTENSIFY 377 > 378 IFNZRO VC8I < 379 6077 /MAX INTENSITY 380 CLA CLL 381 XDISL, TAD I QDISXR /GET X 382 CLL RAL /512 RESOLUTION 383 TAD (1000 /TO CENTER OF SCREEN 384 6052 /LOAD X 385 CLA CLL 386 TAD I QDISXR /GET Y 387 CLL RAL /512 RESOLUTION 388 TAD (1000 /TO CENTER OF SCREEN 389 6066 /LOAD Y; DISPLAY 390 CLA CLL> 391 IFNZRO AX08 < 392 XDISL, TAD I QDISXR 393 TAD (400 394 6303 /LOAD X 395 CLA CLL 396 TAD I QDISXR /GET Y 397 6317 /LOAD Y AND INTENS. 398 CLA CLL 399 > 400 401 00307 2056 ISZ QCNT1 /SKIP WHEN DONE 402 00310 5274 JMP XDISL /LOOP 403 00311 6201 CDF 0 /BACK TO THIS FIELD 404 00312 5661 JMP I XDISPL /AND RETURN 405 406 407 /SINE LOOKUP ROUTINE. ANGLES ARE IN 408 /FRACTIONS OF A CIRCLE. I.E. IN 256THS OF A CIRCL. 409 /THUS PI RADIANS=200(8) 410 /THE RESULT IS A SIGNED NUMBER -2048 1757 05023 4771 JMS I (WARSUB /DO THE CALCS 1758 05024 1032 TAD HYPERS 1759 05025 7640 SZA CLA /SKIP IF NOT IN HYPERSPACE 1760 05026 5231 JMP WAR1E /IGNORE CHECKING 1761 05027 4775 JMS I (COLIDE /CHECK FOR COLLISION WITH SUN 1762 05030 4770 JMS I (BANG /START EXPLOSION 1763 05031 1373 WAR1E, TAD (SHIP1-1 1764 05032 4501 OFDECK 1765 05033 4505 FLAME /DISPLAY FLAME 1766 1767 /NOW FOR SHIP2 1768 1769 05034 1367 WARS2, TAD (SHIP2-1 1770 05035 4500 ONDECK /NOW DO SHIP 2 1771 05036 1021 TAD ALIVE /NOW TO SEE IF HE EXISTS 1772 05037 7650 SNA CLA /SKIP IF ALIVE 1773 05040 5264 JMP WARS3 /NOPE:GO TO SHIP2 1774 05041 1372 TAD (-100 1775 05042 3315 DCA STOVER /SOMEONE STILL ALIVE 1776 05043 7604 LAS /GET SWITCHES 1777 IFNZRO M1703 < 1778 05044 7040 CMA /PRE-INVERT LAS UNLESS M1703 FOUND 1779 05045 6144 6144 /VRS: USE M1703 INPUT IF THERE 1780 05046 7040 CMA /INVERT M1703 OR UN-INVERT LAS 1781 > 1782 05047 7417 LSR;7 /OVER FOR WARSUB 05050 0007 1783 05051 4771 JMS I (WARSUB /DO THE CALCULATIONS 1784 05052 1032 TAD HYPERS 1785 05053 7640 SZA CLA /SKIP IF NOT IN HYPERSPACE 1786 05054 5261 JMP WAR2E /NO MORE CHECKING 1787 05055 4775 JMS I (COLIDE /COLLISION WITH SUN FIRST 1788 05056 7410 SKP 1789 05057 4766 JMS I (COLID1 /CHECK COLLISIONS 1790 05060 4770 JMS I (BANG /START THE EXPLOSION 1791 05061 1367 WAR2E, TAD (SHIP2-1 1792 05062 4501 OFDECK 1793 05063 4505 FLAME 1794 1795 /NOW FOR THE MISSLES 1796 1797 05064 6002 WARS3, IOF 1798 05065 4765 JMS I (MISSLS /INTERRUPTS CAN BOMB HERE 1799 05066 6001 ION 1800 1801 /AND ANY BREAKUP 1802 1803 05067 1044 TAD BREAKUP 1804 05070 7640 SZA CLA /SKIP IF ANY 1805 05071 4764 JMS I (SCATTER /DO IT 1806 1807 /NOW TO DISPLAY IT 1808 1809 05072 1045 WARDIS, TAD DBUFP 1810 05073 7041 CIA 1811 05074 1375 TAD (DISBUF 1812 05075 6002 IOF /NO INTS IN LINC MODE 1813 05076 3301 DCA WARDX /FOR DISPLAY ROUTINE 1814 05077 1363 TAD (DISBUF-1 1815 05100 4473 DISPLAY 1816 05101 0000 WARDX, 0 1817 D1=DSUN 1818 D2=DSTARS 1819 05102 4507 DSUN /DISPLAY THE UNIVERSE OR SUN 1820 05103 6001 ION 1821 05104 2315 ISZ STOVER /DELAY FOR AUTO RESTART 1822 05105 7410 SKP 1823 05106 5762 JMP I (SPCWAR /START OVER 1824 IFNZRO FCLOCK+KW12+AX08+DK8EA+DK8EP < 1825 05107 1314 TAD WAIT 1826 05110 7650 SNA CLA 1827 05111 5307 JMP .-2 1828 05112 3314 DCA WAIT> 1829 05113 5202 JMP WAR 1830 1831 05114 0000 WAIT, 0 /-1 WHEN READY 1832 /SET BY INTERRUPT ROUTINE 1833 05115 0000 STOVER, 0 /DELAY FOR AUTO RESTART 1834 1835 1836 05162 4600 PAGE 05163 3777 05164 3725 05165 3600 05166 4023 05167 1371 05170 4105 05171 5200 05172 7700 05173 1350 05174 4001 05175 4000 05176 4002 05177 3253 1837 /SUBROUTINE TO DO ALL OF THE SHIP CALCULATIONS. 1838 /ENTER WITH BITS SET ACCORDING TO OPTIONS 1839 1840 05200 0000 WARSUB, 0 1841 05201 3777 DCA I (SWITCHES 1842 05202 1777 TAD I (SWITCHES 1843 05203 7010 RAR /ROCKET BIT TO LINK 1844 05204 7630 SZL CLA /SKIP IF NOT ON 1845 05205 1061 TAD QTHRUST /COPY THRUST INTO QTHR 1846 05206 3046 DCA QTHR /IF ROCKETS ON 1847 05207 3032 DCA HYPERS /TAKE OUT OF HYPERSPACE 1848 05210 1777 TAD I (SWITCHES 1849 05211 0376 AND (6 /MASK ROT BITS 1850 05212 7450 SNA /SKIP IF ANY ON 1851 05213 5232 JMP WAR1 1852 05214 3054 DCA QTM1 /SAVE 1853 05215 1054 TAD QTM1 1854 05216 1375 TAD (-6 /TO SEE IF HYPERSPACE 1855 05217 7650 SNA CLA /SKIP IF NOT HYPERSPACE 1856 05220 4774 JMS I (HYPER /GO INTO HYPERSPACE 1857 05221 1032 TAD HYPERS /IF IN HYPERSPACE DON'T DO 1858 05222 7640 SZA CLA /THE CALCULATIONS 1859 05223 5600 JMP I WARSUB 1860 05224 1054 TAD QTM1 1861 05225 7012 RTR /GET CLOCKWISE INTO LINK 1862 05226 7200 CLA /GET RID OF OTHER BIT 1863 05227 1063 TAD QRET /RETRO CONSTANT 1864 05230 7420 SNL /SKIP IF CC 1865 05231 7041 CIA 1866 05232 3047 WAR1, DCA QTHA /SET RETRO THRUST 1867 05233 1034 TAD ARMED /TO SEE IF ALREADY ARMED 1868 05234 7650 SNA CLA /SKIP IF NOT YET 1869 05235 5240 JMP .+3 /ALREADY ARMED 1870 05236 2034 ISZ ARMED /UPDATE TIME DELAY 1871 05237 5244 JMP WAR2 /NOT ARMED. 1872 05240 1777 TAD I (SWITCHES /IS ARMED SO CHECK 1873 05241 0373 AND (10 /FIRE BIT. 1874 05242 7640 SZA CLA /SKIP IF NOT FIRING 1875 05243 4510 FIRE /FIRE A MISSLE. 1876 05244 4503 WAR2, NXTPOS /CALC NEW POSITION 1877 05245 4504 NXTANG /AND SHIP ANGLE 1878 05246 4502 DRAW /SET DISPLAY BUFFER 1879 05247 4772 PSAUC1, JMS I (SAUC /OR NOP FOR SHIPS 1880 05250 5600 JMP I WARSUB 1881 1882 05372 2000 PAGE 05373 0010 05374 3357 05375 7772 05376 0006 05377 1421 1883 /COME HERE FROM INTERRUPT 1884 1885 05400 0000 SAVAC, 0 1886 05401 0000 SAVLK, 0 1887 1888 05402 3200 INTRPT, DCA SAVAC /SAVE ACCUMULATOR 1889 05403 7010 RAR 1890 05404 3201 DCA SAVLK /AND LINK 1891 05405 6031 KSF /KEYBOARD? 1892 05406 5212 JMP .+4 1893 05407 6036 KRB /READ THE CHAR 1894 05410 3220 DCA ICHAR /STORE 1895 05411 5644 JMP I OPTIONS 1896 05412 6041 TSF /TELEPRINTER 1897 05413 5222 JMP CLKINT /NO CHECK CLOCK 1898 05414 6042 TCF /CLEAR THAT FLAG 1899 05415 3217 DCA TELSW /SET NOT IN PROGRESS SWITCH 1900 05416 5644 JMP I OPTIONS 1901 1902 05417 0000 TELSW, 0 1903 05420 0000 ICHAR, 0 1904 05421 0000 DELAY1, 0 1905 1906 CLKINT, 1907 IFNZRO KW12+DK8EP < 1908 CLSK /SKIP IF CLOCK 1909 JMP INTEXT /QUIT (UNDEFINED INT?) 1910 CLSA /CLEAR THE FLAGS 1911 > 1912 IFNZRO FCLOCK < 1913 6131 /SKIP IF NOT FLAG 1914 SKP 1915 JMP INTEXT /NOPE 1916 6132 /RECONNECT TO INT 1917 > 1918 IFNZRO DK8EA < 1919 05422 6133 6133 /SKIP ON CLOCK 1920 05423 5233 JMP INTEXT /NOPE 1921 05424 6131 6131 /MAKE SURE INT STILL ENABLED 1922 05425 2221 ISZ DELAY1 /WANT 30/SEC 1923 05426 5233 JMP INTEXT /NOPE: NEXT TIME 1924 05427 7346 CLL STA RTL /-2 1925 05430 3221 DCA DELAY1 /RESET DELAY1 1926 > 1927 IFNZRO AX08 < 1928 6321 /SKIP IF CLOCK 1929 JMP INTEXT /WHO??? 1930 6352 /CLEAR CLOCK 1931 ISZ DELAY1 1932 JMP INTEXT /NOT YET 1933 TAD CLKLIM /RESET INTRPS 1934 DCA DELAY1 /DELAY INTERVAL 1935 > 1936 1937 05431 7240 STA /AND SET WAITING 1938 05432 3777 DCA I (WAIT 1939 1940 05433 6402 INTEXT, 6402 /LINK 1941 05434 6412 6412 1942 IFNZRO T30G <6161;NOP> 1943 05435 7300 CLA CLL 1944 05436 1201 TAD SAVLK /GET LINK 1945 05437 7104 RAL CLL 1946 05440 1200 TAD SAVAC /AND AC. 1947 05441 6244 RMF /RESTORE FIELDS 1948 05442 6001 ION /AND RESTOR INTERRUPTS 1949 05443 5400 JMP I 0 /RETURN TO PROGRAM 1950 1951 /GO BACK TO SPCWAR 1952 1953 05444 5600 OPTION, KBOARD 1954 05445 5233 JMP INTEXT 1955 1956 IFNZRO KW12+DK8EP < 1957 /SUBROUTINE TO START UP CLOCK 1958 /MAY BE HARDWARE DEPENDENT 1959 /THIS IS FOR KW12A CLOCK - PDP12 1960 /OR PROGRAMABLE PDP8E CLOCK DK8EP 1961 CLSK=6131 /SKIP IF CLOCK 1962 CLLR=6132 /LOAD CONTROL 1963 CLAB=6133 /AC TO BUFFER PRESET 1964 CLEN=6134 /LOAD ENABLE 1965 CLSA=6135 /BIT RESET FLAGS 1966 1967 STCLK, 0 1968 CLA CLL /JUST IN CASE 1969 IFNZRO PDP12 1972 TAD (-40 /ABOUT 30CPS 1973 CLAB /LOAD PRSET 1974 CLA CLL 1975 IFNZRO PDP12 < 1976 TAD (0100 /1KC - PRESET TIME 1977 CLLR /LOAD CONTROL 1978 CLSA /CLEAR STATUS AND POSSIBLE OVERFLOW 1979 CLA CLL 1980 TAD (300 /INTERRUPT ON OVERFLOW 1981 CLEN 1982 CLA CLL 1983 TAD (4100 /AND START UP CLOCK 1984 > 1985 IFNZRO DK8EP < 1986 /TAD (5300 /INTR ON CLOCK - 1KC 1987 TAD (5310 /INTR ON CLOCK - 1KC (Josh Dersch) 1988 > 1989 CLLR 1990 CLA CLL 1991 JMP I STCLK> 1992 1993 IFNZRO FCLOCK < 1994 /DYER'S FUNNY CLOCK 1995 1996 STCLK, 0 1997 6132 1998 JMP I STCLK> 1999 2000 IFNZRO DK8EA < 2001 /DK8EA (LINE CLOCK) 2002 2003 05446 0000 STCLK, 0 2004 05447 7346 CLL STA RTL /-2 2005 05450 3221 DCA DELAY1 /RESET DELAY1 2006 05451 6131 6131 /ENABLE INTERRUPTS 2007 05452 5646 JMP I STCLK> 2008 2009 IFNZRO AX08 < 2010 STCLK, 0 2011 CLA CLL 2012 TAD (400 2013 6346 /START CRYSTAL CLOCK 2014 TAD CLKLIM /INITIALIZE CLOCK 2015 DCA DELAY1 2016 JMP I STCLK 2017 2018 CLKLIM, 7400 2019 > 2020 2021 IFZERO KW12+AX08+FCLOCK+DK8EA+DK8EP < 2022 STCLK, 0 2023 JMP I STCLK> 2024 2025 05577 5114 PAGE 2026 05600 4324 KBOARD, JMS GETC /GET THE CHAR 2027 05601 4246 JMS DISPCH /DISPATCH ON CHAR 2028 05602 7460 -"P;OPHLAT 05603 6407 2029 05604 7475 -"C;OCURVE 05605 6422 2030 05606 7472 -"F;OSTARS /FIELD OF STARS 05607 6433 2031 05610 7446 -"Z;OSUN /POLARIS ONLY 05611 6442 2032 05612 7476 -"B;OBOUNCE /BOUNCE MODE 05613 5747 2033 05614 7451 -"W;OWRAP /WRAP AROUND 05615 6000 2034 05616 7477 -"A;OANGUL /ANGULAR MOMENT CONSERVE 05617 6010 2035 05620 7462 -"N;ONORM /NO ANG MOM CONS. 05621 6016 2036 05622 7471 -"G;OGRAV /RESET GRAVITY 05623 6061 2037 05624 7463 -"M;OMISSL /RESET NUMB MISSLES 05625 6102 2038 05626 7456 -"R;ORETRO /RESET RETRO CONSTANT 05627 6120 2039 05630 7454 -"T;OTHRUS /RESET THRUST CONSTANT 05631 6111 2040 05632 7455 -"S;OSHIPS /DISPLAY SHIPS 05633 6250 2041 05634 7452 -"V;OVELOC /MUSSEL VELOCITY OF MISSILES 05635 6400 2042 05636 7453 -"U;OUFO /DISPLAY UFO'S 05637 6226 2043 05640 7461 -"O;OOPTION /LIST OPTIONS 05641 6200 2044 05642 7575 -203;7600 /^C RETURN TO MONITOR 05643 7600 2045 05644 0000 0 /END OF LIST 2046 05645 5777 JMP I (SPCWAR /START OVER 2047 2048 2049 /DISPATCH ON ACCUMULATOR 2050 2051 05646 0000 DISPCH, 0 2052 05647 3264 DCA OTM1 /TEMP STASH 2053 05650 1646 TAD I DISPCH /GET COMPARISON 2054 05651 2246 ISZ DISPCH 2055 05652 7450 SNA /0 MEANS DONE 2056 05653 5646 JMP I DISPCH /NOT IN LIST 2057 05654 1264 TAD OTM1 /CHECK AGAINST CAHR 2058 05655 7650 SNA CLA /SKIP IF NO MATCH 2059 05656 5261 JMP .+3 /MATCH 2060 05657 2246 ISZ DISPCH /TO NEXT CHAR 2061 05660 5250 JMP DISPCH+2 /CONTINUE 2062 05661 1646 TAD I DISPCH /FOUND IT 2063 05662 3246 DCA DISPCH /DO DOUBLE INDIRECT 2064 05663 5646 JMP I DISPCH 2065 2066 05664 0000 OTM1, 0 2067 2068 2069 /PRINT A MESSAGE 2070 2071 05665 0000 PRMSG, 0 2072 05666 1665 TAD I PRMSG /GET ADD OF MESSAGE 2073 05667 3264 DCA OTM1 /STORE POINTER 2074 05670 2265 ISZ PRMSG /NORMAL EXIT 2075 05671 1664 PRST1, TAD I OTM1 2076 05672 7012 RTR;RTR;RTR /OVER FOR PRINT 05673 7012 05674 7012 2077 05675 4302 JMS PRCHR /PRINT LEFT HALF 2078 05676 1664 TAD I OTM1 2079 05677 4302 JMS PRCHR /PRINT RIGHT HALF 2080 05700 2264 ISZ OTM1 /NEXT WORD 2081 05701 5271 JMP PRST1 /LOOP 2082 2083 05702 0000 PRCHR, 0 2084 05703 0376 AND (77 2085 05704 7450 SNA 2086 05705 5665 JMP I PRMSG /IF ZERO QUIT 2087 05706 1375 TAD (-40 /FOR EXTEND 2088 05707 7510 SPA /SKIP IF NEUMERIC 2089 05710 1374 TAD (100 /IS ALPHA 2090 05711 1373 TAD (240 /BACK TO CORRECT 2091 05712 4314 JMS PCH /PRINT ROUTINE 2092 05713 5702 JMP I PRCHR 2093 2094 2095 /PRINT A CHARACTER ROUTINE 2096 2097 05714 0000 PCH, 0 2098 05715 6046 TLS /OUTPUT IT 2099 05716 3772 DCA I (TELSW /SET TTY INPROGRESS 2100 05717 4771 JMS I (OPTIONS /AND WAIT TILL FINISHED 2101 05720 1772 TAD I (TELSW /KEYBOARD INTERRUPT 2102 05721 7440 SZA 2103 05722 5317 JMP .-3 /NOT YET 2104 05723 5714 JMP I PCH /DONE. 2105 2106 /GET AN INPUT CHARACTER 2107 2108 05724 0000 GETC, 0 2109 05725 1770 TAD I (ICHAR /FROM INTERRUPT SERVICE 2110 05726 7440 SZA /GOT ONE? 2111 05727 5332 JMP .+3 /YEP 2112 05730 4771 JMS I (OPTIONS /WAIT SOME MORE 2113 05731 5325 JMP GETC+1 2114 05732 3336 DCA CHAR 2115 05733 3770 DCA I (ICHAR 2116 05734 1336 TAD CHAR 2117 05735 5724 JMP I GETC /AND RETURN WITH CHAR 2118 2119 05736 0000 CHAR, 0 2120 2121 05737 0000 CRLF, 0 2122 05740 1367 TAD (215 2123 05741 4314 JMS PCH 2124 05742 1366 TAD (212 2125 05743 4314 JMS PCH 2126 05744 5737 JMP I CRLF 2127 2128 05745 4771 REINITIALIZE, JMS I (OPTIONS 2129 05746 5200 JMP KBOARD 2130 2131 /TURN ON BOUNCE 2132 2133 05747 1365 OBOUNC, TAD (BOUNX 2134 05750 3067 DCA BOUNCX 2135 05751 1364 TAD (BOUNY 2136 05752 3070 DCA BOUNCY 2137 05753 4265 JMS PRMSG /TELL HIME 2138 05754 7037 MBOUNC 2139 05755 4337 JMS CRLF 2140 05756 5345 JMP REINIT 2141 2142 05764 2155 PAGE 05765 2146 05766 0212 05767 0215 05770 5420 05771 5444 05772 5417 05773 0240 05774 0100 05775 7740 05776 0077 05777 4600 2143 /ROUTINE TO DISABLE BOUNCE 2144 2145 06000 1377 OWRAP, TAD (NULL 2146 06001 3067 DCA BOUNCX 2147 06002 1377 TAD (NULL 2148 06003 3070 DCA BOUNCY 2149 06004 4776 JMS I (PRMSG 2150 06005 7044 MWRAP 2151 06006 4775 JMS I (CRLF 2152 06007 5774 JMP I (REINIT 2153 2154 /ROUTINE TO CONSERVE ANGULAR MOM 2155 2156 06010 7201 OANGUL, CLA IAC 2157 06011 3050 DCA CONSER 2158 06012 4776 JMS I (PRMSG 2159 06013 7054 MANGCON 2160 06014 4775 JMS I (CRLF 2161 06015 5774 JMP I (REINIT 2162 2163 06016 3050 ONORM, DCA CONSER 2164 06017 4776 JMS I (PRMSG 2165 06020 7065 MNORMAL 2166 06021 4775 JMS I (CRLF 2167 06022 5774 JMP I (REINIT 2168 2169 /ROUTINE TO INPUT AN OCTAL NUMBER FROM THE KEYBOARD. 2170 /CALL: JMS OCTAL 2171 / RET1 /NO INPUT 2172 / RET2 /AC=OCTAL NUMBER 2173 2174 06023 0000 OCTALX, 0 2175 06024 3257 DCA NUMB 2176 06025 3260 DCA INPUT 2177 06026 4773 OCTALL, JMS I (GETC 2178 06027 4772 JMS I (PCH /AND PRINT IT 2179 06030 1771 TAD I (CHAR 2180 06031 1370 TAD (-"8 2181 06032 7500 SMA /SKIP IF <"8 2182 06033 5250 JMP NUMBEX /EXIT 2183 06034 1367 TAD ("8-"0 /NOW CHECK FOR OCTAL 2184 06035 7510 SPA /SKIP IF OK 2185 06036 5250 JMP NUMBEX /NO=QUIT 2186 06037 3260 DCA INPUT /SAVE NUMBER 2187 06040 1257 TAD NUMB /GET LAST NUMBER 2188 06041 7104 CLL RAL;CLL RAL;CLL RAL 06042 7104 06043 7104 2189 06044 1260 TAD INPUT /STICK IN NEW NUMBER 2190 06045 3257 DCA NUMB 2191 06046 2260 ISZ INPUT /MAKE SURE NON-ZERO 2192 06047 5226 JMP OCTALL 2193 06050 7300 NUMBEX, CLA CLL 2194 06051 1260 TAD INPUT /TO SEE IF ANY 2195 06052 7640 SZA CLA 2196 06053 2223 ISZ OCTALX /TAKE YES RETURN 2197 06054 4775 JMS I (CRLF 2198 06055 1257 TAD NUMB /STICK NUMBER IN AC 2199 06056 5623 JMP I OCTALX /AND RETURN 2200 2201 06057 0000 NUMB, 0 2202 06060 0000 INPUT, 0 2203 2204 2205 06061 4776 OGRAV, JMS I (PRMSG /TELL HIM WHAT OPTION IS 2206 06062 7100 MGRAVY 2207 06063 4223 JMS OCTALX /GET NEW VALUE 2208 06064 5774 JMP I (REINIT /NO INPUT 2209 06065 3062 DCA QGRAV /SET VALUE 2210 06066 1366 TAD (KBOARD /REINITIALIZE 2211 06067 3765 DCA I (OPTIONS 2212 06070 4764 JMS I (SETGRV /SET UP TABLE 2213 06071 1062 TAD QGRAV /NOW TO SEE IF ANTI-GRAV. 2214 06072 7700 SMA CLA /SKIP IF YES 2215 06073 5763 JMP I (WAR-2 2216 06074 4776 JMS I (PRMSG 2217 06075 7116 MAGRAV /ANTI GRAVITY 2218 06076 4775 JMS I (CRLF 2219 06077 1366 TAD (KBOARD 2220 06100 3765 DCA I (OPTIONS 2221 06101 5763 JMP I (WAR-2 2222 2223 06102 4776 OMISSL, JMS I (PRMSG 2224 06103 7125 MMISSLS 2225 06104 4223 JMS OCTALX /GET A NUMBER 2226 06105 5774 JMP I (REINIT 2227 06106 7041 CIA /SET MISSEL CONSTANT 2228 06107 3053 DCA MAXMIS /SET CONSTANT 2229 06110 5774 JMP I (REINIT /DONE 2230 2231 /ROUTINE TO READJUST THRUST 2232 2233 06111 4776 OTHRUS, JMS I (PRMSG 2234 06112 7137 MTHRUS 2235 06113 4223 JMS OCTALX 2236 06114 5774 JMP I (REINIT 2237 06115 7106 CLL RTL 2238 06116 3061 DCA QTHRUS 2239 06117 5774 JMP I (REINIT 2240 2241 /ROUTINE TO SET RETRO CONSTANT 2242 2243 06120 4776 ORETRO, JMS I (PRMSG 2244 06121 7152 MRETRO 2245 06122 4223 JMS OCTALX 2246 06123 5774 JMP I (REINIT 2247 06124 3063 DCA QRET 2248 06125 5774 JMP I (REINIT 2249 2250 /ROUTINE TO PRINT LOTS OF MESSAGES 2251 2252 06126 0000 MMESG, 0 2253 06127 4775 JMS I (CRLF /NEW LINE 2254 06130 1726 TAD I MMESG /GET START OF MESSAGE 2255 06131 7450 SNA /SKIP IF MORE TO COME 2256 06132 5726 JMP I MMESG 2257 06133 3335 DCA .+2 2258 06134 4776 JMS I (PRMSG /PRINT IT 2259 06135 0000 0 2260 06136 2326 ISZ MMESG /NEXT LINE 2261 06137 5327 JMP MMESG+1 /MORE 2262 2263 /PRINT OPTIONS 2264 2265 06163 5000 PAGE 06164 2662 06165 5444 06166 5600 06167 0010 06170 7510 06171 5736 06172 5714 06173 5724 06174 5745 06175 5737 06176 5665 06177 1003 2266 06200 4777 OOPTIO, JMS I (MMESG 2267 06201 6622 MOPTA 2268 06202 6647 MOPTB 2269 06203 6674 MOPTBA 2270 06204 6710 MOPTC 2271 06205 6724 MOPTD 2272 06206 6734 MOPTE 2273 06207 6754 MOPTF 2274 06210 7012 MCURVE 2275 06211 7021 MPHLAT 2276 06212 7027 MSTARS 2277 06213 6744 MSUN 2278 06214 7037 MBOUNC 2279 06215 7044 MWRAP 2280 06216 7054 MANGCO 2281 06217 7065 MNORMA 2282 06220 7125 MMISSL 2283 06221 7137 MTHRUS 2284 06222 7152 MRETRO 2285 06223 6600 MVELOX 2286 06224 0000 0 2287 06225 5776 JMP I (REINIT 2288 2289 /DISPLAY SAUCERS (UFO'S) 2290 2291 06226 4775 OUFO, JMS I (PRMSG 2292 06227 6774 MUFO 2293 06230 4774 JMS I (CRLF 2294 06231 1373 TAD (JMS I PSAUCP 2295 06232 3772 DCA I (PSAUC1 2296 06233 1371 TAD (NOP 2297 06234 3770 DCA I (PSAUC2 2298 06235 1367 TAD (SAUC1 2299 06236 3766 DCA I (SHIP1+QSHIP-QR 2300 06237 1365 TAD (SAUC1E-SAUC1 2301 06240 3764 DCA I (SHIP1+QSHIPN-QR 2302 06241 1363 TAD (SAUC2 2303 06242 3762 DCA I (SHIP2+QSHIP-QR 2304 06243 1361 TAD (SAUC2E-SAUC2 2305 06244 3760 DCA I (SHIP2+QSHIPN-QR 2306 06245 1357 OUFOR, TAD (KBOARD 2307 06246 3756 DCA I (OPTIONS 2308 06247 5755 JMP I (WAR-2 2309 2310 /DISPLAY SHIPS 2311 2312 06250 4775 OSHIPS, JMS I (PRMSG 2313 06251 7003 MSHIPS 2314 06252 4774 JMS I (CRLF 2315 06253 1270 TAD OSHIPJ 2316 06254 3770 DCA I (PSAUC2 2317 06255 1371 TAD (NOP 2318 06256 3772 DCA I (PSAUC1 2319 06257 1354 TAD (SHIP1C 2320 06260 3766 DCA I (SHIP1+QSHIP-QR 2321 06261 1353 TAD (SHIP1E-SHIP1C 2322 06262 3764 DCA I (SHIP1+QSHIPN-QR 2323 06263 1352 TAD (SHIP2C 2324 06264 3762 DCA I (SHIP2+QSHIP-QR 2325 06265 1351 TAD (SHIP2E-SHIP2C 2326 06266 3760 DCA I (SHIP2+QSHIPN-QR 2327 06267 5245 JMP OUFOR 2328 2329 06270 5323 OSHIPJ, PSAUC2+3&177+5200 2330 2331 2332 06351 0050 PAGE 06352 1201 06353 0060 06354 1025 06355 5000 06356 5444 06357 5600 06360 1410 06361 0006 06362 1407 06363 1315 06364 1367 06365 0016 06366 1366 06367 1163 06370 1720 06371 7000 06372 5247 06373 4465 06374 5737 06375 5665 06376 5745 06377 6126 2333 /RESET MUSSEL VELOCITY OF ROCKETS 2334 2335 06400 4777 OVELOC, JMS I (PRMSG 2336 06401 6600 MVELOX 2337 06402 4776 JMS I (OCTALX 2338 06403 5775 JMP I (REINIT 2339 06404 7110 CLL RAR 2340 06405 3064 DCA QTHROC /RESET MUSSLE VELOCITY 2341 06406 5775 JMP I (REINIT 2342 2343 /SELECT FLAT OR CURVED SPACE 2344 2345 06407 4777 OPHLAT, JMS I (PRMSG 2346 06410 7021 MPHLAT 2347 06411 4774 JMS I (CRLF 2348 06412 7200 CLA 2349 06413 1373 TAD (3777 2350 06414 3041 DCA QTIME /NO TIME CURVE ON OUTLINE 2351 06415 1372 TAD (SC 2352 06416 3771 DCA I (NEWPO7+1 2353 06417 1372 TAD (SC 2354 06420 3770 DCA I (NEWPO7+11 2355 06421 5775 JMP I (REINIT 2356 2357 06422 4777 OCURVE, JMS I (PRMSG 2358 06423 7012 MCURVE 2359 06424 4774 JMS I (CRLF 2360 06425 7200 CLA 2361 06426 1367 TAD (SC1 2362 06427 3771 DCA I (NEWPO7+1 2363 06430 1366 TAD (SC2 2364 06431 3770 DCA I (NEWPO7+11 2365 06432 5775 JMP I (REINIT 2366 2367 /DISPLAY OPTIONAL SUN OR UNIVERSE 2368 2369 06433 4777 OSTARS, JMS I (PRMSG 2370 06434 7027 MSTARS 2371 06435 4774 JMS I (CRLF 2372 06436 7200 CLA 2373 06437 1365 TAD (D2 2374 06440 3764 DCA I (WARDX+1 2375 06441 5775 JMP I (REINIT 2376 2377 06442 4777 OSUN, JMS I (PRMSG 2378 06443 6744 MSUN 2379 06444 4774 JMS I (CRLF 2380 06445 7200 CLA 2381 06446 1363 TAD (D1 2382 06447 3764 DCA I (WARDX+1 2383 06450 5775 JMP I (REINIT 2384 2385 06563 4507 PAGE 06564 5102 06565 4506 06566 4776 06567 4777 06570 2452 06571 2442 06572 4315 06573 3777 06574 5737 06575 5745 06576 6023 06577 5665 2386 06600 2605 MVELOX, TEXT \VELOCITY INITIAL OF MISSLES(2000):\ 06601 1417 06602 0311 06603 2431 06604 4011 06605 1611 06606 2411 06607 0114 06610 4017 06611 0640 06612 1511 06613 2323 06614 1405 06615 2350 06616 6260 06617 6060 06620 5172 06621 0000 2387 06622 1720 MOPTA, TEXT \OPTIONS ARE DESIGNATED BY FIRST CHARACTER\ 06623 2411 06624 1716 06625 2340 06626 0122 06627 0540 06630 0405 06631 2311 06632 0716 06633 0124 06634 0504 06635 4002 06636 3140 06637 0611 06640 2223 06641 2440 06642 0310 06643 0122 06644 0103 06645 2405 06646 2200 2388 06647 2410 MOPTB, TEXT \THE NUMBER IN PARENS ARE "NORMAL" VALUES\ 06650 0540 06651 1625 06652 1502 06653 0522 06654 4011 06655 1640 06656 2001 06657 2205 06660 1623 06661 4001 06662 2205 06663 4042 06664 1617 06665 2215 06666 0114 06667 4240 06670 2601 06671 1425 06672 0523 06673 0000 2389 06674 1116 MOPTBA, TEXT \INPUT NUMBERS ARE OCTAL\ 06675 2025 06676 2440 06677 1625 06700 1502 06701 0522 06702 2340 06703 0122 06704 0540 06705 1703 06706 2401 06707 1400 2390 06710 0126 MOPTC, TEXT \AVAILABLE OPTIONS ARE:\ 06711 0111 06712 1401 06713 0214 06714 0540 06715 1720 06716 2411 06717 1716 06720 2340 06721 0122 06722 0572 06723 0000 2391 06724 2540 MOPTD, TEXT \U DISPLAY UFO'S\ 06725 0411 06726 2320 06727 1401 06730 3140 06731 2506 06732 1747 06733 2300 2392 06734 2340 MOPTE, TEXT \S DISPLAY SHIPS\ 06735 0411 06736 2320 06737 1401 06740 3140 06741 2310 06742 1120 06743 2300 2393 06744 3240 MSUN, TEXT 'Z POLARIS ONLY' 06745 2017 06746 1401 06747 2211 06750 2340 06751 1716 06752 1431 06753 0000 2394 06754 0740 MOPTF, TEXT \G RESET GRAVITY CONSTANT(1000)\ 06755 2205 06756 2305 06757 2440 06760 0722 06761 0126 06762 1124 06763 3140 06764 0317 06765 1623 06766 2401 06767 1624 06770 5061 06771 6060 06772 6051 06773 0000 2395 06774 0411 MUFO, TEXT \DISPLAY UFO'S\ 06775 2320 06776 1401 06777 3140 07000 2506 07001 1747 07002 2300 2396 07003 0411 MSHIPS, TEXT \DISPLAY SHIPS\ 07004 2320 07005 1401 07006 3140 07007 2310 07010 1120 07011 2300 2397 07012 0325 MCURVE, TEXT 'CURVED SPACE' 07013 2226 07014 0504 07015 4023 07016 2001 07017 0305 07020 0000 2398 07021 2010 MPHLAT, TEXT 'PHLAT SPACE' 07022 1401 07023 2440 07024 2320 07025 0103 07026 0500 2399 07027 0611 MSTARS, TEXT 'FIELD OF STARS' 07030 0514 07031 0440 07032 1706 07033 4023 07034 2401 07035 2223 07036 0000 2400 07037 0217 MBOUNC, TEXT \BOUNCE ON\ 07040 2516 07041 0305 07042 4017 07043 1600 2401 07044 2722 MWRAP, TEXT \WRAP-AROUND ON\ 07045 0120 07046 5501 07047 2217 07050 2516 07051 0440 07052 1716 07053 0000 2402 07054 0116 MANGCO, TEXT \ANGULAR MOMENTUM\ 07055 0725 07056 1401 07057 2240 07060 1517 07061 1505 07062 1624 07063 2515 07064 0000 2403 07065 1617 MNORMA, TEXT \NON-ANGULAR MOMENTUM\ 07066 1655 07067 0116 07070 0725 07071 1401 07072 2240 07073 1517 07074 1505 07075 1624 07076 2515 07077 0000 2404 07100 2324 MGRAVY, TEXT \STRENGTH OF GRAVITY(1000):\ 07101 2205 07102 1607 07103 2410 07104 4017 07105 0640 07106 0722 07107 0126 07110 1124 07111 3150 07112 6160 07113 6060 07114 5172 07115 0000 2405 07116 0116 MAGRAV, TEXT \ANTI-GRAVITY\ 07117 2411 07120 5507 07121 2201 07122 2611 07123 2431 07124 0000 2406 07125 1501 MMISSL, TEXT \MAX NUMBER MISSLES:\ 07126 3040 07127 1625 07130 1502 07131 0522 07132 4015 07133 1123 07134 2314 07135 0523 07136 7200 2407 07137 2410 MTHRUS, TEXT \THRUST CONSTANT (2):\ 07140 2225 07141 2324 07142 4003 07143 1716 07144 2324 07145 0116 07146 2440 07147 5062 07150 5172 07151 0000 2408 07152 2205 MRETRO, TEXT \RETRO-THRUST (4):\ 07153 2422 07154 1755 07155 2410 07156 2225 07157 2324 07160 4050 07161 6451 07162 7200 2409 2410 PAGE 2411 IFNZRO D < 2412 XXX=. 2413 FIELD D%10 2414 *1000> 2415 2416 DECIMAL 2417 BIGSUN, 2418 11000 0000 0;0 11001 0000 2419 11002 0006 6;4; -6;-4; 0;7; 0;-7; -6;4; 6;-4 11003 0004 11004 7772 11005 7774 11006 0000 11007 0007 11010 0000 11011 7771 11012 7772 11013 0004 11014 0006 11015 7774 2420 11016 7762 -14;0; 14;0; -7;-12; 7;12; 7;-12; -7;12 11017 0000 11020 0016 11021 0000 11022 7771 11023 7764 11024 0007 11025 0014 11026 0007 11027 7764 11030 7771 11031 0014 2421 11032 0000 0;-21; 0;21; 19;-11; -19;11; 19;11; -19;-11 11033 7753 11034 0000 11035 0025 11036 0023 11037 7765 11040 7755 11041 0013 11042 0023 11043 0013 11044 7755 11045 7765 2422 11046 0016 14;-25; -14;25; 28;0; -28;0; 14;25; -14;-25 11047 7747 11050 7762 11051 0031 11052 0034 11053 0000 11054 7744 11055 0000 11056 0016 11057 0031 11060 7762 11061 7747 2423 11062 0000 0;35; 0;-35; 20;30; -20;-30; -20;30; 20;-30 11063 0043 11064 0000 11065 7735 11066 0024 11067 0036 11070 7754 11071 7742 11072 7754 11073 0036 11074 0024 11075 7742 2424 11076 0000 0;0 11077 0000 2425 2426 ESUN=. 2427 IFNZRO 0 < 2428 -2;12; 0;12; 3;12; -4;11; -1;11; 1;11; 4;11; 6;11 2429 -6;10; -3;10; 2;10; 4;10; 8;10; -8;9; -4;9; -2;9; 0;9 2430 4;9; 6;9; 7;9; -8;8; -6;8; -3;8; 2;8; 6;8; 8;8; 10;8; -10;7 2431 8;7; 9;7; -8;6; -5;6; 0;6; 3;6; 10;6; 11;6; -11;5; -9;5 2432 -2;5; 5;5; 7;5; 9;5; 11;5; -7;4; 3;4; 12;4; -10;3 2433 -4;3; -1;3; 1;3; 7;3; 10;3; 11;3; -12;2 2434 -11;2; -6;2; 4;2; 12;2; 13;2 2435 -11;1; -10;1; -8;1; -2;1; 1;1; 8;1; 11;1; -12;0; 10;0 2436 -5;0; 6;0; 13;0; -11;-1; -3;-1; 0;-1; 3;-1; 9;-1; 12;-1; -12;-2; -10;-2 2437 -8;-1; -6;-2; -1;-2; 7;-2; 11;-2; 12;-2; -9;-3; -4;-3 2438 4;-3; 11;-3; -11;-4; -9;-4; -7;-4; -1;-4; 2;-4; 7;-4 2439 10;-4; 12;-4; 11;-5; -11;-6; -9;-6 2440 -8;-6; -6;-6; 4;-6; 6;-6; 8;-6; 9;-6; 11;-6; -10;-7 2441 -8;-7; -2;-7; 1;-7 2442 -8;-8; -6;-8; 6;-8; 8;-8; 9;-8; -8;-9; -6;-9; -4;-9; 4;-9; 7;-9 2443 -6;-10; -2;-10; 0;-10; 2;-10; 4;-10; 5;-10; 7;-10; -5;-11; -3;-11; -1;-11 2444 2;-11; 5;-11; -3;-12; -1;-12; 1;-12; 3;-12 2445 ESUN=. 2446 > 2447 PAGE 2448 SUNPT1, /STAR FIELD 2449 /ORION SIGNUS URSIA MAJOR SCORPIO 2450 11200 0022 18;-174; 62;108; -102;31; -128;250 11201 7522 11202 0076 11203 0154 11204 7632 11205 0037 11206 7600 11207 0372 2451 11210 0057 47;-171; 106;85; -88;20; -128;242 11211 7525 11212 0152 11213 0125 11214 7650 11215 0024 11216 7600 11217 0362 2452 11220 0041 33;-194; 91;91; -91;9; -139;225 11221 7476 11222 0133 11223 0133 11224 7645 11225 0011 11226 7565 11227 0341 2453 11230 0050 40;-191; 71;88; -91;-23; -146;216 11231 7501 11232 0107 11233 0130 11234 7645 11235 7751 11236 7556 11237 0330 2454 /SOME MISC. 2455 11240 7553 -149;-213 /IN PUPPIS 11241 7453 2456 11242 7654 -84;-168 /PROCYON 11243 7530 2457 11244 0161 113;-46 /IN ANDROMEDA 11245 7722 2458 11246 7765 -11;77 /ELTANIN 11247 0115 2459 2460 /ORION SIGNUS URSIA MAJOR SCORPIO 2461 11250 0057 47;-188; 73;74; -73;-20; -153;213 11251 7504 11252 0111 11253 0112 11254 7667 11255 7754 11256 7547 11257 0325 2462 11260 0032 26;-211; 47;85; -102;-9; -164;194 11261 7455 11262 0057 11263 0125 11264 7632 11265 7767 11266 7534 11267 0302 2463 11270 0102 66;-199; 29;74; -88;-3; -175;196 11271 7471 11272 0035 11273 0112 11274 7650 11275 7775 11276 7521 11277 0304 2464 11300 0067 55;120; -182;199 11301 0170 11302 7512 11303 0307 2465 2466 /PLUS SOME MISCELLANEOUS 2467 11304 7613 -117;188 11305 0274 2468 11306 7530 -168;71 /ARCTURUS 11307 0107 2469 11310 0006 6;6;-6;-6 /SOME SUN SPOTS 11311 0006 11312 7772 11313 7772 2470 11314 0320 208;-105 /NECK OF CETUS 11315 7627 2471 11316 0320 208;102 /IN AQUARIUS 11317 0146 2472 11320 7417 -241;17 /SPICA 11321 0021 2473 2474 /CASEOPEA CANUS MAJOR PLEIADES 2475 11322 0076 62;-23; -18;-253; 117;-110 11323 7751 11324 7756 11325 7403 11326 0165 11327 7622 2476 11330 0111 73;-20; -29;-239; 117;-108 11331 7754 11332 7743 11333 7421 11334 0165 11335 7624 2477 11336 0111 73;-11; -18;-228; 113;-111 11337 7765 11340 7756 11341 7434 11342 0161 11343 7621 2478 11344 0130 88;-9; -44;-222; 113;-108 11345 7767 11346 7724 11347 7442 11350 0161 11351 7624 2479 11352 0120 80;0; -51;-213 11353 0000 11354 7715 11355 7453 2480 11356 7632 -102;-239 11357 7421 2481 11360 7663 -77;-239 11361 7421 2482 11362 7676 -66;-248 11363 7410 2483 11364 7676 -66;-219 11365 7445 2484 11366 7707 -57;-222 11367 7442 2485 /PLUS SOME MISCELLANEOUS 2486 11370 0006 6;-6;-6;6 /MORE SUN SPOTS 11371 7772 11372 7772 11373 0006 2487 11374 7432 -230;159 /IN LIBRA 11375 0237 2488 11376 7470 -200;-139 /ALPHARD 11377 7565 2489 2490 SUNPT2, 2491 11400 0000 0;1; 0;-1; 1;0; -1;0 11401 0001 11402 0000 11403 7777 11404 0001 11405 0000 11406 7777 11407 0000 2492 11410 0000 0;2; 0;-2; 2;0; -2;0 11411 0002 11412 0000 11413 7776 11414 0002 11415 0000 11416 7776 11417 0000 2493 11420 0000 0;4; 0;-4; 4;0; -4;0 11421 0004 11422 0000 11423 7774 11424 0004 11425 0000 11426 7774 11427 0000 2494 11430 0000 0;6; 0;-6; 6;0; -6;0 11431 0006 11432 0000 11433 7772 11434 0006 11435 0000 11436 7772 11437 0000 2495 2496 /VAIRABLES START HERE 2497 /BRIGHT STARS 2498 11440 0222 146;-29 /IN ANDROMEDA 11441 7743 2499 11442 0120 80;-143 /ALDEBARAN IN TAURUS 11443 7561 2500 11444 7623 -109;100 /ALPHECCA IN CORONA BOREALIS 11445 0144 2501 11446 0231 153;-68 /IN ARIES 11447 7674 2502 2503 /LEO SAGITARIUS GEMINI PEGASIS 2504 11450 7470 -200;-17; -18;250; -55;-114; 168;102 11451 7757 11452 7756 11453 0372 11454 7711 11455 7616 11456 0250 11457 0146 2505 11460 7442 -222;-43; 4;250; -69;-120; 160;40 11461 7725 11462 0004 11463 0372 11464 7673 11465 7610 11466 0240 11467 0050 2506 11470 7470 -200;-43; 15;242; -73;-128; 193;46 11471 7725 11472 0017 11473 0362 11474 7667 11475 7600 11476 0301 11477 0056 2507 11500 0012 10;0;0;10;-10;0;0;-10 /MORE SUN 11501 0000 11502 0000 11503 0012 11504 7766 11505 0000 11506 0000 11507 7766 2508 11510 7506 -186;-37; 40;242; -58;-125; 164;0 11511 7733 11512 0050 11513 0362 11514 7706 11515 7603 11516 0244 11517 0000 2509 /BRIGHT STARS 2510 11520 7502 -190;145 /IN LIBRA 11521 0221 2511 11522 0013 11;105 /LYRA 11523 0151 2512 11524 0105 69;-63 /MIRFAK IN PERSEUS 11525 7701 2513 11526 0244 164;-63 /IN ARIES 11527 7701 2514 2515 /LEO SAGITARIUS GEMINI PEGASIS 2516 11530 7470 -200;-71; 51;239; -44;-122; 200;0 11531 7671 11532 0063 11533 0357 11534 7724 11535 7606 11536 0310 11537 0000 2517 11540 7530 -168;-71; 66;228; -33;-117 11541 7671 11542 0102 11543 0344 11544 7737 11545 7613 2518 11546 7512 -182;-85; 51;228; -58;-151 11547 7653 11550 0063 11551 0344 11552 7706 11553 7551 2519 11554 7525 -171;-83; 62;246; -58;-137 11555 7655 11556 0076 11557 0366 11560 7706 11561 7567 2520 /BRIGHT STARS 2521 11562 7530 -168;-240 /IN PUPPIS 11563 7420 2522 11564 7442 -222;137 /IN LIBRA 11565 0211 2523 11566 7460 -208;29 /IN VIRGO 11567 0035 2524 11570 0130 88;157 /ALTAIR 11571 0235 2525 2526 11572 0000 0;12;12;0;-12;0;0;-12 /MOR SUN 11573 0014 11574 0014 11575 0000 11576 7764 11577 0000 11600 0000 11601 7764 2527 /LEO SAGITARIUS GEMINI PEGASIS 2528 11602 7556 -146;-85; 66;239; -29;-137 11603 7653 11604 0102 11605 0357 11606 7743 11607 7567 2529 11610 7556 -146;-77; -22;-154 11611 7663 11612 7752 11613 7546 2530 11614 7737 -33;-159 11615 7541 2531 /AURIGA 2532 11616 0032 26;-88;47;-114;29;-128;4;-97 11617 7650 11620 0057 11621 7616 11622 0035 11623 7600 11624 0004 11625 7637 2533 11626 0004 4;4;4;-4;-4;4;-4;-4 /MORE SUN 11627 0004 11630 0004 11631 7774 11632 7774 11633 0004 11634 7774 11635 7774 2534 2535 11636 0000 0;0 11637 0000 2536 2537 IFZERO EAE < 2538 OCTAL 2539 FIELD 0 2540 / DIGITAL-8-17 EAE EMULATION FOLLOWS. 2541 / (PAGE ZERO LAYOUT IS CHANGED AND CODE RELOCATED.) 2542 *160 2543 MQL=JMS I . 2544 PSDMQL 2545 DVI=JMS I . 2546 PSDDVI 2547 MUY=JMS I . 2548 PSDMUY 2549 NMI=JMS I . 2550 PSDNMI 2551 SHL=JMS I . 2552 PSDSHL 2553 ASR=JMS I . 2554 PSDASR 2555 LSR=JMS I . 2556 PSDLSR 2557 SCA=JMS I . 2558 PSDSCA 2559 MQA=JMS I . 2560 PSDMQA 2561 CAM=JMS I . 2562 PSDCAM 2563 /FIXTAB 2564 / PSDMQL 2565 /*67 2566 SUDOMQ, 0 2567 SUDOSC, 0 2568 / PSDMQL 2569 / PSDDVI 2570 / MQLDVI 2571 / PSDMUY 2572 / MQLMUY 2573 / PSDNMI 2574 / PSDSHL 2575 / PSDASR 2576 / PSDLSR 2577 / PSDSCA 2578 / PSDMQA 2579 / PSDCAM 2580 2581 *7300 2582 PSDNMI, 0 /NMI 2583 DCA PSDSCA /SAVE AC 2584 DCA SUDOSC /CLEAR STEP COUNTER. 2585 TAD PSDSCA 2586 SZA 2587 JMP .+5 2588 TAD SUDOMQ 2589 SNA CLA 2590 JMP I PSDNMI /0 AC AND MQ. 2591 NMIBK2, TAD PSDSCA 2592 RAL 2593 SZL 2594 JMP NMIOUT /AC0=1 2595 SPA 2596 JMP NMIOUT+2 /AC0=0 AND AC1=1 2597 CLA /AC0=AC1=0 2598 NMIBCK, TAD SUDOMQ 2599 CLL RAL 2600 DCA SUDOMQ 2601 TAD PSDSCA 2602 RAL 2603 DCA PSDSCA 2604 ISZ SUDOSC 2605 JMP NMIBK2 2606 NMIOUT, SPA 2607 JMP .+3 /AC0=AC1=1 2608 RAR /AC0 DOES NOT EQUAL AC1 2609 JMP I PSDNMI /EXIT 2610 RAR /TEST IF NUMBER 6000 0000 2611 TAD .+11 2612 SZA CLA 2613 JMP NMIBCK /NOT 6000 2614 TAD SUDOMQ 2615 SZA 2616 JMP NMIBCK+1 /NOT 0000 2617 CML /RESTORE LINK 2618 TAD PSDSCA /RESTORE 6000 2619 JMP I PSDNMI /EXIT 2620 -6000 2621 PSDSCA, 0 /SCA 2622 DCA PSDMQA /INCLUSIVE OR 2623 TAD PSDMQA /STEP COUNTER 2624 CMA /AND AC 2625 AND SUDOSC 2626 TAD PSDMQA 2627 JMP I PSDSCA 2628 PSDMQA, 0 /MQA 2629 DCA PSDSCA /INCLUSIVE OR 2630 TAD PSDSCA /MQ 2631 CMA /AND AC 2632 AND SUDOMQ 2633 TAD PSDSCA 2634 JMP I PSDMQA 2635 2636 *PSDNMI+100 2637 PSDMQL, 0 /MQL 2638 DCA Z SUDOMQ 2639 JMP I PSDMQL 2640 PSDCAM, 0 /CAM (CLA!MQL) 2641 CLA 2642 DCA Z SUDOMQ 2643 JMP I PSDCAM 2644 MQLMUY, 0 /MQL!MUY 2645 DCA Z SUDOMQ 2646 TAD MQLMUY /SET UP 2647 DCA PSDMUY /FOR MUY SUBROUTINE 2648 JMP PSDMUY+1 2649 MQLDVI, 0 /MQL!DVI 2650 DCA Z SUDOMQ 2651 TAD MQLDVI /SET UP 2652 DCA PSDDVI /FOR DVI SUBROUTINE 2653 JMP PSDDVI+1 2654 37 2655 PSDSHL, 0 /SHL 2656 DCA PSDCAM /SAVE AC 2657 TAD I PSDSHL /SHIFT COUNT 2658 ISZ PSDSHL /EXIT POINT 2659 AND PSDSHL-1 /5 BIT COUNTER 2660 CMA 2661 DCA SUDOSC 2662 TAD SUDOMQ /SHIFT COMBINED 2663 CLL RAL /AC AND MQ 2664 DCA SUDOMQ /1 BIT TO THE 2665 TAD PSDCAM /LEFT 2666 RAL 2667 DCA PSDCAM 2668 ISZ SUDOSC 2669 JMP .-7 /MORE SHIFTING 2670 TAD PSDCAM 2671 JMP I PSDSHL /EXIT 2672 PSDLSR, 0 /LSR 2673 DCA PSDCAM /SAVE AC 2674 TAD PSDLSR /USE ASR 2675 DCA PSDASR /ROUTINE 2676 CLL 2677 JMP PSDASR+5 2678 2679 PSDASR, 0 /ASR 2680 CLL /SET LINK=SIGN 2681 SPA 2682 CML 2683 DCA PSDCAM /SAVE AC 2684 TAD I PSDASR /SHIFT COUNT 2685 ISZ PSDASR /EXIT POINT 2686 AND PSDSHL-1 /5 BIT COUNTER 2687 CMA 2688 DCA SUDOSC 2689 TAD PSDCAM /RESTORE AC 2690 JMP .+4 2691 TAD PSDCAM 2692 SPA 2693 CML 2694 RAR 2695 DCA PSDCAM 2696 TAD SUDOMQ 2697 RAR 2698 DCA SUDOMQ 2699 CLL 2700 ISZ SUDOSC 2701 JMP .-12 /MORE SHIFTING 2702 TAD PSDCAM 2703 SPA 2704 CML /LINK=AC0 2705 JMP I PSDASR 2706 7763 2707 PSDDVI, 0 /DVI 2708 DCA PSDCAM /SAVE HIGH ORDER DIVIDEND 2709 TAD I PSDDVI /DIVISOR 2710 ISZ PSDDVI /EXIT POINT 2711 CLL CMA IAC 2712 DCA MQLMUY /2'S COMPLEMENT OF DIVISOR 2713 TAD PSDCAM /HIGH ORDER DIVIDEND 2714 TAD MQLMUY 2715 SZL CLA 2716 JMP I PSDDVI /DIVIDE OVERFLOW 2717 TAD PSDDVI-1 /7763 2718 DCA PSDLSR /COUNTER 2719 JMP .+11 2720 TAD PSDCAM 2721 RAL 2722 DCA PSDCAM 2723 TAD PSDCAM 2724 TAD MQLMUY 2725 SZL 2726 DCA PSDCAM 2727 CLA 2728 TAD SUDOMQ 2729 RAL 2730 DCA SUDOMQ 2731 ISZ PSDLSR 2732 JMP .-14 2733 TAD PSDCAM /COUNT EXHAUSTED 2734 JMP I PSDDVI /EXIT 2735 2736 PSDMUY, 0 /MUY 2737 CLA CLL 2738 DCA MQLDVI /CLEAR PRODUCT (MOST SIG.) REGISTER 2739 TAD PSDDVI-1 2740 DCA PSDLSR /LOOP COUNTER 2741 TAD I PSDMUY 2742 DCA PSDMQL /OPERAND 2743 ISZ PSDMUY /EXIT POINT 2744 JMP .+10 2745 TAD MQLDVI 2746 SNL 2747 JMP .+3 2748 CLL 2749 TAD PSDMQL 2750 RAR 2751 DCA MQLDVI 2752 TAD SUDOMQ 2753 RAR 2754 DCA SUDOMQ /LOW ORDER PRODUCT 2755 ISZ PSDLSR 2756 JMP .-13 2757 TAD MQLDVI /HIGH ORDER PRODUCT 2758 JMP I PSDMUY /EXIT 2759 /PAUSE 2760 > 2761 $ ALIVE 0021 ANGLES 2462 ARMDLY 3356 ARMED 0034 ASR 7415 AX08 0000 BANG 4105 BANGL1 4114 BIGSUN 1000 BOUNCX 0067 BOUNCY 0070 BOUNX 2146 BOUNY 2155 BREAKU 0044 BRKTBL 4200 BSHIP 1323 BSHIPE 1351 CALPL 1663 CALPNT 1600 CALPT 1755 CALPT2 1760 CALPTX 1756 CALPTY 1757 CALPX 1753 CALPX1 1671 CALPX2 1710 CALPY 1754 CALPY1 1675 CALPY2 1714 CALPY3 1722 CALPY4 1761 CALPY5 1762 CAM 7621 CHAR 5736 CLKINT 5422 COLID1 4023 COLID2 4054 COLIDE 4000 COLIDS 4014 COLLD1 4012 COLLD2 4051 COLLD3 4102 COLLD4 4010 COLLD5 4047 COLLD6 4100 COMPAR 2634 CONSER 0050 COS 4474 CRLF 5737 D 0010 D1 4507 D2 4506 DBUFP 0045 DELAY1 5421 DFLAME 3142 DISBUF 4000 DISPCH 5646 DISPLA 4473 DIVIDE 4472 DK8EA 0001 DK8EP 0000 DRAW 4502 DSTARS 4506 DSUN 4507 DVI 7407 EAE 0001 ESUN 1100 FCLOCK 0000 FCOSPH 3322 FIRE 4510 FIRONE 3266 FLAME 4505 FLAMEX 1005 FSINPH 3330 GETC 5724 GETMIS 3676 GGRAV 4476 GRVTBL 0600 HYPER 3357 HYPERS 0032 ICHAR 5420 INPUT 6060 INTEXT 5433 INTRPT 5402 KBOARD 5600 KW12 0000 LOOKUP 2200 LSR 7417 M1703 0001 MAGRAV 7116 MANGCO 7054 MAXMIS 0053 MBOUNC 7037 MCURVE 7012 MGRAVY 7100 MISCNT 0033 MISPNT 0066 MISSCN 3633 MISSIN 3634 MISSL1 3617 MISSLS 3600 MISST1 3635 MISST2 3636 MISSUB 3637 MISTBL 3400 MMESG 6126 MMISSL 7125 MNORMA 7065 MOPTA 6622 MOPTB 6647 MOPTBA 6674 MOPTC 6710 MOPTD 6724 MOPTE 6734 MOPTF 6754 MPHLAT 7021 MQA 7501 MQL 7421 MRETRO 7152 MSHIPS 7003 MSTARS 7027 MSUN 6744 MTHRUS 7137 MUFO 6774 MULT 4471 MUY 7405 MVELOX 6600 MWRAP 7044 NEWPL1 3010 NEWPL2 3046 NEWPL3 3070 NEWPL4 3051 NEWPL5 3073 NEWPL6 3023 NEWPLH 3104 NEWPLL 3105 NEWPLS 3106 NEWPO1 2407 NEWPO2 2425 NEWPO3 2417 NEWPO4 2435 NEWPO5 2471 NEWPO6 2423 unreferenced NEWPO7 2441 NEWPO8 2475 NEWPOL 3000 NEWPOS 2400 NMI 7411 NNUMMI 0052 NULL 1003 NULL1 1000 unreferenced NUMB 6057 NUMBEX 6050 NUMMIS 0051 NXTANG 4504 NXTPOS 4503 OANGUL 6010 OBOUNC 5747 OCTALL 6026 OCTALX 6023 OCURVE 6422 OFDECK 4501 OFFSET 2211 OGRAV 6061 OMISSL 6102 ONDECK 4500 ONORM 6016 OOPTIO 6200 OPHLAT 6407 OPTION 5444 ORETRO 6120 OSHIPJ 6270 OSHIPS 6250 OSTARS 6433 OSUN 6442 OTHRUS 6111 OTM1 5664 OUFO 6226 OUFOR 6245 OVELOC 6400 OWRAP 6000 PCH 5714 PDP12 0000 POLARS 3254 PRCHR 5702 PRMSG 5665 PRST1 5671 PSAUC1 5247 PSAUC2 1720 PSAUCP 0065 PUTMIS 3711 QALPHA 0007 unreferenced QBETA 0006 unreferenced QCNT1 0056 QCNT2 0057 unreferenced QCNT3 0060 QCOSPH 0040 QCOSTH 0043 QDISXR 0012 QGRAV 0062 QPH 0026 QPHDOT 0027 QPHR 0030 QR 0020 QRET 0063 QSHIP 0035 QSHIPN 0036 QSINPH 0037 QSINTH 0042 QTHA 0047 QTHR 0046 QTHROC 0064 QTHRUS 0061 QTIME 0041 QTM1 0054 QTM2 0055 QVX 0024 QVY 0025 QXPOS 0022 QXR1 0010 QXR2 0011 QXR3 0013 QYPOS 0023 RANDOM 4477 RANUMH 0361 RANUML 0362 RANUMT 0360 REINIT 5745 ROOT 3107 ROOTI 3140 ROOTL 3117 ROOTL1 3123 ROOTN2 3137 ROOTT 3141 SALPN1 2037 SALPN2 2033 SALPNL 2031 SALPTX 2114 SALPTY 2115 SALPX 2116 SALPY 2117 SAUC 2000 SAUC1 1163 SAUC1E 1201 SAUC2 1315 SAUC2E 1323 SAVAC 5400 SAVLK 5401 SC 4315 SC1 4777 SC2 4776 SCA 7441 SCALE 2515 SCALE1 2600 SCALE2 2635 SCATBL 4320 SCATTE 3725 SCATTM 3756 SCL 7403 unreferenced SETGR1 2706 SETGRL 2671 SETGRV 2662 SETGRX 2677 SHIELD 0031 SHIP1 1351 SHIP1C 1025 SHIP1E 1105 SHIP1X 1353 SHIP1Y 1354 SHIP2 1372 SHIP2C 1201 SHIP2E 1251 SHIP2X 1374 SHIP2Y 1375 SHIPSZ 0021 SHL 7413 SIN 4475 SINTAB 0400 SPCWAR 4600 STARTU 4623 STCLK 5446 STOVER 5115 SUN 3200 SUNCNT 3251 SUND2 3235 unreferenced SUNHLF 3253 SUNL1 3241 unreferenced SUNL2 3237 SUNPT1 1200 SUNPT2 1400 SUNTMP 3252 SWITCH 1421 T1 1622 T2 1631 T3 1653 T30G 0000 T4 1661 TABLE 2212 TELSW 5417 TX 2627 TY 2643 VC8E 0001 VC8I 0000 WAIT 5114 WAR 5002 WAR1 5232 WAR1E 5031 WAR2 5244 WAR2E 5061 WARDIS 5072 unreferenced WARDX 5101 WARS2 5034 WARS3 5064 WARSUB 5200 XADDD 2120 XADDD1 2145 XADDD2 2141 XCOSIN 0332 XDISL 0274 XDISPL 0261 XDIVID 0234 XGGRAV 2650 XMULT 0202 XMULT1 0217 XMULTS 0233 XOFDEC 1431 XONDEC 1413 XRANDO 0336 XSINE 0313 XSQUAR 2661 XXX 7200 XXXXXX 0111