Home » Archimedes archive » Acorn User » AU 1998-10.adf » Regulars » StarInfo/Madams/!Wrap/makedata
StarInfo/Madams/!Wrap/makedata
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 1998-10.adf » Regulars |
Filename: | StarInfo/Madams/!Wrap/makedata |
Read OK: | ✔ |
File size: | 0314 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10MODE 13 20ONERROR REPORT:PRINT ERL:END 30OFF 40 50DIM xoff% 160*160 60DIM yoff% 160*160 61DIM mask% 160*160 70DIM pos% 160*160*4 80 90FOR r%=0 TO 160*160 100xoff%?r%=0 110yoff%?r%=0 111mask%?r%=0 120pos%!(r%<<2)=-1 130NEXT 140VDU 7 150 160FOR y=-80 TO 79 STEP 0.5 170w=(SQR(80*80-y*y)/2)+40 180ww=SQR(80*80-y*y) 190FOR a=-90 TO 90 STEP 0.5 200x%=SINRADa*w 210xoff%?(x%+80+(INTy+80)*160)=(a*127/90)+128 211xx%=SINRADa*ww 212mask%?(xx%+80+(INTy+80)*160)=1 220NEXT 230NEXT 240VDU 7 250 260FOR x=-80 TO 79 STEP 0.5 270h=(SQR(80*80-x*x)/2)+40 280FOR a=-90 TO 90 STEP 0.5 290y%=SINRADa*h 300yoff%?(x+80+(y%+80)*160)=(a*127/90)+128 310NEXT 320NEXT 330VDU 7 340 350FOR r%=0 TO 160*160 360IF xoff%?r%>0 AND yoff%?r%>0 AND mask%?r%>0 pos%!(r%<<2)=(xoff%?r%)+(yoff%?r%)*256 370IF pos%!(r%<<2)=&3FFF pos%!(r%<<2)=-1 380NEXT 390 400OSCLI "Save data "+STR$~(pos%)+" +"+STR$~(160*160*4) 410OSCLI "SetType data data"
� 13 � �:� �:� � ( 2� xoff% 160*160 <� yoff% 160*160 =� mask% 160*160 F� pos% 160*160*4 P Z� r%=0 � 160*160 dxoff%?r%=0 nyoff%?r%=0 omask%?r%=0 xpos%!(r%<<2)=-1 �� �� 7 � �� y=-80 � 79 � 0.5 �w=(�(80*80-y*y)/2)+40 �ww=�(80*80-y*y) �� a=-90 � 90 � 0.5 �x%=��a*w �,xoff%?(x%+80+(�y+80)*160)=(a*127/90)+128 �xx%=��a*ww � mask%?(xx%+80+(�y+80)*160)=1 �� �� �� 7 � � x=-80 � 79 � 0.5 h=(�(80*80-x*x)/2)+40 � a=-90 � 90 � 0.5 "y%=��a*h ,+yoff%?(x+80+(y%+80)*160)=(a*127/90)+128 6� @� J� 7 T ^� r%=0 � 160*160 hQ� xoff%?r%>0 � yoff%?r%>0 � mask%?r%>0 pos%!(r%<<2)=(xoff%?r%)+(yoff%?r%)*256 r(� pos%!(r%<<2)=&3FFF pos%!(r%<<2)=-1 |� � �.� "Save data "+�~(pos%)+" +"+�~(160*160*4) �� "SetType data data" �
00000000 0d 00 0a 08 eb 20 31 33 0d 00 14 0e ee 85 20 f6 |..... 13...... .| 00000010 3a f1 20 9e 3a e0 0d 00 1e 05 87 0d 00 28 04 0d |:. .:........(..| 00000020 00 32 13 de 20 78 6f 66 66 25 20 31 36 30 2a 31 |.2.. xoff% 160*1| 00000030 36 30 0d 00 3c 13 de 20 79 6f 66 66 25 20 31 36 |60..<.. yoff% 16| 00000040 30 2a 31 36 30 0d 00 3d 13 de 20 6d 61 73 6b 25 |0*160..=.. mask%| 00000050 20 31 36 30 2a 31 36 30 0d 00 46 14 de 20 70 6f | 160*160..F.. po| 00000060 73 25 20 31 36 30 2a 31 36 30 2a 34 0d 00 50 04 |s% 160*160*4..P.| 00000070 0d 00 5a 14 e3 20 72 25 3d 30 20 b8 20 31 36 30 |..Z.. r%=0 . 160| 00000080 2a 31 36 30 0d 00 64 0e 78 6f 66 66 25 3f 72 25 |*160..d.xoff%?r%| 00000090 3d 30 0d 00 6e 0e 79 6f 66 66 25 3f 72 25 3d 30 |=0..n.yoff%?r%=0| 000000a0 0d 00 6f 0e 6d 61 73 6b 25 3f 72 25 3d 30 0d 00 |..o.mask%?r%=0..| 000000b0 78 13 70 6f 73 25 21 28 72 25 3c 3c 32 29 3d 2d |x.pos%!(r%<<2)=-| 000000c0 31 0d 00 82 05 ed 0d 00 8c 07 ef 20 37 0d 00 96 |1.......... 7...| 000000d0 04 0d 00 a0 16 e3 20 79 3d 2d 38 30 20 b8 20 37 |...... y=-80 . 7| 000000e0 39 20 88 20 30 2e 35 0d 00 aa 19 77 3d 28 b6 28 |9 . 0.5....w=(.(| 000000f0 38 30 2a 38 30 2d 79 2a 79 29 2f 32 29 2b 34 30 |80*80-y*y)/2)+40| 00000100 0d 00 b4 13 77 77 3d b6 28 38 30 2a 38 30 2d 79 |....ww=.(80*80-y| 00000110 2a 79 29 0d 00 be 16 e3 20 61 3d 2d 39 30 20 b8 |*y)..... a=-90 .| 00000120 20 39 30 20 88 20 30 2e 35 0d 00 c8 0c 78 25 3d | 90 . 0.5....x%=| 00000130 b5 b2 61 2a 77 0d 00 d2 2c 78 6f 66 66 25 3f 28 |..a*w...,xoff%?(| 00000140 78 25 2b 38 30 2b 28 a8 79 2b 38 30 29 2a 31 36 |x%+80+(.y+80)*16| 00000150 30 29 3d 28 61 2a 31 32 37 2f 39 30 29 2b 31 32 |0)=(a*127/90)+12| 00000160 38 0d 00 d3 0e 78 78 25 3d b5 b2 61 2a 77 77 0d |8....xx%=..a*ww.| 00000170 00 d4 20 6d 61 73 6b 25 3f 28 78 78 25 2b 38 30 |.. mask%?(xx%+80| 00000180 2b 28 a8 79 2b 38 30 29 2a 31 36 30 29 3d 31 0d |+(.y+80)*160)=1.| 00000190 00 dc 05 ed 0d 00 e6 05 ed 0d 00 f0 07 ef 20 37 |.............. 7| 000001a0 0d 00 fa 04 0d 01 04 16 e3 20 78 3d 2d 38 30 20 |......... x=-80 | 000001b0 b8 20 37 39 20 88 20 30 2e 35 0d 01 0e 19 68 3d |. 79 . 0.5....h=| 000001c0 28 b6 28 38 30 2a 38 30 2d 78 2a 78 29 2f 32 29 |(.(80*80-x*x)/2)| 000001d0 2b 34 30 0d 01 18 16 e3 20 61 3d 2d 39 30 20 b8 |+40..... a=-90 .| 000001e0 20 39 30 20 88 20 30 2e 35 0d 01 22 0c 79 25 3d | 90 . 0.5..".y%=| 000001f0 b5 b2 61 2a 68 0d 01 2c 2b 79 6f 66 66 25 3f 28 |..a*h..,+yoff%?(| 00000200 78 2b 38 30 2b 28 79 25 2b 38 30 29 2a 31 36 30 |x+80+(y%+80)*160| 00000210 29 3d 28 61 2a 31 32 37 2f 39 30 29 2b 31 32 38 |)=(a*127/90)+128| 00000220 0d 01 36 05 ed 0d 01 40 05 ed 0d 01 4a 07 ef 20 |..6....@....J.. | 00000230 37 0d 01 54 04 0d 01 5e 14 e3 20 72 25 3d 30 20 |7..T...^.. r%=0 | 00000240 b8 20 31 36 30 2a 31 36 30 0d 01 68 51 e7 20 78 |. 160*160..hQ. x| 00000250 6f 66 66 25 3f 72 25 3e 30 20 80 20 79 6f 66 66 |off%?r%>0 . yoff| 00000260 25 3f 72 25 3e 30 20 80 20 6d 61 73 6b 25 3f 72 |%?r%>0 . mask%?r| 00000270 25 3e 30 20 70 6f 73 25 21 28 72 25 3c 3c 32 29 |%>0 pos%!(r%<<2)| 00000280 3d 28 78 6f 66 66 25 3f 72 25 29 2b 28 79 6f 66 |=(xoff%?r%)+(yof| 00000290 66 25 3f 72 25 29 2a 32 35 36 0d 01 72 28 e7 20 |f%?r%)*256..r(. | 000002a0 70 6f 73 25 21 28 72 25 3c 3c 32 29 3d 26 33 46 |pos%!(r%<<2)=&3F| 000002b0 46 46 20 70 6f 73 25 21 28 72 25 3c 3c 32 29 3d |FF pos%!(r%<<2)=| 000002c0 2d 31 0d 01 7c 05 ed 0d 01 86 04 0d 01 90 2e ff |-1..|...........| 000002d0 20 22 53 61 76 65 20 64 61 74 61 20 22 2b c3 7e | "Save data "+.~| 000002e0 28 70 6f 73 25 29 2b 22 20 2b 22 2b c3 7e 28 31 |(pos%)+" +"+.~(1| 000002f0 36 30 2a 31 36 30 2a 34 29 0d 01 9a 19 ff 20 22 |60*160*4)..... "| 00000300 53 65 74 54 79 70 65 20 64 61 74 61 20 64 61 74 |SetType data dat| 00000310 61 22 0d ff |a"..| 00000314