Home » Personal collection » Acorn DFS disks » dfs_box03_disk06_games_4_backup.scp » JOY747

JOY747

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 DFS disks » dfs_box03_disk06_games_4_backup.scp
Filename: JOY747
Read OK:
File size: 03C8 bytes
Load address: FF1900
Exec address: FF801F
Duplicates

There is 1 duplicate copy of this file in the archive:

File contents
   10REM SHORT FORM VERSION OF
   20REM ASSEMBLER PROGRAM FOR EXTERNAL
   30REM KEYPAD/JOYSTICK
   40REM by A. T. BENCE, COPYRIGHT
   50OS=!&20A
   60TA%=&0900:T%=TA%
   70I%=0:REPEAT:READ X%:TA%?I%=X%
   80I%=I%+1:UNTIL X%=0
   90K%=I%-1:PR%=TA%+K%
  100FOR PA=0 TO 2 STEP2
  110P%=PR%
  120[OPT PA
  130PHA:PHP:SEI:CMP #&81:BEQ L10:JMP L11
  140.L10 CPY #&81:BPL L20
  150.L11 PLP:PLA:JMP OS
  160.L20 LDY #&00
  170.L21 TXA
  180.L22 CPY #K%:BNE L23:LDY #&FF:JMP L11
  190.L23 CMP TA%,Y:BEQ L30:INY:INY:JMP L22
  200.L30 INY:LDA TA%,Y:STA T%:AND #&0F:CMP #&05:BMI L40:LDA T%:STA &FE60:AND #&F0:EOR #&F0:STA &FE62:LDA T%:ORA #&F0:ORA &FE60:CMP #&FF:BEQ L60:JMP L61
  210.L40 CMP #&00:BNE L50:LDA T%:AND &FE40:BNE L60:JMP L61
  220.L50 TAX:LDA #&80:JSR &FFF4:LDA T%:AND #&F0:STA T%+1:CMP #&7F:BPL L51:TYA:CMP T%+1:BCC L61:JMP L60
  230.L51 TYA:CMP T%+1:BCS L61
  240.L60 LDY #&00:LDX #&00:JMP L62
  250.L61 LDY #&FF:LDX #&FF
  260.L62 PLA:PLP:CLI:RTS
  270]
  280T%=P%:NEXT PA
  290?&020A=PR%:?&020B=PR%/256
  300CHAIN "747D"
  310END
  320DATA-98,&B1,-105,&51,-85,&B2,-99,&52,0

� SHORT FORM VERSION OF
$� ASSEMBLER PROGRAM FOR EXTERNAL
� KEYPAD/JOYSTICK
(� by A. T. BENCE, COPYRIGHT
2OS=!&20A
<TA%=&0900:T%=TA%
FI%=0:�:� X%:TA%?I%=X%
PI%=I%+1:� X%=0
ZK%=I%-1:PR%=TA%+K%
d� PA=0 � 2 �2
n
P%=PR%
x[OPT PA
�(PHA:PHP:SEI:CMP #&81:BEQ L10:JMP L11
�.L10 CPY #&81:BPL L20
�.L11 PLP:PLA:JMP OS
�.L20 LDY #&00
�.L21 TXA
�).L22 CPY #K%:BNE L23:LDY #&FF:JMP L11
�*.L23 CMP TA%,Y:BEQ L30:INY:INY:JMP L22
ȏ.L30 INY:LDA TA%,Y:STA T%:� #&0F:CMP #&05:BMI L40:LDA T%:STA &FE60:� #&F0:� #&F0:STA &FE62:LDA T%:�A #&F0:�A &FE60:CMP #&FF:BEQ L60:JMP L61
�8.L40 CMP #&00:BNE L50:LDA T%:� &FE40:BNE L60:JMP L61
�d.L50 TAX:LDA #&80:JSR &FFF4:LDA T%:� #&F0:STA T%+1:CMP #&7F:BPL L51:TYA:CMP T%+1:BCC L61:JMP L60
�.L51 TYA:CMP T%+1:BCS L61
�".L60 LDY #&00:LDX #&00:JMP L62
�.L61 LDY #&FF:LDX #&FF
.L62 PLA:PLP:CLI:RTS
]
T%=P%:� PA
"?&020A=PR%:?&020B=PR%/256
,� "747D"
6�
@'�-98,&B1,-105,&51,-85,&B2,-99,&52,0
�
00000000  0d 00 0a 1b f4 20 53 48  4f 52 54 20 46 4f 52 4d  |..... SHORT FORM|
00000010  20 56 45 52 53 49 4f 4e  20 4f 46 0d 00 14 24 f4  | VERSION OF...$.|
00000020  20 41 53 53 45 4d 42 4c  45 52 20 50 52 4f 47 52  | ASSEMBLER PROGR|
00000030  41 4d 20 46 4f 52 20 45  58 54 45 52 4e 41 4c 0d  |AM FOR EXTERNAL.|
00000040  00 1e 15 f4 20 4b 45 59  50 41 44 2f 4a 4f 59 53  |.... KEYPAD/JOYS|
00000050  54 49 43 4b 0d 00 28 1f  f4 20 62 79 20 41 2e 20  |TICK..(.. by A. |
00000060  54 2e 20 42 45 4e 43 45  2c 20 43 4f 50 59 52 49  |T. BENCE, COPYRI|
00000070  47 48 54 0d 00 32 0c 4f  53 3d 21 26 32 30 41 0d  |GHT..2.OS=!&20A.|
00000080  00 3c 14 54 41 25 3d 26  30 39 30 30 3a 54 25 3d  |.<.TA%=&0900:T%=|
00000090  54 41 25 0d 00 46 19 49  25 3d 30 3a f5 3a f3 20  |TA%..F.I%=0:.:. |
000000a0  58 25 3a 54 41 25 3f 49  25 3d 58 25 0d 00 50 12  |X%:TA%?I%=X%..P.|
000000b0  49 25 3d 49 25 2b 31 3a  fd 20 58 25 3d 30 0d 00  |I%=I%+1:. X%=0..|
000000c0  5a 16 4b 25 3d 49 25 2d  31 3a 50 52 25 3d 54 41  |Z.K%=I%-1:PR%=TA|
000000d0  25 2b 4b 25 0d 00 64 11  e3 20 50 41 3d 30 20 b8  |%+K%..d.. PA=0 .|
000000e0  20 32 20 88 32 0d 00 6e  0a 50 25 3d 50 52 25 0d  | 2 .2..n.P%=PR%.|
000000f0  00 78 0b 5b 4f 50 54 20  50 41 0d 00 82 28 50 48  |.x.[OPT PA...(PH|
00000100  41 3a 50 48 50 3a 53 45  49 3a 43 4d 50 20 23 26  |A:PHP:SEI:CMP #&|
00000110  38 31 3a 42 45 51 20 4c  31 30 3a 4a 4d 50 20 4c  |81:BEQ L10:JMP L|
00000120  31 31 0d 00 8c 19 2e 4c  31 30 20 43 50 59 20 23  |11.....L10 CPY #|
00000130  26 38 31 3a 42 50 4c 20  4c 32 30 0d 00 96 17 2e  |&81:BPL L20.....|
00000140  4c 31 31 20 50 4c 50 3a  50 4c 41 3a 4a 4d 50 20  |L11 PLP:PLA:JMP |
00000150  4f 53 0d 00 a0 11 2e 4c  32 30 20 4c 44 59 20 23  |OS.....L20 LDY #|
00000160  26 30 30 0d 00 aa 0c 2e  4c 32 31 20 54 58 41 0d  |&00.....L21 TXA.|
00000170  00 b4 29 2e 4c 32 32 20  43 50 59 20 23 4b 25 3a  |..).L22 CPY #K%:|
00000180  42 4e 45 20 4c 32 33 3a  4c 44 59 20 23 26 46 46  |BNE L23:LDY #&FF|
00000190  3a 4a 4d 50 20 4c 31 31  0d 00 be 2a 2e 4c 32 33  |:JMP L11...*.L23|
000001a0  20 43 4d 50 20 54 41 25  2c 59 3a 42 45 51 20 4c  | CMP TA%,Y:BEQ L|
000001b0  33 30 3a 49 4e 59 3a 49  4e 59 3a 4a 4d 50 20 4c  |30:INY:INY:JMP L|
000001c0  32 32 0d 00 c8 8f 2e 4c  33 30 20 49 4e 59 3a 4c  |22.....L30 INY:L|
000001d0  44 41 20 54 41 25 2c 59  3a 53 54 41 20 54 25 3a  |DA TA%,Y:STA T%:|
000001e0  80 20 23 26 30 46 3a 43  4d 50 20 23 26 30 35 3a  |. #&0F:CMP #&05:|
000001f0  42 4d 49 20 4c 34 30 3a  4c 44 41 20 54 25 3a 53  |BMI L40:LDA T%:S|
00000200  54 41 20 26 46 45 36 30  3a 80 20 23 26 46 30 3a  |TA &FE60:. #&F0:|
00000210  82 20 23 26 46 30 3a 53  54 41 20 26 46 45 36 32  |. #&F0:STA &FE62|
00000220  3a 4c 44 41 20 54 25 3a  84 41 20 23 26 46 30 3a  |:LDA T%:.A #&F0:|
00000230  84 41 20 26 46 45 36 30  3a 43 4d 50 20 23 26 46  |.A &FE60:CMP #&F|
00000240  46 3a 42 45 51 20 4c 36  30 3a 4a 4d 50 20 4c 36  |F:BEQ L60:JMP L6|
00000250  31 0d 00 d2 38 2e 4c 34  30 20 43 4d 50 20 23 26  |1...8.L40 CMP #&|
00000260  30 30 3a 42 4e 45 20 4c  35 30 3a 4c 44 41 20 54  |00:BNE L50:LDA T|
00000270  25 3a 80 20 26 46 45 34  30 3a 42 4e 45 20 4c 36  |%:. &FE40:BNE L6|
00000280  30 3a 4a 4d 50 20 4c 36  31 0d 00 dc 64 2e 4c 35  |0:JMP L61...d.L5|
00000290  30 20 54 41 58 3a 4c 44  41 20 23 26 38 30 3a 4a  |0 TAX:LDA #&80:J|
000002a0  53 52 20 26 46 46 46 34  3a 4c 44 41 20 54 25 3a  |SR &FFF4:LDA T%:|
000002b0  80 20 23 26 46 30 3a 53  54 41 20 54 25 2b 31 3a  |. #&F0:STA T%+1:|
000002c0  43 4d 50 20 23 26 37 46  3a 42 50 4c 20 4c 35 31  |CMP #&7F:BPL L51|
000002d0  3a 54 59 41 3a 43 4d 50  20 54 25 2b 31 3a 42 43  |:TYA:CMP T%+1:BC|
000002e0  43 20 4c 36 31 3a 4a 4d  50 20 4c 36 30 0d 00 e6  |C L61:JMP L60...|
000002f0  1d 2e 4c 35 31 20 54 59  41 3a 43 4d 50 20 54 25  |..L51 TYA:CMP T%|
00000300  2b 31 3a 42 43 53 20 4c  36 31 0d 00 f0 22 2e 4c  |+1:BCS L61...".L|
00000310  36 30 20 4c 44 59 20 23  26 30 30 3a 4c 44 58 20  |60 LDY #&00:LDX |
00000320  23 26 30 30 3a 4a 4d 50  20 4c 36 32 0d 00 fa 1a  |#&00:JMP L62....|
00000330  2e 4c 36 31 20 4c 44 59  20 23 26 46 46 3a 4c 44  |.L61 LDY #&FF:LD|
00000340  58 20 23 26 46 46 0d 01  04 18 2e 4c 36 32 20 50  |X #&FF.....L62 P|
00000350  4c 41 3a 50 4c 50 3a 43  4c 49 3a 52 54 53 0d 01  |LA:PLP:CLI:RTS..|
00000360  0e 05 5d 0d 01 18 0e 54  25 3d 50 25 3a ed 20 50  |..]....T%=P%:. P|
00000370  41 0d 01 22 1d 3f 26 30  32 30 41 3d 50 52 25 3a  |A..".?&020A=PR%:|
00000380  3f 26 30 32 30 42 3d 50  52 25 2f 32 35 36 0d 01  |?&020B=PR%/256..|
00000390  2c 0c d7 20 22 37 34 37  44 22 0d 01 36 05 e0 0d  |,.. "747D"..6...|
000003a0  01 40 27 dc 2d 39 38 2c  26 42 31 2c 2d 31 30 35  |.@'.-98,&B1,-105|
000003b0  2c 26 35 31 2c 2d 38 35  2c 26 42 32 2c 2d 39 39  |,&51,-85,&B2,-99|
000003c0  2c 26 35 32 2c 30 0d ff                           |,&52,0..|
000003c8
JOY747.m0
JOY747.m1
JOY747.m2
JOY747.m4
JOY747.m5