Changes in v0.51
----------------
Ability to load Sound Designer(R) .SD, and Avalon(R) .SMP-sounds. No
recalculation of the frequency is done, so the sounds must be sampled in
correct frequency. No loop-information is loaded.

Helppage for patcheditfunctions by clicking 'Keyboardfunctions:'.

Helppages for sampleattributes, soundattributes and splitfunctions by clicking
at the titles.

If EPSS is started as ACC and the driver/patch in EPSS.INF couldn't be found,
it no longer hangs up if you cancel the loading of driver and/or patch.

When EPSS.INF cannot be found in the root of your bootpartition, the program
gives an error message. If you run as an ACCessory, you can find EPSS.INF and
reload it by choosing to open EPSS in the Deskmenue.

You can choose originaltone by doubleclicking at the key at the keyboard.

A medium version of the RSC-file is now made. The program for medium has the
name EPSS_M.ACC. This can also be run in high, but the buttons may be placed
a little strange.

The sounddrivers together with 0.49 and 0.50 were not equipped with realtime-
volume. This now works with the new drivers.

Changes in v0.50
----------------
Internal changes to accept 4 channel 50 kHz sounddriver and 16 channel 25 kHz
sounddriver.

The screen update for an untopped window is now fully functional. Note that
the showing of MIDI-keys on the keyboard tends to be a little bit slow if
the window is placed in the background.

The tempo is now set correct when starting EPSS Control with autoload of song.

Inputbox for start, stop and end now works.

No overflow for songpositioncounter for miditicks greater than 65535.

Editing of start, end and looppoint while in the samplewindow now works correct
also for samples larger than 64k.

When loading a new sample to a sound, the soundattributes are also reset.

Changes in v0.49
----------------
No longer resets the start-, loop- and endpoints when a sound is truncated,
deleted or loaded.

A looped sound stops playing when changed to another sound.

Changes in v0.48
----------------
Better errorhandlingroutines when loading patch and song. Disables the patch-
edit button if you don't have a patch loaded, and the same goes for the
songbuttons.

Correct handling of the samplebuffer when using the 50kHz-volume.

Changes in v0.47
----------------
When a sample is loaded, it is always loaded into the workmemory allocated
with the keyword WORKMEM or allocated from free memory if the keyword not
it present. When the volume of a sound is changed, and the 'Update'-button
is pressed, the sound is always recalculated from the workmemory, if the
sound still is present there. This goes for both sounds loaded from S-50-
discs or harddisks. If the buffert doesn't contain the current sound, the
program tries to reload it from the current sampledirectory. If this also
is unsuccessful, you must choose the sound from the fileselector or the
S-50 soundload submenue.

New function 'Swap' in Patcheditwindow to swap two sounds with eachother.
Useful for reordering of the patch.

Faster drawing of samplewindow and correct handling of redraw of samplewindow
if window is outside the screen.

Showing of MIDI-input on the keyboard is now fixed.

Uses mediachange to check if the S-50-disk has been changed, but because of
the way the Bios handles mediachange, the directory must be re-read unless
the drive light is turned on.

Changes in v0.46
----------------
The deletefunction now also remove the soundentry and changes the sound-
numbers for the splitinformation correct.

When run with the 'Pro'-module EPSS50_2.BIN, 50 kHz/2 channels, S-50 samples
loaded are interpolated and recalculated to 50 kHz. This gives a very high
soundquality which even can be used for a professional drummachine etc.

Various bugfixes: Choose subtone from 'Load'-button locked mouse input.

Changes in v0.45
----------------
At last the forward and rewind options for the MID-fileplayer is written.
This is also implemented in the main window. A song position counter is
also made, which updates whenever the main window is on top.

When choosing sound from the submenue, the lenghts of the sounds is also
indicated.

Inputboxes for samplestart, end, loop and volume.

To run Cubase together with EPSS, it is possible to use the special MROS
Export Driver for EPSS, EPSS.DRV, and then set the output in Cubase to EPSS.
You need MROS of version 3.xx or newer to use this feature. EPSS.DRV should
be placed in the MROS-folder.

Changes in v0.44
----------------
All values for start, loop and length are now indicated in decimal instead
of hexadecimal.

The program is now rewritten to use GEM-windows for all functions, not only
the main window. If the system runs out of windows, which could happen if
you tries to open all EPSS's windows, the program gives an error message.
You can extend the number of windows in your TOS by running the german
program Winx which sets the window limit to 40 instead of the systems 8.


Changes in v0.43
----------------
The main window has been re-arranged. The play and stop buttons have moved
to the main menue and changed shapes to arrows. Right single arrow is play,
square is stop, double arrows are for cueing (not implemented). Previous
'Info'-function under sound menue is renamed to 'Edit' and placed under
'Soundpatch'. Previous 'Soundinfo' are now named 'Patchedit'.

It is possible to restart the song by doubleklicking on the stop-button.

It is now possible to change the info-text for the sound and the patch
by clicking at the text to get a input-box to write in.

'Show' (placed beside the MIDI-functions) is a a new button which shows
the tones playing by inverting them in realtime on the keyboard. A buffer is
used, so if there are many tones playing, the showing might not keep up
to show the tones in realtime. You must be on the correct MIDI-channel to
see the tones.

The 'MIDI-Out'-button in Patchedit is renamed to 'Out'.

The 'Play'-button in Patchedit is now default.

Midi-thru is now possible to activate or deactivate with the 'Midi Thru'-
button in the driver-setup.

Now 8 characters in S-50-filenames.

Patchlength and songfilelength are now indicated as decimal values instead of
hexadecimal values.

If the song contains a copyright notice, this is indicated when the song is
loaded and also in the songinfo.

New function in driver: When the song is initiated, it also reads the initial
songdata which make the songinfo updated even if the song has'nt been started
yet. Empty sounds are no longer played at all.

Changes in v0.42
----------------
'Trunc' is used for truncating a sample. The endpoint is set with the
length marker.

Internal: Improved speed for submenues with scrolling, program prepared
for helpmenues to get a little info about each function.

A backupfile is always created when a patch is save with the same
filename.

Changes in v0.41
----------------
A new keyword is introduced. WORKMEM is used for preallocating memory
to be used when loading S-50-sounds. This must be used when trying to
load a sound from inside a sequencer which doesn't use dynamic memory
allocation, e.g. Cubase 2.0. If you don't use this keyword, the program
gives an error message if you try to load a sound which is too long to
be converted.

The keyword SAMPLEDIR is used for setting the default sample directory.
You can then use Reload without first having to set the directory by
calling up the fileselector.

It is possible to zoom in at one point in the sample by pressing and
releasing the left button without marking any area. The right button is
used for zoom out the sample to its original size.

All '+' and '-' buttons for sound-parameters are removed. To increase
or decrease the values, you only use left and right buttons.

A new button, 'Tune', is used for playing the tuning tone.

'Flags' are put on the counters to make it easier to identify them.

Changes in v0.40
----------------
A samplewindow is showed if the 'Window'-button is activated in the
soundinfodialog. It shows the current sample in a graphic window which
the keyboard is replaced by. The start, stop and loop is indicated by
vertical lines and is updated when the counters are changed.

The sample start, stop and loop can now be changed by dragging the
vertical line to the desired position. The counters are updated when the
button is released.

The sample can be zoomed by marking a section of the sample which should
be zoomed by the help of a rubberbandbox. When another sound is choosen
the zoom is reset.

You can also change octave, transpose and volume by pressing at the text
with left or right mouse button to decrease or increase the value.

The reloading of a sound to activate any volume changes, is now moved
to the 'Reload'-button to make increase and decrease of the volume
possible by pressing the text with the left or right mouse button.

The system now also works on Atari ST's without the DMA-sound. You must
then use the driver 'DUMMY.BIN', otherwise the program gives an error
message. No sound output is implemented for ST's, but it is possible to
for example edit and make a patch.

The 'PATCHMEM' and 'MIDMEM' parameter is now allowed to be bigger than
600000 bytes. If you haven't enough memory to reserve for the patch,
the program shows an error message.

An error message is shown if the sound you are about to load is bigger
than the memory reserved for the patch. This could also happen when
you want to make a new sound without having room for it.

Changes in v0.38
----------------
Samplestart, samplelength and loopstart can now be changed by pressing
the left mouse button to increase and the right mouse button to decrease.
If you press either of the shift-keys, the decrease or increase value
is increased ten times to make the change faster.

It is now possible to select which MIDI-channels that should be
activated for EPSS. That is done in the Driver-information. You
have 16 buttons each representing a MIDI-channel. If the button is
selected, that MIDI-channel is directed to EPSS. If the button is
unselected, all MIDI-data which is received from the sequencer is
sent to MIDI-out. As default are all channels directed to EPSS.
This feature is very useful if you want to play with both EPSS and
external MIDI-equipment.

A SPL or PCM-sound loaded from harddisk or disc can be reloaded
after a volume change, to activate the new volume, by pressing at
the 'Vol: XXX%'-text. If the path are the same as when the sound
first was loaded, it will be reloaded and the volume will be
recalculated. This is not possible with load from S-50-disc direct.

The octave and MIDI-channel increase and decrease are now wrap-
around to make sound-search possible (see below).

If you press the text 'Octave' you could change the octaves of the
keyboard from a submenue.

You can select sound by pressing at the sample-number and choose
sounf from the submenu shown, instead of only use the + and - button
to change sound.

The Show-function now search the splitmap by starting from the
current octave and MIDI-channel. This allows you to find sounds
placed on different MIDI-channels and octaves. Choose the sound
you want to search for and press the Show-button. If the sound is
found, the keyboard is updated so the sound is at the bottom of
the keyboard. To find more occurances of the sound, just press
octave + and the next place are found. If it only exists on one
location, the octave and MIDI-channel is not changed.

Samplelength, samplestart and loopstart are now set to default when a
new sound is loaded.

Delete sound works. If there are subtones attached to the sound, you
must first delete them before you can delete the main sound. The program
indicates that by showing an alert box. When a sound is deleted, it
leaves a blank entry in the sound list. When a new sound is added it is
recommended that you use this blank entry instead of making a new sound
entry by the 'New'-button. When the sound is deleted, you are asked if
you also want to delete the splitinformation that uses this sound. If you
plan to use it for a similar sound, you can choose 'No' to skip the
deletion. No error should occur if you try to play this sound.

If a non-S-50-Disk is used when loading S-50-disk direct, EPSS only
loads track 0 if the data is invalid, e.g. an ST-disk is used.

Internal change: A self-modifying routine is called when a BIN-module
is loaded, which replaces all indirect jumps from EPSS to the sound-
module by absolute addresses. This increases the speed of especially
the MIDI-in routine and replay-routine because no unneccesary jumps
are performed.

Changes in v0.37
----------------
When loading S-50-disks, the length is also showed in the submenue.

In previous versions, the samples were not correct saved when a patch
was saved. This is now fixed.

Save sound in SPL-format is now working. Note that you must set the
volume to 100% if you want to load sounds from S-50-disks and then
save it to SPL in its original form.

Changes in v0.36
----------------
It is now possible to load a new sound independent of its length. If
the sound is shorter than the sound before, the patch is shrunken.
Otherwise the patch is extended. You can always control the real
length of the patch in Patch-info.

Support for sound in formats SPL, PCM and S-50-disk. You can now load
30kHz-sounds from an S-50-disk direct.

When a sound is loaded from disk, the volume is re-calculated in the
same way as the SPI-Creator.

The 'New'-button in soundinfo makes room for a new sound, either a
subtone or a sample. Loading of samples into new sounds now works.

The 'Clear'-button clears the marked keys from its sound.

Each VBL a check for PCM-DMA-buffer-overrun is done. This can be
disabled by using the NOCHECK-keyword if it annoys you.

The keyboard in sound-info is shrinked to 4 octaved instead of 10
to do the update a bit faster on STe:s... You use the + and - buttons
to change the range showed.

It is now possible to play with the keyboard in the sound-info by
enable the 'Play'-switch.

The switch 'Drum' in soundinfo makes the sound always to play at the
original-frequecy. This is useful if you don't know where you put the
original-tone for the sound and only want to use it at the original
frequency. If you want to have the sound pitched as well you could
create a sub-tone.

The switch 'VVFE' in soundinfo is used to change how the MIDI-velocity
should be interpretated. It works like this:

               MIDI-velocity (at Note-On)        Poly-Pressure
------------------------------------------------------------------------
VVFE ON        VVFE                              Sound-Volume
VVFE OFF       Sound-Volume                      VVFE

When using Poly-Pressure as VVFE, it is important that the Poly-Pressure
is sent before the Note-On-message. Otherwise E.P.S.S. doesn't know which
offset it should begin with in the sample.
On the other hand, if Poly-Pressure is used as Sound-Volume, the Poly-
Pressure-message must be sent directly after the Note-On-message,
because the default volume at Note-On is always 127 (maximum).
When using MIDI-Velocity as Sound-Volume only the first Poly-Pressure-
message (send before Note-On) is taken as VVFE. All other Poly-Pressure-
messages sent while Note-On is active is still taken as dynamic volume
control.



Changes in v0.35
----------------

Installation now works in Cubase, Pro-24 and Sweet-16. For the other
sequencer choices the procedure for Pro-24 is used. This may or may
not work.
Note: When the sequencer uses Timer A for internal use (such as Sweet
16) the interrupts are placed on the VBL. This may not sound so well
if you run the program with a VBL frequency other that 50 Hz...

The midichannel in soundinfo can now be changed by clicking at the
text 'MIDI:' and then a new midichannel can be choosen from the
submenu.

The 'Show'-function in soundinfo automatically changes to that
midichannel which contains the sound to show. If the sound resides
on more channels, only the lowest channel is showed.

Button for adding sound ('New') in soundinfo. IMPORTANT!!! Should
only be used with subtones. The loading of a sound from disk is not
yet supported!!!!

Button for making sound a subtone from a base sample. When a sound is a
subtone, the load-button shows a submenu where you choose which sample
the subtone should use.

The fileselector when loading driver can now be cancelled.

If the filextension is pressed, a submenu with possible loading formats
is shown. ONLY .SPL is supported. Do NOT choose S-50 !

New BIN-driver:
No more address errors when changing loop and length. (hopefully)

Changes in v0.34
----------------

It is now possible to load an external driver from the driver-screen.
The filename of the driver is also saved in the EPSS.INF-file.

No more disturbances by background application during dialogue-input.

Loading of sound now works for the 4-channel too.

No more illegal number-of-channel word in old patches.

The selection of a black key in the keyboard layout can now be done
by clicking on the key itself instead of its number.

All colors should now also be visible in ST-High.

Changes in v0.33
----------------

The soundinformation has been extended with a keyboard layout to make
splitting possible.

MIDI: Indicates which MIDI-channel the keyboard should show. The
channel is incremented or decremented with the '+' and '-'-button.

Under the text 'Splitfunctions' are some new buttons:

Show: When this button is selected, the keyboard updates and shows
on which notes the actual sound is placed on by inverting the keys.

Mark: When you use this button the 'Show'-function should be turned
off. If you select only one note on the keyboard, by inverting it
with the mouse, this functions locates the note and puts it in the
'Org:'-text, see below.
When you have selected two or more keys, this function marks every
key inside the range from the lowest selected note to the highest
selected not. Useful if you want to make large splits.

Make: This button is used when you want to define a split for the
sound chosen. First you choose where the original note should be
placed, by the '+' or '-'-buttons beside the 'Org:'-text, or by choosing
only one key and pressing 'Mark' (see this function).
Next step is to define the area where the sound should be placed. You can
either do this by selecting the notes manually or use the 'Mark'-function
if many note are to be defined. The sound is then placed at the keys with
the original tone at the note indicated beside the 'Org:'-text.

Tones: With this button you can choose if you want to show the sound-
number or the tone-number at the keys. The tone-number is useful in
combination with the 'Show'-button to find out where your original
sample is placed. The octave is indicated as the single number placed
on top of the white keys. The layout is as follows:

C4: - 2 octaves down from the originalsample (lowest note possible)
C5: - 1 octave down from the original sample
C6: Original sample
C7: + 1 octave up from the original sample
C8: + 2 octaves up from the original sample (highest note possible)

Org: This indicates at which key the original sample should be placed
when defining a split with the 'Make'-button. This can either be chosen
manually by the '+' and '-' buttons beside it, or by the 'Mark'-function
(see this).


It is now possible to choose if the sound preferably should be played
in the left or right channel by using the 'L' and 'R'-button in the
sound-menue. If the buttons are unlit, the panning is choosed from
a preset panning-map which tries to place the sound as even as
possible.

No more strange sounds when installing in MROS or saving patch.

The tune-function now works. When the text 'TuneRef' is selected, a tone
with the frequency 523 Hz (Flat C) sounds and the samples could then
be tuned to this frequency.

The current PATCHMEM and MIDMEM-settings are now saved with
'Save Inf...'. You must however define them the first time within
a ASCII-editor.

The changing of loop and length of sound now updates instant, if you
play the sound as the same time. (looped of course ...)

Int's On button added again on request.

Int Off renamed to TOS Off. When this button is clicked, the window-
information tells you how to return control (by pressing space).

The volumes should now be fixed and saved correctly. It doesn't change
the volumes of the samples though, yet ...

You can play the sample in the info-box by clicking at the sample-name
or number instead of the PLAY-button.

You can now only play one sound at a time in the info-box. If you play
a sound with loop, you can mute it by playing another sound without
loop.

The setup-screen shows now the real information taken from the sound-
driver, instead of its default values. This only works with a new
format of the .BIN-file though.


Changes in v0.32
----------------

Souddriver-concept implemented. You set the sounddriver you want to
use in EPSS.INF after the keyword "DRIVER". Currently tested with
8-channel and 4-channel drivers, but it is only a question of
assembling if 6, 12 or 16 channel drivers are to be used...
No theroretical problems for writing drivers for e.g. Blip-Blopp
or .MOD-files, but that's not my job just now!

Loading of external drivers other than from the EPSS.INF-file
not yet implemented...

New RSC-file with more options (all of them not implemented yet...)

The windowhandling should now be fixed.

Windowupdate with "song stopped" now fixed.

MIDI In is new. It lets you use an external sequencer. Unfortunately
not as time-tight as the play-routine yet...

Int Off implemented. NOTE!!! The system waits for the SPACE-key for
exiting this mode. Everything other execpt MIDI-IN (if the button is
turned on) is blocked!

If the song isn't playing when saving info, it won't be playing when
autoloaded either.

Setup-menu added, but not implemented yet...

Buttons for tuning the sample with chip-sound is added, but not
implemented yet...

EPSS.INF can now be loaded from A: also.


Known "features" in EPSS Control
--------------------------------

When playing with MIDI IN on a standard 8 MHz STe, the sounds
locks up and it don't work correct when more sounds are played
at the same time. This happens because the computer isn't able
to keep up with the MIDI-interrupts which takes place every MIDI-
event.

Spuriuos keys after using Int OFF-mode

When switching between 4 and 8 channel drivers, there can be some
volume differences because of the pre-division of the patch.
It is recommended that you first turn off the song, load the driver
and then re-load the patch to get the correct volumes of the samples.

Do not cancel the fileselector which appears when EPSS is booted without
any valid sounddriver in the INF-file. If cancelled, EPSS cannot be
accessed any more.

No check is made that the S-50-disk is a valid disk. If you get lots
of funny filenames when using the 'Load'-function, you probably have
an ST-disc or a damaged S-50-disc in the drive.
