Home » Archimedes archive » Acorn User » AU 1994-09.adf » !StarInfo_Star » VanMourik/!MARTIN/MARTIN3

VanMourik/!MARTIN/MARTIN3

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-09.adf » !StarInfo_Star
Filename: VanMourik/!MARTIN/MARTIN3
Read OK:
File size: 0578 bytes
Load address: 0000
Exec address: 0000
File contents
   10REM>MARTIN3
   20REM JEAN VAN MOURIK MILLCOTTAGE DERWYDD AMMANFORD DYFED SA183LQ  UK. 1994
   25REM SEE END OFF CODE FOR ALTERNATIVE 'MARTIN' ROUTINES
   30MODE12:COLOUR132:CLS:PRINT:PRINT"                   MARTIN MAP   V.3":PRINT
   40PRINT" RIGHT BUTTON TO START A NEW MAP.":PRINT
   50PRINT" MIDDLE TO SEE THE SAME PATTERN ENLARGED.":PRINT:PRINT" LEFT TO MOVE PLOTTING AT POINTERS POSITION.":PRINT:PRINT" TO SAVE PRESS 'S'"
   55PRINT:PRINT:PRINT" CLICK TO START"
   60REPEAT:MOUSEA,B,C:A=RND:UNTILC
   70PROCMODE:D%=0:REPEAT:MOUSEA,B,C:UNTILC=0:*POINTER
   80ORIGIN 640,512:REM j, k, l DEFINE THE GENERATED IMAGE
   90PRINT"LINE 130  j=RND(1)*6:k=RND(1)/2:l=RND(1)*9"
  100FORZ=0TO15:READF,D,E:COLOURZ,F,D,E:NEXT:Q=SQR2*2:R=Q:C%=1
  110 
  120REM MAIN LOOP
  130REPEAT:IF C%=1 j=RND(1)*6:k=RND(1)/2:l=RND(1)*9:Q=R:x=9/Q:y=9/Q
  140PRINTTAB(0,2)"j="j:PRINT"k="k:PRINT"l="l
  150REPEAT:D%+=1:GCOLD%MOD15+1
  160FORI%=1TO1567:Z=y-SGNx*SQRABS(k*x-l):y=j-x:x=Z:POINTQ*(x+y),Q*(x-y):NEXT
  170MOUSEA%,B%,C%:IFC%=4 x=(A%+B%)/(Q*2):y=(A%-B%)/(Q*2):UNTIL0
  175S$=INKEY$(1):IF S$="S":*SCREENSAVE IMAGE
  180UNTILC%:IFC%=2 Q=Q*1.3
  190REPEAT:MOUSEA,B,C:A=RND:UNTILC=0:CLS:UNTIL0
  200 
  310DEFPROCMODE LOCAL C%,F%
  320SYS "OS_CheckModeValid",20 TO ;F%
  330C%=(F%AND%0010)>>1
  340IF NOT (C%=1) MODE 20:MO%=1 ELSE MODE 12:MO%=0
  350OFF:ENDPROC
  360 
  444DATA 0,0,0,192,0,240,144,48,240,96,96,240,48,144,240,0,192,240,0,240,192,48,240,144,96,240,96,144,240,48,192,240,0,240,192,0,240,144,48,240,96,96,240,48,144,240,0,192   REM R,G,B PALETTE VALUES
  450 
  460REM ALTERNATIVES TO LINE 160
  465FORI%=1TO1567:Z=y-SGNx*ABS(k*x-l):y=j-x:x=Z:POINTQ*(x+y),Q*(x-y):NEXT
  470FORI%=1TO1567:Z=y-SGNx*SQRABS(k*x-l):y=j-x:x=Z:POINTQ*(x+y),Q*(x-y):NEXT


�>MARTIN3
K� JEAN VAN MOURIK MILLCOTTAGE DERWYDD AMMANFORD DYFED SA183LQ  UK. 1994
8� SEE END OFF CODE FOR ALTERNATIVE 'MARTIN' ROUTINES
9�12:�132:�:�:�"                   MARTIN MAP   V.3":�
(*�" RIGHT BUTTON TO START A NEW MAP.":�
2z�" MIDDLE TO SEE THE SAME PATTERN ENLARGED.":�:�" LEFT TO MOVE PLOTTING AT POINTERS POSITION.":�:�" TO SAVE PRESS 'S'"
7�:�:�" CLICK TO START"
<�:ȗA,B,C:A=�:�C
F&�MODE:D%=0:�:ȗA,B,C:�C=0:*POINTER
P3ȑ 640,512:� j, k, l DEFINE THE GENERATED IMAGE
Z1�"LINE 130  j=RND(1)*6:k=RND(1)/2:l=RND(1)*9"
d-�Z=0�15:�F,D,E:�Z,F,D,E:�:Q=�2*2:R=Q:C%=1
n 
x� MAIN LOOP
�7�:� C%=1 j=�(1)*6:k=�(1)/2:l=�(1)*9:Q=R:x=9/Q:y=9/Q
��0,2)"j="j:�"k="k:�"l="l
��:D%+=1:�D%�15+1
�=�I%=1�1567:Z=y-�x*��(k*x-l):y=j-x:x=Z:ȒQ*(x+y),Q*(x-y):�
�7ȗA%,B%,C%:�C%=4 x=(A%+B%)/(Q*2):y=(A%-B%)/(Q*2):�0
�&S$=�(1):� S$="S":*SCREENSAVE IMAGE
��C%:�C%=2 Q=Q*1.3
��:ȗA,B,C:A=�:�C=0:�:�0
� 
6��MODE � C%,F%
@#ș "OS_CheckModeValid",20 � ;F%
JC%=(F%�%0010)>>1
T&� � (C%=1) � 20:MO%=1 � � 12:MO%=0
^�:�
h 
��� 0,0,0,192,0,240,144,48,240,96,96,240,48,144,240,0,192,240,0,240,192,48,240,144,96,240,96,144,240,48,192,240,0,240,192,0,240,144,48,240,96,96,240,48,144,240,0,192   REM R,G,B PALETTE VALUES
� 
�� ALTERNATIVES TO LINE 160
�<�I%=1�1567:Z=y-�x*�(k*x-l):y=j-x:x=Z:ȒQ*(x+y),Q*(x-y):�
�=�I%=1�1567:Z=y-�x*��(k*x-l):y=j-x:x=Z:ȒQ*(x+y),Q*(x-y):�
�
00000000  0d 00 0a 0d f4 3e 4d 41  52 54 49 4e 33 0d 00 14  |.....>MARTIN3...|
00000010  4b f4 20 4a 45 41 4e 20  56 41 4e 20 4d 4f 55 52  |K. JEAN VAN MOUR|
00000020  49 4b 20 4d 49 4c 4c 43  4f 54 54 41 47 45 20 44  |IK MILLCOTTAGE D|
00000030  45 52 57 59 44 44 20 41  4d 4d 41 4e 46 4f 52 44  |ERWYDD AMMANFORD|
00000040  20 44 59 46 45 44 20 53  41 31 38 33 4c 51 20 20  | DYFED SA183LQ  |
00000050  55 4b 2e 20 31 39 39 34  0d 00 19 38 f4 20 53 45  |UK. 1994...8. SE|
00000060  45 20 45 4e 44 20 4f 46  46 20 43 4f 44 45 20 46  |E END OFF CODE F|
00000070  4f 52 20 41 4c 54 45 52  4e 41 54 49 56 45 20 27  |OR ALTERNATIVE '|
00000080  4d 41 52 54 49 4e 27 20  52 4f 55 54 49 4e 45 53  |MARTIN' ROUTINES|
00000090  0d 00 1e 39 eb 31 32 3a  fb 31 33 32 3a db 3a f1  |...9.12:.132:.:.|
000000a0  3a f1 22 20 20 20 20 20  20 20 20 20 20 20 20 20  |:."             |
000000b0  20 20 20 20 20 20 4d 41  52 54 49 4e 20 4d 41 50  |      MARTIN MAP|
000000c0  20 20 20 56 2e 33 22 3a  f1 0d 00 28 2a f1 22 20  |   V.3":...(*." |
000000d0  52 49 47 48 54 20 42 55  54 54 4f 4e 20 54 4f 20  |RIGHT BUTTON TO |
000000e0  53 54 41 52 54 20 41 20  4e 45 57 20 4d 41 50 2e  |START A NEW MAP.|
000000f0  22 3a f1 0d 00 32 7a f1  22 20 4d 49 44 44 4c 45  |":...2z." MIDDLE|
00000100  20 54 4f 20 53 45 45 20  54 48 45 20 53 41 4d 45  | TO SEE THE SAME|
00000110  20 50 41 54 54 45 52 4e  20 45 4e 4c 41 52 47 45  | PATTERN ENLARGE|
00000120  44 2e 22 3a f1 3a f1 22  20 4c 45 46 54 20 54 4f  |D.":.:." LEFT TO|
00000130  20 4d 4f 56 45 20 50 4c  4f 54 54 49 4e 47 20 41  | MOVE PLOTTING A|
00000140  54 20 50 4f 49 4e 54 45  52 53 20 50 4f 53 49 54  |T POINTERS POSIT|
00000150  49 4f 4e 2e 22 3a f1 3a  f1 22 20 54 4f 20 53 41  |ION.":.:." TO SA|
00000160  56 45 20 50 52 45 53 53  20 27 53 27 22 0d 00 37  |VE PRESS 'S'"..7|
00000170  1a f1 3a f1 3a f1 22 20  43 4c 49 43 4b 20 54 4f  |..:.:." CLICK TO|
00000180  20 53 54 41 52 54 22 0d  00 3c 14 f5 3a c8 97 41  | START"..<..:..A|
00000190  2c 42 2c 43 3a 41 3d b3  3a fd 43 0d 00 46 26 f2  |,B,C:A=.:.C..F&.|
000001a0  4d 4f 44 45 3a 44 25 3d  30 3a f5 3a c8 97 41 2c  |MODE:D%=0:.:..A,|
000001b0  42 2c 43 3a fd 43 3d 30  3a 2a 50 4f 49 4e 54 45  |B,C:.C=0:*POINTE|
000001c0  52 0d 00 50 33 c8 91 20  36 34 30 2c 35 31 32 3a  |R..P3.. 640,512:|
000001d0  f4 20 6a 2c 20 6b 2c 20  6c 20 44 45 46 49 4e 45  |. j, k, l DEFINE|
000001e0  20 54 48 45 20 47 45 4e  45 52 41 54 45 44 20 49  | THE GENERATED I|
000001f0  4d 41 47 45 0d 00 5a 31  f1 22 4c 49 4e 45 20 31  |MAGE..Z1."LINE 1|
00000200  33 30 20 20 6a 3d 52 4e  44 28 31 29 2a 36 3a 6b  |30  j=RND(1)*6:k|
00000210  3d 52 4e 44 28 31 29 2f  32 3a 6c 3d 52 4e 44 28  |=RND(1)/2:l=RND(|
00000220  31 29 2a 39 22 0d 00 64  2d e3 5a 3d 30 b8 31 35  |1)*9"..d-.Z=0.15|
00000230  3a f3 46 2c 44 2c 45 3a  fb 5a 2c 46 2c 44 2c 45  |:.F,D,E:.Z,F,D,E|
00000240  3a ed 3a 51 3d b6 32 2a  32 3a 52 3d 51 3a 43 25  |:.:Q=.2*2:R=Q:C%|
00000250  3d 31 0d 00 6e 05 20 0d  00 78 0f f4 20 4d 41 49  |=1..n. ..x.. MAI|
00000260  4e 20 4c 4f 4f 50 0d 00  82 37 f5 3a e7 20 43 25  |N LOOP...7.:. C%|
00000270  3d 31 20 6a 3d b3 28 31  29 2a 36 3a 6b 3d b3 28  |=1 j=.(1)*6:k=.(|
00000280  31 29 2f 32 3a 6c 3d b3  28 31 29 2a 39 3a 51 3d  |1)/2:l=.(1)*9:Q=|
00000290  52 3a 78 3d 39 2f 51 3a  79 3d 39 2f 51 0d 00 8c  |R:x=9/Q:y=9/Q...|
000002a0  1d f1 8a 30 2c 32 29 22  6a 3d 22 6a 3a f1 22 6b  |...0,2)"j="j:."k|
000002b0  3d 22 6b 3a f1 22 6c 3d  22 6c 0d 00 96 14 f5 3a  |="k:."l="l.....:|
000002c0  44 25 2b 3d 31 3a e6 44  25 83 31 35 2b 31 0d 00  |D%+=1:.D%.15+1..|
000002d0  a0 3d e3 49 25 3d 31 b8  31 35 36 37 3a 5a 3d 79  |.=.I%=1.1567:Z=y|
000002e0  2d b4 78 2a b6 94 28 6b  2a 78 2d 6c 29 3a 79 3d  |-.x*..(k*x-l):y=|
000002f0  6a 2d 78 3a 78 3d 5a 3a  c8 92 51 2a 28 78 2b 79  |j-x:x=Z:..Q*(x+y|
00000300  29 2c 51 2a 28 78 2d 79  29 3a ed 0d 00 aa 37 c8  |),Q*(x-y):....7.|
00000310  97 41 25 2c 42 25 2c 43  25 3a e7 43 25 3d 34 20  |.A%,B%,C%:.C%=4 |
00000320  78 3d 28 41 25 2b 42 25  29 2f 28 51 2a 32 29 3a  |x=(A%+B%)/(Q*2):|
00000330  79 3d 28 41 25 2d 42 25  29 2f 28 51 2a 32 29 3a  |y=(A%-B%)/(Q*2):|
00000340  fd 30 0d 00 af 26 53 24  3d bf 28 31 29 3a e7 20  |.0...&S$=.(1):. |
00000350  53 24 3d 22 53 22 3a 2a  53 43 52 45 45 4e 53 41  |S$="S":*SCREENSA|
00000360  56 45 20 49 4d 41 47 45  0d 00 b4 15 fd 43 25 3a  |VE IMAGE.....C%:|
00000370  e7 43 25 3d 32 20 51 3d  51 2a 31 2e 33 0d 00 be  |.C%=2 Q=Q*1.3...|
00000380  1b f5 3a c8 97 41 2c 42  2c 43 3a 41 3d b3 3a fd  |..:..A,B,C:A=.:.|
00000390  43 3d 30 3a db 3a fd 30  0d 00 c8 05 20 0d 01 36  |C=0:.:.0.... ..6|
000003a0  12 dd f2 4d 4f 44 45 20  ea 20 43 25 2c 46 25 0d  |...MODE . C%,F%.|
000003b0  01 40 23 c8 99 20 22 4f  53 5f 43 68 65 63 6b 4d  |.@#.. "OS_CheckM|
000003c0  6f 64 65 56 61 6c 69 64  22 2c 32 30 20 b8 20 3b  |odeValid",20 . ;|
000003d0  46 25 0d 01 4a 14 43 25  3d 28 46 25 80 25 30 30  |F%..J.C%=(F%.%00|
000003e0  31 30 29 3e 3e 31 0d 01  54 26 e7 20 ac 20 28 43  |10)>>1..T&. . (C|
000003f0  25 3d 31 29 20 eb 20 32  30 3a 4d 4f 25 3d 31 20  |%=1) . 20:MO%=1 |
00000400  8b 20 eb 20 31 32 3a 4d  4f 25 3d 30 0d 01 5e 07  |. . 12:MO%=0..^.|
00000410  87 3a e1 0d 01 68 05 20  0d 01 bc c2 dc 20 30 2c  |.:...h. ..... 0,|
00000420  30 2c 30 2c 31 39 32 2c  30 2c 32 34 30 2c 31 34  |0,0,192,0,240,14|
00000430  34 2c 34 38 2c 32 34 30  2c 39 36 2c 39 36 2c 32  |4,48,240,96,96,2|
00000440  34 30 2c 34 38 2c 31 34  34 2c 32 34 30 2c 30 2c  |40,48,144,240,0,|
00000450  31 39 32 2c 32 34 30 2c  30 2c 32 34 30 2c 31 39  |192,240,0,240,19|
00000460  32 2c 34 38 2c 32 34 30  2c 31 34 34 2c 39 36 2c  |2,48,240,144,96,|
00000470  32 34 30 2c 39 36 2c 31  34 34 2c 32 34 30 2c 34  |240,96,144,240,4|
00000480  38 2c 31 39 32 2c 32 34  30 2c 30 2c 32 34 30 2c  |8,192,240,0,240,|
00000490  31 39 32 2c 30 2c 32 34  30 2c 31 34 34 2c 34 38  |192,0,240,144,48|
000004a0  2c 32 34 30 2c 39 36 2c  39 36 2c 32 34 30 2c 34  |,240,96,96,240,4|
000004b0  38 2c 31 34 34 2c 32 34  30 2c 30 2c 31 39 32 20  |8,144,240,0,192 |
000004c0  20 20 52 45 4d 20 52 2c  47 2c 42 20 50 41 4c 45  |  REM R,G,B PALE|
000004d0  54 54 45 20 56 41 4c 55  45 53 0d 01 c2 05 20 0d  |TTE VALUES.... .|
000004e0  01 cc 1e f4 20 41 4c 54  45 52 4e 41 54 49 56 45  |.... ALTERNATIVE|
000004f0  53 20 54 4f 20 4c 49 4e  45 20 31 36 30 0d 01 d1  |S TO LINE 160...|
00000500  3c e3 49 25 3d 31 b8 31  35 36 37 3a 5a 3d 79 2d  |<.I%=1.1567:Z=y-|
00000510  b4 78 2a 94 28 6b 2a 78  2d 6c 29 3a 79 3d 6a 2d  |.x*.(k*x-l):y=j-|
00000520  78 3a 78 3d 5a 3a c8 92  51 2a 28 78 2b 79 29 2c  |x:x=Z:..Q*(x+y),|
00000530  51 2a 28 78 2d 79 29 3a  ed 0d 01 d6 3d e3 49 25  |Q*(x-y):....=.I%|
00000540  3d 31 b8 31 35 36 37 3a  5a 3d 79 2d b4 78 2a b6  |=1.1567:Z=y-.x*.|
00000550  94 28 6b 2a 78 2d 6c 29  3a 79 3d 6a 2d 78 3a 78  |.(k*x-l):y=j-x:x|
00000560  3d 5a 3a c8 92 51 2a 28  78 2b 79 29 2c 51 2a 28  |=Z:..Q*(x+y),Q*(|
00000570  78 2d 79 29 3a ed 0d ff                           |x-y):...|
00000578