ticalc.org
Basics Archives Community Services Programming
Hardware Help About Search Your Account
   Home :: Archives :: News :: TI-GCC v0.7

TI-GCC v0.7
Posted by Nick on 30 June 2000, 04:27 GMT

A rather illustrious team of talented programmers has taken the helm of one of the most useful development tools in existence for the TI-89. Furthermore, they've also recently released TI-GCC v0.7, laden with wacky new features. New features are (from the readme):

  • Updated: The linker now supports EXTRA_RAM_TABLE symbols.
  • Updated: The linker accepts a new switch: -outputbin will make it output the raw executable file as it is on the calculator. Of course this .bin file can not be transferred to the calculator.
  • Updated: The linker will display the compiled file size even with the quiet switch -q enabled
  • Updated: Includes tigcclib 2.1 from Zeljko Juric
  • New: Includes TI-GCC IDE by Sebastian Reichelt
  • New: The directory structure has been completely changed and is now clearer.
  • New: The installation is a lot easier thanx to Sebastian Reichelt's setup program.

TI-GCC v0.7 was created by a highly diverse, international team; all of which deserve our mad props. Xavier Vassor, who made the linker and the executable; Niklas Brunlid, who helped in minor bugfixes and additions; Jean Canazzi, who recompiled GCC (whatever that means); Zeljko Juric, who provided the library (of recent news item-related fame) and who wrote the documentation; the also recently-mentioned Sebastian Reichelt, who wrote the IDE; and finally, last but not least, Philipp Winkler, who assisted in the conversion of the library's help file.

Scrumptuous!

 


The comments below are written by ticalc.org visitors. Their views are not necessarily those of ticalc.org, and ticalc.org takes no responsibility for their content.


Re: TI-GCC v0.7
Vejita  Account Info
(Web Page)

If someone wanted to make their own ide (yes, i am asking this)....is everything documented for that?

-Corey

     30 June 2000, 08:13 GMT

Re: Re: TI-GCC v0.7
calcfreak901  Account Info
(Web Page)

what is an ide?

     30 June 2000, 08:36 GMT


Re: Re: Re: TI-GCC v0.7
Fred  Account Info
(Web Page)

Well, an IDE is something very useful to programmers : Integrated Developement Environment. You can access all the development tools in ONE application : editor, compiler-linker, debugger...

It is not necessary, and a bad IDE can be worse than no IDE at all, but it can reduce the developing time a lot when well thought and written.

     30 June 2000, 09:58 GMT


Re: Re: Re: Re: TI-GCC v0.7
calcfreak901  Account Info

that explains it

now if i only knew c...

     1 July 2000, 00:03 GMT


Re: Re: TI-GCC v0.7
Sebastian Reichelt  Account Info
(Web Page)

<sarcasm> Well, Eheheh, no... </sarcasm>

If you tried to write an IDE, I could provide you with all the necessary information, though, that I found out myself to create my own one. To compile, you basically have to do what tigcc.exe does, in a different way. You should also redirect the standard I/O streams, into a file for example. Moreover, run the programs with hidden main window. All this can be done using the CreateProcess function from the Windows API.

And since the source to my IDE is available, you shouldn't have any problems.

     30 June 2000, 13:49 GMT


Re: Re: Re: TI-GCC v0.7
Vejita  Account Info
(Web Page)

Bah!

-Corey

Fred, you seem to be doing well, I am sure you can explain what I mean by that.

     1 July 2000, 01:41 GMT

Re: TI-GCC v0.7
Operations  Account Info

i'm gunna sound stupid when asking this but, what is a ti-gcc? could someone please e-mail me at violent_bob69@hotmail.com with the answere

     30 June 2000, 18:53 GMT


Re: Re: TI-GCC v0.7
Sebastian Reichelt  Account Info
(Web Page)

TI-GCC is an SDK for the development of C and ASM programs. So, if you know C, you can program with it very easily.

     30 June 2000, 19:52 GMT

What compiling is
Jim Haskell  Account Info
(Web Page)

&lt;terms type="layman"&gt; Compiling is when you turn the source code into an executable form, like asm code into the calc program. &lt;/terms&gt; &lt;redundant&gt; Thus, recompiling is doing said process again =) &lt;/redundant&gt;

Jim Haskell
PS: XML is cool =)

     30 June 2000, 20:00 GMT

Re: TI-GCC v0.7
AuroraBoriales  Account Info

Will there ever be a C++ for the calc? object-orientedness would help a lot. It would probably reduce the size of programs, and make them much more efficent.

     30 June 2000, 20:50 GMT

Re: Re: TI-GCC v0.7
Sebastian Reichelt  Account Info
(Web Page)

> object-orientedness would help a lot

For bigger projects, yes.

> It would probably reduce the size of programs

No, definitely not. It would rather increase it.

> and make them much more efficent

That depends on how they are programmed. Since all programs are written so hardware-specific (e.g. writing to addresses directly, using direct I/O...), this is calling for a complete change in the programming style, which in turn requires a lot more work for all programmers who have to make object-oriented interfaces for all direct hardware issues.

Believe me, I can program /much/ better in an object-oriented style for the PC, but for calculators, this really wouldn't be a good idea. I've actually thought about making some kind of interpreted, object-oriented language, but I quickly saw that it is extremely unrealistic.

Object-oriented programming would be very good for things like Prosit, I think. Otherwise, this would be too much work for too little outcome.

     30 June 2000, 21:29 GMT

Re: Re: TI-GCC v0.7
Zeljko Juric  Account Info
(Web Page)

Usage of C++ on a calculator is not a good idea. Why? See, typical C++ programmer wants to use streaming instead of functions from stdio.h For example, he wants to use

cout<<"Hello world!";

to write a string instead of

printf("Hello world");

But, cout object is, as you know, an instance of a ostream class. Do you know how complex ostream class is??? For example, if ostream class is implemented in such compiler, expect that

cout<<"Hello world!";

will produce at least 5 Kb of code. I don't want this. Anyway, I don't like even usage of stdio.h in calc programs. I will rather use TIOS-specific functions like

DrawStr(0, 0, "Hello world!", A_REPLACE);

instead - it will produce much shorter code even than usage of printf!!!

This is only one of million possible reasons why C++ is not good for calcs.

     1 July 2000, 09:09 GMT


Re: Re: TI-GCC v0.7
Zeljko Juric  Account Info
(Web Page)

Object oriented programming is introduced to make programming easier (i.e. to help programmers), not to reduce the size of programs and make them much more efficient. In fact, object oriented programs are always:

1) greater in size than non-objected programs;
2) less efficient than non-objected programs.

     1 July 2000, 09:13 GMT

Re: TI-GCC v0.7
TipDS

What the heck?!! What happened to good (bad?) old scanf()? I was experimenting with TIGCC and its "ansi" compliant stdio.h library, and it doesn't seem to have the ansi standard scanf() function!!!! Anyone have an alternative recomendation for a way to get text only input? I don't want to use graphical input boxes either. I want a simple UNIX-style input. IOW, I would like scanf() or its closest counterpart.

Thanks,
Tip DS

     30 June 2000, 22:57 GMT

Re: Re: TI-GCC v0.7
Sebastian Reichelt  Account Info
(Web Page)

Use gets instead. Hope this helps.

     30 June 2000, 23:27 GMT

Re: Re: Re: TI-GCC v0.7
TipDS

Thanks. I thought of that, but I was hoping to take in ints, longs, doubles, etc. I believe that gets takes only strings, and that would require extra processing to convert the string into a number. I can do it (I have in the past), but I was hoping for something like scanf(). I suppose I could get off my A$$ and write my own scanf(), but I'm sure it wouldn't be as good of a code as one written by a "real programmer." My code tends to be more "this will work" rather than "this works very well."

Thanks again,
Tip DS

     1 July 2000, 03:44 GMT


Re: Re: Re: TI-GCC v0.7
JHill8075
(Web Page)

Don't you mean getchar()? (getchar() will echo to the screen what is typed in. If you don't want it echoed use ngetchx(). Both are similar to the idle_loop function in ASM)

     1 July 2000, 03:56 GMT


Re: Re: TI-GCC v0.7
Zeljko Juric  Account Info
(Web Page)

See what is the problem. Nothing similar to scanf does not exist in TIOS. So, if I want to implement scanf, i must to do it by myself. This is not impossible, of course, But, as scanf is an extremely powerful and complicated function in general, usage of scanf will produce a lot of code. When I tried to implement scanf using one source which I picked from the net (which supports all formatting options), the result was disasterous: the following program:

void _main(void)
{
int a;
scanf("%d\n",&a);
printf("%d\n",a);
}

produces 5.3 Kb of code!!! Why? scanf can't conclude in a compile time what kind of input will be accepted, because you may use even

scanf(s,a);

where s is a string constructed in run time. So, scanf
must include code for every possible input type (floating point conversion routines, for example).

That's why I didn't implement scanf. If anybody have a good idea, it will be very welcomed...

     1 July 2000, 08:55 GMT

Re: Re: Re: TI-GCC v0.7
Rafael H. Padilla V.  Account Info

if you implement it function can you send it
to me please

thanks
dysup@hotmail.com

     1 July 2000, 21:13 GMT


Re: Re: Re: TI-GCC v0.7
Jonas Lf

Hmm... One idea would be to implement a nonstandard sscanf that requires a constant string as second argument, but otherwise behaves as expected. Then it could be determined at compile time what portions of the code is neded. Just an idea, perhaps I'm wrong; I'm not that well versed in the black art of the (gnu) c preprosessor...

     2 July 2000, 11:59 GMT

Well, i jus wanted ter sey
da86guy Account Info

I've broken the 8.5 kb ASM program size barrier! See ZIP file that will come up in a week or so... EMAIL me at pwong0124@hotmail.com to find out how I did this.

     1 July 2000, 03:13 GMT

Re: Well, i jus wanted ter sey
Vejita  Account Info
(Web Page)

?

-Corey

     1 July 2000, 06:06 GMT


Re: Well, i jus wanted ter sey
calcfreak901  Account Info
(Web Page)

if this was on ams 2.03, it has already been done
if this was on ams 2.04, it is 24 kb, not 8.5 kb

anyways, ams 2.03's limit was 8kb, not 8.5
i have no idea what the limit was for ams 2.01

     1 July 2000, 08:54 GMT


Re: Re: Well, i jus wanted ter sey
David Hall  Account Info
(Web Page)

> i have no idea what the limit was for ams 2.01

Probably around 3KB :)

...and if you're being pedantic, as you used a lower-case "b" in "kb" you actually said "kilobits" and not "kilobytes". Technically it sould be an upper case K and B :)
Hmmm. I read that in PC Magazine, and still haven't worked out whether it was a joke ;) But it fools PC World salespeople when they advertise 128 millibits of RAM ;)

     1 July 2000, 11:20 GMT

Re: Re: Re: Well, i jus wanted ter sey
Vejita  Account Info
(Web Page)

How come no one has started using the Kibi prefix :)

-Corey

     1 July 2000, 20:44 GMT


Re: Re: Re: Re: Well, i jus wanted ter sey
David Hall  Account Info
(Web Page)

Good question. Maybe they can't spell it? ;)

     2 July 2000, 15:32 GMT


Re: Re: Re: Well, i jus wanted ter sey
calcfreak901  Account Info
(Web Page)

I just went through a time when I only used lowercase letters because it is faster than capitalizing letters, and if I use all caps, its considered shouting.

     8 July 2000, 19:22 GMT

1  2  3  

You can change the number of comments per page in Account Preferences.

  Copyright © 1996-2012, the ticalc.org project. All rights reserved. | Contact Us | Disclaimer