Skip to content

Add (e)Z80 backend #23579

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
myclevorname opened this issue Apr 16, 2025 · 0 comments
Open

Add (e)Z80 backend #23579

myclevorname opened this issue Apr 16, 2025 · 0 comments
Labels
backend-self-hosted enhancement Solving this issue will likely involve adding new logic or components to the codebase.

Comments

@myclevorname
Copy link

The Zilog eZ80 is a backwards-compatible successor to the Zilog Z80.

The Z80 has had quite a few C compilers, like SDCC, z88dk, and many proprietary compilers that are no longer maintained. The eZ80, however, is in a tighter situation than the 6502 because the only two C compilers available (to my knowledge) are Zilog Developer Studio (proprietary, generates poor code, only supports C90 and C++-style comments) and @jacobly's fork of the LLVM toolchain (dormant due to his contributions to Zig).

Drawbacks

  • The Z80 isn't very popular today, and the eZ80 less so. The Z80 isn't even sold anymore!

    • Some old architectures, like the MOS 6502 and Motorola 68000, are still popular enough to have some work put into them, whether upstream or downstream.
  • (e)Z80 programs are sensitive to code size, so adding optimizations may be the difference between a program fitting on the device and not fitting at all.

Prerequisites

Resources

@alexrp alexrp added backend-self-hosted enhancement Solving this issue will likely involve adding new logic or components to the codebase. labels Apr 16, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backend-self-hosted enhancement Solving this issue will likely involve adding new logic or components to the codebase.
Projects
None yet
Development

No branches or pull requests

2 participants