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.

de

nti
al

TM

nfi

Microcomputer Developing
Integrated Environmentfor Macintosh

Co

Functions Specifications
Vol. 1ST-80-R2-050994

SE

GA

Contents
1.0
Preface2.0
About the Operation Environment
Installation
Starting Up SDSS
3.0
Operation Overview of Integrated Enviroment
Creating and Editing Source FilesManaging a Source File Project
Source File Assembly
Object File Link
4.0
Flowchart of Unified Environment Software(SDSS)
5.0
Menu ReferenceFile Menu
Edit Menu
Find Menu
Jump Menu
Options Menu
Project Menu
Source Menu
Window Menu
Special Menu

1
2
2
2
3
3
3
7
7

6.0

7.0
8.0
9.0

Assembler Overview
About the Assembler Statement
Expressions
Attributes of an Expression
Assembler Pseudo-Instructions
List of Assembler Linker Error Messages
Load Module Output Format
Motorola S28
Intel HEX
Binary Format Output

8
9
9
13
15
19
21
23
29
33
35
© 1994 SEGA. All Rights Reserved.

42
42
43
45
46
64
66
66
67
67

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
Document namedeYour Name

Date

ST-82-R2-050994

Microcomputer Developing Integrated Environment for Macintosh

Corrections:
Correction

nfi

pg. #

GA

Co

Chpt.

SE

Questions/comments:

Fax:

Where to send your corrections:(415) 802-3963
Attn: Manager,
Developer Technical Support

Mail:

SEGA OF AMERICA
Attn: Manager,
Developer Technical Support
275 Shoreline Dr. Ste 500
Redwood City, CA 94065

Preface

nti
al

1.0

SE

GA

Co

nfi

de

This product, equipped with a text editor, assembler, and object linker that operate
on Apple computers, is an integrated environment software that supports softwaredevelopment of microcomputers. Using the Macintosh’s superior interface, thesoftware of two types of standard CPU, that is the Z80 and the MC68000, can consistently be developed beginning with the creation of the source code and ending withthe production of the object module.

Function Specifications

1

nti
al

About the Operation Environment• ModelMacintosh series that can operate Kanji Talk 7.1,
with a CPU that is 68030 or later• RAM capacity

minimum of 8 Mbytes required• HD capacity

minimum of 300 bytes required

de

2.0

Installation
Do the following to install the software:nfi

1. Insert the SDSS VER 1.0 program disk in the floppy disk drive of theMacintosh.

Co

2. Copy all files from the SDSS VER 1.0 program disk on to the harddisk. (You do not need to create a special folder.)3. Eject the SDSS VER 1.0 program disk.

Starting Up SDSS
An icon like the one below should appear on the hard disk. Double click this icon tostart up the program.

SE

GA

SDSS

2

Operation Overview of Integrated Environment

nti
al

3.0

SDSS Integrated Environment Software can do the following:

Create and edit (text edit) source files
Manage source file projects (text batch management)
Assemble source files (Z80, MC68000)
Link object files (creates load module)

de

•
•
•
•

Creating and Editing Source Files
T XT

Source (text) files can be created in the SDSS program. The file created ap-

nfi

pears as an icon that looks like the one at the left. This icon tells you that the file wascreated by the SDSS program. Because these files have text attributes they can beedited by other text editors. Further, the SDSS program can be started up by double
clicking on this icon. The text window of the file will open by double clicking the
icon.

Co

Managing a Source File Project
In order to perform the assemble/link process, a source file must be added to theproject.

t0 00 1. pr o j
Namee

Lst Xrf

L

s

t

X

r

f

SE

GA

TX T

Function Specifications

sample1.asm

TX T

sample2.asm

T

X

T

sample3.asm

T

X

T

sample4.asm
To add a source file, don't drag-copy
its icon, use the Add command in the
Project menu.

3

t0 00 1. pr o j
Name

Lst X r fntialWhen adding a source file, the source namebeing displayed, as shown in the example to
the right, lets you know that the file has been
added. In other words, only information isstored in the project (not the source file
substance.)

sample1.asm
sample2.asm
sample3.asm
sample4.asm

deThe project is treated as one file,and an icon like the one to the left
appears.

ON ON
OFF OFFOFF OFFON OFFCo

nfi

As shown in the examples below, the relationship between the project and source
has two possible configurations. In example 1, moving and managing files becomes
simple.

T XT

T XT

T XT

GA

Example 1

SE

T XT

Note:

4

T XT

T XT

Example 2Care must be taken in moving to other machines.
Positions of source files stored in projects are not guaranteed in the movement
time of other models. Here the source is added again to the project.

Addedsource
names

nti
al

t0 00 1. pr o j
Name

Lst X r f

sample1.asm
sample2.asm
sample3.asm
sample4.asm

ON ON
OFF OFFOFF OFFON OFF

Cross reference
file output ON/OFFde

List file output
ON/OFFnfi

The cross-reference and list file output switches when adding a project is:
ON
OFF

Co

List File (Lst)
Cross Reference (Xrf)

When this is to be changed, click the letters of the switch to be changed (ON or OFF)with the mouse.

GA

You can also change the order of the sources. Because assembling after a file that
produced an assembler error cannot be done, it is convenient to check single files.
Use the mouse to drag a file whose order you want to change, then release themouse button after you have moved the file to the desired location.

t0 00 1. pr o j

Name

SE

sample1.asm
sample2.asm
sample3.asm
sample4.asm

Function Specifications

t0 00 1. pr o j

Lst X r f

ON ON
OFF OFFOFF OFFON OFFmoves
sample4.asm
to topName

Lst X r f

sample4.asm
sample1.asm
sample2.asm
sample3.asm

ON OFFON ON
OFF OFFOFF OFF5

t0 00 1. pr o j
Namee

Lst Xrft

rf

ON OFFON ON
OFF OFF

Current position

OFF OFF

Position priorto changedesample4.asm
sample1.asm
sample2.asm
sample3.asm

X

nfi

Clicking the scroll bar
rotates between the current
position and the original
position of the file movedntial

Do the following by changing the sequence of the source while adding.

Nameesample3.asm
sample4.asm
sample1.asm
sample2.asm

SE

GA

Direction ofrotation is fixedCo

t0 00 1. pr o j

6

Lst Xrft

X

rf

OFF OFFON OFFON ON
OFF OFF

Range ofrotation

Source File AssemblentialAssemble is executed by the Assemble or Assemble All Files command in the ProjectMenu. Both commands assemble by order sources added to the project.
• Assemble

Executed only within a source that has been added to a
project with no object file or with a source file that has beenrenewed.

• Assemble All Files

Assembles all sources added to the project file.
(Added in order)de

If an assemble error occurs for any command, files cannot be assembled after assemble execution is stopped by the file. “Assemble Complete !!” is displayed whena file is succeessfully assembled; but if an error occurs, that information and theerror line are displayed in the information window.

nfi

Object File Link

The output formats of the load module has been added to the end of this manual.

SE

GA

Note:

Co

Assemble is executed by the Link command in the Project menu. This creates a load
module from the obtained object file set by assembling the source file added to theproject and can set the output format (Motorola S, Intel HEX, three types of binary),
the basic address, etc., by command.

Function Specifications

7

4.0 Flowchart of a Unified Environmental Software (SDSS)START

Creation or revision ofsource file by editor

Create
T XT

nti
al

This flowchart simply illustrates what has been written up to now in this manual.

T XT

Add to ProjectdeGroup of Source Files
These are also called modules
Created by user

Project Filenfi

ExecuteAssemble

CreateT XTObject File

List FileCo

ERROR ?

ObJ

YES

NO

CreateT XTLoad Module

GA

Execute Link
(If necessary, set options)

START

Files describing programs and data are called
modules when arranged in each function.

• Object (Module)

Files that are created and assembled fromsource files.

SE• Source File (Module)• Load Module

8

Created through linking, these files are a
combination of object files created from source
files being added to a project. This file is in aformat that can be executed by debug or target.

MENU REFERENCE

nti
al

5.0

File Menu
The source (text) create, save, and print commands, and commands to open andclose pre-existing text are in the File menu.

File
New
Open...

N

Close
Save

W
S

Save As...
Page Setup...
Quit

New (Shortcut: Command-N)

nfi

P
Q

Print...

de

O

Co

Creates and opens a new text window. The name of the window at this time will be“untitled”.

SE

GA

Untitled 1

Function Specifications

9

Open (Shortcut: Command-O)

Current
disk namentialOpens pre-existing text. The Macintosh standard file dialog box is displayed andyou can select the file you want to open from inside the box.

NewEdit8-Z80

MacintoshHD

68K_A.ASM

Eject

Desktop

CancelOpennfi

68K_A.LST
68K_B.ASM
68K_B.CRF
68K_B.LST
68K_MOVE.ASM
68K_MOVE.LST
active.cdeList of text
file names

Co

The file names displayed here are limited to TEXT file types.

Close (Shortcut: Command-W)

SE

GA

Closes the text window currently being edited. If changes have been made in thetext, the following save dialog box will appear.

10

Save (Shortcut: Command-S)

Save As ...

ntialWrites to the file the text currently being edited. The text edit keeps the window as
it is, without interrupting.

Save As lets you save currently edited text into the file while changing the file nameto be different from the current window title. The file name is specified within the
Macintosh standard file save dialog box, which appears as below. The text edit
keeps the window as it is, without interrupting.

Page Setup ...

MacintoshHD
Eject

Desktop
New Folder
CancelSave current document as:
Untitled 1

Save

Co

Input name offile saved

nfi

68K_A.ASM
6868.proj
68l 2.proj
68l t-2proj
68K_A.ASM
68K_A.LST
68K_A.OBJde

NewEdit8-Z80

SEGA

Sets the page size and options for printing.
The dialog box displayed here will be different depending on the type of printer you
selected in Chooser under the Apple menu. Please refer to the printer manual.

Function Specifications

11

Print (Shortcut: Command-P)nti
alPrints the contents of the text window that is currently open.
Quit (Shortcut: Command-Q)

SE

GA

Co

nfi

de

Quits SDSS. Automatically closes the text and project windows currently open. (Ifany changes have been made, the confirm dialog box is displayed at the same time
as “close.”)

12

nfi

de

nti
al

Edit Menu
The Edit menu has standard Macintosh edit commands including cut and paste, andcustomized functions keys used by the editor. Since Undo, Cut, Copy, Paste, andSelect All are all standard Macintosh commands, they will not be explained here.

Set Shortcut Key

SE

GA

Co

A shortcut key is assigned to each command of the Special menu, and can bechanged using this command.

Function Specifications

Default:
Cancel:Set:

Returns to default value
Cancels changes
Quits setwindow

13

How to Set Shortcut Keysntial

The following describes how to set a shortcut key.
(1) Click the mouse button on the item you want to set.

(2) The selected item will become highlighted. Pressing keys changes theshortcut key setting display (keys are limited to letters, arrows, TAB, andDEL keys).

Move up 1 line
row

^Q

Move up 1 line
row

^M

de

When M is pressednfi(3) Changes take effect when you click Set.
The Cancel button cancels any changes (returns to the conditions prior tothe change).
The Default button sets values to their default value.
Notes:The ^ symbol refers to the Control key. (You cannot change to other keys such as the
Option key).

•

When more than one item is assigned to the same key, only the first setting is valid. Other
items set can not be used.

SE

GA

Co

•

14

B

de

Find (Shortcut: Command-F)ntialFind Menu
The Find menu has a character string find command and character string replacecommand that operates in a text window.

Find what

Co

nfi

This function locates any character string from within the active text window. By
inputting the required item, the dialog box below appears and searches for character
strings that meet the conditions. If that item exists, the position of the screen isadjusted so that the line with the character string is displayed and the character
string that is found is highlighted.

GA

Find options——

Area for inputting the character string
you want to find.

——

There are three options, clicking eachsmall square button activates eachfunction. The options are:Searches upward from the current line.
(Normal search is downward)• Ignore case:

Searches for same character alignment
regardless of upper or lower case.

SE• Upward:

Function Specifications

15

Handles a character string as a single unit.

ntial• Word Unit:

In the following example, when WORD is input
and searched, only WORD in the first line isfound and displayed.
Example:
A
B
C
D

SE

GA

Co

nfi

de

WORD
WORD1
WORD2
WORD3

16

Replace (Shortcut: Command-R)

ntialThis is a function that searches any character string from among active text windows
and replaces it with a specified character string. By setting the necessary items inthe dialog box, the character strings you want to replace is searched and replaced if
found. (If the “Replace all” box is not checked, the confirm dialog box will appear
for each character string.)

InputcharacterstringFind character stringdeReplace with
Replace all

Ignore case

Word unit

Ok

nfi

CancelInputcharacterstring to be
replaced

Cancel button

Replace start button

Co

Check this box to replace without
using confirm dialog box

When Find next is selected, the replace confirmation dialog box appears and confirms replacement.

GA

Do you really want to replace?

Ok

Quit replace

Replace

Find next

Do not replace, search fornext character string

SE

Quit

Function Specifications

17

Repeat Above (Shortcut: Command-T)

ntialThis is the Find repeat command that searches text upward from the current line
(towards the beginning of the file). Character strings to be searched are set by the
Find command. In short, this command lets you search continuously without having to input the character string to be searched over and over again.
Repeat Below (Shortcut: Command-J)

SE

GA

Co

nfi

de

This is the Find repeat command that searches text down from the current line
(towards the end of the file). Character strings to be searched are set by the Find
command. In short, this command lets you search continuously without having to
input the character string to be searched over and over again.

18

Top Line

Moves cursor to the first line of a file.
Set Mark

de

nti
al

Jump Menu
The Jump menu has six commands for quickly moving the cursor in the active text
window to a desired location.

nfi

Puts a mark at the current insertion point (cursor). Although nothing is displayed,
the Set Mark command can move the cursor to any line specified by the mark fromany line.
Marked LineCo

The Marked Line command can move the cursor to lines specified by the mark.
Specify Line...

You can move the cursor to the "Line No:" as in the dialog box below.

GA

Line No:
Row

CancelOk

Jumps to selectedline number
numberrow

SECancel buttonEnter the linerow
number to be
moved toFunction Specifications

19

Previous Linenti
alCursor jumps to the line before the current position.
For example, you can move to the first line from the bottom line by using this command.
Bottom Line

SE

GA

Co

nfi

de

Moves the cursor to the bottom line in a file.

20

nfi

de

nti
al

Options Menu
The Options menu has seven commands that define the operating environment of
the active text window. These commands function independently in each window.
A check mark is displayed at each selected function for easy reference.

Show Line No.

Co

Displays the line number in the lead of each text line.

68K_A.ASM

DC
sound_top
voice_top
sound_ram;
ABCD.B
ABCD.B
ADD
ADD

GA

1:
2:
3:
4:
5:
6:
7:
8:
9:

$80$
equ $20000
equ $30000
equ $ ff f 000
D1,D2- (A1),- (A2)
255(A0),D1
D1,255(A0,A1)

Underline

SE

Underlines cursor line.

Function Specifications

21

Show Line Feed Character

68K_B.ASM
DBCC
BSR
JSR
UNLK
NEG
TRAP
MULS
LINK

nfi

Show Tab/2-Byte Space

D0,START ↓SUBROUTINE_1 ↓$04(PC,D1,L) ↓A1 ↓$FFFF5555 ↓#15 ↓(A2),D0 ↓A1,#$FFFF ↓de

1 : Start
2:
3:
4 : SUBROUTINE_1
5:
6:
7:
8:

nti
al

Displays an arrow (↓) at the spot of the line feed character.

Displays spaces at locations where a tab code space exists.
Auto Indent

Tab Interval

Co

When indenting a line, indentation of the next line follows the indentation of the line
before it.
Sets how many characters will be jumped when TAB is set. The default value is four.
(Half size spaces of four characters)Enter tab interval:

Ok

GA

Cancel4

Create Backup

SE

Creates a backup file when a file is opened.

22

nfi

de

nti
al

Project Menu
Commands within the Project menu include managing the project window and
executing the assemble and linking commands. This menu can do most operations
except text editing.

New Project

Co

Opens a new project window.
This command cannot be used when a project is open. In the example below, typethe project name to be displayed in the dialog box. The extension “.PROJ” is automatically added to the file name.

SE

GA

NewEdit8-Z80
68K_A.ASM
6868
proj
68l 2.proj
68l t-2proj
68K_A.ASM
68K_A.LST
68K_A.OBJ

File name:
Untitled 1

Function Specifications

MacintoshHD
Eject
DesktopNEW
Cancel

23

nti
al

When the dialog box that asks what type of CPU you want to use for the open
project appears, click the CPU you want to use. One project corresponds to only one
CPU.

CPU selectZ80
CPU select buttondeMC68000

Ok

nfi

Select confirmation button

Co

The project window is opened when the selection is confirmed.

te s t11 .p r oj

SE

GA

Name

24

Lst X r f

ReadCurrent
disk name

68K2.proj
68kt-2.proj
80Z.proj
lll.proj
SDSS68 proj
TakaEdit.p
test1.proj

Desktop

CancelOpen

nfi

TEST11.proj

MacintoshHD
Eject

de

Project filename list

NewEdit8-Z80

nti
alReads projects that already exist. When the file select dialog box appears, you candesignate which file to open.

The file names displayed above are limited to “PROJ” files.

Co

Save

Saves projects currently open. You can continue without closing the project window.

Front

SE

GA

This command activates the project window. This command can be used when the
text window is hidden behind other windows.

Function Specifications

25

Assemble (Shortcut: Command-K)

ntialThis command assembles sources added to the project. However, it will not be
assembled in the following cases.

• When the object has already been created and there is no change inthe source.

• When there is an error in the file assembled previously.

Sources will not be assembled after an error occurs. The source object file that produced the error is deleted at this time.
AssembleAll FilesdeThis command assembles sources added to the project. All sources are assembled
without being checked for an Assemble command source change. Sources will not
be assembled after an error occurs.
Displaying Assembled Results

nfi

An information window opens when assemble is executed and performs the following information.
• After normal completion, “assemble complete !!” is displayed in each file.

Co

I n f o r m a t i on w i n do w
68K_A.ASM : assemble complete ! !
68K_B.ASM : assemble complete ! !

GA

When an error occurs, the line where the error occurred and the error type aredisplayed.

I n f o r m a t i on w i n do w

SE

68K_A.ASM : assemble complete ! !
68K_B.ASM : assemble complete ! !
68K_MOVE.AMS(25) : Syntax error < MOVES D0.D1

26; ERROR>Link (Shortcut; Command-L)

ntialThis command links source objects added to the project; it also creates a load module
file (file name is set by the Option command). The results of the link are reported in
the information window the same as when executing assemble.
Option (Shortcut; Command-Y)

nfi

de

This command sets all parameters used during the link process. The dialog box
shown below is used for making the settings.

12345678

12345678

78901234

GACo

24682468

Checks for when a MAP file is required.
At the end of a normal link, the file with MAP as
an extension to the output file name is output.

• Output Format

Selects the format of the HEX file to be output.
Motorola S, Intel HEX, and Binary are exclusive ofeach other and you can selected only one.

SE

• Output MAP

Function Specifications

27

Selects the line feed code of the HEX file to be output.
You can select one of the following:
CR(0x0d), LF(0x0a), or CR+LF(0x0d0a)• Address

The lead address of each segment is set as
hexadecimal numbers. Eight digit input is possible, but
Z80 is valid for only the lower four digits.

• Output File Name

Sets the HEX file name.

SE

GA

Co

nfi

de

nti
al

• Line Feed Code

28

nti
al

Source Menu
The Source menu adds sources to a project, and contains a delete command andbinary file edit command.

SourceAdd
DeletedeEdit binary
file
B
F

Add

The Add command adds sources to a project. Text is added when Add is used froman active text window. Also, if you use the project window when it is active, the fileselect dialog box will appear and the file you selected will be added.
The following files cannot be added to a project,

nfi

Note:

Co

• Files that have already been added• New files (text without a title).
(An alert box like the one below will appear.)

Unt i tl ed- 1

6868.pr oj
Name

Lst X r f

Ok

SE

GA

Untitled text cannot be added to a project

Function Specifications

29

nti
al

• Use Add when the project window is active.

NewEdit8-Z80

MacintoshHD
Ejectsample1.asm
sample2.asm
sample3.asm
scroll.cscut.csearch.c
SEDJMSG.C
SYS_MAIN.C
TEST11.proj

DesktopdeCancel6868.pr oj
Namee

Lst
t

Xrf
r

f

ON OFFGA

Co

sample1.asm

X

nfi

Open

Files selected by the fileselect dialog box are added
to the project window.

• Use Add when the project window is active.
6868.pr oj

sample 3.asm

MOVE.B

D1,D0
sample 2.asm

SE

MOVE.L30(A2),D0

Add

Name

Lst X r f

sample1.asm
sample2.asm

ON OFFON OFF

Deletet est1 .pr ojntial

You can remove a source from a project by specifiying and executing the source
added to the project.

t est1 .pr oj

Lst X r f

sample1.asm
sample2.asm

ON OFFON OFF

DeletedName

Lst X r f

sample2.asm

ON OFF

nfi

de

Name

SE

GA

Co

Deleting a file is done by clicking on the file name in the project window. The fileselected will be highlighted.

Function Specifications

31

Edit Binary FilentialThis is an expansion command that will be available in the future, but with today’s
version. In its place, however, is the application binedit . This application is fordisplay and edit of files by a hexadecimal binary code. Operations like the one
shown below are possible.

t e s t . H EX

Keys that can be used:
0~9

Inputs the number of the current position of the cursor.
Inputting overwrites older data.
A hexadecimal number can be input in the current
position of the cursor. Inputting overwrites older data.

DELETE

Deletes one byte at the current position of the cursor.

I

Inputs 00 in single bytes in the current position of
the cursor

GA

A~F

SE
32

de

-1 -2 -3 -4 -5 -6 -7 -8 -9 -A -B -C -D -E -F
30 30 42 30 30 30 30 34 34 34 31 35 34 34 31
30 34 39 32 46 34 46 46 33 0D 53 32 31 34 31
33 34 35 36 35 36 34 36 34 36 35 36 36 43 33
31 32 30 30 35 36 34 36 34 36 35 36 36 43 33
31 32 30 30 37 42 0D 53 32 30 41 31 32 33 34
36 34 45 46 39 30 30 31 32 33 34 37 34 34 38
53 32 31 34 31 32 33 34 36 43 35 36 42 34 30
30 30 37 43 33 34 31 32 30 30 35 46 42 34 30
30 30 37 43 33 34 31 32 30 30 41 31 0D 53 32
34 31 32 33 34 37 43 35 36 42 34 30 30 30 30
43 33 34 31 32 30 30 35 36 42 34 30 30 30 30
43 33 34 31 32 30 30 42 31 0D 53 38 30 34 30
30 30 30 30 46 42 0D

nfi

-0
53
32
32
34
34
36
0D
30
30
31
36
36
30

Co

Address
00000000
00000010
00000020
00000030
00000040
00000050
00000060
00000070
00000080
00000090
000000A0000000B0
000000C0ntial

Window Menu
The Window menu has a command that closes all text windows curently open. It
also has a command for changing text windows.

Window

Close All
Save All

The titles of all open text
windows are displayed
here.

de

.
.

Close All

Save All

nfi

Closes all text windows that are currently open. Windows are closed automaticallyby selecting this command. (However, if there are changes, a dialog box will appear
allowing you to save the changes before closing.)
Saves then closes all text windows that are currently open. Windows are closed
automatically by selecting this command.
Change Text Window

SE

GA

Co

The titles of all text windows currently open are shown in the menu. The windows
selected from the menu become active.

Function Specifications

33

move.wd0,d1
samplesample2.asm
3.asm

MOVE.L
MOVE.D(A2),D0
D1,D0
sample 3.asm

MOVE.B

Window
Close All
Save All

D1,D0

nti
al

sample 1.asm

desample1.asm
sample2.asm
sample3.asm

Co

nfi

Selecting sample1.asm fromamong the three windows above
activates the sample1.asm window as shown below.

sample 1.asm
sample 1.asm
move.wd0,d1

samplesample2.asm
3.asm

SE

GA

MOVE.D
MOVE.B D1,D0(A2),D0

34

nti
al

Special Menu
The Special menu lets you select items, using the mouse, that can be set by the Set
Shortcut Key command in the Edit menu. It also includes text display changecommands (font, size, style). Each command has a sub- menu.

SpecialMove Cursor
Input/Delete
Scroll
Font
Size
Style

SE
Function Specifications

de

nfi

9
10
12
14
16
18
24

Delete 1 character at cursor
Delete 1 character left of cursor
Delete cursor row
Delete to end of row
Cursor left from start of row
From start of row to cursor
Insert 1 row above cursor row
Insert 1 row below cursor row

Co

GA

Plain
Bold
ItalicUnderline
OutlineShadow

Move up 1 row^E
Move down 1 row^X←
Move left 1 column^A→
Move right 1 column^F
Move to left edge of row^←
Move to right edge of row^→
Move to next tab^ [TAB]

Scroll down 1 row
Scroll up 1 row
Scroll down half screen
Scroll up half screen

^G
^H
^Y
^T
^U
^B
^N
^M

^
↓ ^
↑ ^ ↓
^ ↑

Font 1
Font 2
Font 3.
.
.

35

Move Cursor

^E
^X
^A
^F
^ ←←
^ →→
^ [TAB]deMove up 1 row
Move down 1 row
Move left 1 column
Move right 1 column
Move to left edge of row
Move to right edge of row
Move to next tabntialThis is a set of commands for moving the cursor within the active text window.
These commands can be operated by keys set by the Set Shortcut Key command in
the Edit menu. Shortcut keys currently used are on the right side of the menu.

nfi

Current Shortcut key settings
Current shortcut key settings

Delete/Insert

Co

This set of commands inserts and deletes characters within the active text window.
These commands can be operated by keys set by the Set Shortcut Key command in
the Edit menu. Shortcut keys currently used are on the right side of the menu.

SE

GA

Delete 1 character at cursor
Delete 1 character left of cursor
Delete cursor row
Delete to end of row
Cursor left from start of row
From start of row to cursor
Insert 1 row above cursor row
Insert 1 row below cursor row

36

^G
^H
^Y
^T
^U
^B
^N
^M

Current Shortcut key settings
Current shortcut key settings

Scroll

^
^
^ ↓
↓
^ ↑↑

de

Scroll down 1 row
Scroll up 1 row
Scroll down half screen
Scroll up half screenntialThis is a set of commands for scrolling within the active text window. These commands can be operated by keys set by the Set Shortcut Key command in the Editmenu. Characters at the right side of the menu show the shortcut keys that are
currently used.

Current Shortcut key settings
Current shortcut key settings

68K_A.ASM
DC
sound_top
voice_top
sound_ram;
ABCD.B$80$
equ $2000
equ $3000
equ $fff000

Co

1:
2:
3:
4:
5:
6:

nfi

Scrolling down one line moves you down a single line:

D1,D2

2:
3:
4:
5:
6:
7:

68K_A.ASM

sound_top
voice_top
sound_ram;
ABCD.B
ABCD.Bequ $2000
equ $3000
equ $fff000
D1,D2- (A1),- (A2)

Scrolling up one line moves you up a single line:

GA

68K_A.ASM

sound_top
voice_top
sound_ram;
ABCD.B
ABCD.Bequ $2000
equ $3000
equ $fff000
D1,D2- (A1),- (A2)

1:
2:
3:
4:
5:
6:

DC
sound_top
voice_top
sound_ram;
ABCD.B$80$
equ $2000
equ $3000
equ $fff000
D1,D2

SE

2:
3:
4:
5:
6:
7:

68K_A.ASM

Function Specifications

37

Down Half Screen scrolls down half the screen, or approximately three rows:DCsound_top
voice_top
sound_ram;
ABCD.B$80$
equ $2000
equ $3000
equ $fff000
D1,D2

4:
5:
6:
7:
8:
9:

sound_ram;
ABCD.B
ABCD.B
ADD
ADD

equ $fff000

D1,D2- (A1),- (A2)
255(A0),D1
D1,255(A0,A1)

de

1:
2:
3:
4:
5:
6:

68K_A.ASM

nti
al

68K_A.ASM

Up Half Screen scrolls up half the screen, or approximately three rows:
68K_A.ASM$80$
equ $2000
equ $3000
equ $fff000
D1,D2

4:
5:
6:
7:
8:
9:

sound_ram;
ABCD.B
ABCD.B
ADD
ADD

nfi

DC
sound_top
voice_top
sound_ram;
ABCD.B

SE

GA

Co

1:
2:
3:
4:
5:
6:

68K_A.ASM

38

equ $fff000
D1,D2- (A1),- (A2)
255(A0),D1
D1,255(A0,A1)

Font

68K_A.ASM

de$80$
equ $20000
equ $30000
equ $fff000
D1,D2-(A1),-(A2)255(A0),D1
D1,255(A0,A1)$FFFF,A0#5555,$12345678

Font changed from
Helvetica to Courier.

Co

nfi

DC
sound_top
voice_top
sound_ram;
ABCD.B
ABCD.B
ADD
ADD
ADDA.L
ADDI

nti
al

Changes fonts in the active text window. Fonts that are added to the system folder
when an application starts up are read and added to the menu. You can choose fromamong the following fonts to use.

68K_A.ASM$80$
equ $20000
equ $30000
equ $fff000

D1,D2-(A1),-(A2)255(A0),D1
D1,255(A0,A1)$FFFF,A0#5555,$12345678#8,(A1)+
D1,D2

SE

GA

DC
sound_top
voice_top
sound_ram;
ABCD.B
ABCD.B
ADD
ADD
ADDA.LADDI
ADDQ.BADDXFunction Specifications

39

Type Size

68K_A.ASM$80$
equ $20000$30000equ $fff000
D1,D2-(A1),-(A2)255(A0),D1
D1,255(A0,A1)$FFFF,A0#5555,$12345678#8,(A1)+
D1,D2

de

;
;
;

nfi

DC
sound_top
voice_top equsound_ram;
ABCD.B
ABCD.B
ADD
ADD
ADDA.LADDI
ADDQ.B
ADDX

nti
al

Changes the character size in the active text window. Sizes include 9, 10, 12, 14, 16,
18, and 24. All characters within the screen will change to the size selected.

Co

Font changed from 12 pt. to 18 pt.

68K_A.ASM$80$
equ $20000
equ $30000
equ $fff000

SE

GA

DC
sound_top
voice_top
sound_ram;
ABCD.B
ABCD.B
ADD
ADD

40

D1,D2
-(A1),-(A2)255(A0),D1
D1,255(A0,A1); sound; voice; sound;;;;Type StylentialChanges the character style in the active text window. Styles include plain (standard), bold, italic, underline, outline, and shadow. All characters within the screen
will change to the style selected.

68K_A.ASM$80$
equ $20000$30000equ $fff000

SE

GA

DC
sound_top
voice_top
sound_ram;
ABCD.B
ABCD.B
ADD
ADD
ADDA.LADDI
ADDQ.BADDX
ADDX

Function Specifications

de

;
;
;

nfi

D1,D2
-(A1),-(A2)255(A0),D1
D1,255(A0,A1)$FFFF,A0#5555,$12345678#8,(A1)+
D1,D2

Co

DC
sound_top
voice_top equsound_ram;
ABCD.B
ABCD.B
ADD
ADD
ADDA.LADDI
ADDQ.B
ADDX

Style change from plain to italic.

68K_A.ASM$80$
equ $20000
equ $30000
equ $fff000

D1,D2-(A1),-(A2)255(A0),D1
D1,255(A0,A1)$FFFF,A0#5555, $12345678#B, (A1)+
D1,D2-(A1),-(A7); sound top address; voice top address; sound ram top addre; C501; C509; D228 0OFF
; D370 9OFF
; D1FB FFFF
; 0679 15B3 1; 5019; D541; DF4941

6.0

Assembler Overview[Label]<Command>nti
alAbout the Assembler Statement
Source 1 line of the assembler can be described by the following<Operand>

forms.

[Comments]de[ ] can be omitted but < > cannot be omitted if one or the other is described. The
separating character of each element is a space or tab.

Label

When jumping from another line, the label is used as a reference by
the name assigned to the description row.
With a maximum of 32 character, you must begin at the first column.
Characters that can be used are:nfi

a to z, A to Z, 0 to 9,?, @, _ (underbar)

Numbers cannot be used in the lead character.

Co* As special functions: : added to the end of the label means PUBLIC,# # added to the end of the label means EXTERN.

Comment

This is an explanation added to make a program more easily
understood.
It begins with a ; (semicolon) and ends with indentation.
All characters in between will be treated as comments.

Example: An example with MC68000

commandSE

label

MOVE.W42

D0, D1GA

START

operand; Contents in D0 sent to D1

comment• Symbols• Operators• Constants (numbers or characters)• Location marks
SymbolsntialExpressions
Expressions can be used freely in commands and operands. Elements that make up
the expressions are listed below.

Symbols use character strings defined as labels within an expression.

deOperators

Operators and their priority order are listed in the table below.
Meaning
multiplication
divisionMOD

remove remainder+-

additionsubtraction

SHR
SHL

shift left
shift right

LAND
LOR

AND logic
OR logicLXOR

XOR logic

EQ
NE

equal
not equalLTLE

smaller thanequal or smallerGTGElarger thanequal or larger

GA

1 complement (Z80 only)
1 complement (68K only)
high order byte
low order byte

2
3

4

5

6

SE

NOT
NOT1
HIGH
LOW

1

Co

*
/

Priority Ordernfi

Operator

Function Specifications

43

Numerical Constants• Binary• Octal• Decimal• Hexadecimal
MethodFormat
%bbbb

8

bbbbB

%0111

1000B

qqQ qq0

017Q

110

10

dddd

10

16

$hhhh

hhhhH

$FF

255

1000

de

2

ExamplentialNumerical constant is a number that is expressed by the following:

1000H

0 or 1
0 to 70 to 90 to 9 A to F

nfi

b:
q:
d:
h:

Character Constants

Example:
‘ a’
‘a b’

Co

Character constants are values, and considered ASCII code with one or two characters enclosed by quotation marks ( ‘ ).

. . . . 61H. . . . 6162H

GA

Location Marks

The location mark is expressed by “ * “ and is the location counter value at that time.
Example:

SE

ABC
XXXX

44

EQU
*+2

*

nti
al

Attributes of an Expression
Symbols within the expression must belong to any of the following.
• Absolute (value is fixed)• Relative (value is segment relative)• External reference (symbol declared EXTERN)

Expressions, including these type symbols, must follow the rules below.

All symbols used within a calculation other than addition and subtraction must
be absolute.

•

Addition
One element must be absolute.
Relative + absolute becomes relative.
The elements of expressions containing external references must all be absolute.

•

Subtraction
Relative - absolute is relative.
Subtraction by relative of equal segments are absolute.
Other elements of expressions containing external references must all be absolute.

nfi

de

•

Co

The rules above apply in each step while evaluating an expression.
Example:

CSEG
EQU
EQU
EQU
DW
DW

*
*
*
ABC+DEF-GHI . . . ERR
ABC+(DEF-GHI). . . OK

SE

GA

ABC
DEF
GHI

Function Specifications

45

7.0

Assembler Pseudo-Instructions

Macro Control

Conditional
Assembler

CSEG
DSEG
COMMONEND
PUBLIC GLOBAL XDEF
EXTERN EXTRN XREF
EQU
SET DEFL
DB
DEFB
FDB
DW
DEFW
FDD
DC
DEFM
FCC
DS
DEFS
RMB
MACRO
ENDM
EXITM
REPT
IRP
IRPC
IFDEF
IFNDEF
IFB
IFNB
IFE
IFNE
IFIDN

GA

IFDIF

SE

ELSE
ENDIF

46

Designates origin
Designates absolute segment.
Designates for user and extensive use
segment.
Designates code and segment.
Designates data and segment.
Designates common block.
Ends program.
Designates externally defined name
Designates external reference namedeSymbolDefinition
Data Definition

ORG
ASEG
BSEG

Function

Value allocation
Temporary value allocation
Defines bytes
Defines words
Defines characters
Allocates memory

Defines macroEnds macro definition
Interrupts macro definition
Repeats macro
Continues macro
Character string macro
Assemble if definition is complete
Assemble if there is no definition
Assemble if operand is a space
Assemble if operand is not a space
Assemble if expression value is 0
Assemble if expression value isn't 0
Assemble if 2 character strings are equal.
Assemble if 2 character strings differ.
Assembles by reverse conditions of futureIF.
End conditional assemble

Co

Link Control

Pseudo-instruction

nfiClassificationntialPseudo-instructions are shown in the table below.

Output Control

Other

Pseudo-instruction.LIST.XLIST.MACRO.XMACRO.IF.XIFINCLUDE
TITLE
PAGE

Outputs list
Discontinues output list
Outputs macro expansion
Discontinues output macro expansion.
Outputs condition skip
Discontinues output condition skip
INCL

Read file
Designates list title
Designates form feed or number of rows in
one page.
Designates radix

SE

GA

Co

nfi

de

RADIX

FunctionntialClassification

Function Specifications

47

ORG

<expression>

nti
al

ORG

Sets the <expression> value at the location and counter. The code to be manufactured is assigned from the address of that value. <expression> must be an absolute
expression already determined by value.
Example:code

00008000
00008004

org
dl
move

12345678
30388000

BSEG, CSEG, DSEG, COMMON

nfi

BSEG
CSEG
DSEG
COMMON

8000H$12345678$8000.W,d0deaddress

Example:

$0001
$0002
$0003

d0,$8000
start

SE

GA

DSEG
dw
dw
dw
CSEG
move
jmp
.
.
.

Co

These commands set the code and relative address in memory into the location andcounter. After a command, the location and counter values become the final addressof each segment until that location value is not changed by ORG. Also, when activated, the location and counter value of each segment are initialized by the value set
by the option.

48

Developer A

Developer B

CSEG

DSEG
.
.
.
.

org $8000
.
.

No. 1

DSEG
No. 2

CSEG
.
.

BSEG
No. 3

No. 4

No. 5

nfi

org $9500.
.

Supposing each to beplaced in order
beginning with thelowest addressdeorg $9000
.
.

nti
al

When all modules are created individually:

$8000

Co

If these two modules are linked:

No. 1

CSEG block

No. 5
$9000

No. 2

GA

DSEG block
No. 4

No. 3

BSEG block

SE

$9500

As shown above, even modules that were created separately can be grouped together when linking parts that resemble each other. Generally, CSEG is used exclusively for programs and DSEG is used exclusively for data. BSEG is peculiar to thisprogram (SDSS), and is an application segment that can be used freely by the user.

Function Specifications

49

nti
al

END
Shows the end of the program. Any program after END is ignored.
Example:
org
add

$8000
d0,d1
.
.
.

END

PUBLICGLOBALde

PUBLIC, GLOBAL<symbol>{,<symbol>}<symbol>{,<symbol>}

Example:start

public

start

move

d0,d1

start1

andi#$7f,d0File 1

Co

ret

nfi

Symbols that are declared PUBLIC can refer to symbols within other programs.
The EXTERN declarative is necessary for using modules.

extern

start

.
.

jmp

start

OK

start1

Error

.
jmp

File 2GA

EXTERN, EXTRN
EXTERN
EXTRN<symbol>{,<symbol>}<symbol>{,<symbol>}SE

To refer to symbols defined by other modules, an EXTERN declarative is required.
(See PUBLIC, GLOBAL example).

50

<label>EQU<expression>

Assigns <expression> values to labels.

nti
al

EQU

A label defined by an EQU pseudo-instruction cannot be redefined by parts of otherprograms. Also, <expression> can not use an outside reference or previously referenced symbol.
Example:equ $01#abc,d0deabc
move.w

treated as 1<label><label>[:] SET[:] DEFL

nfi

SET, DEFL<expression><expression>(valid only for 68K)
(valid only for Z80)

Assigns <expression> values to label.

Example:Co

SET pseudo-instructions, different from EQU, can redefine identical labels indefinitely. Limitations on <expression> are the same as with EQU.
set $01#abc,d0 ——— abc in this line is handle as 1
set $02#abc,d0 ——— abc in this line is handle as 2

SE

GA

abc
move.w
abc
move.w

Function Specifications

51

DB
DEFB
FCB

<expression><expression><expression>{,<expression>}{,<expression>}{,<expression>}nti
alDB, DEFB, FCB

The value of 8 bits corresponding to the operand <expression> is placed in memory.
More than one operand can be used, each separated by a comma. Omitting the area
between commas has the same meaning as designating 0.
Example:code

00008000
00008004

12345678
01020001

org
db
db

8000H
$12,$34,$56,$78
1,2,,1deaddress

DW, DEFW, FDB<expression><expression><expression>{,<expression>}{,<expression>}{,<expression>}

nfi

DW
DEFW
FDB

Example:Co

The value of 16 bits corresponding to the operand <expression> is placed inmemory. More than one operand can be used, each seperated by a comma. Omitting the area between commas has the same meaning as designating 0.

addresscode

00008000

00010002
00000001
1234

SE

GA

00008008

52

org
dw

8000H
1,2,,1

defw

$1234

DL

<expression>{,<expression>}

nti
al

DL

The value of 32 bits corresponding to the operand <expression> is placed inmemory. More than one operand can be used, each seperated by a comma. Omitting the area between commas has the same meaning as designating 0.
Example:code

000080000

12345678

org
dl

8000H
$12345678

00008004

1234

dw

$1234

de

address

DC, DEFM, FCC/<ASCII character string>//<ASCII character string>//<ASCII character string>/

nfi

DC
DEFM
FCC

The character string is put into the ASCII code and that value is placed in memory.
The symbol that encloses the character string does not have to be a slash (/), but thelast symbol must be the same as the first symbol.

addresscode

61626364
6566

org
dc

8000H
/abcdef/SE

GA

00008000
00008004

Co

Example:Function Specifications

53

DS, DEFS, RMB<expression><expression><expression>

nti
al

DS
DEFS
RMB

The amount of bytes designated by <expression> is maintained in memory. <expression> must be an absolute expression with an already decided value.

code

00008000
00008004
00008006
0000806A

61626364
6566

org
dc
ds
abcd

C100

MACRO ~ ENDM
MACRO
.
ENDM

100
d0,d0

argument...,Co<Macro Name>

8000H/abcdef/nfi

addressdeExample:Macro definition is performed between MACRO and ENDM.
Limitations on <Macro Name> are the same as normal labels.

macro
name,nodc /name/
dc
/no/
endm

Macro definition part

tel
tel

data definition using tel macro

TANAKA,12-3456
KOJIMA,98-7788

SE

tel

GA

Example: When you want to define a name and telephone number ascharacter string data.

The above data definitions are developed as shown on following page.

54

tel
54414E41
4B4131322D33
343536+0000000D+00000011+00000013+00000017

4B4F4A49
4D4139382D37373838TANAKA,12-3456
dc/TANAKA/nti
al+00000000+00000004+00000006+0000000A

dc/12-3456/

teldc

KOJIMA,98-7788/KOJIMA/dc/98-7788teltel

Macro UseTANAKA,12-3456
KOJIMA,98-7788

nfi

68K Command direct
dc /TANAKA/
dc /12-3456/
dc /KOJIMA/
dc /98-7788/

deUsing macro definitions gives a program that is more advanced than using a groupof commands held by the original MPU (micro processing unit). For example, data
definitions of telephone numbers are:Here, the descriptor becomes simpler and easier to understand.

EXITM

Co

EXITM

SE

GA

EXITM pseudo-instructions are used to force the end of MACRO, REPT, IRP, IRPC.
If EXITM is executed, macro expansion is immediately stopped and moves to thenext line.

Function Specifications

55

REPT ~ ENDM
REPT.

<expression>ntial<Macro Name>

ENDM

REPT expands the part from REPT to ENDM only the number of times that theabsolute expression is displayed by <expression>.
Example:

REPT
NOP
ENDM

code

de

address
4

REPT
NOP
ENDM
NOP
NOP
NOP
NOP

EXPAND

IRP ~ ENDM
<Macro Name>

IRP
.
ENDM

Co

nfi

+00000000 4E71
+00000002 4E71
+00000004 4E71
+00000006 4E71

<dummy>,<argument list>

Example:GA

IRP expands until the argument list has been replaced by dummies.

SE

IRP
X,<1,2,3,4>
DB
X
ENDM

56

addresscode

EXPAND+00000000 01+00000001 02+00000002 03+00000003 04

IRP X,<1,2,3,4>
DB X
ENDM
DB 1
DB 2
DB 3
DB 4

IRP ~ ENDM
IRPC
.
ENDM

<dummy>,<argument list>ntial<Macro Name>

IRPC has as an argument a character string, and expands by replacing each characterof the part until ENDM.

deExample:address
IRPC
DC
ENDM

X,123456/X/

EXPAND

code

SE

GA

Co

nfi

+00000000 31+00000001 32+00000002 33+00000003 34+00000004 35+00000005 36

IRPC
DB /X/ENDM
DC /1/
DC /2/
DC /3/
DC /4/
DC /5/
DC /6/

Function Specifications

57

IFDEF ~ ENDIF<symbol>

nti
al

IFDEF
ENDIF

If <symbol> is predefined, assemble continues until ELSE or ENDIF.
Example:when this line exists, the 2 lines below
will not be assembled

equ 1
ifdef aaa
move.w
nop

d0,d1

endif

IFNDEF
ENDIF

nfi

IFNDEF ~ ENDIF

de

aaa

<symbol>

Example:aaa

equ 1
ifndef aaa
move.w
nop

Co

If <symbol> is undefined, assemble continues until ELSE or ENDIF.
IFDEF ~ ENDIF has a reverse function.

when this line doesn't exist, the2 lines below will not be assembled

d0,d1

GA

endif

IFB ~ ENDIF
IFB<character string>SE

If there are no characters between “<“ and “>” assemble continues until ELSE or
ENDIF.
Example:ifb<>

move.w d0,d1 ________ can assemble

endif

58

IFNB ~ ENDIF

nti
al

IFNB <character string>
ENDIF

If there are characters between “<“ and “>” assemble continues until ELSE or
ENDIF. IFB ~ ENDIF is a reverse function.
Example:ifnb <abc>move.w d0,d1 ________ can assemble

IFE ~ ENDIF<expression>

nfi

IFE

de

endif

If the value of <expression> is 0, assemble continues until ELSE or ENDIF.
Example:

equ 1
bbb-1
move.w d0,d1 ________ can assemble

Co

bbb
ife
endif

IF ~ ENDIF, IFNE ~ ENDIF
IF<expression>

or

IFNE

<expression>GA

If <expression> has a value other than 0, assemble continues until ELSE or ENDIF.
IFE ~ ENDIF has a reverse function.
Example:

bbb
if

equ 1
bbb-1
move.w d0,d1 ________ can not assemble

SE

endif

Function Specifications

59

IFIDN<character string>,<character string>nti
al

IFIDN ~ ENDIF

If two character strings are equal, assemble continues until ELSE or ENDIF. Character strings must be enclosed by “<“ and “>”.
Example:deifidn <same>,<same>
move.w
d0,d1 ________ can assemble
endif

IFDIF ~ ENDIF
IFDIF<character string>,<character string>nfi

If two character strings are different, assemble continues until ELSE or ENDIF.
Character strings must be enclosed by “<“ and “>”. IFIDN ~ ENDIF has a reverse
function.
Example:Co

ifdif <same>,<same>
move.wd0,d1
endif________

ELSE, ENDIF

GA

ELSE
ENDIF

can not assemble

ELSE performs assemble or skips according to conditions opposite of the leading
conditional assemble command. Used in the form of IF** ~ ELSE ~ ENDIF. ENDIF
shows the end of conditional assemble.
Example:<>move.w

d0,d1

can assemble

move.w

d0,d1

can not assemble

SE

ifb

else

endif

60

.LIST.XLIST

nti
al.LIST, .XLIST.LIST is the condition allowing list output.
.XLIST is the condition not allowing list output. .LIST is the default. When the list
output switch is off in the project, list output will not be performed unconditionally.

abcd.XLIST
abcd
abcd.b
.LIST
abcd

code

de

addressd0,d0

00000000 C100

abcd

d7,d0
d2,d5

00000002 C903

abcd

d3,d4

nfi

d3,d4

d0,d0

List File

Co

Source File

.MACRO, .XMACRO.MACRO.XMACROcan output macro expansion list
can not output macro expansion list

GA

Default is possible. But when the list output switch is off in the project, a list cannot
be output unconditionally.

.XMACROtel

TANAKA,12-3456

Assemble expansion is not displayed on the list

KOJIMA,98-7788

Expands assemble.MACROSE

tel

Source File

Function Specifications

61

nti
al

.IF, .XIF
Able to output a list of lines skipped by the conditional assemble function
Not able to output a list of lines skipped by the conditional assemble function

.IF
.XIF

In the default setting the list can be output. But when the project list output switch
is off in the project, a list can not be output unconditionally.

de

Example:nfi

bbb equ 1
.XIF
if
bbb
move.w d0,d1 ____ can assemble and output a list
else
move.w d0,d1 ____ can not assemble and output a list
endif

Co

INCLUDE, INCL
INCLUDE
INCL<file name><file name>Reads and assembles files displayed by <file name>.
INCLUDE permits nesting of up to 10 levels.
Example:if

bbb

move.wd3,d4

SE

Source File

62

File name = master.lib

master.lib

GAincludebbb equ 1
read toccc equ 2

TITLE

nti
al

TITLE
<character string>

Sets the title of the list file.
Example:If TITLE TEST
are described in source file ABCD.ASM, in ABCD.LST created after assemble:
SDSS (MC68000) Cross Macro Assembler - Macintosh - Version 1.0 30 Nov. 1993

de

<ABCD.ASM> TEST

2 lines containing title characters in the location where the pageis divided

RADIX

nfi

RADIX
<expression>

Example:Co

Designates the radix. The radix is designated to be 10 at the time of start up.
With <expression> as an absolute expression, the value must be either 2, 8, 10, or 16.

code00000000

1234

00000002

04D2

radix
dw
1234
radix
dw
1234

16
10

GA

address

NAME, NAM
NAM
NAME

SE

Designates the module name, which does not have to be designated. If it is designated when linking, it will be displayed in the map file.

Function Specifications

63

List of Assembler Linker Error Messages
Output Message

Assemble error

Remarks

nti
al

8.0

There is an error in the assemble file

The error is display along with the file nameLine is not correct

No source file specified

No source file was specified

Could not open file

Source file could not be opened

Could not create file

File could not be created

Too many nesting files

File nesting is too deep (including nest)

Too many nesting macros

Macro nesting is too deep

Label buffer full

Too many labels

Macro buffer full

Too many macros

Unterminated conditional

control such as # if are not closed

Unterminated macro

Macro is not closed

Not enough memory for SDSS

Not enough memory to start up SDSS

Many errors

There are too many errors

Relative branch out of range

Long distance between relative jumps

Constant was expected

No constant at location where it should be

Reference to multi defined

Performs multiple definitions

Extra characters on line

Unreadable characters exist

nfi

There is no IF that corresponds to ELSE

Illegal expression

SE

GA

Illegal expression

Co

Already had ELSE clause64deLine invalid

Output Message

Remarks
Label was not at required location

Symbol is multi defined

Duplicate symbols

Operand was expected

No operandPermanent label was expected

No permanent label

Symbol is reserved word

Reserved word was used

Unexpected end of strings

String ends at an unexpected location

Too complex expression

Expression used is too complex

Symbol not defined

Undefined symbol

Value is out of range

Value exceeds range

Symbol already external

External symbol was used as local

Syntax error

Syntax error

Division by 0

Divides by 0

Unexpected end of fileEnd of file can not be foundBAD D8 RELATIVE

Exceeded the range of the 8 bit relative address

BAD D16 RELATIVE

Exceeded the range of the 16 bit relative address

SE

GA

Co

nfi

de

nti
al

Label was expected

Function Specifications

65

9.0

Load Module Output FormatntialMotorola S28
The following is one output format defined by Motorolla that outputs a 24-bit
address code.

Sign on record

S00B00004441544120492F4FF3

S804000000FB

Data record

deS214000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFC.
.

End of file record

nfi

Contents of a data record are shown below.

byte count (byte number (hexadecimal) after this byte)

S2 14 000000 FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF FC
Data area

Record lead characters(fixed)Co

24 bit address

Check sumSE

GA

The check sum is a complement of single binary addition as far as the byte immediately before check sum within the code that contains the byte count, address, and
data.

66

nti
al

Intel HEXThe Intel format is one output format; it’s output is in a 16 bit address code. Each
record begins with a colon (:) and then continues with the byte count. After the byte
count is the 4 digit address (in hexadecimal), and the record type. Next is the line ofdata, and finally the check sum.

:10000000FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00:10000100FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF00.
.

Data record

de:00000001FF

End of file record

nfi

Contents of a data record are shown below.

byte count (byte number (hexadecimal) after this byte): 10 0001

00

FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
Data area

Check sumCo

Record type(0=data, 1-EOF)

00

16 bit address
Record lead characters(fixed)GA

The check sum is a complement of double binary addition as far as the byte immediately before check sum within the code that contains the byte count, address, record
type, and data.

SE

Binary Format Output
This is a format that outputs the linked hexadecimal data code just as it is.
Data can only be output without having to output information such as an address.

Function Specifications

67