Home » Archimedes archive » Micro User » MU 1992-03.adf » PD » AMUSING/!TheHand/!RunImage

AMUSING/!TheHand/!RunImage

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 » Micro User » MU 1992-03.adf » PD
Filename: AMUSING/!TheHand/!RunImage
Read OK:
File size: 0334 bytes
Load address: 0000
Exec address: 0000
File contents
   10REM ><TheHand$Dir>.!RunImage
   20REM alters pointer when a button is clicked
   30:
   40delay%=100:REM delay before changing back to ptr_default in centi seconds
   50DIM block% 256
   60SYS "Wimp_Initialise",200,&4B534154,"Mouse click shower"
   70SYS "OS_ReadMonotonicTime" TO oldtime%
   80REPEAT
   90MOUSE X,Y,B:CASE B OF
  100            WHEN 4:SYS "Wimp_SpriteOp",36,,"hand_select",%1100001,0,0
  110            WHEN 2:SYS "Wimp_SpriteOp",36,,"hand_menu",%1100001,0,0
  120            WHEN 1:SYS "Wimp_SpriteOp",36,,"hand_adjust",%1100001,0,0
  130            ENDCASE
  140SYS "Wimp_Poll",,block% TO reason%
  150CASE reason% OF
  160WHEN 0:SYS "OS_ReadMonotonicTime" TO newtime%
  170IF newtime%>(oldtime%+delay%) THEN SYS "Wimp_SpriteOp",36,,"hand_hand",%100001:oldtime%+=delay%
  180WHEN 17,18:IF block%!16=0 SYS "Wimp_SpriteOp",36,,"ptr_default",%100001:END
  190ENDCASE
  200UNTIL FALSE
  210SYS "Wimp_CloseDown"
  220END

� ><TheHand$Dir>.!RunImage
-� alters pointer when a button is clicked
:
(Kdelay%=100:� delay before changing back to ptr_default in centi seconds
2� block% 256
<;ș "Wimp_Initialise",200,&4B534154,"Mouse click shower"
F(ș "OS_ReadMonotonicTime" � oldtime%
P�
Zȗ X,Y,B:Ȏ B �
dE            � 4:ș "Wimp_SpriteOp",36,,"hand_select",%1100001,0,0
nC            � 2:ș "Wimp_SpriteOp",36,,"hand_menu",%1100001,0,0
xE            � 1:ș "Wimp_SpriteOp",36,,"hand_adjust",%1100001,0,0
�            �
�$ș "Wimp_Poll",,block% � reason%
�Ȏ reason% �
�,� 0:ș "OS_ReadMonotonicTime" � newtime%
�^� newtime%>(oldtime%+delay%) � ș "Wimp_SpriteOp",36,,"hand_hand",%100001:oldtime%+=delay%
�H� 17,18:� block%!16=0 ș "Wimp_SpriteOp",36,,"ptr_default",%100001:�
��
�� �
�ș "Wimp_CloseDown"
��
�
00000000  0d 00 0a 1e f4 20 3e 3c  54 68 65 48 61 6e 64 24  |..... ><TheHand$|
00000010  44 69 72 3e 2e 21 52 75  6e 49 6d 61 67 65 0d 00  |Dir>.!RunImage..|
00000020  14 2d f4 20 61 6c 74 65  72 73 20 70 6f 69 6e 74  |.-. alters point|
00000030  65 72 20 77 68 65 6e 20  61 20 62 75 74 74 6f 6e  |er when a button|
00000040  20 69 73 20 63 6c 69 63  6b 65 64 0d 00 1e 05 3a  | is clicked....:|
00000050  0d 00 28 4b 64 65 6c 61  79 25 3d 31 30 30 3a f4  |..(Kdelay%=100:.|
00000060  20 64 65 6c 61 79 20 62  65 66 6f 72 65 20 63 68  | delay before ch|
00000070  61 6e 67 69 6e 67 20 62  61 63 6b 20 74 6f 20 70  |anging back to p|
00000080  74 72 5f 64 65 66 61 75  6c 74 20 69 6e 20 63 65  |tr_default in ce|
00000090  6e 74 69 20 73 65 63 6f  6e 64 73 0d 00 32 10 de  |nti seconds..2..|
000000a0  20 62 6c 6f 63 6b 25 20  32 35 36 0d 00 3c 3b c8  | block% 256..<;.|
000000b0  99 20 22 57 69 6d 70 5f  49 6e 69 74 69 61 6c 69  |. "Wimp_Initiali|
000000c0  73 65 22 2c 32 30 30 2c  26 34 42 35 33 34 31 35  |se",200,&4B53415|
000000d0  34 2c 22 4d 6f 75 73 65  20 63 6c 69 63 6b 20 73  |4,"Mouse click s|
000000e0  68 6f 77 65 72 22 0d 00  46 28 c8 99 20 22 4f 53  |hower"..F(.. "OS|
000000f0  5f 52 65 61 64 4d 6f 6e  6f 74 6f 6e 69 63 54 69  |_ReadMonotonicTi|
00000100  6d 65 22 20 b8 20 6f 6c  64 74 69 6d 65 25 0d 00  |me" . oldtime%..|
00000110  50 05 f5 0d 00 5a 13 c8  97 20 58 2c 59 2c 42 3a  |P....Z... X,Y,B:|
00000120  c8 8e 20 42 20 ca 0d 00  64 45 20 20 20 20 20 20  |.. B ...dE      |
00000130  20 20 20 20 20 20 c9 20  34 3a c8 99 20 22 57 69  |      . 4:.. "Wi|
00000140  6d 70 5f 53 70 72 69 74  65 4f 70 22 2c 33 36 2c  |mp_SpriteOp",36,|
00000150  2c 22 68 61 6e 64 5f 73  65 6c 65 63 74 22 2c 25  |,"hand_select",%|
00000160  31 31 30 30 30 30 31 2c  30 2c 30 0d 00 6e 43 20  |1100001,0,0..nC |
00000170  20 20 20 20 20 20 20 20  20 20 20 c9 20 32 3a c8  |           . 2:.|
00000180  99 20 22 57 69 6d 70 5f  53 70 72 69 74 65 4f 70  |. "Wimp_SpriteOp|
00000190  22 2c 33 36 2c 2c 22 68  61 6e 64 5f 6d 65 6e 75  |",36,,"hand_menu|
000001a0  22 2c 25 31 31 30 30 30  30 31 2c 30 2c 30 0d 00  |",%1100001,0,0..|
000001b0  78 45 20 20 20 20 20 20  20 20 20 20 20 20 c9 20  |xE            . |
000001c0  31 3a c8 99 20 22 57 69  6d 70 5f 53 70 72 69 74  |1:.. "Wimp_Sprit|
000001d0  65 4f 70 22 2c 33 36 2c  2c 22 68 61 6e 64 5f 61  |eOp",36,,"hand_a|
000001e0  64 6a 75 73 74 22 2c 25  31 31 30 30 30 30 31 2c  |djust",%1100001,|
000001f0  30 2c 30 0d 00 82 11 20  20 20 20 20 20 20 20 20  |0,0....         |
00000200  20 20 20 cb 0d 00 8c 24  c8 99 20 22 57 69 6d 70  |   ....$.. "Wimp|
00000210  5f 50 6f 6c 6c 22 2c 2c  62 6c 6f 63 6b 25 20 b8  |_Poll",,block% .|
00000220  20 72 65 61 73 6f 6e 25  0d 00 96 10 c8 8e 20 72  | reason%...... r|
00000230  65 61 73 6f 6e 25 20 ca  0d 00 a0 2c c9 20 30 3a  |eason% ....,. 0:|
00000240  c8 99 20 22 4f 53 5f 52  65 61 64 4d 6f 6e 6f 74  |.. "OS_ReadMonot|
00000250  6f 6e 69 63 54 69 6d 65  22 20 b8 20 6e 65 77 74  |onicTime" . newt|
00000260  69 6d 65 25 0d 00 aa 5e  e7 20 6e 65 77 74 69 6d  |ime%...^. newtim|
00000270  65 25 3e 28 6f 6c 64 74  69 6d 65 25 2b 64 65 6c  |e%>(oldtime%+del|
00000280  61 79 25 29 20 8c 20 c8  99 20 22 57 69 6d 70 5f  |ay%) . .. "Wimp_|
00000290  53 70 72 69 74 65 4f 70  22 2c 33 36 2c 2c 22 68  |SpriteOp",36,,"h|
000002a0  61 6e 64 5f 68 61 6e 64  22 2c 25 31 30 30 30 30  |and_hand",%10000|
000002b0  31 3a 6f 6c 64 74 69 6d  65 25 2b 3d 64 65 6c 61  |1:oldtime%+=dela|
000002c0  79 25 0d 00 b4 48 c9 20  31 37 2c 31 38 3a e7 20  |y%...H. 17,18:. |
000002d0  62 6c 6f 63 6b 25 21 31  36 3d 30 20 c8 99 20 22  |block%!16=0 .. "|
000002e0  57 69 6d 70 5f 53 70 72  69 74 65 4f 70 22 2c 33  |Wimp_SpriteOp",3|
000002f0  36 2c 2c 22 70 74 72 5f  64 65 66 61 75 6c 74 22  |6,,"ptr_default"|
00000300  2c 25 31 30 30 30 30 31  3a e0 0d 00 be 05 cb 0d  |,%100001:.......|
00000310  00 c8 07 fd 20 a3 0d 00  d2 17 c8 99 20 22 57 69  |.... ....... "Wi|
00000320  6d 70 5f 43 6c 6f 73 65  44 6f 77 6e 22 0d 00 dc  |mp_CloseDown"...|
00000330  05 e0 0d ff                                       |....|
00000334