Author Topic: Features Wishlist  (Read 611657 times)

0 Members and 2 Guests are viewing this topic.

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 #120 on: February 15, 2010, 01:09:30 am »
That's right, drawing 8x8 sprites is actually FASTER than drawing text.  Not only because the routine is faster, but also because it is drawn to the buffer instead of directly to the screen.  This is a paradigm you'll just have to get used to.
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55941
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Features Wishlist
« Reply #121 on: February 15, 2010, 01:14:03 am »
This is pretty much why now ASM programmers who make advanced games now make their own font displaying routines I guess

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 #122 on: February 15, 2010, 02:37:33 am »
I had to do that in Pyoro for the scores.  The main reason was because regular font will not display correctly in the grayscale engine I made, and to make drawing as fast as possible in the least amount of memory, aligned 8x8 sprites are the way to go so I had to make my own number font to fit this size.  It was 7x8 instead of the standard 5x7.
___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 #123 on: February 15, 2010, 09:44:23 am »
That's pretty cool. (7x8) I had no iea text was so slow comparitivly.  Wow. ;D

By the way,very nice sig, Quigibo! :D

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 #124 on: February 15, 2010, 07:13:17 pm »
I think a nice feature would be to expose the graph buffer as an array or pic or what have you. Could be useful for more complicated effects, if people want to write their own routines
"Most people ask, 'What does a thing do?' Hackers ask, 'What can I make it do?'" - Pablos Holman

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6265
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Features Wishlist
« Reply #125 on: February 15, 2010, 09:28:17 pm »
I was wondering...what about an arguement kind of thing, like with batch files, so you can call another program from it and pass it arguements, and then the arguements are pre defined variables tha can be used by the called program.
Code: [Select]
prgmAA arg1 arg2and then prgmAA could do something like this
Code: [Select]
output(0,0,%1
or we could just make the args the ans variable so that basic programs can pass stuff to it.

Edit: hmm I also had the thought while trying to port hunt to this (it's becoming my standard hello world :p) axe is still missing the basis of a good ai...random numbers within a certain amount...so how hard would it be to add a randInt() command?
« Last Edit: February 16, 2010, 12:50:18 am by Eeems »
/e

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 #126 on: February 16, 2010, 01:23:22 pm »
randInt will come eventually.  The best way to get random numbers between A and B inclusive is like this: A+rand^(B-A+1) and this will basically be what that function will do.  So if you need a number 1-5, then simply do this: rand^5+1

Passing parameters is unnecessary complexity.  Saving into variables in the main program and then recalling them from the subprogram is about as efficient as it can get and is much simpler to understand for the programmer.  But like I said, I'm not sure if I will allow program modification tools.  You can embed an external program inside the compiled program and call it from there, but you will most likely not be able to call an arbitrary external program from the compiled code.  That would require error handling, something which I will add later, using the "Theta" variable.  0 means no error and all the other values represent different types of errors so you can check if some of the higher level commands executed properly.
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55941
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Features Wishlist
« Reply #127 on: February 16, 2010, 02:13:39 pm »
Just try to not change the syntax from TI-BASIC way too much, though. Just a suggestion, but this is what turned away people from most other BASIC-like languages on calc. They claimed themselves to be as easy as TI-BASIC+xLIB, but finally they weren't even that much easier, so people stuck with TI-BASIC.

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6265
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Features Wishlist
« Reply #128 on: February 16, 2010, 04:24:07 pm »
ah ok, well thanks that beats my method which was rather crude and ineffective.
/e

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6265
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Features Wishlist
« Reply #129 on: February 17, 2010, 07:28:47 pm »
I was wondering if you could add in support for DCS headers and such? icons too?
/e

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 #130 on: February 17, 2010, 08:03:42 pm »
Mmmm since it is not possible to compile archived programs, do you think you could remove them from the compile menu?  Just a little nag :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 #131 on: February 18, 2010, 10:11:01 pm »
It will be possible in a future version, so it I don't feel like adding something that will just be removed later.

A different idea though, is requiring all Axe programs to have a particular header in order to show up on the list.  That would remove the clutter of BASIC programs, would that be more or less annoying than the clutter?  What does everyone think about that?

Also, I am thinking in the far future to release a developer kit for asm programmers to add Axioms, which is a clever name for importable libraries to add new commands to extend the features even further.
___Axe_Parser___
Today the calculator, tomorrow the world!

Offline Eeems

  • Mr. Dictator
  • Administrator
  • LV13 Extreme Addict (Next: 9001)
  • *************
  • Posts: 6265
  • Rating: +318/-36
  • little oof
    • View Profile
    • Eeems
Re: Features Wishlist
« Reply #132 on: February 18, 2010, 10:37:39 pm »
Hmm, the headers could work, and the Axioms idea. I had been thinking for a while about having an include statement so you can split your file into smaller more managable chunks for development.
How would these Axiom work? 
/e

Offline DJ Omnimaga

  • Clacualters are teh gr33t
  • CoT Emeritus
  • LV15 Omnimagician (Next: --)
  • *
  • Posts: 55941
  • Rating: +3154/-232
  • CodeWalrus founder & retired Omnimaga founder
    • View Profile
    • Dream of Omnimaga Music
Re: Features Wishlist
« Reply #133 on: February 19, 2010, 02:17:38 pm »
I would like an header, it would make the list much less cluttered, especially that it's not in alphabetical order. In future versions I hope you also planned to let us choose the compiled program name :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 #134 on: February 19, 2010, 02:31:02 pm »
The include statement will just be inserting "prgmNAME" into the code somewhere.  I'm not sure how the Axioms will work, but they definitely won't be available on any time soon.

Just to give everyone a heads up, I am making a major change in the next version.  I ran into a problem.  When you display stuff, how does the compiler know in what format to display it?  How does it know if you want to display a string, a number (and if so, in what base?), or a character?  All three of those have a number as an argument, either as a pointer for strings, or a number for the ASCII value of the character and the plain old base 10 representation.  Therefore, I must add some way to tell how you want to display that number.

So in the future, you can display a string by omitting any additinal notation, as you have already been doing, but to tell it that that number is not a pointer to a string, you have to use >Dec at the end to tell the Disp or Output command that you intend to display that number as a base 10 representation.  Similarly, I might use >Frac to display the ASCII value of the number.

Sorry if this makes things a little inconvenient, but it will only reduce the size of the compiled program and add even more flexibility.  Its a very simple thing to fix to make older programs compatible with the next version.
« Last Edit: February 19, 2010, 02:33:24 pm by Quigibo »
___Axe_Parser___
Today the calculator, tomorrow the world!