I'm currently creating a program to solve all sorts of specialized math problems (so I don't fry my brain TOO much in math class). I have polynomials, geometry, and trigonometric functions. But I want it to be all-inclusive. What else should I put in it? The first write will be in Basic, but after I can probably make it Assembly or something.
In my opinion, you should leave it as a TI-BASIC program. z80 assembly, while nice, is very poorly-suited to floating point math programs. By the time you call all the OS functions that manipulate the floating point stack, or invoke the parser, you really would just be better off sticking with TI-BASIC. What sort of polynomial, geometry, and trigonometry functions or references do you already have in the program?
Well... I HAD a set for finding the six trigonometric functions, a set for the properties of geometric figures,and a polynomial four-function set. Then my calc crashed. had plans for more, but it spilled over into seperate programs, because Basic only has 136 labels if i remember right.
Never mind. It has more, but it gets very disorganised.
Now I have to recreate it from scratch.
I have officially started over on this project. I found out that a program can crash if it skips too many Ends, so I am rewriting it. I have some of the program rewritten, and I am using another program to keep the labels organized.
What do you mean by crash? Are you talking about memory leaks? Just make sure you never Goto out of an If/Then/End, If/Then/Else/End, Repeat/End, While/End, or For/End construct.
That was what I was doing - exiting from big If loops. The problem was that I wasn't sure exactly how to get past that.
One solution is to Goto to a Lbl directly before the If/Then/End's End. Another option is to refactor your code to put the code you're trying to skip in a separate, non-overlapping If/Then/End block.
Well, I'm having a problem with gotos. I'm trying to save labels to keep it all in one program. For some reason the DCS autounarchive function doesn't work (and yes, I am using seven for this. I haven't really used five and six for programming - seven is my main one. I have all three, though. Just 'cause.)

Also, I hide all of my programs that I don't use from the PRGM menu, and then it can't find them. I have seen some pretty spectacular crashes when trying to make it work. I particularly hate it when it wipes my folders and I have to remake them only to have Doors glitch in the middle of it, and delete my folders all over again. It keeps killing my batteries.
when it comes to DoorsCS and basic programs, dont hide them. hiding means changing the program's first name letter to a special charecter. this is what hides it, and, unfortunately, invalidates it from the program list. calling prgmA when A is hidden may mean actually calling prgm& (just an example).

dont hide basic programs, in other words.
No way to get around this? Or could I possibly write a program that will unhide all the programs first, and then run them?
I wiped my calculator a long time ago and lost Math Mechanic. Long story short, I think zStart messed up my OS. I've started development again, but I am still having the same problem. Putting everything into one program gets too confusing, and I run out of labels. I have tried to put some parts in separate programs, but the problem is, even with the DCS header, Door will not unarchive the programs before it runs them, so the program always crashes. Is there a workaround for this?
DoorsCS should offer unarchive commands in the libraries it hosts, probably through Celtic. You might look into that.

Also, there might be other errors that you are running into that is causing the issue. What other libraries or applications do you have installed?

Could we see this code? If you are running out of lbls, you might consider alternative menu ideas and ways to bounce around your program.
Angelstorm9x3 wrote:
I wiped my calculator a long time ago and lost Math Mechanic. Long story short, I think zStart messed up my OS.
ZStart is known to create a lot of OS instability, including from my experiences talking to people here who have it.
Quote:
I've started development again, but I am still having the same problem. Putting everything into one program gets too confusing, and I run out of labels.
Then you're using labels wrong. You should never possibly run out of 36+(36*36)=1332 possible labels.
Quote:
I have tried to put some parts in separate programs, but the problem is, even with the DCS header, Door will not unarchive the programs before it runs them, so the program always crashes. Is there a workaround for this?
As tifreak8x said, Doors CS offers functions to manually copy a program to RAM, then delete that temporary copy after you run it. See ExecArcPrgm on the Doors CS wiki.
KermMartian wrote:
Quote:
I've started development again, but I am still having the same problem. Putting everything into one program gets too confusing, and I run out of labels.
Then you're using labels wrong. You should never possibly run out of 36+(36*36)=1332 possible labels.

I have a system of labels to make them easier to understand. Otherwise, I forget and end up messing up code.
As of now, Math Mechanic is canceled. I lost all the code when I moved, I don't have access to any of my backups, and I don't really have much inclination to work on it anymore.

I do still have some of the drafts and theory behind it, though, so if anyone likes what I was trying to build and wants to take a look at it (or maybe pick up where I left off), feel free to contact me.

Maybe at some point I'll return to this project, but not for at least a year.

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.

»
» 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