ticalc.org
Basics Archives Community Services Programming
Hardware Help About Search Your Account
   Home :: Community :: Articles :: Creating the Ultimate GUI
Creating the Ultimate GUI

Posted on 8 September 1998

The following text was written by Philip Gossling:

Here are some ideas I thought up over the past year that I would love to see in future GUI shells for the TI-86. Your eyes will also be entertained by the cool screen shots I've included! :-) I actually tried making a GUI with the ideas below, but I wasn't as good at ASM then, so I quit the project, and now I'm too busy! So I'm throwing out my ideas to anyone who will take the bait :-)

[Practical User
Input]
[Practical User Input]

1. PRACTICAL USER INPUT. A shell on a calc should be built with a calculator keypad in mind, not a mouse. My shell would use no mouse pointer. F1 would always be the Start menu. F2-F5 would be the categories of programs, with F2 being the Desktop (the first screen you see when starting the program), and then Games, Math and Utilities. The arrow keys move a highlighting bar that highlights the programs, and 2nd runs the selected program. Key input in the shell should be simple and fast, with nothing that wouldn't really be feasible for a calculator.

[Icons]
[Icons]

2. ICONS. Lets face it, icons are cool. So far these have only been experimented with in Aurora, which was too slow and impractical. Icons however can still work on a calculator. If I remember right, Aurora used 8x8 sprites placed above the program name. This wasn't very smart. This layout just doesn't work on the 86 screen very well. However, If you make the icons 7x7 sprites and place them to the immediate left of the program name, you can fit lots of prgm names on one screen. You could also have the screen scroll down to fit more programs. The shell should also have a built in icon editor that would attach the icons to a program, so icon files wouldn't clutter the RAM. Icons should be able to be attached and detached from files. If a program has no icon with it, the shell should provide it with a temporary built in icon according to the file type. The shell should also have a small icon library so users can choose from pre-maid icons that they can assign to variables. Users could also add their own designs to the library. Now wouldn't that be awesome :-)

[Start Bar]

3. START BAR. Notice the Windows-like Start Bar at the bottom of the screen in the shell screenshots. You'll notice it displays different info in each screen shot. This is an interesting concept I came up with. The bar could be personalized to have quick jumps to categories using the F2-F5 keys, show a clock, the Free RAM, the date (if a clock was made), and more, maybe even a special welcome message. If you want to do some quick calculations and stay in the shell, then press F1(Start) and select the Calculate icon to do some math, and the start bar will remain on the bottom of the screen, allowing you to stay in the shell and run progs quickly. The math you could do would be limited though. If Windows add-on programs were created for the shell, they could leave the start bar on the screen and just display the program output above the bar.

4. TIME CLOCK. I think this is possible to do, though I don't know exactly how it would keep accurate time when running an assembly program. If it was done, you could display the date, have calendars, and have schedule programs, etc. Maybe even a calculator-based student planner. You could also change APD settings or see how long a program would take to run....(just some ideas).

[Explorer]

5. EXPLORER. A Windows explorer for a calculator? I though this shell was supposed to be practical! An explorer would be a great addition to the future GUI shells. My concept (see screenshot) is called RAM Explorer. It allows you to view, delete, and get info on EVERY TI variable in the RAM (not just programs). By clicking on the RAM icon, you can see all the variables, displayed on the right, and info about the RAM (mem free, etc.). You can move these files into folders that you create to organize them. How will folders work? Easy! My concept of a folder is simply a TI string variable with a header that lets the shell know its a folder. Then after the header, the string contains the names of all the files in the folder. The shell then searches for these files and displays them! The RAM Explorer can be personalized to show TI variable's built in icons (see icon screenshots) or variable type (as shown in screenshot above) or variable size, or both. You can also use the STO-> key to move variables or folders to other folders or the category folders like the Desktop. Explorer would also have a built in linking program so you could receive stuff or send whole folders' contents to other calcs. Also, when receiving a huge program with tons of sub-programs and variables (like many TI-BASIC games), the Explorer will automatically create a folder (if you want) that contains all the variables downloaded. Then if you hate the program and want to erase it, you just delete the folder. No more will you have to search through 98k for all the variables the program used to be sure its all out of the ram! Talk about useful! Talk about cool!

[String Viewer and
Editor]

6. STRING VIEWER AND EDITOR. (This is what the Notepad program is for) The GUI should have the ability to view strings in a window in menu-text and provide the ability to edit the string or create a new string with menu-text. There would also be formatting characters like the new-line character. With icons added to the strings you could personalize them, like make help files, etc.

7. EMULATION. The GUI has to have emulation for the TI-82, TI-83 and TI-85. This is the standard was set by ASE and Rascall, and should definitely be included in all future shells. The shell should assign icons to emulated programs.

8. COMPRESSION. The ability to compress and uncompress strings and programs.

9. WINDOWS PROGRAMS. The Ability to create programs that will run as if they were integrated into the interface. They will run in windows, and the start bar will remain on the screen. This is simple to do, but the program's output must be above the start bar and the program must have input routines to activate the start bar. You could also give programmers the addresses in the GUI of the time and where other useful info is stored.

10. COMPONENTS. If you want WindowsCE without the Explorer, or without the text editor, or you just want emulation and a desktop, then just erase or add the components you want. The GUI should NEVER have the Explorers and Icon Editors and so on built in. The shell should search for these programs on startup and if they are not there, then the program will still run fine, you just wont have those abilities. This will allow users to customize the size of their shell to fit their needs.

Wouldn't all this stuff in one GUI be huge? Anyone who is knowledgeable in ASM would see that all these things can be accomplished in probably under 10k. And remember about components.

That's All for now. If I come up with anything else I'll update this article. Please post questions, comments, and ideas for what you would like to see in future GUI shells. Also, If anyone wants to create a shell like this (maybe create a programming group) then let me know. I am a good artist and graphic designer who is also knowledgeable in Assembly. I just don't have time with college and a full time job to create a shell like this myself. I will help with art and ideas if you need them.

  Reply to this item

Re: Article: "Creating the Ultimate GUI"
Tom

It's really excelent ! Event if it takes 10k of RAM, it's quite useful and original to let us forget that ! Don't mind critical mail ! (perhaps the clock is not necessary...).
Keep working... and call me as soon as you have finished !
-----sorry I'm french and my english is...

Reply to this comment    24 September 1998, 13:16 GMT

Re: Article: "Creating the Ultimate GUI"
SandzakMaster

Please tell me at least WHEN YOU WILL EXPECT the shell to be out

Thanks

Reply to this comment    25 September 1998, 21:50 GMT

Re: Article: "Creating the Ultimate GUI"
KEN

could someone please help me with creating a gui or any good games for ti 86

Reply to this comment    28 September 1998, 00:14 GMT

Re: Article: "Creating the Ultimate GUI"
Anonymous

All I have to say, is why? I personally got a ti-85 so I could get away from the heck of normal palmtops. What I mean is GUIs. I mean, I like GUIs and all, but I mean geez! It's a calculator. A TEXT Based calculator. I'm sure the makers of it never intended for it to have some Graphical User Interface that looks quite a bit like Windows CE. Plus, as someone else said, LAWSUITES. Danger! Danger! Whoever is making this program! Bill Gates is approaching! By the way, BOYCOTT Microsoft(C).
But seriously though, I personally would forget the start menu and explorer bar. Do that, and it would be awesome.

Reply to this comment    28 September 1998, 00:56 GMT


Re: Re: Article: "Creating the Ultimate GUI"
Abraham
(Web Page)

Like Windows? this seems to be much better than Windows.

Reply to this comment    10 March 1999, 01:46 GMT

Re: Article: "Creating the Ultimate GUI"
Kyle Anderson
(Web Page)

All of this stuff is great. (if only someone would make it.) But to put on a real twist: Networking! Plugging in 2 calcs would give them access to all of each others resorces. Mabey with "Made for (This GUI)" programs that would fit into windows and have this ability would be a teachers nightmare and a slackers dream. This OS could be the new standard in TI calcs.

Reply to this comment    30 September 1998, 03:25 GMT

Re: Article: "Creating the Ultimate GUI"
Anonymous

I think that the idea of an assembly GUI for the TI-86 is great. It doesn't need the Windows-clone appearance, though. I think that originality has been the key to the success of the TI calculators and games. Who would have thought of making something called Usgard or PhatOS for an IBM? It wouldn't sell. As far as the TI calcs go, sales of shells isn't an issue since most of them are freeware. My point: everything about this idea is cool, but an original concept(not WinCE 86) is almost a prerequisite. Hey, I hear ZShell's discontinued. Maybe you could get the guys that made that to let you use the name and create ZShell 86. At least that would be more calculator-oriented.

Reply to this comment    9 October 1998, 21:41 GMT

Re: Creating the Ultimate GUI
Abs S  Account Info

I know this is off topic but I don't know where else to put this. Is there a program for the TI-86 that can factor like the TI-89 or TI-92? Onw of my friends has a TI-92 and al he has to do is put in the factor program and then type x2-7x+28 and it'll give him the answer in this form: (x- )(x- ). He can type anything he wants and it'll give him the answer. If anyone has a program like this please e-mail me. Thanks

Reply to this comment    2 April 2001, 22:08 GMT


Re: Re: Creating the Ultimate GUI
Matt Williams  Account Info
(Web Page)

There is a button on your calculator labeled "poly", which does polynomials. When it asks for the order, type 2 for a second degree polynomial. This is very useful in algebraic math.

Reply to this comment    11 December 2001, 18:52 GMT

Re: Article: "Creating the Ultimate GUI"
Edward Kunkes

I think that a window-like GUI for the Ti-86 is an excellent idea, it turns a calculator into a palm top and it takes up only 10k! this leaves plenty of room for programs and games. i have already figured out the clock problem, i am now writing a program that allow you to check your e-mail with the calc through an external modem, may be this can be incorparated into the GUI

Reply to this comment    27 November 1998, 07:34 GMT

Re: Creating the Ultimate GUI
Ryan of NONYA Inc. Account Info

This shell will take a _TON_ of work on behalf of whoever writes it. I can't. I don't know enough ASM to. I love the idea, and I think it would become famous.

It should be made REALLY impressive.

How about macros/batch files?

All of the shell's options should be in a clearly-marked file that can be backed up. Back when I used YAS, everytime YAS crashed my calc, I had to re-orginize eveything! YAS was nice, but it had a problem where when I was running another program, and the APD timed-out, it would freeze!

I believe that this should be a very dynamic shell. The first layer of customization would come as a Windows (for the computer) installer. You'd select what modules you wanted, what you wanted it to look like, etc. Then it would send it your calc. More work, but it would be well worth it. Then there'd be a control panel in the shell.

I think this shell should support multitasking. Not all programs would be able to multitask. But ASM programmers could add special code to their programs (near the shelltitle) that would tell wether or not it could run in the shell (if it couldn't, the shell would save itself to a swap file) and what memory it used that would need to be saved, and other such stuff.

"...the GUI would take on Linux properties where every user could modify, recompile, and use whatever "flavor" of GUI suits them best. I talking about segmented, WELL-DOCUMENTED code here... it would be a pain, but very rewarding in the end."

I think we need to remember that this is a calculator. We need to use the calculator keys and screen as effeciently as possible.

I think that compression is a really nice idea, especially automatic compression/decompression. I believe that you should be able to select different compression ratios: ARCHIVE, HIGH, NORMAL, LOW, Fast Compress/Slow Decompress, Normal, Slow Compress, Fast Decompress.

I think icons should be an option in Control Panel.

I think it would be really nice to be able to link with the 82, 83, 85, maybe even the 89/92 eventually. But most important the 82/83 since most schools seem (could be my imagination) to have class sets of these. It should be able to link from the GUI.

I agree with whoever said "The idea of having an Explorer like interface, so that when linked, the calculators can browse the others files, this would be a nice addition. Sort of like the Network Neighborhood approach."

How about a recycle bin?

Maybe some sort of crash-protection?

A clock would take up too much battery power, but would be a nice optional add-on. Or maybe something (a variable) that would hold the day, that all other programs (schedulers, calenders, etc.) would access. A box asking you what day it was could/would pop up every X calc-turn-ons (user defined).

Reply to this comment    26 May 2001, 00:40 GMT

"Creating the Ultimate GUI"
Dustin
(Web Page)

What we shold do is make two versions of the GUI. ONe with Icons one without. Not to difficult. Who would need a clock on it anyway? The Windows type is a great idea but who hasn't thought of that? Take off the explorer, we don't need it because its takes up space. We can delete stuff anyway so who cares. The string viewer is a great Idea! One last thing some email me if they make it so I can download it.

Reply to this comment    7 December 1998, 22:46 GMT

Re: Creating the Ultimate GUI
RCTParRoThEaD  Account Info
(Web Page)

You people are all from 1998 & I'm from the future but the TI-Voyage 200 will have a clock. And now I bring you a phrase f r o m t h e f u t u r e: w00t!

Reply to this comment    13 May 2002, 05:57 GMT

Re: Creating the Ultimate GUI
joebeta Account Info

I'm not a 86 user, I use a 83+. Anyway, here's what I think.

1. You should have some sort of task bar... start-menu bar or something. I don't know why you'd want autohide unless it was a special button to pop it open.

2. How will the OS (what'll it be called?) detect new addons? If it has some line of code, then you could auto-find auto-sort them. I.E. it coudl be IDed as ThisOS Utility Addon, and it would be dropped into the Utility Addon folder.

3. Maybe F1 could toggle the start menu/task bar from one mode to another. One would have the battery power and free ram and stuff, another would have the control panel, addons, progs, and quit or something.

4. There's something called the TI-OS, but it's inconvenient. I use MirageOS to run all my games and stuff, because it's more convenient, but I use the OS to edit my progs, etc. because Mirage can't.

5. Add features of future calcs. Look at OmniCalc. It gives you some really useful features for the 83+... factor, custom menu, simpsqroot, base changing... etc.

I don't know if what I just suggested would make it bloated, but I really don't think that optional stuff should come with a premade spot on the menu.

BTW, are there any new screen shots?

Reply to this comment    14 May 2002, 01:44 GMT

Re: Article: "Creating the Ultimate GUI"
Matt Pierce

There has already been a shell made that does most of these things described. The only thing it doesn't do is display the time. It is almost impossible to do unless you can figure out a way to just turn the power consumption by the calculator and have it run a TSR for a clock. If any one can figurre this out, I'll be at there ankles begging them for the code.

Reply to this comment    7 January 1999, 23:13 GMT


Re: Re: Article: Creating the Ultimate GUI
Tyler Kramka  Account Info
(Web Page)

What's it called? I own a TI-83+ SE and I have not found a shell so far that works or has a GUI I like.

Reply to this comment    27 April 2004, 22:48 GMT

Re: Article: "Creating the Ultimate GUI"
Matt Pierce

The Shell I made that I mentioned earlier about having everything is called Eclipsoft DX. It has TI82, 83, 85, 86, and 89 emulation. I know this doesn't seem right but I got it to work. It uses the idea with the icons as described. It locks memory, has password protection, and looks like Windows CE. It has 8 gray scales, a wallpaper that is changable with the push of a button, and muc, much more. It has been released to a very select few who I can trust, who wont give it away until I can figure out the bug I have with creating a 9th gray scale (for wallpaper purposes). Tell me what you think.

Reply to this comment    7 January 1999, 23:20 GMT


Eclipsoft DX skepticism
Greg Lescoe

Somehow, I don t think that this Eclipsoft DX exists. If it did, why would he have written that it has TI86 emulation? Why won t he respond to emails about it? Why didn t he give an URL to it, or at least say where to get it? I have done numerous web searches about it and, obviously, have not been able to find it. If anyone can help, please email me.

Reply to this comment    24 March 1999, 23:53 GMT

Re: Article: "Creating the Ultimate GUI"
Eric Brookins
(Web Page)

Many of you that said that you would like to see a GUI like this one will be happy to know that I have already began working on this project on the TI-83. Since the 83 and 86 both use a Z80 processor, so it will be easy to convert the shell. I'm not sure how to create a clock that will keep the accurate time unless the user stays in the shell using shutdown and power saving functions to keep the clock running. Well, I don't think that I'll be able to get this done for about a month or two maybe more, but I am working. THanks for the great ideas!!!

Reply to this comment    13 January 1999, 23:21 GMT


Re: Re: Article: "Creating the Ultimate GUI"
Eric Brookins

I found out that if you set the interrupt mode, then the clock can update itself while running a program. The only problem is that you can't keep a clock going while it's off, so I'll find away around that. Later!

Reply to this comment    22 January 1999, 01:53 GMT

Re: Article: "Creating the Ultimate GUI"
Abraham

does any one have accsess to the programming in the HP48 i'm not a programmer but it seems that the initial screen with the numbered icons is a good ideah that could be piggybacked off of. Just a random thought.

Reply to this comment    17 March 1999, 23:49 GMT

1  2  3  4  5  6  7  

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