Home » Personal collection » Acorn ADFS disks » Greaseweazled » dfs_box04_disk01b_adfs_welcome_disk_interleaved.adf » BallBot/DemoMOS

BallBot/DemoMOS

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 ADFS disks » Greaseweazled » dfs_box04_disk01b_adfs_welcome_disk_interleaved.adf
Filename: BallBot/DemoMOS
Read OK:
File size: 0450 bytes
Load address: FFFF0E00
Exec address: FFFF802B
File contents
   10 REM BallBot MOS for BBC 6522VIA
   20 REM (C) Dominic Ford 1998
   30 :
   40 MODE 4:HIMEM=&3000
   50 PRINT"BallBot MOS for BBC 6522VIA"'"(C) Dominic Ford 1998"''"Installing control modules..."'
   60 *TDS
   70 PRINT
   80 *DEMOAI
   90 PRINT''"Status: ON LINE"
  100 freqa=&70:freqb=&71:freqc=&72:freqd=&73:fa=&74:fb=&75:fc=&76:fd=&77
  110 ai=&E03:scan=&5003:aiout=&80
  120 FORpass=0TO2STEP2
  130 P%=&3000:[OPT pass
  140 .mos LDA#&0F:STA&FE62:LDA#&FF:STA&FE63:.moslop RTS:.scandone JSRscan:JSRai:LDAaiout:JSRsend:JMPmoslop
  150 :
  160 .send STA&100:PHA:AND#1:TAY:LDAcb2,Y:STA&FE6C:LDA&FE60:AND#&F0:STAbuild:PLA:PHA:ROR A:AND#&0F:CLC:ADCbuild:STA&FE60:PLA:AND#16:BEQnotfined:LDA&FE61:ORA#1:STA&FE61:RTS:.notfined LDA&FE61:AND#&FE:STA&FE61:RTS
  170 .cb2 EQUB&C0:EQUB&F0:.build EQUB0
  180 ]:NEXT
  190 :
  200 CALLmos
  210 REPEAT
  220 T=TIME:REPEAT UNTIL TIME>(T+15)
  230 ?&FE60=1:?&FE6C=&F0
  240 PRINTTAB(0,20)"Left: ";(?&100 AND 1);" Right: ";(?&100 AND 2);" Turbo: ";(?&100 AND 4);" Reverse: ";(?&100 AND 8)'
  250 IF (?&FE60 AND 16)<>0 THEN PRINT"*"; ELSE PRINT" ";
  260 IF (?&FE60 AND 32)<>0 THEN PRINT"*"; ELSE PRINT" ";
  270 IF (?&FE60 AND 64)<>0 THEN PRINT"*"; ELSE PRINT" ";
  280 IF (?&FE60 AND 128)<>0 THEN PRINT"*"; ELSE PRINT" ";
  290 T=TIME:REPEAT UNTIL TIME>(T+150)
  310 CALLscandone
  320 UNTIL FALSE

" � BallBot MOS for BBC 6522VIA
 � (C) Dominic Ford 1998
 :
( � 4:�=&3000
2] �"BallBot MOS for BBC 6522VIA"'"(C) Dominic Ford 1998"''"Installing control modules..."'
<	 *TDS
F �
P *DEMOAI
Z �''"Status: ON LINE"
dH freqa=&70:freqb=&71:freqc=&72:freqd=&73:fa=&74:fb=&75:fc=&76:fd=&77
n! ai=&E03:scan=&5003:aiout=&80
x �pass=0�2�2
� P%=&3000:[OPT pass
�j .mos LDA#&0F:STA&FE62:LDA#&FF:STA&FE63:.moslop RTS:.scandone JSRscan:JSRai:LDAaiout:JSRsend:JMPmoslop
� :
�� .send STA&100:PHA:�#1:TAY:LDAcb2,Y:STA&FE6C:LDA&FE60:�#&F0:STAbuild:PLA:PHA:ROR A:�#&0F:CLC:ADCbuild:STA&FE60:PLA:�#16:BEQnotfined:LDA&FE61:�A#1:STA&FE61:RTS:.notfined LDA&FE61:�#&FE:STA&FE61:RTS
�& .cb2 EQUB&C0:EQUB&F0:.build EQUB0
� ]:�
� :
�	 �mos
� �
� T=�:� � �>(T+15)
� ?&FE60=1:?&FE6C=&F0
�h �0,20)"Left: ";(?&100 � 1);" Right: ";(?&100 � 2);" Turbo: ";(?&100 � 4);" Reverse: ";(?&100 � 8)'
�' � (?&FE60 � 16)<>0 � �"*"; � �" ";
' � (?&FE60 � 32)<>0 � �"*"; � �" ";
' � (?&FE60 � 64)<>0 � �"*"; � �" ";
( � (?&FE60 � 128)<>0 � �"*"; � �" ";
" T=�:� � �>(T+150)
6 �scandone
@ � �
�
00000000  0d 00 0a 22 20 f4 20 42  61 6c 6c 42 6f 74 20 4d  |..." . BallBot M|
00000010  4f 53 20 66 6f 72 20 42  42 43 20 36 35 32 32 56  |OS for BBC 6522V|
00000020  49 41 0d 00 14 1c 20 f4  20 28 43 29 20 44 6f 6d  |IA.... . (C) Dom|
00000030  69 6e 69 63 20 46 6f 72  64 20 31 39 39 38 0d 00  |inic Ford 1998..|
00000040  1e 06 20 3a 0d 00 28 10  20 eb 20 34 3a d3 3d 26  |.. :..(. . 4:.=&|
00000050  33 30 30 30 0d 00 32 5d  20 f1 22 42 61 6c 6c 42  |3000..2] ."BallB|
00000060  6f 74 20 4d 4f 53 20 66  6f 72 20 42 42 43 20 36  |ot MOS for BBC 6|
00000070  35 32 32 56 49 41 22 27  22 28 43 29 20 44 6f 6d  |522VIA"'"(C) Dom|
00000080  69 6e 69 63 20 46 6f 72  64 20 31 39 39 38 22 27  |inic Ford 1998"'|
00000090  27 22 49 6e 73 74 61 6c  6c 69 6e 67 20 63 6f 6e  |'"Installing con|
000000a0  74 72 6f 6c 20 6d 6f 64  75 6c 65 73 2e 2e 2e 22  |trol modules..."|
000000b0  27 0d 00 3c 09 20 2a 54  44 53 0d 00 46 06 20 f1  |'..<. *TDS..F. .|
000000c0  0d 00 50 0c 20 2a 44 45  4d 4f 41 49 0d 00 5a 19  |..P. *DEMOAI..Z.|
000000d0  20 f1 27 27 22 53 74 61  74 75 73 3a 20 4f 4e 20  | .''"Status: ON |
000000e0  4c 49 4e 45 22 0d 00 64  48 20 66 72 65 71 61 3d  |LINE"..dH freqa=|
000000f0  26 37 30 3a 66 72 65 71  62 3d 26 37 31 3a 66 72  |&70:freqb=&71:fr|
00000100  65 71 63 3d 26 37 32 3a  66 72 65 71 64 3d 26 37  |eqc=&72:freqd=&7|
00000110  33 3a 66 61 3d 26 37 34  3a 66 62 3d 26 37 35 3a  |3:fa=&74:fb=&75:|
00000120  66 63 3d 26 37 36 3a 66  64 3d 26 37 37 0d 00 6e  |fc=&76:fd=&77..n|
00000130  21 20 61 69 3d 26 45 30  33 3a 73 63 61 6e 3d 26  |! ai=&E03:scan=&|
00000140  35 30 30 33 3a 61 69 6f  75 74 3d 26 38 30 0d 00  |5003:aiout=&80..|
00000150  78 10 20 e3 70 61 73 73  3d 30 b8 32 88 32 0d 00  |x. .pass=0.2.2..|
00000160  82 17 20 50 25 3d 26 33  30 30 30 3a 5b 4f 50 54  |.. P%=&3000:[OPT|
00000170  20 70 61 73 73 0d 00 8c  6a 20 2e 6d 6f 73 20 4c  | pass...j .mos L|
00000180  44 41 23 26 30 46 3a 53  54 41 26 46 45 36 32 3a  |DA#&0F:STA&FE62:|
00000190  4c 44 41 23 26 46 46 3a  53 54 41 26 46 45 36 33  |LDA#&FF:STA&FE63|
000001a0  3a 2e 6d 6f 73 6c 6f 70  20 52 54 53 3a 2e 73 63  |:.moslop RTS:.sc|
000001b0  61 6e 64 6f 6e 65 20 4a  53 52 73 63 61 6e 3a 4a  |andone JSRscan:J|
000001c0  53 52 61 69 3a 4c 44 41  61 69 6f 75 74 3a 4a 53  |SRai:LDAaiout:JS|
000001d0  52 73 65 6e 64 3a 4a 4d  50 6d 6f 73 6c 6f 70 0d  |Rsend:JMPmoslop.|
000001e0  00 96 06 20 3a 0d 00 a0  c8 20 2e 73 65 6e 64 20  |... :.... .send |
000001f0  53 54 41 26 31 30 30 3a  50 48 41 3a 80 23 31 3a  |STA&100:PHA:.#1:|
00000200  54 41 59 3a 4c 44 41 63  62 32 2c 59 3a 53 54 41  |TAY:LDAcb2,Y:STA|
00000210  26 46 45 36 43 3a 4c 44  41 26 46 45 36 30 3a 80  |&FE6C:LDA&FE60:.|
00000220  23 26 46 30 3a 53 54 41  62 75 69 6c 64 3a 50 4c  |#&F0:STAbuild:PL|
00000230  41 3a 50 48 41 3a 52 4f  52 20 41 3a 80 23 26 30  |A:PHA:ROR A:.#&0|
00000240  46 3a 43 4c 43 3a 41 44  43 62 75 69 6c 64 3a 53  |F:CLC:ADCbuild:S|
00000250  54 41 26 46 45 36 30 3a  50 4c 41 3a 80 23 31 36  |TA&FE60:PLA:.#16|
00000260  3a 42 45 51 6e 6f 74 66  69 6e 65 64 3a 4c 44 41  |:BEQnotfined:LDA|
00000270  26 46 45 36 31 3a 84 41  23 31 3a 53 54 41 26 46  |&FE61:.A#1:STA&F|
00000280  45 36 31 3a 52 54 53 3a  2e 6e 6f 74 66 69 6e 65  |E61:RTS:.notfine|
00000290  64 20 4c 44 41 26 46 45  36 31 3a 80 23 26 46 45  |d LDA&FE61:.#&FE|
000002a0  3a 53 54 41 26 46 45 36  31 3a 52 54 53 0d 00 aa  |:STA&FE61:RTS...|
000002b0  26 20 2e 63 62 32 20 45  51 55 42 26 43 30 3a 45  |& .cb2 EQUB&C0:E|
000002c0  51 55 42 26 46 30 3a 2e  62 75 69 6c 64 20 45 51  |QUB&F0:.build EQ|
000002d0  55 42 30 0d 00 b4 08 20  5d 3a ed 0d 00 be 06 20  |UB0.... ]:..... |
000002e0  3a 0d 00 c8 09 20 d6 6d  6f 73 0d 00 d2 06 20 f5  |:.... .mos.... .|
000002f0  0d 00 dc 15 20 54 3d 91  3a f5 20 fd 20 91 3e 28  |.... T=.:. . .>(|
00000300  54 2b 31 35 29 0d 00 e6  18 20 3f 26 46 45 36 30  |T+15).... ?&FE60|
00000310  3d 31 3a 3f 26 46 45 36  43 3d 26 46 30 0d 00 f0  |=1:?&FE6C=&F0...|
00000320  68 20 f1 8a 30 2c 32 30  29 22 4c 65 66 74 3a 20  |h ..0,20)"Left: |
00000330  22 3b 28 3f 26 31 30 30  20 80 20 31 29 3b 22 20  |";(?&100 . 1);" |
00000340  52 69 67 68 74 3a 20 22  3b 28 3f 26 31 30 30 20  |Right: ";(?&100 |
00000350  80 20 32 29 3b 22 20 54  75 72 62 6f 3a 20 22 3b  |. 2);" Turbo: ";|
00000360  28 3f 26 31 30 30 20 80  20 34 29 3b 22 20 52 65  |(?&100 . 4);" Re|
00000370  76 65 72 73 65 3a 20 22  3b 28 3f 26 31 30 30 20  |verse: ";(?&100 |
00000380  80 20 38 29 27 0d 00 fa  27 20 e7 20 28 3f 26 46  |. 8)'...' . (?&F|
00000390  45 36 30 20 80 20 31 36  29 3c 3e 30 20 8c 20 f1  |E60 . 16)<>0 . .|
000003a0  22 2a 22 3b 20 8b 20 f1  22 20 22 3b 0d 01 04 27  |"*"; . ." ";...'|
000003b0  20 e7 20 28 3f 26 46 45  36 30 20 80 20 33 32 29  | . (?&FE60 . 32)|
000003c0  3c 3e 30 20 8c 20 f1 22  2a 22 3b 20 8b 20 f1 22  |<>0 . ."*"; . ."|
000003d0  20 22 3b 0d 01 0e 27 20  e7 20 28 3f 26 46 45 36  | ";...' . (?&FE6|
000003e0  30 20 80 20 36 34 29 3c  3e 30 20 8c 20 f1 22 2a  |0 . 64)<>0 . ."*|
000003f0  22 3b 20 8b 20 f1 22 20  22 3b 0d 01 18 28 20 e7  |"; . ." ";...( .|
00000400  20 28 3f 26 46 45 36 30  20 80 20 31 32 38 29 3c  | (?&FE60 . 128)<|
00000410  3e 30 20 8c 20 f1 22 2a  22 3b 20 8b 20 f1 22 20  |>0 . ."*"; . ." |
00000420  22 3b 0d 01 22 16 20 54  3d 91 3a f5 20 fd 20 91  |";..". T=.:. . .|
00000430  3e 28 54 2b 31 35 30 29  0d 01 36 0e 20 d6 73 63  |>(T+150)..6. .sc|
00000440  61 6e 64 6f 6e 65 0d 01  40 08 20 fd 20 a3 0d ff  |andone..@. . ...|
00000450
BallBot/DemoMOS.m0
BallBot/DemoMOS.m1
BallBot/DemoMOS.m2
BallBot/DemoMOS.m4
BallBot/DemoMOS.m5