Home » Personal collection » Acorn tapes » Electron_User » Electron_User_tape33b_acorn_eu_1992_april.wav » Mover

Mover

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 tapes » Electron_User » Electron_User_tape33b_acorn_eu_1992_april.wav
Filename: Mover
Read OK:
File size: 02B7 bytes
Load address: FFFFFB00
Exec address: FFFF801F
Duplicates

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

File contents
   10REM"�MOVER
   20*LOAD IKON 2F00
   30MODE2
   40HIMEM=&2F00
   50VDU23;8202;0;0;0;
   60PROCinit
   70REPEAT
   80PROCkeys
   90UNTIL0
  100END
  110REM"�INIT
  120DEFPROCinit
  130M%=8
  140N%=640
  150S%=&2F00
  160REM Screen position
  170X%=&4000
  180PROCdraw(X%,S%)
  190ENDPROC
  200 
  210REM"�KEYS
  220DEFPROCkeys
  230IFINKEY-98PROCmoveLR(-M%,X%+24)
  240IFINKEY-67PROCmoveLR(M%,X%)
  250IFINKEY-73PROCmoveUD(-N%,X%+640)
  260IFINKEY-105PROCmoveUD(N%,X%)
  270TIME=0:REPEATUNTILTIME>2
  280ENDPROC
  290 
  300REM"�MOVE�LEFT/RIGHT
  310DEFPROCmoveLR(x%,W%)
  320FORI%=0TO4STEP4
  330I%!W%=0
  340I%!(W%+640)=0
  350NEXT
  360X%=X%+x%
  370PROCdraw(X%,S%)
  380ENDPROC
  390 
  400REM"�MOVE�UP/DOWN
  410DEFPROCmoveUD(x%,W%)
  420FORI%=0TO28STEP4
  430I%!W%=0
  440NEXT
  450X%=X%+x%
  460PROCdraw(X%,S%)
  470ENDPROC
  480 
  490REM"�DRAW
  500DEFPROCdraw(x%,w%)
  510FORJ%=0TO1
  520FORI%=0TO28STEP4
  530x%!I%=w%!I%
  540NEXT
  550x%=x%+640:w%=w%+32
  560NEXT
  570ENDPROC

�"�MOVER
*LOAD IKON 2F00
�2
(�=&2F00
2�23;8202;0;0;0;
<	�init
F�
P	�keys
Z�0
d�
n�"�INIT
x
��init
�M%=8
�
N%=640
�S%=&2F00
�� Screen position
�X%=&4000
��draw(X%,S%)
��
� 
��"�KEYS
�
��keys
��-98�moveLR(-M%,X%+24)
��-67�moveLR(M%,X%)
��-73�moveUD(-N%,X%+640)
�-105�moveUD(N%,X%)

�=0:���>2
�
" 
,�"�MOVE�LEFT/RIGHT
6��moveLR(x%,W%)
@
�I%=0�4�4
JI%!W%=0
TI%!(W%+640)=0
^�
hX%=X%+x%
r�draw(X%,S%)
|�
� 
��"�MOVE�UP/DOWN
���moveUD(x%,W%)
��I%=0�28�4
�I%!W%=0
��
�X%=X%+x%
��draw(X%,S%)
��
� 
��"�DRAW
���draw(x%,w%)
��J%=0�1
�I%=0�28�4
x%!I%=w%!I%
�
&x%=x%+640:w%=w%+32
0�
:�
�
00000000  0d 00 0a 0c f4 22 83 4d  4f 56 45 52 0d 00 14 13  |.....".MOVER....|
00000010  2a 4c 4f 41 44 20 49 4b  4f 4e 20 32 46 30 30 0d  |*LOAD IKON 2F00.|
00000020  00 1e 06 eb 32 0d 00 28  0b d3 3d 26 32 46 30 30  |....2..(..=&2F00|
00000030  0d 00 32 13 ef 32 33 3b  38 32 30 32 3b 30 3b 30  |..2..23;8202;0;0|
00000040  3b 30 3b 0d 00 3c 09 f2  69 6e 69 74 0d 00 46 05  |;0;..<..init..F.|
00000050  f5 0d 00 50 09 f2 6b 65  79 73 0d 00 5a 06 fd 30  |...P..keys..Z..0|
00000060  0d 00 64 05 e0 0d 00 6e  0b f4 22 82 49 4e 49 54  |..d....n..".INIT|
00000070  0d 00 78 0a dd f2 69 6e  69 74 0d 00 82 08 4d 25  |..x...init....M%|
00000080  3d 38 0d 00 8c 0a 4e 25  3d 36 34 30 0d 00 96 0c  |=8....N%=640....|
00000090  53 25 3d 26 32 46 30 30  0d 00 a0 15 f4 20 53 63  |S%=&2F00..... Sc|
000000a0  72 65 65 6e 20 70 6f 73  69 74 69 6f 6e 0d 00 aa  |reen position...|
000000b0  0c 58 25 3d 26 34 30 30  30 0d 00 b4 10 f2 64 72  |.X%=&4000.....dr|
000000c0  61 77 28 58 25 2c 53 25  29 0d 00 be 05 e1 0d 00  |aw(X%,S%).......|
000000d0  c8 05 20 0d 00 d2 0b f4  22 84 4b 45 59 53 0d 00  |.. .....".KEYS..|
000000e0  dc 0a dd f2 6b 65 79 73  0d 00 e6 1b e7 a6 2d 39  |....keys......-9|
000000f0  38 f2 6d 6f 76 65 4c 52  28 2d 4d 25 2c 58 25 2b  |8.moveLR(-M%,X%+|
00000100  32 34 29 0d 00 f0 17 e7  a6 2d 36 37 f2 6d 6f 76  |24)......-67.mov|
00000110  65 4c 52 28 4d 25 2c 58  25 29 0d 00 fa 1c e7 a6  |eLR(M%,X%)......|
00000120  2d 37 33 f2 6d 6f 76 65  55 44 28 2d 4e 25 2c 58  |-73.moveUD(-N%,X|
00000130  25 2b 36 34 30 29 0d 01  04 18 e7 a6 2d 31 30 35  |%+640)......-105|
00000140  f2 6d 6f 76 65 55 44 28  4e 25 2c 58 25 29 0d 01  |.moveUD(N%,X%)..|
00000150  0e 0d d1 3d 30 3a f5 fd  91 3e 32 0d 01 18 05 e1  |...=0:...>2.....|
00000160  0d 01 22 05 20 0d 01 2c  16 f4 22 81 4d 4f 56 45  |..". ..,..".MOVE|
00000170  83 4c 45 46 54 2f 52 49  47 48 54 0d 01 36 13 dd  |.LEFT/RIGHT..6..|
00000180  f2 6d 6f 76 65 4c 52 28  78 25 2c 57 25 29 0d 01  |.moveLR(x%,W%)..|
00000190  40 0d e3 49 25 3d 30 b8  34 88 34 0d 01 4a 0b 49  |@..I%=0.4.4..J.I|
000001a0  25 21 57 25 3d 30 0d 01  54 11 49 25 21 28 57 25  |%!W%=0..T.I%!(W%|
000001b0  2b 36 34 30 29 3d 30 0d  01 5e 05 ed 0d 01 68 0c  |+640)=0..^....h.|
000001c0  58 25 3d 58 25 2b 78 25  0d 01 72 10 f2 64 72 61  |X%=X%+x%..r..dra|
000001d0  77 28 58 25 2c 53 25 29  0d 01 7c 05 e1 0d 01 86  |w(X%,S%)..|.....|
000001e0  05 20 0d 01 90 13 f4 22  81 4d 4f 56 45 83 55 50  |. .....".MOVE.UP|
000001f0  2f 44 4f 57 4e 0d 01 9a  13 dd f2 6d 6f 76 65 55  |/DOWN......moveU|
00000200  44 28 78 25 2c 57 25 29  0d 01 a4 0e e3 49 25 3d  |D(x%,W%).....I%=|
00000210  30 b8 32 38 88 34 0d 01  ae 0b 49 25 21 57 25 3d  |0.28.4....I%!W%=|
00000220  30 0d 01 b8 05 ed 0d 01  c2 0c 58 25 3d 58 25 2b  |0.........X%=X%+|
00000230  78 25 0d 01 cc 10 f2 64  72 61 77 28 58 25 2c 53  |x%.....draw(X%,S|
00000240  25 29 0d 01 d6 05 e1 0d  01 e0 05 20 0d 01 ea 0b  |%)......... ....|
00000250  f4 22 86 44 52 41 57 0d  01 f4 11 dd f2 64 72 61  |.".DRAW......dra|
00000260  77 28 78 25 2c 77 25 29  0d 01 fe 0b e3 4a 25 3d  |w(x%,w%).....J%=|
00000270  30 b8 31 0d 02 08 0e e3  49 25 3d 30 b8 32 38 88  |0.1.....I%=0.28.|
00000280  34 0d 02 12 0f 78 25 21  49 25 3d 77 25 21 49 25  |4....x%!I%=w%!I%|
00000290  0d 02 1c 05 ed 0d 02 26  16 78 25 3d 78 25 2b 36  |.......&.x%=x%+6|
000002a0  34 30 3a 77 25 3d 77 25  2b 33 32 0d 02 30 05 ed  |40:w%=w%+32..0..|
000002b0  0d 02 3a 05 e1 0d ff                              |..:....|
000002b7
Mover.m0
Mover.m1
Mover.m2
Mover.m4
Mover.m5