Home » Archimedes archive » Acorn User » AU 1994-Xmas.adf » Programs » StarInfo/VanMourik/Marble

StarInfo/VanMourik/Marble

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-Xmas.adf » Programs
Filename: StarInfo/VanMourik/Marble
Read OK:
File size: 02C2 bytes
Load address: 0000
Exec address: 0000
File contents
   10REM >MARBLE-TEX
   20REM (C) JEAN VAN MOURIK MILLCOTTAGE DERWYDD AMMANFORD DYFED SA183LQ  UK. 94
   30DIMY(1111):PROCMODE:IFB_%=1:C%=2 ELSE C%=4
   40PRINT"           MARBLE TEXTURE":PRINT" AVERAGE OF 3 NEIGHBOUR PIXELS, BELOW, LEFT AND BELOW/LEFT + A RANDOM FACTOR.":PRINT"TOP AND BOTTOM ARE WRAPPED."
   50F%=55:GCOLF%TINT128:DRAW0,1111:Y()=F%:E%=9:D%=3:D=(E%+1)/(2*D%):OFF
   60 
   70REM MAIN LOOP
   80FORX%=2TO1280STEP2:Q%=X%-2:R=(POINT(Q%,1024-C%)+POINT(Q%-2,1024-C%)+POINT(Q%,0)+RND(E%))/D%-D:Y(0)=R:GCOLR+.5:POINTX%,0:FORY%=C%TO1022STEPC%:R=(R+Y(Y%)+POINT(Q%,Y%-C%)+RND(E%))/D%-D:GCOLR+.5:Y(Y%)=R:POINTX%,Y%:MOUSEA%,B%,F%:IFF%GCOL63:POINTX%,Y%:REPEAT:MOUSEA%,B%,F%:UNTILF%=0
   90NEXT:NEXT:UNTILC:END
  100 
  110REM SUITABLE MODE DETECTION ROUTINE
  120DEFPROCMODE LOCALC%,F%
  130SYS63,21TO;F%:C%=(F%AND%0010)>>1:IFNOT(C%=1)MODE21:B_%=1ELSEMODE15:B_%=0
  140OFF:ENDPROC

� >MARBLE-TEX
M� (C) JEAN VAN MOURIK MILLCOTTAGE DERWYDD AMMANFORD DYFED SA183LQ  UK. 94
%�Y(1111):�MODE:�B_%=1:C%=2 � C%=4
(��"           MARBLE TEXTURE":�" AVERAGE OF 3 NEIGHBOUR PIXELS, BELOW, LEFT AND BELOW/LEFT + A RANDOM FACTOR.":�"TOP AND BOTTOM ARE WRAPPED."
2=F%=55:�F%Ȝ128:�0,1111:Y()=F%:E%=9:D%=3:D=(E%+1)/(2*D%):�
< 
F� MAIN LOOP
P��X%=2�1280�2:Q%=X%-2:R=(�Q%,1024-C%)+�Q%-2,1024-C%)+�Q%,0)+�(E%))/D%-D:Y(0)=R:�R+.5:ȒX%,0:�Y%=C%�1022�C%:R=(R+Y(Y%)+�Q%,Y%-C%)+�(E%))/D%-D:�R+.5:Y(Y%)=R:ȒX%,Y%:ȗA%,B%,F%:�F%�63:ȒX%,Y%:�:ȗA%,B%,F%:�F%=0
Z�:�:�C:�
d 
n%� SUITABLE MODE DETECTION ROUTINE
x��MODE �C%,F%
�<ș63,21�;F%:C%=(F%�%0010)>>1:�(C%=1)�21:B_%=1��15:B_%=0
��:�
�
00000000  0d 00 0a 11 f4 20 3e 4d  41 52 42 4c 45 2d 54 45  |..... >MARBLE-TE|
00000010  58 0d 00 14 4d f4 20 28  43 29 20 4a 45 41 4e 20  |X...M. (C) JEAN |
00000020  56 41 4e 20 4d 4f 55 52  49 4b 20 4d 49 4c 4c 43  |VAN MOURIK MILLC|
00000030  4f 54 54 41 47 45 20 44  45 52 57 59 44 44 20 41  |OTTAGE DERWYDD A|
00000040  4d 4d 41 4e 46 4f 52 44  20 44 59 46 45 44 20 53  |MMANFORD DYFED S|
00000050  41 31 38 33 4c 51 20 20  55 4b 2e 20 39 34 0d 00  |A183LQ  UK. 94..|
00000060  1e 25 de 59 28 31 31 31  31 29 3a f2 4d 4f 44 45  |.%.Y(1111):.MODE|
00000070  3a e7 42 5f 25 3d 31 3a  43 25 3d 32 20 8b 20 43  |:.B_%=1:C%=2 . C|
00000080  25 3d 34 0d 00 28 90 f1  22 20 20 20 20 20 20 20  |%=4..(.."       |
00000090  20 20 20 20 4d 41 52 42  4c 45 20 54 45 58 54 55  |    MARBLE TEXTU|
000000a0  52 45 22 3a f1 22 20 41  56 45 52 41 47 45 20 4f  |RE":." AVERAGE O|
000000b0  46 20 33 20 4e 45 49 47  48 42 4f 55 52 20 50 49  |F 3 NEIGHBOUR PI|
000000c0  58 45 4c 53 2c 20 42 45  4c 4f 57 2c 20 4c 45 46  |XELS, BELOW, LEF|
000000d0  54 20 41 4e 44 20 42 45  4c 4f 57 2f 4c 45 46 54  |T AND BELOW/LEFT|
000000e0  20 2b 20 41 20 52 41 4e  44 4f 4d 20 46 41 43 54  | + A RANDOM FACT|
000000f0  4f 52 2e 22 3a f1 22 54  4f 50 20 41 4e 44 20 42  |OR.":."TOP AND B|
00000100  4f 54 54 4f 4d 20 41 52  45 20 57 52 41 50 50 45  |OTTOM ARE WRAPPE|
00000110  44 2e 22 0d 00 32 3d 46  25 3d 35 35 3a e6 46 25  |D."..2=F%=55:.F%|
00000120  c8 9c 31 32 38 3a df 30  2c 31 31 31 31 3a 59 28  |..128:.0,1111:Y(|
00000130  29 3d 46 25 3a 45 25 3d  39 3a 44 25 3d 33 3a 44  |)=F%:E%=9:D%=3:D|
00000140  3d 28 45 25 2b 31 29 2f  28 32 2a 44 25 29 3a 87  |=(E%+1)/(2*D%):.|
00000150  0d 00 3c 05 20 0d 00 46  0f f4 20 4d 41 49 4e 20  |..<. ..F.. MAIN |
00000160  4c 4f 4f 50 0d 00 50 d2  e3 58 25 3d 32 b8 31 32  |LOOP..P..X%=2.12|
00000170  38 30 88 32 3a 51 25 3d  58 25 2d 32 3a 52 3d 28  |80.2:Q%=X%-2:R=(|
00000180  b0 51 25 2c 31 30 32 34  2d 43 25 29 2b b0 51 25  |.Q%,1024-C%)+.Q%|
00000190  2d 32 2c 31 30 32 34 2d  43 25 29 2b b0 51 25 2c  |-2,1024-C%)+.Q%,|
000001a0  30 29 2b b3 28 45 25 29  29 2f 44 25 2d 44 3a 59  |0)+.(E%))/D%-D:Y|
000001b0  28 30 29 3d 52 3a e6 52  2b 2e 35 3a c8 92 58 25  |(0)=R:.R+.5:..X%|
000001c0  2c 30 3a e3 59 25 3d 43  25 b8 31 30 32 32 88 43  |,0:.Y%=C%.1022.C|
000001d0  25 3a 52 3d 28 52 2b 59  28 59 25 29 2b b0 51 25  |%:R=(R+Y(Y%)+.Q%|
000001e0  2c 59 25 2d 43 25 29 2b  b3 28 45 25 29 29 2f 44  |,Y%-C%)+.(E%))/D|
000001f0  25 2d 44 3a e6 52 2b 2e  35 3a 59 28 59 25 29 3d  |%-D:.R+.5:Y(Y%)=|
00000200  52 3a c8 92 58 25 2c 59  25 3a c8 97 41 25 2c 42  |R:..X%,Y%:..A%,B|
00000210  25 2c 46 25 3a e7 46 25  e6 36 33 3a c8 92 58 25  |%,F%:.F%.63:..X%|
00000220  2c 59 25 3a f5 3a c8 97  41 25 2c 42 25 2c 46 25  |,Y%:.:..A%,B%,F%|
00000230  3a fd 46 25 3d 30 0d 00  5a 0c ed 3a ed 3a fd 43  |:.F%=0..Z..:.:.C|
00000240  3a e0 0d 00 64 05 20 0d  00 6e 25 f4 20 53 55 49  |:...d. ..n%. SUI|
00000250  54 41 42 4c 45 20 4d 4f  44 45 20 44 45 54 45 43  |TABLE MODE DETEC|
00000260  54 49 4f 4e 20 52 4f 55  54 49 4e 45 0d 00 78 11  |TION ROUTINE..x.|
00000270  dd f2 4d 4f 44 45 20 ea  43 25 2c 46 25 0d 00 82  |..MODE .C%,F%...|
00000280  3c c8 99 36 33 2c 32 31  b8 3b 46 25 3a 43 25 3d  |<..63,21.;F%:C%=|
00000290  28 46 25 80 25 30 30 31  30 29 3e 3e 31 3a e7 ac  |(F%.%0010)>>1:..|
000002a0  28 43 25 3d 31 29 eb 32  31 3a 42 5f 25 3d 31 8b  |(C%=1).21:B_%=1.|
000002b0  eb 31 35 3a 42 5f 25 3d  30 0d 00 8c 07 87 3a e1  |.15:B_%=0.....:.|
000002c0  0d ff                                             |..|
000002c2