[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Tinycc-devel] Retargeting TCC to a 8bit device

From: Bill Gaylord
Subject: Re: [Tinycc-devel] Retargeting TCC to a 8bit device
Date: Thu, 12 Nov 2020 23:18:55 -0600

Question is there like an IRC channel for TinyCC where its easier to ask questions as I try and port then over email on the mailing list?

Also is there documentation on all the if defs that exist for deciding what is supported and stuff like that? For example the arm backend has TCC_ARM_VFP to see if it is compiling for ARM with a VFP.

On Tue, Nov 10, 2020 at 11:25 PM Christian Jullien <eligis@orange.fr> wrote:

With a friend of mine, we tried a POC with z80 this year to see how it goes.

While feasible, there is a great amount of work. For our POC, instead of generating .o which changes from target platform, we generated .asm and use the platform assembler, linker …

We also choose to generate only 16bit register operations either with 8bit register pairs or using pseudo-register variables.

Our approach was to create a lot of macros and ask tcc to call the macros instead of real z80 code. The macros could be viewed as an ideal 8bit processor VM machine having 3 or 4 general purpose 16bit registers. This was the idea.

This way, having a 6802, 6809 compiler requires only to write macro for it and use machine dependent tools for code generation, linking and debugging.

After around 3 or 4 weeks, we were able to generate few .COM samples on CP/M emulator.


From: Tinycc-devel [mailto:tinycc-devel-bounces+eligis=orange.fr@nongnu.org] On Behalf Of Bill Gaylord
Sent: Tuesday, November 10, 2020 21:29
To: tinycc-devel@nongnu.org
Subject: [Tinycc-devel] Retargeting TCC to a 8bit device


I am wondering if anyone has had an experience retargeting TCC to a 8bit micro or cpu? I am working on a homebrew CPU (have an emulator need to work on the hardware.) and I want to be able to write C code for it instead of just pure assembly.


My only concern so far with looking at how to retarget it myself is that TCC needs you to have floating point available.  Or am I just reading the document incorrectly? 


Also I am wondering if I could not support some features of C in TCC. (For example. I literally can't do a long without using up 4 registers per number.  


Also any pointers would be appreciated. 


William Gaylord

Tinycc-devel mailing list

reply via email to

[Prev in Thread] Current Thread [Next in Thread]