The SDCC documentation includes this information:
Generate code for the Toshiba TLCS-900H processor (In develop‐
ment, not complete).
However, when trying to use this, the following occurs.
sdcc -mtlcs900h main.c
at 1: error 131: cannot generate code for target 'tlcs900h'
I need to find a (portable) way to code in C for the tlcs900h processor. SDCC seems like a perfect fit, except that it doesn't work. First of all, do you know any way to get this (or any other compiler) working for Toshiba TLCS-900h?
If there's nothing currently working (which is my guess), then I need to get some details on what it would take to actually fix the -mtlcs900h to generate binaries for this CPU.
I'll leave it at that to begin with. Hopefully that's a good start.
Since nobody was working on the izt port and there appeared to be nobody using it either we dropped it from the default sdcc builds. The old code is still in the source tree though. You're welcome to pick this up and get it going again.
That's sad, because I think SDCC would have been used a lot for Neo Geo Pocket homebrew development over the years. As it is, I think people have tried it, failed, and moved on. I know I did in the past. Now there are people that want to pick it up again, but there is no good portable compiler for the developers.
I am not a compilers guy. Would you care to explain (or maybe point me to some docs) about what might need to be done to get this working? If I had a clear path, I might be able to get someone to help (or do it myself).
I'm sorry, I know nothing of this processor nor the SDCC port for it.
After a quick glance in its datasheet it seems to me this processor has nothing that would fit SDCC. It is not 'small' or special. It is 32 bit and has a Von Neumann architecture. I think it would benefit more from a GCC port.
Actually, the TLCS-900/h (the particular CPU that we're discussing being in the Neo Geo Pocket handheld console) is a 16bit processor. Its instruction set is very similar to the Z80, with the main exception being that it supports 32bit registers. It also has variable-sized machine code instructions. Depending on the instruction, it could be a byte, word, or long word.
I have a very good document detailing its instruction set.
TLCS-900h Neo Geo Pocket Instruction Set