background image

This manual

is intended

for ASSEMBLY

LANGUAGE

programmers.

It assumes

a

moderate

technical

knowledge

of small

computers,

and familiari ty with the

basic operation

of the Vector

Graphic

system,

the CP/M operating

system,

and

the

z-sa

instruction

set.

This manual

will describe

the operation

of the ZSM Assembler

for CP/M,

including

all pseudo

operations

and syntax.

It assumes

the user knows how to program

in assembly

language

using the

sasa

superset

form of Z-SO mnemonics.

Vector

Graphic

can

supply

a description

of these mnemonics

in relation

to the Zilog/Mostek

mnemonics.

Summary of Contents for CP/M 2 ZSM Assembler

Page 1: ...cit m 2 m 4 miLt I USERS MAN UAL...

Page 2: ......

Page 3: ...ZStt ASSEMBLER FOR CP M Version 2 5 USER S MANUAL Revision A February HJ 1980 CP M is a registerd trademark of Digital Research...

Page 4: ...changes except when an agreement to the contrary exists Revisions The date and reV1Slon of each page herein appears at the bottom of each page The revision letter such as A or B changes if the MANUAL...

Page 5: ...ystem the CP M operating system and the z sa instruction set This manual will describe the operation of the ZSM Assembler for CP M including all pseudo operations and syntax It assumes the user knows...

Page 6: ......

Page 7: ...1 1 1 2 2 1 2 2 2 3 2 4 2 5 2 6 2 7 Calling ZSM from CCP 2 1 I anguage eleInents 2 2 Constants 2 3 O rators 2 4 Registers 2 5 Pseudo ops 2 6 Assembly errors 2 11...

Page 8: ......

Page 9: ...8M the CP M Z8Mdoes not have either the ENDor TABpseudo operations and it has several new pseudo operations such as TITLE RADIX and MARGIN If you are not familiar with the S3S0 superset style of mnemo...

Page 10: ...een an operand and a following comment That is is now a valid end of operand character 5 Type M errors no longer destroy the value of the last preceeding entry in the Symbo 1 Table 6 Overlappin hex co...

Page 11: ...hen calling ZSM Whenever ZSM puts an assembler listing file onto disk this file is always of the form filename PRN again where the filename is the same name used when calling ZSM For example if you as...

Page 12: ...not required Each element except for the comment must be separated from the preceding one by at least one space character or a tab character Tab characters cause the elements to print on columns vhic...

Page 13: ...comment ASCII constants are indicated by enclosing the appropriate character in single quotes Any ASCII character can appear between the quotes except for 1 control Characters having an ASCII code of...

Page 14: ...ers are truncated to 16 bits All logical operators perform their function on a bit by bit basis and they also treat their operands as 16 bit values Operators combine with constants to form expressions...

Page 15: ...Ptr SP Index reg X IX Index reg Y IY Also may be called DE for register pair instructions Also may be called HL for register pair instructions Although not supported by ZSM also called HL Program Stat...

Page 16: ...ether and assembled as one file The LINKoperand is a source file name enclosed in single quotes Linking to a file is like a subroutine that is when the linked to file is exhausted assembly of the orig...

Page 17: ...to the prompt then TESTwould have a value of 56 hex he PRTpseudo op allows infonnation to be displayed on the console during pass 2 If operands are present they are displayed otherwise just a carriage...

Page 18: ...melOOry locations Either numeric or ASCII operands may be present but either one must evaluate to only 8 bi ts This means that only one ASCI I character may be included per operand For example z is a...

Page 19: ...C6 hex The DTZpseudo op is like DTalso only it causes a byte of to be appended to the text string Thus the example uld be 41 42 43 44 45 46 13 The DS pseudo op causes the assembler to skip over the nu...

Page 20: ...ply to all numbers in the text because it is read by the assembler in the first pass Only use it once within the text If you do not use the RADIX pseudo op ZSM defaults to a radix of 10 For example to...

Page 21: ...label you will get a J error instead of a U error Although perhaps the U would be more appropriate the way the errors are handled gives J priority r r abel error characters M Missing label error This...

Page 22: ......

Page 23: ...i J 000 1 1 SOH Del 1 1 I A I Q j CI CI 0010 2 STX I CC2 1 2 B R I I i r t 00 l 1 3 ETX Da 3 c I S I i e o 1 O O 4 EOT DC4 4 D I T cI t I I 0 l a 1 S ENQ NAKl 5 E U I II I o r lO 6 ACK SYN 6 F V I f y...

Page 24: ......

Reviews: