Home » Personal collection » Acorn hard disk » misc » dcfprogs » Server1/Stuff/FREAKY5

Server1/Stuff/FREAKY5

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 » Acorn hard disk » misc » dcfprogs
Filename: Server1/Stuff/FREAKY5
Read OK:
File size: 0292 bytes
Load address: 0000
Exec address: 0000
Duplicates

There are 4 duplicate copies of this file in the archive:

File contents
   10DIM taskid%4:$taskid%="TASK"
   20SYS "Wimp_Initialise",200,!taskid%,"FREAKY" TO version%,handle%
   30
   40DIM q% &300,buffer% &200
   50
   60PRINT BY DOM FORD
   70DIM DiscNameArray% 30
   80DIM NameArray% 60
   90DiscName$ = "xx"
  100ON ERROR REPORT:PRINT " @ ";ERL:END
  110
  120
  130PROCdo_your_stuff
  140REPEAT
  150  SYS "Wimp_Poll",0,q% TO A%
  160  PROCreceive(q%):REM 17 is shut me up, 18 is shut all up.
  170  ENDCASE
  180UNTIL FALSE
  190
  200DEFPROCdo_your_stuff:MOUSE ON:MOUSE OX,OY,C:XV=0:YV=0:ENDPROC
  210
  220DEF PROCreceive(q%)
  230IF (A%=17 OR A%=18) AND q%!16=0 THEN END
  240MOUSE X,Y,C
  250IF X>1278 OR X<1 THEN XV=-XV
  260IF Y>1022 OR Y<1 THEN YV=-YV
  270XV=XV+X-OX-XV/1000
  280YV=YV+Y-OY-YV/1000-1
  290X=X+XV/5:Y=Y+YV/5
  300IF Y<1 AND OY>3 THEN VDU 7
  310OX=X:OY=Y
  320MOUSE TO X,Y
  330ENDPROC
  340

� taskid%4:$taskid%="TASK"
Aș "Wimp_Initialise",200,!taskid%,"FREAKY" � version%,handle%

(� q% &300,buffer% &200
2
<� BY DOM �D
F� DiscNameArray% 30
P� NameArray% 60
ZDiscName$ = "xx"
d� � �:� " @ ";�:�
n
x
��do_your_stuff
��
�  ș "Wimp_Poll",0,q% � A%
�9  �receive(q%):� 17 is shut me up, 18 is shut all up.
�  �
�� �
�
�/��do_your_stuff:ȗ �:ȗ OX,OY,C:XV=0:YV=0:�
�
�� �receive(q%)
�#� (A%=17 � A%=18) � q%!16=0 � �
�ȗ X,Y,C
�� X>1278 � X<1 � XV=-XV
� Y>1022 � Y<1 � YV=-YV
XV=XV+X-OX-XV/1000
YV=YV+Y-OY-YV/1000-1
"X=X+XV/5:Y=Y+YV/5
,� Y<1 � OY>3 � � 7
6
OX=X:OY=Y
@ȗ � X,Y
J�
T
�
00000000  0d 00 0a 1e de 20 74 61  73 6b 69 64 25 34 3a 24  |..... taskid%4:$|
00000010  74 61 73 6b 69 64 25 3d  22 54 41 53 4b 22 0d 00  |taskid%="TASK"..|
00000020  14 41 c8 99 20 22 57 69  6d 70 5f 49 6e 69 74 69  |.A.. "Wimp_Initi|
00000030  61 6c 69 73 65 22 2c 32  30 30 2c 21 74 61 73 6b  |alise",200,!task|
00000040  69 64 25 2c 22 46 52 45  41 4b 59 22 20 b8 20 76  |id%,"FREAKY" . v|
00000050  65 72 73 69 6f 6e 25 2c  68 61 6e 64 6c 65 25 0d  |ersion%,handle%.|
00000060  00 1e 04 0d 00 28 1a de  20 71 25 20 26 33 30 30  |.....(.. q% &300|
00000070  2c 62 75 66 66 65 72 25  20 26 32 30 30 0d 00 32  |,buffer% &200..2|
00000080  04 0d 00 3c 0f f1 20 42  59 20 44 4f 4d 20 e3 44  |...<.. BY DOM .D|
00000090  0d 00 46 17 de 20 44 69  73 63 4e 61 6d 65 41 72  |..F.. DiscNameAr|
000000a0  72 61 79 25 20 33 30 0d  00 50 13 de 20 4e 61 6d  |ray% 30..P.. Nam|
000000b0  65 41 72 72 61 79 25 20  36 30 0d 00 5a 14 44 69  |eArray% 60..Z.Di|
000000c0  73 63 4e 61 6d 65 24 20  3d 20 22 78 78 22 0d 00  |scName$ = "xx"..|
000000d0  64 15 ee 20 85 20 f6 3a  f1 20 22 20 40 20 22 3b  |d.. . .:. " @ ";|
000000e0  9e 3a e0 0d 00 6e 04 0d  00 78 04 0d 00 82 12 f2  |.:...n...x......|
000000f0  64 6f 5f 79 6f 75 72 5f  73 74 75 66 66 0d 00 8c  |do_your_stuff...|
00000100  05 f5 0d 00 96 1e 20 20  c8 99 20 22 57 69 6d 70  |......  .. "Wimp|
00000110  5f 50 6f 6c 6c 22 2c 30  2c 71 25 20 b8 20 41 25  |_Poll",0,q% . A%|
00000120  0d 00 a0 39 20 20 f2 72  65 63 65 69 76 65 28 71  |...9  .receive(q|
00000130  25 29 3a f4 20 31 37 20  69 73 20 73 68 75 74 20  |%):. 17 is shut |
00000140  6d 65 20 75 70 2c 20 31  38 20 69 73 20 73 68 75  |me up, 18 is shu|
00000150  74 20 61 6c 6c 20 75 70  2e 0d 00 aa 07 20 20 cb  |t all up.....  .|
00000160  0d 00 b4 07 fd 20 a3 0d  00 be 04 0d 00 c8 2f dd  |..... ......../.|
00000170  f2 64 6f 5f 79 6f 75 72  5f 73 74 75 66 66 3a c8  |.do_your_stuff:.|
00000180  97 20 ee 3a c8 97 20 4f  58 2c 4f 59 2c 43 3a 58  |. .:.. OX,OY,C:X|
00000190  56 3d 30 3a 59 56 3d 30  3a e1 0d 00 d2 04 0d 00  |V=0:YV=0:.......|
000001a0  dc 12 dd 20 f2 72 65 63  65 69 76 65 28 71 25 29  |... .receive(q%)|
000001b0  0d 00 e6 23 e7 20 28 41  25 3d 31 37 20 84 20 41  |...#. (A%=17 . A|
000001c0  25 3d 31 38 29 20 80 20  71 25 21 31 36 3d 30 20  |%=18) . q%!16=0 |
000001d0  8c 20 e0 0d 00 f0 0c c8  97 20 58 2c 59 2c 43 0d  |. ....... X,Y,C.|
000001e0  00 fa 1b e7 20 58 3e 31  32 37 38 20 84 20 58 3c  |.... X>1278 . X<|
000001f0  31 20 8c 20 58 56 3d 2d  58 56 0d 01 04 1b e7 20  |1 . XV=-XV..... |
00000200  59 3e 31 30 32 32 20 84  20 59 3c 31 20 8c 20 59  |Y>1022 . Y<1 . Y|
00000210  56 3d 2d 59 56 0d 01 0e  16 58 56 3d 58 56 2b 58  |V=-YV....XV=XV+X|
00000220  2d 4f 58 2d 58 56 2f 31  30 30 30 0d 01 18 18 59  |-OX-XV/1000....Y|
00000230  56 3d 59 56 2b 59 2d 4f  59 2d 59 56 2f 31 30 30  |V=YV+Y-OY-YV/100|
00000240  30 2d 31 0d 01 22 15 58  3d 58 2b 58 56 2f 35 3a  |0-1..".X=X+XV/5:|
00000250  59 3d 59 2b 59 56 2f 35  0d 01 2c 16 e7 20 59 3c  |Y=Y+YV/5..,.. Y<|
00000260  31 20 80 20 4f 59 3e 33  20 8c 20 ef 20 37 0d 01  |1 . OY>3 . . 7..|
00000270  36 0d 4f 58 3d 58 3a 4f  59 3d 59 0d 01 40 0c c8  |6.OX=X:OY=Y..@..|
00000280  97 20 b8 20 58 2c 59 0d  01 4a 05 e1 0d 01 54 04  |. . X,Y..J....T.|
00000290  0d ff                                             |..|
00000292