ticalc.org
Basics Archives Community Services Programming
Hardware Help About Search Your Account
   Home :: Community :: Articles :: The Future of Assembly Programs
The Future of Assembly Programs

Posted on 4 July 1998

The following text was written by Douglas Ward:

The future has never really been addressed before, but I feel as if it is about time to address it. In this article I am not criticizing current programs, I am just commenting about the future of assembly. I have been watching the evolution of the TI calculators since I bought my 85 in early 1996. I was amazed each time a new calculator came out and unleashed new powers. The out coming of expanders also excited me, but I was soon disappointed. I bought a 92 to further explore programming and to be able to use other peoples' powerful programs (although I am not very good at assembly and don't really have the time to program very much). I was disappointed once again. The reason for my disappointment was the fact that the possibilities of the calculators with assembly shells have not even been touched in most cases.

The first feature is the speed of assembly. Assembly is many times faster than TI-BASIC. The 68000 chip on the 92 and 89 models are even more powerful.. This feature (speed) has been taken advantage of as is seen in games.

The second feature is memory. Assembly programs are very compact. The 85 and 92 models have memory expanders (is that all?) and the 86, 89 and 92 Plus have "extra" memory built in. The compact size of assembly programs means that a large program that takes much of an expander's or calculator's memory must have many features. Currently there are only a few programs, such as Scherrer Benoit's PCTOOLS 98 for Fargo II, that have many powerful features.

My point is that with the memory available and the speed of programs, more advanced programs can and should be made (I don't mean to offend programmers of complex games by the term advanced, it simply means more "computer like"). Computers have drawing programs, music notation software, spreadsheets, word processors, and web browsers. The 92 and 89 are the most advanced calculators and they still don't come close to the spreadsheet programs. Why can't the calculators with assembly shells have advanced programs that mimic word processors or spreadsheets or database interfaces of computers of the 1980's? The games are nice, but why can't more programmers turn to programming advanced programs? There are already simple text input routines and number input/calculation routines. There are even programs that play music. Why not add to the text routines and make a nice text editor (even a simple one would be nice)? Why not add to the music programs (sound programs) so that sound files can be made on the calculator (simple insertion of notes one at a time would be nice graphical music engraving like in Finale from Coda Music is even better)?

Why aren't there more advanced programs already? I do not know for sure, but I have several theories.

  1. There are not enough able programmers. Programmers of calculator assembly have become accustomed to programming games. The programmers that can program applications would rather program computers (real computers with fast chips). Two reasons explain the migration from calculator assembly to computer. The first is money. There is simply more money in programming computers. The second is that once one starts to become good at programming computers, why continue to spend much time programming "little" calculators?
  2. Some assembly shells are not ready to handle advanced applications. This is true especially for the 85 and 92 models. These models each have their own popular assembly shells (Fargo and ZShell). These shells (and others?) are all in versions that are "incomplete". Fargo II is still in its Alpha stage and ZShell is to never leave version 4.0 (zshell.doc). (Although Usgard took over ZShell, programmers still write programs for it.) Because these shells are incomplete, many file management and other such functions not pertinent to games may not be included yet. These such functions may also yield many bugs because they can be untested.
  3. The calculators are not ready for powerful applications. This is the theory that I support most. Although the speed of assembly is fast, the calculator processor might not be fast enough to run large programs with complicated algorithms in a realistic amount of time. The processors also may not be able to use certain types of data (such as BCD numbers or floating points greater than 14). The calculators may not have enough memory to support large programs either.
  4. There are no powerful assembly writing computer programs for calculator assembly. Such programs could debug with a click of a button, or there could be templates (or wizards) that help to write complicated functions. The programs could even translate lines of code similar to C or TI-BASIC into assembly. Those are only examples of what a powerful assembly writing program could do to simplify creating large, powerful (advanced) applications. The fact that there are no powerful programs of this type may make advanced applications seem too complicated for programmers.

All of these could be true, or none of them could be true. Remember that these are the theories I have created over the past few years through observation and almost no research. Each theory probably relates to another in some way. That means if one is true, some of the others must be true. It seems, in my opinion, that there must be some incentive for programmers to spend so much time on the assembly related programs. Because of this, it is might up to the paid TI employees to develop advanced programs for the calculators. Based on what I have seen, the unpaid programmers programming for fun will most likely continue programming games, but a few will create advanced applications until they move on to better machines.

The future of assembly programming should be in the direction of allowing the calculators to function more like computers. Many games have been ported to calculator, why not actual applications? I hope programmers (and the developers of applications, especially for Flash ROM, from Texas Instruments) will consider my message when developing future programs. Games are good, but computer applications will provide a much greater challenge to programmers and will actually make the calculators more useful. Who knows, if programmers are devoted enough, the free applications may be better than the applications in new, expensive calculators (and Flash ROM upgrades)!

  Reply to this item

Re: Article: "The Future of Assembly Programs"
Rob Hornick
(Web Page)

I don't know if I represent the majority of users, but I probably do. I am a middle school student with a TI-82 (I think that you would find most people with a TI calculator are of the same, uh, configuration? =)
In any case, I think it is important to have the TI programming community make more powerful applications, especially in ASM.
Why??? Well, one topic that was introduced is that of a word processor. Some say this was not important. However...there could be many uses.
1. Passing notes. No need for an explanation, right?
2. You could set up a TI "network" via this, where people would be able to communicate via e-mails and stuff. Grant Stockly (sp?) has an idea at his site - but I forget the URL. His e-mail is gussie@alaska.net.
3. It would be convienient to take notes on a calculator in classes, rather than carry a notebook, pen and pencil, highlighter, etc...
4. For the TI-82, there are a couple mediocre BASIC "notepads". However, they are slow and annoying. (no offense to anyone who made them, but they could use major improvements).

Also, a spreadsheet could be useful. Sure, matrices can use numbers, but, you cannot input text, or have instantly updatable formulas, or macros. In excel you can type formulas such as A2=(C2+2*B2). Not with matrices... Obviously, you might still think this is useless for YOU. But, in a math class, especially Algebra (I'm going to take Trig next year - I have no idea what that's all about =) this could be useful. I know my teacher likes using the lists on the -82s for inputting data and finding correlations. But an assembly program could have MANY more benefits.

Also, while I recognize games are (apparently, I don't write assembly) more fun to write - and play, you don't get much use out of them. Sure, they may be entertaining, but if you have even a 386 with 2 MB RAM, you have many more oppurtunities for entertainment on this.

My 1.999986734 cents (I helped design the P II =)
Rob Hornick

Reply to this comment    15 August 1998, 05:05 GMT
1  2  

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