Author Topic: Features Wishlist  (Read 690393 times)

0 Members and 8 Guests are viewing this topic.

Offline Silver Shadow

  • Beta Tester
  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 817
  • Rating: +27/-7
    • View Profile
Re: Features Wishlist
« Reply #195 on: March 03, 2010, 02:33:44 pm »
Well, I've never seen anyone make apps on-calc. That could be tricky...
Try asking Brandon, he's an expert in Flash unlocking.
Former Coder of Tomorrow


Offline trevmeister66

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1009
  • Rating: +14/-5
    • View Profile
Re: Features Wishlist
« Reply #196 on: March 03, 2010, 02:57:48 pm »
I think this has been mentioned before, but I wasn't sure how much it has been talked about, but what about reading/writing to/from AppVar's?
Projects:    nameless RPG: 1.0%  |  Reverse Snake v1.5: 100%  |  Secret Project: 5%  |  DUNGEON: 70%

My MW2 Blog <-- Please visit :)

Offline ztrumpet

  • The Rarely Active One
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5712
  • Rating: +364/-4
  • If you see this, send me a PM. Just for fun.
    • View Profile
Re: Features Wishlist
« Reply #197 on: March 03, 2010, 08:43:00 pm »
I like the Safe_Copy Pointer idea.  :)
Great idea!

Could you automatically initialize the pointer to the most common value of it, as it would be only be a little bigger and less prone to crashes?

Offline Quigibo

  • The Executioner
  • CoT Emeritus
  • LV11 Super Veteran (Next: 3000)
  • *
  • Posts: 2031
  • Rating: +1075/-24
  • I wish real life had a "Save" and "Load" button...
    • View Profile
Re: Features Wishlist
« Reply #198 on: March 03, 2010, 10:26:48 pm »
I think this has been mentioned before, but I wasn't sure how much it has been talked about, but what about reading/writing to/from AppVar's?
That will be done using GetCalc().  You can also get Variables, Lists, Strings, Ans, and other RAM variables and locations with this command and it will return a pointer to said object or zero if it doesn't exist.  Therefore, you can also store to these objects.  I'm nowhere near ready to support that command however so don't expect it soon.
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline trevmeister66

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1009
  • Rating: +14/-5
    • View Profile
Re: Features Wishlist
« Reply #199 on: March 03, 2010, 10:37:43 pm »
I think this has been mentioned before, but I wasn't sure how much it has been talked about, but what about reading/writing to/from AppVar's?
That will be done using GetCalc().  You can also get Variables, Lists, Strings, Ans, and other RAM variables and locations with this command and it will return a pointer to said object or zero if it doesn't exist.  Therefore, you can also store to these objects.  I'm nowhere near ready to support that command however so don't expect it soon.
Fair enough. Do what you can, and I will gladly wait :)
Projects:    nameless RPG: 1.0%  |  Reverse Snake v1.5: 100%  |  Secret Project: 5%  |  DUNGEON: 70%

My MW2 Blog <-- Please visit :)

Offline Raylin

  • Godslayer
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1392
  • Rating: +83/-25
  • I am a certifiable squirrel ninja.
    • View Profile
    • Ray M. Perry
Re: Features Wishlist
« Reply #200 on: March 04, 2010, 02:32:54 pm »
I second the on-calc APP compiling feature.
It is full of win.
Bug me about my book.

Sarah: TI-83 Plus Silver Edition [OS 1.19]
Cassie: TI-86 [OS 1.XX]
Elizabeth: TI-81 [OS 1.XX]
Jehuty: TI-83 Plus Silver Edition [OS 1.19]
Tesla: CASIO Prizm







Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Features Wishlist
« Reply #201 on: March 04, 2010, 04:13:33 pm »
would it be even possible at all, though? I don't even think BrandonW did it and he's like nearly the best assembly programmer out there. It has something to do with app signing I think. Even signing apps on a computer is a major hassle sometimes. Remember the trouble Iambian had with bad signatures, preventing many people from sending Celtic III to their calc
« Last Edit: March 04, 2010, 04:15:55 pm by DJ Omnimaga »

Offline Quigibo

  • The Executioner
  • CoT Emeritus
  • LV11 Super Veteran (Next: 3000)
  • *
  • Posts: 2031
  • Rating: +1075/-24
  • I wish real life had a "Save" and "Load" button...
    • View Profile
Re: Features Wishlist
« Reply #202 on: March 04, 2010, 04:39:01 pm »
Well, I'll wait on that then.

Anyway, I need to propose some safety features and I'd like some feedback.  Here is the idea.  If you select a "safety mode" in the options, the following will occur: All data in ram is archived and an application variable is created to keep track of what it archived (The appvar is also archived).  A dummy variable is also created and is kept in RAM.  Next, after the program is compiled, it is executed within axe parser itself rather than coming back to the home screen.  Once the program finishes, the ram is automatically cleared on the calculator so any corrupted data gets restored to the default.  Next, the appvar gets unarchived and unarchives the variables on its list.  So when the program quits, everything is back to normal.

Now, if the program crashed, and you need to pull the batteries, then the dummy variable gets deleted.  That means that the next time you run axe, it will notify you that you have recovered from a crash and automatically unarchive the programs from the save list to return the calculator back to normal.

This seems like the perfect system to prevent crashes, but its a little too perfect.  What I mean, is that if you start getting used to this, then if it corrupts the memory when safe mode is off, it will be very hard to find where the error is since the error would never be detectable in safety mode.

You might ask "Isn't it possible for axe to automatically detect when memory is corrupted?"  but the problem is that I would need a copy of the entire original RAM to compare it before and after the program is run and that really isn't going to be possible.  And even if it were possible, many assembly programmers often intentionally change non-safe areas of RAM to set flags, alter external variables, run self modifying code, etc.

I'm still going to add this mode anyway, but does anyone else have any other ideas about how to improve safety?
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline ztrumpet

  • The Rarely Active One
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5712
  • Rating: +364/-4
  • If you see this, send me a PM. Just for fun.
    • View Profile
Re: Features Wishlist
« Reply #203 on: March 04, 2010, 05:22:26 pm »
It sounds really good!

The only idea I have requires hooks, and it's not even that good of an idea.  :)
Wait, never mind:  You're RAM is cleared; There are no hooks... :D

Offline Raylin

  • Godslayer
  • LV10 31337 u53r (Next: 2000)
  • **********
  • Posts: 1392
  • Rating: +83/-25
  • I am a certifiable squirrel ninja.
    • View Profile
    • Ray M. Perry
Re: Features Wishlist
« Reply #204 on: March 04, 2010, 07:13:32 pm »
I like the safety mode idea.

OMG.
I can has DEBUG mode!? :D

It would be nice if you could edit programs inside of Axe Parser instead of jumping back to Home and reprogramming and recompiling...
Bug me about my book.

Sarah: TI-83 Plus Silver Edition [OS 1.19]
Cassie: TI-86 [OS 1.XX]
Elizabeth: TI-81 [OS 1.XX]
Jehuty: TI-83 Plus Silver Edition [OS 1.19]
Tesla: CASIO Prizm







Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6266
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Features Wishlist
« Reply #205 on: March 04, 2010, 07:39:39 pm »
well debugging would be possible on older 15MHz models with all that extra RAM...but of course that's cutting out all the other people...
/e

Offline calc84maniac

  • eZ80 Guru
  • Coder Of Tomorrow
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2912
  • Rating: +471/-17
    • View Profile
    • TI-Boy CE
Re: Features Wishlist
« Reply #206 on: March 04, 2010, 07:47:15 pm »
well debugging would be possible on older 15MHz models with all that extra RAM...but of course that's cutting out all the other people...
Actually, I'd think debugging would be pretty darn hard to pull off. Unless, of course, you might be able to build executables that allow debugging, but have larger code size?
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55943
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Features Wishlist
« Reply #207 on: March 04, 2010, 10:06:25 pm »
for safety mode, I hope the plan is gonna be to allow people to compile in unsafe mode, though. I personally would like to provide a version of my stuff that has no error checks so it runs faster. I wouldn't mind slower speed for debugging, though.

Offline Silver Shadow

  • Beta Tester
  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 817
  • Rating: +27/-7
    • View Profile
Re: Features Wishlist
« Reply #208 on: March 05, 2010, 01:48:12 am »
How about a sandbox mode where your RAM will be backed up, but won't be cleared after you run the prog, so that if it corrupts the memory, the user will notice it?
Former Coder of Tomorrow


Offline Quigibo

  • The Executioner
  • CoT Emeritus
  • LV11 Super Veteran (Next: 3000)
  • *
  • Posts: 2031
  • Rating: +1075/-24
  • I wish real life had a "Save" and "Load" button...
    • View Profile
Re: Features Wishlist
« Reply #209 on: March 05, 2010, 11:25:31 am »
Yeah that's essentially what I'm doing.  I have saftey mode, sandbox mode, and normal mode.

"Sandbox" is actually what I called safety before.

"Saftey" now means that all ram is archived, but ram is not cleared.  Programs remain archived after execution and it returns to the homescreen (so you will notice glitches but everything is still archived).  You'll have to manually unarchive everything you want to put back in RAM yourself (not recommended until a ram clear is performed).

"Normal" is obviously what has been done to date.
« Last Edit: March 05, 2010, 11:26:42 am by Quigibo »
___Axe_Parser___
Today the calculator, tomorrow the world!