Target CPUs
CPUCompilerAssemblerRuntimeOutput
Zilog Z80hcbcomp-z80hcasm-z80CP/M, MSX-DOSCOM
Intel 8080hcbcomp-8080hcasm-8080CP/MCOM
Intel 8085hcbcomp-8085hcasm-8085CP/MCOM
Intel 8086hcbcomp-8086hcasm-8086MS-DOS (.COM)COM
Intel 8086 (EXE)hcbcomp-8086exehcasm-8086MS-DOS (.EXE)MZ EXE

All targets also support the REX relocatable format via hclink-rex.

Z80 Details

FeatureDetail
Word size16-bit (2 bytes)
Frame pointerIX register
Return valueHL register pair
Primary registerHL (push/pop for stack operations)
Secondary registerDE (pop/push for expression evaluation)
Parameter accessld r, [ix+offset] (peephole-optimized)
Local accessld r, [ix-offset] (peephole-optimized)

8086 Details

FeatureDetail
Word size16-bit near / 32-bit far
Frame pointerBP register
Return valueAX register (DX:AX for 32-bit)
Primary regsAX (value), BX (address), CX/DX (scratch)
COM formatNear pointers (16-bit), text=0x100
EXE formatFar pointers (32-bit seg:off), MZ header, independent segments

8080/8085 Details

FeatureDetail
Word size16-bit (2 bytes)
Frame pointerBC register pair
Return valueHL register pair
Primary registerHL (push h/pop d for stack operations)
Secondary registerDE