home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
No Fragments Archive 10: Diskmags
/
nf_archive_10.iso
/
MAGS
/
LEDGERS
/
LEDG_07B.MSA
/
SOURCE
/
MR_MUSIC.V2
/
MR_MUSIC.TXT
< prev
next >
Wrap
Text File
|
1985-11-20
|
10KB
|
210 lines
He's back, and he's wearing a skirt! THE PHANTOM has awoken and stepped out
of his coffin yet again to bestow unto his fellow comrades the new, cleaner,
greener...
*\*\*\*\** MR MUSIC **/*/*/*/*
Version 2
Mr music and all its affiliated programs are public domain as long as it is
in an unmodified form and the following files are supplied with it.
MR_MUSIC.XRT The actual player.
MR_MUSIC.TXT This text file.
PLAY_MR.S Example player program.
The Quartet to Mr Music convertors are available through CONTACT BBS, London
England on +44 081 646 0746, running from 9PM to 9AM (UK time) with speeds
from 300/300 to 2400/2400 (and 9600 on request), as well as example .EIT and
.SNG files. They have been excluded from this version in case anyone wants
to upgrade from the old version and not want to download the convertors
AGAIN! If you do not have a modem and want the convertors, please contact
THE PHANTOM at the address at the end of this document (with an enclosed
disk) and he will send them to you. Please note that you do not have to pay
for reply postage - just as long as you send a disk though!
SO WHAT IS NEW IN VERSION 2?
Basically, version two is 5% faster (Jee, I can do 3D in a frame now!) and is
a lot more cleaner with the sample handling. Matrixx of ST Squad was playing
about with a certain technique and so Griff developed on that and improved
the clarity of the player (you can hardly tell it from version 1, but this
one's 100% accurate). Using this technique, Griff knocked down the register
usage down to D7 and USP. So now, only D7 and the user stack pointer are
used in the sample player interrupt. It also means a saving of about 4% from
the old player. Also, The Phantom sped up his music driver so now it does
not jump about (in CPU time) as much and in general is about 1% faster (how
fast CAN you get?!). The driver took very little time anyway, but we thought
we might as well! In all, it is WAY better than the original, and offers
much more refined features too. Also, ole Uncle Phanty improved the sound
tables so now a much more crisper and basy sound will emerge from your
loudspeaker.
SECTION 1 - PLAYING BACK A MR_MUSIC FILE.
First of all, a Quartet song and voice set need to be converted. For
anyone there groaning about no Soundtracker convertors, there will be one, as
soon as we find someone who will be willing to do one (Griff might, but he's
a right lazy bastard!).
The example .S file will demonstrate how to play back a Mr Music song, but
here's how it is done:
'Offset' is the offset (in bytes) from the start of the MR_MUSIC.XRT playback
routine, and in DECIMAL.
Firstly, we place the (LONGWORD) address of the .SNG file into the player at
offset 24.
Secondly we place the (LONGWORD) address of the .EIT file into the player at
offset 28.
Thirdly we place the (LONGWORD) address of 32768 bytes of free space. This
space is needed for Mr Music to generate some tables. Please DO NOT alter
any of these values in these tables (after they are generated) or you wil get
some WEIRD sounds!
Now make sure you have installed your VBL with the call routine in it (see
below).
Now we initialise Mr Music with a JSR or BSR at offset 0.
Now you HAVE to call Mr Music every VBL with a JSR or BSR at offset 12. If
you don't do this, it will not play!
To stop playing Mr Music, just JSR or BSR at offset 8. It is best that you
switch off interrupts (a MOVE to SR will do this) before you do this.
More offsets... The Mr Music interrupt automatically sets SR to $2500 every
time it plays so you can have flicker-free rasters or whatever. If you want
to grab that extra CPU time and don't want this feature, just JSR or BSR at
offset 16. To enable it back on, a JSR or BSR at offset 20 will do this.
Please note that as a default it lowers the SR to $2500.
If you want a new tune to be played while Mr Music is playing, then store the
new tunes' address at offset 24 (as above) and then JSR or BSR at offset 4.
Note that this takes a fair amount of CPU (about 20 screenlines worth) to do
its work before actually playing the new tune.
So here is an overview of the offsets:
OFFSET FUNCTION
------ --------
* ROUTINES *
0 Initialise Mr Music and start player.
4 New tune. When a new tune is to be played.
12 The sequencer itself.
16 The SR is NOT lowered to $2500.
20 The SR is lowered to $2500.
* STORAGE *
24 Address of tune (longword).
28 Address of voice set (longword).
32 Address of 32768 bytes of free space (longword).
SECTION 2 - TECHNICAL NOTES.
The VBL handler in Mr Music takes an extortionate amount of CPU time and uses
every single register. Make sure that any interrupts above IPL $2300
occuring between the VBL and sreenline 16 (see paragraph below) do not use
these registers. You can save these registers in your interrupt if it is
needed in that area. The actual sample interrupt uses D7 and USP and you
must NOT touch these registers at any point unless a higher priority
interrupt saves them and restores them. The sample interrupt, as in the old
version of Mr Music uses TIMER D, so it leaves you with a host of other
higher priority timers to work with.
If you ARE doing rasters with Mr Music playing in the background, then we
suggest that you do not use any registers (in the HBL interrupt) in the first
16 lines of the screen (actually it is less but make it 16 to be safe). This
is because the VBL sequencer is still enabled at that point, and it uses all
registers it can for speed. If you want fast rasters, then make the first 16
rasters use no registers, then the rest can use any registers you like (with
the exception of D7 and USP).
The old Mr Music had a limitation to how much other interrupts can take.
Version two (this one!) has no such problem - well, if you DO go overboard on
your interrupts then it WILL have a problem, but generally it can tolerate
quite an amazing amount of interrupts (the ego-trippers intro The Phantom did
is an example of this).
The Quartet songs knacker the player (I.E. play all out of time) at certain
tempo values. The ones we have found to work perfectly with Mr Music are
187,230,250 and 300. We don't know if there are any others, since these are
the only speeds we use anyway!! Also beware of empty voices. Griff left out
a safety feature in the convertor so that means you have to check for this:
if there are any voices you are not using, then put a rest in them. I.E. if
you are not using voice 3, then shove a rest in it instead of leaving it
emplty (any length rest will do). Failure to do this will make Mr Music
crash.
It is best to have your original Quartet song file at 11Khz. Griff's
convertor is really quite shit at converting sample frequencies down, so it's
best to use Quartet's excellent DIGITAL to convert down to 11Khz.
'40%?? That's a LOT!' No it isn't! 40% is piddly compared to the registers
you have left and the quality of the sound. Other 'soundtrackers' use up 60%
or more, and that is at a lesser quality too!! If you STILL think that is
too much, then you are not trying hard enough. Why? Well, just have a look
at the ego trippers intro, or the Things Not To Do Demo (Yup! The main tune
uses Mr Music) or the example Mr Music Demoette The Phantom did to show that
all is not lost at 60% CPU left!
SECTION 3 - THE END and things.
The Phantom here:
Evening everyone! I might as well say that with the advent of MSC (Monster
Sound Cartridge) I was very tempted to write an output routine for it. But I
didn't. It's shit. I mean, it is! The only output device I find good (and
fastest) is the replay cartridge. The Stereo Replay cartridge is nice, but
it's shit slow to output to, but much better than MSC. I will do a Replay
output version soon (and MV16 - I like that!), but no specific MSC (sorry,
but there I was, wide-eyed and looking forward to the MSC specs and they let
me down).
Also, for all those grumpy bastards that can't do anything in 60% (!!) I have
done a demo program with nice parallax scrolling and all that! So there!
You can obtain this demo from me or Contact BBS (details above).
For all those fans of SPX I have some good news. The creator is all nicely
GEMmed up and almost complete. So be patient it WILL arrive soon. I am
still working on the 512 colour 640x552 mode, but at the moment we're
wondering wether or not to go ahead with it (since we have limited colour
resolution per line). Also, Gizmo has his hands on two 24-bit colour
scanners (!) so get ready for some fab all-new SPX's!
Right, if you want any more information/programs to do with any of the above,
or more, contact The Phantom at the address below:
The Phantom,
21 Bledlow House,
Capland Street,
LONDON,
NW8 8RU
England.
If you want any programs (like the convertors etc etc) please enclose the
required disk/s.
Right, that's it, so enjoy Mr Music and may your inner ear burst with the
funkadelic sounds from your throbbing speaker!
Members of Electronic Images are:
Gizmo
The Phantom
Nightowl
Count Zero
Griff
Master
This has been an Electronic Images production!