home *** CD-ROM | disk | FTP | other *** search
-
-
- ZMAC/ZML, THE Z-SYSTEM ASSEMBLER/LINKER
-
- VERSATILE, FAST, SUPPORTED, and a BARGAIN at $50 (plus S&H). ZMAC,ì
- ZML, ZMLIB, support utilities, and documentation (WS format) are allì
- included on disk (printed manual is extra). All are ZCPR3x-compatible,ì
- are optimized for use with ZEX, and have on-line HELP. Friendly toì
- first time users; competent for experienced programmers. For CP/Mì
- compatible systems using a Z80 compatible CPU.
-
- This bulletin is in three sections devoted to ZMAC, ZML, and ZMLIB
- respectively. At the end of the bulletin you will find a list of
- the principal sources for these programs and a list of references
- to published articles on the art of assembly language programming.
- The manual itself contains these and even more references to help
- both beginning and advanced programmers.
-
- Al Hawley (213) 649-3575 (voice)
- (213) 670-9465 (modem)
-
- ================================================================
-
- ZMAC, the Assembler
-
- ZMAC is a two-pass assembler for ZILOG/HITACHI mnemonics. It makesì
- HEX, REL, SYM, and listing files from sources prepared for olderì
- assemblers as well as those using the powerful ZMAC syntax. Allowsì
- nested INCLUDE files, redefinable macros and pseudo-ops, datestampedì
- listings, error logging, and up to 13 named common bases. Relativeì
- jump opportunities are flagged in the PRN listing! The help screenì
- reflects the status of the main configuration options; ZCNFG reportsì
- the rest. ZCNFG is the public domain Z-System configuration utilityì
- included with ZMAC.
-
- Here is the ZMAC help screen, copied to this file with RECORDER.IOP.
-
- B3:LINK>zmac //
-
-
- ZMAC Relocating Macro Assembler v 1.1, 03/06/90
- Copyright 1988,1989 by A.E. Hawley
-
- Syntax:
- ZMAC [dir:]name[.typ] [[/]option, ...]
-
- Options: defaults:
- C - listing to Console NO
- L - Listing to printer NO
- H - object code format (HEX/REL) REL
- Q - display assembly statistics? YES
-
- O[filespec] - Object file (name.REL) YES
- P[filespec] - listing file (name.PRN) NO
- S[filespec] - Symbol file (name.SYM) NO
- E[filespec] - Error Log file (name.ERR) YES
-
- - Use options in any combination, separated by " " or ",".
- - Single option letters (no filespec) toggle the default.
- - When a filespec is included, the file is produced as required.
- - "filespec" is [dir:]filename[.typ]
- - Use ZCNFG to Review & Set defaults.
-
- B3:LINK>record off;NOTE this turns off RECORDER.IOP
-
- ----------------------------------------------------------------
-
- ZMAC PSEUDO-OPS
-
- ZMAC implements a large number of pseudo-ops. If you're familiar with
- another popular assembler, you'll find many old friends here.
-
- $INCLUDE .180 .ACCEPT .COMMENT
- .DEPHASE .HD64 .IF1 .IF16
- .IN .LALL .LCTL .LFCOND
- .LIST .PHASE .PRINT .PRINTX
- .RADIX .REQUEST .RLIST .SALL
- .SBTTL .SFCOND .SLIST .TITLE
- .XALL .XCTL .XLIST .Z80
- ASEG ASET COMMON CSEG
- DB DC DEFB DEFC
- DEFL DEFM DEFS DEFW
- DEFZ DS DSEG DW
- DZ ELSE END ENDIF
- ENDM ENT ENTRY EQU
- EXITM EXT EXTERNAL EXTRN
- GLOBAL IF IF1 IF2
- IFB IFDEF IFE IFF
- IFG IFGE IFL IFLE
- IFN IFNB IFNDEF IFP1
- IFP2 IFT INCLUDE IRP
- IRPC LOCAL MACLIB MACRO
- NAME ORG PAGE PUBLIC
- REPT SET SUBTTL TITLE
-
-
- ================================================================
-
- ZML, the Linker
-
- ZML links Microsoft format REL and Z-System ZRL files to make COM, BIN,ì
- PRL, SRL, and RSX type files. ZML is friendly for occasional use onì
- small jobs and sophisticated enough to handle the really demandingì
- ones. The HELP screen is always just a keystroke away. For complexì
- jobs, ZML has an interactive mode designed for operation from a ZEXì
- script. You can tell it what relocation address to use for ANYì
- relocatable segment (that's how ZRL files are linked). It handles anì
- unlimited number of named commons, any of which can be named as aì
- code/data type segment. ZML truncates uninitialized data at the end ofì
- the linked code.
-
- The HELP screen for ZML (renamed to LINK for this demonstration)
- summarizes the powerful command structure of this linker. Note that
- the actual name assigned is used in the SYNTAX definition.
-
- B3:LINK>link //
-
- ZML Linker V1.2- 02/18/90
- Syntax: LINK item [,item...] [<space> or ,]
-
- item = filespec[modifier] or option[ option...]
- space required--^-------^
-
- ________ Modifiers __________ ____ Options or Modifiers _____
- (none) file to link /M or /Y Make global symbol file
- / or /S library to Search /P or /K Provide Prl/sPr header
- = or /N Names output file /I Insert rsx header file
- /Q Quit and exit
- /E link and Exit
-
- ________________ Options ( / is optional ) ________________
- /A<hex> main load Address (default: 100h)
- /C<hex>, D<hex> load address for Cseg, Dseg
- /R[<seg><sp>]<hex> set Reloc addr for <seg>, (default: CSEG)
- /T<seg> Tag <seg> as a CODE type segment
- /S global Symbol listing to default file
- /L List global symbols on console
- -S,-M,-Y,-L,-K,-P,-I negation turns these functions OFF
-
- B3:LINK>record off;NOTE that this screen is courtesy of RECORDER
-
- ================================================================
-
- ZMLIB, the mREL Library Utility
-
- ZMLIB is a simple, easy-to-use library manager for MREL format objectì
- libraries. It creates and modifies libraries by adding or deletingì
- modules. Want to see what's in a library? ZMLIB displays the moduleì
- names and entry symbols in a neat, paginated format. Z3LIB, SYSLIB,ì
- and VLIB can all be managed with ZMLIB.
-
- The ZMLIB (here renamed to LIB) help screen:
-
- B1:ZMAC>lib //
-
-
- Z/CPM Library Manager, Version 1.5 Copyright 1988 A.E. Hawley
- Function: Create, Modify, or display contents of
- a REL format Library file (LIB).
- Syntax:
- LIB LIB[=MOD[,MOD...]] [[/]<option>]
- <option> is one of:
- M - Display names of modules in LIB
- P - Display names and public symbols in LIB
- D - Delete modules MOD
- R - Replace MOD(s) in LIB
- A - Append MOD(s) to LIB, create new LIB if required
- If no option is present, then
- Default is P if LIB is the only argument (no "="), and
- Default is A if the form "LIB=MOD[,MOD...]" is present.
-
- B1:ZMAC>record off
-
- ----------------------------------------------------------------
-
- Here is the display produced by ZMLIB for a portion of the VLIB
- rel library used by many Z-system utilities. Note that the screen
- display is organized and paginated for easy reading and reference.
-
- B3:LINK>lib 8:vlib
-
- Z/CPM Library Manager, Version 1.5 Copyright 1988 A.E. Hawley
- module: Entry Point Symbol(s):
- VIDQ CLRPDM
- VIDP SELPDM
- VIDJ DRFBOX DRBOX ERABOX GFBOX GBOX
- GERBOX CHKBOX
- VIDH DRHBAR DRHORZ ERAHOR GHBAR ERAHBA
-
- VIDF ULEFT URIGHT LLEFT LRIGHT
- VIDG LTISEC RTISEC UISEC LISEC ISEC
-
- VIDD DRFULL DRHASH @GSET0
- VIDI DRVBAR DRVERT ERAVER GVBAR ERAVBA
-
- VIDE GRXON GRXOFF
- VIDK MCLS
- VIDL SPDMCH ISPDM
- VIDM ISCUR
- VIDO SETPDM SETPDR PDMINI @PDMCH @PDMBF
- @MBUFF
- VIDN GZ3INI
- VLGXYM GXYMSG VPRINT VPSTR
-
- CR or Space to continue
-
- B3:LINK>record off
-
- ================================================================
-
- ASSEMBLY REFERENCES
-
- Further reading on assembly language principles, strategies, and
- coding tricks. These start where your favorite Assembly Language
- Programming textbook leaves off (usually). The ZMAC manual is also
- a source for insight into assembly language principles and further
- references on programming.
-
- Microsystems, V4 Number 9, Sep 1983, p.86
- "Relocating Assemblers and Linkage Editors: Part 1"
- by Andrew Bender
-
- Microsystems, V4 Number 10, Oct 1983, p.114
- "Relocating Assemblers and Linkage Editors: Part 2"
- by Andrew Bender
-
- Microsystems, V5 Number 1, Jan 1984, p.120
- "Relocating Assemblers and Linkage Editors: Part 3"
- by Andrew Bender
-
- Micro/Systems Journal, V1 Number 3, Jul/Aug 1985, p.26
- "Structured Programming with M80", by Dennis N. Quinn
-
- TCJ #35 Nov/Dec 1988, P 27
- Rel-Style Assembly Language for CP/M and Z-System,
- by Bruce Morgan
-
- TCJ #36 Jan/Feb 1989, P 38 (part 2)
- Rel-Style Assembly Language for CP/M and Z-System,
- by Bruce Morgan
-
- TCJ #39 Jul/Aug 1989, P 3
- Programming for performance, by Lee A. Hart
-
-
- ================================================================
-
- AVAILABLE FROM PARTICIPATING Z-NODES, AND
-
- ALPHA SYSTEMS PLU*PERFECT SYSTEMS
- 711 Chatsworth Place 410 23rd Street
- San Jose, CA 95128 Santa Monica, CA 90402
- (408) 297-5583 (voice) (213) 393-6105 (voice)
- (213) 670-9465 (modem) (213) 670-9465 (modem)
-
- SAGE MICROSYSTEMS EAST REVASCO
- 1435 Centre Street 6032 Chariton Ave.
- Newton Centre, MA 02159 Los Angeles, CA 90056
- (617) 965-3552 (voice) (213) 649-3575 (voice)
- (617) 965-7259 (modem) (213) 670-9465 (modem)
-
-