z00m128 / sjasmplus

Command-line cross-compiler of assembly language for Z80 CPU.
http://z00m128.github.io/sjasmplus/
BSD 3-Clause "New" or "Revised" License
382 stars 54 forks source link

Add support for Z280 #233

Open fbelavenuto opened 4 months ago

fbelavenuto commented 4 months ago

Is your feature request related to a problem?

No.

Describe the suggested solution:

Add support for new opcodes and addressing modes for the Z280 chip.

ped7g commented 2 months ago

quick checking the feasibility, based on docs here: https://github.com/Konamiman/Z280TechnicalManual

new syntax required:

TODO research:

Overall this looks feasible, quite a lot of new opcodes or rather variants of old instructions with new arguments producing different machine code, which may slow down regular Z80 assembling if added under dynamic flag (then again it would probably slow down maybe only invalid syntax cases if the Z280 extensions would be checked as last option in the current parsing, so valid Z80 would match as early as without Z280). In worst case maybe locking this under compile time define and produce completely alternative binary for Z280 support, not doing it through dynamic switch.

But this also looks like lot of work, and not sure who would verify/test it in practice, I don't have any Z280 machine and from the quick read about it it sounds like very rare chip, not used commercially much. Not on MY priority list high enough to start this on my own, if somebody else want to put enough hours into it, I can advise.

ped7g commented 3 weeks ago

If I'm guessing correctly OP's identity then I would not expect any more input from him, sadly.

So if someone else wants this to happen, now not only person having some HW for verification is needed but somebody adopting the idea as their own, taking over this and pushing this further.