Home » Archimedes archive » Acorn Computing » 1995 01 subscription disc.adf » 9501s » MusicBox/!MusicBoxD/!Run

MusicBox/!MusicBoxD/!Run

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 Computing » 1995 01 subscription disc.adf » 9501s
Filename: MusicBox/!MusicBoxD/!Run
Read OK:
File size: 05D2 bytes
Load address: 0000
Exec address: 0000
File contents
| !Run for Music Box

| Change the below line to include the ROM voices you want to use. It should
| be a list of voice names the same as those found when you issue a *VOICES
| command. The voice names should be seperated by a single space.

SET MBROM$Instruments "WaveSynth-Beep StringLib-Soft Percussion-Snare"

| D O   N O T   C H A N G E   A N Y T H I N G   B E L O W   T H I S   L I N E
|____________________________________________________________________________
Set MusicBoxD$Dir <Obey$Dir>
Set ROMInstrumentSprites$Dir <Obey$Dir>.ROMInsts.Sprites
Set ROMInstrumentSprites22$Dir <Obey$Dir>.ROMInsts.Sprites22
RMEnsure AEHModule 1.25 RMLoad <Obey$Dir>.AEHModule
RMEnsure DummyVoice 1.00 RMLoad <Obey$Dir>.DummyVoice
IF "<MBFlag>" = "3" THEN ERROR "Music box is already loaded."
SET MBFlag 0
Set MBConfigFiles$Dir <Obey$Dir>.Configure
Set MBTuneFiles$Dir   <Obey$Dir>.Data.Tunes
Set MBBeatFiles$Dir   <Obey$Dir>.Data.Beats
Set MBChordFiles$Dir  <Obey$Dir>.Data.Chords
Set MBSoundFiles$Dir  <Obey$Dir>.Data.Sounds

Set MBInstruments$Dir       <Obey$Dir>.Data.Instrumnts
Set MBInstrumentSprites$Dir <Obey$Dir>.Data.Sprites
Set MBInstrumentSprites22$Dir <Obey$Dir>.Data.Sprites22
Iconsprites <Obey$Dir>.!Sprites

|RMEnsure MusicBox 2.00 RMLoad <Obey$Dir>.MBLd
RMEnsure AEHProc 1.00 RMLoad <Obey$Dir>.AEHProc
WimpSlot -min 600k -max 600k
Run <Obey$Dir>.WimpMsg
|RMEnsure MusicBox 1.00 RMLoad <Obey$Dir>.MusicBox
WimpSlot -min 600k -max 600k
IF "<MBFLAG>"=256 THEN Run <Obey$Dir>.!RunImage
00000000  7c 20 21 52 75 6e 20 66  6f 72 20 4d 75 73 69 63  || !Run for Music|
00000010  20 42 6f 78 0a 0a 7c 20  43 68 61 6e 67 65 20 74  | Box..| Change t|
00000020  68 65 20 62 65 6c 6f 77  20 6c 69 6e 65 20 74 6f  |he below line to|
00000030  20 69 6e 63 6c 75 64 65  20 74 68 65 20 52 4f 4d  | include the ROM|
00000040  20 76 6f 69 63 65 73 20  79 6f 75 20 77 61 6e 74  | voices you want|
00000050  20 74 6f 20 75 73 65 2e  20 49 74 20 73 68 6f 75  | to use. It shou|
00000060  6c 64 0a 7c 20 62 65 20  61 20 6c 69 73 74 20 6f  |ld.| be a list o|
00000070  66 20 76 6f 69 63 65 20  6e 61 6d 65 73 20 74 68  |f voice names th|
00000080  65 20 73 61 6d 65 20 61  73 20 74 68 6f 73 65 20  |e same as those |
00000090  66 6f 75 6e 64 20 77 68  65 6e 20 79 6f 75 20 69  |found when you i|
000000a0  73 73 75 65 20 61 20 2a  56 4f 49 43 45 53 0a 7c  |ssue a *VOICES.||
000000b0  20 63 6f 6d 6d 61 6e 64  2e 20 54 68 65 20 76 6f  | command. The vo|
000000c0  69 63 65 20 6e 61 6d 65  73 20 73 68 6f 75 6c 64  |ice names should|
000000d0  20 62 65 20 73 65 70 65  72 61 74 65 64 20 62 79  | be seperated by|
000000e0  20 61 20 73 69 6e 67 6c  65 20 73 70 61 63 65 2e  | a single space.|
000000f0  0a 0a 53 45 54 20 4d 42  52 4f 4d 24 49 6e 73 74  |..SET MBROM$Inst|
00000100  72 75 6d 65 6e 74 73 20  22 57 61 76 65 53 79 6e  |ruments "WaveSyn|
00000110  74 68 2d 42 65 65 70 20  53 74 72 69 6e 67 4c 69  |th-Beep StringLi|
00000120  62 2d 53 6f 66 74 20 50  65 72 63 75 73 73 69 6f  |b-Soft Percussio|
00000130  6e 2d 53 6e 61 72 65 22  0a 0a 7c 20 44 20 4f 20  |n-Snare"..| D O |
00000140  20 20 4e 20 4f 20 54 20  20 20 43 20 48 20 41 20  |  N O T   C H A |
00000150  4e 20 47 20 45 20 20 20  41 20 4e 20 59 20 54 20  |N G E   A N Y T |
00000160  48 20 49 20 4e 20 47 20  20 20 42 20 45 20 4c 20  |H I N G   B E L |
00000170  4f 20 57 20 20 20 54 20  48 20 49 20 53 20 20 20  |O W   T H I S   |
00000180  4c 20 49 20 4e 20 45 0a  7c 5f 5f 5f 5f 5f 5f 5f  |L I N E.|_______|
00000190  5f 5f 5f 5f 5f 5f 5f 5f  5f 5f 5f 5f 5f 5f 5f 5f  |________________|
*
000001d0  5f 5f 5f 5f 5f 0a 53 65  74 20 4d 75 73 69 63 42  |_____.Set MusicB|
000001e0  6f 78 44 24 44 69 72 20  3c 4f 62 65 79 24 44 69  |oxD$Dir <Obey$Di|
000001f0  72 3e 0a 53 65 74 20 52  4f 4d 49 6e 73 74 72 75  |r>.Set ROMInstru|
00000200  6d 65 6e 74 53 70 72 69  74 65 73 24 44 69 72 20  |mentSprites$Dir |
00000210  3c 4f 62 65 79 24 44 69  72 3e 2e 52 4f 4d 49 6e  |<Obey$Dir>.ROMIn|
00000220  73 74 73 2e 53 70 72 69  74 65 73 0a 53 65 74 20  |sts.Sprites.Set |
00000230  52 4f 4d 49 6e 73 74 72  75 6d 65 6e 74 53 70 72  |ROMInstrumentSpr|
00000240  69 74 65 73 32 32 24 44  69 72 20 3c 4f 62 65 79  |ites22$Dir <Obey|
00000250  24 44 69 72 3e 2e 52 4f  4d 49 6e 73 74 73 2e 53  |$Dir>.ROMInsts.S|
00000260  70 72 69 74 65 73 32 32  0a 52 4d 45 6e 73 75 72  |prites22.RMEnsur|
00000270  65 20 41 45 48 4d 6f 64  75 6c 65 20 31 2e 32 35  |e AEHModule 1.25|
00000280  20 52 4d 4c 6f 61 64 20  3c 4f 62 65 79 24 44 69  | RMLoad <Obey$Di|
00000290  72 3e 2e 41 45 48 4d 6f  64 75 6c 65 0a 52 4d 45  |r>.AEHModule.RME|
000002a0  6e 73 75 72 65 20 44 75  6d 6d 79 56 6f 69 63 65  |nsure DummyVoice|
000002b0  20 31 2e 30 30 20 52 4d  4c 6f 61 64 20 3c 4f 62  | 1.00 RMLoad <Ob|
000002c0  65 79 24 44 69 72 3e 2e  44 75 6d 6d 79 56 6f 69  |ey$Dir>.DummyVoi|
000002d0  63 65 0a 49 46 20 22 3c  4d 42 46 6c 61 67 3e 22  |ce.IF "<MBFlag>"|
000002e0  20 3d 20 22 33 22 20 54  48 45 4e 20 45 52 52 4f  | = "3" THEN ERRO|
000002f0  52 20 22 4d 75 73 69 63  20 62 6f 78 20 69 73 20  |R "Music box is |
00000300  61 6c 72 65 61 64 79 20  6c 6f 61 64 65 64 2e 22  |already loaded."|
00000310  0a 53 45 54 20 4d 42 46  6c 61 67 20 30 0a 53 65  |.SET MBFlag 0.Se|
00000320  74 20 4d 42 43 6f 6e 66  69 67 46 69 6c 65 73 24  |t MBConfigFiles$|
00000330  44 69 72 20 3c 4f 62 65  79 24 44 69 72 3e 2e 43  |Dir <Obey$Dir>.C|
00000340  6f 6e 66 69 67 75 72 65  0a 53 65 74 20 4d 42 54  |onfigure.Set MBT|
00000350  75 6e 65 46 69 6c 65 73  24 44 69 72 20 20 20 3c  |uneFiles$Dir   <|
00000360  4f 62 65 79 24 44 69 72  3e 2e 44 61 74 61 2e 54  |Obey$Dir>.Data.T|
00000370  75 6e 65 73 0a 53 65 74  20 4d 42 42 65 61 74 46  |unes.Set MBBeatF|
00000380  69 6c 65 73 24 44 69 72  20 20 20 3c 4f 62 65 79  |iles$Dir   <Obey|
00000390  24 44 69 72 3e 2e 44 61  74 61 2e 42 65 61 74 73  |$Dir>.Data.Beats|
000003a0  0a 53 65 74 20 4d 42 43  68 6f 72 64 46 69 6c 65  |.Set MBChordFile|
000003b0  73 24 44 69 72 20 20 3c  4f 62 65 79 24 44 69 72  |s$Dir  <Obey$Dir|
000003c0  3e 2e 44 61 74 61 2e 43  68 6f 72 64 73 0a 53 65  |>.Data.Chords.Se|
000003d0  74 20 4d 42 53 6f 75 6e  64 46 69 6c 65 73 24 44  |t MBSoundFiles$D|
000003e0  69 72 20 20 3c 4f 62 65  79 24 44 69 72 3e 2e 44  |ir  <Obey$Dir>.D|
000003f0  61 74 61 2e 53 6f 75 6e  64 73 0a 0a 53 65 74 20  |ata.Sounds..Set |
00000400  4d 42 49 6e 73 74 72 75  6d 65 6e 74 73 24 44 69  |MBInstruments$Di|
00000410  72 20 20 20 20 20 20 20  3c 4f 62 65 79 24 44 69  |r       <Obey$Di|
00000420  72 3e 2e 44 61 74 61 2e  49 6e 73 74 72 75 6d 6e  |r>.Data.Instrumn|
00000430  74 73 0a 53 65 74 20 4d  42 49 6e 73 74 72 75 6d  |ts.Set MBInstrum|
00000440  65 6e 74 53 70 72 69 74  65 73 24 44 69 72 20 3c  |entSprites$Dir <|
00000450  4f 62 65 79 24 44 69 72  3e 2e 44 61 74 61 2e 53  |Obey$Dir>.Data.S|
00000460  70 72 69 74 65 73 0a 53  65 74 20 4d 42 49 6e 73  |prites.Set MBIns|
00000470  74 72 75 6d 65 6e 74 53  70 72 69 74 65 73 32 32  |trumentSprites22|
00000480  24 44 69 72 20 3c 4f 62  65 79 24 44 69 72 3e 2e  |$Dir <Obey$Dir>.|
00000490  44 61 74 61 2e 53 70 72  69 74 65 73 32 32 0a 49  |Data.Sprites22.I|
000004a0  63 6f 6e 73 70 72 69 74  65 73 20 3c 4f 62 65 79  |consprites <Obey|
000004b0  24 44 69 72 3e 2e 21 53  70 72 69 74 65 73 0a 0a  |$Dir>.!Sprites..|
000004c0  7c 52 4d 45 6e 73 75 72  65 20 4d 75 73 69 63 42  ||RMEnsure MusicB|
000004d0  6f 78 20 32 2e 30 30 20  52 4d 4c 6f 61 64 20 3c  |ox 2.00 RMLoad <|
000004e0  4f 62 65 79 24 44 69 72  3e 2e 4d 42 4c 64 0a 52  |Obey$Dir>.MBLd.R|
000004f0  4d 45 6e 73 75 72 65 20  41 45 48 50 72 6f 63 20  |MEnsure AEHProc |
00000500  31 2e 30 30 20 52 4d 4c  6f 61 64 20 3c 4f 62 65  |1.00 RMLoad <Obe|
00000510  79 24 44 69 72 3e 2e 41  45 48 50 72 6f 63 0a 57  |y$Dir>.AEHProc.W|
00000520  69 6d 70 53 6c 6f 74 20  2d 6d 69 6e 20 36 30 30  |impSlot -min 600|
00000530  6b 20 2d 6d 61 78 20 36  30 30 6b 0a 52 75 6e 20  |k -max 600k.Run |
00000540  3c 4f 62 65 79 24 44 69  72 3e 2e 57 69 6d 70 4d  |<Obey$Dir>.WimpM|
00000550  73 67 0a 7c 52 4d 45 6e  73 75 72 65 20 4d 75 73  |sg.|RMEnsure Mus|
00000560  69 63 42 6f 78 20 31 2e  30 30 20 52 4d 4c 6f 61  |icBox 1.00 RMLoa|
00000570  64 20 3c 4f 62 65 79 24  44 69 72 3e 2e 4d 75 73  |d <Obey$Dir>.Mus|
00000580  69 63 42 6f 78 0a 57 69  6d 70 53 6c 6f 74 20 2d  |icBox.WimpSlot -|
00000590  6d 69 6e 20 36 30 30 6b  20 2d 6d 61 78 20 36 30  |min 600k -max 60|
000005a0  30 6b 0a 49 46 20 22 3c  4d 42 46 4c 41 47 3e 22  |0k.IF "<MBFLAG>"|
000005b0  3d 32 35 36 20 54 48 45  4e 20 52 75 6e 20 3c 4f  |=256 THEN Run <O|
000005c0  62 65 79 24 44 69 72 3e  2e 21 52 75 6e 49 6d 61  |bey$Dir>.!RunIma|
000005d0  67 65                                             |ge|
000005d2