mirror of
https://github.com/Ponce/slackbuilds
synced 2024-12-02 13:04:42 +01:00
35124212c6
Signed-off-by: bedlam <dave@slackbuilds.org> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
207 lines
7.6 KiB
ReStructuredText
207 lines
7.6 KiB
ReStructuredText
.. RST source for zmac(1) man page. Convert with:
|
|
.. rst2man.py zmac.rst > zmac.1
|
|
|
|
.. |version| replace:: 20221018_0.7
|
|
.. |date| date::
|
|
|
|
====
|
|
zmac
|
|
====
|
|
|
|
--------------------------
|
|
Z-80 macro cross-assembler
|
|
--------------------------
|
|
|
|
:Manual section: 1
|
|
:Manual group: SlackBuilds.org
|
|
:Date: |date|
|
|
:Version: |version|
|
|
|
|
SYNOPSIS
|
|
========
|
|
|
|
**zmac** [*--help*] [*--version*] [*--dep*] [*--mras*] [*--od dir*] [*--oo sfx1,sfx2*] [*--xo sfx1,sfx2*] [*--dri*] [*--rel*] [*--rel7*] [*--nmnv*] [*--z180*] [*--fcal*] [*--doc*] [*--zmac*] [*-8bcefghijJlLmnopstz*] [*filename[.z]*]
|
|
|
|
DESCRIPTION
|
|
===========
|
|
|
|
zmac is a Z-80 macro cross-assembler. It has all the features you'd
|
|
expect. It assembles the specified input file (with a '.z' extension
|
|
if there is no pre-existing extension and the file as given doesn't
|
|
exist) and produces program output in many different formats. It also
|
|
produces a nicely-formatted listing of the machine code and cycle
|
|
counts alongside the source in a ".lst" file.
|
|
|
|
To reduce clutter and command line option usage, by default all zmac
|
|
output is put into an (auto-created) zout subdirectory. For file.z
|
|
the listing will be in zout/file.lst, the TRS-80 executable format
|
|
in zout/file.cmd and so on. For more friendly usage in make files
|
|
and integrated development environments the -o, --oo, --xo and --xd
|
|
options may be used to select specific output file formats and where
|
|
they are written.
|
|
|
|
Undocumented Z-80 instructions are supported as well as 8080 and Z-180
|
|
(aka HD64180).
|
|
|
|
zmac strives to be a powerful assembler with expressions familiar to C
|
|
programmers while providing good backward compatibility with original
|
|
assemblers such as Edtasm, MRAS and Macro-80.
|
|
|
|
This man page only documents the command-line options. The full documentation can be found here:
|
|
/usr/doc/zmac-|version|/zmac.html
|
|
|
|
OPTIONS
|
|
=======
|
|
|
|
Space-separated arguments in the ZMAC_ARGS environment variable are added to the
|
|
end of the command line.
|
|
|
|
|
|
--help Display a list of options and a terse description of what the
|
|
options do.
|
|
|
|
--version Print zmac version name.
|
|
|
|
--mras MRAS compatibility mode. Any ? in a label will be expanded to
|
|
the current module identifier as set by \*mod. Operator
|
|
precedence and results are changed.
|
|
|
|
--od dir Place output files in dir instead of the default "zout"
|
|
subdirectory. Creates dir if necessary.
|
|
|
|
--oo hex,cmd
|
|
Output only the the file types by suffix. Multiple --oo
|
|
arguments may be used. "--oo lst,cas" is equivalent to "--oo
|
|
lst --oo cas". See "Output Formats" for a list of output types
|
|
by suffix.
|
|
|
|
--xo tap,wav
|
|
Do not output the file type types listed by suffix.
|
|
|
|
--dri Enable compatibility with Digital Research (CP/M) assemblers:
|
|
Ignores dollar signs in constants and symbols. Silences a
|
|
warning when using Z80.LIB. Allows the use of '*' in first
|
|
column for comment lines. Accepts $-MACRO directives.
|
|
|
|
--nmnv Do not interpret Z-80 or 8080 mnemonics as values in
|
|
expressions.
|
|
|
|
--rel Output ".rel" (relocatable object file) format only. Exported
|
|
symbols are truncated to length 6.
|
|
|
|
--rel7 Output ".rel" (relocatable object file) format only. Exported
|
|
symbols are truncated to length 7.
|
|
|
|
--zmac zmac compatibility mode. defl labels are undefined after each
|
|
pass. Quotes and double quotes are stripped from macro
|
|
arguments before expansion. $ is ignored in identifiers
|
|
allowing foo$bar to construct identifiers in macro expansions.
|
|
Use ` (backquote) instead in normal mode. Labels starting with
|
|
"." are temporary and are reset whenever a non-temporary label
|
|
is defined (thus they may be reused). Labels starting with "_"
|
|
are local to their file thus avoid multiple definition when
|
|
brought in with include.
|
|
|
|
--z180 Use Z-180 timings and extended instructions. Undocumented Z-80
|
|
instructions will generate errors as the Z-180 (or H64810) does
|
|
not support them. Equivalent to .z180 pseudo-op.
|
|
|
|
--dep Print all files read by include, incbin and import.
|
|
|
|
--doc Print full documentation in HTML format to standard output.
|
|
|
|
-Pk=number
|
|
Set @@k to the given numeric value before assembly. Up to 10
|
|
parameters can be set from 0 though 9. -Pk is shorthand for
|
|
-Pk=-1. For example, P4=$123 effectively puts @@4 equ $123 at
|
|
the top of the first file.
|
|
|
|
-Dsymbol Define symbol to be 1 before assembly.
|
|
|
|
--fcal Always treat an indentifier in the first column as a label.
|
|
zmac uses various heuristics in the case of ambiguity when a
|
|
label does not have a colon. This option turns heuristics off.
|
|
|
|
-8 Accept 8080 mnemonics preferentially and use 8080 instruction
|
|
timings. Equivalent to .8080 pseudo-op.
|
|
|
|
-b Don't generate any machine code output at all.
|
|
|
|
-c Don't display cycle counts in the listing.
|
|
|
|
-e Omit the "error report" section in the listing.
|
|
|
|
-f List instructions not assembled due to "if" expressions being
|
|
false. (Normally these are not shown in the listing.)
|
|
|
|
-g List only the first line of equivalent hex for a source line.
|
|
|
|
-h Display a list of options and a terse description of what the
|
|
options do. (same as --help)
|
|
|
|
-i Don't list files included with include, read or import.
|
|
|
|
-I dir Add dir to the end of the include file search path.
|
|
|
|
-j Promote relative jumps and DJNZ to absolute equivalents as
|
|
needed.
|
|
|
|
-J Error if an absolute jump could be replaced with a relative
|
|
jump.
|
|
|
|
-l List to standard output.
|
|
|
|
-L Generate listing no matter what. Overrides any conflicting
|
|
options.
|
|
|
|
-m List macro expansions.
|
|
|
|
-n Omit line numbers from listing.
|
|
|
|
-o filename.cmd
|
|
Output only the named file. Multiple "-o" options can be used
|
|
to name a set of different files.
|
|
|
|
-p Use a few linefeeds for page break in listing rather than ^L.
|
|
|
|
-P Output listing for a printer with headers, multiple symbols per
|
|
column, etc.
|
|
|
|
-s Omit the symbol table from the listing.
|
|
|
|
-t Only output number of errors instead list of each one.
|
|
|
|
-z Accept Z-80 mnemonics preferentially and use Z-80 instruction
|
|
timings. Equivalent to .z80 pseudo-op.
|
|
|
|
LICENSE
|
|
=======
|
|
|
|
**CC0**
|
|
|
|
To the extent possible under law, George Phillips has waived all copyright
|
|
and related or neighboring rights to zmac macro cross assembler for the Zilog
|
|
Z-80 microprocessor. This work is published from: Canada.
|
|
|
|
AUTHORS
|
|
=======
|
|
|
|
Bruce Norskog originally wrote zmac in 1978.
|
|
|
|
Updates and bugfixes over the years by John Providenza, Colin Kelley, and more
|
|
recently by Russell Marks, Mark RISON, Chris Smith, Matthew Phillips and Tim
|
|
Mann.
|
|
|
|
Extensive modifications for cycle counting, multiple output formats, ".rel"
|
|
output, 8080 mode and older assembler compatibilty were written by George
|
|
Phillips.
|
|
|
|
This man page written for the SlackBuilds.org project
|
|
by B. Watson, and is licensed under the WTFPL.
|
|
|
|
SEE ALSO
|
|
========
|
|
|
|
**ld80**\(1)
|
|
|
|
The zmac homepage: http://48k.ca/zmac.html
|