tool-zcc

Compile, assemble, and link z88dk programs for Z80 targets using the zcc front end.

1.1k|206|Updated Mar 16, 2016
One-click install
npx skills add https://github.com/z88dk/z88dk --skill tool-zcc-z88dk
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: tool-zcc
Source: https://github.com/z88dk/z88dk/tree/main/.agents/skills/tool-zcc
Command: npx skills add https://github.com/z88dk/z88dk --skill tool-zcc-z88dk

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Building programs for Z80 and 8080-family machines requires coordinating compilers, assemblers, linkers, and app-image generators with target-specific flags, which is error-prone when done manually. ## Core Features & Use Cases - Unified build front end: Compile C and assembly sources, link libraries, and produce binaries for any z88dk target with a single zcc command. - Compiler and library selection: Choose between sccz80, sdcc, 80cc, and multi-compiler modes, plus target-specific clib recipes and math libraries like --math32. - App image generation: Use -create-app to run appmake and produce tapes, disks, ROMs, or hex files for the target machine. - Use Case: Compile a C program for the ZX Spectrum with zcc +zx -vn game.c -o game -create-app to get a loadable tape image. ## Quick Start Ask the assistant to compile your C source file for a specific z88dk target such as +cpm or +zx using zcc with the -create-app flag.

Frequently Asked Questions about tool-zcc

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I compile a C program for a Z80 target with z88dk?

Run zcc with a target flag, for example zcc +cpm -vn hi.c -o hi. Add -create-app to produce a loadable app image such as a tape or disk file for the target machine.

Which compiler should I use with zcc: sccz80, sdcc, or 80cc?

Select the compiler with -compiler=sccz80, sdcc, 80cc, or multi. sccz80 is the default for many classic targets, while -compiler=multi compiles each file with sccz80 and 80cc and stitches the fastest function bodies.

How do I see available clib and subtype options for my target?

Run zcc +<target> -h, for example zcc +zx -h. The clib and subtype lists are target-specific and come from the target's configuration file in lib/config.

Why does running parallel zcc builds in one directory fail?

Parallel bare zcc invocations in the same working directory can corrupt the shared zcc_opt.def file. Run builds sequentially or use separate directories for each parallel job.

Can I use floating point math in z88dk programs?

Yes, select a math library with flags like --math32 for full IEEE, --math16 as an adjunct half-precision library, or --math-mbf32. CPU-specific math libraries can be supplied via ZCC_LIBCPU.