FAQ about GCC4TI and how it relates to TIGCC
- Q: Is TIGCC dead?
A: No. TIGCC is still being developed and will continue as if GCC4TI didn't exist. A new beta release is planned soon, and the official 0.96 release shortly afterwards.
- Q: Is GCC4TI the successor of TIGCC?
A: No. TIGCC is not dead, so there cannot be a "successor".
- Q: Is GCC4TI better than TIGCC?
A: No. The GCC4TI project already accepted some patches which have been rejected from TIGCC because of serious technical issues with their concept and/or their implementation, more are planned. Some of their patches are poorly documented (e.g. one of them comes with autogenerated "documentation" where what's supposed to be the long explanation is a single sentence which is identical for all definitions in the entire header), poorly tested (or not at all), poorly implemented and/or incomplete. And those patches have little to no benefit to the average user of TIGCC (e.g. several are related to Flash OS support).
- Q: Is GCC4TI being developed by the community as a whole?
A: No. There are currently 2 committers (Godzil and Lionel Debroux) and 1 contributor (PpHd).
- Q: Is GCC4TI endorsed by the community as a whole?
A: No. Several people have voiced their continued support for TIGCC. And in several cases, the GCC4TI project uses the word "community" where they really mean "yAronet" or "some small group of yAronet users".
- Q: Will the patch to readd VTI support be merged into TIGCC?
A: No. VTI is obsolete software which has been completely unmaintained for at least 7 years. TiEmu does everything VTI did (for the calculator models supported by TIGCC) and more, so there's no benefit to still using VTI. And there are several serious issues with VTI which make it non-viable in the long term:
- lack of support for any current calculator hardware. Where "current" is anything newer than 2001! This includes the TI-89 Titanium and Voyage 200, which are the models most new TIGCC programmers are using. Unsupported hardware cannot be emulated at all, rendering VTI completely useless for owners of the affected hardware.
- lack of full support for even the hardware version 2.00, it emulates the ancient hardware version 1 while claiming to be HW2. (This affects several things, including grayscale.)
- lack of support for any current calculator software (AMS). In particular, program entry breakpoints don't work with an unsupported AMS version, which makes debugging a near impossibility. The original version only supports the ancient AMS 1, there's a buggy patched version whose source code has been lost which supports AMS 2, AMS 3 is not supported at all.
- non-portability. VTI only supports M$ Window$.
- lack of an inter-process communication (IPC) interface. Sending files from GCC4TI's IDE (and old versions of TIGCC IDE, they just resurrected the ancient code) to VTI works by faking keypresses, a fragile hack which breaks as soon as you bring another window to the front while the text is being typed and which doesn't support special characters (even quotes!) as program arguments because there's no way to press 2nd with the hack, in addition to being unmaintainable.
- lack of a C debugger. Debugging C programs with VTI is a PITA, VTI vs. TiEmu is really night&day when it comes to debugging. Implementing the C debugger in TiEmu was a major effort and it's sad that people ignore all the work done to make their lives easier and ask for an obsolete emulator instead. Even for assembly programmers, the support for debugging information added for the C debugger is beneficial, as it allows viewing the original commented code and also provides label names in the disassembly.
- bugginess of the most recent version. The modified version of VTI which adds AMS 2 support is very unstable and buggy.
- unavailability of source code for the most recent version. The author of the modified version has lost his latest sources (which he did not publish) in a hard disk crash, so for any changes, an older source code would have to be used as the starting point.
- licensing issues. VTI is a minefield of non-Free licenses which may even be incompatible with each other, making anybody think twice before trying to modify it.
TiEmu fixes all these issues. According to Lionel Debroux, the GCC4TI team has no plans to fix any of these issues in VTI. In addition, the option to use VTI clutters the option dialogs with an unnecessary option.
- Q: Are there other patches which will not be merged?
A: Yes. VTI support was singled out because it got a special mention in GCC4TI's PR, but there are other patches with serious issues and practically no benefit to the average user of TIGCC in GCC4TI. See also the answer to "Is GCC4TI better than TIGCC?"
- Q: Are TIGCC Team members trying to sabotage or attack GCC4TI infrastructure?
A: No. Do not believe any baseless accusation you read on the Internet!
- Q: Where GCC4TI members are asking for feedback for "TIGCC/GCC4TI", is this really endorsed by the TIGCC project?
A: No. The feedback is being sought only by GCC4TI. The TIGCC project will ask for its own feedback where it is actually needed. The TIGCC Team didn't ask the GCC4TI developers to collect feedback on its behalf and doesn't plan to do so any time soon.