SoundHakker 1.1 (and higher) Instruction File
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Revision : 2.0
Last Update : 30/03/93
Revision Information
~~~~~~~~~~~~~~~~~~~~
1.1 Improve disk routine error checking
Modify search routines and STplayer interupt module
1.2 Modify search routine to search for SOUNDTRAKS between &1000 and
&A000 in normal RAM. This is so that SoundHakker can be loaded
into HACKIT or similar and used from therein!
1.3 Modify LOAD routine to load SoundTrakker compiled tunes
(hereafter known as CSIT). These have a start address of &100 and
slightly confused SoundHakker!.
1.4 The LOAD routine now automatically recognises these and loads them
to the correct place in RAM.
1.5 NEW command added to convert COMPILED soundtrakker tunes to
SOUNDHAKKER flyback driven tunes. Because of the way compiled
interupt tunes work, the best thing to do with them is load them,
convert them to SOUNDHAKKER format using the INTERMOD command.
Compiled SoundTrakker Interupt tunes will not TEST correctly
1.6 General bug fixes
1.7 Improve SoundTrak information display routines
1.8 Implement 'file address too low' error checking
1.9 Add ERASE command to delete unwanted .STK files from disk
2.0 Modify CATalogue command so that the 2k buffer at the end of
SoundHakker was no longer required. Soundhakker will now search
for longer Soundtraks. This is the final version (Honest Guv!).
Disclaimer
~~~~~~~~~~
All code content is copyright the Equalizor who has kindly licensed
STS Software as the sole supplier of this program to P.D Libraries
authorised by him. This program is supplied "as is" and neither the
author nor STS Software make any warranty regarding it's operation
either implied or otherwise. Any suggestions regarding this program
should be directed to STS Software, who will pass the details to the
programmer.
Distribution Information
~~~~~~~~~~~~~~~~~~~~~~~~
The following P.D libraries and software companies are authorised to
distribute this software :-
P.D Libraries Software Houses
~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~
Robot P.D Sentinel Software
Presto P.D STS Software
Sheepsoft
The following P.D libraries are not (and never will be!) allowed to
distribute SOUNDHAKKER at the personal request of the author :-
DARTSMA P.D, MERLINS P.D
So, what's this "SOUNDHAKKER" program all about then ?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
The most flexible soundtracker for the CPC (and plus) range of micros
has been imported from Germany by Sentinel Software (081-876-7032).
Because of it's power and flexibility, it seems that most (if not
all!), music in disk fanzines, and even some games (Zap 'T' Balls) use
CPC SoundTrakker music. The wonderful thing about a lot of these
programs is that they store the music in the extra banks on a 128k
machine. This means that they survive a soft-reset, and this where CPC
Soundhakker comes into it's own! Later versions of SoundHakker can now
cope with music in the first bank of Ram too.
CPC Soundhakker is a powerful utility designed to hack the music from
the extra banks and then save it as a stand alone music file. CPC
Soundhakker has the following specifications :-
Specifications
~~~~~~~~~~~~~~
* 64k (with Hackit / Le Hackeur) or 128k Traks.
* Fast Machine code search routine.
* Support for S-DOS, MS800 (rom) and ROMDOS high capacity disk
operating systems.
* Dual Disk drive support
* Command to convert frame flyback driven music routine into a full
interupt driven module (and vice versa!).
* SoundTraks saved are all a very compact (6k) length
* Bank switching commands built in (even on 464+64k RAM)
SoundTrakk Descriptions
~~~~~~~~~~~~~~~~~~~~~~~
Flyback Modules
~~~~~~~~~~~~~~~
Start Address : this is the address that resets the soundplayer
Start Address+3 : this is the address that plays the next note
Start Address+6 : this is the address that stops the tune, but
does not reset the tune pointer.
Interupt Modules (as created by SoundHakker!)
~~~~~~~~~~~~~~~~
Start Address : This is the address that starts the tune playing
Start Address+36 : This is the address that stops the tune playing
Installing SOUNDHAKKER in HACKIT from Siren Software
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 - With the sound module in RAM, switch the hackit box on.
2 - Type 'DISC' and press return twice
3 - Type 'LOAD' and press return
4 - Type in the filename DISC.BAS
5 - Type CALL and press RETurn
6 - Type &220 and press RETURN five times
7 - SoundHakker will now sign on as normal!
Command Descriptions
~~~~~~~~~~~~~~~~~~~~
A
~
Change disk drive to drive A
B
~
Change disk drive to drive B (large capacity formats supported)
BANK
~~~~
Changes the current extra RAM bank configuration. A value in the range
0-4 should be entered when prompted for. A value of zero means
"normal" CPC RAM. The BANK command should be used before the FINDTRAK
command, as soundtraks can be stored in either of the four banks.
CAT
~~~
Catalogues the currently logged disk drive
CLS
~~~
CLear the Screen. We decided not to award any prizes for this command.
CLEAR
~~~~~
Erases the current bank.
ERASE
~~~~~
This command deletes the file specified from the current disk.
FIND
~~~~
This command searches through the current RAM bank for the
SoundTrakker Module. If found then the following information is
displayed :-
MOD Filename :<#NONAME#>
MOD Start :#xxxx
MOD Length :#xxxx
MOD found in bank :#x
MOD driver type :<Interupt or Flyback>
The MOD filename will be <#noname#> until the MOD is loaded or saved.
The start address is the address to LOAD the module into from BASIC,
or machine code. The length is always &1500 bytes long. and this
should cater for even the longest soundtraks! The bank will be in the
range 1-4 and will have been previously selected using the BANK
command. The driver type will be FLYBACK unless the INTERUPT command
has been used.
FLYBACK
~~~~~~~
This command converts interupt modules (either SoundHakker or ST-
Compiled ones), into frame flyback driven modules, which can be
incorporated into your demos. SoundHakker has difficulty in dealing
with SoundTrakker compiled tunes, but will load them quite happily.
Once loaded you can manipulate it with the standard Soundhakker
commands.
INFO
~~~~
This command gives you information about the currently FOUND or LOADed
soundtrak module. The information displayed is :-
MOD Filename :<#NONAME#>
MOD Start :#xxxx
MOD Length :#xxxx
MOD found in bank :#x
MOD driver type :<Interupt or Flyback>
INTERUPT
~~~~~~~~
SoundTrakker modules that exist in demos are usually frame flyback
driven, that is they are called every 1/50th of a second. This command
lets you turn these traks into full interupt driven sound modules.
After issuing this command the INFO command above is issued. This will
give you revised SOUNDTRAK information, after SOUNDHAKKER has modified
the soundtrak module. You should make a note of this information for
when you wish to use these modules from BASIC, (or machine code!)
Interupt modules layout is described in the SOUNDTRAK DESCRIPTIONS
paragraph earlier in this document.
To use an interupt module, you would use the following line of
BASIC:-
10 MEMORY start_address-1 : LOAD"sountrak.stk",start_address
20 CALL start_ address :'this starts the tune under interupt
30 END
40 CALL start_address+36 :'this stops the tune from playing
Where start_address is the NEW module start address, as given after
issuing the INTERUPT command. To stop the interupt module playing you
should type GOTO 40 from BASIC.
LOAD
~~~~
This lets you load a previously SAVEd SoundTrak module back into RAM,
(for testing etc!). After LOADing, you are automatically given details
about the soundtrak as shown by the INFO command above.
Please note that should a LOAD or SAVE operation fail in anyway the
current soundtrak filename will default to #NONAME".
SAVE
~~~~
This lets you save the currently FOUND soundtrak as a 6k SOUNDHAKKER
.STK file, which can be loaded into BASIC and played. You will be
prompted for a SAVE filename, which should be no more than 8 letters
long. A saved SoundHakker file will have the file extension of ".STK"
To play a SAVEd SoundTrakker tune from BASIC you should use the
following line of BASIC
10 MEMORY start_address-1 : LOAD"sountrak.stk",start_address
20 CALL start address : 'reset the sound player module
30 REM
40 WHILE 1:CALL start_address+3:CALL &BD19:WEND
TEST
~~~~
Test will let you play the module currently found in memory. When the
tune is playing you can press any key to stop it!
QUIT
~~~~
Resets the computer!
OPERATING PROCEDURE
~~~~~~~~~~~~~~~~~~~
1 - Type BANK, and enter 1 as the value
2 - Type FIND and press return
3 - If a SoundTrack not found error occurs then repeat steps 1 & 2
until one is (if after selecting the last bank (4) no soundtracks
are found then, well there isn't one being stored in the extra
Ram.
4 - If a SoundTrak is found, details will be displayed regarding the
START address, length of the SoundTrak, and the current bank
number.
5 - Note the details given as above, because you will need them later
Saving a FLYBACK module
~~~~~~~~~~~~~~~~~~~~~~~
6 - Type SAVE, then press RETURN
7 - Type in an 8 letter filename and press RETURN
8 - Select QUIT from the command line
9 - Type in the following line of BASIC :-
10 MEMORY start_address-1 : LOAD"sountrak.stk",start_address
20 CALL start address : 'reset the sound player module
30 REM
40 WHILE 1:CALL start_address+3:CALL &BD19:WEND
A - Type RUN, and the tune will play quite happily until you press the
ESCape key. To stop the note playing, type CALL &BCA7, which
resets the sound manager
B - SoundHakker should be able to play any compiled ST-Module. You
will have to rename the EXTension (.bin or .mus) to ".STK".
Credits and Greets
~~~~~~~~~~~~~~~~~~
Richard Fairhurst - for help and advice, and being a good mate.
Paul Fairman - For encouragement and help, and the HUGE phone
bill.
Richard Wildey - For general help and advice.
Matt Gullam - Another mad CPC user (see Paul Fairman above!)
K-OS - For being a good contact!
Amstrad - For designing the CPC in the first place
BSC - For writing the SOUNDTRAKKER in the first place
H.E Haxwell - For general help and advice
Derek Hyland - Hi, don't forget the excellent advice I gave you!
(or YOU will NOT be welcome on the "szene" (sic!))
Logon System - Sorry to hear you're leaving the CPC!
EGS - Sorry to hear that you've coded your last game
(Prehistorik 2)
AntiGreets
~~~~~~~~~~
See LIBRARY command in program
If you have any comments on this software then please direct them to
STS Software, at the above address. Thank You.