summaryrefslogtreecommitdiffstats
path: root/development/z88dk/man/zcc.1
diff options
context:
space:
mode:
Diffstat (limited to 'development/z88dk/man/zcc.1')
-rw-r--r--development/z88dk/man/zcc.1255
1 files changed, 255 insertions, 0 deletions
diff --git a/development/z88dk/man/zcc.1 b/development/z88dk/man/zcc.1
new file mode 100644
index 0000000000..723b084119
--- /dev/null
+++ b/development/z88dk/man/zcc.1
@@ -0,0 +1,255 @@
+.\"Text automatically generated by txt2man
+.TH zcc 1 "01 December 2009" "" "z88 Development Kit"
+.SH NAME
+\fBzcc \fP- The frontend of z88dk
+.SH SYSNOPIS
+zcc [flags] [files to be compiled/linked]
+.SH DESCRIPTION
+This manual page documents briefly the z88dk tools. This manual page
+was written for the Debian GNU/Linux distribution (but may be used
+by others), because the original program does not have a manual page.
+.RE
+.PP
+
+.RS
+Please refer to the z88dk documentation in /usr/share/doc/z88dk-doc for the complete description of the system.
+If /usr/share/doc/z88dk-doc not exists, please install the package z88dk-doc.
+.PP
+The frontend of z88dk is called zcc, it is this that you should call
+if you want to do any compilations.
+.PP
+The files can be either C files (.c), preprocessed C \fBfiles\fP(.i),
+compiled C files (.asm), optimised compiled file (.opt) or assembled
+files (.obj), any combination of them can be mixed together and the
+relevant processed done on them.
+.PP
+Processing of a file list is done on each file in turn (i.e. preprocess,
+compile, optimise, assemble) at the end all files may be linked into
+a single executable if desired.
+.SH OPTIONS
+Options to control the action of the frontend:
+.TP
+.B
++[file]
+Name of alternate config file (must be the first argument).
+.PP
+.nf
+.fam C
+ Predefined alternate configs:
+ abc80 ABC80
+ aceansi Jupiter ACE, using VT-ANSI engine
+ cpm CP/M
+ msx MSX 1
+ mz Sharp MZ
+ mzansi Sharp MZ, using VT-ANSI
+ nc Amstrad NC100
+ rex REX 6000
+ sam Sam Coupe
+ svi Spectravideo SVI
+ m5 SORD M5
+ ti82 Ti82, using ROM text routines
+ ti82ansi Ti82, using VT-ANSI
+ ti83 Ti83, using ROM text routines
+ ti83ansi Ti83, using VT-ANSI
+ ti85 Ti85, using ROM text routines
+ ti85ansi Ti85, using VT-ANSI
+ ti86 Ti86, using ROM text routines
+ ti86ansi Ti86, using VT-ANSI
+ ti8x Ti83+, using ROM text routines
+ [ti8xansi] Ti83+, using VT-ANSI
+ vz VZ / Laser 200
+ vzansi VZ / Laser 200, using VT-ANSI
+ z88 Cambridge Z88
+ z88ansi Cambridge Z88, using VT-ANSI
+ z88net Cambridge Z88 with TCP/IP
+ zx ZX Spectrum
+ zx81 ZX 81
+ zx81ansi ZX 81, using VT-ANSI
+ zxansi ZX Spectrum, using VT-ANSI
+
+.fam T
+.fi
+.TP
+.B
+\fB-a\fP
+Produce .asm (or .opt) file only
+.TP
+.B
+\fB-c\fP
+Do not link object files
+.TP
+.B
+\fB-E\fP
+Preprocess files only, leave output in .i file
+.TP
+.B
+\fB-o\fP [file]
+Specify output file for binary (default is a.bas for BASIC programs and a.bin for application binaries)
+.TP
+.B
+\fB-On\fP
+Optimize compiler output (to .opt file) n can be either 0 (none) 1,2,3, level 2 is recommended. Level 3 is suitable for large programs (includes certain lib functions to reduce size of \fBcode\fP(!))
+.TP
+.B
+\fB-v\fP
+Verbose - echo commands as they are executed
+.TP
+.B
+\fB-vn\fP
+Don't be verbose
+.RE
+.PP
+
+
+.RS
+Options to control library usage:
+.TP
+.B
+\fB-l\fP[name]
+Link in a library - supply just the name (after placing them in the correct directory).
+.PP
+.nf
+.fam C
+ The 'name' are:
+ farz88 Z88 far support
+ gfx Z88 BASIC graphics lib
+ gfxapp Z88 application graphics lib
+ m Generic math routines
+ malloc Generic near malloc routine
+ mz OZ's math routines
+ ndos Fake file-routines, return errors only
+ net Z88 socket routines for ZSock
+ netdev Z88 socket routines for devices
+ p3 +3 file support library
+ tigray82 Ti82 graylib routines
+ tigray83 Ti83 graylib routines
+ tigray83p Ti83+ graylib routines
+ tigray85 Ti85 graylib routines
+ tigray86 Ti86 graylib routines
+ z88 Some Z88 application routines, like mailboxing
+ zxmath ZX Spectrum ROM based math routines
+ zxvgs ZXVGS hardware support
+
+.fam T
+.fi
+.TP
+.B
+\fB-m\fP
+Generate .map files when assembling/linking
+.RE
+.PP
+
+
+.RS
+Options to control the type code produced:
+.TP
+.B
+\fB-unsigned\fP
+Implicitly define everything as unsigned unless explicitly told otherwise.
+.TP
+.B
+\fB-create-app\fP
+Create an application image (i.e. bank 63,62 etc)
+.TP
+.B
+\fB-make-app\fP
+(App) Notify the compiler that you're trying to make an application
+.TP
+.B
+\fB-reqpag\fP=
+(App) Number of 256 byte pages required for bad application
+.TP
+.B
+\fB-zorg\fP=
+(App) Origin for a Z88 application
+.TP
+.B
+\fB-safedata\fP=
+(App) Amount of safedata required by your code
+.TP
+.B
+\fB-defvars\fP=
+(App) Where static variables should be dropped (only valid for single file compilations, but see later)
+.TP
+.B
+\fB-expandz88\fP
+(App) Expanded z88 required
+\fB-no-expandz88\fP (App) Expanded z88 not required (these two flags toggle some startup code to check for an expanded machine)
+.TP
+.B
+\fB-startup\fP=3
+Produce standalone code that can be run from a set address from BASIC. Use \fB-zorg\fP= to change the address
+.TP
+.B
+\fB-R\fP
+(Use with above) produces relocatable code that can be loaded into a DIM'd BASIC array.
+.TP
+.B
+\fB-smartpf\fP
+Intelligent printf routine handling
+.TP
+.B
+\fB-no-smartpf\fP
+Turn off the intelligent printf handling
+.TP
+.B
+\fB-make-lib\fP
+Shortcut to generate .o files from library .c files
+.TP
+.B
+\fB-stackoffset\fP
+Sets the stack offset for shared libs (see package.txt for details)
+.RE
+.PP
+
+
+.RS
+Miscellaneous options:
+.TP
+.B
+\fB-z80-verb\fP
+Allow z80asm to be verbose, this tends to generate a lot
+of output to the screen so may not be desired.
+.TP
+.B
+\fB-cc\fP
+Intersperse C code as comments in the assembler output, warning:
+this *will* clobber some optimizations.
+.TP
+.B
+\fB-Wall\fP
+Turn on all the compiler warnings
+.TP
+.B
+\fB-Wnone\fP
+Turn off all compiler warnings
+.TP
+.B
+\fB-Wn\fP[num]
+Turn off the compiler warning [num]
+.TP
+.B
+\fB-W\fP[num]
+Turn on the compiler warning [num]
+.TP
+.B
+\fB-asxx\fP
+Cause the compiler to emit asxx compatible code
+.TP
+.B
+\fB-Cp\fP[option]
+Pass an option through to the pre-processor
+.TP
+.B
+\fB-Ca\fP[option]
+Pass an option through to the assembler
+.PP
+In addition, the flags, \fB-D\fP, \fB-I\fP, \fB-U\fP are passed through to the preprocessor.
+.SH SEE ALSO
+\fBz88dk\fP(1), \fBz88dk-zcc\fP(1), \fBz88dk-z80asm\fP(1), \fBz88dk-appmake\fP(1), \fBz88dk-copt\fP(1).
+.RE
+.PP
+
+.SH AUTHOR
+z88dk was written by Dominic Morris <dom@z88dk.org>, and others.
+This manual page was written by Krystian Wlosek <tygrys@waw.pdi.net> using exists documentation, for the Debian GNU/Linux system.