Home » Personal collection » Acorn hard disk » misc » misc3 » dcfprog3/Graphics/Spiral

dcfprog3/Graphics/Spiral

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: dcfprog3/Graphics/Spiral
Read OK:
File size: 02AD bytes
Load address: 0000
Exec address: 0000
Duplicates

There are 3 duplicate copies of this file in the archive:

File contents
   10REM Spiral
   20REM by Stephen Bennett
   30REM (c) Electron User
   40OSCLI"FX178"
   50A%=163:X%=128:Y%=1
   60X%=128
   70Y%=1
   80 CALL&FFF4
   90DIMsin(360),cos(360)
  100FORA%=0 TO 360 STEP 4
  110sin(A%)=SIN(RAD(A%))
  120cos(A%)=COS(RAD(A%))
  130NEXT
  140MODE2
  150VDU23,1,0;0;0;0;
  170VDU29,640;512;
  180C%=0
  190FORB%=928TO824STEP-8
  200IF C%=0 OR C%=8 C%=C%+1
  210R=B%
  220MOVE640,B%
  230GCOL0,C%
  240C%=C%+1
  250A%=0
  260REPEAT
  270A%=(A%+4) MOD 360
  280R=R-(112/90)
  290DRAW sin(A%)*R,cos(A%)*R
  300UNTILR<2
  310NEXT
  320A%=23
  330?&FE07=?&282
  340D%=-1
  350S%=0
  360REPEAT 
  370IF INKEY-98 D%=-1 ELSE IF INKEY-67 D%=1
  380IF INKEY-73 AND S%>0 S%=S%-4 ELSE IF INKEY-105 AND S%<500 S%=S%+4
  390IF A%=16 OR A%=24 A%=A%+D%
  400VDU19,A%,0;0;19,A%-8,1;0;
  410A%=A%+D%
  420IF A%<16 A%=A%+16 ELSE IF A%>31 A%=A%-16
  430FORT%=0TOS%
  440NEXT
  450UNTIL0

� Spiral
� by Stephen Bennett
� (c) Electron User
(�"FX178"
2A%=163:X%=128:Y%=1
<
X%=128
FY%=1
P �&FFF4
Z�sin(360),cos(360)
d�A%=0 � 360 � 4
nsin(A%)=�(�(A%))
xcos(A%)=�(�(A%))
��
��2
��23,1,0;0;0;0;
��29,640;512;
�C%=0
��B%=928�824�-8
�� C%=0 � C%=8 C%=C%+1
�R=B%
��640,B%
�	�0,C%
�C%=C%+1
�A%=0
�
A%=(A%+4) � 360
R=R-(112/90)
"� sin(A%)*R,cos(A%)*R
,�R<2
6�
@	A%=23
J?&FE07=?&282
T	D%=-1
^S%=0
h� 
r� �-98 D%=-1 � � �-67 D%=1
|4� �-73 � S%>0 S%=S%-4 � � �-105 � S%<500 S%=S%+4
�� A%=16 � A%=24 A%=A%+D%
��19,A%,0;0;19,A%-8,1;0;
�A%=A%+D%
�'� A%<16 A%=A%+16 � � A%>31 A%=A%-16
��T%=0�S%
��
��0
�
00000000  0d 00 0a 0c f4 20 53 70  69 72 61 6c 0d 00 14 18  |..... Spiral....|
00000010  f4 20 62 79 20 53 74 65  70 68 65 6e 20 42 65 6e  |. by Stephen Ben|
00000020  6e 65 74 74 0d 00 1e 17  f4 20 28 63 29 20 45 6c  |nett..... (c) El|
00000030  65 63 74 72 6f 6e 20 55  73 65 72 0d 00 28 0c ff  |ectron User..(..|
00000040  22 46 58 31 37 38 22 0d  00 32 16 41 25 3d 31 36  |"FX178"..2.A%=16|
00000050  33 3a 58 25 3d 31 32 38  3a 59 25 3d 31 0d 00 3c  |3:X%=128:Y%=1..<|
00000060  0a 58 25 3d 31 32 38 0d  00 46 08 59 25 3d 31 0d  |.X%=128..F.Y%=1.|
00000070  00 50 0b 20 d6 26 46 46  46 34 0d 00 5a 16 de 73  |.P. .&FFF4..Z..s|
00000080  69 6e 28 33 36 30 29 2c  63 6f 73 28 33 36 30 29  |in(360),cos(360)|
00000090  0d 00 64 13 e3 41 25 3d  30 20 b8 20 33 36 30 20  |..d..A%=0 . 360 |
000000a0  88 20 34 0d 00 6e 14 73  69 6e 28 41 25 29 3d b5  |. 4..n.sin(A%)=.|
000000b0  28 b2 28 41 25 29 29 0d  00 78 14 63 6f 73 28 41  |(.(A%))..x.cos(A|
000000c0  25 29 3d 9b 28 b2 28 41  25 29 29 0d 00 82 05 ed  |%)=.(.(A%)).....|
000000d0  0d 00 8c 06 eb 32 0d 00  96 12 ef 32 33 2c 31 2c  |.....2.....23,1,|
000000e0  30 3b 30 3b 30 3b 30 3b  0d 00 aa 10 ef 32 39 2c  |0;0;0;0;.....29,|
000000f0  36 34 30 3b 35 31 32 3b  0d 00 b4 08 43 25 3d 30  |640;512;....C%=0|
00000100  0d 00 be 12 e3 42 25 3d  39 32 38 b8 38 32 34 88  |.....B%=928.824.|
00000110  2d 38 0d 00 c8 19 e7 20  43 25 3d 30 20 84 20 43  |-8..... C%=0 . C|
00000120  25 3d 38 20 43 25 3d 43  25 2b 31 0d 00 d2 08 52  |%=8 C%=C%+1....R|
00000130  3d 42 25 0d 00 dc 0b ec  36 34 30 2c 42 25 0d 00  |=B%.....640,B%..|
00000140  e6 09 e6 30 2c 43 25 0d  00 f0 0b 43 25 3d 43 25  |...0,C%....C%=C%|
00000150  2b 31 0d 00 fa 08 41 25  3d 30 0d 01 04 05 f5 0d  |+1....A%=0......|
00000160  01 0e 13 41 25 3d 28 41  25 2b 34 29 20 83 20 33  |...A%=(A%+4) . 3|
00000170  36 30 0d 01 18 10 52 3d  52 2d 28 31 31 32 2f 39  |60....R=R-(112/9|
00000180  30 29 0d 01 22 19 df 20  73 69 6e 28 41 25 29 2a  |0)..".. sin(A%)*|
00000190  52 2c 63 6f 73 28 41 25  29 2a 52 0d 01 2c 08 fd  |R,cos(A%)*R..,..|
000001a0  52 3c 32 0d 01 36 05 ed  0d 01 40 09 41 25 3d 32  |R<2..6....@.A%=2|
000001b0  33 0d 01 4a 10 3f 26 46  45 30 37 3d 3f 26 32 38  |3..J.?&FE07=?&28|
000001c0  32 0d 01 54 09 44 25 3d  2d 31 0d 01 5e 08 53 25  |2..T.D%=-1..^.S%|
000001d0  3d 30 0d 01 68 06 f5 20  0d 01 72 1e e7 20 a6 2d  |=0..h.. ..r.. .-|
000001e0  39 38 20 44 25 3d 2d 31  20 8b 20 e7 20 a6 2d 36  |98 D%=-1 . . .-6|
000001f0  37 20 44 25 3d 31 0d 01  7c 34 e7 20 a6 2d 37 33  |7 D%=1..|4. .-73|
00000200  20 80 20 53 25 3e 30 20  53 25 3d 53 25 2d 34 20  | . S%>0 S%=S%-4 |
00000210  8b 20 e7 20 a6 2d 31 30  35 20 80 20 53 25 3c 35  |. . .-105 . S%<5|
00000220  30 30 20 53 25 3d 53 25  2b 34 0d 01 86 1c e7 20  |00 S%=S%+4..... |
00000230  41 25 3d 31 36 20 84 20  41 25 3d 32 34 20 41 25  |A%=16 . A%=24 A%|
00000240  3d 41 25 2b 44 25 0d 01  90 1b ef 31 39 2c 41 25  |=A%+D%.....19,A%|
00000250  2c 30 3b 30 3b 31 39 2c  41 25 2d 38 2c 31 3b 30  |,0;0;19,A%-8,1;0|
00000260  3b 0d 01 9a 0c 41 25 3d  41 25 2b 44 25 0d 01 a4  |;....A%=A%+D%...|
00000270  27 e7 20 41 25 3c 31 36  20 41 25 3d 41 25 2b 31  |'. A%<16 A%=A%+1|
00000280  36 20 8b 20 e7 20 41 25  3e 33 31 20 41 25 3d 41  |6 . . A%>31 A%=A|
00000290  25 2d 31 36 0d 01 ae 0c  e3 54 25 3d 30 b8 53 25  |%-16.....T%=0.S%|
000002a0  0d 01 b8 05 ed 0d 01 c2  06 fd 30 0d ff           |..........0..|
000002ad