Omnimaga

Calculator Community => Other Calc-Related Projects and Ideas => TI Z80 => Topic started by: SirCmpwn on March 04, 2010, 08:55:11 am

Title: TI Helper
Post by: SirCmpwn on March 04, 2010, 08:55:11 am
Hello all,
I'm a half decent calculator programmer, but where I really shine is .NET.  I am writing a program in C# that will eventually be open source (as soon as I finish it) that makes calculator programming easier.  What it does is sit in your taskbar and watch the output directory of your project.  As soon as it notices a change to your .hex or .bin file, it automatically performs every step to convert it to a .8x* file.  It supports programs, apps, and operating systems.  For those last two, they are signed appropriately.  Then, a message lets you know it finished, and copies the .8x* files to your project's output directory, and copies them to the clipboard as well.  For OSes, a .rom is produced as well.  Also, if you click on the message, it will open PindurTI with your program installed (including dependencies, such as Doors or Mirage) for debugging.
So know you know the gist of it, hit me with requests, suggestions, ect.
Title: Re: TI Helper
Post by: DJ Omnimaga on March 04, 2010, 09:46:34 am
mhmm interesting, does it takes a lot of CPU ressources, though, or does it check like every 5 seconds? It might come handy sometimes
Title: Re: TI Helper
Post by: {AP} on March 04, 2010, 01:45:03 pm
Also, if you click on the message, it will open PindurTI with your program installed (including dependencies, such as Doors or Mirage) for debugging.

That won me over immediately. I've always wanted a way to test out programs more quickly.
Get'R'Done! =D
Title: Re: TI Helper
Post by: Geekboy1011 on March 04, 2010, 03:52:11 pm
hmm sounds interseting i wonder if there is any way to have this convert .txt's with ti basic code over :/

(i also wonder how the other basic ide is coming and geek feels a necro post soon :P)
Title: Re: TI Helper
Post by: DJ Omnimaga on March 04, 2010, 03:57:05 pm
I recall Eeems wanting to do this with his ASM IDE but I'm not sure anymore. I would like to see this in your TI helper, though. One thing that is annoying about ASM is having to manually compile, send the program to an emulator, test, debug, compile, send program again, test, etc. I loved how on TIGCC on certain TI-68K roms you click test then the program automatically starts in the emu.


Would it be possible to have it WabbitEmu compatible, though? Because many people prefer it to PindurTI and PTI won't emulate 15 MHz calcs
Title: Re: TI Helper
Post by: SirCmpwn on March 04, 2010, 04:49:10 pm
Hmmm, lets address some of this.

Would it be possible to have it WabbitEmu compatible, though? Because many people prefer it to PindurTI and PTI won't emulate 15 MHz calcs
I could probably set it up so that it could open up any emulator, wabbit or otherwise

hmm sounds interseting i wonder if there is any way to have this convert .txt's with ti basic code over :/
I do quite like this idea, I'll think about it.

mhmm interesting, does it takes a lot of CPU ressources, though, or does it check like every 5 seconds? It might come handy sometimes
There is a built in class in .NET that does this for you.  It watches the last modified property instead of an honest to goodness compare, so its pretty fast with no noticible overhead.

I will do my best on this, please understand that I have a splint for a few weeks and only have one hand available for coding >.<
Title: Re: TI Helper
Post by: Geekboy1011 on March 04, 2010, 05:07:14 pm
ouch sorry to here about the hand and i think there is a tokenizer for tibasic code around some where maby ask cooliojazz idk
Title: Re: TI Helper
Post by: SirCmpwn on March 04, 2010, 05:20:20 pm
Yeah, I have a tokenizer sitting somewhere on my PC.  Also, I wrote my own .NET library for creating programs (cause DevPac8x doesn't work on x64, which is what I have) so all this stuff works on x64  ;D
Title: Re: TI Helper
Post by: ztrumpet on March 04, 2010, 05:27:54 pm
Sounds great!  I think it will help. :)

Welcome here! ;D
Title: Re: TI Helper
Post by: SirCmpwn on March 04, 2010, 05:32:55 pm
Thanks!  I've been here for a while, I just haven't posted on these forums.  I usually hang out on Cemetech, but I'm starting to like omnimaga quite a bit.  ;)
Title: Re: TI Helper
Post by: SirCmpwn on March 04, 2010, 06:19:20 pm
Screenies, what do you think?

Building an app.  Whenever your output file changes, TI Helper automatically updates the .8x* file:
(http://sircmpwnfilestorage.pbworks.com/f/Build.png)

All builds are copied to the clipboard so you can easily get them somewhere:
(http://sircmpwnfilestorage.pbworks.com/f/Clipboard.png)

Debugging is also a snap:
(http://sircmpwnfilestorage.pbworks.com/f/Debugging.png)

And here is the actual GUI, which only opens if you want it to:
(http://sircmpwnfilestorage.pbworks.com/f/gui.png)


These are all live screens, not mock-ups, and keep in mind I only started this a week ago before you criticize ;)
I'm looking for comments, suggestions, anything, post what's on your mind and I'll try to implement it.
Title: Re: TI Helper
Post by: Eeems on March 04, 2010, 07:34:07 pm
wow! that blows my ADE out of the water x.x
well of course mine is only a lightweight thing, and it's built in a more limited language...
wow what I would give to be able to install that on my comp.
could you make it compatible with other emulators? I've only been able to get wabbitemu to work.
Title: Re: TI Helper
Post by: SirCmpwn on March 04, 2010, 07:45:22 pm
Wow, thanks for the smile :) After that kind of praise, you can be sure I'll prioritize other emulators!  I was also thinking of supporting add-ins, which wouldn't be too hard, thoughts?
Title: Re: TI Helper
Post by: Eeems on March 04, 2010, 07:49:36 pm
np!
hmm, that would be great, how exactly are you planning on doing add-ins? would you be using a scripting of a sorts?
Title: Re: TI Helper
Post by: SirCmpwn on March 04, 2010, 07:54:49 pm
Do you know .NET?  C#, VB, or the like?
Title: Re: TI Helper
Post by: Eeems on March 04, 2010, 07:58:19 pm
no :(
I know lots of javascript though...but that would really help.
you could create your own scripting language for it.
Title: Re: TI Helper
Post by: DJ Omnimaga on March 04, 2010, 08:00:30 pm
Looks pretty nice. I'm glad it isn't gonna take a lot of CPU ressources, I was asking since I know some apps runs in real time on computers to monitor stuff. Netham45 Starcraft log relayer (a bot we had in #omnimaga that relayed IRC convo to the third party SC server he ran and another one relaying the SC server lobby channel convo to #omnimaga. Basically something a bit similar to TI-SAX on Cemetech), but he had it check for new lines of text non-stop and his host provider asked him to shut the bot down because it took 100% of the CPU ressources.

Also question, in which versions of Windows will this work? Like will it be only 32 bit compatible, will it work on XP, etc?

Also btw sorry I might not be able to help a lot on the project in terms of suggestions, since I do not know ASM, nor coding-wise, since I don't know much in terms of PC programming :(
Title: Re: TI Helper
Post by: SirCmpwn on March 04, 2010, 08:03:50 pm
It's a sad day when someone doesn't know .NET :P lol
What you can use in .NET is something called reflection, where you can dynamically load external assemblies at runtime and instantiate (create a variable representing) a class in the assembly, without knowing anything about it beforehand.  What I usually do to support add-ins is make a class that you can derive from, and import the assemblies into my program, which makes it super flexible for add-in programmers.  Once I load the external assembly, I can call methods created by the add-in developer easily, essentially making add-ins work like a second program that happens to share gui and certain variables.

Edited to answer previous post
It runs in x86 or x64 bit windows (meaning 32 and 64 bit), on XP, Vista, or 7.  It also runs on most Linux distros, and Intel Macs.
Title: Re: TI Helper
Post by: Eeems on March 04, 2010, 08:09:37 pm
ah ok
well I haven't really gotten into programming languages on the comp, more of scripting right now, but I do intend to learn C++
Title: Re: TI Helper
Post by: DJ Omnimaga on March 04, 2010, 08:13:03 pm
It's a sad day when someone doesn't know .NET :P lol
This is a sad day when someone has to say such narrow-minded and provocative remarks...

Unfortunately to everyone, no updates nor awnsers to your questions will be given by the project author for at least 4 hours.
Title: Re: TI Helper
Post by: Eeems on March 04, 2010, 08:20:15 pm
DJ: it's ok, I was ok with it.
But yeah, we do try to discourage remarks like that.
Title: Re: TI Helper
Post by: SirCmpwn on March 05, 2010, 12:15:48 am
I apologize if I offended anyone, it shall not happen again.  I am a n00b to this forum, and am not entirely aquainted to it.
Title: Re: TI Helper
Post by: DJ Omnimaga on March 05, 2010, 12:23:15 am
It's ok, you just need to be careful sometimes. Not that I see the point of trying to offend other people or start fights anyway (yes there are people who do that). Omnimaga was always more strict on that part because other forums aren't and we want to provide at least one friendlier environment for the TI community, especially for projects. This is why we have this 3rd sentence in the intro message on front page. Some people can be used to other forum styles, though, and take a while to get used to ours, or vice-versa :P
Title: Re: TI Helper
Post by: SirCmpwn on March 05, 2010, 12:42:48 am
Anyway, I'm almost finished with the next stable build, I'll post more info later.
Title: Re: TI Helper
Post by: trevmeister66 on March 05, 2010, 12:52:12 am
That's looking sweet. I really need to get back into programming (on all platforms) again... Bah I'll start tomorrow. Nice work though.

But for now, MORE BATTLEFIELD: BAD COMPANY 2!!! Heh  ;D
Title: Re: TI Helper
Post by: SirCmpwn on March 05, 2010, 12:54:18 am
lol is a bit understated nowadays, but I literally lol'd.

Also,
I take it Summer Glau posts are frowned upon here?
Title: Re: TI Helper
Post by: Eeems on March 05, 2010, 01:05:49 am
Summer glau?
Title: Re: TI Helper
Post by: SirCmpwn on March 05, 2010, 01:07:31 am
Replying on forums with essay-like posts signed "Summer Glau"
5 paragraphs minimum, usually.
Title: Re: TI Helper
Post by: Eeems on March 05, 2010, 01:09:30 am
Ah. I wouldn't think so.
Unless of course the post actually was relevant. And you would usually want to put a tl;dr in there for the people who don't have the attention span to read it all.
Title: Re: TI Helper
Post by: SirCmpwn on March 05, 2010, 01:11:39 am
Oh, Summer Glau posts are always a bit too relevant.  And what is tl;dr?
Title: Re: TI Helper
Post by: Eeems on March 05, 2010, 01:15:19 am
Lol :p
tl:dr stands for "too long; didn't read"
Title: Re: TI Helper
Post by: SirCmpwn on March 05, 2010, 01:16:40 am
Ah i see lol.  Can I direct you to the "Well...I'm new" thread where I brodcast my n00bness? lol :-[
Title: Re: TI Helper
Post by: Eeems on March 05, 2010, 01:18:37 am
Lol it's ok, I understand. I actually didn't learn that until I had been on forums for about two months or so x.x even after seeing it.
Title: Re: TI Helper
Post by: DJ Omnimaga on March 05, 2010, 01:19:04 am
Nope, there is no restriction on post lenght here (unless you keep posting posts that just contains a smiley or one or two words outside the randomness section) and it is also possible to bump your topics if you got a new update after several hours on a project for example, or have another question on something but your topic got dropped off the latest new post list.

The only issues, though, is that if posts are excessively long, people might not bother reading through them, especially if they have trouble reading texts (like me) so it's always good to summarize its content in the first paragraph :P, and double-posting for no reason or abusing it is not recommended since we can always reset post count to zero :P

EDIT (since someone posted): tl;dr means "too long; didn't read.". Another comment on large posts, if they're replies, not new topics, due to high activity over here it's very common that from the time you started replying until you hit Post, some other replies will have been made. Also, sometimes the server/forum software will epic fail and throw you an error when clicking "Post". Always copy your long posts in the clipboard before hitting reply

EDIT: darn this topic is fast
Title: Re: TI Helper
Post by: SirCmpwn on March 05, 2010, 01:20:36 am
Alright.  Thanks for the tips.  I'm not too good at Summer Glau posts anyway, so I'll keep em short.