Intel 8080, 8085 User Manual

4 (2)
Intel 8080, 8085 User Manual

ISIS-II

8080/8085 MACRO ASSEMBLER

OPERATOR'SMANUAL

Manual Order Number: 9800292-04 Rev. D

I

Copyright © 1977, 1979, 1980 Intel Corporation

I

Intel Corporation, 3065 Bowers Avenue, Santa Clara, California 95051

Additional copies of this manual or other Intel literature may be obtained from:

Literature Department

Intel Corporation

3065 Bowers Avenue

Santa Clara, CA 95051

The information in this document is subject to change without notice.

Intel Corporation makes no warranty of any kind with regard to this material, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. Intel Corporation assumes no responsibility for any errors that may appear in this document. Intel Corporation makes no commitment to update nor to keep current the information contained in this document.

Intel Corporation assumes no responsibility for the use of any circuitry other than circuitry embodied in an Intel product. No other circuit patent licenses are implied.

Intel software products are copyrighted by and shall remain the properly of Intel Corporation. Use, duplication or disclosure is subject to restrictions stated in Intel's software license, or as defined in ASPR 7-104.9(a)(9).

No part of this document may be copi~d or reproduced in any form or by any means without the prior written consent of Intel Corporation.

The following are trademarks of Intel Corporation and may be used only to describe Intel products:

ICE

iSBC

Multimodule

Library Manager

PROMPT

iCS

MCS

Promware

Insite

Megachassis

RMX

Intel

Micromap

UPI

Intelevision

Multibus

"scope

Intellec

 

 

and the combination of ICE, iCS, iSBC, MCS, or RMX and a numerical suffix.

ii

I A430/881/10K DO I

n

PREFACEI

This manual describes operating procedures for the ISIS-II SOSO/SOS5 Macro Assembler. The assembler translates SOSO/S085 assembly language source code into object code executable on the SOSO/S085 microprocessors. No discussion of assembly language or assembler directives is provided here, as these topics are covered in the document

8080/8085 Assembly Language Programming Manua19S00301

The ISIS-II assembler is invoked using the diskette operating system facility of Intel's Intellec Microcomputer Development System. Use of this facility is described in the document

ISIS-II System User's Guide 9Soo306

iii

CONTENTSI

CHAPTER 1

PAGE

ASSEMBLER OVERVIEW

 

ISIS-II Assembler Environment. . . . . . . . . . . . . . . .

. .. 1-1

Overlay and Nonoverlay Operating Modes ........

1-1

Symbol Table Size. . . . . . . . . . . . . . . . . . . . . . . . . .

. .. 1-2

Input/Output Files. . . . . . . . . . . . . . . . . . . . . . . . . . .

. .. 1-2

Source File. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. .. 1-2

Object File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. .. 1-2

List File. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. .. 1-2

Symbol-Cross-Reference File. . . . . . . . . . . . . . . . .

. .. 1-3

Assembler Files. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. .. 1-3

CHAPTER 2

 

ASSEMBLER CONTROLS

 

Introduction to Assembler Controls ................

2-1

Primary and General Controls...................

2-1

Specifying Controls............................

2-1

Summary of Controls. . . . . . . . . . . . . . . . . . . . . . .

. .. 2-1

ISIS-II Assembler Controls .......................

2-2

ISIS-II Assembly-Time Command. . . . . . . . . . . .

. .. 2-2

Primary Controls ..................... .....

.. 2-3

General Controls. . . . . . . . . . . . . . . . . . . . . . . . .

. .. 2-4

Defaults .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. .. 2-4

ISIS-II Assembler Control Lines ...................

2-5

CHAPTER 3

 

ASSEMBLER OPERATION

 

Activation Sequence. . . . . . . . . . . . . . . . . . . . . . . . . .

. .. 3-1

Sample Assembly ......................... . . .

. .. 3-1

Reducing Assembly Time. . . . . . . . . . . . . . . . . . . . . .

. .. 3-3

CHAPTER 4

PAGE

LIST FILE FORMATS

 

Assembly Listing Format. ........................

4-1

Page Header..................................

4-1

Title Line .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. .. 4-1

Column Heading. . . . . . . . . . . . . . . . . . . . . . . . . . .

. .. 4-1

Assembly Output Line ... . . . . . . . . . . . . . . . . . . .

. .. 4-2

Symbol Table Listing. . . . . . . . . . . . . . . . . . . . . . .

. .. 4-3

Error Summary. . . . . . . . . . . . . . . . . . . . . . . . . . . .

. .. 4-3

Symbol-Cross-Reference Listing ...................

4-4

Page Header. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. .. 4-4

Cross-Reference Output Line ...................

4-4

CHAPTERS

 

PL/M LINKAGE CONVENTIONS

 

CHAPTER 6

 

RUNNING YOUR PROGRAM

 

CHAPTER 7

 

ERROR MESSAGES

 

Error Detection and Reporting . . . . . . . . . . . . . . . . .

. ... 7-1

Error Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. .. 7-1

Source-File Errors. . . . . . . . . . . . . . . . . . . . . . . . . .

. .. 7-1

Run-Time Errors ..............................

7-2

Assembler Control Error. . . . . . . . . . . . . . . . . . . .

. .. 7-3

ISIS-II Error Messages .........................

7-3

v

CHAPTER 11

ASSEMBLER OVERVIEW

An assembler performs the clerical function of converting your assembly language program into machine-executable form. It accepts your source file and, depending on the output options selected, can produce an executable object file, a listing of the source and assembled code, and a symbol cross-reference listing.

The ISIS-II 8080/8085 Macro Assembler (ASM80) runs under the Intel Systems Implementation Supervisor (ISIS-II) and resides on the ISIS-II system diskette. Operation of the ISIS-II assember is the subject of this manual.

Details for loading and controlling the ISIS-II assembler are given in Chapters 2 and 3. List formats are shown in Chapter 4. Error messages issued by the assembler are listed in Chapter 7. Chapter 5 describes the linkage conventions for passing parameters from an assembly language program module to a PL/M module. The hardwarelsoftware environment requirements are summarized below.

ISIS-II Assembler Environment

The ISIS-II assembler uses the following hardware:

Intellec system with 32K RAM memory (48K if source contains macros)

Console device (TIY or CRT)

Diskette unit

Line printer (if available)

This assembler runs under ISIS-II, which includes the Locater, Linker, and Library Manager.

Overlay and Nonoverlay Operating Modes

The ISIS-II assembler can be run in either an overlay or nonoverlay mode. Overlay mode requires only 32K of Intellec memory and is selected by specifying the NOMACROFILE control (described in Chapter 2). This control can be specified only if your program does not include macros.

If your program has macros, or if you want faster assemblies, specify the MACROFILE control. Your Intellec system must have a 48K memory in this case, but the assembler can run in nonoverlay mode. Specifying MACROFILE also adds the macro reserved symbols (MACRO, ENDM, LOCAL, REPT, IRP, IRPC, EXITM) to the list of reserved words.

No matter how much Intellec memory you have, the assembler runs in overlay (slower) mode unless you specify MACROFILE. (NOMACROFILE is the default control.) Both modes use an optional overlay to create cross-reference listings.

I-I

Assembler Overview

8080/808S Assembler

Symbol Table Size

In overlay mode with 32K of Intellec memory, you can generate slightly more than 200 symbols. In nonoverlay mode with 48K of memory, you can have slightly more than 800 symbols. Each 16K memory increment adds 2000 symbols.

Macro processing uses a small amount of memory (for storing actual parameters) that could otherwise be used for symbols. The size or number of macro definitions does not affect symbol table space, however, since macro definitions are stored in a diskette file.

If you need more symbol table space, you can either add more Intellec memory or divide your program into smaller modules.

Input/Output Files

Source File

The input to the ISIS-II assembler is a source file, which can contain three elements:

An 8080/8085 assembly language program, composed of instructions described in the 808018085 Assembly Language Programming Manual (9800301);

Assembler directives, described in the same manual;

Assembler control lines, described in the next chapter of this manual.

Only the instructions in your assembly language program are translated into executable object code.

Object File

The ISIS-II assembler creates its object file on a flexible diskette.

The object file contains machine language instructions and data that can be loaded into memory for execution or interpretation. In addition, it contains control information governing the loading process (such as the starting address for program execution) .

The assembler can produce object files in relocatable object code format. The object modules produced by the ISIS-II 8080/8085 assembler can be loaded and executed anywhere in memory if they don't interfere with other programs they need for proper operation. The modules can also be linked to form a larger program. See the

ISIS-II Systems User's Guide (9800306) for details.

List File

The list file is a formatted file designed to be output to a line printer or terminal. It includes listings of:

Your assembled object code;

Your source program;

A table of symbols and their values;

A summary of assembly errors.

The formats of these listings are described in Chapter 4.

1-2

8080/8085 Assembler

Assembler Overview

Symbol-Cross-Reference File

During the first pass of the assembler, a file of symbol-cross-reference records is created, if requested. This diskette file is named ASXREF.TMP .

In general, the assembler generates two types of symbol-cross-reference records: symbol-definition records and symbol-reference records. If a symbol appears as a name in a label field and the symbol is being defined (by SET, EQU, MACRO, or as a label), a symbol-definition record is produced. If the symbol is being redefined by SET or MACRO, it is considered a symbol definition. All other symbol occurrences are considered references and cause the assembler to generate a symbol-reference record each time the symbol appears. Symbol definition records are terminated by a pound sign (##) in the cross-reference listing.

All symbols are cross referenced except dummy parameters and local labels appearing in macro definitions (that is, all global user-defined symbols, macro names, and actual symbols replacing dummy parameters or local labels are cross referenced). When certain controls that suppress source listing are specified (NOLIST, NOGEN, NOCOND), symbols not listed are not cross referenced.

The assembler calls on ISIS-II to load its cross-reference-generator program and ASXREF.TMP from the diskette. From the programmer's point of view, the operations required to produce the cross-reference listing are automatic (once the cross reference file has been requested). The format of the cross-reference listing is shown in Chapter 4.

Assembler Files

The ISIS-II assembler uses several files of its own, such as the intermediate crossreference file just mentioned. While you don't need to remember the names of these files, you must know where they reside to avoid diskette space conflict.

The assembler root program (ASM80) and its overlays (ASM80.0Vn, where n=O, 1,2...) must reside on the same diskette, but this diskette can be on any drive. The cross-reference generator (ASXREF) must reside on this diskette also.

The intermediate cross-reference file (ASXREF.TMP) is written to the drive containing your source file. The MACROFILE control determines where the intermediate macro file (ASMAC.TMP) is written; the default is the source file drive.

The list and object files can be directed to any drive via assembler controls. The default sends these files to the source file drive.

1-3

CHAPTER 21

~SEMBLER CONTROLS

Introduction to Assembler Controls

Assembler controls allow you to specify the input!output files or devices to be used by the assembler and whether list or object files (or portions of these files) are to be generated by the assembler. Controls can be specified at two levels:

In commands specified at assembly time

As control lines embedded throughout your source file

The latter allows selective control over sections of your program. For example, you might want to suppress the assembly listing for certain sections of your program, or to cause page ejects at specific places.

Primary and General Controls

Controls are classified as primary and general. Both classes of controls can be set when the assembler is run or in source file control lines. However, source file control lines containing primary controls must be inserted before the first line of comments or source code. General controls can be respecified at any time.

The ISIS-II assembler allows primary controls to be specified only once. This applies to controls specified in assembly-time command lines, to control lines embedded in your source code, or combinations of the two.

Specifying Controls

Controls can be specified using either upper-case or lower-case characters.

If a control is specified incorrectly in an assembly-time command, the entire command is ignored and must be reentered.

If a control is specified incorrectly in a source code control line, the incorrect control and all controls following it in the line are ignored.

Summary of Controls

The following list shows the controls available, their basic functions, and whether they are primary or general (PIG). Default controls are italicized. The remainder of this chapter describes each control in greater detail.

Control

PIG

Function Area

OBJECTINOOBJECT

P

Object File

OEBUGINOOEBUG

P

Object File

PRINTINOPRINT

P

Assembly Listing

CONO INOCONO

G

Assembly Listing

LlSTINOLIST

G

Assembly Listing

SYMBOLS INOSYMBOLS

P

Assembly Listing

XREFINOXREF

P

Cross-Reference Listing

PAGING INOPAGING

P

listing Format

2-1

Loading...
+ 25 hidden pages