Home » Personal collection » Acorn hard disk » misc » misc3 » shipwren/TITLE
shipwren/TITLE
This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.
Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.
Tape/disk: | Home » Personal collection » Acorn hard disk » misc » misc3 |
Filename: | shipwren/TITLE |
Read OK: | ✔ |
File size: | 0456 bytes |
Load address: | 0000 |
Exec address: | 0000 |
Duplicates
There is 1 duplicate copy of this file in the archive:
- Personal collection » Acorn ADFS disks » Archimedes » Unlabelled_disk_2.ADF » TITLE
- Personal collection » Acorn hard disk » misc » misc3 » shipwren/TITLE
File contents
10 MODE 1 15 VDU 23,1,0;0;0;0; 20 alpha=2:REM distance of observer from centre of sphere divided by radius of sphere 30 xcen=640 40 ycen=512 50 rad=450 60 thetaINT=4.5 70 phiINT=5 80 FOR thetaL=0 TO 180-thetaINT STEP thetaINT 90 thetaH=thetaL+thetaINT 100 IF thetaL<180/PI*ASN(1/alpha) OR thetaH>180-180/PI*ASN(1/alpha) THEN 240 110 phiminL=-180+180/PI*ASN(1/alpha/SIN(thetaL*PI/180)) 120 phimaxL=-180/PI*ASN(1/alpha/SIN(thetaL*PI/180)) 130 phiminH=-180+180/PI*ASN(1/alpha/SIN(thetaH*PI/180)) 140 phimaxH=-180/PI*ASN(1/alpha/SIN(thetaH*PI/180)) 150 FOR phiL=-180 TO -phiINT STEP phiINT 160 phiH=phiL+phiINT 170 IF phiL<phiminL OR phiL<phiminH OR phiH>phimaxL OR phiH>phimaxH THEN GOTO230 180 GCOL 0,((INT((phiL+180)/phiINT)+(thetaL DIV thetaINT)) MOD 3)+1 190 MOVE FNx(thetaL,phiL),FNy(thetaL,phiL) 200 MOVE FNx(thetaL,phiH),FNy(thetaL,phiH) 210 PLOT 85,FNx(thetaH,phiL),FNy(thetaH,phiL) 220 PLOT 85,FNx(thetaH,phiH),FNy(thetaH,phiH) 230 NEXT phiL 240 NEXT thetaL 245 *SA. SCREEN 3000 8000 250 GOTO250 260 DEFFNx(theta,phi) 270 thetarad=PI/180*theta 280 phirad=PI/180*phi 290 A=rad*SQR(alpha^2-1)/(alpha+SIN(thetarad)*SIN(phirad)) 300 =xcen+A*SIN(thetarad)*COS(phirad) 310 DEFFNy(theta,phi) 320 =ycen+A*COS(thetarad)
� 1 � 23,1,0;0;0;0; U alpha=2:� distance of observer from centre of sphere divided by radius of sphere xcen=640 ( ycen=512 2 rad=450 < thetaINT=4.5 F phiINT=5 P) � thetaL=0 � 180-thetaINT � thetaINT Z thetaH=thetaL+thetaINT dC � thetaL<180/�*�(1/alpha) � thetaH>180-180/�*�(1/alpha) � �dp@ n2 phiminL=-180+180/�*�(1/alpha/�(thetaL*�/180)) x. phimaxL=-180/�*�(1/alpha/�(thetaL*�/180)) �2 phiminH=-180+180/�*�(1/alpha/�(thetaH*�/180)) �. phimaxH=-180/�*�(1/alpha/�(thetaH*�/180)) �# � phiL=-180 � -phiINT � phiINT � phiH=phiL+phiINT �H � phiL<phiminL � phiL<phiminH � phiH>phimaxL � phiH>phimaxH � �df@ �; � 0,((�((phiL+180)/phiINT)+(thetaL � thetaINT)) � 3)+1 �& � �x(thetaL,phiL),�y(thetaL,phiL) �& � �x(thetaL,phiH),�y(thetaL,phiH) �) � 85,�x(thetaH,phiL),�y(thetaH,phiL) �) � 85,�x(thetaH,phiH),�y(thetaH,phiH) � � phiL � � thetaL � *SA. SCREEN 3000 8000 � �dz@ ݤx(theta,phi) thetarad=�/180*theta phirad=�/180*phi "5 A=rad*�(alpha^2-1)/(alpha+�(thetarad)*�(phirad)) ," =xcen+A*�(thetarad)*�(phirad) 6 ݤy(theta,phi) @ =ycen+A*�(thetarad) �
00000000 0d 00 0a 08 20 eb 20 31 0d 00 0f 14 20 ef 20 32 |.... . 1.... . 2| 00000010 33 2c 31 2c 30 3b 30 3b 30 3b 30 3b 0d 00 14 55 |3,1,0;0;0;0;...U| 00000020 20 61 6c 70 68 61 3d 32 3a f4 20 64 69 73 74 61 | alpha=2:. dista| 00000030 6e 63 65 20 6f 66 20 6f 62 73 65 72 76 65 72 20 |nce of observer | 00000040 66 72 6f 6d 20 63 65 6e 74 72 65 20 6f 66 20 73 |from centre of s| 00000050 70 68 65 72 65 20 64 69 76 69 64 65 64 20 62 79 |phere divided by| 00000060 20 72 61 64 69 75 73 20 6f 66 20 73 70 68 65 72 | radius of spher| 00000070 65 0d 00 1e 0d 20 78 63 65 6e 3d 36 34 30 0d 00 |e.... xcen=640..| 00000080 28 0d 20 79 63 65 6e 3d 35 31 32 0d 00 32 0c 20 |(. ycen=512..2. | 00000090 72 61 64 3d 34 35 30 0d 00 3c 11 20 74 68 65 74 |rad=450..<. thet| 000000a0 61 49 4e 54 3d 34 2e 35 0d 00 46 0d 20 70 68 69 |aINT=4.5..F. phi| 000000b0 49 4e 54 3d 35 0d 00 50 29 20 e3 20 74 68 65 74 |INT=5..P) . thet| 000000c0 61 4c 3d 30 20 b8 20 31 38 30 2d 74 68 65 74 61 |aL=0 . 180-theta| 000000d0 49 4e 54 20 88 20 74 68 65 74 61 49 4e 54 0d 00 |INT . thetaINT..| 000000e0 5a 1b 20 74 68 65 74 61 48 3d 74 68 65 74 61 4c |Z. thetaH=thetaL| 000000f0 2b 74 68 65 74 61 49 4e 54 0d 00 64 43 20 e7 20 |+thetaINT..dC . | 00000100 74 68 65 74 61 4c 3c 31 38 30 2f af 2a 98 28 31 |thetaL<180/.*.(1| 00000110 2f 61 6c 70 68 61 29 20 84 20 74 68 65 74 61 48 |/alpha) . thetaH| 00000120 3e 31 38 30 2d 31 38 30 2f af 2a 98 28 31 2f 61 |>180-180/.*.(1/a| 00000130 6c 70 68 61 29 20 8c 20 8d 64 70 40 0d 00 6e 32 |lpha) . .dp@..n2| 00000140 20 70 68 69 6d 69 6e 4c 3d 2d 31 38 30 2b 31 38 | phiminL=-180+18| 00000150 30 2f af 2a 98 28 31 2f 61 6c 70 68 61 2f b5 28 |0/.*.(1/alpha/.(| 00000160 74 68 65 74 61 4c 2a af 2f 31 38 30 29 29 0d 00 |thetaL*./180))..| 00000170 78 2e 20 70 68 69 6d 61 78 4c 3d 2d 31 38 30 2f |x. phimaxL=-180/| 00000180 af 2a 98 28 31 2f 61 6c 70 68 61 2f b5 28 74 68 |.*.(1/alpha/.(th| 00000190 65 74 61 4c 2a af 2f 31 38 30 29 29 0d 00 82 32 |etaL*./180))...2| 000001a0 20 70 68 69 6d 69 6e 48 3d 2d 31 38 30 2b 31 38 | phiminH=-180+18| 000001b0 30 2f af 2a 98 28 31 2f 61 6c 70 68 61 2f b5 28 |0/.*.(1/alpha/.(| 000001c0 74 68 65 74 61 48 2a af 2f 31 38 30 29 29 0d 00 |thetaH*./180))..| 000001d0 8c 2e 20 70 68 69 6d 61 78 48 3d 2d 31 38 30 2f |.. phimaxH=-180/| 000001e0 af 2a 98 28 31 2f 61 6c 70 68 61 2f b5 28 74 68 |.*.(1/alpha/.(th| 000001f0 65 74 61 48 2a af 2f 31 38 30 29 29 0d 00 96 23 |etaH*./180))...#| 00000200 20 e3 20 70 68 69 4c 3d 2d 31 38 30 20 b8 20 2d | . phiL=-180 . -| 00000210 70 68 69 49 4e 54 20 88 20 70 68 69 49 4e 54 0d |phiINT . phiINT.| 00000220 00 a0 15 20 70 68 69 48 3d 70 68 69 4c 2b 70 68 |... phiH=phiL+ph| 00000230 69 49 4e 54 0d 00 aa 48 20 e7 20 70 68 69 4c 3c |iINT...H . phiL<| 00000240 70 68 69 6d 69 6e 4c 20 84 20 70 68 69 4c 3c 70 |phiminL . phiL<p| 00000250 68 69 6d 69 6e 48 20 84 20 70 68 69 48 3e 70 68 |himinH . phiH>ph| 00000260 69 6d 61 78 4c 20 84 20 70 68 69 48 3e 70 68 69 |imaxL . phiH>phi| 00000270 6d 61 78 48 20 8c 20 e5 8d 64 66 40 0d 00 b4 3b |maxH . ..df@...;| 00000280 20 e6 20 30 2c 28 28 a8 28 28 70 68 69 4c 2b 31 | . 0,((.((phiL+1| 00000290 38 30 29 2f 70 68 69 49 4e 54 29 2b 28 74 68 65 |80)/phiINT)+(the| 000002a0 74 61 4c 20 81 20 74 68 65 74 61 49 4e 54 29 29 |taL . thetaINT))| 000002b0 20 83 20 33 29 2b 31 0d 00 be 26 20 ec 20 a4 78 | . 3)+1...& . .x| 000002c0 28 74 68 65 74 61 4c 2c 70 68 69 4c 29 2c a4 79 |(thetaL,phiL),.y| 000002d0 28 74 68 65 74 61 4c 2c 70 68 69 4c 29 0d 00 c8 |(thetaL,phiL)...| 000002e0 26 20 ec 20 a4 78 28 74 68 65 74 61 4c 2c 70 68 |& . .x(thetaL,ph| 000002f0 69 48 29 2c a4 79 28 74 68 65 74 61 4c 2c 70 68 |iH),.y(thetaL,ph| 00000300 69 48 29 0d 00 d2 29 20 f0 20 38 35 2c a4 78 28 |iH)...) . 85,.x(| 00000310 74 68 65 74 61 48 2c 70 68 69 4c 29 2c a4 79 28 |thetaH,phiL),.y(| 00000320 74 68 65 74 61 48 2c 70 68 69 4c 29 0d 00 dc 29 |thetaH,phiL)...)| 00000330 20 f0 20 38 35 2c a4 78 28 74 68 65 74 61 48 2c | . 85,.x(thetaH,| 00000340 70 68 69 48 29 2c a4 79 28 74 68 65 74 61 48 2c |phiH),.y(thetaH,| 00000350 70 68 69 48 29 0d 00 e6 0b 20 ed 20 70 68 69 4c |phiH).... . phiL| 00000360 0d 00 f0 0d 20 ed 20 74 68 65 74 61 4c 0d 00 f5 |.... . thetaL...| 00000370 1a 20 2a 53 41 2e 20 53 43 52 45 45 4e 20 33 30 |. *SA. SCREEN 30| 00000380 30 30 20 38 30 30 30 0d 00 fa 0a 20 e5 8d 64 7a |00 8000.... ..dz| 00000390 40 0d 01 04 13 20 dd a4 78 28 74 68 65 74 61 2c |@.... ..x(theta,| 000003a0 70 68 69 29 0d 01 0e 19 20 74 68 65 74 61 72 61 |phi).... thetara| 000003b0 64 3d af 2f 31 38 30 2a 74 68 65 74 61 0d 01 18 |d=./180*theta...| 000003c0 15 20 70 68 69 72 61 64 3d af 2f 31 38 30 2a 70 |. phirad=./180*p| 000003d0 68 69 0d 01 22 35 20 41 3d 72 61 64 2a b6 28 61 |hi.."5 A=rad*.(a| 000003e0 6c 70 68 61 5e 32 2d 31 29 2f 28 61 6c 70 68 61 |lpha^2-1)/(alpha| 000003f0 2b b5 28 74 68 65 74 61 72 61 64 29 2a b5 28 70 |+.(thetarad)*.(p| 00000400 68 69 72 61 64 29 29 0d 01 2c 22 20 3d 78 63 65 |hirad))..," =xce| 00000410 6e 2b 41 2a b5 28 74 68 65 74 61 72 61 64 29 2a |n+A*.(thetarad)*| 00000420 9b 28 70 68 69 72 61 64 29 0d 01 36 13 20 dd a4 |.(phirad)..6. ..| 00000430 79 28 74 68 65 74 61 2c 70 68 69 29 0d 01 40 18 |y(theta,phi)..@.| 00000440 20 3d 79 63 65 6e 2b 41 2a 9b 28 74 68 65 74 61 | =ycen+A*.(theta| 00000450 72 61 64 29 0d ff |rad)..| 00000456