On Sun, 23 Sep 2018 16:23:27 +0200 Philipp Klaus Krause <p...@spth.de> wrote:
> How useful would it be to have better eZ80 support in SDCC? Are there > any SDCC users that target the eZ80? Looking at it in future. Z280 is the first interest although I've integrated John Coffman's asz280 into my branch of sdcc and I'm starting to fiddle with that anyway. > There are 2 main differences between the Z180 and the eZ80: > > * ADL mode: The 24-bit address mode (). Support for this would take more > effort. Minimally useful at best. > * Z80 mode: The 16-bit load instructions (ld rr, (hl), etc). As we have > seenin the r2k and tlcs90 backends these really help with code size, > especially for handling pointers. Support for these should be much > easier to add to SDCC than support for ADL mode. That would be really nice to have, as would having it error any inadvertent instructions eZ80 doesn't have (the ld r,r re-used as prefix). (as a side note a byproduct is also useful which is being able to rewrite those real size wins in the peephole back into Z80 rst instructions for compact but slower Z80 code). I'd still like to be able to squash a Fuzix kernel into 32K on Z80, and looking at the assembler I think it would be doable but the size/speed tradeoffs are further into the size space than sdcc currently goes - plus fixing some of the more interestingly bad code generation. > How useful would an ez80 backend in SDCC, which would generate code for > the Z80 mode of the eZ80 be? Fuzix would use it as and when one of the proposed ez80 homebrew boards gets built. The only use Fuzix would make of the 24bit mode I can think of would be asm bits (hand optimized memory copiers etc) - and I can imagine it's helpful for FP. And if anyone knows of a usable ez80 cpu emulator core I can integrate into a debug platform I can do a build at some point with that and see how it goes. Alan _______________________________________________ Sdcc-user mailing list Sdcc-user@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/sdcc-user