Home » Archimedes archive » Acorn User » AU 1998-05 A.adf » Regulars » StarInfo/Reysenbach/cos
StarInfo/Reysenbach/cos
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-05 A.adf » Regulars |
Filename: | StarInfo/Reysenbach/cos |
Read OK: | ✔ |
File size: | 0319 bytes |
Load address: | 0000 |
Exec address: | 0000 |
File contents
10 REM >cos2 20 REM 0 <= radians <1 30 REM by A Reysenbach 40 REM STRONG ARM ONLY 50 : 60 MODE 28 70 DIM co 100 80 FOR pass=0 TO 2 STEP 2 90 P%=co 100 : 110 [OPT pass 120 DCD &E0861090 130 ADR 2,x 140 LDMIA 2,{1-5} 150 DCD &E0810691 160 DCD &E0810691 170 DCD &E0827692 180 MVN 0,6,LSR #1 190 ADD 0,0,1,LSR #4 200 DCD &E0817291 210 DCD &E0837693 220 SUB 0,0,1,LSR #8 230 DCD &E0817391 240 DCD &E0847694 250 ADD 0,0,1,LSR #13 260 DCD &E0817491 270 DCD &E0857695 280 SUB 0,0,1,LSR #19 290 DCD &E0817591 300 ADD 0,0,1,LSR #25 310 MOV PC,14 320 .x 330 EQUD &AAAAAAAB 340 EQUD &88888889 350 EQUD &92492493 360 EQUD &B60B60B7 370 EQUD &F83E0F84 380 ] 390 NEXT pass 400 : 410 INPUT'"0 <= cosine < 1 ";a 420 A%=(a*2^31)<<1 430 : 440 Z%=USR(co)>>>1 450 PRINTZ%/(2^31) 460 PRINT COS(a)
� >cos2 � 0 <= radians <1 � by A Reysenbach ( � STRONG ARM ONLY 2 : < � 28 F � co 100 P � pass=0 � 2 � 2 Z P%=co d : n [OPT pass x DCD &E0861090 � ADR 2,x � LDMIA 2,{1-5} � DCD &E0810691 � DCD &E0810691 � DCD &E0827692 � MVN 0,6,LSR #1 � ADD 0,0,1,LSR #4 � DCD &E0817291 � DCD &E0837693 � SUB 0,0,1,LSR #8 � DCD &E0817391 � DCD &E0847694 � ADD 0,0,1,LSR #13 DCD &E0817491 DCD &E0857695 SUB 0,0,1,LSR #19 " DCD &E0817591 , ADD 0,0,1,LSR #25 6 MOV PC,14 @ .x J EQUD &AAAAAAAB T EQUD &88888889 ^ EQUD &92492493 h EQUD &B60B60B7 r EQUD &F83E0F84 | ] � � pass � : � �'"0 <= cosine < 1 ";a � A%=(a*2^31)<<1 � : � Z%=�(co)>>>1 � �Z%/(2^31) � � �(a) �
00000000 0d 00 0a 0c 20 f4 20 3e 63 6f 73 32 0d 00 14 16 |.... . >cos2....| 00000010 20 f4 20 30 20 3c 3d 20 72 61 64 69 61 6e 73 20 | . 0 <= radians | 00000020 3c 31 0d 00 1e 16 20 f4 20 62 79 20 41 20 52 65 |<1.... . by A Re| 00000030 79 73 65 6e 62 61 63 68 0d 00 28 16 20 f4 20 53 |ysenbach..(. . S| 00000040 54 52 4f 4e 47 20 41 52 4d 20 4f 4e 4c 59 0d 00 |TRONG ARM ONLY..| 00000050 32 06 20 3a 0d 00 3c 09 20 eb 20 32 38 0d 00 46 |2. :..<. . 28..F| 00000060 0d 20 de 20 63 6f 20 31 30 30 0d 00 50 15 20 e3 |. . co 100..P. .| 00000070 20 70 61 73 73 3d 30 20 b8 20 32 20 88 20 32 0d | pass=0 . 2 . 2.| 00000080 00 5a 0a 20 50 25 3d 63 6f 0d 00 64 06 20 3a 0d |.Z. P%=co..d. :.| 00000090 00 6e 0f 20 5b 4f 50 54 20 20 70 61 73 73 0d 00 |.n. [OPT pass..| 000000a0 78 14 20 44 43 44 20 20 20 26 45 30 38 36 31 30 |x. DCD &E08610| 000000b0 39 30 0d 00 82 0e 20 41 44 52 20 20 20 32 2c 78 |90.... ADR 2,x| 000000c0 0d 00 8c 12 20 4c 44 4d 49 41 20 32 2c 7b 31 2d |.... LDMIA 2,{1-| 000000d0 35 7d 0d 00 96 14 20 44 43 44 20 20 20 26 45 30 |5}.... DCD &E0| 000000e0 38 31 30 36 39 31 0d 00 a0 14 20 44 43 44 20 20 |810691.... DCD | 000000f0 20 26 45 30 38 31 30 36 39 31 0d 00 aa 14 20 44 | &E0810691.... D| 00000100 43 44 20 20 20 26 45 30 38 32 37 36 39 32 0d 00 |CD &E0827692..| 00000110 b4 15 20 4d 56 4e 20 20 20 30 2c 36 2c 4c 53 52 |.. MVN 0,6,LSR| 00000120 20 23 31 0d 00 be 17 20 41 44 44 20 20 20 30 2c | #1.... ADD 0,| 00000130 30 2c 31 2c 4c 53 52 20 23 34 0d 00 c8 14 20 44 |0,1,LSR #4.... D| 00000140 43 44 20 20 20 26 45 30 38 31 37 32 39 31 0d 00 |CD &E0817291..| 00000150 d2 14 20 44 43 44 20 20 20 26 45 30 38 33 37 36 |.. DCD &E08376| 00000160 39 33 0d 00 dc 17 20 53 55 42 20 20 20 30 2c 30 |93.... SUB 0,0| 00000170 2c 31 2c 4c 53 52 20 23 38 0d 00 e6 14 20 44 43 |,1,LSR #8.... DC| 00000180 44 20 20 20 26 45 30 38 31 37 33 39 31 0d 00 f0 |D &E0817391...| 00000190 14 20 44 43 44 20 20 20 26 45 30 38 34 37 36 39 |. DCD &E084769| 000001a0 34 0d 00 fa 18 20 41 44 44 20 20 20 30 2c 30 2c |4.... ADD 0,0,| 000001b0 31 2c 4c 53 52 20 23 31 33 0d 01 04 14 20 44 43 |1,LSR #13.... DC| 000001c0 44 20 20 20 26 45 30 38 31 37 34 39 31 0d 01 0e |D &E0817491...| 000001d0 14 20 44 43 44 20 20 20 26 45 30 38 35 37 36 39 |. DCD &E085769| 000001e0 35 0d 01 18 18 20 53 55 42 20 20 20 30 2c 30 2c |5.... SUB 0,0,| 000001f0 31 2c 4c 53 52 20 23 31 39 0d 01 22 14 20 44 43 |1,LSR #19..". DC| 00000200 44 20 20 20 26 45 30 38 31 37 35 39 31 0d 01 2c |D &E0817591..,| 00000210 18 20 41 44 44 20 20 20 30 2c 30 2c 31 2c 4c 53 |. ADD 0,0,1,LS| 00000220 52 20 23 32 35 0d 01 36 10 20 4d 4f 56 20 20 20 |R #25..6. MOV | 00000230 50 43 2c 31 34 0d 01 40 07 20 2e 78 0d 01 4a 14 |PC,14..@. .x..J.| 00000240 20 45 51 55 44 20 20 26 41 41 41 41 41 41 41 42 | EQUD &AAAAAAAB| 00000250 0d 01 54 14 20 45 51 55 44 20 20 26 38 38 38 38 |..T. EQUD &8888| 00000260 38 38 38 39 0d 01 5e 14 20 45 51 55 44 20 20 26 |8889..^. EQUD &| 00000270 39 32 34 39 32 34 39 33 0d 01 68 14 20 45 51 55 |92492493..h. EQU| 00000280 44 20 20 26 42 36 30 42 36 30 42 37 0d 01 72 14 |D &B60B60B7..r.| 00000290 20 45 51 55 44 20 20 26 46 38 33 45 30 46 38 34 | EQUD &F83E0F84| 000002a0 0d 01 7c 06 20 5d 0d 01 86 0c 20 ed 20 20 70 61 |..|. ].... . pa| 000002b0 73 73 0d 01 90 06 20 3a 0d 01 9a 1b 20 e8 27 22 |ss.... :.... .'"| 000002c0 30 20 3c 3d 20 63 6f 73 69 6e 65 20 3c 20 31 20 |0 <= cosine < 1 | 000002d0 22 3b 61 0d 01 a4 13 20 41 25 3d 28 61 2a 32 5e |";a.... A%=(a*2^| 000002e0 33 31 29 3c 3c 31 0d 01 ae 06 20 3a 0d 01 b8 11 |31)<<1.... :....| 000002f0 20 5a 25 3d ba 28 63 6f 29 3e 3e 3e 31 0d 01 c2 | Z%=.(co)>>>1...| 00000300 0f 20 f1 5a 25 2f 28 32 5e 33 31 29 0d 01 cc 0b |. .Z%/(2^31)....| 00000310 20 f1 20 9b 28 61 29 0d ff | . .(a)..| 00000319