Multi-core would be a big stretch from what is and not trivial to implement.
Speccery's faster CPU would already make TI BASIC run 23X faster :-)
A 32 bit version of the 9900 would be nice to have, but it would mean a re-write of everything unless one could think of how to make it backwards compatible.
It goes without saying that TI-BASIC could be much faster if it had been written differently.
If you ever played with Commodore 64 BASIC you are shocked at how much faster it is than TI BASIC.
I was thinking about the TI Basic discussion yesterday, and also about the idea of making a GPL co-processor to speed up Basic execution. I kind of went full circle in my thought process. Ive been (also in this thread) thinking about building a GPL processor to really speed up Basic execution to whole new level. But then I started to think that is that actually necessary, if the CPU speed can be pushed higher wed get a reasonably fast Basic with higher CPU throughput alone? I also started to think how much GPL software there is, and would it be worthwhile to spend the time to create a GPL co-processor. What if we just rewrote the Basic completely in assembler (or even C) and used things like the wonderful FinalGROM99 to give us enough memory space for the code of the Basic interpreter? I know that it would be a non-trivial task to write, but then efficiency would be fixed for good and overhead gone.
Around this point in the thought process two things came to mind: although there is probably not that much GPL software [that needs to run faster], it is true the that the Basic interpreter is a core component of the TI-99/4A experience. Same goes for extended Basic [and derivatives] in particular. Im not sure that there are other major programs running in GPL that would benefit from a boost in speed - please let me know what you think
The other side is the point of efficiency, I just like things to run optimally, and having the TMS9900 to push through the GPL interpreter to run Basic just is not efficient.
And here we have it - it again started to make more sense to me to have a GPL co-processor in hardware. It would be cool if it could be implemented one GPL opcode at a time, so that the system would fallback to standard TMS9900 software interpretation if the opcode is not yet implemented yet.
Comparing GPL co-processor and Basic rewrite also comes back to compatibility and effort - I believe making a [partial] GPL co-processor is not that much work, rewriting the entire Basic would invariably lead to compatibility problems and is probably MUCH more work than doing a GPL co-processor. At least for me
I did not know that the TI Basic uses 8 byte representation for floating point math. Seems indeed like another way to maximize computational load... Well I guess that with a hardware GPL co-processor that would not matter much, the GPL execution speed would probably be at least 100x faster than with a standard console.
Edited by speccery, Sun Dec 31, 2017 12:19 AM.