home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Large Pack of OldSkool DOS MOD Trackers
/
hsc14ecr.zip
/
HSCTRACK.DOC
< prev
next >
Wrap
Text File
|
1994-03-20
|
10KB
|
255 lines
HSC-Tracker V1.4
(C)1993/94 by Zwerg Zwack and Chicken
Soundroutine (C) 1992/93 by NEO Software Produktions GmbH
Home of HSC-Tracker: The Lycaeum +41 41-762-989 (v32b,v42b)
Registered to you!
----------------------------------------------------------
WHAT IS HSC-TRACKER GOOD FOR ?
Once, we looked for an fm-editor able to do a bit more than this ugly
CMF shit. But there was nothing, really nothing! So Chicken took the
next adlib-player and disassembled it. (bad luck for Neo Software, that
it was theirs, sorry) After playing around and doing some major speed
-ups, he persuaded Zwerg Zwack to do an editor for it (it's useful to
have some code slaves harhar).
Ladies and Gentlemen, here it is: The HSC-Tracker Package. It comes
completly with an editor, a tsr-player and last but not least, an
object/driver to include in your own codes!
----------------------------------------------------------
THE HSC-TRACKER :
Huh? what to say? Just start HSCTRACK.EXE an press F1 to get the
help-screen. It is self-explaining (as our codes :) ).
To override the autodetect start HSCTRACK.EXE with option /axxx
where xxx is the adlib port.
Take a look at the examples to learn how to get the best (?) results
out of the adlib.
Ah, btw, something 'bout the settings when starting the tune. The
player always starts with speed two and the first nine instruments
loaded into correspondending channels.
And don't ask us, how to define cool instruments. We never succeed
neither.
----------------------------------------------------------
THE HSC-PLAYER :
Just a little silly player running in background. Start it with the
filename (with extension) as parameter. To Stop the music, execute it
again.
Disclaimer: Chicken refuses any responsibility for damages to your
system during serious crashes.
Well, if the player works and the tracker doesn't and vice versa, the
player has no autodetect. (this 'bout proper programming)
----------------------------------------------------------
THE HSC-OBJECT :
This object gives you the possibility, to include adlib-music in your
own codes. Link the HSCOBJ together with your source and declare the
HscPlayer and the globals as EXTRN. The object is written on TASM 3.1,
if some problems appear, try to link with Borland's TLINK.
As we had several problems to link OBJ's into our codes, we added a
binary with the same routines. Patch it at offset 0 in an own segment.
The function HscPlayer starts at offset 0.
Here te solution of the general OBJ problem: define the extern functions
before ANY segment declarations, and fixup overflows are gone forever.
(hopefully)
All routines are called through the funktion HscPlayer. You have to call
it as FAR. In AH is the number of the function called.
ah = 0 start music call this routine when you
start a new tune.
bl play mode when 0 the music will play in
background, using the timer
interrupt.
1 is polling-mode. this means,
that the irq will only manage
the correct speed, but the
main playing is done when you
call function 1 (poll).
if you use the timer-irq (08h or 1Ch) for own purposes,
check out, that INT 1Ch is called 18 times per second.
bh dos irq 0 will include the old int 1Ch
(probably used by another pro-
gram) into the playing irq.
1 will cut it off.
es:si music data points to the music data loaded
into memory.
ah = 1 poll music when in polling mode, you have
to call this function at least
18 times per second. it will
play the music.
ah = 2 stop music stops music.
ah = 3 fade out fades out the music.
ah = 4 detect/reset searches for an adlib or
compatible soundcard. returns
with carry set when an error
occurs, otherwise ax contains
the port found. this has to
be started one time to reset
the soundcard.
bx adlib port put this to 0 if you want to
run the autodetect.
The detect sometimes fails, so give your users the pos-
sibility to override the detection. The savest value is
SoundBlaster-baseport + 8 (eg. 220h -> 228h).
ah = 5 rasterbar will turn on/off a rasterbar
to show the time used by the
player. works not in polling
mode.
ah = 6 user irq you can link in an user-irq,
which gets called every time
the play-routine is executed.
(e.g. equalizers)
bl = 0 remove user irq
bl = 1 link irq to ds:dx.
the user irq has to end with
a retf.
ah = 7 get player state dumps some information about the
player status into an array.
es:si pointer to an array of 40 bytes
the structure of the array is: (label refers to the names used
in old versions)
label offset bytes
hsc_note 0 9 actual notes (1 byte per channel)
hsc_instr 9 9 actual instruments
hsc_equalizer 18 9 equalizer value (ffh-0fh)
hsc_playing 27 9 equalizer peaks (ffh = peak)
hsc_pattern 36 1 actual pattern
hsc_track 37 1 actual track
hsc_position 38 1 actual position
39 1 play on/off (0/1)
take a look at the example source or contact the authors to
get more info. (or return to your joystick and give up coding)
And remember: commercial use only with... blabla, ya know!
----------------------------------------------------------
REVISION HISTORY ...
April'93 First beta, or was it even pre-alpha ?
10.05.93 Release of version 1.0
07.06.93 Release of version 1.1
-bugfixes in polling-mode
-minor bugfixes in the editor
-correct copyrights for the soundroutines
13.08.93 Release of version 1.2
-bugfix function shift-f8 in the editor
-added object as binary 'coz of general inability :)
-added /a option to the editor to skip autodetect
28.08.93 Release of version 1.3
-bugfix auto-detect (i wonder how this ever worked) now
it's working even on systems with sb + gus
-added jump command to pattern table
22.03.94 Release of version 1.4
-cleaned up the autodetect code and added a port override
(and object gots 10% smaller)
-renamed function call to _HscPlayer as this gives less
problems in C
-added a function to get playing/equalizer information
and removed the global vars as they caused some major
problems in C and Pascal
-added some examples how to use HSC
----------------------------------------------------------
CONTACT THE AUTHORS !
If you got an idea for some features, dig it :).
But for chitchat, little donations (dreamin'?), your coolest tunes done
with HSC-Tracker,
write to: Christian Kündig Adrian Studer
Lindenhofrain 12 Hauptstrasse 52
CH-8708 Männedorf CH-6170 Schüpfheim
Switzerland Switzerland
or call The Lycaeum +41 41-762-989 and write a message to sysop,
or email via InterNet chicken@ezinfo.vmsmail.ethz.ch
----------------------------------------------------------
COPYRIGHTS:
HSC-Tracker is copyright of the authors. The authors allow to: use
software, make copies of it, give copies to anybody and distribute it
through electronic media.
It is not allowed to ask for money or donations for any copy or copies
of the program, neither distribute the software and/or documentation
with commercial products.
live2.hsc (c) by Blackbird/S!P,
smjoop.hsc, smkerem.hsc (c) by Silent Mode/S!P,
crystal2.hsc (c) by Chris Korte/Xography,
all the other tunes (c) by NEO Software.
It is not allowed to use this soundroutine in commercial products with-
out previous written acknowledgement of Neo Software Produktions GmbH.
NEO Software Produktions GmbH
A-2552 Hirtenberg
Dobrischgasse 10
0043/2256/82294
If you bought NEO Softwares soundroutine, you got NO rights to use the
editor, player, sources of this package in any commercial products.
Contact Christian or Adrian if you still want to use one of these files.
----------------------------------------------------------
sorry for bad english!