When using this document, keep the following in mind:ntialGeneral Notice

1. This document is confidential. By accepting this document you acknowledge that you are boundby the terms set forth in the non-disclosure and confidentiality agreement signed separately and /inthe possession of SEGA. If you have not signed such a non-disclosure agreement, please contact
SEGA immediately and return this document to SEGA.

de2. This document may include technical inaccuracies or typographical errors. Changes are periodically made to the information herein; these changes will be incorporated in new versions of the
document. SEGA may make improvements and/or changes in the product(s) and/or the
program(s) described in this document at any time.

nfi

3. No one is permitted to reproduce or duplicate, in any form, the whole or part of this document
without SEGA’S written permission. Request for copies of this document and for technicalinformation about SEGA products must be made to your authorized SEGA Technical Services
representative.

Co

4. No license is granted by implication or otherwise under any patents, copyrights, trademarks, orother intellectual property rights of SEGA Enterprises, Ltd., SEGA of America, Inc., or any third
party.
5. Software, circuitry, and other examples described herein are meant merely to indicate the characteristics and performance of SEGA’s products. SEGA assumes no responsibility for any intellectual
property claims or other problems that may result from applications based on the examples
describe herein.

GA

6. It is possible that this document may contain reference to, or information about, SEGA products(development hardware/software) or services that are not provided in countries other than Japan.
Such references/information must not be construed to mean that SEGA intends to provide such
SEGA products or services in countries other than Japan. Any reference of a SEGA licensed product/program in this document is not intended to state or simply that you can use only SEGA’slicensed products/programs. Any functionally equivalent hardware/software can be used instead.
7. SEGA will not be held responsible for any damage to the user that may result from accidents or any
other reasons during operation of the user’s equipment, or programs according to this document.

SE

NOTE: A reader's comment/correction form is provided with thisdocument. Please address comments to :(6/27/95- 002)

SEGA of America, Inc., Developer Technical Support (att. Evelyn Merritt)
150 Shoreline Drive, Redwood City, CA 94065
SEGA may use or distribute whatever information you supply in any way
it believes appropriate without incurring any obligation to you.

SE

GA

Co

nfi

de

nti
al

TM

DSP Linker
User's ManualDoc. # ST-070-R1-031094© 1994-95 SEGA. All Rights Reserved.

nti
al

READER CORRECTION/COMMENT SHEETKeep us updated!
If you should come across any incorrect or outdated information while reading through the attacheddocument, or come up with any questions or comments, please let us know so that we can make therequired changes in subsequent revisions. Simply fill out all information below and return this form to
the Developer Technical Support Manager at the address below. Please make more copies of this form if
more space is needed. Thank you.
General Information:

Phone

Document number

ST-070-R1-031094

Document name

DSP Linker User's Manual

Date

Corrections:
Correction

nfi

pg. #

GA

Co

Chpt.

de

Your NameSE

Questions/comments:

Fax:

Where to send your corrections:(415) 802-1717
Attn: Evelyn Merritt
Developer Technical Support

Mail:

SEGA OF AMERICA
Attn: Evelyn Merritt
Developer Technical Support
150 Shoreline Dr.
Redwood City, CA 94065

nti
al

DSP Linker
User’s Manualde

1. Introduction ................................................................................ 3
About this Manual .................................................................. 3
Overview ................................................................................ 3
Installation .............................................................................. 4
Quick Start ............................................................................. 4nfi

2. Menus ........................................................................................ 6File Menu ............................................................................... 6
Edit Menu ............................................................................... 7
Window Menu ........................................................................ 7
GlobalCoef Menu ................................................................... 8
Process Menu ........................................................................ 9
Option Menu .......................................................................... 9
Software EG/LFO Menu ......................................................... 9Co

3. Files Handled through Linker ....................................................11
Link Information File (YLI) .....................................................11
Link Information Result File (LRI) ......................................... 11
Executable File (EXL) .......................................................... 11
Binary Executable File (EXB) ................................................11SEGA

4. Algorithm Edit ........................................................................... 12
Module Layout ..................................................................... 12
Connections ......................................................................... 13
Selecting the Module and Connection ................................. 14
Module ID Assignment ......................................................... 15
Module ID Reassignment..................................................... 17
Parameter Edit ..................................................................... 17
Definition/Use/Cancellation of Global Coefficients .............. 18
Specifying the Modulator Input Buffer .................................. 20
SizeToFit Function ............................................................... 21

DSP Linker User's Manual

1

SE

GA

Co

nfi

de

nti
al

(There is no page 2 in the original Japanese document.)2

1.

IntroductionntialAbout This ManualThis manual explains how to operate the “SCSP/DSP/Linker.”

SE

GA

Co

nfi

de

Overview
Each “executable DSP microprogram” is prepared by linking modules that offer
individual functions. There are two types of modules: the “Effect modules” and“I/O modules.” The order in which these modules are linked and connections for
the I/O are defined through graphic display. An example of linker display is shown
below.

DSP Linker User's Manual3

Minimum hardware requirements:ntial• Personal computer system (Macintosh or Windows machine).
(A separate SCSI-I/F board is needed for the Windows Machine.)• SCSP software development board• SCSI cable for connecting the above

Installation
Copy onto the appropriate place on the hard disk from the master disk.

deQuick Start
This section covers the operation of SCSP/DSP/Linker from start to quit.
1. Open the Linker Application
Double-click the “Linker” icon in the Finder to start the application.

nfi

2. Open a New Algorithm
Select “New” from File menu, enter a filename, and press the Return key to open
a new Algorithm Edit window. A “.YLI” extension is automatically added to thefilename.

Co

3. Verify the SCSI ID
The SCSP/DSP/Linker automatically sets the communication SCSI ID for thedevelopment board during start-up. Select “SCSI ID” from the option menu to
make sure that this ID is identical to the hardware switch SCSI ID set-up of thedevelopment board.
* WARNING:
IT IS POSSIBLE TO CHANGE THE SCSI ID AT THIS POINT BY SETTING THE ID AND
CLICKING “OK.” HOWEVER, WHEN THE SCSI ID IS SET UP INCORRECTLY, CONTENTS IN THE MEMORY DEVICE (HARD DISK, ETC.) CONNECTED THROUGH THE
SCSI MAY GET DESTROYED. PLEASE USE EXTRA CAUTION.

GA

4. Design the Effect AlgorithmSE4-1. Layout the DSP Input Output Modules
Select the “I/O Modules” from window menu and open the “I/O Module”
window. Double-click the “Input (to DSP)” module or “Output (from
DSP)” module in the “I/O Module” window, or select one of them and click
the “Select” button. The module will be laid out at the position last clickedon the Algorithm Edit Window.
Note:

4

If necessary, drag the “I/O Module” window so that it does not be overlapped with the
Algorithm Edit window. This way the “I/O Module” window is always visible. This makes
it easier to continuously layout the modules.

nti
al

4-2. Layout the Effect Module
Select the “Effect Modules” from the window menu and open the “EffectModule” window. Follow the same instructions for the DSP I/O Module tolayout the Effect Modules.
4-3. Interconnect Modules
Connect the modules laid out in the Algorithm Edit window. Then, click
the output port of the module from which the output sound data is taken.
Finally, click on the input port of the module where sound data goes formodule connection. This operation determines the sound data flow among
modules.

nfi

de

5. Link
Select “Link” from the Process menu to link the Effect algorithms that have been
generated. If link was successful, the “Link Result Information” Dialog box willopen. This dialog box contains information on the status of DSP-related hardware
resources.
6. Download
Select “Download” from Process menu to download the linked Effect algorithm
into the target (development boards) hardware. At this stage, the DSP starts
operating according to the Effect algorithm that the DSP produced.

GACo

7. Edit Effect Parameter
Double-click a blank portion (where characters are not displayed) within each
module laid out inside the Algorithm Edit window (or select “Parameters” from
window menu after select) to open the Parameter Editor window. Use the mouseto operate the scroll bar inside this window or enter numeric values directly into
the text box and press the return key. Results are reflected in the effect on a realtime basis. However, a real time parameter edit is no longer effective as soon as
the sound data path is changed by the modification. (Under this condition,“Download” on the Process menu is grayed out.) In such cases, real time parameter edit can be started again with another link and download.

SE

8. Save File
Up until this point, information regarding linked and downloaded Effect algorithm has only been stored in host machine memory. The file has not been saved.
When the Effect algorithm is complete, select “Save” from File menu to save thefile.
9. End Linker Application
Select “Quit” from the “File” menu to terminate the Linker application.

DSP Linker User's Manual

5

2.

Menus

nti
al

File Menu
New

Opens a blank algorithm edit screen. After selecting this item, enter the algorithm
name (link information filename). The “.YLI” extension is automatically added to
the filename.
Open

de

Opens the algorithm stored in the Link Information File (YLI). The Link Information
File is selected through the standard file open dialog box immediately after this item
have been selected. After the Algorithm edit window opens, the specified file is readthe algorithm is displayed.
Save

nfi

Saves the algorithm under edit as a Link Information File (YLI). The storing namebecomes the current algorithm name. Expansion Executable Format file (EXL) andBinary Executable file (EXB) are also output at the same time.
Save As...

Close

Co

Saves the algorithm under edit to a Link Information File (YLI). A new filename isentered into the standard save dialog box. The Expansion Executable Format file(EXL) and Binary Executable Format file (EXB) are also output at the same time.
Closes the Algorithm Edit Window under edit.
Quit

SE

GA

Closes the Linker.

6Edit Menu
Undoes the last edit command performed.
Cut

nti
al

Undo

Cuts the module and connection selected. When a module is cut, lines connected tothe module are also deleted. The deleted module and information associated with it
are stored in the Paste buffer.
Copy

Stores the selected module and its information into the Paste buffer.

de

Paste

Modules that have been stored in the Paste buffer by Cut and Copy are displayed in
the Algorithm Edit Window. The display position is where the mouse was clickedlast in the Algorithm Edit Window.
Select All

nfi

All modules and connection lines are selected.

Window Menu
EffectModules

I/OModules

Co

Opens the Effect module window. If this window is already open but behind otherwindows, this command will bring it to the front. See “[4] Algorithm Edit, [1] Module Layout,” for module layout method.

GA

Opens the I/O module selection window. If this window is already open but behind
other windows, this command will bring it to the front. See “ [4] Algorithm Edit, [1]Module Layout.” for module layout method.
Parameters

Opens the Parameter Edit window for the module selected. Selecting this item is
equivalent to double-clicking the module selection field.
SizeToFit

SE

Reduces the size of Algorithm Edit window content to display the entire algorithm
on the screen. It is not possible to edit the algorithm while this command is in effect.
In addition, this function will not work if the algorithm initially fits on one screen.
To go back to the original size, select this item again. A check mark appears on theleft of the menu, while the reduction is being displayed.

DSP Linker User's Manual7

CoefTables

nfi

de

nti
al

Opens the “coefficient table allocator” for handling the coefficient table data on thelinker. By registering a coefficient table file in the “coefficient table allocator,” thecoefficient table data are linked to the executable format file so that the Effect module requiring a coefficient table can be used.

Note:

Co

The ADD button is used for registering an additional coefficient table file. The DEL
button is used for deleting the coefficient table file in a selection mode. Once a file isdeleted, the subsequent coefficient table files will have their numbers shift. Therefore, it is necessary to reassign the coefficient table numbers specified of the modules.
The coefficient table files are data files containing binary data of the A00H size, and theirextension is “.TBL”. They are used by the dynamic filter module. Resonance and other filter
characteristics can be modified by changing the coefficient table file.

DefineGlobal

GA

GlobalCoef Menu
Opens the global coefficient definition window. If this window is already open but
is behind other windows, then this command will bring it to the front.
AlterToGlobal

SE

Opens the global coefficient use window. This item can be selected only when thecoefficient selected on the Parameter Editor window can be altered to global. As arule, parameters displayed in [%] units can be altered to global.
RevertToLocal

Reverts the global coefficients selected in the Parameter Editor window back to local.
This command can be selected only when the Parameter Edit window is active.

8

Process Menu

nti
al

Link

Checks the number of program steps and whether the available internal memory
under the current algorithm structure exceeds the limitations imposed by hardware
or not, and displays the result of the check.
Download

Transfers the data prepared through menu item “Link” to the SCSP in an executableformat.

deOption Menu
RingBuffer

Displays the dialog box for specifying the size of ring buffer used by the current
algorithm.
SCSI ID

nfi

Transfers data through a SCSI to the SCSP on the SCSP/DSP/Linker. The SCSI ID is
automatically set when the Linker starts up. Normally, when this menu item isselected, a dialog box appears for resetting an ID.

NumberOfElements

Co

SoftwareEG/LFO Menu
This is a menu for defining the parameters for generating EG/LFO wave forms(SoftwareEG/LFO) through the sound CPU. Although it depends on the soundCPU load, the SoftwareEG/LFO realizes virtually up to a maximum of 32 devices
EG/LFO elements through software.
Opens the “NumberOfElements” dialog box (discussed later) when selected.

GA

MasterSwitch

Opens the “MasterSwitch” dialog box (discussed later) when selected.
#0 ~ #31

Opens the “SoftwareEG/LFOElement” window (discussed later) corresponding to
the number of the menu item selected. Active display results when this window isalready open.

SE

Dialog/Window“NumberOfElements” Dialog Box

The maximum number of usable SoftwareEG/LFO elements is set through this
dialog box. When setting the value in this dialog box to N, and N = number of
elements, then Element#0 to Element#(N-1) becomes effective.

DSP Linker User's Manual

9

nti
al

Only the element data within the range defined as being effective are linked to the
executable file.
“MasterSwitch” Dialog Box

Each element’s ON or OFF is set through the check boxes in this dialog box. The
check box numbers represent the SoftwareEG/LFO element numbers.
“SoftwareEG/LFO Element” indowWde• EG/LFO Switching Radio Button
This radio button is used for setting whether that element functions as an EG or
LFO. All displays related to functions of the side not selected will become
grayed-out displays.

• Hold Time
Sets the Hold time in [ms] units.
• Hold Level
Sets the EG level during Hold.

nfi• MIDI Ch
Sets which MIDI Ch receives the Note information for driving the EG.

Co• Attack/Decay/Slope/Release Rate
Sets Rate for each of the Attack/Decay/Slope/Release states.

• Attack/Decay/Slope/Release Level
Sets Level for each of the Attack/Decay/Slope/Release points.

GA• GraphCalculates the elapse changes of time in EG from the setting value of each EGparameter, and displays the result in a graph. Time axis can be scaled up or down
and moved by the setting of the two radio buttons.
• Radio Button for Setting the Time Axis Scale (Magnification)
The EG graph time axis is scaled up or down by setting this radio button.
• Radio Button for Setting the Time Axis Origin
The EG graph time axis origin is set at the head of one of the EG graph segmentsby setting this radio button.

SE• Amplitude
Sets the LFO amplitude.
• Frequency
Sets the LFO frequency.

10Files Handled through Linker

nti
al

3.

Link Information File (YLI)
This file is opened and saved through the file menu. It stores information on links,
i.e. how and which modules are linked.
Link Information Result File (LRI)This file stores information of the amount of hardware resource usage, memory
allocation, etc. for the execution format file transferred to the SCSP.

deExecutable File (EXL)
In addition to the DSP microprogram, this file stores filename, ring buffer size,
coefficient table numbers, and coefficient table data. It outputs when a link information file is saved.

SE

GA

Co

nfi

Binary Executable File (EXB)
This is a binary file in the format used for outputting the executable file to a spare
program area on the target board.

DSP Linker User's Manual

11

4.

Algorithm EditntialModules are specified for linking, and module connections are specified in the Algorithm Edit window to create the link information.
Module Layout
The modules are laid out as follows:

From the Window menu, choose the “I/OModules” when laying out I/Omodules or “EffectModules” when laying out effect modules to open theirrespective module selection windows (figures below).

2.

Next, click on the module in the module selection window to be laid out,
and then click the “Select” button. A shortcut is also available by double-clicking
the module inside the module selection window. The module will be laid out in
the Algorithm Edit window where it was last clicked. If the Algorithm Edit
window has not been clicked at all, then the module will be placed at the upper
right corner.

SE

GA

Co

nfi

de

1.

3.

12

After a module is laid out, it can be dragged to a new position.

nti
al

Connections
Intermodule connection is achieved by clicking the connecting module input port
and output port in order.

Click the port of the first module. The port and the connection to the port will
go to the selection mode. That is, a port and the line connected to it are selected
when the first port is clicked. The line will be deleted if “Clear” in the Editmenu is selected or if the Delete key is pressed at this point.

2.

Click the port of the second module. When a second port is clicked, it will beconnected to the port clicked first. The connection will be checked whether
these ports can be connected. If they cannot be connected, the port selected withthe first click will be disengaged. Instead, the port selected with the second click
will now be considered as the first selection (state).

de

1.

GA

Co

nfi

The following connections are possible.

Note: Please take the following into consideration in the connection operation.

SE• Sound data can be branched off from 1 output port to several input ports;
however, when mixing sound data from several output ports to a single input
port, Mixer module must be used.
• It does not matter whether or not there is an unconnected module output port
or not; however, all input ports must be connected. Use a dummy for unconnected input ports. In order to avoid the effects of the dummy connection on
sound data, adjust parameters inside the module if necessary.

DSP Linker User's Manual

13

Co

nfi

de

nti
al

Selecting the Module and Connection
The module and connection (connecting lines) must first be selected before cutting
or copying. The followings are the module displays.

The module can be selected by clicking the module selection field, ID display field,
or name field. When selected, the module selection is displayed in black, with its
border (frame) emphasized.

SE

GA

Click while pressing the Shift key when selecting multiple modules.

14

nti
al

Module ID Assignment
Module ID is assigned to each module when connection is performed. As a rule,these IDs must increase sequentially from the input side toward the output side.
The IDs are assigned in the order they were connected. Note the following:

Co

nfi

de

• If a newly connected module does not have an ID number, then it will be assigned with an ID number that is numbered one higher than the highest assigned
ID.
• If both modules connected to a line have no ID numbers, then the module on the
output side will be assigned a lower ID number and input side, a higher ID
number.
• When a module is deleted, the ID numbers will be decremented so that they will
be continuous.
• As a basic rule, it is recommended that modules be connected from the input side
to the output side. That is, module ID numbers are assigned to each module in
the order of connection (from the input module to the output module). If thisprocedure is not followed, or the connection is performed partially, the module
ID order will be affected, and as a result, erroneous operations such as oscillationand changes in the sound quality could occur. In this case, renumber the module
ID appropriately. (By double-clicking the module ID field, the dialog is displayed
for renumbering.)• The module with multiple input ports has a bigger ID than any of module IDs
that are connected to all the input ports. If this is not the case, oscillation orchanges in the sound quality could occur. (“Voice cancel [VoCan]” needs special
attention.) Renumber the module ID appropriately. (Double-click the module ID
is displayed to open the dialog for renumbering.)

SE

GA

The following is an example of the correct module ID assignments.

DSP Linker User's Manual

15

SE

GA

Co

nfi

de

nti
al

An example of the incorrect module ID assignments.

16

nti
al

Module ID Reassignment
Linking is performed in the order of module IDs. The numbers are assigned tomodules in the order in which they are connected. If an error should occur, it would
be necessary to reassign the module ID numbers.
1. Double-click the module whose ID number needs to be reassigned.
The Renumber dialog box will open.

de

2. Enter a new value and click “OK.”The module ID number will change. If this new ID number is already assigned
to another module, or the ID numbers become discontinuous as a result of thischange, then other ID module numbers will automatically change.

Parameter Edit

Co

nfi

1. Double-click the module selection field.
The Parameter Editor window will open.

SEGA

2. Enter a number by adjusting the scroll bar with the mouse, or clicking the value
display field and change the value.

DSP Linker User's Manual

17

nti
al

Definition / Use / Cancellation of Global Coefficients
Global coefficients are coefficient data (data stored in the coefficient RAM on theDSP) that may be shared among multiple Effect modules. This function offers thefollowing advantages by globalizing the parameters:• Saves coefficient RAM space on the DSP.
• Makes it easier to simultaneously change the parameters for multiple modules.

For each module, only those parameters expressed in “%” units in the Parameter
Editor Window can be limited to global. One user defined global information exists
for each algorithm.

deThe globalized parameters can be edited in the Define Global Window. By editing in
the Define Global Window, parameters globalized with the same global coefficient
will link and change.

Co

nfi

• DefineGlobal Window

SEGA• AlterToGlobal Window18

Definition of Global Coefficientsnti
al

1. Select “DefineGlobal” in the GlobalCoef menu.
The DefineGlobal window will open.
2. Add a parameter by clicking “Add,” and delete the parameter selected by clicking “Del.”
Change a value using the keyboard or scroll bar.

Use of Global Coefficients

nfi

de

1. Select a parameter to be altered to global in the Parameter Editor screen.
2. Select “AlterToGlobal” in the GlobalCoef menu.
The “AlterToGlobal” window is open.
3. Select the global that is going to be used and click “Alter.”
The global is confirmed and returns to the parameter edit window. The parameter that has been selected through the “AlterToGlobal” menu is displayed in the
Parameter Edit window value field as being global.

Cancellation of Global Coefficients

SE

GA

Co

1. Open the parameter Edit window.
2. Select the global coefficient that is no longer going to be global.
3. Select “RevertToLocal” in the GlobalCoef menu to cancel global. The
global is canceled. The value specified globally appears in the coefficient value
display field of the canceled coefficient .

DSP Linker User's Manual

19

nti
al

Specifying the Modulator Input Buffer
Some module symbols may come with an “M” button. The links will not be executed without setting these numbers unless the modulator input buffer number(DSP input buffer number) is set.
SoundSlotEG/LFO drive module: 0~15
SoundSlotEG/LFO drive module: 0~30

1. Click the M module. The modulator input buffer setup dialog box is open.
2. Enter the DSP input buffer number and click “OK”. The buffer number
is set.

de

The Modulator Input Buffer

SE

GA

Co

nfi

The modulator input buffer is a buffer used for incorporating the wave forms created by the SCSP sound source (SoundSlotEG/LFO) or sound CPU (SoftwareEG/
LFO) into the DSP as LFO or EG. As far as hardware is concerned, a part of the DSP
input buffer for playing the sound (for the SoundSlotEG/LFO) or a part of the
DRAM for the DSP (for the SoftwareEG/LFO) is allocated and used for this purpose.
See below for details.

20

SE

GA

Co

nfi

de

nti
al

SizeToFit Function
Sometimes the entire module in the Algorithm Edit window may not fit on thescreen. In such cases, select “SizeToFit” in the Window menu. The algorithm display size will be scaled down in the Algorithm Edit window, so that the entire algorithm can be viewed. A check mark appears in the menu while the SizeToFit display
is active. The algorithm cannot be edited while the SizeToFit display is active. Thisfunction uses up a large amount of personal computer memory; thus caution shouldbe paid.

DSP Linker User's Manual21