Home » Archimedes archive » Acorn User » AU 1994-02.adf » !StarInfo_StarInfo » Jones/String
Jones/String
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 » Archimedes archive » Acorn User » AU 1994-02.adf » !StarInfo_StarInfo |
Filename: | Jones/String |
Read OK: | ✔ |
File size: | 037E bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10REM >String 20REM By Tim Jones 30REM For 32-bit machines 40REM (c) AU February 1994 50: 60ON ERROR MODE 0:REPORT:PRINT;" at line ";ERL:END 70MODE 9+128 80OFF 90l=20 100s=30 110g=-10 120d=0.95 130w=0.3 140DIM x(l),y(l),xs(l),ys(l) 150DIM a(l),b(l),cos(l),sin(l) 160DIM c(720),s(720) 170FOR a=0 TO 720 180 c(a)=COSRADa 190 s(a)=SINRADa 200NEXT 210b=1 220x()=640 230y()=512 240REPEAT 250 xs(0)=0 260 ys(0)=0 270 MOUSE x(0),y(0),c 280 FOR c=1 TO l 290 xd=x(c)-x(c-1) 300 yd=y(c)-y(c-1) 310 b(c)=SQR(xd*xd+yd*yd) 320 xd+=xd=0*1E-10 330 a=DEGATN(yd/xd)-(xd<0)*180+360 340 cos(c)=c(a) 350 sin(c)=s(a) 360 x(c)=x(c-1)+s*cos(c) 370 y(c)=y(c-1)+s*sin(c) 380 LINE x(c),y(c),x(c-1),y(c-1) 390 NEXT 400 a()=s-b() 410 b()=a()*cos() 420 b()=b()*w 430 xs()=xs()+b() 440 b()=a()*sin() 450 b()=b()*w 460 ys()=ys()+b() 470 x()=x()+xs() 480 y()=y()+ys() 490 xs()=xs()*d 500 ys()=ys()*d 510 ys()=ys()+g 520 SYS 6,112,b 530 b=3-b 540 SYS 6,113,b 550 WAIT 560 CLS 570UNTIL FALSE
� >String � By Tim Jones � For 32-bit machines (� (c) AU February 1994 2: <� � � 0:�:�;" at line ";�:� F� 9+128 P� Zl=20 ds=30 n g=-10 x d=0.95 � w=0.3 �� x(l),y(l),xs(l),ys(l) �� a(l),b(l),cos(l),sin(l) �� c(720),s(720) �� a=0 � 720 � c(a)=��a � s(a)=��a �� �b=1 �x()=640 �y()=512 �� � xs(0)=0 ys(0)=0 ȗ x(0),y(0),c � c=1 � l " xd=x(c)-x(c-1) , yd=y(c)-y(c-1) 6 b(c)=�(xd*xd+yd*yd) @ xd+=xd=0*1E-10 J a=��(yd/xd)-(xd<0)*180+360 T cos(c)=c(a) ^ sin(c)=s(a) h x(c)=x(c-1)+s*cos(c) r y(c)=y(c-1)+s*sin(c) | � x(c),y(c),x(c-1),y(c-1) � � � a()=s-b() � b()=a()*cos() � b()=b()*w � xs()=xs()+b() � b()=a()*sin() � b()=b()*w � ys()=ys()+b() � x()=x()+xs() � y()=y()+ys() � xs()=xs()*d � ys()=ys()*d � ys()=ys()+g ș 6,112,b b=3-b ș 6,113,b & Ȗ 0 � :� � �
00000000 0d 00 0a 11 f4 20 20 20 20 20 3e 53 74 72 69 6e |..... >Strin| 00000010 67 0d 00 14 13 f4 20 42 79 20 20 54 69 6d 20 4a |g..... By Tim J| 00000020 6f 6e 65 73 0d 00 1e 19 f4 20 46 6f 72 20 33 32 |ones..... For 32| 00000030 2d 62 69 74 20 6d 61 63 68 69 6e 65 73 0d 00 28 |-bit machines..(| 00000040 1a f4 20 28 63 29 20 41 55 20 46 65 62 72 75 61 |.. (c) AU Februa| 00000050 72 79 20 31 39 39 34 0d 00 32 05 3a 0d 00 3c 1f |ry 1994..2.:..<.| 00000060 ee 20 85 20 eb 20 30 3a f6 3a f1 3b 22 20 61 74 |. . . 0:.:.;" at| 00000070 20 6c 69 6e 65 20 22 3b 9e 3a e0 0d 00 46 0b eb | line ";.:...F..| 00000080 20 39 2b 31 32 38 0d 00 50 05 87 0d 00 5a 08 6c | 9+128..P....Z.l| 00000090 3d 32 30 0d 00 64 08 73 3d 33 30 0d 00 6e 09 67 |=20..d.s=30..n.g| 000000a0 3d 2d 31 30 0d 00 78 0a 64 3d 30 2e 39 35 0d 00 |=-10..x.d=0.95..| 000000b0 82 09 77 3d 30 2e 33 0d 00 8c 1b de 20 78 28 6c |..w=0.3..... x(l| 000000c0 29 2c 79 28 6c 29 2c 78 73 28 6c 29 2c 79 73 28 |),y(l),xs(l),ys(| 000000d0 6c 29 0d 00 96 1d de 20 61 28 6c 29 2c 62 28 6c |l)..... a(l),b(l| 000000e0 29 2c 63 6f 73 28 6c 29 2c 73 69 6e 28 6c 29 0d |),cos(l),sin(l).| 000000f0 00 a0 13 de 20 63 28 37 32 30 29 2c 73 28 37 32 |.... c(720),s(72| 00000100 30 29 0d 00 aa 0f e3 20 61 3d 30 20 b8 20 37 32 |0)..... a=0 . 72| 00000110 30 0d 00 b4 0d 20 63 28 61 29 3d 9b b2 61 0d 00 |0.... c(a)=..a..| 00000120 be 0d 20 73 28 61 29 3d b5 b2 61 0d 00 c8 05 ed |.. s(a)=..a.....| 00000130 0d 00 d2 07 62 3d 31 0d 00 dc 0b 78 28 29 3d 36 |....b=1....x()=6| 00000140 34 30 0d 00 e6 0b 79 28 29 3d 35 31 32 0d 00 f0 |40....y()=512...| 00000150 05 f5 0d 00 fa 0c 20 78 73 28 30 29 3d 30 0d 01 |...... xs(0)=0..| 00000160 04 0c 20 79 73 28 30 29 3d 30 0d 01 0e 13 20 c8 |.. ys(0)=0.... .| 00000170 97 20 78 28 30 29 2c 79 28 30 29 2c 63 0d 01 18 |. x(0),y(0),c...| 00000180 0e 20 e3 20 63 3d 31 20 b8 20 6c 0d 01 22 14 20 |. . c=1 . l..". | 00000190 20 78 64 3d 78 28 63 29 2d 78 28 63 2d 31 29 0d | xd=x(c)-x(c-1).| 000001a0 01 2c 14 20 20 79 64 3d 79 28 63 29 2d 79 28 63 |.,. yd=y(c)-y(c| 000001b0 2d 31 29 0d 01 36 19 20 20 62 28 63 29 3d b6 28 |-1)..6. b(c)=.(| 000001c0 78 64 2a 78 64 2b 79 64 2a 79 64 29 0d 01 40 14 |xd*xd+yd*yd)..@.| 000001d0 20 20 78 64 2b 3d 78 64 3d 30 2a 31 45 2d 31 30 | xd+=xd=0*1E-10| 000001e0 0d 01 4a 20 20 20 61 3d 9d 99 28 79 64 2f 78 64 |..J a=..(yd/xd| 000001f0 29 2d 28 78 64 3c 30 29 2a 31 38 30 2b 33 36 30 |)-(xd<0)*180+360| 00000200 0d 01 54 11 20 20 63 6f 73 28 63 29 3d 63 28 61 |..T. cos(c)=c(a| 00000210 29 0d 01 5e 11 20 20 73 69 6e 28 63 29 3d 73 28 |)..^. sin(c)=s(| 00000220 61 29 0d 01 68 1a 20 20 78 28 63 29 3d 78 28 63 |a)..h. x(c)=x(c| 00000230 2d 31 29 2b 73 2a 63 6f 73 28 63 29 0d 01 72 1a |-1)+s*cos(c)..r.| 00000240 20 20 79 28 63 29 3d 79 28 63 2d 31 29 2b 73 2a | y(c)=y(c-1)+s*| 00000250 73 69 6e 28 63 29 0d 01 7c 1f 20 20 86 20 78 28 |sin(c)..|. . x(| 00000260 63 29 2c 79 28 63 29 2c 78 28 63 2d 31 29 2c 79 |c),y(c),x(c-1),y| 00000270 28 63 2d 31 29 0d 01 86 07 20 20 ed 0d 01 90 0e |(c-1).... .....| 00000280 20 61 28 29 3d 73 2d 62 28 29 0d 01 9a 12 20 62 | a()=s-b().... b| 00000290 28 29 3d 61 28 29 2a 63 6f 73 28 29 0d 01 a4 0e |()=a()*cos()....| 000002a0 20 62 28 29 3d 62 28 29 2a 77 0d 01 ae 12 20 78 | b()=b()*w.... x| 000002b0 73 28 29 3d 78 73 28 29 2b 62 28 29 0d 01 b8 12 |s()=xs()+b()....| 000002c0 20 62 28 29 3d 61 28 29 2a 73 69 6e 28 29 0d 01 | b()=a()*sin()..| 000002d0 c2 0e 20 62 28 29 3d 62 28 29 2a 77 0d 01 cc 12 |.. b()=b()*w....| 000002e0 20 79 73 28 29 3d 79 73 28 29 2b 62 28 29 0d 01 | ys()=ys()+b()..| 000002f0 d6 11 20 78 28 29 3d 78 28 29 2b 78 73 28 29 0d |.. x()=x()+xs().| 00000300 01 e0 11 20 79 28 29 3d 79 28 29 2b 79 73 28 29 |... y()=y()+ys()| 00000310 0d 01 ea 10 20 78 73 28 29 3d 78 73 28 29 2a 64 |.... xs()=xs()*d| 00000320 0d 01 f4 10 20 79 73 28 29 3d 79 73 28 29 2a 64 |.... ys()=ys()*d| 00000330 0d 01 fe 10 20 79 73 28 29 3d 79 73 28 29 2b 67 |.... ys()=ys()+g| 00000340 0d 02 08 0f 20 c8 99 20 36 2c 31 31 32 2c 62 0d |.... .. 6,112,b.| 00000350 02 12 0a 20 62 3d 33 2d 62 0d 02 1c 0f 20 c8 99 |... b=3-b.... ..| 00000360 20 36 2c 31 31 33 2c 62 0d 02 26 07 20 c8 96 0d | 6,113,b..&. ...| 00000370 02 30 06 20 db 0d 02 3a 07 fd 20 a3 0d ff |.0. ...:.. ...| 0000037e