Author Topic: Features Wishlist  (Read 631460 times)

0 Members and 1 Guest are viewing this topic.

Offline Michael_Lee

  • LV9 Veteran (Next: 1337)
  • *********
  • Posts: 1019
  • Rating: +124/-9
    • View Profile
Re: Features Wishlist
« Reply #1800 on: January 29, 2011, 10:10:54 pm »
I fourth (fifth?) SirCmpwn's request.  It would really enhance the power of Axe.
My website: Currently boring.

Projects:
Axe Interpreter
   > Core: Done
   > Memory: Need write code to add constants.
   > Graphics: Rewritten.  Needs to integrate sprites with constants.
   > IO: GetKey done.  Need to add mostly homescreen IO stuff.
Croquette:
   > Stomping bugs
   > Internet version: On hold until I can make my website less boring/broken.

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Features Wishlist
« Reply #1801 on: January 29, 2011, 10:17:01 pm »
I 6th the request as well, I think we should start a petition :P

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 #1802 on: January 29, 2011, 10:39:07 pm »
Oh yeah, I was planning on adding that functionality.  I'll see if I can get it working.
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline jnesselr

  • King Graphmastur
  • LV11 Super Veteran (Next: 3000)
  • ***********
  • Posts: 2270
  • Rating: +81/-20
  • TAO == epic
    • View Profile
Re: Features Wishlist
« Reply #1803 on: January 29, 2011, 11:18:40 pm »
* King Graphmastur issues a royal decree that Quigibo should do this

I also tried issuing royal decrees that he lose his mind for this community, and add USB support. ;-) But my parliament vetoed me.

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Features Wishlist
« Reply #1804 on: January 29, 2011, 11:25:19 pm »
Oh yeah, I was planning on adding that functionality.  I'll see if I can get it working.

Yay! v1.0.0 is gonna be epic.

But then it's always been epic :D




Offline FloppusMaximus

  • LV5 Advanced (Next: 300)
  • *****
  • Posts: 290
  • Rating: +57/-5
    • View Profile
Re: Features Wishlist
« Reply #1805 on: January 29, 2011, 11:42:20 pm »
It seems like there should also be syntax for doing the opposite - using a computed value as the target of a Goto or sub().  Perhaps recycle braces for that?  (e.g., "Goto {LA}" would be equivalent to "Goto A".)  Or would that be too confusing?

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 #1806 on: January 29, 2011, 11:54:31 pm »
Maybe Goto [LA] might be a better option (or just Goto (LA)), because braces certainly imply a memory read. That would be kind of like the design mistake Zilog made with jp (hl) :P
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

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 #1807 on: January 30, 2011, 12:31:33 pm »
How about a command like TI Basic's Stop.  More info here: http://ourl.ca/8403/169341

An "Exit" command. ;D
« Last Edit: January 30, 2011, 12:31:45 pm by ztrumpet »

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Features Wishlist
« Reply #1808 on: January 30, 2011, 12:32:34 pm »
That might confuse people with the way Stop is used, though. And there are always ways to quit immediately from a shell (well, usually).
« Last Edit: January 30, 2011, 12:33:00 pm by Deep Thought »




Offline kindermoumoute

  • LV8 Addict (Next: 1000)
  • ********
  • Posts: 836
  • Rating: +54/-3
    • View Profile
Re: Features Wishlist
« Reply #1809 on: January 30, 2011, 12:35:37 pm »
A little feature :
When we go in compilation menu, it could be nice to put the last source compiled at the beginning of the list. What do you think ?
Projects :

Worms armageddon z80 :
- smoothscrolling Pixelmapping : 100%
- Map editor : 80%
- Game System : 0%

Tutoriel français sur l'Axe Parser
- 1ère partie : en ligne.
- 2ème partie : en ligne.
- 3ème partie : en ligne.
- 4ème partie : 10%
- Annexe : 100%

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55942
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Features Wishlist
« Reply #1810 on: January 31, 2011, 12:49:01 am »
To quit a program can't we simply Goto a label at the very end of the code? ???

Offline Builderboy

  • Physics Guru
  • CoT Emeritus
  • LV13 Extreme Addict (Next: 9001)
  • *
  • Posts: 5673
  • Rating: +613/-9
  • Would you kindly?
    • View Profile
Re: Features Wishlist
« Reply #1811 on: January 31, 2011, 01:04:31 am »
That will work only if you are not inside of a subroutine.  If you are inside a sub routine and goto a label at the very end of the program, it will act like a return.  There is currently no way to quit out of an Axe program that will work in 100% of the time.

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 #1812 on: January 31, 2011, 02:55:31 am »
Well just to be fair, if you do ever find yourself with the need to reset the stack you are probably using bad coding practices or doing something too low level that should be taken care of with an Axiom.  This is for the same reason that "Goto" is so frowned upon in languages like C++.  The main reason I still have it in Axe is because it was really easy to add and should help those used to TI-BASIC, because with all the loops, control structures, and subroutines, you should pretty much never need a goto in your Axe code.
« Last Edit: January 31, 2011, 02:56:38 am by Quigibo »
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline Munchor

  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6199
  • Rating: +295/-121
  • Code Recycler
    • View Profile
Re: Features Wishlist
« Reply #1813 on: January 31, 2011, 08:49:35 am »
Quote
Axe Parser 1.0.0
[=========-] 90%

1. Quigibo, I'm glad to see your signature;
2. Did anyone ever request a Axe( command?;
3. Are there special getkeys for stuff like 2ND+MODE, or do we have to set a variable when 2ND is pressed?.

Thanks.

Offline Deep Toaster

  • So much to do, so much time, so little motivation
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 8217
  • Rating: +758/-15
    • View Profile
    • ClrHome
Re: Features Wishlist
« Reply #1814 on: January 31, 2011, 09:32:34 am »
2. Did anyone ever request a Axe( command?;

What would Axe( do? If you mean compiling a source from third-party programs, I suggested being able to do that in ASM :D Doing that for BASIC would require a parser hook, though.

3. Are there special getkeys for stuff like 2ND+MODE, or do we have to set a variable when 2ND is pressed?.

In ASM, there are several ways to get a key. There's low-level key reading, where you're reading the port directly, _GetCSC, where you're reading each key stroke (this is what Axe uses for getKey, so no 2ND+[MODE] combos), and _GetKey, where you're waiting for a key combo. In other words, _GetKey pauses the program until the next keystroke (no loop required), and if it's a 2ND or ALPHA, it sets the 2ND or ALPHA flag and waits for the next key. Kind of like in the TI-OS, basically.

There could be problems with implementing _GetKey in Axe, though. First of all it has problems of its own. If you do a bcall(_GetKey) in your program and the user presses 2ND+[OFF], the calculator turns off, quitting the program and causing you to lose RAM (since you didn't quit correctly). There are ways to get around that, either with more code or with the undocumented instruction.

If you want to try _GetKey for yourself, here's the hex for it: Asm(EF72496F2600)→K

If you want to try _GetKey without the 2ND+[OFF] thing: Asm(EF0B506F2600)→K
« Last Edit: January 31, 2011, 09:33:14 am by Deep Thought »