Continue the discussion with myself
tldr; tcc works on armhf for armhf on a Kindle Colorsoft now. There's some kludges in tccmake, but they work. People that know dev env better than me can fix that up, if they so wish.
Did:
1. modified the toolsets on linux x64 to replace the gcc compiler/linker with the kox compiler/linker
2. Fixed up some of the definitions in the headers and/or config (i forget now, but could diff them since I usually copy dir before large changes)
3. ran make cross-arm
4. copied the arm-tcc to the kindle
5. copied the aforementioned tcc package (especially the geekmaster one) to have header include directory, to have the tcc.libc.so and libpthread.so, and to have the tccmake command/script
6. compiled helloworld.c along with crt1.s with arm-tcc on my kindle with my kludges
6a. -nostdlib used because i couldn't figure out how to get it to find my crt1.o even though in same directory.
6b. -nostdinc because it made me feel better
6c. -I to the place I unpacked aforementioned include headers
6d. -L/lib
6e. put my crt1.s as another object with helloworld.c, later i just compiled it to .o and use that.
7. executed it and verified it worked
Okay, that's an easy program that has few function calls, so I used geekmaster's demo.c dithermatron program compiled from kindle for kindle. Also, this one I wanted to use tccmake instead of the full arm-tcc sentence on cmdline.
1. Make a tcc directory at /mn/us/tcc
2. copy rename arm-tcc to /mnt/us/tcc as tcc
3. copy the tccmake, demo.c, and tcc.lib* to /mnt/us/tcc
4. ./tccmake demo
5. Error, unresolved stuff. This pulls in a dependency for __aeabi_idiv, which is not in libc. -> cd /lib grep for that symbol and found in /lib/libgcc_s.so.1. Adding -lgcc to tccmake did not work, was not found. Adding a tcc.libgcc.so with the tcc.libgcc.so and GROUP or tcc.libgcc_s.so and GROUP did not work. Therefore, I just add /lib/libgcc_s.so.1 to tccmake tcc line.
6. run command 4 again, and it made it through!
This SEGFAULTED, like the other thread earlier referenced years ago.
But I want to see if this is a compiler or program bug.
7. add -g into the building sentence of tccmake
8. gdb demo
9. Find the instruction and corresponding function it crashes on.
10. Notice there's an out of bounds write in something that looks like:
fb0[ math stuff] = a lot of math stuff to calculat X, Y offsets and use a dither color.
11. Add a guard before the fb if math stuff > fs*MY then do not write to fb0
12. Build it again
Result: see stuff moving across screen, but not so smoothly due to the skipped fb0 writes I guess.
I think tcc on kindle color soft for kindle colorsoft works now. But I think headers from kox are needed instead of the old headers used from the aforementioned thread packages. Also, I don't really want to debug the math for the setpx function and caller, so will leave that as is.
Also ahead, in case anyone wants this thing, could probably package it up as the trailblazers did in past incarnations and make a new post here for downloading it.