Home » Personal collection » Commodore disks » disk50a2_progs1.d64 » sphere

sphere

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 » Commodore disks » disk50a2_progs1.d64
Filename: sphere
Read OK:
File size: 0341 bytes
Load address: 0801
Exec address: 0000
File contents
     5 LA=180
    40 S=16:B=3:C=8:SM=1024:POKE53281,0
    45 POKE53272,(PEEK(53272) AND 15) OR S
    50 POKE56578,PEEK(56578) OR 3
    55 POKE56576,(PEEK(56576) AND 252) ORB
    60 X=C*1024:H=INT(X/256):L=X-256*H
    65 POKE51,L:POKE52,H:FORJ=55296TO56295:POKEJ,0:NEXT
    70 POKE55,L:POKE56,H:POKE53285,0
    75 POKE53272,(PEEK(53272) AND 241) ORC
    80 POKE53265,PEEK(53265) OR 32
    82 POKE53270,PEEK(53270) OR 16
    85 FOR J=SM TO SM+999
    90 POKEJ,126
    95 NEXT
    97 GOTO 120
   100 FOR J=X TO X+7999
   105 POKE J,0
   110 NEXT
   115 :
   120 FOR CG=INT((LA-90)*(320/360)) TO INT((LA+90)*(320/360))
   125 CS=INT((LA-90)*(320/360))
   130 RT=0:FOR RG=0 TO 200
   140 GOSUB 2000
   150 RT=RT+SIN(RG*(180/200)*π/180)*1.25
   155 R=INT(RT)
   160 C=INT(160+SIN(((CG-CS)*180/160-90)*π/180)*SIN(RG*180/200*π/180)*100)AND 254
   170 GOSUB 1030
   180 NEXT:NEXT
   190 GOTO 190
  1000 BYTE=X+7687-320*INT(R/8)-(RAND7)+INT(C/8)*8
  1005 BIT=7-(CAND7)
  1010 POKE BYTE,PEEK(BYTE) OR 2^BIT
  1015 RETURN
  1030 IF (CL AND 2)=2 THEN GOSUB1000
  1035 C=C+1:IF (CL AND 1)=1 THEN GOSUB1000
  1040 C=C-1:RETURN
  2000 CL=1:RETURN

LA�180.(S�16:B�3:C�8:SM�1024:�53281,0M-�53272,(�(53272) � 15) � Se2�56578,�(56578) � 3�7�56576,(�(56576) � 252) �B�<X�C�1024:H��(X�256):L�X�256�H�A�51,L:�52,H:�J�55296�56295:�J,0:��F�55,L:�56,H:�53285,0	K�53272,(�(53272) � 241) �C	P�53265,�(53265) � 326	R�53270,�(53270) � 16J	U� J�SM � SM�999U	Z�J,126[	_�e	a� 120x	d� J�X � X�7999�	i� J,0�	n��	s:�	x� CG��((LA�90)�(320�360)) � �((LA�90)�(320�360))�	}CS��((LA�90)�(320�360))�	�RT�0:� RG�0 � 200
�� 2000%
�RT�RT��(RG�(180�200)���180)�1.251
�R��(RT)y
�C��(160��(((CG�CS)�180�160�90)���180)��(RG�180�200���180)�100)� 254�
�� 1030�
��:��
�� 190�
�BYTE�X�7687�320��(R�8)�(R�7)��(C�8)�8�
�BIT�7�(C�7)�
�� BYTE,�(BYTE) � 2�BIT�
��
� (CL � 2)�2 � �1000)C�C�1:� (CL � 1)�1 � �10005C�C�1:�@�CL�1:�
LHE@la.180@.H(@s.16:b.3:c.8:sm.1024:.53281,0@mH-@.53272,(.(53272) . 15) . s@EH2@.56578,.(56578) . 3@.H7@.56576,(.(56576) . 252) .b@.H<@x.c.1024:h..(x.256):l.x.256.h@.Ha@.51,l:.52,h:.j.55296.56295:.j,0:.@.Hf@.55,l:.56,h:.53285,0@DIk@.53272,(.(53272) . 241) .c@]Ip@.53265,.(53265) . 32@6Ir@.53270,.(53270) . 16@jIu@. j.sm . sm.999@uIz@.j,126@[I.@.@EIA@. 120@XID@. j.x . x.7999@.II@. j,0@.IN@.@.IS@:@.IX@. cg..((la.90).(320.360)) . .((la.90).(320.360))@.I.@cs..((la.90).(320.360))@.I.@rt.0:. rg.0 . 200@@J.@. 2000@%J.@rt.rt..(rg.(180.200)...180).1.25@1J.@r..(rt)@YJ.@c..(160..(((cg.cs).180.160.90)...180)..(rg.180.200...180).100). 254@.J.@. 1030@.J.@.:.@.J.@. 190@.J.Cbyte.x.7687.320..(r.8).(r.7)..(c.8).8@.J.Cbit.7.(c.7)@.J.C. byte,.(byte) . 2.bit@.J.C.@JKFD. (cl . 2).2 . .1000@)KKDc.c.1:. (cl . 1).1 . .1000@5KPDc.c.1:.@@K.Gcl.1:.@@@
00000000  0c 08 05 00 4c 41 b2 31  38 30 00 2e 08 28 00 53  |....LA.180...(.S|
00000010  b2 31 36 3a 42 b2 33 3a  43 b2 38 3a 53 4d b2 31  |.16:B.3:C.8:SM.1|
00000020  30 32 34 3a 97 35 33 32  38 31 2c 30 00 4d 08 2d  |024:.53281,0.M.-|
00000030  00 97 35 33 32 37 32 2c  28 c2 28 35 33 32 37 32  |..53272,(.(53272|
00000040  29 20 af 20 31 35 29 20  b0 20 53 00 65 08 32 00  |) . 15) . S.e.2.|
00000050  97 35 36 35 37 38 2c c2  28 35 36 35 37 38 29 20  |.56578,.(56578) |
00000060  b0 20 33 00 84 08 37 00  97 35 36 35 37 36 2c 28  |. 3...7..56576,(|
00000070  c2 28 35 36 35 37 36 29  20 af 20 32 35 32 29 20  |.(56576) . 252) |
00000080  b0 42 00 a6 08 3c 00 58  b2 43 ac 31 30 32 34 3a  |.B...<.X.C.1024:|
00000090  48 b2 b5 28 58 ad 32 35  36 29 3a 4c b2 58 ab 32  |H..(X.256):L.X.2|
000000a0  35 36 ac 48 00 cc 08 41  00 97 35 31 2c 4c 3a 97  |56.H...A..51,L:.|
000000b0  35 32 2c 48 3a 81 4a b2  35 35 32 39 36 a4 35 36  |52,H:.J.55296.56|
000000c0  32 39 35 3a 97 4a 2c 30  3a 82 00 e5 08 46 00 97  |295:.J,0:....F..|
000000d0  35 35 2c 4c 3a 97 35 36  2c 48 3a 97 35 33 32 38  |55,L:.56,H:.5328|
000000e0  35 2c 30 00 04 09 4b 00  97 35 33 32 37 32 2c 28  |5,0...K..53272,(|
000000f0  c2 28 35 33 32 37 32 29  20 af 20 32 34 31 29 20  |.(53272) . 241) |
00000100  b0 43 00 1d 09 50 00 97  35 33 32 36 35 2c c2 28  |.C...P..53265,.(|
00000110  35 33 32 36 35 29 20 b0  20 33 32 00 36 09 52 00  |53265) . 32.6.R.|
00000120  97 35 33 32 37 30 2c c2  28 35 33 32 37 30 29 20  |.53270,.(53270) |
00000130  b0 20 31 36 00 4a 09 55  00 81 20 4a b2 53 4d 20  |. 16.J.U.. J.SM |
00000140  a4 20 53 4d aa 39 39 39  00 55 09 5a 00 97 4a 2c  |. SM.999.U.Z..J,|
00000150  31 32 36 00 5b 09 5f 00  82 00 65 09 61 00 89 20  |126.[._...e.a.. |
00000160  31 32 30 00 78 09 64 00  81 20 4a b2 58 20 a4 20  |120.x.d.. J.X . |
00000170  58 aa 37 39 39 39 00 82  09 69 00 97 20 4a 2c 30  |X.7999...i.. J,0|
00000180  00 88 09 6e 00 82 00 8e  09 73 00 3a 00 c3 09 78  |...n.....s.:...x|
00000190  00 81 20 43 47 b2 b5 28  28 4c 41 ab 39 30 29 ac  |.. CG..((LA.90).|
000001a0  28 33 32 30 ad 33 36 30  29 29 20 a4 20 b5 28 28  |(320.360)) . .((|
000001b0  4c 41 aa 39 30 29 ac 28  33 32 30 ad 33 36 30 29  |LA.90).(320.360)|
000001c0  29 00 df 09 7d 00 43 53  b2 b5 28 28 4c 41 ab 39  |)...}.CS..((LA.9|
000001d0  30 29 ac 28 33 32 30 ad  33 36 30 29 29 00 f5 09  |0).(320.360))...|
000001e0  82 00 52 54 b2 30 3a 81  20 52 47 b2 30 20 a4 20  |..RT.0:. RG.0 . |
000001f0  32 30 30 00 00 0a 8c 00  8d 20 32 30 30 30 00 25  |200...... 2000.%|
00000200  0a 96 00 52 54 b2 52 54  aa bf 28 52 47 ac 28 31  |...RT.RT..(RG.(1|
00000210  38 30 ad 32 30 30 29 ac  ff ad 31 38 30 29 ac 31  |80.200)...180).1|
00000220  2e 32 35 00 31 0a 9b 00  52 b2 b5 28 52 54 29 00  |.25.1...R..(RT).|
00000230  79 0a a0 00 43 b2 b5 28  31 36 30 aa bf 28 28 28  |y...C..(160..(((|
00000240  43 47 ab 43 53 29 ac 31  38 30 ad 31 36 30 ab 39  |CG.CS).180.160.9|
00000250  30 29 ac ff ad 31 38 30  29 ac bf 28 52 47 ac 31  |0)...180)..(RG.1|
00000260  38 30 ad 32 30 30 ac ff  ad 31 38 30 29 ac 31 30  |80.200...180).10|
00000270  30 29 af 20 32 35 34 00  84 0a aa 00 8d 20 31 30  |0). 254...... 10|
00000280  33 30 00 8c 0a b4 00 82  3a 82 00 96 0a be 00 89  |30......:.......|
00000290  20 31 39 30 00 c0 0a e8  03 42 59 54 45 b2 58 aa  | 190.....BYTE.X.|
000002a0  37 36 38 37 ab 33 32 30  ac b5 28 52 ad 38 29 ab  |7687.320..(R.8).|
000002b0  28 52 af 37 29 aa b5 28  43 ad 38 29 ac 38 00 d0  |(R.7)..(C.8).8..|
000002c0  0a ed 03 42 49 54 b2 37  ab 28 43 af 37 29 00 eb  |...BIT.7.(C.7)..|
000002d0  0a f2 03 97 20 42 59 54  45 2c c2 28 42 59 54 45  |.... BYTE,.(BYTE|
000002e0  29 20 b0 20 32 ae 42 49  54 00 f1 0a f7 03 8e 00  |) . 2.BIT.......|
000002f0  0a 0b 06 04 8b 20 28 43  4c 20 af 20 32 29 b2 32  |..... (CL . 2).2|
00000300  20 a7 20 8d 31 30 30 30  00 29 0b 0b 04 43 b2 43  | . .1000.)...C.C|
00000310  aa 31 3a 8b 20 28 43 4c  20 af 20 31 29 b2 31 20  |.1:. (CL . 1).1 |
00000320  a7 20 8d 31 30 30 30 00  35 0b 10 04 43 b2 43 ab  |. .1000.5...C.C.|
00000330  31 3a 8e 00 40 0b d0 07  43 4c b2 31 3a 8e 00 00  |1:..@...CL.1:...|
00000340  00                                                |.|
00000341