Home » Archimedes archive » Acorn User » AU 1995-12 B.adf » Spobbleoid » !SpobDemo/Disc2/Spobble/Starter

!SpobDemo/Disc2/Spobble/Starter

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 » Acorn User » AU 1995-12 B.adf » Spobbleoid
Filename: !SpobDemo/Disc2/Spobble/Starter
Read OK:
File size: 03F3 bytes
Load address: 0000
Exec address: 0000
File contents
   10 REM ><Disc2>.Spobble.Starter
   20 DIM CODE &100
   30 FORT%=0TO2STEP2:P%=CODE:[OPT T%
   40 .Uncom STMFD R13!,{R14}:LDR R1,RD:LDR R0,SC:LDR R4,LE:.EX1 LDRB R2,[R1],#1:LDRB R3,[R1],#1:.EX2 STRB R2,[R0],#1:SUB R4,R4,#1:SUBS R3,R3,#1:BGT EX2:CMP R4,#0:BGT EX1:LDMFD R13!,{PC}:.RD EQUD0:.SC EQUD0:.LE EQUD0:]:NEXT
   50 DIM BUFF 4096
   60 OSCLI"LOAD <DISC2>.SPOBBLE.DATA.ANDNOW "+STR$~BUFF
   70 MODE9:OFF:FORT=0TO15:VDU19,T,0;0;:NEXT:!RD=BUFF:!SC=S%:!LE=&A000:CALL Uncom
   80 FORT=0TO15:VDU19,0,16,T*16,T*16,T*16:WAIT:WAIT:NEXT
   90 *TUNING 0
  100 VOICES 4:*FX15
  110 *CHANNELVOICE 1 ExtensionMod
  120 *CHANNELVOICE 2 ExtensionMod
  130 *CHANNELVOICE 3 ExtensionMod
  140 *CHANNELVOICE 4 ExtensionMod
  150 SYS"ExS_MusicStop":SYS"ExS_SampleRate",4:SYS"ExS_MusicVolume",127
  160 *SET Sounds$Dir <Disc2>.SPOBBLE.DATA
  170 SDAT=&15000:MDAT=SDAT+80*1024:SYS"ExS_Workspace",SDAT,80*1024:SYS"ExS_MusicWork",MDAT,10*1024
  180 *MUSICLOAD <Disc2>.SPOBBLE.DATA.PFTS
  190 Q%=2
  200 SOUND1,-15,0,0:SOUND2,-15,0,0:SOUND3,-15,0,0:SOUND4,-15,0,0
  210 FORT=15TO0STEP-1:VDU19,0,16,T*16,T*16,T*16:WAIT:NEXT:CLS
  220 CHAIN"<Disc2>.Spobble.Starter2"

 � ><Disc2>.Spobble.Starter
 � CODE &100
 �T%=0�2�2:P%=CODE:[OPT T%
(� .Uncom STMFD R13!,{R14}:LDR R1,RD:LDR R0,SC:LDR R4,LE:.EX1 LDRB R2,[R1],#1:LDRB R3,[R1],#1:.EX2 STRB R2,[R0],#1:SUB R4,R4,#1:SUBS R3,R3,#1:BGT EX2:CMP R4,#0:BGT EX1:LDMFD R13!,{PC}:.RD EQUD0:.SC EQUD0:.LE EQUD0:]:�
2 � BUFF 4096
<0 �"LOAD <DISC2>.SPOBBLE.DATA.ANDNOW "+�~BUFF
F@ �9:�:�T=0�15:�19,T,0;0;:�:!RD=BUFF:!SC=S%:!LE=&A000:� Uncom
P, �T=0�15:�19,0,16,T*16,T*16,T*16:Ȗ:Ȗ:�
Z *TUNING 0
d Ƞ 4:*FX15
n! *CHANNELVOICE 1 ExtensionMod
x! *CHANNELVOICE 2 ExtensionMod
�! *CHANNELVOICE 3 ExtensionMod
�! *CHANNELVOICE 4 ExtensionMod
�C ș"ExS_MusicStop":ș"ExS_SampleRate",4:ș"ExS_MusicVolume",127
�) *SET Sounds$Dir <Disc2>.SPOBBLE.DATA
�` SDAT=&15000:MDAT=SDAT+80*1024:ș"ExS_Workspace",SDAT,80*1024:ș"ExS_MusicWork",MDAT,10*1024
�) *MUSICLOAD <Disc2>.SPOBBLE.DATA.PFTS
�	 Q%=2
�0 �1,-15,0,0:�2,-15,0,0:�3,-15,0,0:�4,-15,0,0
�. �T=15�0�-1:�19,0,16,T*16,T*16,T*16:Ȗ:�:�
�  �"<Disc2>.Spobble.Starter2"
�
00000000  0d 00 0a 1f 20 f4 20 3e  3c 44 69 73 63 32 3e 2e  |.... . ><Disc2>.|
00000010  53 70 6f 62 62 6c 65 2e  53 74 61 72 74 65 72 0d  |Spobble.Starter.|
00000020  00 14 10 20 de 20 43 4f  44 45 20 26 31 30 30 0d  |... . CODE &100.|
00000030  00 1e 1e 20 e3 54 25 3d  30 b8 32 88 32 3a 50 25  |... .T%=0.2.2:P%|
00000040  3d 43 4f 44 45 3a 5b 4f  50 54 20 54 25 0d 00 28  |=CODE:[OPT T%..(|
00000050  db 20 2e 55 6e 63 6f 6d  20 53 54 4d 46 44 20 52  |. .Uncom STMFD R|
00000060  31 33 21 2c 7b 52 31 34  7d 3a 4c 44 52 20 52 31  |13!,{R14}:LDR R1|
00000070  2c 52 44 3a 4c 44 52 20  52 30 2c 53 43 3a 4c 44  |,RD:LDR R0,SC:LD|
00000080  52 20 52 34 2c 4c 45 3a  2e 45 58 31 20 4c 44 52  |R R4,LE:.EX1 LDR|
00000090  42 20 52 32 2c 5b 52 31  5d 2c 23 31 3a 4c 44 52  |B R2,[R1],#1:LDR|
000000a0  42 20 52 33 2c 5b 52 31  5d 2c 23 31 3a 2e 45 58  |B R3,[R1],#1:.EX|
000000b0  32 20 53 54 52 42 20 52  32 2c 5b 52 30 5d 2c 23  |2 STRB R2,[R0],#|
000000c0  31 3a 53 55 42 20 52 34  2c 52 34 2c 23 31 3a 53  |1:SUB R4,R4,#1:S|
000000d0  55 42 53 20 52 33 2c 52  33 2c 23 31 3a 42 47 54  |UBS R3,R3,#1:BGT|
000000e0  20 45 58 32 3a 43 4d 50  20 52 34 2c 23 30 3a 42  | EX2:CMP R4,#0:B|
000000f0  47 54 20 45 58 31 3a 4c  44 4d 46 44 20 52 31 33  |GT EX1:LDMFD R13|
00000100  21 2c 7b 50 43 7d 3a 2e  52 44 20 45 51 55 44 30  |!,{PC}:.RD EQUD0|
00000110  3a 2e 53 43 20 45 51 55  44 30 3a 2e 4c 45 20 45  |:.SC EQUD0:.LE E|
00000120  51 55 44 30 3a 5d 3a ed  0d 00 32 10 20 de 20 42  |QUD0:]:...2. . B|
00000130  55 46 46 20 34 30 39 36  0d 00 3c 30 20 ff 22 4c  |UFF 4096..<0 ."L|
00000140  4f 41 44 20 3c 44 49 53  43 32 3e 2e 53 50 4f 42  |OAD <DISC2>.SPOB|
00000150  42 4c 45 2e 44 41 54 41  2e 41 4e 44 4e 4f 57 20  |BLE.DATA.ANDNOW |
00000160  22 2b c3 7e 42 55 46 46  0d 00 46 40 20 eb 39 3a  |"+.~BUFF..F@ .9:|
00000170  87 3a e3 54 3d 30 b8 31  35 3a ef 31 39 2c 54 2c  |.:.T=0.15:.19,T,|
00000180  30 3b 30 3b 3a ed 3a 21  52 44 3d 42 55 46 46 3a  |0;0;:.:!RD=BUFF:|
00000190  21 53 43 3d 53 25 3a 21  4c 45 3d 26 41 30 30 30  |!SC=S%:!LE=&A000|
000001a0  3a d6 20 55 6e 63 6f 6d  0d 00 50 2c 20 e3 54 3d  |:. Uncom..P, .T=|
000001b0  30 b8 31 35 3a ef 31 39  2c 30 2c 31 36 2c 54 2a  |0.15:.19,0,16,T*|
000001c0  31 36 2c 54 2a 31 36 2c  54 2a 31 36 3a c8 96 3a  |16,T*16,T*16:..:|
000001d0  c8 96 3a ed 0d 00 5a 0e  20 2a 54 55 4e 49 4e 47  |..:...Z. *TUNING|
000001e0  20 30 0d 00 64 0f 20 c8  a0 20 34 3a 2a 46 58 31  | 0..d. .. 4:*FX1|
000001f0  35 0d 00 6e 21 20 2a 43  48 41 4e 4e 45 4c 56 4f  |5..n! *CHANNELVO|
00000200  49 43 45 20 31 20 45 78  74 65 6e 73 69 6f 6e 4d  |ICE 1 ExtensionM|
00000210  6f 64 0d 00 78 21 20 2a  43 48 41 4e 4e 45 4c 56  |od..x! *CHANNELV|
00000220  4f 49 43 45 20 32 20 45  78 74 65 6e 73 69 6f 6e  |OICE 2 Extension|
00000230  4d 6f 64 0d 00 82 21 20  2a 43 48 41 4e 4e 45 4c  |Mod...! *CHANNEL|
00000240  56 4f 49 43 45 20 33 20  45 78 74 65 6e 73 69 6f  |VOICE 3 Extensio|
00000250  6e 4d 6f 64 0d 00 8c 21  20 2a 43 48 41 4e 4e 45  |nMod...! *CHANNE|
00000260  4c 56 4f 49 43 45 20 34  20 45 78 74 65 6e 73 69  |LVOICE 4 Extensi|
00000270  6f 6e 4d 6f 64 0d 00 96  43 20 c8 99 22 45 78 53  |onMod...C .."ExS|
00000280  5f 4d 75 73 69 63 53 74  6f 70 22 3a c8 99 22 45  |_MusicStop":.."E|
00000290  78 53 5f 53 61 6d 70 6c  65 52 61 74 65 22 2c 34  |xS_SampleRate",4|
000002a0  3a c8 99 22 45 78 53 5f  4d 75 73 69 63 56 6f 6c  |:.."ExS_MusicVol|
000002b0  75 6d 65 22 2c 31 32 37  0d 00 a0 29 20 2a 53 45  |ume",127...) *SE|
000002c0  54 20 53 6f 75 6e 64 73  24 44 69 72 20 3c 44 69  |T Sounds$Dir <Di|
000002d0  73 63 32 3e 2e 53 50 4f  42 42 4c 45 2e 44 41 54  |sc2>.SPOBBLE.DAT|
000002e0  41 0d 00 aa 60 20 53 44  41 54 3d 26 31 35 30 30  |A...` SDAT=&1500|
000002f0  30 3a 4d 44 41 54 3d 53  44 41 54 2b 38 30 2a 31  |0:MDAT=SDAT+80*1|
00000300  30 32 34 3a c8 99 22 45  78 53 5f 57 6f 72 6b 73  |024:.."ExS_Works|
00000310  70 61 63 65 22 2c 53 44  41 54 2c 38 30 2a 31 30  |pace",SDAT,80*10|
00000320  32 34 3a c8 99 22 45 78  53 5f 4d 75 73 69 63 57  |24:.."ExS_MusicW|
00000330  6f 72 6b 22 2c 4d 44 41  54 2c 31 30 2a 31 30 32  |ork",MDAT,10*102|
00000340  34 0d 00 b4 29 20 2a 4d  55 53 49 43 4c 4f 41 44  |4...) *MUSICLOAD|
00000350  20 3c 44 69 73 63 32 3e  2e 53 50 4f 42 42 4c 45  | <Disc2>.SPOBBLE|
00000360  2e 44 41 54 41 2e 50 46  54 53 0d 00 be 09 20 51  |.DATA.PFTS.... Q|
00000370  25 3d 32 0d 00 c8 30 20  d4 31 2c 2d 31 35 2c 30  |%=2...0 .1,-15,0|
00000380  2c 30 3a d4 32 2c 2d 31  35 2c 30 2c 30 3a d4 33  |,0:.2,-15,0,0:.3|
00000390  2c 2d 31 35 2c 30 2c 30  3a d4 34 2c 2d 31 35 2c  |,-15,0,0:.4,-15,|
000003a0  30 2c 30 0d 00 d2 2e 20  e3 54 3d 31 35 b8 30 88  |0,0.... .T=15.0.|
000003b0  2d 31 3a ef 31 39 2c 30  2c 31 36 2c 54 2a 31 36  |-1:.19,0,16,T*16|
000003c0  2c 54 2a 31 36 2c 54 2a  31 36 3a c8 96 3a ed 3a  |,T*16,T*16:..:.:|
000003d0  db 0d 00 dc 20 20 d7 22  3c 44 69 73 63 32 3e 2e  |....  ."<Disc2>.|
000003e0  53 70 6f 62 62 6c 65 2e  53 74 61 72 74 65 72 32  |Spobble.Starter2|
000003f0  22 0d ff                                          |"..|
000003f3