I have finally come back from a long exile from computers, and I'm getting a TI nSpire CX CAS on Thursday. So, after a while of thinking about what I could do with this new device, I thought up a project that could help me learn Lua, Z80 Assembly, and some more Java at the same time: a cross-platform web browser.

I got the idea from Kerms' Gossamer browser. However, for simple use it is kind of a hassle, what with needing a hub and whatnot. Then I had an idea: if a server program on a computer could retrieve data, turn it into a format recognizable by the calculator, and then send it via USB or GraphLink, this could be avoided and the ease of implementation could be greater.

So this is my idea: a server (in Java, or C# if I have to) will run on a computer and communicate with a calculator (I will probably start on the nSpire and then move to the TI-84). The calculator will have a browser with a URL bar to retrieve pages and (possibly) programs. When a request is sent from the calculator, the server (computer) gets the page (or sends in form data, which I would like to try to implement) and translates it into a simplified version of HTML. This is then encoded and sent to the calculator, which displays it. The browser would be able to display text, hyperlinks, forms, and (once I get around to it) pictures. It would also be able to download programs for whatever calculator the thing is running on. Additionally, I was thinking of having an ability to change the user agent, and also send commands to the server. This would be used for things like installing programs from the archives that are in zipped files.

Right now, this stuff is all theory though. Could it be done, though? (Without driver programming, or things like that - I wouldn't even know where to begin unless someone worked with me or something.)

I will, sometime later, post some stuff about it on my web site (which will be added below in this post later...), in case anybody wants to look at technical details or whatever.
Wow, good luck topping Kerm, and are you sure that you want to use this project to help you learn the programing languages? There are plenty of tutorials out there I'm sure.
Good luck making it!
ZachAttack4321 wrote:
Wow, good luck topping Kerm, and are you sure that you want to use this project to help you learn the programing languages? There are plenty of tutorials out there I'm sure.

You learn programming by making programs too, even if you read a ton of tutorials doing it will learn you things that are not covered in tutorials: thinking in that language. Well, all of this is just my opinnion Smile.
Yeah i agree with that, but say you just started out with java, I'm not sure the best option to learn the basics is to start out with a difficult (?) project (I don't program very much so I guess I wouldn't know).

Btw, how much experience do you have with all of these languages AngelStorm9x3?

PS, do I have to tag his name or something?
I've had a decent amount of experience with Java. I am in IB Computer Science, and I've read through Sam's Teach Yourself Java in 21 Days several times. I'm about to start on the dossier project (a real-world program).

As for Lua, it's kind of like a cross between Basic and Java to me. With a few differences.

Assembly is the only one I'm not sure where to start with. It just looks like gibberish to me. However, writing the TI-84 program in Basic with some libraries would be a different matter. I can do Basic, I just need to use the libraries for more power.
I've thought about this and decided it's really not worth the effort. Nobody would use it (not even me after the novelty wore off), and anyway it's not practical. It's a whole lot of code for very little reward. So, I have given this thing the axe.
I think that this would be a very ambitious and, as you just mentioned, relatively useless project. However I think a much simpler version which can download files from the archives on this site would be pretty neat and almost convenient. Of course, there is the issue of ZIP archives... I don't know.
Zip archives actually would be easier, since there is a computer acting as a go-between anyway. You actually just gave me an idea... Once I learn Z80 Assembly, I could adapt this into a sort of app store for TI-OS that can retrieve and install anything compatible with whatever calc you happen to be using at the moment... But that's all speculation until I learn Assembly.
For now you could start with a basic linking program (for computer). That could get you used to at least the host side of transferring data (maybe?).
My idea of the original worked like this:
- Plug in calc to computer connected to the Internet
- Start script for transfer service. This connects to calc without TI-Link, and reformats web pages and other data into a form understandable (and renderable) by the calc.
- Open program on calc.

I suppose the TI Calc app store thing would work like that...
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum