TIGCC Tools Suite - HowTo's | (c) TI-Chess Team |
Using Compressed kernel-based Executables | Anno Domini 2001 |
Since version 0.9 TIGCC supports exe-packing directly for NOSTUB programs, but not for kernel based programs. Therefore you have to process the necessary steps still by hand.
To make the process simple I have implemented a tiny tool called ttppggen which processes all necessary steps in sequence. Suppose we have the TI89 executable of tichess (tichess.89z) and the result should be a calculator variable with name "tic" which holds the packed executable.
ttppggen tichess.89z tic
This short line will generate a file tic.89y which will show up on the calculator as file tic with extension ppg.
To start the packed executable on the calculator you can use the ttstart() utility which comes with the TIGCC Tools Suite like this:
ttstart("tic")
Of course you can use also the TICT-Explorer (can be found on http://tict.ticalc.org) which supports exepacked programs directly without any launcher.
If you want to build a custom start utility which doesn't need any commandline parameter, read on!
Suppose we want a custom start utility which doesn't need a commandline parameter. The start utility should be named mystart and the packed executable is named myprog. To build this custom start utility just go to directory src/calctools and compile ttstart.c like this:
tigcc -o mystart -Os -DCUSTOM_NAME=myprog -DONLY_PPG ttstart.c
That's all. When you start mystart() on your calculator it will look for myprog automatically.
NOTE: Of course you must have the TIGCC environment already installed on your computer to build a customized launcher for kernel based programs.
The exepack technology was originally invented and tested for NOSTUB programs. If it works correctly in combination with kernels depends on the kernel.
Compressed executables works fine with UniversalOS v1.30, but not with previous versions of UniversalOS. Other kernels are not tested. I suggest to add a hint about this fact to the readme file of your program.